Análise e Conc epç ão de Sist em as de Inform aç ão )HUUDPHQWDVGH(QJ GH5HTXLVLWRV Carla Ferreira carla.ferreira@dei.ist.utl.pt Ferramentas Genéricas Ferramentas Especializadas Ferramenta (lider de mercado) Ferramenta Enterprise Architect (aulas de lab) 1
Ferramentas de Suporte à Engªde Requisitos Ferramentas genéricas Processadores de texto Bases de dados Folhas de cálculo Ferramentas especializadas RequisitePro CaliberRM... Ferramentas Genéricas Processadores de Texto Vantagens Requisitos guardados num mesmo local Os requisitos podem ser acedidos por qualquer stakeholder que tenha o processador de texto usado Fácil de produzir o documento com a definição dos requisitos Desvantagens Dependências entre requisitos tem que ser mantida externamente Capacidades de procura limitadas Não é possível ter controlo de versões para requisitos individuais Não permite a nevegação automática entre requisitos É difícil manter os documentos actualizados e sincronizados 2
Ferramentas Genéricas Bases de Dados Cada requisito é representado por uma ou mais entidades da base de dados Boas capacidades de procura (através de SQL) Vantagens Bom suporte à navegação entre requisitos Suporte à gestão de alterações e gestão de versões Desvantagens Alguns stakeholders podem não ter conhecimentos de software suficientes para aceder à base de dados Manter a ligação entre a base de dados e o documento de requisitos Funcionalidades *HVWmRGHYHUV}HVHGHDOWHUDo}HV Permitir alocar um conjunto de requisitos a uma versão específica do sistema Permitir manter o historial das alteraçoes realizadas a cada requisito, incluindo uma justificação para cada dessas alterações &ULDomRGHDWULEXWRV Suportar a criação de atributos descritivos para cada requisito Garantir que apenas os stakeholders autorizados podem alterar os valores dos atributos dos requisitos Geração automática definidos pelo sistema, tal como, data de criação do requisito, número da versão actual, etc. 7UDFNLQJ GRHVWDGRGRVUHTXLVLWRV Suportar o tracking do estado dos requisitos durante o processo de desenvolvimento Permite determinar a percentagem de requisitos implementados, verificados, etc. 3
Funcionalidades &RQWURORGHDFHVVR Permitir definir permissões de acesso para individuos ou grupos de utilizadores Suportar a partilha de informação para equipas dispersas geograficamente através de uma interface Web Permitir que vários utilizadores actualizem os requisitos concurrentemente &RPXQLFDomRFRPRVVWDNHKROGHUV Discussão online entre stakeholders Suportar o envio automático de emails para notificar inicio de discussão ou alteração de requisitos especificos Acesso online aos requisitos 5HXWLOL]DomRGHUHTXLVLWRV Requisitos que pertencem logicamente a várias partes de um sistema podem ser definidos uma única vez e depois podem ser referênciados sempre que necessário Funcionalidades 5DVWUHDELOLGDGH Permitir definir ligações entre diferentes requisitos Permitir definir ligações entre requisitos e componentes do sistema, i.e., diagramas de desenho, modulos de código, testes, etc Facilita a análise do impacto gerado por alterações a um ou vários requisitos: É possível identificar os elementos do sistema que serão afectados pela alteração 4
,QWHJUDomR Funcionalidades Integração Requisitos definidos no 5HTXLVLWH3UR podem ser ligados a casos de uso do Rational Rose casos de teste do Rational TeamTest '2256 permite associar requirementos a modelos definidos em Rational Rose, Telelogic Tau e outras ferramentas de modelação 5HTXLVLWH3UR e '2256 permitem ligar requisitos individuais a tarefas de um projecto do Microsoft Project. &DOLEHU50 permite ligar requisitos: a modelos (casos de uso, diagramas de classes, etc) definidos em TogetherSoft Control Center código fonte da Borland StarTeam elementos de teste do Mercury Interactive's TestDirector 5
Como escolher uma ferrramenta (1/2) Identificar as caracteristicas mais importantes da ferramenta de acordo com os projectos usuais da empresa: Integração com outras ferramentas Acesso através da Web aos requisitos Listar 10 a 15 factores que irão influenciar a decisão, tal como: Eficiência Interface com o utilizador Distribuir 100 pontos entre os factores de seleção, atribuindo maior pontuação aos factores considerados mais importantes Com base em informação actualizada sobre as várias ferramentas classificar as ferramentas usando os factores definidos nos dois pontos acima Alguns factores não podem ser avaliados com base nos demos e docs disponíveis Como escolher uma ferrramenta (2/2) Calcular a classificação para cada ferramenta e com base nesse valor ordenar a lista de ferramentas Obter cópias de avaliação das ferramentas melhor classificadas Avaliar as ferramentas num projecto real e ajustar a lista de classificação Para decidir, combinar os seguintes factores: lista de classificação, os custos da licença e manutenção fornecidos quer pelo vendedor quer indicados por outros utilizadores Opinião dos vários elementos da equipa que avaliaram cada ferramenta 6
5HTXLVLWH3UR (Rational, www.rational.com) Orientada à engenharia de software Integração com as várias ferramentas da Rational suite Interface orientada aos documentos Mais adequado para sistemas pequenos ou médios Cada projecto contém uma base de dados de requisitos para além de documentos associados aos requisitos O controlo de versões permite consultar a evolução dos requisitos Diferentes vistas (gráficos, tabelas, árvores) podem ser usadas para apresentar informação do projecto Integrado com o MS Word e o MS Project RequisitePro Suporta a rastreabilidade de requisitos 7
CaliberRM (borland, www.borland.com) Orientada ao desenvolvimento de aplicações de comércio electrónico Bom interface com o utilizador Active! Focus (Xapware Technologies, www.xapware.com) C.A.R.E. (SOPHIST Group, www.sophist.de) RMTrak (RBC Inc., www2.eds.com) '2256 (Telelogic, www.telelogic.com) Orientada a todos os domínios da engª de requisitos (medicina, telecom, software, ) Lider de mercado: considerada a ferramenta standard para engª de requisitos Interface com várias ferramentas É considerada por muitos uma das ferramentas mais fracas a nível de interface com o utilizador 8
Editar requisitos Directamente na ferramenta, Microsoft Word, Excel, PowerPoint, and Outlook Plain (ASCII) text Rich Text Format (RTF) FrameMaker Interleaf Gerir requisitos Durante todo o processo de desenvolvimento usando um conjunto de funcionalidades Views Links Análise de rastreabilidade Trabalho colaborativo 9
Organização Projects É um folder especial que contém todo a informação do projecto Folders Usados para organizar os módulos Modules A informação é armazenada na base de dados por módulos Projecto - Sports utility vehicle 4x2 10
column object Objectos Podem incluir: Figuras Símbolos URLs Objectos OLE (Word, Excel, etc) Tabelas Diagramas UML2 11
Atributos (do sistema) - modules Atributos (do sistema) - objects 12
Dependências entre objectos - links,psdfwdqdo\vlvrxwolqnv Objectos que serão afectados caso se altere o modulo actual 7UDFHDELOLW\DQDO\VLVLQOLQNV Objectos que afectam o módulo actual caso sejam alterados Baseline Versão read-only de um módulo Captura toda a informação de módulo num determinado instante de tempo Criação, remoção e alteração: atributos e tipos (desde a criação da baseline anterior) objectos (desde a criação da baseline anterior) Informação sobre todos os acessos ao módulo (desde a criação do módulo) 13
Gestão de alterações Historial de alterações 14
Comparar baselines (versões) Importar e exportar ficheiros Importar Ficheiros Microsoft Word Ficheiros texto Ficheiros RTF Ficheiros Microsoft Project Ficheiros FrameMaker Ficheiros Interleaf files Exportar Ficheiros Microsoft Word Ficheiros Microsoft Excel Ficheiros Microsoft Outlook Ficheiros Microsoft PowerPoint Ficheiros HTML Ficheiros texto Ficheiros RTF Ficheiros Microsoft Project Ficheiros FrameMaker Ficheiros Interleaf files 15
Enterprise Architect Ferramenta para modelação UML de sistemas Não é uma ferramenta especializada para requisitos Enterprise Architect Vantagens e desvantagens... 16