aula 01 - conceitos gerais · pdf fileconfiabilidade; preço e desempenho; sistemas...

23
14/02/2016 1 UML Prof. Esp. Fabiano Taguchi http://fabianotaguchi.wordpress.com [email protected] UML COMPETÊNCIA COMPETÊNCIA COMPETÊNCIA COMPETÊNCIA: Conhecer e desenvolver estudos de caso usando modelagem orientada a objeto. HABILIDADE HABILIDADE HABILIDADE HABILIDADE: Conhecer os fundamentos do desenvolvimento de um sistema e as ferramentas de análise e desenvolvimento de projetos de Sistemas de Informação. CARGA CARGA CARGA CARGA HORÁRIA HORÁRIA HORÁRIA HORÁRIA: 44 horas

Upload: dangkhuong

Post on 01-Feb-2018

218 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

1

UML

Prof. Esp. Fabiano Taguchihttp://fabianotaguchi.wordpress.com

[email protected]

UML

� COMPETÊNCIACOMPETÊNCIACOMPETÊNCIACOMPETÊNCIA:::: Conhecer e desenvolver estudos de casousando modelagem orientada a objeto.

� HABILIDADEHABILIDADEHABILIDADEHABILIDADE:::: Conhecer os fundamentos do desenvolvimento deum sistema e as ferramentas de análise e desenvolvimento deprojetos de Sistemas de Informação.

� CARGACARGACARGACARGA HORÁRIAHORÁRIAHORÁRIAHORÁRIA:::: 44 horas

Page 2: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

2

INFORMAÇÕES IMPORTANTES

� ATENÇÃO COM AS FALTAS E O CONTEÚDO!

� AVALIAÇÃO IRÁ ACONTECER NO DECORRER DAS AULAS.� EXERCÍCIOS DURANTE AS AULAS� APRESENTAÇÃO DA MODELAGEM DE UM SISTEMA

� AULAS SERÃO DIVIDIDAS ENTRE TEORIA E PRÁTICA.

DESENVOLVIMENTO DE SOFTWARES

Page 3: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

3

CRISE DO SOFTWARE

“A indústria do software tem tido uma crise que a acompanha há quase 30 anos.”

Esses problemas abrangem:

� Desenvolvimento;

� Testes;

� Manutenção.

CRISE DO SOFTWARE

Custos do hardware diminuem

Custos do software aumentam

Os desafios do softwares são classificados em:

� Confiabilidade;

� Preço e desempenho;

� Sistemas críticos.

Page 4: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

4

A VERDADE É QUE:

A sofisticação do software ultrapassou a capacidade deconstrução, que também não consegue acompanhar a demandapor novos softwares. Por que?

� Planejamento?

� Documentação?

� Testes?

ENGENHARIA DE SOFTWARE

“Engenharia de software é uma disciplina que estuda todos os aspectos da produção de softwares.”

Diferindo em aspectos como:Diferindo em aspectos como:Diferindo em aspectos como:Diferindo em aspectos como:

� Software é desenvolvido, não produzido;

� Software não se desgasta;

� Produzido para um cliente específico.

Page 5: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

5

ASPECTOS DE UM BOM SOFTWARE

� Facilidade de manutenção;

� Confiança;

� Eficiência;

� Usabilidade.

ATIVIDADES EM UM PROJETO

1. Especificação de requisitos;

2. Projeto de software

3. Implementação

4. Validação do software

5. Evolução do software

Page 6: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

6

AVALIAÇÃO DE APRENDIZAGEM

01 - Por que leva tanto tempo para concluir um sistema de software?

02 – Por que os custos são tão altos?

03 - Por que não achamos todos os erros antes de entregar o softwareao cliente?

04 - Por que gasta-se tantos recursos para manter sistemas existentes(antigos)?

MODELOS DE PROCESSOS

Page 7: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

7

MODELO CASCATA

Consiste em atividades sequenciais, com documentaçãorígida. Este modelo é pouco usado na prática, pois:

� Raramente o cliente consegue estabelecer todos os requisitosde início;

� Difícil de se adequar as mudanças;

� Versão só pode ser visualizada ao final do projeto.

MODELO CASCATA

Page 8: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

8

DESENVOLVIMENTO INCREMENTAL

As atividades são intercaladas, permitindo que sejapassado um feedback imediato ao cliente. Neste modelo asmudanças tendem a corromper a modularidade do sistema,tornando a gerencia deste projeto algo bastante complexo.

No desenvolvimento incremental é possível começar adesenvolver o sistema pelas partes de menos complexidade emais claras para o cliente.

DESENVOLVIMENTO INCREMENTAL

Page 9: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

9

BASEADO EM REUSO

Este processo baseia-se na integração dos componentesreusáveis, com isso, diminui a quantidade de software a serdesenvolvido, os custos e os riscos.

Em contra partida este modelo torna a gerencia bastantecomplexa.

DEFINIÇÃO DE REQUSIITOS

Page 10: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

10

REQUISITOS

São os serviços fornecidos pro um sistema e sãoclassificados em requisitos funcionais e não funcionais.

� FUNCIONAISFUNCIONAISFUNCIONAISFUNCIONAIS = Descrevem as funcionalidade e serviços

� NÃONÃONÃONÃO FUNCIONAISFUNCIONAISFUNCIONAISFUNCIONAIS = Definem propriedades e restrições

REQUISITOS FUNCIONAIS

Este requisitos documentam como o sistema deve reagir aentradas específicas e como devem se comportar emdeterminadas situações.

Exemplos:

� Todo usuário poderá fazer consultas em um banco de dados.

� Cada nota fiscal deverá possuir um código.

� Sistema deve notificar o requisitante por e-mail quando arequisição estiver disponível para retirada.

Page 11: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

11

REQUISITOS NÃO FUNCIONAIS

Mapeiam aspectos qualitativos de um software: performance,segurança, perspectiva do usuário, comunicação e usabilidade.

Exemplos:

� A interface do usuário deverá sem escrito em HTML simples;

� Todos os documentos devem seguir o padrão de nome XYZ-00;

� O tempo de resposta de uma requisição deve ser de 0,2 segundos.

ENGENHARIA DE REQUISITOS

Page 12: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

12

ETAPAS DA ENGENHARIA DE REQUISITOS

Quatro são as fases:

1. Estudo de viabilidade;

2. Elicitação de requisitos;

3. Especificação de requisitos

4. Validação de requisitos

ESTUDO DE VIABILIDADE

Todo sistema novo deve começar por um estudo deviabilidade, no qual deve ser respondidas perguntas como:

� O sistema pode ser implementado com a tecnologia atualdentro das restrições de custo e prazo?

� O sistema pode ser integrado a outros sistemas em operação?

� Como a organização se comportaria sem este sistema?

� Que processos serão auxiliados por esse novo sistema?

Page 13: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

13

ELICITAÇÃO E ANÁLISE DE REQUISITOS

ESPECIFICAÇÃO DOS REQUISITOS

Construir o documento com os requisitos identificados.

Page 14: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

14

VALIDAÇÃO DE REQUISITOS

Esta etapa serve para mostrar que os requisitos realmentedefinem o sistema que o cliente deseja, nesta etapa é possívelverificar os problemas com os requisitos, com verificações de:

� Validade;

� Consistência;

� Completude;

� Realismo.

EXERCÍCIOS DE APRENDIZAGEM

Page 15: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

15

EXERCÍCIOS DE APRENDIZAGEM

UML

Page 16: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

16

ORIENTAÇÃO A OBJETO

� Abstração

� Classes

�Objetos

� Atributos

� Métodos

� Método construtor

� Herança

� Polimorfismo

� Sobrecarga

� Encapsulamento

� Interface

MODELAGEM

O que é modelagem?O que é modelagem?O que é modelagem?O que é modelagem?

Por que precisamos usar modelos?Por que precisamos usar modelos?Por que precisamos usar modelos?Por que precisamos usar modelos?

Page 17: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

17

HISTÓRICO

A UML surgiu entre os anos de 1998 e 2000.

Consiste em uma linguagem visual para especificação desistemas orientados a objetos, independente da linguagem deprogramação a ser usada.

� Dados (Estrutural)

�Operações (Funcional)

� Eventos (Temporal)

HISTÓRICO

Em seu início notações diferentes eram usados paradescrever projetos orientados a objetos, a UML acabou por setornar a integração dessas várias notações.

� É uma linguagem não proprietária;

� Não é uma metodologia de desenvolvimento.

Page 18: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

18

FERRAMENTAS

Existe uma gama de ferramentas muito grande paramodelagem a partir da UML, dentre as mais conhecidas:

� Rational Rose;

� Enterprise Architect;

� Astah;

� StarUML;

� ArgoUML.

OBJETIVO DA UML

� Modelar sistemas usando os conceitos de orientação a objetos;

� Ajudar a equipe de projeto a visualizar um sistema como elepretende ser;

� Auxiliar a especificar a estrutura e o comportamento do sistemaao passar do tempo;

� Proporcionar um modelo que sirva de guia para a construçãodo sistema;

Page 19: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

19

CONCEITOS UML

Dois conceitos iniciais são importantes :

� DIAGRAMADIAGRAMADIAGRAMADIAGRAMA: É uma visão de um modelo.

� MODELOMODELOMODELOMODELO: É a descrição completa de um sistema em umadeterminada perspectiva.

ESTRUTURAÇÃO UML – 13 DIAGRAMAS

DIAGRAMAS ESTRUTURAISDIAGRAMAS ESTRUTURAISDIAGRAMAS ESTRUTURAISDIAGRAMAS ESTRUTURAIS� Diagrama de classes, objetos e pacotes;� Diagrama de implantação, componentes e estruturação composta.

DIAGRAMAS COMPORTAMENTAISDIAGRAMAS COMPORTAMENTAISDIAGRAMAS COMPORTAMENTAISDIAGRAMAS COMPORTAMENTAIS� Casos de uso e diagrama de atividades;� Diagrama de máquinas de estado.

DIAGRAMAS DE INTERAÇÃODIAGRAMAS DE INTERAÇÃODIAGRAMAS DE INTERAÇÃODIAGRAMAS DE INTERAÇÃO� Diagramas de sequência, comunicação, tempo e visão geral da interatividade.

Page 20: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

20

EXERCÍCIOS

EXERCÍCIO

Em grupo de até 04 pessoas, liste 10 requisitos funcionais e 10requisitos não funcionais para os seguintes projetos de software:

� Posto de combustível;

� Venda de passagens;

� Pizzaria;

� Escola de idiomas;

� Padaria.

Page 21: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

21

DEFINIÇÃO DO SISTEMA – POSTO DE COMBUSTÍVEL

O caso em questão será o desenvolvimento de um sistema paracontrole de pagamentos de abastecimento em um posto decombustível localizado no centro da cidade. Este sistema deveráarmazenar todas as informações necessárias para que se possafazer a venda de combustível ao cliente.

DEFINIÇÃO DO SISTEMA – VENDA DE PASSAGENS

O sistema para venda de passagensatenderá uma empresa de transportes emespecífico, este sistema tem como objetivofazer a venda e reservas de passagensrodoviárias.

Page 22: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

22

DEFINIÇÃO DO SISTEMA – PIZZARIA

Uma pizzaria da cidade vaicomeçar a trabalhar com teleentregas, para isso necessita deum sistema para controle depedidos. O objetivo do sistema égerenciar os pedidos de pizza erepassar ao setor de produção.

DEFINIÇÃO DO SISTEMA – ESCOLA DE IDIOMAS

Uma escola de idiomas foi criada por dois amigos, e precisar de um sistema para matricular os alunos. O objetivo deste sistema é que se faça o cadastro e matrícula dos alunos.

Page 23: AULA 01 - CONCEITOS GERAIS · PDF fileConfiabilidade; Preço e desempenho; Sistemas críticos. 14/02/2016 4 A VERDADE É QUE: ... Microsoft PowerPoint - AULA 01 - CONCEITOS GERAIS

14/02/2016

23

DEFINIÇÃO DO SISTEMA – PADARIA

Para uma padaria, o sistema a ser desenvolvido será instaladoapenas no caixa da padaria, ou seja, o objetivo principal destesistema é fazer a gestão da cobrança das comandas.