41573 - Software Engineering (Second Level Course)

Academic Year 2007/2008

  • Docente: Antonio Natali
  • Credits: 6
  • SSD: ING-INF/05
  • Language: Italian
  • Teaching Mode: Traditional lectures
  • Campus: Bologna
  • Corso: First cycle degree programme (L) in Legal and IT Operator (cod. 0354)

Learning outcomes

  • Methodologies and tools to make explicit the knowldegde usually implicit in spiral production processes, with particular attention to the phases of analysis, design and testing.
  • Understanding the impact of the technology on the design and the analysis phase, and the importance of building good models, with particualr reference to distributed systems.
  • Development of architetcture-based design processes, by intergrating model driven approces with XP methodology and by working both in individual way and in cooperative way

Course contents

  • Project documentation: definition of an intitial reference environment.
  • Working tools ( Ant, Junit, Maven, Eclipse)  in the context of spiral development processes.
  • The pre-code phases: the role of analysis and the concept of logic architetcture.
  • The role of interfaces in the analysis, design and testing.
  • Test planning as a contribution to the design phase.
  • Architecture driven design and architectural patterns.
  • The design space related to the technology: the case study of interaction.
  • From models to code: MDA vs. XP.
  • Design and building reusable code: from objects to software components.
  • Java as reference technology for single site application development.
  • Web services and SOA as reference technology for distributed applications,
  • Design and building of a case study application.

Readings/Bibliography

Teacher notes, including commented bibligraphic references,.
Please see http://www-natali.deis.unibo.it

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 and by making use of eLearning supports.

Assessment methods

The examination will performed in two-phases.
The first phase (48 hours long) starts when the text of a set of requirements
for a software system is published; it must produce a prototype of a software system satisfying the requirements,
toghether with a project site. This phase can be delevoped bot in individual way and in groups, each made up
at most three people. 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; it is made available also under an eLarnign system at  http://137.204.107.78/moodle/

Links to further information

http://www-natali.deis.unibo.it/

Office hours

See the website of Antonio Natali