A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

ProjectIT-RSL INESC-ID/Grupo de Sistemas de Informação David Ferreira n.º 49318 Orientador: Prof. Alberto Silva Co-orientador: Prof. Carlos Videira.

Apresentações semelhantes


Apresentação em tema: "ProjectIT-RSL INESC-ID/Grupo de Sistemas de Informação David Ferreira n.º 49318 Orientador: Prof. Alberto Silva Co-orientador: Prof. Carlos Videira."— Transcrição da apresentação:

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


Carregar ppt "ProjectIT-RSL INESC-ID/Grupo de Sistemas de Informação David Ferreira n.º 49318 Orientador: Prof. Alberto Silva Co-orientador: Prof. Carlos Videira."

Apresentações semelhantes


Anúncios Google