Requirements Engineering

Year
0
Academic year
2023-2024
Code
02023331
Subject Area
Software Engineering
Language of Instruction
English
Other Languages of Instruction
Portuguese
Mode of Delivery
Face-to-face
Duration
SEMESTRIAL
ECTS Credits
6.0
Type
Elective
Level
2nd Cycle Studies - Mestrado

Recommended Prerequisites

Programming, Databases, English.

Teaching Methods

The learning process involves applying the ideas and explaining them to the peers, rather than by listening to lectures. Therefore, this course includes lectures with the exposition of concepts, along with practical examples intended to increase students' interest in theoretical concepts and exemplify their application to real situations.

The course contents are organized around the Studio project by the phased delivery of (seven) artifacts where the different techniques are applied, which are presented, discussed, and feedback is provided both in writing and in class.

Learning Outcomes

The professional activity of software development requires an understanding of successful methods for bridging the gap between a problem to be solved and a working software system. In this course students will study a variety of techiques to understand the problem they're solving, the various factors that constrain the possible solutions, and approaches to deciding among alternatives.

After completing this course, students will be able to:

- Identify different classes of problems and their structures;

- Analyze technical, organizational, usability, and business constraints on solutions;

- Apply a sound engineering approach to frame solutions. 

Work Placement(s)

No

Syllabus

1.Requirements Engineering;

3.Contextual Design;

4.Use Cases;

5. Goal-oriented modelling;

5.Usability issues;

6.Business, economic and policy constraints;

7.An engineering approach to software development.

Head Lecturer(s)

Mário Alberto da Costa Zenha Rela

Assessment Methods

Assessment
Synthesis work: 25.0%
Project: 75.0%

Bibliography

1. [BRO95] The Mythical Man-Month, Fred Brooks, ISBN 0201835959, 336 pp., Addison-Wesley Professional; 2ª ed. 1995.

2. [BEY98] Hugh Beyer and Karen Holtzblat: Contextual Design: Defining Customer-Centered Systems. Morgan Kaufman, 1998.

3. [ArMi01] Frank Armour and Granville Miller: Advanced Use Case Modeling: Software Systems. Addison-Wesley, 2001.

4.[KAOS07] A KAOS Tutorial , Axel van Lamsweerde, Respect-IT, 46 pp. 2007

5.[NIE93] Usability Engineering , Jakob Nielsen, ISBN 0125184069, 362 pp., Morgan Kaufmann, 1993.

6. [NOR13] The Design of Everyday Things, 2ed. , Donald Norman, ISBN 0262525674, 368 pp., MIT Press, 2013.

7.[SHA90] Mary Shaw, Prospects for an Engineering Discipline of Software, IEEE Software, Vol.7, Issue: 6, Nov. 1990, pp.15-24