Você está na página 1de 4

Objetivos Ferramentas CASE

Prof. Juliana Keiko Yamaguchi (DIN/UEM) fevereiro 2014 Material baseado a partir dos originais de Prof. Elisa Huzita (DIN/UEM) Prof Itana Gimenes (DIN/UEM) Prof Sarajane Peres (USP)

Apresentar os conceitos bsicos sobre a utilizao de ferramentas computacionais no processo de desenvolvimento de software O que so ferramentas CASE? Para que servem? Por que us-las? Quando us-las?

Introduo

Introduo
Engenharia de Software

Escrever programas profissional de software

Desenvolvimento

Tem por objetivo apoiar o desenvolvimento profissional de software Apresenta ao desenvolvedor:

Escrever programas

Um administrador de empresa pode escrever programas em planilhas eletrnicas para facilitar seu trabalho; Um engenheiro pode escrever programas para processar seus dados experimentais; Um cientista pode escrever um programa como hobby H um propsito especfico de negcio, em que o software desenvolvido como um produto.

Tcnicas de especificao, projeto, validao e evoluo de programas; Tcnicas software;

de

gerenciamento

de

projetos

de

Desenvolvimento profissional de software

Sistematizao das atividades de desenvolvimento


modelos de processos de software (cascata, iterativo e incremental, espiral, prototipao, RUP, XP, Scrum, etc.)

Ferramentas CASE
O que so?

Ferramentas CASE
Para que servem?
apoio ao

Utilizao de ferramentas desenvolvimento de software

de

CASE = Computer Aided Software Engeneering Engenharia de Software Auxiliada por Computador

Oferecem um conjunto de servios, fortemente relacionados, para apoiar uma ou mais atividades do processo de desenvolvimento de software Servios: ao efetuada pelo computador que de interesse do desenvolvedor:

Simples edies de texto Gerenciamento de configuraes Teste de software Verificaes formais

Ferramentas CASE
Para que servem?

Ferramentas CASE
Quando usar?

Apoiam gerentes e programadores em atividades associadas ao processo de software. Possibilitam automatizao das atividades de gerenciamento e de outros trabalhos que comumente so realizados manualmente. Apoiam trabalhos codificao e teste. de: anlise, projeto,

Embora existam diferentes processos de software, existem atividades comum a todos os processos (SOMMERVILLE, 2011)

Especificao: definio das restries em suas operaes

funcionalidades

Projeto e implementao: construo do software de acordo com a especificao Validao: para assegurar que o produto corresponde s necessidades do usurio Evoluo: amadurecimento do produto para novas necessidades do usurio

Podem ser integradas em um ambiente sofisticado Ambiente de desenvolvimento

Ferramentas CASE
Especificao, Documentao e Projeto

Ferramentas CASE
Implementao e Testes

Exemplos

Astah (antigo Jude) Modelagem utilizando UML Gliffy Modelagem utilizando UML (Online) DIA UML e fluxogramas

Ambiente de desenvolvimento integrado (Integrated Development Environment)

IDE

Eclipse Netbeans Visual Studio .NET Eric Python IDE Lazarus J-Unit, C-Unit (teste) CVS, Subversion, Git (controle de verso)

Visual Paradigm Modelagem utilizando UML

Case Studio Modelagem de dados (DER, DFD)

ERWin Modelagem de dados (DER)


Caractersticas gerais de uma IDE

Caractersticas gerais de uma IDE

Um editor de texto com facilidades especialmente desenhadas para a linguagem; Um compilador (e um interpretador, no caso de Java e outras linguagens interpretadas) ; Um editor grfico, com facilidades para criao e edio da interface grfica do programa a ser desenvolvido;

Gerador de cdigo direcionado mais gerao de templates de cdigo que so rotineiramente utilizados; Um debugger para monitorar o funcionamento do seu programa, facilitando a deteco e remoo dos erros.

Perceba que no estamos falando em erros de sintaxe, mas erros na prpria lgica do programa, que fazem seu programa gerar resultados indesejados ou travar (apesar de ele compilar), e que geralmente so difceis de se encontrar simplesmente analisando o cdigo.

Ferramentas CASE
Classificao

Ferramentas CASE
Classificao

Por que classificar?

As ferramentas CASE podem ser:

A classificao ajuda a compreender os diferentes tipos de ferramentas CASE e seus papis no suporte s atividades do processo de software.

Horizontais: oferecem servios utilizados durante todo o processo de software Verticais: utilizadas em fases especficas do processo de software

Ferramentas CASE
Classificao

Ferramentas CASE
Classificao

As ferramentas CASE podem ser:

Upper-case ou back-end: especialistas na fase de concepo do software (anlise, especificao e modelagem de requisitos) Lower-case ou front-end: especialistas na fase de implementao (ferramentas de desenho tcnico, de edio e compilao de cdigo e testes) I-case: tambm referenciadas como Integrated CASE, so destinadas a apoiar todo o ciclo de vida do software, desde os requisitos do sistema at o controle final da qualidade do produto gerado

Tambm podem ser classificadas de acordo com os servios que oferecem, dentre as quais, citamse:

Documentao e captura de requisitos Planejamento e gerenciamento de projetos Especificaes formais Anlise e projeto de software Projeto e desenvolvimento de interfaces grficas Programao Gerenciamento de Configurao Controle de Qualidade

Ferramentas CASE x Frameworks

Ferramentas CASE x Frameworks

Framework pode ser definido como um conjunto de classes (cdigos) organizadas atravs de uma arquitetura de software que possui uma metodologia de funcionamento. Aborda um determinado domnio de problema (por exemplo: persistncia de dados, criao de interfaces grficas, modelo MVC, criao de relatrios, etc.) Deve ser reutilizvel Deve ser fcil de usar (bem documentado) Deve ser eficiente

Ferramentas CASE so teis para apoiar todo o ciclo de processo de desenvolvimento e planejamento de um software ou ao menos uma parte Frameworks so teis para reaproveitar cdigos ou arquitetura de software que trazem uma soluo genrica para uma situao conhecida na fase de codificao do produto.

Consideraes finais

Referncias / Bibliografia

Ferramentas CASE so softwares que auxiliam no desenvolvimento de projetos de sistemas de software.

http://www.cin.ufpe.br/~phmb/ip/MaterialDeEnsino/IntroducaoAoEclipse/IntroducaoAoEclipse.htm http://www.batebyte.pr.gov.br/modules/conteudo/conteudo.php?conteudo=120

Automatiza processos

Elicitao de requisitos Documentao Projeto Implementao e testes

Apoia a produtividade