Engenharia de Requisitos de Sistemas de Software
Áreas Científicas |
Classificação |
Área Científica |
OFICIAL |
Engenharia de Software |
Ocorrência: 2010/2011 - 2S
Ciclos de Estudo/Cursos
Língua de trabalho
Português - Suitable for English-speaking students
Objetivos
--------
Objectivos
--------
Dotar os alunos com competências para planear, gerir e levar a cabo um processo de análise e especificação de requisitos de um sistema de software.
--------
Resultados de aprendizagem
--------
Ao serem aprovados à unidade curricular, os estudantes serão capazes de:
- definir requisito de um sistema de informação e explivcar a sua importância
- explicar a importância do processo de engenharia de requitos no sucesso de um sistema de informação
- descrever o processo de engenharia de requisitos de um sistema de informação
- identificar e explicar os papéis e actores no processo de engenharia de requisitos
- descrever a aplicação na engenharia de requisitos das técnicas de análise de problemas
- explicar como se usam e aplicar as técnicas de workshops de requisitos e prototipagem
- aplicar as técnicas de cenários e storyboarding e observação e análise social (métodos etnográficos)
- explicar em que consiste e qual a importância da análise de requisitos
- descrever as técnicas de análise de requisitos
- explicar a importância da classificação de requisitos
- classificar requisitos quanto a prioridade e risco
- explicar a necessidade e importância da negociação de requisitos
- negociar requisitos
- descrever as várias formas de representação de requisitos
- descrever a estrutura básica de um documento de requisitos
- estruturar a descrição dos requisitos de um sistema segundo a norma IEEE 830-1998
- construir modelos de casos de uso simples a partir de uma descrição de requisitos
- elaborar um documento de requisitos completo.
Programa
1. Introdução à engenharia de requisitos
1.1.Noção de requisito: requisitos funcionais e não funcionais; importância dos requisitos; o papel da análise e especificação; domínios de aplicação; requisitos como objectos sócio-técnicos; requisitos de sistemas de actividades humanas.
1.2.O processo de Engenharia de Requisitos: aspectos interdisciplinares da engenharia de requisitos; aspectos organizacionais; modelos de processo de ER; actores do processo de ER (stakeholders); apoio e gestão do processo de ER; qualidade e melhoria do processo de ER.
2. Identificação, análise e negociação de requisitos.
2.1.Processos para a identificação, descoberta e refinamento de requisitos: guiados por políticas organizacionais; desencadeados por problemas; desencadeados por imitação (by-example); iniciados por imposições do ambiente externo.
2.2.Técnicas genéricas para identificação, descoberta e refinamento de requisitos de requisitos: análise de problemas; modelação da organização e do negócio; brainstorming; inquéritos; entrevistas;
2.3.Técnicas específicas para identificação, descoberta e refinamento de requisitos de requisitos: workshops de requisitos; cenários e storyboarding; prototipagem; observação e análise social (métodos etnográficos).
2.4.Estruturas genéricas de conversações para identificação de requisitos: diálogos e contextos; estruturas de diálogos; comunicação não verbal; padrões e actos de diálogos (identificação, análise e modelação, refinamento, validação, negociação);
2.5.Análise de requisitos: checklists, de análise; matrizes de interacção ou dependência; riscos e prioridades dos requisitos; classificação dos requisitos; desenho de arquitecturas e divisão dos requisitos; verificação de consistência, métricas.
2.6.Negociação de requisitos: conflito e negociação; pontos de vista;
3. Documentação e comunicação de requisitos
3.1. Representações de requisitos: critérios; representações e requisitos de informação; meios de representação; selecção de representações; paradigmas representacionais; qualidade das representações;
3.2. Descrições textuais de requisitos: estruturas de documentos de requisitos; o documento de visão; a norma IEEE 830-1998; formas de discurso na descrição de requisitos;
3.3. Representação de requisitos através de casos de uso: passos na construção de um modelo de casos de uso; extensão e inclusão de casos de uso; integração de casos de uso nas técnicas de identificação de requisitos; integração de modelos de caos de uso em documentos de requisitos; utilização de outros diagramas da UML na representação de requisitos - diagramas de classes, actividades, sequência, pacotes;
3.4. Representação do contexto organizacional: modelação de processos organizacionais; modelação de objectivos; padrões de análise e negócio em UML;
3.5. Modelação e especificação formal: visão geral de técnicas de modelação e especificação formal;
4. Validação, teste e rastreabilidade de requisitos
4.1.Validação de requisitos: revisão de requisitos; prototipagem; validação de modelos; teste de requisitos; revisão de casos de uso;
4.2.Teste de requisitos: conceitos básicos; casos de teste; cenários; derivação de casos de teste de casos de uso;
4.3.Rastreabilidade de requisitos: o papel da rastreabilidade no desenvolvimento de sistemas; a relação de rastreabilidade; modelo generalizado de rastreabilidade; ferramentas para apoiar a rastreabilidade;
5. Gestão de requisitos
5.1.Gestão da alteração de requisitos: o porquê da mudança; requisitos estáveis e voláteis; processos para gerir alterações; gestão de configurações de requisitos; ferramentas para gestão de requisitos;
5.2.Qualidade de requisitos: qualidade do projecto; avaliação da qualidade; checklists para garantia de qualidade.
Bibliografia Obrigatória
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
Bibliografia Complementar
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
Métodos de ensino e atividades de aprendizagem
Ensino orientado ao projecto.
Os alunos dividem-se em grupos que levarão a cabo 1 projecto abrangendo todas as fases de um processo de engenharia de requisitos.
A aulas teóricas fornecem a base conceptual, teórica e metodológica para a realização dos projectos.
Tipo de avaliação
Avaliação distribuída sem exame final
Componentes de Avaliação
Descrição |
Tipo |
Tempo (Horas) |
Peso (%) |
Data Conclusão |
Participação presencial (estimativa) |
Participação presencial |
39,00 |
|
|
Projeto do semestre (grupo) |
Trabalho laboratorial |
52,00 |
|
2011-06-03 |
Ensaio sobre ER (individual) |
Trabalho escrito |
35,00 |
|
2011-06-17 |
Análise e discussão de artigos científicos (grupo) |
Trabalho escrito |
16,00 |
|
|
|
Total: |
- |
0,00 |
|
Componentes de Ocupação
Descrição |
Tipo |
Tempo (Horas) |
Data Conclusão |
Estudo e leituras para as aulas |
Estudo autónomo |
20 |
|
|
Total: |
20,00 |
|
Obtenção de frequência
Nota mínima de 40% em qualquer das componentes de avaliação
Fórmula de cálculo da classificação final
40% - PS - Projecto de grupo
40% - EI - Ensaio individual
20% - AG - Análise e discussão de um artigo (grupo)
Melhoria de classificação
É possível melhorar o ensaio individual (EI).
As componentes de projecto (PS) e análise de artigos AG podem ser melhoradas na próxima ocorrência da Unidade Curricular.