Software Engineering

This specialisation provides students with the skills to participate in projects for the design, maintenance and evaluation of different software systems and services and to carry out the tasks corresponding to different professional roles, including project director, analyst, domain expert, requirements engineer, software architect and database administrator. Students will learn to carry out projects of arbitrary complexity (for example, involving teams from different countries), of critical importance (for example, involving potential risk to human life in the event of faulty operation) and of different technical characteristics (for example, involving service-based systems, web systems, real-time systems, embedded systems or business systems). As a differentiating feature, students will also learn to ensure that these projects comply with the main quality standards applied in the software industry and to integrate social considerations such as sustainability, resource optimisation and confidentiality.

Have a look at the briefing of this specialisation:

Career options

Software is an important element in IT systems and has become the fulcrum of IT services for individuals and organisations, leading to widespread use of the term “software as a service”. The service sector is the mainstay of developed economies and the area that has shown the greatest economic growth in recent years, and the concept of services is now largely inseparable from the software upon which these services are built.

Informatics engineers with specialised training in Software Engineering can pursue a wide range of careers, including skilled and management positions in the following areas:

  • Development of software services and systems, working with the latest software engineering methods, techniques and tools.
  • Requirements engineering, software architecture, database administration, and any other area related to informatics.
  • Software engineering reviewing and auditing for organisations, and the design and implementation of management and quality improvement plans.

Specialization coordinator

Persona Departament Correu electrònic
Franch Gutiérrez, Xavier ESSI

Specialization teachers

Persona Departament Correu electrònic
Abello Gamazo, Alberto ESSI
Alier Forment, Marc ESSI
Asenjo Carvajal, Víctor ESSI
Béjar Alonso, Javier CS
Beltran Andreu, Jose Luis ESSI
Burgués Illa, Xavier ESSI
Casañ Guerrero, María José ESSI
Catot Bragós, Carlota ESSI
Costal Costa, Dolors ESSI
Delgado Pin, Jordi CS
Duran Manzano, Pau ESSI
Escudero Bakx, Gerard CS
Farre Tost, Carles ESSI
Fonseca Casas, Pau EIO
Franch Gutiérrez, Xavier ESSI
Garcia Subirana, Joan EIO
Gil Gomez, Marisa AC
Gómez Seoane, Cristina ESSI
Lapuente Ferran, Raimon ESSI
Mallol Rúbies, Jordi ESSI
Martínez Fernández, Silverio Juan ESSI
Martínez Martínez, Matías Sebastián ESSI
Montero Garcia, Jordi EIO
Morales Garcia, Sergio ESSI
Motger de la Encarnacion, Quim ESSI
Nadal Francesch, Sergi ESSI
Oriol Hilari, Marc ESSI
Picornell Alandete, Vicent ESSI
Piguillem Poch, Jordi ESSI
Queralt Calafat, Anna ESSI
Ramirez Perez, Inmaculada ESSI
Rello Saltor, Manuel ESSI
Renom Vilaro, Albert ESSI
Romero Moral, Oscar ESSI
Sancho Samso, Maria Ribera ESSI
Teniente Lopez, Ernest ESSI

Technical Competences of each Specialization


  • CES1
    To develop, maintain and evaluate software services and systems which satisfy all user requirements, which behave reliably and efficiently, with a reasonable development and maintenance and which satisfy the rules for quality applying the theories, principles, methods and practices of Software Engineering.
    • CES1.1
      To develop, maintain and evaluate complex and/or critical software systems and services.
    • CES1.2
      To solve integration problems in function of the strategies, standards and available technologies
    • CES1.3
      To identify, evaluate and manage potential risks related to software building which could arise.
    • CES1.4
      To develop, mantain and evaluate distributed services and applications with network support.
    • CES1.5
      To specify, design, implement and evaluate databases.
    • CES1.6
      To administrate databases (CIS4.3).
    • CES1.7
      To control the quality and design tests in the software production
    • CES1.8
      To develop, mantain and evaluate control and real-time systems.
    • CES1.9
      To demonstrate the comprehension in management and government of software systems.
  • CES2
    To value the client needs and specify the software requirements to satisfy these needs, reconciling conflictive objectives through searching acceptable compromises, taking into account the limitations related to the cost, time, already developed systems and organizations.
    • CES2.1
      To define and manage the requirements of a software system.
    • CES2.2
      To design adequate solutions in one or more application domains, using software engineering methods which integrate ethical, social, legal and economical aspects.
  • CES3
    To identify and analyse problems; design, develop, implement, verify and document software solutions having an adequate knowledge about the current theories, models and techniques.
    • CES3.1
      To develop multimedia services and applications.
    • CES3.2
      To design and manage a data warehouse.


Specialization compulsory subjects

Specialization complementary subjects

Requisites between subjects

If a subject A is prerequisite of another subject B, it means that to be able to register B is necessary to have passed the subject A.
If a subject A is corequisite of another subject B, it means that to be able to register B is necessary to have passed or to be register in the subject A.
If a subject A is precorequisite of another subject B, it means that to be able to register B it is necessary to be registered (a quadrimester before at least) subject A. But, in case of havig a list of precorequits (A precorequsite of B, and B precorequisite of C), it won't be posible to register subject C until subject A has not been passed.
If two subjects A and B are orequisite of subject C, it means that to register subject C it is necessary to have passed either subject A or subject B.
If a subject A is incompatible with another subject B, it means that you are not able to register A if you have passed the subject B.