Preliminary Course Information, PUM-I, TDDB062 Personal introduction

advertisement
Preliminary Course Information, PUM-I, TDDB062
Date: 2001-06-29
Personal introduction
Warmly welcome to the course in Software Engineering for the I curriculum 2001. My name is
Kristian Sandahl and I’m hired as professor in Software Engineering from June 2001. Before
that I spent 6 years at Ericsson in parallel to some university research activities. Software engineering is about building, maintaining and operating software in a systematic and intelligent
way. Software is critical to almost any business and touches many disciplines such as psychology, organisation theory, business analysis, mathematics etc. That’s why Software Engineering is so fun! I hope I and my assistants can motivate you to share some of our enthusiasm.
Parts of the course
Theory
The theoretical content of the course is provided in the course book and 12 lectures.
The course-book is Peters, J.F. and Pedrycz, W. (1999). Software Engineering: an engineering approach, Wiley, ISBN 0-471-18964-2. Please note that this is not the same book
as last year. This book covers more practical aspects and is cheaper (according to bokfynd.nu) than the earlier one. You should read to understand the entire book. The advanced
level, chapters 13, 14, 15, 17, 18 can be read with lower ambition.
The 12 lectures will cover many parts of the book, but they will not necessarily replace
reading the book. Rather the lectures are there to complement and criticise the book. I will
invite some expert guest lectures.
Practice
In the labs you will spend 16 hours investigating two important tools: Rational Rose and
JBuilder. Both are heavily used in industry and you may find good use of them in your
projects as well. We have an 8-hour lab with Rose. The goal of the lab is to make you well
acquainted with the tool and the UML notation for modelling software. Hopefully you will get
the feeling that modelling is as important and creative as coding.
We have a 4-hour lab in JBuilder, which is a powerful tool for Java programming. You
will be required to run a few on-line tutorial lessons. Programming is in the prerequisites of
the course, but you need practical training.
The remaining 4 hours in the lab is there if you should need extra time due to some problems, but in first hand you should use the time to increase your proficiency with the tools. I
recommend that you spend some time in investigating the possibility to connect a Java application to a database.
Project
The projects are there to give you experience. For some of you this is the first time you participate in a practical development team. The world is not perfect and the goal is not to create a perfect solution to the task you will get. The goal is to learn as much as possible from
trying to create a feasible solution.
The projects are performed in four system groups, all with the goal of creating a scheduling system for a university.
Each system group is divided in five component groups of 6-8 persons each. These
groups are responsible for one component each of the system, namely: the database, optimization algorithms, application for navigating for students and teachers, application for
teachers giving input to the system, and application for administrators optimising the entire
scheduling of the university.
Each component group should have a project organisation with at least an identified
project leader. Other roles are up to you. You are supposed to negotiate interfaces with other component groups in your own system group. The components should be specified, designed, coded, tested, demonstrated and hopefully also integrated with other components.
This is problem-oriented education, so you need to find the information from many sources. We will give you hints, but not solutions.
Each component group will meet an hour a week with the appointed instructor.
Each system group will have two seminars, one in the start of the project and one at the
end. All component groups shall present their plans and results at these seminars.
Each component group is required to hand in the following documents to its instructor:
a requirement specification, a design description, a test report and an experience report.
The experience report is very important and the instructor will give you written feed-back on
that. The other documents will be discussed during weekly meetings.
The project will start the last two weeks of period 1, so there will be about 8 weeks to
complete the projects. The project part is 2.5 academic credits which corresponds to at minimum 100 hours work per person. For a six-person group this means that we expect you to
spend 600 hours in total.
Examination
To pass the course you should have:
1. Passed the written exam with grade 3, 4, or 5. There will be 10 short questions and 5
longer questions. You select 2 of the 5 longer questions. You are allowed to bring the
course book to the exam, but you will have a hard time if you have not read it thoroughly in
beforehand. The exam is preliminary scheduled to October 19th 14-18. There will be two
more chances in January and August 2002.
2. Recorded presence at 16 hours of lab-time, and have shown the assistant that you fulfilled
mandatory parts.
3. Participated in a project group, which has fulfilled the specification, design, coding, testing,
demonstration and integration of a component.
4. Participated in a project group which have handed in a requirement specification, a design
description, a test report and an experience report.
5. Participated in two system group seminars.
The project work will be graded with UK, 3, 4, 5 per component group by the instructor, who
in turn conferences with me. (You probably have to behave really odd to get a UK.) Higher
grades are given to groups who either produces a lot and/or learn a lot. Your individual grade
is derived from the table below:
Grade from written exam
Grade from project work
Final individual grade
3, 4 or 5
UK
UK
3
3
3
3
4
4
3
5
4
4
3
4
4
4
4
4
5
5
5
3
5
5
4
5
5
5
5
Other things
In the course we will try out the Blackboard system for course administration and communication. See www.blackboard.com if you are interested. This is a pilot installation, and if technical
things do not work we will use group-mail and news instead.
The default course language is English. If all of the audience in a single lecture or seminar
understands Swedish we will use Swedish. Most business is international, so you have to start
practise. A guest student who asks for a lecture to be given in English should be treated with
respect.
Please note that everything in this description is preliminary.
Download