SE Autumn 2012

Software Engineering Autumn 2012


Table of contents:

0. News
1. Formalities
2. Material
3. Schedule
4. Assignments, exams, grades

0. News

  • Slides from accemture are in the Student Portal
  • The lecture on secure systems is now confirmed.
  • Schedule change! Two lectures cancelled in week 47. Lecture on secure systems moved to the last week of the course.
  • I regularly add slides for the lectures.
  • Printer-friendly version of this page.

1. Formalities

1.1 Lecturer

Name  E-mail  Room  Phone 
Roland Bol Roland.Bol@it.uu.se 1356  018-471 7606 

1.2 This course

Code  Swedish name  Credits English name
 1DL250 Programvaruteknik  Software Engineering

The course will be given in English. 

1.3 Admission and registration

All admitted students register through Studentportalen. For re-registrations: contact the IT-office.

Students who are not admitted yet should apply through the National admission website, except
- Masters students: apply through their student counsellor
- Exchange students - contact Ulrika Jaresund.

If you want to unregister, please do so within 3 weeks of the course start; contact the IT-office.

2. Material

2.1 Literature

The main course book is Software Engineering, 9th edition, by Ian Sommerville.

The 9th edition is an improvement over the 7th/8th edition. If you insist on using the 7th or 8th edition (these editions are identical, except that the 8th edition includes some new chapters not treated in the course), reading instructions are here.

Buy the book now and start reading in time!

The book consists of for parts:

  1. Introduction to SE - mostly covered (except 1.3, 5.5, 7)
  2. Dependability and Security - dependability is mostly covered; a guest lecture covers security
  3. Advanced SE - mostly not covered - we briefly look at some items on reuse and distributed architecture
  4. Software Management - mostly covered (not details in 23.5!)

2.2. Links

  • I have been asked in course evaluations to provide a real-life example of a requirements specification. I found the following specification ; notes
    • It's 151 pages - browse it, don't waste paper on it
    • It does not exactly follow our template - there are many such templates around
    • The source is OPF.
    • I'm not sure that it's actually real-life (in the sence that it was meant to be implemented), but it could be.
  • Sommerville's blog

3. Schedule

The schedule consists of lectures (L), guest lectures (G) and exams (E)

3.1. Lectures and ...

The purpose of the lectures is to summarize, clarify and complement the literature, and to highlight the important points. They follow the book rather closely, though not exactly in the same order. The detailed schedule below lists the chapters in the book that are related to each lecture. Attendence is of course recommended, but not obligatory.  
There are 4 guest lectures and a seminar. The guests come from the university and industry. The topics are current research and industrial practices in software engineering. The purpose is to put the course material in a wider perspective, and to complement the views of the lecturer with others' views.

3.2. Time and place

All lectures etc. start at 15 minutes past the hour. The exams start on the hour.
(L = lecture, G = guest lecture, S = seminar, E = Exam)
Reading: "x-in." means the introduction to Chapter/Section x, before Section/subsection x.1 starts.
 
Type  Day  Time  Room Subject  Chapters (9th)
Important
sections (9th)
week 44
L 29/10 8
1311
Introduction: schedule, assignment, etc.
Software processes
1.1, 1.2, 2.1, 2.2.3,  2.3.3
2.1.1, 2.1.2, 2.2.3 slides
L 1/11
8
2247
Requirements, Buy and/or build?,
Requirements Engineering 
2.2.1, 4, 10.3
2.2.1, 4-in, 4.1, 4.2, 4.3-in, 4.3.1,
10.3, 4.5, 4.6, 4.7 slides
L 2/11
8
1311
Models and Prototypes,
Incremental and Iterative,
Agile
5, 2.3, 3
5-in, 5.2, 5.4, 2.3.1
2.3.2
3.1, 3.2 slides

2/11
10

UTNARM - go and ask companies about their software engineering practices!
week 45
L
7/11
8
1311
Design, Reuse 2.1.3, 2.2.2, 6, 18, 16, 17 2.1.3, 2.2.2, 6-in, 6.3, 18-in, 18.2, 18.3.2, 18.3.3, 16-in, 17.2 slides
G
8/11
10
1311
Mikael Lundgren
Agile and Scrum
3
A book
3.1, 3.4 notes
L 9/11
13
1211
Validation and Verification: inspections and testing 2.2.3, 4.6, 24.3, 8, 15.2 2.2.3, 24.3, 8-in, 8.1.4, 8.2, 8.3.1, 15.2 slides
week 46
L
13/11
10
1311
Dependable Systems

10-in, 10.1, 10.5.1, 11, 12, 13
10.5.1, 11-in, 11.1, 11.3, 12-in, 12.1, 12.2, 12.3, 13.2, 13.4 slides
G
15/11
13
1311
Lars-Henrik Eriksson (UU, Nya Industrilogik):  Industrial Applications of Formal Methods
12.5, 15.1, 15.4, 15.5-in 15.1, slides
L
16/11
10
1311
Defect Testing
mid-course evaluation (see below)
8
summary, slides  8.1.1-8.1.3
week 47
G
19/11
13
1211
Project Planning,
Software Cost,
Management
22, 23 22-in, 22.1,  23.2, 23.3,
23.5-in, 23.5.1
22.3 slides

20/11
15
1311
Lecture cancelled



22/11
8
1311
Lecture cancelled
Deadline for step 1 of the assignment (select article)


week 48               Reminder: sign up for the exam!
L
27/11
8
1311
Maintenance, Evolution,
Legacy systems, Config. management
9, 25
9.3-in, 9.3.2, 9.4, 25.3, slides
S
29/11
13-16
1245
Case study (A War Story) In Swedish
(STS, DV, IT, ...)


30/11
9-12
2446
Case study (A War Story) In English (Master, ...)

week 49
L
4/12
13
1311
Quality Assurance
Process Improvement
Combined processes
24
26
Cleanroom, 2.4, 3.3
24-in, 24.1, 24.4
26-in, 26.4, 26.5
Cleanroom, 2.4, Fig.3.4, slides
G
6/12
10
1311
Lennart Beckman (Europoint)
Development of secure systems
11.4, 12.4, 14, 15.3
(2.4)
11.4, 14.1, 14.2.3, slides
G
7/12
13
1211
 Mikael Nordström and Holger Karlsson (Accenture) 22 Slides are in the student Portal.
22.3
week 50
L
11/12
10
1311
Questions, old exams


Exams
E 13/12


Exam



11/1


Deadline for step 2 of the assignment


E
15/3


Exam

E
10/6


Exam


E 24/8


Exam


The mid-course evaluation is an evaluation of the course (right speed, interesting?) - it is not a test!

3.3 Guest lectures

Mikael Lundgren is a DV alumni, and has worked as a software developer, project manager, Scrum Master and development manager. Today he is a consultant at Levla, helping software companies improve their work using Lean and Agile development frameworks. Mikael became a Certified Scrum Trainer in 2006, out of 50 worldwide.

  •  Lean and Agile - an overview and history
  •  How does Agile Software Development work? Why does it work?
  •  Scrum, the roles in Scrum, why Scrum is different
  •  Scrum projects vs traditional projects
  •  Continuous learning and improvements
Lennart Beckman from Europoint Networking is an expert on the development of secure systems.
The focus is on the processes required to make a system secure (for the technology, sign up for the courses Secure computer systems I and II and Cryptology).

Formal methods are presented by Lars-Henrik Eriksson, currently a lecturer at UU. Lars-Henrik has industrial experience of the application of formal methods, mostly in railway signalling systems. He works part-time at the company Nya Industrilogik. He also teaches the course Provably correct software.

Accenture will be represented by Mikael Nordström and Holger Karlsson, alumni from the IT programme. As a consultancy company, Accenture can apply many different development models, both traditional and agile, depending on the needs of the customer. One of the key successes of Accenture is their successful application of offshoring. 

3.4 Seminar: A War Story (Case Study)

This is a case study (story) in 4 parts.
Part one of the story will be distributed on November 19. Make sure that you have read it (*), and bring it!
The rest of the story will be handed out in episodes (2-3 pages) during class.

We will put ourselves in the position of the project manager ("you"), and discuss "your" options/choices. Apart from the questions at the end of each part, consider:
  1. What additional information would you want to have?
  2. What are the risks? Separate high risks from lesser risks.
  3. What would you do next?
(*) Clarification of a detail in the text: "your" whole group is joining this project: 20 programmers, 2 first-level managers, a secretary and a typist.

4. Assignment, exams, grades

4.1 Assignment

This assignment is done individually.

Summarize an article in Software engineering
  • Choose a topic in Software Engineering that you would like to know more about.
  • Find an article (suggested 10-15 pages) on this topic.
    The article can be a paper directed to industry (for example, the longer papers in IEEE Software) or a purely scientific paper (as in IEEE Transactions on Software Engineering).
    Note: these two journals are only examples - there is much more out there. A combination of shorter articles may also be acceptable. Preferably the article should be quite recent (not older than 5 years), although there are some older classics that are still highly relevant.Use our Library Resources. Sommerville's blog may also contain useful suggested reading.
  • When you have selected the article, send me by email title, journal, and a link. This should be done no later than November 22. I will reply as quickly as possible to confirm and approve your choice.
  • Write a report on the article. The report must summarize the material (in no more than 2 pages), and then also include your own judgement and ideas. What are the authors main points? Do you agree?
  • Deadline: January 11, 2013. Hand in the summary through Studentportalen. I use the progress function to keep track of the two steps of the assignment.

4.2 Exam and Grading

  • Assignment is graded pass/fail(=redo)
  • Exam The exam has 60 points. The weight of each question will be on the exam. The exam covers the book (not everything - as indicated by the reading instructions).
You can receive the grades 3, 4 or 5 on the exam - the course grade is the exam grade.


max points
 3
4
5
exam
60
33
39
45

These boundaries are preliminary and indicative.

Some sample exams

Note that the contents of the course have changed over the years: some questions refer to material that is no longer included, or guest lectures that are no longer given. Some new material is included now, about which there are no questions in older exams. I can comment details in the final lecture.

roland.bol@it.uu.se

Roland Bol