How to develop a software system? In this course we are going to present a set of methods and techniques used to guide the software development process. The methods and techniques represent current developments in software engineering area. In particular, they include Unified Process (UP), Extreme Programming (XP), Agile modeling and some other both already known and relatively new approaches.
Choose semester and course offering
Choose semester and course offering to see information from the correct course syllabus and course offering.
Content and learning outcomes
Introduction and basic concepts for software development. Abstraction/models and division. Life cycle for software. Unified process. Unified Modeling Language (UML) Specification and analysis of requirements. System design. Object design. Design patterns: Refactoring. Transformation of models to code. Testing. Agile software development and agil emodelling. The bases of extreme programming. DevOps methods.
The practical part of the course contains exercises and a small software development project.
Intended learning outcomes
Having passed the course, the student should be able to:
- formulate definitions of the most important concepts and the methods in software development
- evaluate and use the most important concepts and the methods in software development.
Literature and preparations
Knowledge of Java is desirable.
Examination and completion
If the course is discontinued, students may request to be examined during the following two academic years.
- ANN1 - Assignment, 3.0 credits, grading scale: P, F
- TEN1 - Examination, 4.5 credits, grading scale: A, B, C, D, E, FX, 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
Opportunity to raise an approved grade via renewed examination
- 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.
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 ID2207
Main field of study
In this course, the EECS code of honor applies, see: http://www.kth.se/en/eecs/utbildning/hederskodex.