CODE 101807 ACADEMIC YEAR 2024/2025 CREDITS 9 cfu anno 1 COMPUTER SCIENCE 10852 (LM-18) - GENOVA SCIENTIFIC DISCIPLINARY SECTOR INF/01 LANGUAGE English TEACHING LOCATION GENOVA SEMESTER 1° Semester TEACHING MATERIALS AULAWEB OVERVIEW In the recent years, several techniques have emerged for the design of software, and the assessment of its quality. The course aims to give an overview of the main design and modeling techniques available nowadays, and learn how to select the most appropriate for a specific project. Students will be encouraged to complement the presented material with deepening of their own, in the spirit of lifelong learning. AIMS AND CONTENT LEARNING OUTCOMES Learning through practical experience the basic conceptual tools for the design and modelling of software systems, and acquiring communication skills and lifelong learning capabilities. AIMS AND LEARNING OUTCOMES At the end of the course, students will be able to: * USE the visual modelling based on UML to support the software development; * USE design and architectural patterns in the development of software systems; * DESIGN the architecture of a software system; * PRESENT a technical topic to a group of peers. PREREQUISITES Fundamentals concepts of programming (in particular object-oriented), databases, web applications, and software engineering. TEACHING METHODS The main concepts will be presented by lessons. Hands-on activities will help the students to gain an insight on the applicative concerns. Self-study of a program topic and its presentation will help students learn how to learn. SYLLABUS/CONTENT • Recap of modelling • Recap of requirements & their specification - Functional & non-functional requirements - Use case requirements specification (UML) - Goal-oriented requirements specification • Software architecture • Software architecture design • Design concepts • Attribute-Driven Design (AAD) method illustrated on a case study • Other design methods RECOMMENDED READING/BIBLIOGRAPHY Designing Software Architectures: A Practical Approach. Humberto Cervantes and Rick Kazman. Addison-Wesley. 2016. TEACHERS AND EXAM BOARD GIANNA REGGIO Ricevimento: Appointment to require by email MAURA CERIOLI Ricevimento: On request by email Exam Board MAURA CERIOLI (President) FILIPPO RICCA GIANNA REGGIO (President Substitute) MAURIZIO LEOTTA (Substitute) LESSONS LESSONS START In agreement with the calendar approved by the Degree Program Board of Computer Science. Class schedule The timetable for this course is available here: Portale EasyAcademy EXAMS EXAM DESCRIPTION The exam will consist of three parts: the development of the design of a software system an oral presentation of a recent technical innovation related to the software development an oral examination and project discussion ASSESSMENT METHODS The quality of the software system design delivered at the end of the project will allow the teachers to evaluate the student understanding of the design method and their knowledge of the conceptual tools involved. The oral presentation of innovative technologies will allow the teachers to assess the students' communication skills and their capabilities of self-learning, together with the depth of their technological understanding. The final oral will start with the project discussion to understand the individual contributions to the project and generate related technical questions to better evaluate students' knowledge. Exam schedule Data appello Orario Luogo Degree type Note 29/01/2025 09:00 GENOVA Esame su appuntamento 30/06/2025 09:00 GENOVA Esame su appuntamento 01/09/2025 09:00 GENOVA Esame su appuntamento OpenBadge PRO3 - Soft skills - Imparare a imparare avanzato 1 - A