Curso de Gestão da TI Análise de Projetos de Sistemas

Prof. Flávio Barbosa
23/09/2009
1

Módulo 4.1 Aula 8

Estudo de Caso
2

 AGENDA
• Análise Estruturada x Análise OO • Construção dos diagramas do SI da biblioteca

3

ANÁLISE ESTRUTURADA x ANÁLISE OO

Para solucionar o problema do reduzido reaproveitamento dos códigos (reusabilidade), definiu-se melhor a ideia de Análise Orientada a Objeto (AOO). O setor de informática da maioria das organizações têm desenvolvido os seus softwares utilizando a programação orientada a objeto.
4

ANÁLISE ESTRUTURADA x ANÁLISE OO

A programação orientada a objeto (POO) é diferente da programação estruturada. Na POO, funções e dados estão juntos, formando o objeto. Essa abordagem cria uma nova forma de analisar, projetar e desenvolver programas; uma forma mais abstrata e genérica, que permite maior reaproveitamento dos códigos e facilita a sua manutenção.
5

ANÁLISE ESTRUTURADA x ANÁLISE OO

PODERÁ porque é
Cuidado! Existem gatos no mundo OO. possível utilizar A maioria dos bancos de dados (BD) são de relacionais, ou seja, não OO. Seimplementações um atributo com a no seu produto houver imagem, quando o objeto for criado ele poderá que busquem a trazer a imagem mesmo não a utilizando. Esse informação simples exemplo, aumentaria o tráfego da rede somente quando e processamento do BD desnecessariamente.

for utilizada.
6

ANÁLISE ESTRUTURADA x ANÁLISE OO

Observe que a análise (modelagem) orientada a objeto não é somente uma nova forma de programar, mas uma nova forma de pensar um problema, de forma abstrata, utilizando conceitos do mundo real e não conceitos computacionais.

7

ANÁLISE ESTRUTURADA x ANÁLISE OO

O usuário final verá todos os ícones e janelas da tela como objetos e associará a manipulação desses objetos visuais à manipulação dos objetos reais que eles representam.
8

ANÁLISE ESTRUTURADA x ANÁLISE OO

Por exemplo, um ícone impressora representará a impressora de seu sistema computacional (real) e permitirá a execução de impressão, a seleção do tamanho da página, entre outras operações com esse objeto.

9

CONSIDERAÇÃO SOBRE CASOS DE USO

A UML define somente como deve ser o Diagrama de Casos de Uso (desenho), e não a narrativa. Esse fato provocou e, provoca, a disseminação de vários templates (modelos) de como escrever as narrativas dos casos de uso.

TEXTO
DESENHO
10

CONSIDERAÇÃO SOBRE CASOS DE USO

Não há um consenso geral sobre como descrever a narrativa, existem técnicas, mas não é possível afirmar que essa ou aquela está correta, isso dependerá: Projeto; Processos; Ferramentas disponíveis.
11

ESTUDO DE CASO

Sistema de biblioteca. Ferramenta para modelagem dos casos de uso será o StarUML.

Os requisitos estão no livro didático.
12

ESTUDO DE CASO

Site da ferramenta StarUML encontra-se no endereço: http://staruml.sourceforge.net/en/

13

Criando um novo projeto no StarUML

O StarUML permite a criação de projeto por Abordagem, ou seja, ele cria uma “estrutura” baseada em cada uma das abordagens que ele oferece. Será utilizado um projeto vazio.
14

Criando um novo projeto no StarUML

Definido o título do projeto e algumas propriedades referentes a autoria do modelo.
15

Criando um novo projeto no StarUML

Adicionando o modelo funcional ao projeto.
16

Criando um novo projeto no StarUML

Adicionando diagrama de caso de uso “Visão Geral” ao projeto.
17

DIAGRAMA DE CASO DE USO: Visão Geral

Essa é a visão geral dos requisitos.

Le it ore s

Ca t e go ria de Le it ore s

Obr a s Lit e rá ria s

Bibl iot e cá rio

Ca t e go ria de Obra s

Funci oná rios

Incrementando os requisitos…

Em pré s t im o da Obra Le it or De v oluçã o da Obr a

18

DIAGRAMA DE CASO DE USO: Visão Geral

Adicionando a Consulta a todos os cadastros.
Bibl iot e cá rio

Ge re nc ia r Le it ore s

<<include>> Ca t e go riza r Le it ore s <<include>> <<include>> Ge re nc ia r Obr a s Lit e rá ria s <<include>> <<include>> Ca t e go riza r Obra s Cons ul t a r Ca da st ros

Ge re nci a r Fun ci oná rios

Incrementando os requisitos…

Em pre st a r Obra Le it or De v olv e r a Obra

19

DIAGRAMA DE CASO DE USO: Visão Geral

Adicionando a Manutenção a todos os cadastros.
Bibl iot e cá rio

Ge re nci a r Le it ore s

Incl ui r, A lt e ra r e Ex cl ui r Ca da st ros (M a nut e nçã o) <<include>>

Ca t e go riz a r Le it ore s

<<include>> <<include>>

<<extend>>

Ge re nci a r Obr a s Lit e rá ria s

<<include>> <<include>>

Consul t a r Ca da st ros

Ca t e go riz a r Obr a s

Ge re nci a r Funci o ná rios

Em pre st a r Obr a Le it or De v olv e r a Obr a

20

ATIVIDADE EM DUPLAS – SOLICITO INTERAÇÃO

Quais os requisitos ou tipo de requisitos, que não estão contemplados pelo diagrama de Caso de Uso “Visão Geral”
Bibliot e cá ri o Ca t e go riz a r Obr a s Ca t e goriz a r Le it or e s Ge re nci a r Obra s Lit e rá ria s Ge re nci a r Le it ore s In cl ui r, A lt e ra r e Ex cl ui r Ca da s t ro s (M a nut e nçã o) <<include>> <<include>> <<include>> <<include>> <<include>> Cons ult a r Ca da st ros <<extend>>

observando o item “B1” do livro didático p.170? Por que não estão contemplado?

Ge re nci a r Fun ci oná rios

Em pr e s t a r Obra Le it or De v ol v e r a Obr a

21

DIAGRAMA DE CASO DE USO: Visão Geral

Adicionando um Descritivo Narrativo (documentação) aos casos de uso.
22

DIAGRAMA DE CASO DE USO: Visão Geral

Explicitando a dependência entre casos de uso (seta pontilhada). O caso de uso origem, de onde a seta saiu, depende do caso de uso que está recebendo a seta ou está sendo apontado.
23

DIAGRAMA DE CASO DE USO: Visão Geral

Neste exemplo se lê a dependência: “Gerenciar Leitores” depende de “Categorizar Leitores”.
Isso porque é necessário ter a categoria de leitores previamente cadastrada para ser usada no registro do leitor.
24

DIAGRAMA DE CASO DE USO: Visão Geral

Por que não foi criado um <<include>> ao invés de indicar a dependência?
Porque “Categorizar Leitores” existe sozinho, ou seja, independente do Caso de Uso “Gerenciar Leitores” existir, ele é um cadastro próprio.
25

DIAGRAMA DE CASO DE USO: Visão Geral

É o mesmo caso de “Gerenciar Obras Literárias” que depende de “Categorizar Obras”.
26

DIAGRAMA DE CASO DE USO: Visão Geral

Ao documentar o caso de uso “Gerenciar

ESSE EXEMPLO EXPLICA Funcionários” observá-se que o bibliotecário terá PORQUE O Uma pergunta deve acesso a essa funcionalidade. DIAGRAMA DE CASO DE USO TAMBÉM É ser respondida junto
ao usuário: “O Bibliotecário poderá gerir os funcionários?”

UMA TÉCNICA DE ELICITAÇÃO (LEVANTAMENTO) DE REQUISITOS.
27

DIAGRAMA DE CASO DE USO: Visão Geral

Neste exemplo foi descoberto algo que o cliente não sabia ou não havia pensado.
O Stakeholder consultado definiu que o Depto. De RH gerenciará os funcionários.
28

ATIVIDADE

Porém, o Stakeholder poderia ter dito que existe um bibliotecário gerente responsável pelos cadastro dos funcionários.

Neste caso, como ficaria esse modelo?

29

Criando o modelo estrutural

Adicionando o modelo estrutural ao projeto.
30

Criando um novo diagrama no modelo estrutural

Adicionando diagrama de classe “Classes Gerais” ao projeto.
31

Criando as Classes do SI

É importante começar a modelagem das classes pelos casos de uso que são dependências de outros. Vamos observar quem recebe a seta de dependência:
32

Criando as Classes do SI

No modelo de Classes Gerais criado modelamos as classes dependentes:

33

Criando as Classes do SI

Nome da classe em itálico indica que ela é abastrata, ou seja, não será instanciada.

34

Criando as Classes do SI

Métodos ou atributos sublinhados indicam que o escopo é de classe ao invés de instância (objeto).

35

Criando as Classes do SI

A classe descendente (filha) herda atributos e métodos da classe ancestral (pai).

36

Criando as Classes do SI

Modelando as demais classes:

Vamos aos detalhes…

37

Criando as Classes do SI

Modelando as demais classes:
Agrupar Semelhanças (abstração) Observem o atributo “telefone”
38

Criando as Classes do SI

Modelando as demais classes:

Multiplicidade

39

Criando as Classes do SI

Modelando a movimentação:

Vamos aos detalhes…

40

Criando as Classes do SI

Modelando a movimentação:

Composição

41

Criando as Classes do SI

Modelando a movimentação:
Relatórios representados pelo tipo “List”

42

Criando as Classes do SI

Atendendo os requisitos B2 – Impressões.
O sistema deve permitir a impressão de uma listagem das obras emprestadas no momento, agrupadas por categoria de obra, contendo o nome do leitor, título da obra, data de retirada e data prevista para devolução.
43

Criando as Classes do SI

Atendendo os requisitos B2 – Impressões.
O sistema deve permitir a impressão de um relatório contendo as obras em atraso no período (por exemplo, semanal ou quinzenal), contendo, para cada dia do período, o nome do leitor, o telefone, o e-mail, a data de empréstimo e a data prevista para devolução.

44

Criando as Classes do SI

Atendendo os requisitos B2 – Impressões.
O sistema deve permitir ao leitor imprimir um histórico de seus empréstimo de obras. Para tal o leitor deve ter sido previamente cadastrado e deve portar um código de identificação e uma senha. Esse histórico deve conter uma linha para cada obra emprestada pelo leitor, contendo o título da obra, a data de retirada e devolução e o valor da multa em cada ocasião.

45

Criando as Classes do SI

O sistema deve permitir a consulta on-line da situação de uma obra literária. Uma obra está ocupada se existe um leitor que a emprestou no momento. Essa consulta deve mostrar uma linha para cada obra, constando, em cada uma dessas linhas, o título da obra, o número de cópias existentes, o número de obras ocupadas e o número de obras disponíveis.

Atendendo os requisitos B2 – Impressões.

46

Modelo de Caso de Uso para Listagens

Atendendo os requisitos B2 – Impressões.

47

Gerando a documentação do SI.

O StarUML pode gerar a documentação usando a opção de menu Tools -> StarUML Generator… Clique em Next

48

Gerando a documentação do SI.

O StarUML pode gerar a documentação usando a opção de menu Tools -> StarUML Generator… Clique em Next

49

Gerando a documentação do SI.

O StarUML pode gerar a documentação usando a opção de menu Tools -> StarUML Generator… Clique em Generate.

50

Gerando a documentação do SI.

O StarUML pode gerar a documentação usando a opção de menu Tools -> StarUML Generator… Clique em Finish.

51

Gerando a documentação do SI.

O StarUML pode gerar a documentação usando a opção de menu Tools -> StarUML Generator… Clique em Finish. PRONTO!
52

Gerando a documentação do SI.

O documento gerado pelo StarUML tem as seguintes caracteristicas: 2.Índice Analítico e Remissivo; 3.Contem a Narrativa dos casos bem como os diagramas dos seus gráficos;

53

Documentando Requisitos Não-Funcionais

Diagrama de Implantação

54

REVISÃO

1. Sistemas 2. Sistemas de Informação 3. Ciclo de Vida 4. Engenharia de Requisitos 5. Análise Estruturada e Orientada a Objetos
55

Visite o site e avalie a aula.

http://www.inepad.org.br/interativacoc/

Utilize seu código e senha de aluno.
56

Sign up to vote on this title
UsefulNot useful