Escolar Documentos
Profissional Documentos
Cultura Documentos
Processo de Desenvolvimento
2
a definio de quem faz o que, quando e como, para atingir um certo alvo.
UML uma linguagem de modelagem, no uma metodologia. No se consegue fazer uma boa modelagem sem conhecer processos. Linguagem de modelagem + processo de desenvolvimento = mtodo (ou metodologia) de desenvolvimento.
Processo de Desenvolvimento
3
e elaborao
Planejamento,
Construo
Processo de Desenvolvimento
4
UML no depende de processo. Voc deve escolher o que for adequado ao seu projeto. Existem diversos modelos, e esse modelos so influenciados por alguns fatores como:
Tipo
de software que ser desenvolvido (realtime, sistema de informao, etc.) Escala (Um desenvolvedor, equipe pequena, etc.)
Processo de Desenvolvimento
5
Modelo em Cascata Modelo de Prototipagem Modelo Evolucionrio Desenvolvimento Baseado em Componentes Modelo de Mtodos formais Programao Extrema Processo Unificado
Processo em cascata
6
Processo em cascata
7
informal dos requisitos; No entendimento das necessidades dos usurios; Incapacidade de lidar com as mudanas de requisitos; Complexidade crescente e excessiva; Qualidade ruim; Testes insuficiente.
Processo Unificado
8
O processo unificado (PU) de desenvolvimento de software o conjunto de atividades necessrias para transformar requisitos do usurio em um sistema de software. fundamental na viso de que o avano de um projeto deve estar baseado na construo de artefatos de software, e no apenas em documentao.
Processo Unificado
9
Principais Caractersticas:
Dirigido
Descries
Centrado
O
na arquitetura.
documento viso, diagrama de componentes e implantao, diagrama de interao e diagrama de classes (modelo de dados) fornecem a perspectivas da arquitetura do software.
Iterativo
e incremental.
Processo Unificado
10
Outras caractersticas:
Gerenciamento
de requisitos; Arquitetura baseada em componentes; Organizao da especificao em modelos; Verificao constante da qualidade; Controle de mudana; Organiza o sistema com estrutura esttica e dinmica.
Elaborao
Requisitos em detalhes
Transio
Avaliao do software Verso de Produo
Concepo
Construo
Os Artefatos do PU
12
Artefato Interao Modelo Conceitual ou Documento Viso Diagrama de Caso de Uso Descrio de Caso de Uso Diagrama de Atividades Contratos para operaes Glossrio Diagrama de Classes e Seqncia Diagrama de Colaborao Diagrama de Pacotes Documento de Arquitetura do Software Cdigo Fonte
Transio
Anlise
Implementao
P
P = produzir
R
R = revisar
Os Artefatos do PU
13
Artefato Interao Modelo Conceitual ou Documento Viso Diagrama de Caso de Uso Descrio de Caso de Uso Diagrama de Atividades Contratos para operaes Glossrio Diagrama de Classes e Seqncia Diagrama de Colaborao Diagrama de Pacotes Documento de Arquitetura do Software Cdigo Fonte
Transio
Anlise
Implementao
P
P = produzir
R
R = revisar
Um caso de uso uma seqncia de aes, executadas por um ou mais atores e pelo prprio sistema, que produz um ou mais resultados de valor para um ou mais atores. O PU dirigido por casos de uso, pois utilizaos para dirigir todo o trabalho de desenvolvimento, desde a captao inicial e negociao dos requisitos at a aceitao do cdigo (testes).
requisitos funcionais so preferencialmente por meio deles; Eles ajudam a planejar as iteraes; Eles podem conduzir o projeto; O teste baseado neles.
registrados
Desenvolvimento Iterativo
16
O desenvolvimento de um software dividido em vrios ciclos de iterao, cada qual produzindo um sistema testado, integrado e executvel. Em cada ciclo ocorrem as atividades de anlise de requisitos, projeto, implementao e teste, bem como a integrao dos artefatos produzidos com os artefatos j existentes.
Desenvolvimento Iterativo
17
Planejar quantos ciclos de desenvolvimento sero necessrios para alcanar os objetivos do sistema. As partes mais importantes devem ser priorizadas e alocadas nos primeiros ciclos.
A
primeira iterao estabelece os principais riscos e o escopo inicial do projeto, de acordo com a funcionalidade principal do sistema. Partes mais complexas do sistema devem ser atacadas j no primeiro ciclo, pois so elas que apresentam maior risco de inviabilizar o projeto.
Desenvolvimento Iterativo
18
O tamanho de cada ciclo pode variar de uma empresa para outra e conforme o tamanho do sistema.
Por
exemplo, uma empresa pode desejar ciclos de 4 semanas, outra pode preferir 3 meses. Produtos entregues em um ciclo podem ser colocados imediatamente em operao, mas podem vir a ser substitudos por outros produtos mais complexos em ciclos posteriores.
Atividades
19
Processos do PU
20
Descreve as seqncias das atividades que produzem algum resultado significativo e mostra as interaes entre os participantes So realizadas a qualquer momento durante o ciclo de desenvolvimento (Fases do PU) Ex.:
Requisitos,
Teste
Processos do PU
21
de Negcio
e Projeto Implementao Teste Implantao Gesto de Configurao e Mudanas Gerenciamento de projeto Ambiente
Construo;
Transio.
Estabelece-se a viabilidade de implantao do sistema. Definio do escopo do sistema. Estimativas de custos e cronograma. Identificao dos potenciais riscos que devem ser gerenciados ao longo do projeto. Esboo da arquitetura do sistema, que servir como alicerce para a sua construo.
dos requisitos funcionais; detalhamento da arquitetura criada na fase anterior; gerenciamento contnuo dos riscos envolvidos.
Estimativas realistas feitas nesta fase permitem um plano para orientar a construo do sistema.
O sistema efetivamente desenvolvido e, em geral, tem condies de ser operado, mesmo que em ambiente de teste, pelos clientes.
O sistema entregue ao cliente para uso em produo. Testes so realizados e um ou mais incrementos do sistema so implantados. Defeitos so corrigidos, se necessrio.
Trabalhadores
27
Trabalhadores: Um trabalhador algum que desempenha um papel e responsvel pela realizao de atividades para produzir ou modificar um artefato. Exemplos: analista de sistemas, programador, testador, etc.
Processos do PU
28
Avaliando-se as fases do PU, pode-se ter a impresso de que cada ciclo de iterao comporta-se como o modelo em cascata. Mas isso no verdade: paralelamente s fases do PU, as atividades de trabalho, denominados Processos do PU, so realizadas a qualquer momento durante o ciclo de desenvolvimento. Processos do PU entrecortam todas as fases do PU, podendo ter maior nfase durante certas fases e menor nfase em outras, mas podendo ocorrer em qualquer uma delas.
Processos do PU
29
Requisitos
Testes
Anlise
Implementao
Projeto
Processo Unificado
30
Os Artefatos do PU
31
Cada uma das disciplinas do PU pode gerar um ou mais artefatos, que devem ser controlados e administrados corretamente durante o desenvolvimento do sistema. Artefatos so quaisquer dos documentos produzidos durante o desenvolvimento, tais como modelos, diagramas, documentos de especificao de requisitos, cdigo fonte ou executvel, planos de teste, etc. Muitos dos artefatos so opcionais, produzidos de acordo com as necessidades especficas de cada projeto.
Os Artefatos do PU
32
Artefato Interao Modelo Conceitual ou Documento Viso Diagrama de Caso de Uso Descrio de Caso de Uso Diagrama de Atividades Contratos para operaes Glossrio Diagrama de Classes e Seqncia Diagrama de Colaborao Diagrama de Pacotes Documento de Arquitetura do Software Cdigo Fonte
Transio
Anlise
Implementao
P
P = produzir
R
R = revisar
Ferramentas
33
O que so Ferramentas CASE? A sigla CASE significa Computer-Aided Software Engineering. Traduzindo para um bom portugus: Engenharia de Software Auxiliada por Computador.
Ferramentas
34
1.
2.
3.
As ferramentas se dividem em trs categorias. So elas: Lower CASE - ferramentas de codificao (front-end); Upper CASE - ferramentas de anlise, projeto e implementao; Integrated CASE - unio de Upper e Lower CASE.
Ferramentas
35
Como escolher a ferramenta? O primeiro passo saber qual ser o uso da ferramenta na sua empresa. Isto , ferramenta para codificao ou ferramenta para anlise. Outro fator importante que a ferramenta deve ser aderente ao conceitos de trabalho na sua empresa.Como estes conceitos e tcnicas evoluem no tempo.
Ferramentas
36
para
escolha
da
2.
3.
O time de desenvolvimento est preparado tecnicamente para trabalhar com ferramentas case? Preciso capacitar os recursos humanos de minha empresa? A metodologia de desenvolvimento em minha empresa est amadurecida?
Ferramentas
37
Na prtica, as ferramentas existentes no mercado possuem as caractersticas das quais destacamse os seguintes pontos:
Desenvolvidas sobre uma arquitetura inteligente (customizvel); Possuem "facilitadores" para auxiliar nas tarefas repetitivas; Verificao da consistncia atravs de regras especficas; Gerao de relatrios para acompanhamento do trabalho; Interfaces com outros aplicativos de desenvolvimento.
Ferramentas
38
Uma ferramenta CASE no a soluo para todos os problemas da organizao. A organizao deve ter certeza de estar pronta para a nova ferramenta. Desta forma uma ferramenta s deveria ser selecionada aps a definio do processo de desenvolvimento, dos mtodos e de ter sido utilizada num projeto piloto. (Reid).
Ferramentas
39
($ 1,599,00) Together Architect ( $ 11.500,00) Poseidon ($ 875,00 ) Enterprise Architect ($ 2.500,00) Rose Technical Developer ($6,880.00) Jude/Astah ($280,00 1usurio/1ano) Omondo Eclipse UML ($ 84,900.00 / 20 usurios) Visual Paradigm ($ 699)
Fonte: http://www.objectsbydesign.com/tools/umltools_byPrice.html
Ferramentas
40
BOUML
Fajuba StarUML
41
Dia um programa baseado em gtk+ para criao do diagrama, liberado sob a licena GPL. parte do projeto Gnome. Atualmente tem objetos especiais de lgica, entidade e relacionamento, diagramas UML, fluxogramas, diagramas da rede, e circuitos simples entre outros.
ArgoUML
42
ArgoUML uma ferramenta CASE baseada na notao UML (Unified Modeling Language). Foi desenvolvido pela comunidade de desenvolvedores de cdigo livre Tigris vinculada a Universidade da California, Berkeley. Sua interface bem completa o que a torna um pouco complexa de manipular.
43
Umbrello e um Software de Modelagem UML, que e integrado ao projeto KDE. Este Software utilizado para modelar o prprio projeto do KDE por a grande de seus desenvolvedores que utilizam UML.
44
JUDE uma ferramenta profissional de modelagem para sistemas a qual suporta UML, diagrama entidade relacionamento, Flowchart, CRUD, Mini Mapas e Diagrama de Fluxo de Dados. Permite tambm a converso entre modelos UML, ER Diagramas, Flowcharts, fluxo de dados e mini mapas. O nome do programa um acrnimo de Java and UML Developers Environment (Ambiente para Desenvolvedores UML e Java).