Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

Análise de 
Desenvolvimento 
de Sistemas
Curso: Análise de Desenvolvimento de Sistemas
Professora: Dsc. Amanda Dantas
Análise e Modelagem de Sistemas
Resumo da Aula Anterior
Sistema da Informação
Resumo da Aula Anterior
Objetivo Principal: Auxiliar os 
processos de tomada de decisões nas 
organizações.
Sistema de Informação (SI)
Tipos de Sistema de Informação (SI):
Tipo Descrição
1.Sistemas de Processamento de Transações SPT
2.Sistemas de Informações Gerenciais SIG
3.Sistemas de Suporte à Decisão SSD
4.Sistemas de Suporte à Decisão em Grupo SSDG
5.Sistemas de Informação ao Executivo EIS
6.Sistemas de Automação de Escritório SAE
Resumo da Aula Anterior
Ciclo de vida de um 
software
Ciclo de Vida do Software
O ciclo de vida natural de um software abrange 
basicamente as fases:
1. Concepção (nascimento do sistema ou software)
2. Construção (análise e programação)
3. Implantação (pequenos ajustes pós-implantação)
4. Maturidade e Utilização Plena ( software 
sedimentado)
Ciclo de Vida do Software
O ciclo de vida natural de um software abrange 
basicamente as fases:
5. Declínio (dificuldade de continuidade)
6. Manutenção (tentativa de sobrevivência)
7. Morte (descontinuidade do sistema ou software)
Ciclo de Manutenção do Software
1. Manutenção Corretiva
2. Manutenção Adaptativa
3. Manutenção perfectiva
4. Manutenção preventiva ou preditiva
Resumo da Aula Anterior
Engenharia de Requisitos
Mundo Real
(Problema) Requisitos Software
(Solução)
Engenharia de Requisitos
Especificação de requisitos:
● É um contrato entre clientes e a 
equipe de desenvolvimento.
Engenharia de Requisitos
Especificação de requisitos:
● Deve esclarecer aos clientes o 
que será entregue como produto 
do trabalho da equipe de 
desenvolvimento.
 
Engenharia de Requisitos
Documentos da Especificação de requisitos
 
Visão Geral
Lista de 
Requisitos 
Funcionais
Lista de 
Requisitos Não 
funcionais 
Modelo do 
sistemaGlossário
Especificação 
detalhada de 
requisitos
Engenharia de Requisitos
Os níveis de detalhe podem ser subdivididos 
conforme três objetivos diferentes:
1. Delimitar o escopo preliminar e definir o escopo 
final da solução
2. Descrever o funcionamento e as restrições de um 
item no escopo
3. Mapear os requisitos para design ou 
implementação
 
Engenharia de Requisitos
Análise e Modelagem de Sistemas
Conteúdos da Aula de Hoje 
Modelagem de Sistemas
A partir dos modelos é possível compreender 
melhor o sistema que está sendo elaborado e 
gerenciar os riscos.
Fonte:Energy conservation in distributed 
heterogeneous computing environments 
using economic resource allocation 
mechanisms
https://www.researchgate.net/publication/259977469_Energy_conservation_in_distributed_heterogeneous_computing_environments_using_economic_resource_allocation_mechanisms?_tp=eyJjb250ZXh0Ijp7ImZpcnN0UGFnZSI6Il9kaXJlY3QiLCJwYWdlIjoiX2RpcmVjdCJ9fQ
https://www.researchgate.net/publication/259977469_Energy_conservation_in_distributed_heterogeneous_computing_environments_using_economic_resource_allocation_mechanisms?_tp=eyJjb250ZXh0Ijp7ImZpcnN0UGFnZSI6Il9kaXJlY3QiLCJwYWdlIjoiX2RpcmVjdCJ9fQ
https://www.researchgate.net/publication/259977469_Energy_conservation_in_distributed_heterogeneous_computing_environments_using_economic_resource_allocation_mechanisms?_tp=eyJjb250ZXh0Ijp7ImZpcnN0UGFnZSI6Il9kaXJlY3QiLCJwYWdlIjoiX2RpcmVjdCJ9fQ
https://www.researchgate.net/publication/259977469_Energy_conservation_in_distributed_heterogeneous_computing_environments_using_economic_resource_allocation_mechanisms?_tp=eyJjb250ZXh0Ijp7ImZpcnN0UGFnZSI6Il9kaXJlY3QiLCJwYWdlIjoiX2RpcmVjdCJ9fQ
Modelagem de Sistemas
O modelo pode ser definido como uma 
simplificação da realidade.
Fonte: agileapplied
Modelos fornecem 
uma cópia do projeto 
de um sistema 
Planos 
detalhados Planos Gerais
Modelagem de Sistemas
A modelagem definida como uma técnica para 
representar graficamente o comportamento e 
a estrutura de um sistema.
Estrutura de um 
sistema + 
Comportamento
Gráficos/Diagram
as
Modelagem
Técnica
Modelagem de Sistemas
Quanto maior e mais complexo for o 
sistema, maior será a necessidade da 
modelagem para compreender o 
sistema como todo.
Modelagem de Sistemas
Na área de software existem várias 
maneiras de se definir um modelo.
Modelagem Orientada a Objetos
Conceito de Orientação a Objetos
● Componente do mundo real que é 
mapeado para o domínio do software.
Conceito de Orientação a Objetos
● Pode representar uma entidade de 
natureza física ou conceitual.
Conceito de Orientação a Objetos
Classes:
É a representação de um conjunto de 
objetos similares (características).
Conceito de Orientação a Objetos
Classes:
Pode ser definida como Objetos que 
compartilham a mesma estrutura de 
atributos, operações e relacionamento, 
dentro de um mesmo contexto.
Conceito de Orientação a Objetos
Conteúdos da Aula de Hoje 
Conteúdos da Aula de Hoje 
Exemplos de Métodos:
● Inicializa o objeto
● Responsável por simular a ação 
Métodos (Comportamento):
● Os métodos manipulam os dados 
(atributos) da classe
Conteúdos da Aula de Hoje 
Elementos importantes na 
Orientação a Objetos
● Encapsulamento
● Herança 
● Polimorfismo
Conteúdos da Aula de Hoje 
 
● Herança 
Fonte:learn.microsoft.com/
● Polimorfismo
Utilizing BlueJ to Teach Polymorphism in an 
Advanced Object-Oriented Programming 
Course
O polimorfismo é a capacidade de diferentes 
classes desenvolverem (implementação) a 
mesma operação de maneira distinta. 
Utilizing BlueJ to Teach Polymorphism in an 
Advanced Object-Oriented Programming 
Course
Permitindo que os métodos ou operações 
sejam aplicados a diferentes tipos de 
objetos, mesmo que a implementação seja 
específica de cada tipo.
Utilizing BlueJ to Teach Polymorphism in an 
Advanced Object-Oriented Programming 
Course
Fonte:Unb
UML (do Inglês Unified Modeling 
Language) 
UML - Linguagem Unificada de 
Modelagem
https://en.wikipedia.org/wiki/Unified_Modeling_Language
https://en.wikipedia.org/wiki/Unified_Modeling_Language
UML 
Definição:
É um a linguagem gráfica para sistemas 
complexos:
● Visualização
● Especificação
● Construção
● Documentação de artefatos
UML 
É uma linguagem destinada a:
Verificar Construir
Especificar Documentar
UML 
UML - Blocos de Construção
O vocabulário UML abrange três tipos de 
blocos de construção:
1. Itens
2. Relacionamento
3. Diagramas
1. Itens
2. Relacionamento
3. Diagramas
São as abstrações 
identificadas como cidadãos 
de primeira classe do modelo
Responsável por 
reunir os itens
É responsável 
por agrupar 
coleções desses 
itens.
1. Itens
1. Itens estruturais
2. Itens Comportamentais
3. Itens de agrupamentos
4. Itens anotacionais
1. Itens1. Itens estruturais
1. Itens1. Itens estruturais
2. Relacionamento
1. Dependência 
2. Associação
3. Generalização
4. Realização
2. Diagramas
Um diagrama é a apresentação gráfica de 
um conjunto de elementos, geralmente 
representados como gráficos de vértice 
(itens) e arcos (relacionamentos).
2. Diagramas
1. Diagrama de Classes
2. Diagrama de objetos
3. Diagrama de componentes
4. Diagrama de estrutura composta
5. Diagrama de caso de uso
6. Diagrama de sequência
7. Diagrama de comunicações
8. Diagrama de gráficos de estados
9. Diagrama de atividades
10. Diagrama de implementação
11. Diagrama de pacote
12. Diagrama de temporização
13. Diagrama de visão geral da interação
2.1 Diagramas de Classes
Neste diagrama temos um conjunto de:
● Classes
● Interfaces 
● Colaborações
● Relacionamentos
2.1 Diagramas de Classes
Aplicação:
● Sistemas de Modelagem orientados a 
objetos
2.1 Diagramas de Classes
Objetivo:
● Permitir a visualização das classes que 
compõem o sistema com seus 
respectivos atributos e métodos.
2.1 Diagramas de Classes
Objetivo:
● Demonstrar como as classe do 
diagrama se relacionam, completam e 
transmitem a informações entre si.
2.1 Diagramas de ClassesObjetivo:
● Serve como apoio base para a 
construção da maioria dos outros 
diagramas da linguagem UML.
2.1 Diagramas de Classes
Relacionamento:
É possível compartilhar informações e 
participar da execução dos processos do 
sistema.
2.1 Diagramas de Classes
Relacionamento:
Tem como objetivo descrever um vínculo 
que ocorre entre os objetos de uma ou 
mais classes.
2.1 Diagramas de Classes
Relacionamento:
2.1 Diagramas de Classes
Relacionamento utilizando associação:
São os relacionamentos estruturais entre 
instâncias e especificam que objetos de 
uma classe estão ligados a objetos de 
outras classes. A associação pode ser 
unitária ou binária. 
Associação Unitária:
2.1 Diagramas de Classes
Relacionamento utilizando associação:
Associação binária: Quando existem 
duas classes envolvidas na associação 
de forma direta de uma para outra.
Multiplicidade Significado
0..1 No mínimo zero e no máximo um. Os 
objetos não precisam estar 
relacionados, porém se houver 
relacionamento deve ser de no 
máximo 1
1..1 Um e somente um
0..* No mínimo nenhum e no máximo 
muitos. 
* Muitos
1..* No mínimo um e no máximo muitos
3..5 No mínimo 3 e no máximo 5.
Explicação no Quadro
Fonte:cin.ufpe
Pedido deve saber qual Cliente fez o Pedido e o 
Cliente deve saber quais Pedidos foram feitos. 
Quando nenhuma seta for ilustrada, a associação é 
navegável nas duas direções.
No caso das associações entre o Cliente e o Endereço, 
o Cliente deve saber seus Endereços, mas os 
Endereços não têm conhecimento de quais Clientes a 
propriedade de navegabilidade da extremidade Cliente 
da associação é desativada.
Fonte:cin.ufpe
Um objeto da classe Sócio poderá chamar método da classe 
Dependente.
2.1 Diagramas de Classes
Herança ou Generalização:
Relacionamento entre um elemento mais 
geral e um mais específico. Onde o 
elemento mais específico herda as 
propriedades e métodos do elemento 
mais geral. 
2.1 Diagramas de Classes
Agregação:
Descreve que as informações de um 
objeto-todo precisam ser complementadas 
pelas informações contidas em um ou mais 
objetos-parte.
2.1 Diagramas de Classes
Composição:
Relacionamento entre um elemento ( o 
todo) e outros elementos (as partes) 
onde as parte só podem pertencer ao 
todo e são criadas e destruídas com ele.
2.1 Diagramas de Classes
Dependência:
Grau de dependência entre as classes 
(conexão entre classes é temporária). 
Se ocorrer mudança na classe principal, 
a classe dependente também muda.
2.2 Diagrama de Objetos
Um componente objeto é muitas vezes 
bastante semelhante a um componente 
classe, mas os objetos não contém 
métodos, apenas atributos.
2.2 Diagrama de Objetos
O nome dos objetos está contido, como 
nas classes, na primeira divisão do 
retângulo que representa os objetos e 
pode ser apresentado de trê forma:
2.2 Diagrama de Objetos
1. O nome do objeto, com todas as letras maiúsculas, 
seguido do símbolo de dois pontos(:) e o nome da 
classe à qual o objeto pertence, com as letras iniciais 
maiúsculas. 
2. O nome do objeto omitido, mas mantendo o símbolo 
de dois-pontos e o nome da classe.
3. Somente o nome do objeto, sem dois-pontos.
2.2 Diagrama de Objetos
2.2 Diagrama de Objetos
2.2 Diagrama de Objetos
Vínculos:
Os objetos de um diagrama de objetos 
apresentam vínculos entre sí (links).
2.3 Diagrama de Caso de Uso
O diagrama de Casos de Uso tem como 
objetivo possibilitar a compreensão do 
comportamento externo do sistema (em 
termos de funcionalidades oferecidas 
por ele).
Os atores representam os 
papéis desempenhados pelos 
diversos usuários que poderão 
utilizar, de alguma maneira, os 
serviços e funções do sistema.
Atores
Como identificar os atores?
● Que tipo de usuários poderão utilizar o 
sistema?
● Quais usuários estão interessados ou 
utilizarão quais funcionalidades e 
serviços do software?
2.3 Diagrama de Caso de Uso
● Quem fornecerá informações aos 
sistema?
● Quem utilizará as informações do 
sistema?
● Quem poderá alterar ou mesmo excluir 
informações do sistema?
2.3 Diagrama de Caso de Uso
● Existe algum software que interage 
com o sistema?
● Existe algum hardware especial (como 
robô, por exemplo) que irá interagir 
com o software?
Casos de Uso
Os casos de uso são 
utilizados para capturar 
os requisitos funcionais 
do sistema
Casos de Uso
● Serviços
● Funcionalidades identificados como 
necessários ao software 
Como identificar os Casos de Uso?
Para identificar os casos de uso que fará 
parte do modelo, é necessário determinar 
as funcionalidades necessárias do 
software.
Como identificar os Casos de Uso?
Todas as funções e serviços que 
correspondem aos requisitos funcionais 
declaradas pelos stakeholders como 
necessários ao sistema.
Associação
Generalização/Especialização
Generalização/Especialização
Inclusão
É utilizada quando existe um cenário, 
situação ou rotina comum a mais de um 
caso de uso.
Inclusão
É colocada em um caso de uso 
específico para que outros casos de uso 
utilizem esse serviço, evitando 
descrever a mesma sequência.
Extensão
São utilizadas para descrever cenários 
opcionais que podem ser estendidos 
pelos comportamentos de outros casos 
de uso.
Extensão
Os casos de uso estendidos descrevem 
cenários que apenas serão executados em 
situações específicas quando determinadas 
condições forem satisfeitas.
Extensão
Extensão
Extensão
Restrições em Associação de Extensão
São compostas de um texto entre chaves 
e utilizadas para definir validação, 
consistências que devem ser aplicada a 
um determinado componentes ou 
situação.
Restrições em Associação de Extensão
Restrições em Associação de Extensão
Pontos de Extensão
Um ponto de extensão identifica um ponto no 
comportamento de um caso de uso a partir 
do qual esse comportamento poderá ser 
estendido pelo comportamento de outro caso 
de uso, se a condição para que isso ocorra 
for satisfeita.
Pontos de Extensão
Multiplicidade no Diagrama de Casos de 
Uso
Especifica o número de vezes que um 
ator pode utilizar um determinado caso 
de uso.
Multiplicidade no Diagrama de Casos de 
Uso
(Só pode ser utilizado por um sócio e um 
funcionários por vez)
Multiplicidade no Diagrama de Casos de 
Uso
● Ator sócio utiliza o caso de uso Cadastrar 
Sócio somente uma vez.
● Ator funcionário pode utilizar muitas 
vezes.
Estereótipos
Fronteiras de
Sistema
Referência Bibliográfica
Booch, Grady, and Rumbaugh, James. UML: guia do 
usuário. Brasil, Elsevier, 2006.
UML 2 – Guia Prático - 2ª Edição. Brasil, Novatec Editora, 
2014.
Guedes, Gilleanes T. A.. UML 2 - Uma Abordagem Prática. 
Brasil, Novatec Editora, 2018.
Referência Bibliográfica
Exercitando Modelagem em UML. N.p., Brasport.
Larman, Craig. Utilizando UML e Padrões. Brasil, 
Bookman, 2007.
Desenvolvendo Aplicações com UML 2.2. N.p., Brasport.
Atividade de Aprendizagem

Mais conteúdos dessa disciplina