The Degree Programme provides for the theoretical and practical skills relating to the main fields of computing, as well as the skills needed in the job market.
It provides for a full overview of the founding principles of computing, by offering examples and experimenting methodological approaches. Moreover, students will learn about the environments and tools supporting the design and implementation of software, operating systems, IT systems, web infrastructures, IT systems based on embedded, IoT and wearable systems, computer networks and cloud architectures.
Moreover, the programme will include basic scientific knowledge in mathematics and physics, by helping students acquire new knowledge independently and let them always keep up-to-date in those fields.
The Degree Programme can lead to two main professional careers:
- Expert IT system programmer
- Technical manager of IT systems and networks.
In modern computing, these two roles often overlap, demanding a wide range of knowledge and common skills. This is because many systems are developed on virtual hardware (and so are implemented by software) and/or are entirely managed by software that is specifically customised by the technician.
Specific learning outcomes include the main techniques and methodologies of continuous development, implementation, monitoring, the continuous evolution of IT systems, knowledge of major hardware and software technologies and network systems. Particular attention is paid to the virtualisation of systems in cloud, systems for implementing web services, as well as applications for mobile devices and for embedded and IoT systems. Equal importance is also paid to issues related to algorithmic techniques, artificial intelligence, optimization, big data and data mining for tangible problems. Other learning outcomes include competencies on user experience and web analysis. Finally, specific outcomes will focus on technologies and methodologies that are used to configure and control network systems, as well as to implement the policies and mechanisms required for system safety and user privacy.
More specifically, the learning outcomes are:
- appropriate skills in a range of IT sectors for the implementation and management of IT systems and networks, regardless of the specific field of application;
- an appropriate command of the mathematical tools required to analyse, assess and implement systems;
- an appropriate command of the virtualisation tools required to implement and configure modern web-based cloud computing systems;
- an appropriate command of the tools used to assess and implement user interfaces;
- an appropriate command of web analysis tools;
- sufficient knowledge of artificial intelligence, big data and datamining techniques and the ability to use them for practical problem solving;
- an appropriate command of the tools needed to develop and implement applications on mobile and wearable devices and to implement services on embedded and IoT systems;
- the ability to autonomously apply cutting-edge topics to the field of study;
- the ability to develop and support ideas in working groups and in individual study;
- the ability to collect and interpret experimental data to assess the effectiveness and efficacy of small IT systems;
- the ability to use the English language effectively in both written and oral form, in addition to Italian, both in the specific field of study and in more general contexts.
Courses will take place in the first two years of the programme. Students will then practice through internships that will take place during the third year. Internships will allow students to acquire, verify and experimentally implement knowledge and skills that are mostly needed in the job market, including the relational skills that are generally useful in IT working groups. Laboratory activities in the second year and in the first half of the third year of the programme will play an important role as well. These aim to provide the most recent knowledge, methodologies and working tools in some specific fields, completing the core skills that can be immediately applied to working contexts.
The degree programme is organised around three main stages of learning, in order to allow graduates to develop these skills:
1. Basic knowledge in the fields of mathematics, physics, electronics and computing. Special attention will be paid to programming applications, technologies and methodologies on which modern IT systems are based. In the first year of the programme, course units in mathematics, physics and IT fields will take place. The Degree Programme first year also includes an English language (level B1) course unit.
2. Appropriate technological and methodological IT skills in specific fields. These skills will be mainly achieved in the second year of the programme, through IT course units investigating algorithmic subjects and continuous systems development, as well as laboratory activities that will play a very important role in the students' training. During laboratory activities, issues applied to specific fields and the interaction between humans and machines will be analysed, while providing learning on updated tools and methods. Laboratory activities will take place in the second (and partly in the third) year of the programme; contents will be updated and further investigated on a yearly basis. The aimfor the laboratory activities is indeed to provide for the most recent knowledge, methodologies and tools in specific fields, which can be applied to professional contexts.
3. Direct experience in the job market as well as knowledge and skills required to interact professionally in the business context, in some specific fields. Two company internships are performed in the third year, with a total of 1200 hours, equal to 48 credits. Internships will be an opportunity for students to verify, apply and operationally investigate the knowledge acquired in the first two years of the programme.
As part of the core learning activities, the above mentioned skills are acquired through the critical thinking about the texts that will be proposed for individual study, through classroom activities, exercises, laboratory work as well as individual and/or group projects.
In the first two years of the programme, the majority of the learning activities will focus on critical thinking about the texts that will be proposed for individual study, classroom activities and laboratory work.
Students will take part in individual or group projects, allowing them to acquire software design and development methods skills, knowledge about systems configuration, as well as relational skills needed for group working.