Este documento discute ferramentas computacionais para engenharia de software. Ele descreve como tais ferramentas podem melhorar a qualidade do software, automatizar tarefas e aumentar a produtividade. O documento também discute como selecionar a ferramenta adequada levando em conta fatores como custo, funcionalidade e aderência à metodologia da empresa.
Este documento discute ferramentas computacionais para engenharia de software. Ele descreve como tais ferramentas podem melhorar a qualidade do software, automatizar tarefas e aumentar a produtividade. O documento também discute como selecionar a ferramenta adequada levando em conta fatores como custo, funcionalidade e aderência à metodologia da empresa.
Este documento discute ferramentas computacionais para engenharia de software. Ele descreve como tais ferramentas podem melhorar a qualidade do software, automatizar tarefas e aumentar a produtividade. O documento também discute como selecionar a ferramenta adequada levando em conta fatores como custo, funcionalidade e aderência à metodologia da empresa.
Introdução “Ferramentas CASE (do inglês Computer- Aided Software Engineering) ◦ auxiliam atividades de engenharia de software, desde análise de requisitos e modelagem até programação e testes. ◦ oferecem um conjunto de serviços, fortemente relacionados, para apoiar uma ou mais atividades do processo de desenvolvimento de software e podem minimizar o tempo de desenvolvimento do programa, mantendo o alto nível de qualidade.” Objetivos Melhorar a qualidade do software; Automatizar tarefas repetitivas; Aumentar e agilizar a produtividade do processo de desenvolvimento de software; e Geração automática da documentação do sistema. Um dos componentes indispensáveis de uma ferramenta CASE é a modelagem visual, ou seja, a possibilidade de representar, através de modelos gráficos, o que está sendo definido. Vantagens Fazer a aplicação geral da engenharia de software; Tornar prática a prototipação, acelerando o desenvolvimento e sistemas junto aos usuários; Agilizar o processo de desenvolvimento; Deixar disponível o reuso de componentes do sistemas; Documentação do sistema gerado pela própria ferramenta; Necessidade de uma mudança de atitude profissional de desenvolvimento de sistemas e aprendizado de novas metodologias que as ferramentas utilizam; Permite a construção de novos sistemas que atendam a todos os processos; e Redução de custo da manutenção de sistemas. Desvantagens Incompatibilidadede ferramentas; e Treinamento para utilização. Categorização
Cada ferramenta tem propósitos diferentes, fornece
serviços diferentes, mas possuem algumas características em comum: ◦ Front End ou Upper CASE: apoia as etapas iniciais de criação dos sistemas: as fases de planejamento, análise e projeto do programa ou aplicação. ◦ Back End ou Lower CASE: dão apoio à parte física, isto é, a codificação, testes e manutenção da aplicação. ◦ I-CASE ou Integrated CASE: classifica os produtos que cobrem todo o ciclo de vida do software, desde os requisitos do sistema até o controle final da qualidade. Ferramentas Case Existentes Seleção da Ferramenta Case Processo nos quais os dados de uma ou mais avaliações de ferramentas são ponderados e comparados, considerando-se critérios definidos, para determinar se uma ou mais ferramentas podem ser recomendadas para a adoção.
Identificara ferramenta CASE mais adequada
entre as candidatas e certificar-se que a ferramenta recomendada atende aos requisitos originais dos usuários. Como escolher a Ferramenta Adequada?
Pesquisar no mercado sobre o preço e o tipo de licença;
Para qual finalidade será utilizada a ferramenta; Deve ser aderente ao conceitos usados pela pessoa ou empresa (análise estruturada ou orientação a objetos, por exemplo); Levar em consideração os custos e o tempo necessário para treinar as pessoas que utilizarão a ferramenta; Validar se a metodologia de desenvolvimento da empresa está “amadurecida”; Verificar se a ferramenta foi desenvolvida sobre uma arquitetura inteligente (customizável); Tem a opção de geração de relatórios para acompanhamento do trabalho; e Possui Interfaces com outros aplicativos de desenvolvimento. Atividade Ferramentas para Gerenciamento de Requisitos Gerenciamento de Projetos Análise e Projeto de Software Controle de Versão Modelagem de diagramas UML Referências IMENES, ELISON R. Seleção de Ferramentas Case. 2006 Monografia (Bacharelado em Ciência da Computação) – Curso de Ciência da Computação da Faculdade de Jaguariúna, Jaguariúna. PRESSMAN, R. S. Engenharia de Software. 6ª edição, McGraw-Hill Interamericana do Brasil, São Paulo, 2006. SOMMERVILLE, IAN. Engenharia de Software. 9. ed. São Paulo: Pearson Prentice Hall, 2011. 529 p.