Code: | EIC0053 | Acronym: | ERSS |
Keywords | |
---|---|
Classification | Keyword |
OFICIAL | Software Engineering |
Active? | Yes |
Responsible unit: | Department of Informatics Engineering |
Course/CS Responsible: | Master in Informatics and Computing Engineering |
Acronym | No. of Students | Study Plan | Curricular Years | Credits UCN | Credits ECTS | Contact hours | Total Time |
---|---|---|---|---|---|---|---|
MIEIC | 27 | Syllabus since 2009/2010 | 4 | - | 6 | 42 | 162 |
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.
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.
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
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.
Designation | Weight (%) |
---|---|
Apresentação/discussão de um trabalho científico | 40,00 |
Trabalho escrito | 30,00 |
Trabalho prático ou de projeto | 30,00 |
Total: | 100,00 |
Designation | Time (hours) |
---|---|
Elaboração de projeto | 54,00 |
Estudo autónomo | 35,00 |
Frequência das aulas | 33,00 |
Trabalho escrito | 40,00 |
Total: | 162,00 |
Students have to reach a minimum mark of 40% in every assessment components.
30% - PS - Project (group)
30% - EI - Essay (individual)
20% - DA - Discussion of paper (group)
20% - AA - Paper reading sheet (individual)
According to the course rules
Students can improve the mark of their individual essays (EI). Project component (PS) and papers discussion and analysis (AA) can only be improved in the following academic year.