Especificação de Requisitos em PIT-RSL
Captura de Modelos de Requisitos com o ProjectIT-Studio
Seminário “Sistemas e Tecnologias de Informação”Instituto Politécnico de Viana do Castelo,
Escola Superior de Tecnologia e Gestão
David Ferreira
6 Março 2008 GSI/INESC-ID 2
A iniciativa ProjectIT
ProjectIT-Studio
ProjectIT-Requirements
ProjectIT-RSL
ProjectIT-Studio/Requirements
Agenda
6 Março 2008 GSI/INESC-ID 3
Programa de investigação do Grupo de Sistemas de Informação (GSI) do INESC-ID
Análise, integração e suporte das boas práticas
na gestão e implementação de projectos de TI
A motivação: “Como melhorar a qualidade e produtividade dos projectos de TI?”
Tecnologia: Desenvolvido com a .NET Framework
ProjectIT (1/3)
6 Março 2008 GSI/INESC-ID 4
Suite de desenvolvimento de software: Gestão de Projectos
Cobertura de todo o ciclo-de-vida: Engenharia de Requisitos
Análise e Concepção
Geração Automática de Código
ProjectIT-Requirements: Especificação interactiva de sistemas
LN + rigor = qualidade, reutilização e rastreio
Visão → “ferramenta para escrever docs de requisitos”
ProjectIT (2/3)
6 Março 2008 GSI/INESC-ID 5
ProjectIT (3/3)
6 Março 2008 GSI/INESC-ID 6
A ferramenta CASE do ProjectIT
Concebida para aumentar a produtividade
Componentes principais:
ProjectIT-Studio/Requirements
Especificação de Requisitos (RE)
ProjectIT-Studio/MDD
Desenvolvimento Orientado por Modelos (MDD)
ProjectIT-Studio
6 Março 2008 GSI/INESC-ID 7
ProjectIT-Requirements
Evidências: A detecção antecipada de problemas de SW → reduzir custos O processo de desenv. de SW inicia-se com o levantamento de requisitos
Solução proposta: Linguagem natural controlada baseada em padrões linguísticos Ferramenta IDE/CASE de suporte para validação das especificações
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
6 Março 2008 GSI/INESC-ID 8
Linguagem
Requisitos: descritos com uma linguagem de especificação Deve reflectir as necessidades reais dos stakeholders do sistema
Deve facilitar a comunicação entre os participantes do processo O maior desafio a superar ↔ o distanciamento conceptual
Aproximações: Linguagens Formais: conceitos matemáticos e lógicos → notação formal
Linguagens Não-Formais: variantes de LN e modelação visual
Solução encontrada: Combinar LN com rigor formal → linguagem natural controlada
Subconjunto de termos e de construções sintácticas Contextos semânticos restritos (domínios) → suporte computacional
6 Março 2008 GSI/INESC-ID 9
ProjectIT-RSL (1/2)
Meta-modelo: Análise de documentos de requisitos:
Estrutura e formato
Foco em sistemas interactivos
Identificação de padrões linguísticos
A estrutura declarativa: Descreve o que o sistema deve fazer
Perspectiva operacional
Estrutura: O agente realiza uma operação que modifica a entidade
Enriquecimento com condições
Type Property
EntityPrimitive Type Actor
Action Activity
Operationrelates with
specializes
performs operation
6 Março 2008 GSI/INESC-ID 10
ProjectIT-RSL (2/2)
Regras de organização: Pacote
Documento Instância (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
6 Março 2008 GSI/INESC-ID 11
ProjectIT-Studio/Requirements (1/2)
ProjectIT-Studio/Requirements Plugin
PIT-RSL Parsers «framework»CSTools
«adapter»RSL-to-RDF/OWL
«framework»Jena .NET Port
PIT-RSL Multiv iew
PIT-RSL Text Editor
PIT-RSL Internal
«import»
«import»
«import»
6 Março 2008 GSI/INESC-ID 12
ProjectIT-Studio/Requirements (2/2)
6 Março 2008 GSI/INESC-ID 13
Conclusões (1/2)
Linguagem suportada por um meta-modelo: Meta-Modelo → análise dos padrões linguísticos mais usuais
Facilidade de aprendizagem → stakeholders não técnicos
Regras Template Substituição (TS): Suporte computacional → vocabulário e construções sintácticas restritas
Específicas de domínio (DSL) → evolução incremental + diferentes estilos
Técnicas de parsing e extracção de conhecimento: Mecanismos flexíveis e robustos → validação on-the-fly
Mecanismo de extensão e motor de inferência
6 Março 2008 GSI/INESC-ID 14
Conclusões (2/2)
Ferramenta IDE/CASE: Feedback visual multi-perspectiva → evitar erros de especificação
Promover as boas práticas de redacção de docs de requisitos
Ênfase na reutilização: Templates arquitecturais e aplicacionais
Integração com ferramentas MDD: Modelação e geração automática de código
Trabalho Futuro: Deduzir as especificações de requisitos com base nos objectivos de negócio
Requisitos executáveis → prototipagem on-the-fly
6 Março 2008 GSI/INESC-ID 15
Obrigado pela vossa atenção!
Contactos: Prof. Alberto Silva:
David Ferreira: [email protected]
João Saraiva: [email protected]
GSI/INESC-ID 15
Questões