bild
Skolan för
elektroteknik
och datavetenskap

Software Engineering, mvk10

OBS: The following information is supplied with reservation for changes during the course.

Overview

The course DD1365 aims to introduce students to the theory and practise of software engineering. The main activities are: formal lectures, invited industrial speakers, and a group project. It will be *compulsory* for most students to subsequently take the course DD143X in order to finish the group project.

Performance on the course for individuals will be assessed by the grade awarded for the group project. There is no formal examination.

For KTH Students The group project gives a total of 15hp of which 6 hp are returned under DD1365 (for the PPD and URD) and 9hp are returned in DD143X (for (i) the SRD, (ii) the ADD and (iii) the final application).

For SU Students The group project gives a total of 12hp of which 6 hp are returned under DD1365 (for the PPD and URD) and 6hp are returned in DD143X (for participating in any two out of (i) the SRD, (ii) the ADD and (iii) the final application).

Both courses (DD1365 and DD143x) now return a grade of A-F in accordance with the Bologna model. The grade returned is the *average grade* achieved over the life of the entire project. Individual course deliverables receive a grade of U/G/VG.


Latest News

  • 2011-05-20: Final project report should be sent by email as a pdf file to your project examiner (and with cc to Lars Kjelldahl, who will collect all the reports for archival purposes) not later than 31th May.
  • 2011-04-19: There will be no lecture on Tuesday 26th April. I have tried to arrange an industrial lecture for this day. However, at the last moment I have been let down, and there is not enough time to arrange a replacement lecturer. Sorry for this. The next class will be Tuesday 3rd May when I will discuss final project presentations.
  • 2011-02-17: I have added yesterdays slides on IT project risk, and also the CMU and US State of Texas risk taxonomy checklists. Please see the "Lecture Notes" and "Documents and Templates" sections below.
  • 2011-01-04: I have added the project course timetable for weeks 3 to 19. Please see "Timetable" section below.
  • 2010-12-20: I have put a new version of the project handbook on this webpage. It clarifies some small issues with the SRD and ADD (no major changes). It also specifies all remaining project deadlines. Please download and study!
  • 2010-12-07: The hand-in deadline for the SRD is Friday 4th February during the lecture that takes place between 13.15 and 15.00 in E1.
  • 2010-11-09: I have made an allocation of 10 projects to 11 groups, Group/project: IGroup/3, Alfa/27, Schackgruppen/28, Nyx/10, EASE/17, Tangentbordsvirtuoserna/7, Team Kappa/21, Dexoro/18, Glow/4, Bright/4, FraSwe/2, /Lars Kjelldahl
  • 2010-11-08: Karl Meinke will be away this week
  • 2010-11-05, at 16: I have received 8 priority lists by deadline (groups: IGroup, Alfa, Schackgruppen, Nyx, EASE, Tangentbordsvirtuoserna, Team Kappa, Dexoro). There should be a couple of groups more. I am afraid I have to allocate the projects using the priorities received before deadline - there are however many interesting projects among the 20 remaining proposals. /Lars Kjelldahl
  • 2010-11-03: Project proposals can be found here.
  • 2010-10-21 Please register yourself for this course within NADA as soon as possible, using the Unix command: res checkin mvk10. NB: We have changed to the new rapp system, which uses a www interface. More information on this later.

References

Requirements Management and UML

  • UML provides may languages for modelling business models, companies, problems and program designs. The notation is summarised here by Allen Holub.
  • A UML tutorial

Architectures and Design Patterns

Detailed Design and Coding

  • JavaDoc important for creating easy to read and well structured programs.

Project Management

  • An excellent portal for online resources on project management and software engineering is gantthead.com
  • A gentle introduction to extreme programming.
  • A question I am often asked is: "aren't there any lightweight lifecycle models?". Here is the ultimate lightweight model (RUP inspired) for a 1 man/week project.
  • Here is an extensive survey of OO lifecycle models (and much more!) prepare to be overwhelmed!!!.

Registration

For us to report your lab work and exam marks you *must* register yourself for this course. You can do this from a CSC Unix terminal by using the command res checkin mvk10.

In order to receive your course points it is also necessary that your "kansli" has registered that this course belongs to your choice of courses. Check this with Ping if you are unsure!


Course Evaluation

We are happy to receive suggestions for improvements to this course. During period 4 a course evaluation questionnaire will be distributed.

Literature

Main Literature

  • Ian Sommerville: Software Engineering, Addison Wesley, ninth edition. The most popular introductory book worldwide and recommended text book for the course.

Additional literature

  • Bob Hughes, Mike Cotterell, Software Project Management, McGraw Hill, third edition, 2002. This is the best among the books I have seen on this subject. Practical and useful.
  • I. K. Bray, An Introduction to Requirements Engineering, Addison Wesley 2002.

  • Soren Lauesen, Software Requirements, Styles and Techniques, Addison Wesley, 2002. This is an excellent practical "how to" book on requirements engineering.

  • Mark Priestley, Practical Object-Oriented Design with UML, McGraw Hill, 2000. In my opinion the most accurate account of UML's many languages.
  • Some of the course material will also be made available on the web.

Timetable

The course DD1363 mvk10 runs during period 2, 2010, while the follow up course DD143X runs during periods 3 and 4, 2011.

 
   |   

Kurs   DD1365   Mjukvarukonstruktion   

 Vecka 43 
2010
Måndag
25 okt
Tisdag
26 okt
Onsdag
27 okt
Torsdag
28 okt
Fredag
29 okt
Lördag
30 okt
 08 
 
 09 
 
 10 
 
 11 
 
 12 
 
 13 
 
 14 
 
 15 
 
15:00-17:00
Frl
D1
Mjukvarukonstruktion
Mjukvarukonstruktion
 16 
 
 17 
 
 18 
 
 
 
 Vecka 44 
2010
Måndag
1 nov
Tisdag
2 nov
Onsdag
3 nov
Torsdag
4 nov
Fredag
5 nov
Lördag
6 nov
 08 
 
 09 
 
 10 
 
 11 
 
 12 
 
 13 
 
 14 
 
 15 
 
15:00-17:00
Frl
D1
Mjukvarukonstruktion
Mjukvarukonstruktion
15:00-17:00
Frl
D1
Mjukvarukonstruktion
Mjukvarukonstruktion
 16 
 
 17 
 
 18 
 
 
 
 Vecka 45 
2010
Måndag
8 nov
Tisdag
9 nov
Onsdag
10 nov
Torsdag
11 nov
Fredag
12 nov
Lördag
13 nov
 08 
 
 09 
 
 10 
 
 11 
 
 12 
 
 13 
 
 14 
 
 15 
 
15:00-17:00
Frl
D1
Mjukvarukonstruktion
Mjukvarukonstruktion
15:00-17:00
Frl
D1
Mjukvarukonstruktion
Mjukvarukonstruktion
 16 
 
 17 
 
 18 
 
 
 
 Vecka 46 
2010
Måndag
15 nov
Tisdag
16 nov
Onsdag
17 nov
Torsdag
18 nov
Fredag
19 nov
Lördag
20 nov
 08 
 
 09 
 
 10 
 
 11 
 
 12 
 
 13 
 
 14 
 
 15 
 
15:00-17:00
Frl
D1
Mjukvarukonstruktion
Mjukvarukonstruktion
15:00-17:00
Frl
D1
Mjukvarukonstruktion
Mjukvarukonstruktion
 16 
 
 17 
 
 18 
 
 
 
 Vecka 47 
2010
Måndag
22 nov
Tisdag
23 nov
Onsdag
24 nov
Torsdag
25 nov
Fredag
26 nov
Lördag
27 nov
 08 
 
 09 
 
 10 
 
 11 
 
 12 
 
 13 
 
 14 
 
 15 
 
15:00-17:00
Frl
D1
Mjukvarukonstruktion
Mjukvarukonstruktion
15:00-17:00
Frl
D1
Mjukvarukonstruktion
Mjukvarukonstruktion
 16 
 
 17 
 
 18 
 
 
 
 Vecka 48 
2010
Måndag
29 nov
Tisdag
30 nov
Onsdag
1 dec
Torsdag
2 dec
Fredag
3 dec
Lördag
4 dec
 08 
 
 09 
 
 10 
 
 11 
 
 12 
 
 13 
 
 14 
 
 15 
 
15:00-17:00
Frl
D1
Mjukvarukonstruktion
Mjukvarukonstruktion
15:00-17:00
Frl
D1
Mjukvarukonstruktion
Mjukvarukonstruktion
 16 
 
 17 
 
 18 
 
 
 
 Vecka 49 
2010
Måndag
6 dec
Tisdag
7 dec
Onsdag
8 dec
Torsdag
9 dec
Fredag
10 dec
Lördag
11 dec
 08 
 
 09 
 
 10 
 
 11 
 
 12 
 
 13 
 
 14 
 
 15 
 
15:00-17:00
Frl
D1
Mjukvarukonstruktion
Mjukvarukonstruktion
 16 
 
 17 
 
 18 
 

 
Week 3 - 19 2011    |   

Course   DD143X   Examensarbete inom Datalogi   

Week 3, 2011
  Tue Jan 18 11:00-12:00 Frl F2     Examensarbete inom Datalogi Examensarbete inom datalogi
 
Week 4, 2011
  Tue Jan 25 15:00-17:00 Frl E1     Examensarbete inom Datalogi Examensarbete inom datalogi
 
Week 5, 2011
  Fri Feb 4 15:00-17:00 Frl D2     Examensarbete inom Datalogi Examensarbete inom datalogi
 
Week 6, 2011
  Wed Feb 9 15:00-17:00 Frl D2     Examensarbete inom Datalogi Examensarbete inom datalogi
 
Week 7, 2011
  Wed Feb 16 15:00-17:00 Frl D2     Examensarbete inom Datalogi Examensarbete inom datalogi
 
Week 8, 2011
  Wed Feb 23 15:00-17:00 Frl D1     Examensarbete inom Datalogi Examensarbete inom datalogi
 
Week 9, 2011
  Wed Mar 2 15:00-17:00 Frl D2     Examensarbete inom Datalogi Examensarbete inom datalogi
 
Week 17, 2011
  Tue Apr 26 15:00-17:00 Frl D2     Examensarbete inom Datalogi Examensarbete inom datalogi
  Wed Apr 27 08:00-17:00 WS V32, V34, V35     Examensarbete inom Datalogi Examensarbete inom datalogi
 
Week 18, 2011
  Tue May 3 15:00-17:00 Frl K1     Examensarbete inom Datalogi Examensarbete inom datalogi
 
Week 19, 2011
  Tue May 10 15:00-17:00 Frl D1     Examensarbete inom Datalogi, Examensarbete inom datalogi Examensarbete inom Datalogi, Examensarbete inom datalogi



Course Objectives

Take a good look at the course objectives. These should help you understand what you get out of attending the course, and how your project will be graded.


Practical Project Work

The course DD1365 involves every student in a large IT development project.

Please note: it is difficult for you to join a project group after the course has started. Therefore it is important that you take part in MVK from the very beginning of the course. If you join the course late I cannot guarantee you a project place, and you may not be able to complete the course this year. This is a strict rule!

Here you can find the new Project Handbook. Please note that this is work in progress. You can come back regularly to get updates.

which largely supercedes the old guidelines for project work.

Here is an informal collection of legal advice for developing a software licensing contract between you and your project supplier (in Swedish only). Please note that neither the course leader nor CSC nor KTH can take any legal responsibility for helping you to write an appropriate software licensing agreement with your supplier. Nor can we take any responsibility should your agreement go wrong. If you are concerned about this problem you should take independent legal advice from a qualified advisor.


Documents and Templates

The group project involves regular project reporting using a set of deliverables that would normally be used in a waterfall style IT development project. We use a set of document templates developed by the European Space Agency (ESA) for its IT projects.

Here you can find the PSS-05 document templates which I have annotated with extra student information for clarity.

You can find further information about PSS at the ESA website PSS download page.

In general ESA does a large amount of high quality software engineering, and you should enjoy browsing their website for state of the art ideas.

Here you can find the CMU-SEI risk taxonomy and the State of Texas, Dept. of Information Resources risk taxonomy that were handed out in class.

Lecture Notes

LectureContents
Lecture 1, Tue 2010-10-26   .pdf file .pptx file Introduction to course and project work
Lecture 2, Tue 2010-11-02    no slides Presentation of projects
Lecture 3, Wed 2010-11-03   .html file Discussion of project planning phase
Lecture 4, Tue 2010-11-09    .pdf file .pptx file Software process models
Lecture 5, Wed 2010-11-10   .pdf file .pptx file Software process models (continued)
Lecture 6, Tue 2010-11-16    no slides Project PPD presentations
Lecture 7, Wed 2010-11-17   .pdf file .pptx file Software process models (continued)
Lecture 8, Tue 2010-11-23    .pdf file .pptx file User requirements
Lecture 9, Wed 2010-11-24    .pdf file .pptx file PSS-05 URD template presentation
Lecture 10, Tue 2010-11-30     .pdf file .ppt file Use cases and UML sequence diagrams (basic)
Lecture 11, Wed 2010-12-01     .pdf file .ppt file UML sequence diagrams (constructions) and LSCs
Lecture 12, Wed 2010-12-07     no slides Project URD presentations
Lecture 13, Wed 2011-01-25     .pdf file   .pptx file Software Requirements Phase
Lecture 14, Fri 2011-02-04     no slides Project SRD presentations
Lecture 15, Wed 2011-02-09     .pdf file .pptx file Architectural Design Phase
Lecture 16, Wed 2011-02-16     .pdf file .pptx file IT Project Risk
Lecture 17, Wed 2011-05-03     .pdf file .pptx file Project Demo Guidelines


Copyright © Sidansvarig: Karl Meinke <karlm@nada.kth.se>
Uppdaterad 2011-05-20