Software Engineering, mvk08
This web page is under construction.
OBS: The following information is supplied with reservation for changes during the course.
Overview
The course DD1363 aims to introduce students to the theory and practise of software engineering.
The main activities are: formal lectures, invited industrial speakers, a group project and
an individual term paper.
Performance on the course for individuals will be assessed by weighting the grades
awarded for the group project and the term paper. There is no formal examination.
Latest News and FAQ
- 2009-05-15 The final software presentations will be held on Tuesday 26th May 15-17 in room E1.
Please note that if you have not already presented a report to the class, then this is your second to last
opportunity. (The last opportunity is to present the software demo.)
Please consult my slides on this web page (Lecture 20 below) for info about the final presentation and
software demo.
- 2009-03-18 Yesterday in class after a vote it was decided that the final software
presentations will be made on Tuesday May 26th 15-17. This is the second to last opportunity to speak
for those students who have not yet presented a report in class. On this day you will make a
5-6 minute presentation on the outcome of your project, including a look at the final product
with the help of some screen shots. The final opportunity to speak will be at the
software demo some days later. Each group is responsible for booking its own 30 minute demo time
with me. I will place guidelines for the demo on this webpage nearer the time.
- 2009-03-18 I have returned about 60% of the term papers to student expeditionen on level 2.
Each paper should have a mark sheet attached to it which breaks down the mark awarded under various
categories. The remaining scripts should be marked by Inge Frick within 2-3 days.
- 2009-01-19 I have updated my course notes, and added dates for delivery and
presentation of the SRD and ADD documents of the soft. eng. project. I will be adding
to the course notes as term goes by.
- 2008-12-09 For those students who have not yet collected their initial
abstracts of their term papers, I have placed the remaining (20?) in NADAs studentexpeditionen
(level 2) where you can collect them during opening hours.
- 2008-12-02 I have added my course notes for the
remainder of this term.
- 2008-11-25 I have added recent lecture material and the course outline for the
remainder of this term.
- 2008-11-12 I have added the course timetable for period 3, 2009 below.
- 2008-11-12 I have started to add the material from my lecture slides below. I will build this up as the course progresses. I have also added Gunnar Lindholm's slide show from yesterday 2008-11-11.
- 2008-09-15 On Tuesday 4th November 2008
the lecture from 15.00-17.00 in E1 will be devoted to presentations
of potential projects by industrial companies and research members of KTH staff. In order to make a good
choice of project it is *strongly* advisable to attend.
- 2008-09-15 Please register yourself for the course as soon as possible if you have not already done so.
We cannot register your project and term paper grades without this. Recall that you must run "res checkin mvk08" inside a terminal
window. Thanks!
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 mvk08 .
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, eigth 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
This course runs from period 2, 2008 until period 4, 2009.
However, currently I only have access to the
timetable for periods 2 and 3. I will add to this as soon as possible to cover period 4.
Course | | DD1363 | | Software Engineering MVK08 | | |
Vecka 44, 2008 |
Kurs |
Kursomg |
Moment |
Lokal |
Anmärkning |
|
|
Tis |
28 okt |
15:00-17:00 |
DD1363 |
DD1363H1 |
Frl |
E1 |
Samläsning med SU DA3005 |
|
Vecka 45, 2008 |
|
|
Tis |
4 nov |
15:00-17:00 |
DD1363 |
DD1363H1 |
Frl |
E1 |
Samläsning med SU DA3005 |
|
|
Ons |
5 nov |
15:00-17:00 |
DD1363 |
DD1363H1 |
Frl |
E1 |
Samläsning med SU, DA3005 |
|
Vecka 46, 2008 |
|
|
Tis |
11 nov |
15:00-17:00 |
DD1363 |
DD1363H1 |
Frl |
E1 |
Samläsning med SU DA3005 |
|
|
Ons |
12 nov |
15:00-17:00 |
DD1363 |
DD1363H1 |
Frl |
E1 |
Samläsning med SU, DA3005 |
|
Vecka 47, 2008 |
|
|
Tis |
18 nov |
15:00-17:00 |
DD1363 |
DD1363H1 |
Frl |
E1 |
Samläsning med SU DA3005 |
|
|
Ons |
19 nov |
15:00-17:00 |
DD1363 |
DD1363H1 |
Frl |
E1 |
Samläsning med SU, DA3005 |
|
Vecka 48, 2008 |
|
|
Tis |
25 nov |
15:00-17:00 |
DD1363 |
DD1363H1 |
Frl |
E1 |
Samläsning med SU DA3005 |
|
|
Ons |
26 nov |
15:00-17:00 |
DD1363 |
DD1363H1 |
Frl |
E1 |
Samläsning med SU, DA3005 |
|
Vecka 49, 2008 |
|
|
Tis |
2 dec |
15:00-17:00 |
DD1363 |
DD1363H1 |
Frl |
E1 |
Samläsning med SU DA3005 |
|
|
Ons |
3 dec |
15:00-17:00 |
DD1363 |
DD1363H1 |
Frl |
E1 |
Samläsning med SU, DA3005 |
|
Vecka 50, 2008 |
|
|
Ons |
10 dec |
15:00-17:00 |
DD1363 |
DD1363H1 |
Frl |
E1 |
Samläsning med SU, DA3005 |
Kurs | | DD1363 | | Mjukvarukonstruktion | | |
Vecka 4, 2009 |
Kurs |
Kursomg |
Moment |
Lokal |
Anmärkning |
|
|
Tis |
20 jan |
15:00-17:00 |
Mjukvarukonstruktion |
DD1363V1 |
Frl |
E1 |
|
|
Vecka 5, 2009 |
|
|
Tis |
27 jan |
15:00-17:00 |
Mjukvarukonstruktion |
DD1363V1 |
Frl |
E1 |
|
|
Vecka 6, 2009 |
|
|
Tis |
3 feb |
15:00-17:00 |
Mjukvarukonstruktion |
DD1363V1 |
Frl |
E1 |
|
|
Vecka 7, 2009 |
|
|
Tis |
10 feb |
15:00-17:00 |
Mjukvarukonstruktion |
DD1363V1 |
Frl |
E1 |
|
|
Vecka 12, 2009 |
|
|
Tis |
17 mar |
15:00-17:00 |
Mjukvarukonstruktion |
DD1363V1 |
Frl |
E1 |
|
|
Vecka 13, 2009 |
|
|
Tis |
24 mar |
15:00-17:00 |
Mjukvarukonstruktion |
DD1363V1 |
Frl |
E1 |
|
|
Vecka 14, 2009 |
|
|
Tis |
31 mar |
15:00-17:00 |
Mjukvarukonstruktion |
DD1363V1 |
Frl |
E1 |
|
|
Vecka 22, 2009 |
|
|
Tis |
26 maj |
15:00-17:00 |
Mjukvarukonstruktion |
DD1363V1 |
Frl |
E1 |
|
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 and term paper will be graded.
Term Paper
The course DD1363 has no written or oral examination. Instead students are asked to write a
term paper. Here you can find
guidelines for the term paper.
In general there are many web pages that can give you useful tips and guidelines on writing a term paper.
Two web pages that I believe are short but useful are from
Lock Haven University
and
Purdue University.
Practical Project Work
The course DD1363 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
guidelines for project work.
Document 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.
Lecture Notes
Lecture | Contents |
Lecture 1, Tue 2008-10-28
 .pdf file .pptx file |
Introduction to course, project and term paper overview |
Lecture 2, Tue 2008-11-04   no slides
| Presentation of projects |
Lecture 3, Wed 2008-11-05
 .html file
| Discussion of project planning phase
|
Lecture 4, Tue 2008-11-11
 
.pdf file
| Guest lecture Gunnar Lindholm IBM, Project management |
Lecture 5, Wed 2008-11-12
 .pdf file
.pptx file
|
Software process models |
Lecture 6, Tue 2008-11-18 no slides
|
Project PPD presentations |
Lecture 7, Wed 2008-11-19
 .pdf file
.pptx file
|
Software process models (continued) |
Lecture 8, Tue 2008-11-25
 
.pdf file
.pptx file
| User requirements |
Lecture 9, Wed 2008-11-26
 
.pdf file
.pptx file
|
PSS-05 URD template presentation |
Lecture 10, Tue 2008-12-02
 
.pdf file
.ppt file
| Use cases and UML sequence diagrams (basic) |
Lecture 11, Wed 2008-12-03
 
.pdf file
.ppt file
| UML sequence diagrams (constructions) and LSCs |
Lecture 12, Wed 2008-12-10
  no slides
| Project URD presentations |
Lecture | Contents |
Lecture 13, Tue 2009-01-20
  ClassDiagrams.pdf  
ClassDiagrams.ppt  
SRD.pdf  
SRD.pptx |
System requirements and UML class diagrams |
Lecture 14, Tue 2009-01-27  
.pdf file  
| Guest Lecture A. Tarnowski: Test driven development |
Lecture 15, Tue 2009-02-03
  No slides
| Presentation of SRD reports
|
Lecture 16, Tue 2009-02-10
 
.pdf file
.pptx file
| Architectural Requirements |
Lecture 17, Wed 2009-03-17
  No slides
|
Presentation of ADD reports |
Lecture 18, Tue 2009-03-24
.pdf file
.pptx file
.pdf file
.pptx file
|
Formal methods and ESC/Java |
Lecture 19, Tue 2009-03-31
 
|
TBA |
Lecture 20, Tue 2009-05-26
 
.pdf file
.pptx file
| Project demo guidelines |
|
Copyright ©
Sidansvarig: Karl Meinke <karlm@nada.kth.se>
Uppdaterad 2009-05-15
| |