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:
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
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
|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.
The offer of subjects that make up the Master in Software Engineering EMSE -UPM is as follows:
The Master 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 software engineering project.
- Presentation of the project to a university panel.
- Defense of the project in English.
Optionally, the work can be carried out in the organization where the student completed the Software Project subject, taking as a starting point the work performed. In this case the student should request the authorization of the Master Thesis coordinator, and the approval of his thesis supervisor.
The student will be assigned a Thesis Supervisor who will guide them through the development of the thesis, help with the planning of the work, and supervise them through regular meetings. The supervisor will also guide the student in the preparation of the thesis document and the public defense. The Master’s Thesis Coordinator will establish the annual procedure for the selection of thesis supervisors by students in their third semester.
The completion of the TFM 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
The main tasks to be completed in each of these phases are briefly outlined below.
Phase 1: Choice of topic and supervisor
Regarding the choice of the Master Thesis topic, there is a space in the Virtual Classroom (Moodle) called Master Thesis, to which students enrolled in the Master thesis subject have granted access.
A compilation of Master Thesis topics proposal offered by the program professors, together to a description and previous advisable knowledge, is listed in this space in the middle of the third semester. When the student find any proposal of their interest, they shall get in contact to the professor proponent, and the professor will decide whether the proposal is assigned to the student. On the other hand, whenever a student has a particular topic interest not considered in the list proposed, it is always possible to contact any professor of the program interested in supervising this new proposal. In both cases, once agreed with the professor, the student shall send to the master administrative secretary the document of assignation of the Master Thesis, signed by the student and the professor, who will be, from that moment, the Master Thesis supervisor. If necessary, the Master Thesis may have an additional co-supervisor; in that case, this document shall be also signed by him/her.
The supervisor’s mission shall focus on putting students into contact with the right people, providing guidance on required information, giving advice on the project, appraising the progress of the research and its contents, coming up with ideas for consideration, revising documentation written by students, etc.
If the Master Thesis is performed in a different university, in a research center or as a continuation of the Software Project in a company, the student must always count, at least, on a supervisor from the UPM professors staff belonging to the master program.
Phase 2: Completion of Master Thesis
The completion of the Master Thesis is the culmination of the teaching/learning process, as it draws on different academic programme contents for the purpose of conducting a development project.
The Master Thesis shall involve the writing of a report by the Master’s degree candidate. The topic and approach to the work may be varied. It shall deal with a original work in the context of Software Engineering, with a clear structure and properly descriptive, justified and developed.
The Master Thesis supervisor shall guide the student to ensure the right nature and format of the work. Students shall have to demonstrate that they have developed skills to carry out a integral project or an applied research work, always in the field of Software Engineering.
Minor restrictions have been imposed regarding the structure and length of the Master Thesis, being the Master Thesis supervisor whom 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 Thesis template.
Phase 3: Defense of Master Thesis
Students shall be entitled to defend their Master Thesis at the date established at the Examination Timetable. For this purpose, the student shall submit to the Master Secretary, either in paper or by email, the document of application for the defense of the Master Thesis filled and signed.
This application shall be submitted, at least, 10 days before the date of defense of the Master Thesis. If the application is right and the student is enrolled in the Master Thesis subject, the Master Secretary will answer the student with an acceptation for the defense.
In addition, the Master Secretary or the Master Thesis coordinator will provide students two forms: one for autorizing the online publication of the Master Thesis report; and other for stating the confidentiality or not of this document. If the student authorizes the online publication of his/her report, he/she shall fill in and sign both forms. Otherwise, he/she shall fill in and sign just the confidentiality form.
The student shall then submit by email to the Master Secretary a pdf version of his/her Master Thesis report and the required forms signed, at least 7 working days before the date of defense of the Master Thesis. It is not necessary to submit or print any hard-copy of the Master Thesis.
Students shall defend their Master Thesis individually in a public oral hearing before a board appointed by the Master Thesis coordinator. The Board shall be composed of three EMSE Faculty Members: President, Secretary, and Vocal.
All the Master Thesis of the same session shall be defended in the same room and day, except when the number of Master Thesis to be defended is so high that it will be advisable to hold parallel defense sessions. Nobody else but the master candidate and the Board are expected to actively participate in the defense process.
The Board shall follow the following instructions, which rule the protocol for defending the Master Thesis:
- Once the candidate is ready, the Board President shall announce the beginning of the defense, reading the title of the work, the name of the author and its directors.
- The student shall deliver a 20 minutes oral presentation, mainly focused on showing the nature and results of the work to the Board.
- After the student presentation, the Board President shall give way to the Board questions round. Each Board member shall be able to raise any question, query, clarification or objection that they like, to which the student shall have to give proper and convincing responses.
- Next, the Board Secretary shall call the next candidate, if there would be any, following the same procedure like with the previous candidate.
- When the last Thesis defense is finished, the Board President shall consider finished the public session and shall inform that the evaluation results will be published in the next days.
- The Board Secretary shall collect the signatures of the Board members in the Document of Defense of the Master Thesis, together with the observations the Board shall consider opportune to transmit to the Academic Commission.
- The Board Secretary shall deliver to the Master Secretary all the Rubric-Based Assessment Documents for Master’s Final Thesis produced and the Document of defense of the Master Thesis of the session.
After receiving all the evaluations from the supervisors and Board members for each Master Thesis defended in the same examination session, the final grades shall be published. From this moment on, the same procedure as for any other subject shall be followed.
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.
As a result of the Software Project work, the student will produce a report about the tasks carried out and the results obtained that shall be publicly presented. In this way, general competences related to communication to a specialized audience, self-learning capability, autonomy, and capability to work independently in a professional environment will also be addressed.
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, the objectives reached. This report shall be considered by the Academic Supervisor in the preparation of their own evaluation report.
The EMSE Academic Committee shall prepare annually a list of available projects, and they shall assign and coordinate the Supervisors participating in the subject.