The course aims at providing a general knowledge about the methodologies and tools for the management of software projects and IT developments. The course reviews the basic concepts about project management, and covers the lifecycle phases of the traditional software project management and Agile methodologies. Special attention is paid to the modelling of software, and the evaluation and improvement of software and process quality.
Textbooks:
- Introduction to Software Project Management, by Adolfo Villafiorita, CRC Press, 2015
- Learning Agile: Understanding Scrum, XP, Lean and Kanban, by Andrew Stellman, Jennifer Greene, O'Reilly Media, 2015
Additional teaching material: slides presented during the course and related papers.
The course partially uses online materials and resources.
Obiettivi Formativi
KNOWLEDGE AND UNDERSTANDING
At the end of the course, the student should acquire knowledge and understanding of: the traditional and Agile methodologies of software project management; the techniques and tools for the modelling, enactment and mining of business processes; the basic notions for the management of software and process quality.
APPLYING KNOWLEDGE AND UNDERSTANDING
At the end of the course, the student should be able to develop a software project working in a team, by applying the methodologies, techniques and tools introduced in the course.
MAKING JUDGEMENTS
At the end of the course, the student should be able to: evaluate, for a given software project, pros and cons of the methodologies, techniques and tools introduced in the course; assess the quality of a software under development and identify the most adequate counter-measures to take for improving it; estimate the project costs; determine the project risks.
COMMUNICATION SKILLS
At the end of the course, the student should be able to: work in a team by communicating with developers and stakeholders, by also resorting to standard modelling notations; present software project management concepts; report the progresses and results of a project to others in a clear and competent way.
LEARNING SKILLS
At the end of the course, the student should be able to autonomously learn software project management methodologies and tools not illustrated in the course in order to face the specific challenges of a new project.
Prerequisiti
None
Metodi Didattici
Class lectures, based on slides and demos. Lab activities. Classroom presentations made by students with the support of the teacher.
Altre Informazioni
The course takes place at the Centro Didattico Morgagni (Viale Morgagni 40-44, Firenze), according to the scheduled lesson timetable (https://kairos.unifi.it/agendaweb/).
Attendance at class lectures is not mandatory but is strongly recommended. The course website is available on the University platform (https://e-l.unifi.it/).
Office Hours: make an appointment by e-mail (francesco.tiezzi@unifi.it).
Modalità di verifica apprendimento
Learning outcomes are assessed using two different tests:
1. Written test, consisting of multiple-choice and/or short-answer questions that may cover all the topics presented during the course.
2. Practical test, consisting of a group project whose topic must be agreed upon by the teacher and the students, which will be presented to the other students and orally discussed with the teacher.
The evaluation of each test is expressed with a mark out of thirty, with possible laude. A test is considered to be successfully passed if the assigned mark is at least eighteen. Provided both tests are sufficient, the final mark will be determined by the average of the two marks.
Each learning outcome is assessed in at least one of the two tests composing the exam.
The written test aims to evaluate: the student's acquisition of the knowledge and understanding of the topics covered during the lessons; the capability of reasoning on specific issues related to software project management; the appropriate understanding and use of specialized vocabulary. The mark of the written test is determined by the number of correct answers to multiple-choice questions and the accuracy of the short answers.
The practical test aims to evaluate: the student's ability to use in practice software project management techniques and tools; the capability to judge the quality of a software and its development process; the capability to autonomously learn new techniques and tools; the student's communication skills, in terms of teamwork skills, clarity of the presentation and ability to write a professional report. The mark of the practical test is determined by the complexity of the project, the quality of the oral presentation, the quality of the reports and the accuracy in the answers to the questions posed by the teacher during the discussion of the project.
Programma del corso
Course programme:
- Introduction to software project management
- Traditional software project management lifecycle
- Business process management
- Risk management
- Software quality
- Agile methodologies