Programma del corso

Software life cycle and software quality.
Software engineering processes.
The UML language: use case diagrams, class diagrams, sequence diagrams, activity diagrams, component diagram.

Software life cycle: traditional methods. The waterfall model. Requirements analysis, design, implementation, testing. Deployment and maintenance.
Software life cycle: Agile methods: fundamental principles. Test-driven development. Refactoring. Notes on the Scrum method.
Introduction to design patterns: creation patterns, structural patterns, behavioral patterns.

Information systems: features, classification, organization, main technologies.

Operational systems. ERP systems: role, reference models.

Data warehousing: features, models, elements of design.

Big Data systems: features, organization, main technologies.