Você está na página 1de 27

Modelagem de

Sistemas

Aula 1

Marcelo Vasques de Oliveira


Modelagem de sistemas
• Processo intelectual e progressivo.
• Entendimento e mapeamento de uma
realidade
• Modelagem de sistemas
– Conjunto de diagramas que representem a
estrutura e comportamento do sistema

2
Paradigma Orientado a Objeto
• Paradigma = forma de abordar um problema.
• Orientado a objeto
– Identificar os objetos do mundo real
envolvidos no contexto do sistema e a
relação entre esses objetos.

3
Elementos básicos paradigma OO
• Objetos, mensagens, atributos, métodos e
classes

Objeto é a instancia de uma classe


• Classe é o molde ou estrutura que permite instanciar objetos
• Grande questão OO: ela encapsula em uma única estrutura os atributos e métodos
(operações ou funções ou comportamento – SEMPRE EM VERBO)
• Mensagem: é a troca entre objetos, aonde um objeto solicita ao outro realize uma
operação que é de sua responsabilidade 4
Pilares da O.O
• Encapsulamento: esconder os atributos do
acesso indevido de outros objetos.
– Os atributos devem ser acessados por
métodos da própria classe

5
Pilares da O.O
• Herança: derivar novas classes a partir de
outras já existentes - reuso.
– A classe descendente herda atributos e métodos da
classe ancestral (classe base ou pai)
– Economia: tempo/dinheiro; segurança

6
Pilares da O.O
• Polimorfismo: Alterar o comportamento de
uma classe herdada. Para existir o Polimorfismo tem que existe uma herança. @Override

– Amplia o poder de reaproveitamento da herança


– Alteração (re escrita) de métodos

7
Pilares da O.O
• Visibilidade: O que uma classe pode
visualizar da outra.
– Garantir o encapsulamento
– Classes com métodos privados apenas ?

Atributos - ~ #
Metodos + - ~ #

8
Conclusões Paradigma OO
• Conceito de encapsulamento
• Cria Classes independentes, que facilita
desenvolvimento e manutenção
• Herança e polimorfismo.
• Permite e facilitam a reutilização, útil para o
desenvolvimento e manutenção
• As classes passam a ser componentes
portáveis entre as aplicações
• Reusabilidade
• Extensibilidade
• Favorecem o desenvolvimento de sistemas
grandes e complexos 9
UML
• Uma resposta ao mercado que precisa de
diagramas compatíveis com desenvolvimento OO.
• Integração de 3 métodos
– OMT (Object Modeling Technique) de Jacobson
– OOSE (Object-Oriented Software Engineering)
de Rumbaugh
– Booch
• Em 1997 é adotada pela OMG (Object
Management Group ) como linguagem padrão de
modelagem
• UML - Unified Modeling Language

10
A UML COMO LINGUAGEM PADRÃO
• Linguagem padrão voltada para:
• Visualização: diagramas gráficos
• Especificação: Análise, projeto
• Construção : integrado a linguagens
• Documentação
• Independente do método de
desenvolvimento usado.
• Não é um método, não é uma
metodologia, não é um processo
• Não determina a ordem e nem quais
diagramas devem ser usados no
desenvolvimento 11
DIAGRAMAS DA UML – VERSãO 2.4.1

12
Casos de Uso Mostra as funcionalidades do sistema e os atores

Classes O mais popular dos diagramas. Apresenta as classes presentes no


sistema e os vários tipos de relacionamentos existentes entre eles.
Descreve para cada classe, suas propriedades (atributos e métodos).

Sequencia Mostra como os objetos interagem para a realização de um caso de


uso, detalhando a troca de mensagem entre os objetos.
Estados Mostra, para cada objeto do sistema, o seu ciclo de vida.
Atividades Descrevem a lógica de procedimentos, processos de negócios e fluxos
de trabalho, suportando processamento sequencial e paralelo.
Implantação Determina o ambiente físico sobre o qual o sistema vai operar.
Determina as necessidades de hardware do sistema, evidenciando
características físicas dos servidores, estações, protocolos de
comunicação, redes e etc.
Componentes Apresenta diferentes componentes de um sistema, além de
possíveis dependências entre eles.
Comunicação São os antigos Diagramas de Colaboracão, que junto com o diagrama
de sequencia forma os diagramas de interação, porém não focam a
temporalidade (sequencia). 13
Diagrama de perfil Diagrama mais recente e bastante abstrato. Permite a
criação de perfis que adapte a UML a plataformas,
tecnologias ou domínios específicas , para os quais a
linguagem não foi projetada originalmente

Diagrama de objetos É um diagrama de classes, instanciado, ou seja, mostra


exemplos de objetos de cada classe, exibindo os
relacionamentos.

Diagrama de pacotes Pacotes são elementos que englobam outros. O mais


comum são classes, mas têm sido usados para outros
elementos, especialmente casos de uso. Representam a
divisão de um sistema grande em partes menores
(modularização).

Diagrama de visão geral de Novidade da versão 2.0. Mistura em um único diagrama


interação conceitos e elementos do diagrama de atividades e do
diagrama de sequência.

Diagrama de tempo Novidade da versão 2.0. Outro tipo de diagrama de


interação, onde o foco está nas restrições de
temporização. Usado para demonstrar a mudança no
estado de um objeto no tempo em resposta a eventos
externos.
14
COMO USAR A UML ?
• Como esboço
• Foco: comunicação
• Expressar ideias
• Fomentar a discussão entre desenvolvedores
• Como projeto
• Foco : completeza
• Construção de um projeto completo, usando
vários diagramas
• Compatível com os modelos iterativos
incrementais
• PU (RUP)
• Metodologias ágeis (menos documentação + código) 15
PROCESSOS ITERATIVOS E A UML
• Processo de desenvolvimento
• Abordagem para organizar as atividades de
construção, implantação e manutenção
• PU (processo Unificado): RUP
• Metodologias ágeis: XP e SCRUM
• Processos iterativos
• Ciclo de vida em mini projetos curtos, preferencia
com duração fixa (ex: 3 meses) – são as
iterações
• Cada iteração contêm um sub conjunto das
funcionalidades do sistema
• Baseados em incrementos sucessivos do sistema
• Entre as iterações temos ajustes e feedbacks 16
PROCESSOS ITERATIVOS E A UML
• Processo com uso de 3 iterações.
• Em cada uma repete-se o conjunto de etapas.

17
AS ETAPAS
• Levantamento de Requisitos
• Levantamento e mapeamento das
necessidades dos usuários
• Análise de Requisitos (“Faça a coisa certa”)
• Entendimento em detalhes dos requisitos e
modelagem da solução lógica sem considerar
aspecto físicos. – Domínio do problema
• Quais funções o sistema precisa para atender
aos requisitos ?
• Projeto (“Faça certo a coisa”)
• Definição da arquitetura e componentes do
sistema, com a visão da tecnologia a usar.
18
AS ETAPAS
• Implementação
• Codificação na linguagem de programação
• Testes
• Aferição se atende aos requisitos e
qualidade do software
• Implantação.
• Treinamento, entrega e uso no ambiente
dos usuários.

19
UML E RESULTADOS DE CADA FASE
• Levantamento de Requisitos
• Diagrama de casos de uso + especificações
informais
• Diagrama de classe conceitual
• Análise de Requisitos
• Diagrama de casos de uso + especificações
completas
• Diagrama conceitual de classes
• Diagrama de Estados
• Diagrama de Atividades

20
UML E RESULTADOS DE CADA FASE
• Projeto
• Diagrama de classes de projeto
• Diagrama de sequencia
• Diagrama de estados
• Diagrama de componentes
• Diagrama de Implantação

21
Exercícios
1) Como se chama o princípio que diz que: o
acesso aos atributos de uma classe devem
ser somente pelos métodos da classe e não
diretamente por outra classe ?
( ) Herança
( ) Polimorfismo
( ) Entropia
( ) Encapsulamento
( ) Visibilidade

22
Exercícios
2) Analise as sentenças a seguir:
I. A herança garante reuso e consequente economia
de tempo e dinheiro
II. O polimorfismo diz que os atributos devem ter
visibilidade privada
III. Sem herança não há como ter polimorfismo.
IV. O encapsulamento visa garantir o
desenvolvimento de classes independentes.
Assinale a única alternativa CORRETA
( ) Estão corretos apenas I e III
( ) Estão corretos I, II, III e IV
( ) Estão corretos apenas I e IV
( ) Está correto apenas III
( ) Estão corretos apenas I, III e IV 23
Exercícios
3) No que se refere a UML (Linguagem Unificada de
modelagem), assinale a única alternativa
INCORRETA.
( ) É independente de processo de
desenvolvimento de software
( ) Contém um conjunto de diagramas com
diferentes visões
( ) A UML destina-se a visualização, especificação,
construção e documentação de sistemas orientados
a objeto.
( ) Nasceu da união de métodos usados, na época,
pelos principais profissionais do mercado.
( ) Voltada especificamente para a modelagem de
requisitos 24
Exercícios
4) Analise as assertivas sobre os processos iterativos
I. São processos onde o ciclo de vida do sistema é
dividido em uma série de mini projetos e de curta
duração.
II. Cada iteração contém um subconjunto das
funcionalidades do sistema.
III. Em cada iteração temos as atividades de
Levantamento de Requisitos, Análise de Requisitos,
projeto, implementação, testes e implantação
IV. São modelos ultrapassados e não adequados a UML
( ) Estão corretas apenas I e II
( ) Estão corretas I, II, III e IV
( ) Estão corretas apenas II e IV
( ) Estão corretas apenas I, III e IV
( ) Estão corretas apenas I, II e III 25
Exercícios
5) Como se chama o diagrama que mostra as
funcionalidades do sistema e os atores que com elas
interagem?
( ) Diagrama de classes
( ) Diagrama de estados
( ) Diagrama de componentes
( ) Diagrama de sequencia
( ) Diagrama de casos de uso

26
Exercícios
6) Assinale a opção que apresenta o diagrama da
UML que: mostra o comportamento do ciclo de vida
de cada objeto
( ) Diagrama de classes
( ) Diagrama de colaboração
( ) Diagrama de objetos
( ) Diagrama de Implantação
( ) Diagrama de Estado

27

Você também pode gostar