Image for
Home

Project approach to applications development

  • Class 30
  • Practice 15
  • Independent work 75
Total 120

Course title

Project approach to applications development

Lecture type

Obligatory

Course code

22-00-516

Semester

4

ECTS

4

Lecturers and associates

Course overview

This module introduces students to the project approach of software application development and provides an overview of methods, techniques, and practices to use during the development process.

This module is core to Software Engineering subspecialisation and provides the foundation for several programming modules that students of the Software Engineering subspecialisation will take in the following semesters. The skills acquired by this module will contribute significantly to students’ development as professionals in the respective fields.

Students will learn:
• The different aspects of working on a software development project
• The various roles, responsibilities of a team
• The importance of teamwork for a project to succeed.
• How to gather and structure functional and non-functional requirements based on client's needs.
• How to organize work in project teams
• How to monitor the execution of tasks.
• How to test and improve the quality of the software application.

Students can use any programming language, tool and platform they choose. The module assessment is based on group student projects. In these projects, students must create the functional specification and the application to solve the given problem.

Literature

Essential reading:
1. Rothman, J. (2017) Create Your Successful Agile Project: Collaborate, Measure, Estimate, Deliver. 1st edn. Raleigh: Pragmatic Bookshelf.

Recommended reading:
1. Stark, E. (2014) Agile Project Management QuickStart Guide: A Simplified Beginners Guide To Agile Project Management. Scotts Valley: CreateSpace Independent Publishing Platform.

Download student guide

Minimal learning outcomes

  • Independently create a functionality specification document based on collected and ranked user requests.
  • Design the application according to the given architecture.
  • Design programming tasks based on user requirements and recommend their distribution by project iterations.
  • Use the basic functionalities of the selected versioning system in the project team.
  • Independently apply different types of functionality and application characteristics testing.
  • Independently create a basic user manual document for a given application.

Preferred learning outcomes

  • Independently create a functionality specification document based on collected and ranked user requests and formatted according to good practices.
  • Design the application and the workflow through it according to the given architecture.
  • Design fine-grained programming tasks based on user requirements and recommend their distribution by project iterations.
  • Use the advanced functionalities of the selected versioning system in the project team.
  • Independently apply different types of automated functionality and application characteristics testing.
  • Independently create an advanced user manual document for a given application.
Share: Facebook Twitter