SOFTWARE PROJECT MANAGEMENT

Degree course: 
Corso di First cycle degree in COMPUTER SCIENCE
Academic year when starting the degree: 
2016/2017
Year: 
2
Academic year in which the course will be held: 
2017/2018
Course type: 
Supplementary compulsory subjects
Credits: 
6
Period: 
First Semester
Standard lectures hours: 
48
Detail of lecture’s hours: 
Lesson (48 hours)
Requirements: 

It is assumed that participants have a basic knowledge of software development and the related issues.
Good comprehension of written English is useful for the students to access and understand some of the relevant documentation and materials.

The exam consists of a written test (duration: two hours), in which the students cannot use any books or notes. The exam includes questions to verify how well the students have retained the conceptual aspects and exercises for evaluating how well the students are able to identify the main characteristics of a management problem and propose adequate corrective actions, thus showing the identification and the application of the right conceptual aspects.

Assessment: 
Voto Finale

This course provides an introduction to the techniques for organizing, planning and controlling the software development process, to obtain the desired software product with at predictable cost and within the required delivery time, assuring a suitable quality level.
The illustrated techniques deal with: process modeling, software product and process measurement, techniques for building estimation models, development time and cost estimation methods, project planning, monitoring and control, risk management, quality planning and control.
The course complies, to the extent possible, with the "Guide to the Project Management Body of Knowledge" from the Project Management Institute.
An additional goal consists in teaching the specific technical language in English.
At the end of the course, the students
- know the nature and characteristics of the various types of software artifacts;
- know the nature and characteristics of the software development process.
- know software lifecycles and their suitability with respect to typical situations, requirements and constraints, are able to choose the most suitable ones for specific applications, and know how to build development process models;
- know and are able to apply project management techniques, including data analysis techniques, estimation model building, and planning of resource allocation;
- know and are able to apply risk analysis, classification, evaluation, and management techniques;
- know controlled software change management.

The ability to relate techniques, methods and tools to the characteristics and organization of software development processes –developed throughout the course– enable students to understand and learn new techniques, methods and tools, as well as to adapt and refine their knowledge and skills.

Software development processes (16 hours).
The nature of software. Software development processes: technical characteristics and organizational issues. Software lifecycles (waterfall, prototype, RAD, evolutionary, spiral model, RUP). Agile software processes. Extreme programming. SCRUM. Process modeling.

Measurement and estimation of process characteristics (18 hours).
Software size and its measurement. Lines of Code, Function points, COSMIC function points. Measures of cohesion, coupling, complexity and other relevant software properties. Model-based measurement. Data analysis and estimation model building. COCOMO and COCOMO II.

Planning and control (14 hours).
Planning: problems, techniques (WBS), and notations (Gantt, PERT). Project management and control. Risk management. Software Configuration Management and change management.

The slides used during classes can be found on the University’s e-learning web site, where the students can find further materials and links to relevant websites.

Convenzionale

Lectures for 48 hours total.

Office hours by appointment (sandro.morasca@uninsubria.it).

Professors

Borrowers