Title
Structure of the curriculum
The European Master in Software Engineering is a two-years master’s course with a workload of 120 ECTS credits distributed across 4 semesters.
According to UPM enrollment policy, students shall have to make annual enrollment and to enroll annually for at least 12 European Credit Transfer System (ECTS) credits or what they lack to complete studies. However, it is recommended to enroll for between 27 and 33 ECTS per semester (1 ECTS credit is equivalent to a student workload of 27 hours). Therefore, the typical duration of the programme is 2 years. Students will be considered to study on a part-time basis when the credits enrolled in the course do not exceed 30 ECTS annually.
Students shall not be allowed to continue studies in the EMSE if they not fulfill the UPM’s permanency regulation
The need for any curriculum adaptations, or alternative tracks or courses of study, for students with disability-related special educational needs shall be assessed in conformance with the provisions of R.D. 1393/2007.
The European Master in Software Engineering has 120 ECTS organized in 4 semesters. The studies are structured in modules, which in turn are divided into subjects:
This table informs about the modules and the subjects within each module of the masterModules | Subjects | Obligatory Credits by Module |
---|
Software Development | | 14 |
Project Management and Organizational Processes | | 8 |
Support Processes | | 14 |
Advanced Software Engineering Aspects | | 40 |
Software Project | | 14 |
Master Thesis | | 30 |
In this master’s programme it was considered that the best way to ensure an updated educational offer, able to react quickly in response to any technological, professional, or academic change that might happen, was to include an open block of elective subjects and seminars, annually revised and updated, considering also the previous student demand. This elective offer will be annually composed, and approved by the master’s Academic Committee.
Distribution of subjects in semesters
Title
Competencies
Specific competences of the degree
- SC1. Be able to write a project plan that allows coordinating and prioritizing resources and activities in order to obtain the expected project results within specified time, cost and quality constraints.
- SC2. Be able to monitor a software project and take corrective actions if necessary.
- SC3. Be able to make an estimation of the software project parameters.
- SC4. Be able to apply software development models considering the software project features.
- SC5. Be able to extract, analyze and specify the needs of clients, users and other stakeholders, considering all the possible aspects affecting the system to be developed.
- SC6. Be able to design module tests and help in the design of integration and installation tests. Perform system integration, integration testing and installation.
- SC7. Be able to create verification and validation plan that allows coordinating and prioritizing resources and activities in order to assure the required quality level.
- SC8. Be able to apply the most appropriate verification and validation techniques for a given software project, as specified in a verification and validation plan.
- SC9. Be able to define, evaluate and improve an organization’s software processes.
- SC10. Be able to objectively evaluate processes and products against applicable standards and norms.
- SC11. Be able to create identify, control, report and audit a system configuration and its changes.
- SC12. Be able to establish and implement the design of software systems, considering the relevant quality attributes.
- SC13. Have a vision of the different specific and emerging aspects in the Software Engineering discipline, and deepen into some of them.
- SC14. Understand what Software Engineering practices can and cannot achieve, and their limitations and possible future evolution.
- GPC20. Have the required skills to make connections among the desires and needs of customers and clients and what the technology can offer.
- GPC21. Have the capability to choose between acquiring, developing or applying technologies along a wide range of process, product and service categories within a company or institution.
- GPC22. Have the capability to understand the market, its habits and needs of technological products or services.
- GPC23. Have the capability to develop and deploy a computing solution within an business environment.
Correspondence between modules and competences of the degree
Competences | Modules |
---|
Software Development | Project Management and Organizational Processes | Support Processes | Advanced Software Engineering Aspects | Practicum | Master Thesis |
SC1 | Be able to write a project plan that allows coordinating and prioritizing resources and activities in order to obtain the expected project results within specified time, cost and quality constraints. | | X | X | | | * |
SC2 | Be able to monitor a software project and take corrective actions if necessary. | | X | | | | * |
SC3 | Be able to make an estimation of the software project parameters. | | X | | | | * |
SC4 | Be able to apply software development models considering the software project features. | | X | | | | * |
SC5 | Be able to extract, analyze and specify the needs of clients, users and other stakeholders, considering all the possible aspects affecting the system to be developed. | X | | | | | * |
SC6 | Be able to design module tests and help in the design of integration and installation tests. Perform system integration, integration testing and installation. | | | X | | | * |
SC7 | Be able to create verification and validation plan that allows coordinating and prioritizing resources and activities in order to assure the required quality level. | | | X | | | * |
SC8 | Be able to apply the most appropriate verification and validation techniques for a given software project, as specified in a verification and validation plan. | | | X | | | * |
SC9 | Be able to define, evaluate and improve an organization’s software processes. | | X | | | | * |
SC10 | Be able to objectively evaluate processes and products against applicable standards and norms. | | X | X | | | * |
SC11 | Be able to create identify, control, report and audit a system configuration and its changes. | | | X | | | * |
SC12 | Be able to establish and implement the design of software systems, considering the relevant quality attributes. | X | | | | | * |
SC13 | Have a vision of the different specific and emerging aspects in the Software Engineering discipline, and deepen into some of them. | | | | | X | * |
SC14 | Understand what Software Engineering practices can and cannot achieve, and their limitations and possible future evolution. | | | | | X | * |
GPC20 | Have the required skills to make connections among the desires and needs of customers and clients and what the technology can offer. | | | | | X | |
GPC21 | Have the capability to choose between acquiring, developing or applying technologies along a wide range of process, product and service categories within a company or institution. | | | | | X | |
GPC22 | Have the capability to understand the market, its habits and needs of technological products or services. | | | | | X | |
GPC23 | Have the capability to develop and deploy a computing solution within an business environment. | | | | | X | |
* The end of master’s work will address the competences of the subject or subjects in the focus (s) of the work.
General competences of the degree
- CG1. That students know how to apply the knowledge acquired and their ability to solve problems in new or unfamiliar environments within broader (or multidisciplinary) contexts related to their area of study.
- CG2. That students are able to integrate knowledge and face the complexity of formulating judgments based on information that, being incomplete or limited, includes reflections on social and ethical responsibilities linked to the application of their knowledge and judgments.
- CG3. That the students know how to communicate their conclusions and the knowledge and ultimate reasons that sustain them to specialized and non-specialized audiences in a clear and unambiguous way.
- CG4. That students have the learning skills that allow them to continue studying in a way that will be largely self-directed or autonomous.
- CG5. Organization and planning
- CG6. Information management.
- CG7. Specification and performance of complex, unclear or unfamiliar computer tasks.
- CG8. Approach and resolution of problems also in new and emerging areas of your discipline.
- CG9 Application of the most recent or innovative problem solving methods that may involve the use of other disciplines.
- CG10. Creative thinking ability with the aim of developing new and original approaches and methods.
- CG11. Integration of knowledge from different disciplines, as well as complexity management.
- CG12. Comprehensive understanding of the techniques and methods applicable in a specific specialization, as well as its limits.
- CG13. Appreciation of the limits of current knowledge and the practical application of the latest technology.
- CG14. Knowledge and understanding of the necessary information technology for the creation of information models, and complex systems and processes.
- CG15. Ability to contribute to the future development of information technology.
- CG16. Ability to work independently in their professional field.
- CG17. Management skills and ability to lead a team that can be composed of different disciplines and levels.
- CG18. Ability to work and communicate also in international contexts.
- CG19. Systematic approach to risk management.
- GPC20. Ability to make connections between the wishes and needs of the consumer or client and what technology can offer.
- GPC21. Ability to decide between acquiring, developing or applying technology throughout the wide range of categories of processes, products and services of a company or institution.
- GPC22. Ability to understand the market, its habits and needs of technological products or services.
Title
Subjects
The offer of subjects that make up the Master in Software Engineering EMSE -UPM is as follows:
Title
Master’s Thesis
The Master’s Thesis is a 30 ECTS individual project that synthesizes the skills acquired in the Software Engineering program. It consists of the following:
- Individual execution of a development project or applied research work in Software Engineering.
- Prepare a dissertation.
- Presentation and defense in English before an examination Board composed of EMSE Faculty.
Students will be assigned a Master’s Thesis supervisor to help plan and oversee the work through regular meetings. Supervisors will also help students prepare the thesis document and the public defense.
The Master’s Thesis can be carried out:
- In a university different than UPM.
- In a research center.
- In the organization where students completed the Software Project subject, taking the work performed as a starting point.
In these cases, the student must have at least one UPM professor participating in the Master as supervisor. In the latter case, students should also request the authorization of the Master’s Thesis coordinator.
The Master’s Thesis work is composed of three phases:
- 1st Phase: Selection of theme and director
- 2nd Phase: Completion of the Master’s Thesis
- 3rd Phase: Defense of the Master’s Thesis
Phase 1: Choice of topic and supervisor
There is a space in the Virtual Classroom (Moodle) called “Master’s Thesis,” to which students enrolled in the Master’s Thesis subject have access.
A compilation of Master’s Thesis proposals offered by the EMSE Faculty, together with a description and previous advisable knowledge, is listed in this space during October.
When students find a proposal of interest, they shall contact the proponent professor, and the professor will decide whom of the interested students the proposal will be assigned to. Alternatively, when students have a particular topic of interest not considered in the list of proposals, they are encouraged to contact any Master’s professor interested in supervising such a proposal.
In both cases, once agreed upon with a professor, the student shall send the Master’s administrative secretary the document of assignation of the Master’s Thesis, signed by the student and the professor, who will be, from that moment, the Master’s Thesis supervisor.
The Master’s Thesis can have a co-supervisor; in that case, the co-supervisor shall also sign this document.
The supervisor’s mission shall focus on putting students into contact with the appropriate third parties, providing guidance on the background information, advising the execution, appraising the work progress, coming up with ideas for consideration, revising documentation written by students, etc.
Phase 2: Completion of Master Thesis
The Master’s Thesis involves the Master’s degree candidate writing a dissertation. The topic and approach may be diverse. It shall deal with original work in Software Engineering with a clear structure and properly conducted, described, and justified.
The supervisor shall guide the student to ensure the proper nature and format of the work. Students must demonstrate that they have developed skills to carry out a development project or an applied research work, always in Software Engineering.
Minor restrictions have been imposed regarding the structure and length of the Master’s Thesis. The supervisor shall establish them depending on the nature and contents of the work. Nevertheless, it is important to respect the format specified in the following Master’s Thesis template.
Phase 3: Defense of Master Thesis
Students are entitled to defend their Master’s Thesis at the date indicated in the Examination Timetable. For this purpose, the student shall submit to the administrative secretary, either on paper or by email, the document of application for the defense of the Master’s Thesis filled out and signed. This application shall be submitted at least 20 days before the defense date. If the application is correct and the student is enrolled in the Master’s Thesis subject, the administrative secretary will communicate to the student that his/her defense application has been accepted.
Additionally, the administrative secretary or the Master’s Thesis coordinator will provide the student with two forms: one for authorizing the online publication of the Master’s Thesis report and the other for stating the confidentiality or not of this document. If students authorize the online publication of their reports, they shall fill out and sign both forms. Otherwise, they shall fill out and sign the confidentiality form only.
Students shall then email the administrative secretary a PDF version of their dissertations and the required forms correctly filled out and signed at least 7 working days before the date of the Master’s Thesis defense. It is not necessary to submit or print any hard copy of the Master’s Thesis.
Students shall defend their Master’s Thesis individually in a public oral hearing before a board appointed by the Master’s Thesis coordinator. The Board shall be composed of three EMSE Faculty Members.
All Master Theses will be defended in a single session, except when the number of Master’s Theses to be defended is so high that it would be advisable to hold parallel defense sessions. Nobody else but the master candidate and the Board are expected to participate actively in the defense process.
The Board shall follow the following instructions, which rule the protocol for defending the Master’s Thesis:
- Once the candidate is ready, the Chairman will announce the beginning of the defense, reading the title of the work and the name of the author and supervisor(s).
- The student shall deliver a 20-minute oral presentation to the Board, focused on showing the nature and results of the work.
- After the student presentation, the Chairman will give way to the Board questions round. Board members can raise any question, query, clarification, or objection they like, to which students shall have to give proper and convincing responses.
After receiving all the evaluations from the supervisors and Board members for each Master’s Thesis, the final grades will be published.
Title
Software Project (Internships)
The main goal of the Software Project is to guide the student in the application of previously acquired knowledge in a work environment that resembles the conditions that are typically found in the software development industry workplace.
The project can be proposed by a professor or company. In the latter case, a Cooperation Agreement should be previously signed by the UPM and the company, as regulated by law (Real Decreto 1497/1981), and an External Supervisor should be assigned within the company.
Each student will be assigned a project and an Academic Supervisor. The Academic Supervisor will issue an initial report about the adequacy of the proposed work, and a final report assessing the reached objectives. By periodic meetings, the Academic Supervisor will make sure that the work adheres to the agreed conditions.
In the Software Project the student will deepen into the application of the acquired knowledge and skills in a realistic environment, making connections among the desires and needs of customers and clients and what the technology can offer, choosing between acquiring, developing or applying the necessary software components, demonstrating his/her understanding of the market, and his/her capability to develop and deploy a software solution in a real environment. Additionally, general competences related to self-learning capability, autonomy, and capability to work independently in a professional environment will also be addressed.
As a result of the Software Project work, the student will produce a report about the tasks carried out and the results obtained. When the project is performed during an internship at a company, the External Supervisor shall issue a technical report about the tasks assigned to the student, the work environment and work conditions, and they shall also issue a final report on the company’s satisfaction with the work conducted by the student and the objectives reached. This report shall be considered by the Academic Supervisor in the preparation of their own evaluation report.