Uppsala University Department of Information Technology

Software Engineering Spring 2007



Table of contents:

0. News
1. Teaching staff
2. Course start
3. Schedule
4. Assignments, exams, grades

0. News


1. Teaching staff


Name  E-mail  Room  Phone  Mailbox
(4th floor, building 1) 
Lecturer  Roland Bol Roland.Bol@it.uu.se 1356  018-471 7606  28 
Assistant  Manivasakan Sabesan  Manivasakan.Sabesan@it.uu.se 1339
018-471 7778
59

2. Course start

2.1 What course? 

Code  Swedish name  Points  English name
ECTS credits
2AD517  Programvaruteknik MN1  Software Engineering
7.5

2.2. Registration

Students who have been accepted (antagen) to the course and exchange students will be registered at the first lecture. It is also possible to register through Studentportalen.

2.3. Language

The course will be given in English. Assignments must be handed in in English.

2.4. Literature

The main course book is Software Engineering, 7th or 8th edition, by Ian Sommerville.
(These editions are identical, except that the 8th edition includes some new chapters - these chapters are however not treated in the course.)
The 6th edition can also be used (check from the 7/8th ed. sections: 4.4, 12.4, 13, 17, 19, 24.4, 28.6) Reading instructions for the 6th edition.

Buy the book now and start reading in time!

2.5. Links


3. Schedule

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

3.1.  Course lay-out and speed

The course is taught in close cooperation with another course: Methods of Programming 2. In short, Software Engineering will be responsible for requirements engineering and quality assurance through code review, system level test planning and testing. Methods of Programming 2 will be responsible for implementation, readable code, debugging, module testing and documentation.

The SE assignments are done in groups of three. MP assignments are also done in groups of three. Because of the combination of the courses, it is extremely important that you keep the deadlines. Making a plan and following it is an important part of what Software Engineering is about.
A combined overview schedule for both courses, showing their integration, is here.

And this year it gets tricky.  There are many more students in Software Engineering than in PM2. Therefore many SE-groups will not work with an actual PM2 group, but instead they will test systems that were built before. 

3.2. Lectures

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.  

Some lectures are joint lectures with Methods of Programming 2. There are also a few guest lectures. 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.3 Lessons

During two one-hour lessons, the course assistant will explain in detail what you are expected to do in the assignments.

3.4. Time and place

All lectures etc. start at 15 minutes past the hour. The exams start on the hour.
(L = lecture, JL = joint lecture with Methods of Programming 2, l = lesson, G = guest lecture, S = seminar, E = Exam)
 
Type  Day  Time  Room Subject  Chapters (7/8th)
Important sections (7/8th)
week 3
JL 19/1  13 1311
RB+MP: Introduction; schedule, assignments, waterfall- and V-model, good code  1, 4.1.1, 4.3, 4.5
4.1.1, 4.3.3
week 4
L 22/1  13
1311
Requirements, Requirements Engineering  2.3, 4.3.1, 6, 7
2.3, 4.3.1, 6-in, 6.1, 6.2, 6.3-in, 6.5, 7.2, 7.4
JL 23/1
15
1311
MP: Standards for code and documentation 27.2,  20.2, 29
27.2, 29-in, 29.5
l
25/1
13
1311
MS: requirements engineering assignment

JL 26/1
10
1311
MP: Ray tracing and XML - intro
13.4
13.4
week 5
JL 29/1
13
1211
RB: Validation and Verification: inspections and testing
4.3.3, 7.3, 22, 23
4.3.3, 7.3, 22-in, 22.2, 23-in, 23.1, 23.3.1, 23.4
L 30/1
10
1311
Iterative processes,
Models and Prototypes
4.1, 4.2, 4.4, 8, 17
4.1.2., 4.2.1, 8.2, 8.3, 8.4.3, 17-in, 17.4
week 6


JL 5/2
10
2247
RB: Defect Testing 
23
23.3.2-23.3.4, summary
week 7


L
12/2
10
1211
Design, Reuse
4.3.2, 11, 12, 13, 18, 19
4.3.2, 11-in, 11.2, 11.4, 12-in, 12.2, 18-in, 19.2
L
14/2
10
1211
Dependable Systems
3, 9, 20
3-in, 3.2, 3.4, 9 (except 9.3), 20-in, 20.1
l
15/2
10
1211
MS: testing assignments
Mid-course evaluation

16/2  14
13
1111 Lars-Henrik Eriksson: Industrial Applications of Formal Methods 

L
Formal methods 10, 22.4-in
10-in, 10.1
week 10


L 5/3  13 1311
Maintenance, Evolution,
Legacy systems, Config. management
21, 29
2.4
21.2
2.4, 21.4
JL
8/3
13
1311
MP: Scripting languages: how to write test scripts

week 11
L
13/3
13
1311
Project Planning,
Software Cost,
Management
5
26
25
5.2-5.4,
26-in, 26.2, 26.3-in,
25.3.4, 25.3.5
week 13
L 26/3 10 1211
Quality Assurance
Process Improvement
Combined processes
27
28
22.4.1, 4.4, 17.2
27-in, 27.1, 27.5,
28-in, 28.2, 28.5, 28.6
22.4.1, 4.4, 17.2
week 14
G
2/4
10
1211
Henrik Boström (Accenture) Every year 100 000 students graduate from IT educations in India – how are we affected?

G
3/4  13 1211
Mikael Lundgren (Citerus) SE in practice - introducing Agile methods
17.1
17.1
4/4
15
1211
Case study (A War Story)


week 16
L
16/4
10
1211
Questions, old exams
Main course evaluation


17/4  9:00
5
Exam Polacksbacken, bldg 5.


E
June 12
8:00
5
Exam Polacksbacken, bldg 5.


E
Aug 20
9:00
5
Exam Polacksbacken, bldg 5.


"x-in." means the introduction to Chapter/Section x, before Section/subsection x.1 starts.


Chapters 14, 15, 16 are not covered at all in this course.
Chapters 30, 31, 32 (8th ed.) are not covered at all in this course.

3.4.1 Guest lectures

Henrik Boström (Accenture) Every year 100 000 students graduate from IT educations in India – how are we affected?

3.4.2 Seminar: A War Story (Case Study)

Part one of the story will be distributed on April 3. Make sure that you have read it (*), and bring it!
The rest of the story will be handed out in episodes.

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: your whole group is joining this project: 20 programmers, 2 first-level managers, a secretary and a typist.

4. Assignments, exams, grades

Assignments are made in groups of 3. Each group will work with a team from the MP2 course, or test code from previous years.

4.1 Overview of estimated time spent, and grading

The grade will be determined by the total points score from the exam and the assignments. That is, the exam will not be given a grade by itself.
 
Item hours per student grade points  start
deadline
rework (major)
rework (minor)
Lectures, exam and reading time  100
60 



Assignment 1: Requirements 20
14
25/1
9/2 at 17:00
23/2 at 17:00
hand in with test spec
Assignment 2: Test spec 40
20
15/2
9/3 at 17:00
23/3 at 17:00
hand in with 1st test report
Assignment 3: First test report
15
3
16/3
30/3 at 17:00
no (do better next time)
Assignment 4: Second test report
15
3
24/4
4/5 at 17:00
no (because you did better)

4.2 Assignments

Completed assignments should be put into Manivasakan's mailbox (floor 4, number 59) before the deadline. Graded assignments will be returned on the shelf outside room 1346. If you have questions, you can send e-mail or see if Manivasakan is in his office (1339).

4.3 Grading

You can receive the grades pass (G) and pass with distinction (VG) on both the assignments and the exam in isolation, and on the course as a whole.
To pass, you can compensate low points on the exam by high points on the assignments, or vice versa.

max points
G
VG
exam (3p - 4.5 ECTS)
60
33 or sum >= 55
45
assignments (2p - 3ECTS)
40
22 or sum >= 55
30
course (sum)
100
55
75

4.4 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, and some new material is included about which there are no questions in older exams. I can comment details in the final lecture. For fairness, I have only included exams that are in English.

roland.bol@it.uu.se

Roland Bol

































Uppsala Universitet