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
Agenda
 A iniciativa ProjectIT
 ProjectIT-Studio
 ProjectIT-Requirements
 ProjectIT-RSL
 ProjectIT-Studio/Requirements
6 Março 2008
GSI/INESC-ID
2
ProjectIT (1/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
6 Março 2008
GSI/INESC-ID
3
ProjectIT (2/3)
 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”
6 Março 2008
GSI/INESC-ID
4
ProjectIT (3/3)
6 Março 2008
GSI/INESC-ID
5
ProjectIT-Studio
 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)
6 Março 2008
GSI/INESC-ID
6
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
7
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
8
ProjectIT-RSL (1/2)
 Meta-modelo:
 Análise de documentos de requisitos:
 Estrutura e formato
 Foco em sistemas interactivos
Type
Property
 Identificação de padrões linguísticos
specializes
performs operation
Primitive Type
 A estrutura declarativa:
Entity
relates with
Actor
Operation
 Descreve o que o sistema deve fazer
Action
Activity
 Perspectiva operacional
 Estrutura:
 O agente realiza uma operação que modifica a entidade
 Enriquecimento com condições
6 Março 2008
GSI/INESC-ID
9
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
10
ProjectIT-Studio/Requirements (1/2)
PIT-RSL Internal
«framework»
Jena .NET Port
PIT-RSL Multiv iew
«import»
PIT-RSL Text Editor
«adapter»
RSL-to-RDF/OWL
Proj ectIT-Studio/Requirements Plugin
«import»
PIT-RSL Parsers
«import»
6 Março 2008
GSI/INESC-ID
«framework»
CSTools
11
ProjectIT-Studio/Requirements (2/2)
6 Março 2008
GSI/INESC-ID
12
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
13
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
14
Questões
Obrigado pela vossa atenção!
 Contactos:
 Prof. Alberto Silva:
 [email protected]
 David Ferreira:
 [email protected]
 João Saraiva:
 [email protected]
6 Março 2008
GSI/INESC-ID
15
Download

ProjectIT-Studio/Requirements