The objective of this course is to introduce students to different topics related to the domain of system software development. These topics are are the C ++ programming language, the existing services in the Linux / UNIX operating systems, and various development, monitoring and performance analysis tools for developing the systems software. The objective of the course is that the students learn how to develop efficient system software. In order to archive this goal, the student have to acquire several generic skills, knowledge, capacities and attitudes.
1. Generic Skills:
- Capacity for analysis and synthesis (PO a, c, e)
- Strong organisational and planning (PO c, d)
- Capacity for solving problems (PO c, g)
- Teamwork (PO d)
- Ability to apply theoretical concepts (PO a, c)
2. Specific Skills:
a. Cognitive (PO a, c, e)
- Ability to design software systems
- Ability to implement software systems
- Knowledge of I/O techniques
- Knowledge of concurrent programming
- Use of services offered by operating systems
b. Procedural / Instrumental (PO a, c, g, k)
- Solve problems of concurrency.
- Develop low-level system software.
c. Attitudinal (PO: c, e)
- Creativity
- Critical view of software system development
- Proactivity
- Interest in acquiring new knowledge and information
3.- General and Transversal Competences
- To use in an efficient way electronic tools for writing technical report, project memos and reports about computer science, including high quality presentations (CG9)
- Basic knowledge about the usage and the programming of computers, operating systems, data bases, and computer applications with engineering applications (CGB4)
4.- Computer Science's related competences
- Knowledge of characteristics, functionality and structure of operating systems, and to design and implement software based on its services (CECRI10)
5.- Computer Engineering related competences
- Knowledge to design and implement system software and communication software (CEIC4)