Unit SOFTWARE ENGINEERING
- Course
- Informatics
- Study-unit Code
- 55024706
- Curriculum
- In all curricula
- Teacher
- Alfredo Milani
- Teachers
-
- Alfredo Milani
- Hours
- 42 ore - Alfredo Milani
- CFU
- 6
- Course Regulation
- Coorte 2020
- Offered
- 2021/22
- Learning activities
- Base
- Area
- Formazione informatica di base
- Academic discipline
- INF/01
- Type of study-unit
- Obbligatorio (Required)
- Type of learning activities
- Attività formativa monodisciplinare
- Language of instruction
- Italian
- Contents
- 1. Software as Process and product. Software lifecycle.Requirements Analysi.Modeling and Design UML. SW maintenance. 2 SW Metrics: QoS and cost. 3 SW Testing and Security. Secure programming. 4 Reuse support technologies. Design Pattern and Software integration.
- Reference texts
- Material:
Lecturer Notes available on elearning platform: www.unistudium.unipg.it
Reference textbook (refer to latest editions):
Sommerville, SOFTWARE ENGINEERING. Editore : Pearson Education Italia
Other additional references:about software design SW:
A. Binato, A. Fuggetta, L. Sfardini. Ingegneria del Software. Pearson, 2006.
about: UML
G. Booch, J. Rumbaugh, I. Jacobson. The UML user guide. Addison Wesley, 1999.
J. Arlow, I. Neustadt. UML e Unified Process. McGraw-Hill, 2003.
S. Bennett, J. Skelton, K. Lunn. Introduzione a UML. McGraw-Hill, 2002.
E. Damiani, M. Madravio. UML pratico. Addison Wesley, 2003.
H.E. Eriksson, M. Penker. UML Toolkit. Pearson, 2004.about: Design Pattern
E. Gamma, R. Helm, R. Johnson, J. Vlissides. Design Patterns. Addison-Wesley, 2002.
C. Larman. Applicare UML e i pattern. Pearson, 2004. - Educational objectives
- Knowledge and application of
techniques and standards for designing, development, organization and evaluation metrics of information systems
main techniques for software testing. Secure Programming best practices
programming techniques based on design patterns - Prerequisites
- Prerequisites needed in order to fruitfully and effectively attend this course include baci notions of programming and object oriented programming, logics and complexity of algorithms and data structures.
- Teaching methods
- In class lectures.
Lab sessions.
Seminars.
Ongoing assignments.
Written exam. Group project with final presentation. - Other information
- Elearning platform for student-lecturer interaction and communication http://www.unistudium.unipg.it
- Learning verification modality
- Final written exam and individual/group project presentation. Continuous evaluation with home/in class assignments for students attending the course can exonerate partially or totally from the final exams.
Final exams duration is two hours, the questions consist in solving practical problem of analysis, modeling and test of real domains, and open ended questions on theoretical issue of software engineering, design pattern and software integration.
The project consists in a team project with project report and presentation where each participant play a role in a software design and development team and applies course methodologies and techniques to a real problem. - Extended program
- Programme:
1 Software: process and product.
Models of Software Life Cycle
Technique and method for Requirements Analysis.
Modeling and design: UML
Software maintenance
2 Process and product metrics: software quality and cost
3 Software Reliability and Security: Testing and formal verification techniques, Standards for security evaluation and secure programming
4 Reuse supporting technologies: Design Pattern and Software Integration