Students are required to have already passed Programming Fundamentals I and II, as well as Software Engineering I and Databases to have a minimum guarantee of passing this course. Those students who have not already passed these courses and are interesting in getting enrolled in Software Engineering II, should make a major effort to acquire the necessary knowledge and experience of software design and databases.
This subject pretends to offer a big picture of the Software Engineering processes and their relations to create work teams that develop information systems industrializing such processes, highlighting that this development is always cooperative and multidisciplinary.
For this aim, the subject introduces the concept of Software Lifecycle and describes a map of the processes necessary to develop software with a work team, explaining its enactment when different software development methodologies are used.
In addition, some important development-supporting processes such as configuration management, quality management, test management and maintenance management will be also explained. All these processes will be grounded in open ISO standards, which will provide the student with a larger global vision, and probably, they will open some doors to interesting positions in any organization.
As result, it is expected that the student will be able to achieve the abilities and knowledge necessary to work as Software Engineer.
Moreover, it is important to highlight that this subject belong to the module of Software Engineering, Information Systems and Intelligent Systems of the curriculum and provides the basis for the subjects of the specialty of Software Engineering:
Course competences | |
---|---|
Code | Description |
BA04 | Basic knowledge about the uses and programming of computers, operating systems, data bases, and digital programmes with applications in engineering. |
CO01 | Ability to design, develop, select, and assess, applications and digital systems, guaranteeing their reliability, security, and quality, according to ethical principles and the current and common laws. |
CO02 | Ability to conceive, plan, develop and manage projects, services, and digital systems in any context, leading their start and applying continuous improvements, assessing their economic and social impact. |
CO03 | Ability to understand the important of negotiation, work efficiency, leadership, and communication abilities in every context of software development. |
CO05 | Knowledge, administration, and maintenance of systems, services and digital systems. |
CO08 | Ability to analyse, design, build and maintain applications in a strong, safe, and efficient manner by selecting the most appropriate paradigms and programming languages. |
CO12 | Knowledge and application of the features, functions, and structure of data bases so as to lead to an appropriate use, and the design, analysis, and implementation of application based on them. |
CO13 | Knowledge and application of the required tools for the storage, process, and access to informational systems, even web based ones. |
CO16 | Knowledge and application of principles, methodologies, and life spans of software engineering. |
Course learning outcomes | |
---|---|
Description | |
Knowledge and use of the technologies that support the construction and use of information systems. | |
Knowledge and application of different types of software life cycle models. | |
Knowledge of the principles of software engineering and the main methodologies for the construction of quality software. | |
Building design models, both high leveled and detailed, for the construction of software systems that implement them. | |
Implementation and maintenance of applications according to the analysis and design activities previously carried out. | |
Additional outcomes | |
Description | |
To achieve professional preparation for the insertion of computer scientists in teams oriented to the development and operation of computer applications Understand the need for software version control and change requests as a self-protection mechanism in the software development process and apply these principles correctly. Select and apply the appropriate testing techniques according to the characteristics of the product and the development process. Plan and properly document the testing process according to the specific needs of the project. Have a general vision of the quality in software development as part of the success of the project. Have a general vision and knowledge of the international standards related to the quality of a software product. Have a general vision and knowledge of international standards related to the maturity of software processes. Know and apply appropriately the existing techniques for software maintenance. |
Description of the Lab Sessions:
- P1. Use of the Unified Development Process to a given software development project, software configuration management, testing and maintenance
Training Activity | Methodology | Related Competences (only degrees before RD 822/2021) | ECTS | Hours | As | Com | Description | |
Class Attendance (theory) [ON-SITE] | Lectures | CO01 CO02 CO03 CO05 CO08 CO16 | 0.72 | 18 | N | N | Teaching of the subject matter by lecturer (MAG) | |
Individual tutoring sessions [ON-SITE] | CO01 CO02 CO03 CO05 CO08 | 0.18 | 4.5 | N | N | Individual or small group tutoring in lecturer's office, classroom or laboratory (TUT) | ||
Problem solving and/or case studies [ON-SITE] | Problem solving and exercises | CO01 CO02 CO05 CO08 CO16 | 0.6 | 15 | Y | N | Worked example problems and cases resolution by the lecturer and the students (PRO) | |
Study and Exam Preparation [OFF-SITE] | Self-study | CO01 CO02 CO03 CO05 CO08 CO16 | 2.1 | 52.5 | N | N | Self-study (EST) | |
Other off-site activity [OFF-SITE] | Practical or hands-on activities | CO01 CO02 CO03 CO05 CO08 CO16 PER01 SIS04 | 0.6 | 15 | N | N | Lab practical preparation (PLAB) | |
Writing of reports or projects [OFF-SITE] | Self-study | CO01 CO02 CO05 CO08 PER01 | 0.9 | 22.5 | Y | N | Preparation of essays on topics proposed by lecturer (RES) | |
Laboratory practice or sessions [ON-SITE] | Practical or hands-on activities | CO01 CO02 CO03 CO05 CO08 CO16 PER01 | 0.6 | 15 | Y | Y | Realization of practicals in laboratory /computing room (LAB) | |
Final test [ON-SITE] | Assessment tests | CO02 CO03 CO08 CO16 | 0.3 | 7.5 | Y | Y | Final test of the complete syllabus of the subject (EVA) | |
Total: | 6 | 150 | ||||||
Total credits of in-class work: 2.4 | Total class time hours: 60 | |||||||
Total credits of out of class work: 3.6 | Total hours of out of class work: 90 |
As: Assessable training activity Com: Training activity of compulsory overcoming (It will be essential to overcome both continuous and non-continuous assessment).
Evaluation System | Continuous assessment | Non-continuous evaluation * | Description |
Theoretical papers assessment | 15.00% | 15.00% | Non-compulsory activity that can be retaken. To be carried out before end of teaching period |
Laboratory sessions | 25.00% | 25.00% | Compulsory activity that can be retaken. To be carried out during lab sessions. The students of non-continuous modality will be evaluated of this activity through an alternative system in the ordinary call |
Assessment of active participation | 10.00% | 0.00% | Non-compulsory activity that can be retaken (rescheduling). To be carried out in the theory/laboratory sessions for the students of the continuous modality. The students of non-continuous modality will be evaluated of this activity through an alternative system in the ordinary call |
Test | 25.00% | 25.00% | |
Test | 25.00% | 25.00% | |
Total: | 100.00% | 90.00% |
Not related to the syllabus/contents | |
---|---|
Hours | hours |
Unit 1 (de 6): Methodologies and Software Development Processes | |
---|---|
Activities | Hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 3 |
Individual tutoring sessions [PRESENCIAL][] | 5 |
Individual tutoring sessions [PRESENCIAL][] | .9 |
Study and Exam Preparation [AUTÓNOMA][Self-study] | 8.8 |
Other off-site activity [AUTÓNOMA][Practical or hands-on activities] | 2 |
Other off-site activity [AUTÓNOMA][Practical or hands-on activities] | 7.5 |
Final test [PRESENCIAL][Assessment tests] | 1.5 |
Unit 2 (de 6): Software Configuration Management | |
---|---|
Activities | Hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 3 |
Individual tutoring sessions [PRESENCIAL][] | 2.5 |
Individual tutoring sessions [PRESENCIAL][] | .9 |
Study and Exam Preparation [AUTÓNOMA][Self-study] | 8.8 |
Other off-site activity [AUTÓNOMA][Practical or hands-on activities] | 5 |
Other off-site activity [AUTÓNOMA][Practical or hands-on activities] | 2.5 |
Final test [PRESENCIAL][Assessment tests] | 1.5 |
Unit 3 (de 6): Quality of Software Products | |
---|---|
Activities | Hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 2 |
Individual tutoring sessions [PRESENCIAL][] | .9 |
Study and Exam Preparation [AUTÓNOMA][Self-study] | 5.8 |
Other off-site activity [AUTÓNOMA][Practical or hands-on activities] | 2.5 |
Final test [PRESENCIAL][Assessment tests] | 1.5 |
Unit 4 (de 6): Verification and Validation of the Software | |
---|---|
Activities | Hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 6 |
Individual tutoring sessions [PRESENCIAL][] | 4 |
Individual tutoring sessions [PRESENCIAL][] | .9 |
Study and Exam Preparation [AUTÓNOMA][Self-study] | 17.5 |
Other off-site activity [AUTÓNOMA][Practical or hands-on activities] | 5 |
Other off-site activity [AUTÓNOMA][Practical or hands-on activities] | 7.5 |
Final test [PRESENCIAL][Assessment tests] | 1.5 |
Unit 5 (de 6): Software Maintenance | |
---|---|
Activities | Hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 4 |
Individual tutoring sessions [PRESENCIAL][] | 3.5 |
Individual tutoring sessions [PRESENCIAL][] | .9 |
Study and Exam Preparation [AUTÓNOMA][Self-study] | 11.6 |
Other off-site activity [AUTÓNOMA][Practical or hands-on activities] | 3 |
Other off-site activity [AUTÓNOMA][Practical or hands-on activities] | 2.5 |
Final test [PRESENCIAL][Assessment tests] | 1.5 |
Unit 6 (de 6): Lab sessions | |
---|---|
Activities | Hours |
Laboratory practice or sessions [PRESENCIAL][Practical or hands-on activities] | 15 |
Global activity | |
---|---|
Activities | hours |
General comments about the planning: | The subject is taught in 3 x 1,5 hour sessions per week. |
Author(s) | Title | Book/Journal | Citv | Publishing house | ISBN | Year | Description | Link | Catálogo biblioteca |
---|---|---|---|---|---|---|---|---|---|
Arlow, Jim | UML 2 and the unified process : practical object-oriented an | Libro | Addison-Wesley | 978-0-321-32127-5 | 2005 | Libro de referencia del tema 1 para entender cómo utilizar el lenguaje UML para crear los distintos artefactos generados durante la ejecución de un proyecto siguiendo el Proceso Unificado de Desarrollo | |||
Bourque, P., Fairley, R.E. | Guide to the Software Engineering Body of Knowledge (SWEBOOK v3.0) | IEEE Computer Society | 0-7695-5166-1 | 2014 | Cuerpo de conocimiento de los procesos software descritos en la asignatura | https://www.computer.org/education/bodies-of-knowledge/software-engineering | |||
PIATTINI, MARIO, CALVO-MANZANO, JOSÉ A.,CERVERA, JOAQUÍN, FERNANDEZ, | ANALISIS Y DISEÑO DE APLICACIONES INFORMATICAS DE GESTION | Libro | RA-MA | 78-84-7897-587-7 | 2003 | Libro de Referencia sobre conceptos básicos relacionados con los distintos procesos software | http://www.ra-ma.es/libros/ANALISIS-Y-DISENO-DE-APLICACIONES-INFORMATICAS-DE-GESTION-CFGS-INCLUYE-CD-ROM/115/978-84-7897-587-7 | ||
RICARDO PÉREZ DEL CASTILLO, FRANCISCO / RUÍZ GONZÁLEZ, IGNACIO / RODRÍGUEZ, MACARIO POLO / PIATTINI VELTHUIS, MARIO G | MANTENIMIENTO Y EVOLUCIÓN DE SISTEMAS DE INFORMACIÓN | Libro | Madrid | RA-MA | 978-84-9964-759-3 | 2018 | Libro de referencia para el tema de Mantenimiento | http://www.ra-ma.es/libros/MANTENIMIENTO-Y-EVOLUCION-DE-SISTEMAS-DE-INFORMACION/99623/978-84-9964-759-3 | |
Robert C. Martin | Clean Code: A Handbook of Agile Software Craftsmanship | Libro | Pearson | 9780132350884 | 2008 | Libro de referencia para el mantenimiento software |