20810007 - ARCHITETTURA DEI SISTEMI SOFTWARE

This unit presents software systems architecture, and it involves both methodological and technological issues. Software architecture has a fundamental role in achieving the quality (i.e., non functional) properties of software systems. In particular, the unit will study the architecture of distributed software systems, including the component-based architecture, the service-oriented architecture, and architectures for the Cloud

Curriculum

teacher profile | teaching materials

Programme

Fundamentals: Software architecture concepts; Architectural descriptions; Software qualities; The architecture definition process.
Software qualities and designing for software qualities: performance; modifiability; availability; veriafiability; scalability; interoperability; monitoring.
Architectural patterns: Domain Model; Domain Object; Layers; Pipes & Filters; other POSA patterns; hexagonal architecture.
Architecture of distributed systems; client/server, peer-to-peer, remote invocation; broker; asynchronous communication; messaging; components; component-based architecture; container.
Service-based architecture; services; service-based-architecture; REST services; microservices; cloud native software.
DevOps and software delivery: environments and their management; cloud computing; virtual machines and system virtualization; containers and container-based virtualization; container orchestration; continuous delivery.
Middleware.

Core Documentation

Luca Cabibbo
Architettura del Software: Strutture e Qualità
Edizioni Efesto, 2021
ISBN: 9788833812458

Type of delivery of the course

Lectures. Exercises on middleware services.

Type of evaluation

The exam will take place orally. The middleware exercises can be verified by carrying out a small project, in small groups.

teacher profile | teaching materials

Mutuazione: 20810007 ARCHITETTURA DEI SISTEMI SOFTWARE in Ingegneria informatica LM-32 CABIBBO LUCA

Programme

Fundamentals: Software architecture concepts; Architectural descriptions; Software qualities; The architecture definition process.
Software qualities and designing for software qualities: performance; modifiability; availability; veriafiability; scalability; interoperability; monitoring.
Architectural patterns: Domain Model; Domain Object; Layers; Pipes & Filters; other POSA patterns; hexagonal architecture.
Architecture of distributed systems; client/server, peer-to-peer, remote invocation; broker; asynchronous communication; messaging; components; component-based architecture; container.
Service-based architecture; services; service-based-architecture; REST services; microservices; cloud native software.
DevOps and software delivery: environments and their management; cloud computing; virtual machines and system virtualization; containers and container-based virtualization; container orchestration; continuous delivery.
Middleware.

Core Documentation

Luca Cabibbo
Architettura del Software: Strutture e Qualità
Edizioni Efesto, 2021
ISBN: 9788833812458

Type of delivery of the course

Lectures. Exercises on middleware services.

Type of evaluation

The exam will take place orally. The middleware exercises can be verified by carrying out a small project, in small groups.

teacher profile | teaching materials

Mutuazione: 20810007 ARCHITETTURA DEI SISTEMI SOFTWARE in Ingegneria informatica LM-32 CABIBBO LUCA

Programme

Fundamentals: Software architecture concepts; Architectural descriptions; Software qualities; The architecture definition process.
Software qualities and designing for software qualities: performance; modifiability; availability; veriafiability; scalability; interoperability; monitoring.
Architectural patterns: Domain Model; Domain Object; Layers; Pipes & Filters; other POSA patterns; hexagonal architecture.
Architecture of distributed systems; client/server, peer-to-peer, remote invocation; broker; asynchronous communication; messaging; components; component-based architecture; container.
Service-based architecture; services; service-based-architecture; REST services; microservices; cloud native software.
DevOps and software delivery: environments and their management; cloud computing; virtual machines and system virtualization; containers and container-based virtualization; container orchestration; continuous delivery.
Middleware.

Core Documentation

Luca Cabibbo
Architettura del Software: Strutture e Qualità
Edizioni Efesto, 2021
ISBN: 9788833812458

Type of delivery of the course

Lectures. Exercises on middleware services.

Type of evaluation

The exam will take place orally. The middleware exercises can be verified by carrying out a small project, in small groups.

teacher profile | teaching materials

Mutuazione: 20810007 ARCHITETTURA DEI SISTEMI SOFTWARE in Ingegneria informatica LM-32 CABIBBO LUCA

Programme

Fundamentals: Software architecture concepts; Architectural descriptions; Software qualities; The architecture definition process.
Software qualities and designing for software qualities: performance; modifiability; availability; veriafiability; scalability; interoperability; monitoring.
Architectural patterns: Domain Model; Domain Object; Layers; Pipes & Filters; other POSA patterns; hexagonal architecture.
Architecture of distributed systems; client/server, peer-to-peer, remote invocation; broker; asynchronous communication; messaging; components; component-based architecture; container.
Service-based architecture; services; service-based-architecture; REST services; microservices; cloud native software.
DevOps and software delivery: environments and their management; cloud computing; virtual machines and system virtualization; containers and container-based virtualization; container orchestration; continuous delivery.
Middleware.

Core Documentation

Luca Cabibbo
Architettura del Software: Strutture e Qualità
Edizioni Efesto, 2021
ISBN: 9788833812458

Type of delivery of the course

Lectures. Exercises on middleware services.

Type of evaluation

The exam will take place orally. The middleware exercises can be verified by carrying out a small project, in small groups.