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, with a workload of 30 ECTS, will consist on the individual execution, presentation and defense before a university panel, of an integral Software Engineering project, in which the competencies acquired are synthesized.
A Master Thesis shall be written summarizing the main goals and results of the work carried out. It shall have to be written and publicly defended 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’s Committee, with the approval of his thesis supervisor.
The student will count on a Thesis Supervisor that will guide the student along the Master Thesis development, help with the work planning and supervise through periodic meetings. Additionally, they will guide the student in the elaboration of the thesis document and in the preparation of the public defense. The Master’s Academic Committee will establish annually the procedure for the selection of Master Thesis supervisors by the students enrolled 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 of third and forth semester 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. 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.
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, and this professor shall include it in the topics compilation in the Virtual Classroom and assign it to the student. 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 director. If necessary, the Master Thesis may have an additional co-director; in that case, this document shall be also signed by him/her. Master Thesis shall be supervised by a professor (UPM academic staff), from Master’s programme, with the possibility of co-supervision by an expert in the Software Engineering field.
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 shall always count, at least, with a director 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 consist of a written dissertation completed 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 director 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 format and length of the Master Thesis, being the Master Thesis director whom shall establish them depending on the nature and contents of the work. Nevertheless, it is important to respect the following considerations:
- The full work shall be written in English.
- Page size shall be A4.
- Front page and second page of the work shall follow exactly the Master Thesis front page template properly filling them with the right information and being specially careful to respect the indicated format. The student will be provided with the Thesis number (Thesis no.), mentioned in the second page, once the defence of the Master Thesis will be officially requested (read below).
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, with the approval of the main director of the work.
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, providing the student with a Number of Master Thesis, a code that the student shall include in the second page of the thesis document. In addition, the Master Secretary will provide the student two forms, one for authorizing the UPM to publish online the document and other for requesting the confidentiality of the document. The student shall then submit by email to the Master Secretary a pdf version of his/her Master Thesis and one of the two 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’s Academic Committee.
The Board shall be composed of three EMSE Faculty Members. None of them shall have act as director or co-director of the Master Thesis defended. The Board shall be chaired as President by the highest-ranking (or the longest-serving in the event of equal rank) member of the board; the second highest-ranking (or, again, second longest-serving in case of equal rank) shall act as Vocal; the third one shall act as Secretary of the board.
All the Master Thesis of the same session shall be defended with the same and only board 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 for groups of Master Thesis with different boards in each room. Nobody else but the master candidate and the Board are expected to actively participate in the defense process.
Master Thesis directors shall not participate to clarify questions or answer instead of the student, except in the cases in which the Board would require it. The Board shall follow the following instructions, which rule the protocol for defending the Master Thesis:
- Once the Board designed by the Coordinator of the EMSE Academic Commission has been constituted, its Secretary shall open the public session and shall call the first candidate, according to the order established on the back of the “Document of Defense of the Master Thesis”, which he/she has been provided with.
- The Secretary of the Board shall deliver among the other two Board members the “Rubric-Based Assessment Document for Master’s Final Thesis”, also provided to him/her. They shall evaluate the Master Thesis guided by that document.
- 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 question turn. 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.
- Once the Board considers the question turn over, the student shall be invited to leave and each Board member shall individually complete the rubric-based assessment document, shall sign it and shall hand it back to the Board Secretary, which shall guard it from that moment on.
- 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 produced and the Document of defense of the Master Thesis of the session.
After receiving all the evaluations from the directors, co-directors and Board members for each Master Thesis defended in the same examination session, the final grades shall be published. From this point 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.