IV1303 Modern Software Development 6.0 credits

Modern mjukvaruutveckling

The course in Modern Software Development presents basic software engineering concepts and discusses how they are applied within modern software development. It discusses current problems within traditional software engineering and  presents how they have been addressed with modern methods. While presenting the development cycle, the course will present various modern practices such as for instance, iterative development, pair programming, refactoring, test-first programming, release planning, retrospectives, and show how those are combined. Finally, the course discusses future methodological trends.

This course is integrated with two other project courses, which together cover both the theory and practice of modern development methods. During this course, the students will acquaint themselves with the theory, whereas during the project courses, the student will practice the modern methods.

Show course information based on the chosen semester and course offering:

Offering and execution

No offering selected

Select the semester and course offering above to get information from the correct course syllabus and course offering.

Course information

Content and learning outcomes

Course contents *

The course presents basic software engineering concepts and discusses how they are applied within modern software development. It explains current problems within the traditional software engineering and presents how they have been handled with modern methods. While going through the development cycle, the course will in parallel present different modern methods such as iterative development, pair programming, refactoring, test first programming, release planning, retrospective, and show how they are combined. Finally, the course presents future methodological trends.

The course is integrated with two other project courses that together cover theory and practice of modern development methods. In this course students will get acquainted with the theory while in the project courses the student will practice the modern methods.

Intended learning outcomes *

The general aim of the entire course is that the students should master new ways of developing software systems. This aim is realised through the following goal:

  • To be able to describe the software development process and its components.
  • To apply knowledge in modern software development in order to be able to create a software system.
  • To explain the interplay between different software development activities within an organisation.
  • To be able to independently and creatively handle issues and analyse different methodological solutions from a holistic perspective.
  • To critically and systematically use knowledge to evaluate and improve modern software engineering methods.
  • To handle different problems within modern software development and take appropriate measures.
  • To demonstrate ability to communicate own work and its results both orally and in writing.

Course Disposition

No information inserted

Literature and preparations

Specific prerequisites *

ID1018 Programming I.

Recommended prerequisites

Object Oriented Programming.

Equipment

No information inserted

Literature

Kajko-Mattsson, M., Modern Ways of Developing Software Systems, Compendium, KTH, 2015.

Examination and completion

Grading scale *

P, F

Examination *

  • OVN1 - Exercises, 1.5 credits, Grading scale: P, F
  • RAP1 - Report, 4.5 credits, Grading scale: P, F

Based on recommendation from KTH’s coordinator for disabilities, the examiner will decide how to adapt an examination for students with documented disability.

The examiner may apply another examination format when re-examining individual students.

Opportunity to complete the requirements via supplementary examination

No information inserted

Opportunity to raise an approved grade via renewed examination

No information inserted

Examiner

Mira Kajko-Mattsson

Further information

Course web

Further information about the course can be found on the Course web at the link below. Information on the Course web will later be moved to this site.

Course web IV1303

Offered by

EECS/Computer Science

Main field of study *

Technology

Education cycle *

First cycle

Add-on studies

No information inserted

Contact

Mira Miroslawa Kajko-Mattsson (mekm2@kth.se)

Ethical approach *

  • All members of a group are responsible for the group's work.
  • In any assessment, every student shall honestly disclose any help received and sources used.
  • In an oral assessment, every student shall be able to present and answer questions about the entire assignment and solution.

Supplementary information

In this course, the EECS code of honor applies, see: http://www.kth.se/en/eecs/utbildning/hederskodex.