Ferramentas CASE (do inglês Computer-Aided Software Engineering) é uma classificação que abrange todas as ferramentas baseadas em computadores que auxiliam atividades de engenharia de software, desde análise de requisitos e modelagem até programação e testes. Podem ser consideradas como ferramentas automatizadas que tem como objetivo auxiliar o desenvolvedor de sistemas em uma ou várias etapas do ciclo de vida do desenvolvimento de um software.
Categorização Não há um padrão definido para a categorização das CASE, no entanto os termos abaixo são os que melhor o identificam.
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.
Os ambientes de desenvolvimento integrado (IDEs) têm maior destaque e suportam:
Editor Compilador Debug Geração de código Ferramentas de modelagem Deploy Testes automatizados Yrla Refatoração
Classificação Controle de Versão CVS, Subversion, Git, Mercurial, Bazaar, StarTeam Borland, Rational Clearcase, entre outros. Gerência de projetos Microsoft Project, dotProject, Xplanner, Google Code Edição Microsoft Word, JBuilder, Wiki, Open Office, Eclipse, NetBeans, Rational Rose, Astah, ArgoUML, Star UML Ferramentas de prototipagem Adobe PageMaker, NetBeans, JBuilder, Delphi,Visual Basic, Lazarus Suporte a programação Compiladores - JDKBanco de Dados – Oracle, MySQL, PostgreSQLTeste - JUnitAutomação de tarefas - Apache Ant, Apache Maven
Análise de programas Analisadores estáticos - HPROF Teste JUnit (unitários)
Depuração Sistemas interativos de depuração Geração de código Transformica, Unitech CodeFSW, JEE Spider Documentação Editores de texto (Ex: Microsoft Word, OpenOffice)Geradores de documentos (Ex: Javadoc)Editores de texto colaborativo (Ex: wiki)
Reengenharia Sistemas de reestruturação de programas Ferramentas Integradas Agrupam diversas funcionalidades Ferramentas de Métricas Costar, USC-COCOMO, Calico
Ferramentas de Planejamento Foundation Objetivos Melhoria da qualidade de software Aumento da produtividade no processo de software
Vantagens do uso de ferramentas CASE Qualidade no produto final Produtividade Agilizar o tempo para tomada de decisão Menor quantidade de códigos de programação Melhoria e redução de custos na manutenção Agilidade no retrabalho do software Maior facilidade para desenvolvimento
Desvantagens do uso de ferramentas CASE Incompatibilidade de ferramentas Formação para utilização
Seleção e avaliação de ferramentas CASE Avaliação Processos nos quais vários aspectos de uma ferramenta CASE são medidos, considerando-se critérios definidos. Os resultados são armazenados para uso posterior. Avaliar ferramentas CASE é muito mais que simplesmente comparar preços e condições de pagamento.
Se não há familiaridade com nenhuma é preciso definir e estudar essa metodologia antes mesmo de comprar ferramentas.Uma forma bastante comum para o processo de avaliação é a utilização de questionários que buscam abranger todas as características de ferramentas CASE.
Seleção 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.
A proposta do processo de seleção é identificar a ferramenta CASE mais adequada entre as candidatas e certificar-se que a ferramenta recomendada atende aos requisitos originais dos usuários.
Pode iniciar quando os relatórios de avaliação estiverem concluídos. Um algoritmo de seleção deve ser definido e aplicado aos resultados da avaliação.
Norma ISO/IEC 14102 Esta norma trata da seleção e avaliação de ferramentas CASE, e cobre parcial ou todo o ciclo de vida da engenharia de software. Estabelece processos e atividades a serem aplicadas na avaliação de ferramentas e na seleção da ferramenta mais apropriada dentre diversas candidatas. Estes processos são genéricos e as organizações devem adaptá-los de acordo com suas necessidades.
Ver também Modelagem de dados Banco de Dados Arquitetura de dados Administração de dados
Ligações externas Xcase da RESolution Silverrun da Grandite Open ModelSphere - Ferramenta livre Astah Community Star UML Ferramentas CASE Ferramentas CASE UML Ágeis Ferramentas CASE Luna Modeler
Referências WEINRICH, Jair e GRAHL, Everaldo, Software de apoio a avaliação e seleção de ferramentas case baseado na norma ISO/IEC 14102, Artigo SEMINCO 1999 FURB-Universidade Regional de Blumenau SILVA, Manoel e ROCHA, Thayssa, PROJETO DE UMA FERRAMENTA CASE UTILIZANDO A NOTAÇÃO DA UML E A METODOLOGIA DE COAD & YOURDON, 1998, CESUPA Belém do Pará.
Categoria:Engenharia de software