Requirements Engineering

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

Recommended Prerequisites

Programming and Database skills.

Teaching Methods

FORMTEXT

Autonomous reading followed by in-Class discussion; Synthesis work on a chosen subject complemented by an oral presentation; Independent team work on a set of mini-projects focused on specific core topics (as much as possible, the mini-projects will address different perspectives of the same real-world problem).

A paper describing in detail the rationale for this cource can be found at:

http://www.casos.cs.cmu.edu/publications/papers/2005DecidingWhatDesign.pdf

Learning Outcomes

Practical development of software 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 ways 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, business, and marketing constraints on solutions;

• apply engineering approaches to frame solutions.

Work Placement(s)

No

Syllabus

1. Requirements Engineering;

2. Framing problems

3. Contextual Design

4. Use Cases

5. Usability issues

6. Business, economic and policy constraints

7. An engineering approach to software development.

Head Lecturer(s)

Nuno Alexandre Martins Seixas

Assessment Methods

Assessment
Resolution Problems: 10.0%
Synthesis work: 20.0%
Mini Tests: 70.0%

Bibliography

1. Fred Brooks: The Mythical Man-Month, Addison-Wesley, 2005

2. Karl Wiegers: More About Software Requirements: Thorny Issues and Practical Advice Microsoft Press, 2005.

3. Donald Norman: The Design of Everyday Things; Currency/Doubleday, 1990.

4. Frank Armour and Granville Miller: Advanced Use Case Modeling: Software Systems Addison-Wesley, 2001.

5. Beyer and Holtzblat: Contextual Design: Defining Customer-Centered Systems. Morgan Kaufman, 1998