Servizi per la didattica
PORTALE DELLA DIDATTICA

Software Engineering II

01SQNOV

A.A. 2022/23

Course Language

Inglese

Course degree

Master of science-level of the Bologna process in Ingegneria Informatica (Computer Engineering) - Torino

Course structure
Teaching Hours
Lezioni 30
Esercitazioni in aula 30
Teachers
Teacher Status SSD h.Les h.Ex h.Lab h.Tut Years teaching
Torchiano Marco Professore Associato ING-INF/05 15 15 0 0 4
Teaching assistant
Espandi

Context
SSD CFU Activities Area context
ING-INF/05 6 C - Affini o integrative Attività formative affini o integrative
2022/23
The knowledge that students acquired through the fundamental and optional courses mainly concern technologies that can be used to build software systems (e.g. programming languages, web technologies, security, computer architectures) and basic techniques and tools to support development (e.g. deployment, version control, requirements, design). In order to effectively employ such knowledge and skills, it is fundamental to organize the development activities and manage them, curate the quality of the software products, and account for the inevitable characteristic of software: its persistent change. This course has the goal of expanding the knowledge and skills of students in the software engineering, especially concerning: - management of the software development process - organization of development activities - quality assurance and process improvement - software evolution
The knowledge acquired by students acquired through the previous foundational and optional courses mainly concern technologies that can be used to build software systems (e.g. programming languages, web technologies, security, computer architectures) and basic techniques and tools to support development (e.g. deployment, containers, version control, requirements, design). In order to effectively employ such knowledge and skills in a real software development project, it is fundamental to organize the development activities and manage them, curate the quality of the software products, and account for the inevitable characteristic of modern software: change. This course has the goal of expanding the knowledge and skills of students in the software engineering, especially concerning: - management of the software development process - organization and planning of development activities - quality assurance and process improvement - software evolution Due to the practical and interactive nature of the course, continuous attendance is mandatory.
The students will acquire basic knowledge regarding: - software development methods, focusing on agile methods - software quality assurance and process improvement, in particular static analysis and technical debt assessment - software evolution dynamics A key component of software development (as it happens in industrial context) is team work. Key skills to be developed include: - coordination of individuals and their interactions, - planning and monitoring the project evolution, - manage stakeholders' collaboration, - set up self-organizing teams.
The students will acquire basic knowledge regarding: - software development methods, focusing on agile methods - software quality assurance and process improvement, in particular static analysis and technical debt assessment - software evolution dynamics A key component of software development (as it happens in industrial context) is team work. Key skills to be developed include: - coordination of individuals and their interactions, - planning and monitoring the project evolution, - manage stakeholders' collaboration, - set up self-organizing teams.
This course build on the foundations of software engineering as provided in the Software Engineering course: software development life-cycle, configuration management, software testing. In addition the students are expected to be able to develop web applications.
This course build on the foundations of software engineering as provided in the Software Engineering course: software development life-cycle, configuration management, software testing. In addition the students are expected to be able to develop web applications.
- Software Process Management (3 cfu) - Agile methods - Software SCRUM - Software Quality Assurance (1.5 cfu) - Quality methods - Technical Debt - Static Analysis - Software Maintenance and Evolution (1.5 cfu) - Principles of Sw Evolution - Maintenance tools and techniques
- Software Process Management (1 cfu) - Agile methods - Agile in practice - Software SCRUM (2.5 cfu) - The approach - Specific practices - Adoption in practice - Software Quality Assurance (1.5 cfu) - Quality methods - Technical Debt - Static Analysis
The course will be organized with a balance of theory and practice. Conventional lectures will introduce the theory concerning the main topics of the course. Such lectures will be followed by practical sessions (either collective exercises or hands-on development sessions). A key component of software development that will be exercised is team work, including coordination of individuals and their interactions, leveraging stakeholders' collaboration, and achieving self-organization.
The course will be organized with a balance of theory and practice. Conventional lectures will introduce the theory concerning the main topics of the course. Such lectures will be followed by practical sessions (either collective practices or hands-on development sessions). A key component of software development that will be exercised is team work, including coordination of individuals and their interactions, leveraging stakeholders' collaboration, and achieving self-organization. The course incluse a number of interactive workshops and progress presentations, therefore continuous attendance by students is absolutely mandatory. Teams are formed in the initial weeks of the course therefore students that are not attending since the beginning of the course will be excluded from teams and will therefore fail the exam.
The main contents of the course are described in detail in the following books: - R.Jeffries "The Nature of Software Development" The Pragmatic Programmers - K.Schwaber, M.Beedle. "Agile Software Development with Scrum", Prentice-Hall, 2001 - M.Cohn. "Succeeding with Agile", Addison-Wesley, 2010. - C.Sims, H.L.Johnson. “The Elements of Scrum” DYMAXICON, 2011. - K.Schwaber and J.Sutherland "The Scrum Guide" (http://www.scrumguides.org) - D.Spinellis. Effective Debugging Addison-Wesley, 2016. - P.Grubb, A.Takang "Software Maintenance: concepts and practice" World Scientific Publishing, 2003 Additional materials will be provided by the teacher during the course, including articles on scientific journal to represent the most advanced state of the art in the field.
The main contents of the course are described in detail in the following books: - R.Jeffries "The Nature of Software Development" The Pragmatic Programmers - K.Schwaber, M.Beedle. "Agile Software Development with Scrum", Prentice-Hall, 2001 - M.Cohn. "Succeeding with Agile", Addison-Wesley, 2010. - C.Sims, H.L.Johnson. “The Elements of Scrum” DYMAXICON, 2011. - K.Schwaber and J.Sutherland "The Scrum Guide" (http://www.scrumguides.org) - P.Grubb, A.Takang "Software Maintenance: concepts and practice" World Scientific Publishing, 2003 Additional materials will be provided by the teacher during the course, including articles on scientific journal to represent the most advanced state of the art in the field.
Modalità di esame: Elaborato progettuale in gruppo; Prova scritta in aula tramite PC con l'utilizzo della piattaforma di ateneo;
Exam: Group project; Computer-based written test in class using POLITO platform;
The 80% of the assessment will be based on a team project work that will let the student apply the techniques illustrated during the course and acquire the relative skills. The remaining 20% of the grade will be based on a final oral exam that will focus on the experience of the student during the project work and on the knowledge acquired during the course.
Gli studenti e le studentesse con disabilità o con Disturbi Specifici di Apprendimento (DSA), oltre alla segnalazione tramite procedura informatizzata, sono invitati a comunicare anche direttamente al/la docente titolare dell'insegnamento, con un preavviso non inferiore ad una settimana dall'avvio della sessione d'esame, gli strumenti compensativi concordati con l'Unità Special Needs, al fine di permettere al/la docente la declinazione più idonea in riferimento alla specifica tipologia di esame.
Exam: Group project; Computer-based written test in class using POLITO platform;
The 80% of the assessment will be based on a team project work that will let the student apply the techniques illustrated during the course and acquire the relative skills. The remaining 20% of the grade will be based on a final oral exam that will focus on the experience of the student during the project work and on the knowledge acquired during the course. Most of the course has a practical / workshop nature therefore students must be able to attend at least 75% of the lectures in order to pass the exam.
In addition to the message sent by the online system, students with disabilities or Specific Learning Disorders (SLD) are invited to directly inform the professor in charge of the course about the special arrangements for the exam that have been agreed with the Special Needs Unit. The professor has to be informed at least one week before the beginning of the examination session in order to provide students with the most suitable arrangements for each specific type of exam.
Esporta Word


© Politecnico di Torino
Corso Duca degli Abruzzi, 24 - 10129 Torino, ITALY
Contatti