AGILE DEVELOPMENT OF SMART SYSTEMS

AGILE DEVELOPMENT OF SMART SYSTEMS

_
iten
Code
98684
ACADEMIC YEAR
2018/2019
CREDITS
6 credits during the 2nd year of 10852 COMPUTER SCIENCE (LM-18) GENOVA
SCIENTIFIC DISCIPLINARY SECTOR
INF/01
TEACHING LOCATION
GENOVA (COMPUTER SCIENCE )
semester
1° Semester
Teaching materials

OVERVIEW

This course introduces the principles of agile development with a hands-on approach: students will be required to form a team and develop a project following the Scrum method.

Programming skills are a must to enroll. 

AIMS AND CONTENT

AIMS AND LEARNING OUTCOMES

The main goals of this course are:

  • integrating competences and knowledge about (object-oriented) programming, data base design, web development, and software engineering, acquired in previous undergraduate courses
  • learning/improving team working for software development
  • experimenting a full project development following an agile method
  • learning the relevance of user experience and how to test its quality

PREREQUISITES

To be successful in this course, students should have basic knowledge on

  • object-oriented programming
  • software engineering (terminology and main development tasks)
  • relational data bases and their design
  • web development and design of user interfaces

All topics should have been explored in practice before attending this course, by means of some (at least) small size projects.

Teaching methods

Most student effort shall be devoted to the project development, because participating into the application of a methodology to a project is the only way to really understand compliance to a method.

The participants (both teacher and students) will collaboratively choose the topic of the project. The meta-requirements are simply choosing a problem whose natural solution is a smart system.

Teachers will provide a short summary of the keypoints of the adopted technology, with pointers to useful resources.

Students are expected to learn the technology mostly on their own, having already familiarity with (it or) some analogous environment for object-oriented programming, database management and web development.

Presentations made by the students on the technology will help the sharing of knowledge and improve their presentation skills, and be part of the development process.

 

SYLLABUS/CONTENT

A specific agile method, and its application to the development of a toy application. This year we will adopt Scrum, because it is one of the most popular agile development methods.

Topics

  • Scrum, its main principles and practices, and other useful agile practices to design the agile process to be adopted for the project
  • User Experience: principle, practices, and patterns
  • Project, PROJECT, PROJECT!!!

RECOMMENDED READING/BIBLIOGRAPHY

The required documentation will be announced during classes. No book need to be bought in advance

TEACHERS AND EXAM BOARD

Ricevimento: On request by email

Ricevimento: By appointement at the DIBRIS Department, room 231, 2nd floor, Valle Puggia,Via Dodecaneso 25, Genova. E-mail: marina.ribaudo@unige.it Phone: 010 353 6631

Exam Board

MARINA RIBAUDO (President)

MAURA CERIOLI (President)

FILIPPO RICCA

GIOVANNI LAGORIO

LESSONS

Teaching methods

Most student effort shall be devoted to the project development, because participating into the application of a methodology to a project is the only way to really understand compliance to a method.

The participants (both teacher and students) will collaboratively choose the topic of the project. The meta-requirements are simply choosing a problem whose natural solution is a smart system.

Teachers will provide a short summary of the keypoints of the adopted technology, with pointers to useful resources.

Students are expected to learn the technology mostly on their own, having already familiarity with (it or) some analogous environment for object-oriented programming, database management and web development.

Presentations made by the students on the technology will help the sharing of knowledge and improve their presentation skills, and be part of the development process.

 

EXAMS

Exam description

A large part of the assessment will be based on the evaluation of the activities during the semester: participation into project development, team working, and technical contributions.

At the end of the course, a short oral examination will conclude the assessment.

Assessment methods

Observing students during the development will allow to evaluate both their technical skills and their capabilities of team working.

The final exam will evaluate students knowledge about the adopted process and used technologies, by a few strict to the point questions.