ID2207 Moderna metoder inom Software Engineering 7,5 hp
Modern Methods in Software Engineering
Se engelsk text
Utbildningsnivå
Avancerad nivåHuvudområde
Betygsskala
A, B, C, D, E, FX, F
Kurstillfällen/kursomgångar
HT19 för programstuderande
-
Perioder
HT19 P1 (7,5 hp)
-
Anmälningskod
50590
Kursen startar
2019-08-26
Kursen slutar
2019-10-25
Undervisningsspråk
Engelska
Studielokalisering
Campus Kista
Undervisningstid
Dagtid
Undervisningsform
Normal
-
Antal platser *
Min. 25
*) Kurstillfället kan komma att ställas in om antalet antagna understiger minimiantalet platser.
Kursansvarig
Mihhail Matskin <misha@kth.se>
Lärare
Mihhail Matskin <misha@kth.se>
Shatha Jaradat <shatha@kth.se>
Målgrupp
Öppen för alla program.
Del av program
- Masterprogram, ICT Innovation, åk 2, DAMO, Valfri
- Masterprogram, inbyggda system, åk 1, INMV, Obligatorisk
- Masterprogram, inbyggda system, åk 2, INPF, Villkorligt valfri
- Masterprogram, programvaruteknik för distribuerade system, åk 1, Obligatorisk
- Masterprogram, programvaruteknik för distribuerade system, åk 1, DASC, Obligatorisk
- Masterprogram, programvaruteknik för distribuerade system, åk 1, PVT, Obligatorisk
HT18 för programstuderande
-
Perioder
HT18 P1 (7,5 hp)
-
Anmälningskod
50654
Kursen startar
2018-08-27
Kursen slutar
2018-10-26
Undervisningsspråk
Engelska
Studielokalisering
KTH Kista
Undervisningstid
Dagtid
Undervisningsform
Normal
-
Antal platser *
Min. 25
*) Kurstillfället kan komma att ställas in om antalet antagna understiger minimiantalet platser.
Schema
Planerade moduler
P1: G1, A2, C2, I2. mer info
Kursansvarig
Mihhail Matskin <misha@kth.se>
Lärare
Mihhail Matskin <misha@kth.se>
Mohammadmehdi Satei <satei@kth.se>
Shatha Jaradat <shatha@kth.se>
Óttar Gudmundsson <ottarg@kth.se>
Målgrupp
Öppen för alla program.
Del av program
- Masterprogram, ICT Innovation, åk 2, DAMO, Valfri
- Masterprogram, inbyggda system, åk 1, INMV, Obligatorisk
- Masterprogram, inbyggda system, åk 2, INPF, Villkorligt valfri
- Masterprogram, programvaruteknik för distribuerade system, åk 1, Obligatorisk
- Masterprogram, programvaruteknik för distribuerade system, åk 1, DASC, Obligatorisk
- Masterprogram, programvaruteknik för distribuerade system, åk 1, PVT, Obligatorisk
Lärandemål
The course aims both in giving students knowledge about modern software development methods and developing skills in usage the methods.
Our goal is to present a variety of approaches to software development and discuss their applicability boundaries, benefits, restriction and complementariness.
During the course students should learn about Software Engineering methods. In particular, they:
- Learn methods for dealing with complexity and changes in software construction. This means that students should get understanding of main approaches to abstraction, models, decomposition and software life-cycle.
- Understand basic components of software development process. This means that students should learn main methods and approaches to requirement elicitation and analysis, system and object design.
- Learn some modern approaches to software development. This means that students should learn about agile methods of software development and have experience in applying them to desing a software system.
- To get experience in evaluating different methods for producing of a high quality software system within time. This means that students should get practice in applying and comparison of different approaches to software development.
- To get experience in reporting and discussing results of the course homework and project both in oral and written forms.
- Understand ethical aspects and importance of sustainability in software development.
The course also includes a seminar as a part of the Software Engineering of Distributed Systems master program. The intention of the seminar is to put the course into the context of the software engineering research in general and into the context of the master program in particular.
Kursens huvudsakliga innehåll
Introduction and basic concepts of Software Engineering (SE). Abstraction/Models and Decomposition. Software Life-Cycle. Unified process. Software Modeling language. Unified Modeling Language (UML). Requirements elicitation and analysis. System design. Object design. Applying patterns. Refactoring. Mapping models to code. Testing. Agile software development and agile modeling. Basics of Extreme Programming. Software project management.
Practical part of the course includes exercises and a small software development project applying SE methods.
Behörighet
- Computer Science courses 30 hp
- Operating Systems courses 7,5 hp
- Computer Programming courses 7,5 hp
- English "level B" (Swedish Gymnasium)
Litteratur
Textbook for the course:
Object-Oriented Software Engineering: Using UML, Patterns and Java: International Edition, 3/E, Bernd Bruegge, Allen H. Dutoit, ISBN: 0136061257, Publisher: Prentice Hall, Copyright: 2010, Format: Paper; 800 pp Published: 29 July 2009 (available in the Kista Electrum book store
Lecture notes
Recommended Reading:
The following sources are recommended to obtain a deeper understanding of the subject.
- E. Gamma et al. Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995
- M. Shaw, D. Garlan. Software Architecture. Perspectives on an Emerging Discipline. Prentice-Hall, 1996
- http://www.extremeprogramming.org/start.html
- Kent Beck. Extreme Programming Explained: Embrace Change, Publisher: Addison-Wesley Professional; 1st edition (October 5, 1999)
- Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts. Refactoring: Improving the Design of Existing Code, Addison-Wesley Professional; 1st edition (June 28, 1999)
- M. Matskin and E. Tyugu. Structural Synthesis of Programs and Its Extensions. Computer and Informatics Journal, v. 20, 2001, pp. 1-25
Additional articles in the curriculum may be added during the course.
Examination
- ANN1 - Hemprojekt, 3,0, betygsskala: P, F
- TEN1 - Tentamen, 4,5, betygsskala: A, B, C, D, E, FX, F
Written examination (TEN1 4,5 hp)
Ges av
EECS/Datavetenskap
Kontaktperson
Matskin, Mihhail
Examinator
Mihhail Matskin <misha@kth.se>
Versionsinformation
Kursplan gäller från och med VT2019.
Examinationsinformation gäller från och med VT2019.