The most difficult task of building an information system or, in general, a software system, consists of determining which system should be built. This task is called Requirements Engineering. No other work has a such negative economic and social impact as if done wrong. Many of the systems development failures are attributed to not do correctly their engineering requirements. This course presents the concepts, activities and artifacts of requirements engineering. Emphasis is placed on aspects that are essential to ensure the success of projects, especially the definition of the objectives of stakeholders, the correct formulation of the requirements and satisfaction of the argument. The teaching method of the course is of the family of PBL (Project Based Learning) and the centerpiece is a project (which varies each year) for which students, working in groups, have to make the complete engineering requirements.
Teachers
Person in charge
Maria Ribera Sancho Samso (
)
Others
Ernest Teniente Lopez (
)
Inmaculada Ramirez Perez (
)
Manuel Rello Saltor (
)
Sergio Morales Garcia (
)
Weekly hours
Theory
2
Problems
0
Laboratory
2
Guided learning
0
Autonomous learning
6
Competences
Technical Competences of each Specialization
Information systems specialization
CSI3 - To determine the requirements of the information and communication systems of an organization, taking into account the aspects of security and compliance of the current normative and legislation.
CSI3.5
- To propose and coordinate changes to improve the operation of the systems and the applications.
CSI4 - To participate actively in the specification, design, implementation and maintenance of the information and communication systems.
CSI4.1
- To participate actively in the specification of the information and communication systems.
Software engineering specialization
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.
Transversal Competences
Information literacy
G6 [Avaluable] - To manage the acquisition, structuring, analysis and visualization of data and information of the field of the informatics engineering, and value in a critical way the results of this management.
G6.3
- To plan and use the necessary information for an academic essay (for example, the final project of the grade) using critical reflection about the used information resources. To manage information in a competent, independent and autonomous way. To evaluate the found information and identify its deficiencies.
Objectives
Understanding the need, objectives and contexts in which engineering requirements activities are performed
Related competences:
CSI4.1,
CES2.1,
Knowing defining the objectives of a project.
Related competences:
CSI4.1,
CES2.1,
CSI3.5,
Knowing identifying stakeholders of a porject.
Related competences:
CSI4.1,
CES2.1,
CSI3.5,
Understanding what isthe system context, the boundary of the system and the use cases.
Related competences:
CSI4.1,
CES2.1,
Knowing defining a business process in a particular language.
Related competences:
CSI4.1,
CES2.1,
Understanding the need to perform a detailed state of the art of the professional practice within the scope of a project.
Related competences:
CSI4.1,
CES2.1,
G6.3,
Knowing performing a detailed state of the art of professional practice within the scope of a project.
Related competences:
G6.3,
Understanding what are the scenarios and use cases of a system and what are the relations among them.
Related competences:
CSI4.1,
CES2.1,
Knowing defining the use cases of a system by using a particular template.
Related competences:
CSI4.1,
CES2.1,
Knowing what are the software system requirements and into what types are classified.
Related competences:
CSI4.1,
CES2.1,
Knowing the methods to specify the requirements and contexts in which they are useful.
Related competences:
CSI4.1,
CES2.1,
Knowing what the conflicts of requirements engineering, how to analyze them and how to solve them.
Related competences:
CSI4.1,
CES2.1,
Understanding the need for argumentation satisfaction of goals on a project.
Related competences:
CSI4.1,
CES2.1,
Knowing performing argumentation satisfaction of goals.
Related competences:
CSI4.1,
CES2.1,
Knowing writing the requirements specification by using a particular template.
Related competences:
CSI4.1,
CES2.1,
Knowing the methods to validate the requirements and in which contexts they are useful.
Related competences:
CSI4.1,
CES2.1,
Knowing validating a requirements specification through inspection.
Related competences:
CSI4.1,
CES2.1,
Understaing the need of performing the conceptual schema.
Related competences:
CSI4.1,
CES2.1,
Knowing developing the conceptual schema from the requirerments of a project.
Related competences:
CSI4.1,
CES2.1,
Knowing writing a conceptual schema in an executable language.
Related competences:
CSI4.1,
CES2.1,
Understanding the relations among the artifacts of requirements engineering, and the need to keep the traceability and consistency.
Related competences:
CSI4.1,
CES2.1,
Knowing validating a conceptual schema through inspection.
Related competences:
CSI4.1,
CES2.1,
Contents
Overview of requirements engineering
Project goals
Stakeholders
The system and its context
Scenarios and use cases
Software requirements
Satisfaction argument of goals.
Requirements engineering activities: Determination of requirements, documentation, negotiation and validation
Conceptual modeling in requirements engineering
Development of the conceptual schema
Traceability of requirements engineering artifacts
Validation of conceptual schemas
Activities
ActivityEvaluation act
Introduction
(1) Participar activament en una classe de teoria, on s'expliquen els objectius i l'organització de l'assignatura (2 hores).
(2) Repassar els exemples de cursos anteriors, i el material docent publicats a l'Atenea (4 hores)
(2) Preparar la reunió de constitució dels grups de projecte revisant la missió del projecte (1,5 hores).
(3) Participar activament en la reunió constituent del grup de projecte, on es nomenen els càrrecs de coordinador i secretari, es comenta l'objectiu i la planificació de la feina que caldrà fer, i es comencen a explorar els objectius del projecte. També es repassa el document de bones pràctiques en l'organització i realització de reunions, que s'hauran de seguir en les reunions del curs (2 hores).
(4) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectives:1 Contents:
(1) Participar activament en una classe de teoria, on s'expliquen què són i com han de ser els objectius d'un projecte (2 hores). (2) Durant la setmana, realitzar un exercici sobre 'objectius de projectes' i presentar-lo via Atenea (2 hores) (3) Preparar la reunió del grup de projecte, revisant un cop més la missió publicada del projecte, els exemples de cursos anteriors i pensant quins poden ser els objectius del projecte del curs (3,5 hores). (4) Participar activament en la reunió del grup de projecte, que es centra en els objectius del projecte (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana, que tracta de les parts interessades en un projecte. (30 minuts). Objectives:23 Contents:
(1) Participar activament en una classe de teoria, on s'expliquen què són els requisits, de quins tipus n'hi ha, i la seva relació amb els objectius del projecte (2 hores). (2) Durant la setmana, l'estudiant realitza un exercici sobre l'argument de satisfacció i el presenta via Atenea (3 hores) (3) Realitzar la tasca encomanada pel grup, que tractarà de les parts interessades del projecte del curs i el refinament d'objectius (2,5 hores). (4) Participar activament en la reunió del grup, que es centra en els requisits que es deriven dels objectius del projecte (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectives:23131410 Contents:
Exercise on satisfaction argument Objectives:1314 Week:
3
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h
Introduction to requirements engineering
1) Participar activament en una classe de teoria, on s'explica què és l'enginyeria de requisits i les activitats que s'hi fan (2 hores). (2) Durant la setmana, l'estudiant realitza un exercici sobre modelització de processos de negoci i el presenta via Atenea (2 hores) (3) Realitzar la tasca encomanada pel grup, que tractarà de delimitar l'àmbit de la feina i els casos d'ús de negoci del projecte (3,5 hores). (4) Participar activament en la reunió del grup, que es centrarà en els temes indicats anteriorment (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectives:45 Contents:
S'avaluarà el document preparat pels estudiants sobre l'estat de l'art en l'àmbit del projecte. Objectives:67 Week:
4
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h
System, context, use cases
1) Participar activament en una classe de teoria, on s'explica què són el sistema, el context i els casos d'ús. S'introdueixen els elements bàsics per a la modelització de processos de negoci en un llenguatge (2 hores). (2) Aquesta setmana no hi ha exercici per tal de poder destinar més temps a l'estat de l'art (3) Realitzar la tasca encomanada pel grup, que tractarà de l'estat de l'art en l'àmbit del projecte (acabament) i de l'aplicació dels conceptes esmentats al projecte (5,5 hores). (4) Participar activament en la reunió del grup, que es centrarà en l'estat de l'art i de l'aplicació dels conceptes esmentats al projecte (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectives:6745 Contents:
1) Participar activament en una classe de teoria, on s'explica quins són els mètodes principals per a determinar els requisits i quan es poden aplicar (2 hores). (2) Durant la setmana, l'estudiant realitza un exercici sobre casos d'ús i el presenta via Atenea (2 hores) (3) Realitzar la tasca encomanada pel grup, que tractarà dels requisits funcioanls i dels casos d'ús (3,5 hores). (4) Participar activament en la reunió del grup, que es centrarà en els requisits funcionals i casos d'ús (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectives:91011 Contents:
Exercise on essential and real use cases Objectives:89 Week:
6
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h
Negotiating requirements
(1) Participar activament en una classe de teoria, on s'expliquen la necessitat i els mètodes de negociació de conflictes en l'enginyeria de requisits (2 hores). (2) Realitzar la tasca encomanada pel grup, que tractarà sobre l'acabament del lliurament preliminar de l'especificació de requisits (5,5 hores). (3) Participar activament en la reunió del grup, que tractarà sobre l'acabament del lliurament preliminar de l'especificació de requisits (2 hores). (4) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectives:12 Contents:
Preliminary delivery on requirements specification Objectives:238915104 Week:
7
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h
Validation requirements
1) Participar activament en una classe de teoria, on s'explica quins són els mètodes principals de validació de requisits (2 hores). (2) Durant la setmana, l'estudiant realitza un exercici sobre validació de requisits (2 hores) (3) Realitzar la tasca encomanada pel grup, que tractarà dels requisits no funcionals del projecte (3,5 hores). (4) Participar activament en la reunió del grup, que es centrarà en els requisits no funcionals, i en la planificació de l'activitat de validació dels requisits (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectives:1716 Contents:
Exercise on validation requirements Objectives:1716 Week:
8
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h
Recap on requirements
(1) Participar activament en una classe de teoria, on es fa una recapitulació de tots els conceptes i tècniques vistos al curs fins aquest moment. (2 hores). Aquesta setmana no hi ha exercici per tal de poder destinar més temps al lliurament definitiu dels requisits. (2) Realitzar la tasca encomanada pel grup, que tractarà sobre la validació de l'especificació de requisits (5,5 hores). (3) Participar activament en la reunió del grup, que tractarà sobre la validació de l'especificació i l'acabament del lliurament definitiu de l'especificació de requisits (2 hores). (4) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectives:238913141517212210164 Contents:
Questionnaire on basic concepts of requirements engineering. Each student must bring a laptop or similar to access and respond to the questionnaire. Objectives:1236789131415171011164512 Week:
9
Theory
2h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h
D2
Final delivery of the requirements specification Objectives:2389131415171011164 Week:
9
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h
Conceptual modeling in requirements engineering
1) Participar activament en una classe de teoria, on s'explica quin és el paper de la modelització conceptual en l'enginyeria de requisits (2 hores). (2) Durant la setmana, l'estudiant realitza un exercici sobre OCL executable (3 hores) (3) Realitzar la tasca encomanada pel grup, que tractarà d'estudiar l'esquema conceptual de projectes anteriors i determinar què s'ha de fer en aquest cas. (2,5 hores). (4) Participar activament en la reunió del grup, que es centrarà en els aspectes indicats anteriorment (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectives:182120 Contents:
Exercise on the executable OCL Objectives:20 Week:
10
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h
The structural scheme
1) Participar activament en una classe de teoria, on es repassaran (i, si cal, s'aprofundiran) els conceptes d'esquema estructural necessaris per al projecte (2 hores). (2) Durant la setmana, l'estudiant realitza un exercici esquemes estructurals (3 hores) (3) Realitzar la tasca encomanada pel grup, que tractarà sobre la definició de l'esquema estructural del projecte. (2,5 hores). (4) Participar activament en la reunió del grup, que es centrarà en els aspectes indicats anteriorment (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectives:2019 Contents:
Exercise making structural scheme Objectives:2019 Week:
11
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h
The scheme behavior
(1) Participar activament en una classe de teoria, on es repassen (i, si cal, s'aprofundeixen) els conceptes necessaris d'esquema del comportament necessaris per al projecte (2 hores). Aquesta setmana ho hi ha exercici per tal de poder destinar més temps al lliurament preliminar de l'esquema conceptual. (2) Realitzar la tasca encomanada pel grup, que consistirà en la contiunació de l'esquema estructural i de comportament del projecte (5,5 hores). (3) Participar activament en la reunió del grup, que consolidarà les feines individuals i prepararà el lliurament preliminar de l'esquema conceptual (2 hores). (4) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectives:2019 Contents:
Preliminary delivery of conceptual schema of the project Objectives:2019 Week:
12
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h
Validating conceptual schema
1) Participar activament en una classe de teoria, on s'estudiarà què és la validació d'esquemes conceptuals i els mètodes que hi ha per a fer-la (2 hores). (2) Durant la setmana, l'estudiant realitza un exercici de validació d'esquemes (3 hores) (3) Realitzar la tasca encomanada pel grup, que tractarà sobre la definició de l'esquema de comportament del projecte. (2,5 hores). (4) Participar activament en la reunió del grup, que es centrarà en els aspectes indicats anteriorment (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectives:212022 Contents:
Exercise on schema validation Objectives:2122 Week:
13
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h
Recap subject
1) Participar activament en una classe de teoria, on el coordinador de cada grup explica què han après d'enginyeria de requisits al curs (2 hores). (2) Durant la setmana, prepara un document explicatiu del seu grau d'assoliment dels objectius del curs (3 hores) (3) Realitzar la tasca encomanada pel grup, que tractarà de la validació de l'esquema conceptual del projecte (3 hores). (4) Participar activament en la reunió del grup, que es centrarà en la validació conjunta de l'esquema conceptual (2 hores). Objectives:1821202219 Contents:
Completion of the final delivery of the conceptual scheme
L'alumne realitza la part encomanada d'acabament i presentació de l'esquema conceptual, tenint en compte el resultat de la validació efectuada en la darrera reunió del grup (10 hores) Objectives:202219 Contents:
Final delivery of conceptual schema Objectives:21202219 Week:
15
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h
Q2
Questionnaire on basic concepts of conceptual modeling in requirements engineering. The questionnaire will be answered online within the class. Each student must bring a laptop or similar to access and respond to the questionnaire. Objectives:1821202219 Week:
14
Theory
2h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h
Teaching methodology
The course will primarily (but not completely) be taught using the teaching method PBL (Problem Based Learning).
There is a class (conventional) two hours a week in which the teacher presents the topics of the course and all aspects that are not sufficiently covered by other activities. The class also provides a good solution to the exercise of the previous week.
The second main activity of the course is the determination of the requirements of a particular software system. The teacher sketches a specific situation (different from one course to another), for which students have to determine and specify the requirements of a software system, using some methods and languages ¿¿to be learned previously. This work is performed in group. The number of people and the composition of the group is defined at the beginning of the course (no more than five/six). Each group appoints a coordinator. Each group meets at least once a week for two hours, the hours of laboratory classes. The group submits its work in five deliverables during the course, within limits fixed at the beginning of the course.
Each project meeting consists of three parts: During the first part each student explains the individual work done during the week and the group consolidates the work done by each member; During the second part the group progress towards the new project aspects that must be taken over; the third part is the planing of what will be done during next week, and who will.
The third major activity is the course exercises. The teacher proposes several exercises during the course. Each student must submit (via Athena) his own solution to the exercises, within the specified deadline. The completion of the exercise requires learning new skills.
Note: The teaching method used in the course requires students to acquire new knowledge independently, using bibliographic sources that are normally in English. It is essential that the student has a sufficient level of English without much difficulty assimilating the literature (technical).
Evaluation methodology
The generic competence assigned to the course is graded with values A, B, C, D, where:
· A indicates that the competence has been accomplished with a level of excellence
· B indicates that the competence has been accomplished with the desired level
· C indicates that the competence has been accomplished with a sufficient level
· D indicates that the competence has not accomplished
This grade comes from the evaluation of the first deliverable of the project (Context analysis).
- An overview of software engineering, and the role it plays in Requirements Engineering
- Basic elements of conceptual modeling in UML / OCL
- Organizations, economic environment, decision-making.
- English reading level.