CODE 80311 ACADEMIC YEAR 2020/2021 CREDITS 6 cfu anno 3 INFORMATICA 8759 (L-31) - GENOVA SCIENTIFIC DISCIPLINARY SECTOR INF/01 LANGUAGE Italian TEACHING LOCATION GENOVA SEMESTER 1° Semester TEACHING MATERIALS AULAWEB OVERVIEW The purpose of the course is to improve students' programming skills and to let them familiarize themselves with technologies and methodologies widespread in the industrial world; In particular, with the platform concept, exemplified on the .NET framework, with some productivity tools, such as Visual Studio, and component development. To successfully attend this course, students must be able to program in an object-oriented language and have basic knowledge of databases. AIMS AND CONTENT LEARNING OUTCOMES Conceptual design and programming concepts based on components. Technologies and productivity tools in use in the professional field. Integration of design and programming skills acquired during programming courses, data bases and software engineering. PREREQUISITES Imperative and object-oriented programming concepts (data structures, loops, inheritance, exceptions, typing systems...) Fundamentals and design of Data Bases (tables, queries, constraints...) Software life-cycle (design, implementation, testing...) TEACHING METHODS Teaching is composed partly of frontal lessons and partly of guided laboratory activities, where the techniques and principles introduced during frontal lessons are applied. During the guided laboratories, the issues to be solved in the final project will be addressed in isolation. Active participation is therefore to be considered as a precondition for a successful project activity with limited effort. SYLLABUS/CONTENT TAP introduces the mainstream technologies, methodologies and tools for software development. As a "side effect", students will improve their programming skills. The course develops two main topics: 1. In-the-small programming. Students will have to prove their capabilities on reading, understanding and implementing a detailed specification performing unit testing tasks, and using the results to correct any error in their code designing and using a small database A reasonable familiarity with these activities is a prerequisite of the course. TAP will address the integration of these aspects. 2. Component development, modular programming principles and reuse; Students will need to learn: economic and historical reasons for re-use concepts at the base of components and component models framework / platform concepts the impact of the use of reusable components on the development of a system peculiarities of the process of developing a reusable component The concepts outlined will be made more concrete through project activities that will take place from the beginning of the lesson period and will also allow students to become familiar with various development and testing tools in the .NET environment. This teaching is provided for the curriculum: TECHNOLOGY-ORIENTED RECOMMENDED READING/BIBLIOGRAPHY Reference texts and instrumentation / technology documentation will be made known/available on Aulaweb and in the course slides. TEACHERS AND EXAM BOARD MAURA CERIOLI Ricevimento: On request by email Exam Board MAURA CERIOLI (President) DAVIDE ANCONA GIOVANNI LAGORIO (President Substitute) MAURIZIO LEOTTA (Substitute) LESSONS Class schedule The timetable for this course is available here: Portale EasyAcademy EXAMS EXAM DESCRIPTION Project, written and oral examinations, project discussion. ASSESSMENT METHODS The project supports evaluation of programming competences for development based on a productivity environment. The written examination supports evaluation of programming competences for development of small code fragments without any envirnment to support implementation. The oral examination supports evaluation of concepts funding the adopted technologies. The project discussion supports the assessment of project authorship and allows students to argue their viewpoint on controversial implementation choices. Exam schedule Data appello Orario Luogo Degree type Note 11/01/2021 14:30 GENOVA Scritto 16/02/2021 14:30 GENOVA Scritto 10/06/2021 14:30 GENOVA Scritto 07/07/2021 14:30 GENOVA Scritto 09/09/2021 14:30 GENOVA Scritto