Você está na página 1de 26

Análise e Projeto de Sistemas

Aula 1
Introdução

Prof. Jorge Viana Doria Junior, M.Sc.


jjunior@unicarioca.edu.br
Apresentação dos Alunos:
Curso?
Período?
Área de Interesse na Informática?
Faz Estágio?

2
O Software está em todo lugar!

3
Utilização de Modelos
• O processo de raciocínio humano
necessita de modelos

4
Quais são as Principais Fases do
Desenvolvimento de Software?

Processo de Desenvolvimento de Software

Engenharia
Projeto de
de Codificação Testes
Sistemas
Requisitos

Engenharia de Requisitos 5
Análise

• Fornecem o que o sistema deve fazer


• Quais são as necessidades do usuário
• Qual o problema está sendo resolvido
• A qualidade do processo de análise é
importante porque um erro de concepção
gerado na fase de análise é propagado pelas
demais fases.

6
Projeto

• A fase de projeto enfatiza a proposta de uma


solução que atenda os requisitos da análise.
• Indica COMO será feito o software
• Se a analise é uma investigação para tentar
descobrir o que o cliente quer, o projeto
consiste em propor uma solução com base
no conhecimento adquirido na análise.

7
Modelo de Projeto

• Mais concreto do que o modelo de análise


• Unificação em um único modelo
• Definição da arquitetura do sistema
• Proposição de padrões de projeto
• Projetar arquitetura
• Projetar Banco de Dados

8
Da Análise ao Projeto

Engenharia de Software
Paradigma

• Um paradigma é uma forma de abordar um


problema.
• No contexto da modelagem de um sistema de
software, um paradigma tem a ver com a forma
pela qual esse sistema é entendido e construído.
• A primeira abordagem usada para modelagem de
sistemas de software foi o paradigma
estruturado.
– Uso da técnica de decomposição funcional
– “divida sucessivamente um problema completo em
subproblemas”
• Hoje em dia, praticamente suplantou o paradigma
anterior, o paradigma da orientação a objetos...
Engenharia de Software 10
Paradigma Orientado a Objetos

• “Sob um ponto de vista superficial, dizer que


um software é orientado a objetos significa
dizer que o software é organizado como uma
coleção de objetos separados que
incorporam tanto a estrutura quanto o
comportamento dos dados, contrastando
com a programação convencional, em que a
estrutura e o comportamento dos dados
apresentam pouco vínculo entre si.”

11
UML (Linguagem de Modelagem
Unificada)
• “A UML é a linguagem padrão para
visualizar, especificar, construir e
documentar os artefatos de software de um
sistema.”
• Unificação de diversas notações anteriores.
• Mentores: Booch, Rumbaugh e Jacobson
– “Três Amigos”
– IBM Rational (www.rational.com)

Engenharia de Software 12
UML (Linguagem de Modelagem
Unificada)
• UML é...
– uma linguagem visual.
– independente de linguagem de programação.
– independente de processo de desenvolvimento.
• UML não é...
– uma linguagem programação (mas possui
versões!).
– uma técnica de modelagem.

13
Elementos Essenciais - Estruturais

Classe Objeto Nó
<<entity>> Cliente
Cliente Web Server

-razaoSocial: String
-cpf: String
Interface Componente
+getRazaoSocial()
+setRazaoSocial(razaoSocial: String) ocv.dll
IImprimivel

Relacionamentos

Engenharia de Software 14
Elementos Essenciais -
Comportamentais

Caso de uso Estados Mensagens

Conectando
Programar produção

Ator

Operador

Engenharia de Software 15
Elementos Essenciais - Agrupamento

Pacotes

Interface

Regras de negócio

Banco de Dados

Engenharia de Software 16
Diagramas da UML

• Um diagrama na UML é uma apresentação de uma


coleção de elementos gráficos que possuem um
significado predefinido.
– No contexto de desenvolvimento de software,
correspondem a desenhos gráficos que seguem algum
padrão lógico.

17
Diagramas da UML 2.0

18
Diagramas da UML 2.0 – Mais Usados
na Fase de Análise de Sistemas

19
Exemplo de Diagrama de Casos de
Uso
• Diagrama de Casos de Uso de um sistema de uma biblioteca

Engenharia de Software 20
Diagrama de Estados
• Diagrama de Estados de um Livro em um sistema de uma
biblioteca

Engenharia de Software 21
Exemplo de Diagrama de Classes

• Diagrama de Classes de uma loja de CDs e Livros

Engenharia de Software 22
Diagramas da UML 2.0 – Mais Usados
na Fase de Projeto de Sistemas

23
Exemplo de Diagrama de Sequência

Engenharia de Software 24
Arquitetura

• Dividir o sistema em camadas


• A mais comum:

Apresentação

Controle

Negócio

Dados

•Utilizar pacotes para organizar as classes em grupo

25
Como será o Aprendizado neste
Curso
• Estudo adicional além das horas de sala de
aula
• Frequência em sala de aula é obrigatória
• Listas de Exercícios
• Dinâmicas em Sala de Aula
• Trabalho Prático
• AVA – Ambiente Virtual de
Aprendizado

26