- Docente: Antonio Natali
- Credits: 8
- SSD: ING-INF/05
- Language: Italian
- Teaching Mode: Traditional lectures
- Campus: Bologna
- Corso: Second cycle degree programme (LM) in Computer Engineering (cod. 0937)
Learning outcomes
Models, languages and technologies for model driven and agile software development,
from analysis to deployment, with particular reference to distributed, heterogeneous
systems including low-level devices such as Arduino/RaspberryPi
Course contents
Definition of a reference environment for
coopèerative working in software development.
Working tools (Eclipse) in the context of spiral software development
processes.
The role of analysis and the concept of logic architetcture.
The role of components and interfaces in the analysis, design and testing.
Test planning as a contribution to the design phase.
Architecture driven design: from logical architectures to software design and development.
Platform (in)dependent design: Android,Arduino/RaspberryPi as a a case study.
From models to code: possible integration between Model Driven Design and agile (SCRUM) software development.
Design and building of custom (domain specific) lanaguges/metamodels using the Xtext technology with particular reference to costructs for distribution, event-driven programming and reactive actions.
Design and building of a case study application
in the domain of Internet of Things by using self.made differential drive robots.
Readings/Bibliography
Teacher notes, including commented
bibligraphic references,. Please see https://137.204.107.21
Teaching methods
The course is based on a strong interaction between theory and lab
practice. The applicative part is arranged by simulating (as far as
possible) an industrial environment, by stressing cooperative
working issues.
Assessment methods
The examination will performed in two-phases.
The first phase starts by publishing a set of
requirements
and ends with the production of a prototype
of a software system satisfying the requirements,
toghether with a project site. This phase can be delevoped
both in individual
way or in a team. The second phase consists of a individual
discussion of the work.
Teaching tools
The learning material is presented by using slides and teacher's
notes published on the teacher's site at
https://137.204.107.21
Links to further information
Office hours
See the website of Antonio Natali