Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouMartín Cabreira Monsanto Alterado mais de 8 anos atrás
1
ProjectIT-RSL INESC-ID/Grupo de Sistemas de Informação David Ferreira n.º 49318 Orientador: Prof. Alberto Silva Co-orientador: Prof. Carlos Videira
2
David Ferreira Outubro de 2006 Motivação Apesar das semelhanças com outras engenharias... O Processo de Desenvolvimento de Software... continua a apresentar sérios problemas que afectam o seu sucesso Principal causa do insucesso dos projectos das TI: Não adopção das melhores práticas preconizadas pela Engenharia de Software Atendendo a que... A detecção dos problemas nas fases iniciais reduz drasticamente os custos O processo inicia-se frequentemente com o levantamento dos requisitos A nossa proposta... Linguagem controlada de especificação de requisitos baseada em padrões Ferramenta de suporte para validação sintáctica e semântica da linguagem
3
David Ferreira Outubro de 2006 Contexto Engenharia de Requisitos: Especificar o comportamento do sistema → crucial para o sucesso Objectivo: minimizar as características indesejadas da LN Inadequação, inconsistência, incompletude e ambiguidade Cronologia: 2004: ProjectIT + ProjectIT-Requirements + ProjectIT-RSL 2005: Protótipo + ProjectIT-Studio (Eclipse.NET) 2006: ProjectIT-Requirements → plugin Eclipse.NET ProjectIT-Requirements: Inserido num contexto mais amplo → ProjectIT Integração com ferramentas MDD → cobertura de todo o ciclo-de-vida
4
David Ferreira Outubro de 2006 Linguagem Requisitos: descritos com uma linguagem de especificação Têm de reflectir as necessidades dos stakeholders Facilitar a comunicação dos intervenientes: Desafio mais difícil de superar ↔ distanciamento conceptual “Um requisito é uma declaração acerca de um serviço ou restrição do sistema” Kotonya Abordagens: Linguagens formais: conceitos lógicos e matemáticos → notação formal Linguagens não formais: variantes de LN ou técnicas de modelação Solução proposta: Combinar os benefícios da LN com o rigor → linguagem natural controlada Subconjunto de vocábulos e estruturas sintácticas Semântica restrita a contextos específicos (domínios) → suporte por ferramentas
5
David Ferreira Outubro de 2006 ProjectIT Projecto académico Resultado da experiência prática Ambiente de desenvolvimento: Gestão de projecto Cobertura de todo o ciclo-de-vida: Engenharia de requisitos Análise e desenho Geração automática de código ProjectIT-Requirements: Especificação de sistemas interactivos LN + rigor: qualidade, reutilização, rastreabilidade Visão: ferramenta para escrever documentos de requisitos
6
David Ferreira Outubro de 2006 ProjectIT-RSL (1/4) Meta-modelo: Análise de documentos de requisitos: Estrutura e formato Enfoque em sistemas interactivos Identificação de padrões linguísticos A frase/declaração: Descreve o que o sistema deve fazer Perspectiva operacional Estrutura: O agente realiza uma operação que afecta um objecto Enriquecimento com condições/restrições TypeProperty EntityPrimitive TypeActor ActionActivity Operation relates with specializes performs operation
7
David Ferreira Outubro de 2006 ProjectIT-RSL (2/4) Estrutura: Pacote Documento Especificação (develop-by-reuse) Template (develop-for-reuse) Sistema Secção Introdução Comentário Entidades de Negócio Requisitos Funcionais Requisitos Não-Funcionais Requisito Conceitos suportados pelos padrões linguísticos: Declaração, definição, herança simples, equivalência Propriedades, quantificadores, associação e classe associação
8
David Ferreira Outubro de 2006 ProjectIT-RSL (3/4)
9
David Ferreira Outubro de 2006 ProjectIT-RSL (4/4) Template Substitution (TS) rules: Suporte de ferramentas → vocabulário e construções sintácticas restringidas Específicas de domínio (DSL) → evolução incremental + diferentes estilos Exemplo: “A client is an entity and has a name, and an address, and an account” RULETEMPLATESUBSTITUTION TS 1 new_entity/PROP IS ENTITY$NODE/ENT TS 2 new_entity/ENT HAS list/LIST$NODE/ENT TS 3 noun/NN$NODE/PROP TS 4 prop1/PROP AND prop2/PROP$NODE/LIST TS 5 list/LIST AND prop/PROP$NODE/LIST
10
David Ferreira Outubro de 2006 ProjectIT-Requirements (1/5)
11
David Ferreira Outubro de 2006 ProjectIT-Requirements (2/5) Demonstração
12
David Ferreira Outubro de 2006 ProjectIT-Requirements (3/5)
13
David Ferreira Outubro de 2006 ProjectIT-Requirements (4/5) Processo de parsing: Transformações: Tipográficas Formatação Morfológicas Modos de parsing: Batch mode Incremental mode Pipeline de error reporting: 3 etapas Inferência: Extrair conhecimento implícito
14
David Ferreira Outubro de 2006 ProjectIT-Requirements (5/5)
15
David Ferreira Outubro de 2006 Análise Comparativa
16
David Ferreira Outubro de 2006 Trabalho Futuro Curto Prazo: Mecanismo de reutilização → override e edit points Definição de uma linguagem procedimental → operações Geração automática das regras com base no meta-modelo Mecanismos de parsing → aproximações determinísticas vs. heurísticas Enriquecimento visual das vistas → vários formatos e melhor interactividade Explorar os mecanismos oferecidos pelo motor de inferência Longo Prazo: Derivação da especificação dos requisitos com base em objectivos de negócio Requisitos executáveis → prototipagem on-the-fly
17
David Ferreira Outubro de 2006 Resultados Língua natural controlada, suportada por um meta-modelo: Meta-modelo → análise dos padrões linguísticos mais frequentes Curva de aprendizagem pouco acentuada → stakeholders não técnicos Mecanismo de extensibilidade baseado em regras Ferramenta CASE de suporte: Feedback visual com base em múltiplas vistas → evitar erros de especificação Preconiza as melhores práticas de elaboração de documentos de requisitos Integração com ferramentas MDD → modelação e geração automática de código Divulgação científica: Submissão de artigos para conferências de renome → 4 artigos aceites Apresentação de 3 dos artigos: CISTI’06, EUROMICRO’06, ICSOFT’06
18
David Ferreira Outubro de 2006 Questões
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.