5. Definições
• Engenharia de software é a área da
computação voltada à:
Especificação / Desenvolvimento / Manutenção.
6. Metodologia e Processo
• Metodologia de Desenvolvimento de
Sistemas (MDS) é o estudo de como
implementar e melhorar os processos de
desenvolvimento de sistemas.
• É comum ser confundida com o Processo de
Desenvolvimento de Sistemas em si.
• O Processo de Desenvolvimento de Sistemas
é derivado da Metodologia e tem por objetivo
guiar o passo a passo para a construção de um
sistema.
8. O Que é Modelagem?
• “Um modelo é uma simplificação da realidade”.
– É preciso converter as ideias em ações que permitam a
construção do sistema desejado.
9. O Que é Modelagem?
• “Construímos modelos de sistemas
complexos porque não é possível
compreendê-los em sua totalidade.”
• Objetivos:
• Visualizar Sistemas em Detalhes.
• Comunicar e Documentar Decisões.
• Especificar a estrutura e o comportamento do
sistema.
10. Princípios da Modelagem
• A escolha dos modelos a serem criados tem
profunda influência sobre a maneira como
um determinado problema é atacado e como
uma solução é definida.
– Alguns modelos são essenciais e outros devem
ser utilizados quando houver necessidade de
algo mais detalhado.
11. Princípios da Modelagem
• Nenhum modelo único é suficiente.
• Qualquer sistema não trivial será mais bem
investigado por meio de um pequeno
conjunto de modelos quase independentes
com vários pontos de vista.
13. Origens
• A Unified Modeling Language nasceu em 1994 a
partir da junção das metodologias de Grady
Booch, James Rumbaugh e Ivar Jacobson.
• A UML é uma linguagem para especificar,
visualizar, construir e documentar os artefatos
de software.
• Atualmente, é mantida como um padrão de
indústria da Object Management Group.
14. Origens
Versão Data
2.5 Outubro – 2012
2.4.1 Agosto – 2011
2.4 Março – 2011
2.3 Maio – 2010
2.2 Fevereiro – 2009
2.1.2 Novembro – 2007
2.1.1 Agosto – 2007
2.0 Julho – 2005
1.5 Março – 2003
1.4 Setembro – 2001
1.3 Março – 2000
http://www.omg.org/spec/UML/http://www.omg.org/spec/UML/
Versão Atual
16. Diagramas
• Principais Diagramas da UML no cenário
de uma aplicação:
– Vamos identificar em que categoria cada
diagrama se encaixa:
• Modelagem Estrutural.
• Modelagem Comportamental.
24. Roteiro para Aplicações Web
• O desenvolvimento de sistemas na Plataforma Java
sugere o uso de:
– Boas práticas de programação OO: consolidação dos
conceitos de OO e uso efetivo dos recursos disponíveis na
Linguagem Java.
– Design Patterns: conjunto de padrões que facilitam o
entendimento e a implementação de componentes.
– Modelos de Arquitetura: ajudam no planejamento e
projeto das aplicações; separação de responsabilidades.
25. Roteiro para Aplicações Web
Cliente Apresentação
Lógica de
Negócio
Persistência
Fontes de
Dados
Modelo de Referência de Arquitetura
• Esse modelo serve como base para o roteiro que cada programador irá seguir
para construir os vários Casos de Uso do sistema.
• Podemos encontrar nesse modelo alguns Design Patterns que vão ajudar a
padronizar a construção.
26. Roteiro para Aplicações Web
• Para construir uma aplicação é sugerido seguir
alguns passos:
– Vamos assumir que você fez o Levantamento de
Requisitos da aplicação, listou e detalhou os casos
de uso.
– Dado um determinado caso de uso, é necessário
fazer o Protótipo das suas telas:
– As telas inicialmente poderão ser em HTML puro, mas é
comum que essas telas tenham alguma funcionalidade daí
a necessidade de fazermos páginas JSP ou até mesmo em
JSF.
27. Roteiro para Aplicações Web
– Você pode continuar a especificação do seu
sistema fazendo Análise dos Requisitos,
produzindo outros diagramas.
– Quando for fazer o Projeto da Aplicação,
novas classes serão acrescentadas ao
diagrama de classes.
– Você pode fazer diagramas de seqüência de
forma a documentar o projeto dos casos de uso.
28. Roteiro para Aplicações Web
1. Fazer as telas em HTML (que vão virar JSP
ou JSF).
2. Construir os servlets que vão controlar o
processamento do caso de uso.
– Aqui já podemos testar a navegação do caso de
uso.
1. Criar as classes de entidade, de negócio e
de acesso a banco de dados.
31. Roteiro para Aplicações Web
Cliente Apresentação
Lógica de
Negócio
Persistência
Fontes de
Dados
HTML
CSS
JavaScript
JSP
JSTL
EL
Servlet
POJO
EJB
Spring Beans
JDBC
JPA
Hibernate
Bancos de
Dados
XML
Arquivos
Modelo de Referência de Arquitetura
Implementação do Modelo de Referência
DLO = Data
Logic Object
Business
Object
DAO = Data
Access
Object
DTO = Data
Transfer
Object
Diagramas de Sequência são construídos de acordo com as seguintes convenções:
Linhas pontilhadas verticais representam os objetos;
Setas horizontais representam as mensagens passadas entre os objetos;
Rótulos das setas são os nomes dos métodos que estão sendo chamados;
A posição na vertical mostra o ordenamento relativo das mensagens, o decorrer das ações no tempo;
Retângulos situados nas linhas verticais para indicar o tempo de vida dos objetos (caixas de ativação). A caixa de ativação indica o tempo que o objeto ficará ativo em memória.
A representação da seta de retorno é facultativa.