Go to:
Logótipo
You are here: Start > EIC0053

Software Systems Requirements Engineering

Code: EIC0053     Acronym: ERSS

Keywords
Classification Keyword
OFICIAL Software Engineering

Instance: 2010/2011 - 2S

Active? Yes
E-learning page: http://moodle.fe.up.pt/
Responsible unit: Department of Informatics Engineering
Course/CS Responsible: Master in Informatics and Computing Engineering

Cycles of Study/Courses

Acronym No. of Students Study Plan Curricular Years Credits UCN Credits ECTS Contact hours Total Time
MIEIC 22 Syllabus since 2009/2010 4 - 6 56 162

Teaching language

Suitable for English-speaking students

Objectives

------------
Objectives
------------
This course unit aims to endow students with planning and management skills, so that they can analyse and specify the requirements of a software system.

-------------
Learning outcomes
-------------
By the end of the course, students should be able to:
- define information system requirement;
- explain the importance of the requirements engineering process in the success of an information system;
- describe the requirements engineering process;
- identify and explain the roles and actors in the requirements engineering process;
- describe the application of problem solving techniques the requirements engineering process;
- describe and apply requirements workshops and prototyping for requirements identification;
- describe and apply scenarios and storyboarding techniques;
- describe and apply observation and other ethnographic methods;
- describe and explain requirements analysis techniques and their importance;
- explain the importance of requirements classification;
- classify requirements in terms of priority and risk;
- explain the importance of requirements negotiation;
- apply techniques of requirements negotiation;
- describe the several forms of requirements representation;
- describe the general structure of a requirements document;
- build complex use case based requirements descriptions;
- write a complete requirements document.

Program

Introduction to Requirements Engineering
Notion of requirement: functional and non-functional requirements; importance of requirements; the role of analysis and specification; application domains, socio-technical requirements; requirements of human activities systems;
Process of Requirements Engineering: interdisciplinary aspects of Requirements Engineering; organisational aspects; process models of Requirements Engineering; stakeholders; support and process management of Requirements Engineering; quality and process improvement of Requirements Engineering

Identification, analysis and negotiation of requirements
Identification processes, requirements discovery and refinement: organisational polices; launched by problems; launched by example; external environment imposition
General techniques to identify, discover and refine requirements: problem analysis; organisation and business modelling; brainstorming; queries; interviews
Specific techniques to identify, discover and refine requirements: workshops; storyboarding; prototyping; social observation and analysis (ethnographic methods);
General conversation structures: dialogues and contexts; dialogue structure; non-verbal communication; dialogue standards and acts (identification, analysis and modelling, refinement, validation, negotiation);
Requirements analysis: analysis checklists; interaction and dependence matrixes; requirements risks and priorities; requirements classification; architecture design and requirements division; verification of metric consistency

Documentation and requirements communication
Requirements representation: criteria; representation and information requirements; ways of representation; selection of representations; representation paradigms; representation quality;
Textual description of requirements: structure of requirement documents; IEEE 830-1998 standard; requirements description (discourse);
Requirements representation by use cases: development of an use case model; extension and inclusion of use cases; integration of use cases in requirements identification techniques; use of other UML diagrams in requirements representation- class diagrams, activities, sequence, packets;
Representation of organisational context: modelling of organisational processes; objectives modelling; analysis and business standards in UML;
Modelling and formal specification: overview of modelling techniques and formal specification;

Requirements validation, testing and traceability
Requirements validation: requirements revision; prototyping; model validation; requirements tests; revision of use cases;
Requirements tests: basic concepts; test cases; derivation of test cases and use cases;
Requirements traceability: role of traceability in the development of systems; relation of traceability; general model of traceability; tools to support traceability

Requirements management
Requirements management and alteration: reasons of change; stable and volatile requirements; processes to manage alterations; management of requirements configurations; tools of requirements management;
Requirements management: project quality; quality assessment; quality control checklists

Mandatory literature

Klaus Pohl; Requirements Engineering: Fundamentals, Principles, , Springer, 2010. ISBN: 978-3-642-12577-5
Kotonya, Gerald; Requirements engineering. ISBN: 0-471-97208-8
Sommerville, Ian; Requirements engineering. ISBN: 0-471-97444-7
IAN ALEXANDER AND NEIL MAIDEN; SCENARIOS, STORIES, USE CASES Through the Systems Development Life-Cycle, John Wiley & Sons. ISBN: 0-470-86194-0

Complementary Bibliography

Alexander, Ian F.; Writing better requirements. ISBN: 0-321-13163-0
Alistair Stutcliffe; User Centered Requirements Engineering: Theory and Practice, Springer, 2002
Crabtree, Andy; Designing collaborative systems. ISBN: 1-85233-718-4
Gottesdiener, Ellen; Requirements by collaboration. ISBN: 0-201-78606-0
Withall, Stephen; Software requirement patterns. ISBN: 978-0-7356-2398-9
Maciaszek, Leszek A.; Requirements analysis and system design. ISBN: 0-201-70944-9
Kurt Bittner, Ian Spence; Use Case Modelling, Addison-Wesley, 2003
Gibson, John E.; How to do systems analysis. ISBN: 978-0-470-00765-5

Teaching methods and learning activities

Project-oriented learning.
Students will have to carry out a group assignment, in which they have to cover all the stages of a requirements engineering process.
Theoretical classes endow students with all the necessary knowledge to carry out the projects.

Evaluation Type

Distributed evaluation without final exam

Assessment Components

Description Type Time (hours) Weight (%) End date
Attendance (estimated) Participação presencial 39,00
Semester project (group) Trabalho laboratorial 52,00 2011-06-03
Essay about ER (individual) Trabalho escrito 35,00 2011-06-17
Analysis and discussion of scientific papers (group) Trabalho escrito 16,00
Total: - 0,00

Amount of time allocated to each course unit

Description Type Time (hours) End date
Study and class readings Estudo autónomo 20
Total: 20,00

Eligibility for exams

Students have to reach a minimum mark of 40% in every assessment components.

Calculation formula of final grade

FM=0,4*P+0,4*IE+0,2*AD

P- Project
IE- Individual Essay
AD- Article analysis and discussion (group)

Classification improvement

Students can improve the mark of their individual essays.
Recommend this page Top
Copyright 1996-2024 © Faculdade de Engenharia da Universidade do Porto  I Terms and Conditions  I Accessibility  I Index A-Z  I Guest Book
Page generated on: 2024-10-31 at 23:11:12 | Acceptable Use Policy | Data Protection Policy | Complaint Portal