Institute of Computer Science
  1. Courses
  2. 2020/21 fall
  3. Agile Software Development (MTAT.03.295)
ET
Log in

Agile Software Development 2020/21 fall

  • Main
  • Lectures
  • Practicals
  • Assessment
  • Exams
  • Readings

Practicals

Due to the current situation, we have organized the practical sessions as follows:

  • Tuesday's session is delivered ONLINE. The last minutes are reserved for consultation. Students registered on Tuesday's group will have priority. The practice session will be available on Moodle the same day. Please log in to see the links for online participation in lectures and practice sessions
  • Friday's practice is reserved for consultation. Students registered on Friday's group will have priority. Registration is needed IN ADVANCE.

Code Repository

The implementation of the handouts corresponding to the laboratory sessions and practical lectures are publicly available in Bitbucket. Note that we will release the code of each session after its completion each Tuesday.

  • Link to Bitbucket Repository: https://bitbucket.org/orlenyslp/asd-2020/src/master/

Schedule

  • 08.09/11.09 - No lab session (Independent Work)
    • Use this week to set-up the development environment and familiarize yourself with Elixir
    • Materials:
      • Elixir Instalation: https://elixir-lang.org/install.html
      • Code Editor: Visual Studio Code
      • Git client: https://git-scm.com/downloads
      • Elixir School: http://elixirschool.com/en/
      • Debug Elixir: https://elixir-lang.org/getting-started/debugging.html
      • Try Git: https://try.github.io/
      • Create a Mix Project and Run Elixir Code
      • Warning: To run the Interactive Elixir on Windows Power Shell run the command iex.bat instead of iex.
  • 15.09/18.09 - Introduction to Elixir and Test-Driven Development (TDD).
    • Handout Practice #1
      • Complementary Readings: Elixir fundamentals, Elixir standard libraries and control flow
  • 22.09/25.09 - Elixir: TDD and Iterative Development.
    • Handout Practice #2
      • Useful Modules: Enum, List, Map
  • 29.09/02.10 - Elixir: TDD with legacy code.
    • Handout Practice #3
  • 06.10/09.10 - Elixir-based web applications: Introduction to Phoenix.
    • Handout Practice #4
    • Phoenix Installation
      • NodeJS Installation (Required)
      • PostgreSQL Installation (Required)
    • Understanding Phoenix apps (From Phoenix Doc)
      • mix phx
      • Routing
      • Controllers
      • Views
      • Templates
      • Ecto
      • Ecto Changeset
  • 13.10/16.10 - Elixir-based web applications: Introduction to Phoenix (Continuation)
    • Handout Practice #4 (cont)
  • 20.10/23.10 - BDD/TDD with Phoenix.
    • Handout Practice #5
    • Ecto Queries
  • 27.10/30.10 - Phoenix: database associations and queries.
    • Handout Practice #6
    • Ecto Associations (Elixir School)
    • Ecto Associations (Documentation)
    • Ecto Multi
  • 03.11 - Adding Geolocation
    • Handout Practice #7
    • Bing Maps Code Samples
    • Testing on Elixir
  • 10.11 - Groups and environment set-up
  • 17.11 - Project checkpoint
  • 24.11 - Project checkpoint
  • 01.12 - Project checkpoint
  • 08.12 - Project checkpoint

Acknowledgments: Handouts of the practicals provided by Prof. Luciano García-Bañuelos

  • Institute of Computer Science
  • Faculty of Science and Technology
  • University of Tartu
In case of technical problems or questions write to:

Contact the course organizers with the organizational and course content questions.
The proprietary copyrights of educational materials belong to the University of Tartu. The use of educational materials is permitted for the purposes and under the conditions provided for in the copyright law for the free use of a work. When using educational materials, the user is obligated to give credit to the author of the educational materials.
The use of educational materials for other purposes is allowed only with the prior written consent of the University of Tartu.
Terms of use for the Courses environment