Análise Orientada a Objetos
|
|
|
- Diogo Mangueira Madeira
- 8 Há anos
- Visualizações:
Transcrição
1 Análise Orientada a Objetos 11/04/2006 Prof. Vítor Souza Análise e Projeto Orientado a Objetos Departamento de Informática Univ. Federal do Espírito Santo
2 Licença para uso e distribuição Este material está disponível para uso não-comercial e pode ser derivado e/ou distribuído, desde que utilizando uma licença equivalente. Atribuição-Uso Não-Comercial- Compatilhamento pela mesma licença, versão Você pode copiar, distribuir, exibir e executar a obra, além de criar obras derivadas, sob as seguintes condições: (a) você deve dar crédito ao autor original, da forma especificada pelo autor ou licenciante; (b) você não pode utilizar esta obra com finalidades comerciais; (c) Se você alterar, transformar, ou criar outra obra com base nesta, você somente poderá distribuir a obra resultante sob uma licença idêntica a esta.
3 Sobre o curso Estes slides foram criados no Departamento de Informática da Universidade Federal do Espírito Santo (UFES) e estão disponível no seguinte endereço: O material usado como base foi cedido pelo professor Dr. Ricardo de Almeida Falbo, do DI/UFES: Este curso tem como objetivo apresentar os conceitos da análise e projeto orientado a objetos a profissionais e estudantes de Engenharia de Software.
4 Processo de desenvolvimento O que é um processo? Entrada Processamento Saída Principais componentes de um processo: Atividades; Artefatos (insumos e produtos); Recursos; Procedimentos.
5 São necessários? Em pequenos projetos, podem não ser; Em grandes projetos, eles: Formalizam a comunicação; Guiam o desenvolvimento; Auxiliam na garantia da qualidade. O que é qualidade? Um sistema correto, rápido, confiável, fácil de usar, eficiente, etc.; Um sistema fácil de entender, de modificar, reutilizável, portável, etc.
6 Como escolher um processo? Depende de vários fatores: Produto a ser desenvolvido; Time de desenvolvimento; Cliente; Rigor em relação à documentação; Limites de prazo e custo; Etc.
7 Definição do processo Definição das atividades-chave: Planejamento, requisitos, análise, projeto, etc. Escolha de um paradigma: Orientado a Objetos, Estruturado, etc. Escolha de um modelo de ciclo de vida: Linear, incremental, evolutivo, etc.
8 Atividades-chave Planejamento; Levantamento de Requisitos; Análise; Projeto; Implementação; Testes; Implantação; Operação; Manutenção.
9 Planejamento Definição de estimativas de custo, tempo e utilização de recursos; Plano de projeto: proposta de desenvolvimento, definição do processo; Informações atualizadas regularmente (revisões a cada final de etapa).
10 Levantamento de requisitos Refinamento do escopo; Identificação dos requisitos; Compreensão do domínio do problema.
11 Análise Modelagem, avaliação e documentação dos requisitos; Foco no que o software deve fazer, e não em como ele fará.
12 Projeto Definição da plataforma de implementação; Incorporação de requisitos tecnológicos; Foco em como cada requisito será implementado; Refinamentos sucessivos até chegar ao nível de implementação.
13 Implementação Tradução do projeto para uma linguagem de programação; Objetiva ter um software executável.
14 Testes Validação da funcionalidade por parte do time de desenvolvimento; Diversos tipos: Testes de unidade; Testes de integração; Testes de sistema; Testes de carga/estresse; Etc.
15 Implantação Colocação do sistema em produção; Envolve outros aspectos: Treinamento de usuários; Configuração do ambiente; Conversão de tecnologias; Etc. Validação das funcionalidades por parte do usuário.
16 Operação Software em utilização pelo cliente.
17 Manutenção Alterações no software: Erros encontrados; Adaptações a alterações do ambiente; Funcionalidade adicional; Ajuste fino; Etc. Pode requerer a definição de um novo processo de software.
18 O paradigma Vantagens do paradigma OO: Mesma notação durante todo o processo; Redução do gap semântico; Promove desenvolvimento incremental e evolutivo; Reusabilidade; Extensibilidade; Modularidade; Etc.
19 O modelo de ciclo de vida Estrutura as atividades do processo em fases e define como se relacionam; Muitos se encaixam no paradigma OO; Exemplos: Seqüencial linear; Incremental; Evolutivos; Ágeis.
20 Modelo seqüencial linear Mais antigo e mais fácil de gerenciar; Fases executadas uma vez, em seqüência; Várias fraquezas: Projetos reais não seguem o fluxo seqüencial; Não acomoda incertezas; Demora para produzir algo concreto; Não otimiza a alocação de recursos humanos. A1 A2 Em Cascata A3
21 Modelo incremental Variação do seqüencial linear; Levantamento de requisitos e análise são feitos seqüencialmente; Projeto, implementação e testes são feitos em incrementos; Cada incremento gera uma parte operacional do sistema.
22 Modelos evolutivos Premissa de que os requisitos evoluem ao longo do tempo; Em geral são processos iterativos; Cada iteração constrói um incremento de software, que evolui com o tempo.
23 Evolutivo básico
24 Modelo espiral
25 Rational Unified Process (RUP)
26 Modelos ágeis Nova filosofia que valoriza: Indivíduos e interações ao invés de processos e ferramentas; Software funcional ao invés de documentação; Colaboração ao invés de negociação; Responder às mudanças ao invés de seguir um plano. Exemplos: Extreme Programming (XP); Agile Modeling; SCRUM; Etc.
27 Exemplo de processo OO Planejamento Levantamento de Requisitos Análise OO Plano de Projeto Especificação de Requisitos Especificação de Análise
28 Exemplo de processo OO Projeto OO Implementação Testes Especificação de Análise Especificação de Projeto Código-Fonte
29 Neste curso... Já vimos Levantamento de Requisitos: Resumo de Engenharia de Requisitos; Técnicas de levantamento de requisitos; Modelagem de casos de uso. Veremos Análise OO: Identificação de classes, hierarquias, associações a atirbutos; Identificação de subsistemas; Identificação de comportamento e operações.
30 A Linguagem de Modelagem Unificada (UML) 11/04/2006 Prof. Vítor Souza Análise e Projeto Orientado a Objetos Departamento de Informática Univ. Federal do Espírito Santo
31 Unified Modeling Language Padrão de facto para especificar, visualizar, documentar e construir artefatos de um sistema desenvolvido sob o paradigma Orientado a Objetos; Nasceu para o paradigma OO, mas não é exclusiva para ele; Teve origem em três outros métodos: OMT (Rumbaugh et al., 1994); Método de Booch (Booch, 1994); Método OOSE (Jacobson, 1992).
32 UML Aprovada e homologada pela OMG (Object Management Group) em Sua versão atual é 2.0; A notação pode ser unificada, mas a decisão de qual artefato produzir depende do processo definido para o projeto; Pode ser utilizada em diferentes processos de desenvolvimento orientados a objetos, em todas as etapas do ciclo de desenvolvimento.
33 Diagramas da UML de Casos de Uso; de Classes; de Objetos; de Estrutura Composta; de Seqüência; de Comunicação; de Estados; de Atividades; de Componentes; de Implantação; de Pacotes; de Interface Geral; de Tempo.
34 Diagramas de casos de uso Modela as funcionalidades do sistema; Captura típicas interações usuário sistema; Usuários são atores; Atores e casos de uso são associados; Cada caso é descrito em detalhes separadamente.
35 Diagramas de classes Classe Abstrata Herança Classe Associativa Nome Atributos Operações Associação (e suas cardinalidades) Agregação Classe
36 Diagramas de estados Estado Inicial Transição Estado Estado Final
37 Diagramas de seqüência Ator Objeto Mensagem Retorno Condição Exclusão
38 Modelagem estática 11/04/2006 Prof. Vítor Souza Análise e Projeto Orientado a Objetos Departamento de Informática Univ. Federal do Espírito Santo
39 Análise orientada a objetos Modelagem estática: Identificação de classes; Especificação de hierarquias de generalização/especialização; Identificação de subsistemas; Identificação de associações e atributos. Modelagem dinâmica: Determinação do comportamento; Definição de operações.
40 Classes Em última instância, um sistema OO é um conjunto de objetos que se comunicam; Objetos são categorizados em classes; Não modelamos objetos, modelamos classes; Logo, o processo central da Análise OO é a descoberta de classes que devem ser incluídas no modelo.
41 Como identificar classes? Internalize os conceitos OO; Analise os requisitos (documento e casos de uso) estude o domínio do problema; Facilitadores: Faça uma análise gramatical dos casos de uso; Observe o ambiente do problema; Procure ouvir atentamente os especialistas; Verifique resultados de análise OO anteriores; Observe outros sistemas; Consulte fontes bibliográficas.
42 Possíveis candidatos à classes Coisas que são parte do domínio do problema: Ex.: pessoas, clientes, turmas, produtos, etc. Papéis desempenhados pelas diferentes pessoas que interagem direta ou indiretamente com o sistema: Ex.: piloto, atendente, gerente etc. Ocorrências ou eventos que precisam ser registrados e lembrados pelo sistema: Ex.: reclamação do cliente, reunião, etc. Locais físicos ou geográficos e lugares que estabelecem o contexto do problema: Ex.: loja, aeroporto, etc. Unidades organizacionais (departamentos, divisões etc) que possam ser relevantes para o sistema: Ex.: local para entrega, setor, etc.
43 Critério para seleção Uma classe deve: Reter informações úteis; Prover serviços que são requeridos pelos usuários (e inerentes à fase de análise); Ter mais de um atributo; Ter mais de uma instância; Ter atributos e operações que são comuns a todas as suas instâncias.
44 Como modelar classes? Representação em UML Nome da Classe <Lista de atributos> <Lista de operações> Após identificadas, são dispostas em diagramas de classes. Se estiver em itálico, a classe é abstrata. Sintaxe: <escopo> <nome> : <tipo> = <valor default> Escopo: - privado + público # protegido Tipo: ignorado na fase de análise. Sintaxe: <escopo> <nome> (<parâmetros>) : <tipo> <parâmetros> = lista de pares <nome> : <tipo>, separada por vírgula. Tipo: ignorado na fase de análise.
45 Hierarquias Um dos principais mecanismos de estruturação de conceitos; Captura similaridades entre classes. Especialização Generalização
46 Diretrizes para herança Deve modelar relações é-um-tipo-de ; Instâncias da subclasse são por definição instâncias da superclasse. Tudo que é dito para esta última vale para a primeira. Subclasses devem suportar toda a funcionalidade das superclasses e possivelmente mais; Funcionalidade comum a diversas classes deve estar o mais alto possível na hierarquia; A herança deve estar no domínio do problema e fazer parte das responsabilidades do sistema; Classes que não adicionam funcionalidade nem redefinem funcionalidades existentes devem ser eliminadas.
47 Separação em subsistemas Projetos grandes podem conter centenas de classes e estruturas diversas; Divisão das classes em pacotes: Coleção de classes que colaboram entre si; Conjunto coeso de responsabilidades; Caixa preta. Vantagens: Facilita o entendimento para leitores; Auxilia na organização de grupos de trabalho; Organiza a documentação.
48 Pacotes de classes x subsistemas Casos de uso podem ser um bom ponto de partida para definição do agrupamento; No entanto, não é obrigatório que a divisão seja a mesma; Apresenta-se um diagrama de pacotes e cada pacote possui um diagrama de classes próprio.
49 Associações entre pacotes Nos pacotes de classes: classes do Pacote 02 aparecem no diagrama de classes do Pacote 01 (como se fossem importadas ). Nos pacotes de casos de uso: casos de uso do Subsistema 01 dependem (<<include>>, <<extends>>, etc.) de casos de uso do Subsistema 02.
50 Identificando relacionamentos Classes se relacionam por meio de associações simples, agregações ou composições; Indicam possíveis ligações entre os objetos das classes associadas.
51 Cardinalidades Indicam quantos objetos podem participar de um determinado relacionamento. Objetos da ClasseA podem se relacionar com no mínimo zero e no máximo três objetos da ClasseB. Um e somente um. Nenhum, um, ou vários.
52 Papéis Indicam o papel que a classe desempenha na associação (são usados substantivos); É opcional, usado quando melhora o entendimento do modelo; Sintaxe: <escopo> <nome>.
53 Relacionamentos n-para-n Perfeitamente legais; Requerem atenção à possíveis atributos do relacionamento (eventos a serem lembrados). É requisito do sistema armazenar data de início e fim da alocação de um funcionário a um projeto?
54 Classes associativas
55 Relacionamentos recursivos Perfeitamente legais; Geralmente pedem definição de papéis.
56 Associações n-árias Associações entre três ou mais classes; Extremamente raras, muitas vezes as ferramentas CASE nem dão suporte.
57 Agregação e composição Tipos especiais de associação, já estudados.
58 Qual a semântica da agregação Não há consenso; Uma visão: Na agregação ou composição, as partes só podem existir como membros do todo; A composição difere da agregação por restringir que a parte só participe de 1 todo. Outra visão: Na agregação, as partes podem existir sem o todo e viceversa; A composição difere da agregação por restringir que o todo não vive sem as partes.
59 Atributos de classes Atributos são informações de estado (propriedades) para o qual cada objeto em uma classe tem seu valor; Muito similares às associações: Como atributos têm um tipo, podemos considerar que são associações com um tipo; Para tipos primitivos definimos atributos, do contrário modelamos uma associação; Em última instância, associações e atributos são implementados da mesma forma; Atributos e associações definem uma classe.
60 Como identificar atributos Quatro passos: Descoberta de atributos; Posicionamento dos atributos em uma hierarquia de classes; Revisão da hierarquia de classes; Especificação dos atributos.
61 Descoberta de atributos Não há mágica. Usamos as mesmas técnicas da descoberta de classes; Características de um atributo: Informação relevante no contexto do problema; Captura um conceito atômico (do contrário seria uma classe). Muitas classes identificadas e que não passam nos critérios de classe podem vir a ser atributos.
62 Posicionamento de atributos Atenção à hierarquias de classes: Atributos genéricos ficam mais acima na hierarquia; Por outro lado, se ele não se aplica a algumas subclasses, deve ser trazido para baixo, somente para as classes apropriadas. Revisão da hierarquia: Descoberta de atributos nos leva a um melhor entendimento, o que possivelmente implicará revisão de hierarquias.
63 Especificação de atributos Escolha um nome com significado; Siga um padrão de nomenclatura; Inclua-o na modelagem de classes:
64 Dicionário de dados Incluído na especificação de análise; Descreve cada atributo: Seu significado no domínio; Unidades de medida; Intervalo / limite; Enumeração; Precisão; Valor default; Obrigatoriedade; Etc.
65 Modelagem dinâmica 11/04/2006 Prof. Vítor Souza Análise e Projeto Orientado a Objetos Departamento de Informática Univ. Federal do Espírito Santo
66 Comportamento dinâmico Os diagramas de classes representam apenas elementos estáticos, dados; É preciso, ainda, representar o comportamento da aplicação em função do tempo e de eventos específicos; Modelar o comportamento: Indica como o sistema irá responder a eventos ou estímulos externos; Auxilia o processo de descoberta das operações das classes do sistema.
67 Modelos da UML Diagramas de Estados: Descrevem os estados possíveis pelos quais um particular objeto pode passar e suas transições, estímulos e atividades; Diagramas de Interação: Descrevem como grupos de objetos colaboram entre si em um certo comportamento.
68 Diagrama de Máquina de Estados Similar ao Diagrama de Transição de Estados (DTE), do paradigma Estruturado; Construído para uma única classe; Mostra o comportamento dos objetos desta classe ao longo do tempo: Estados possíveis; Eventos que alteram estado; Características de cada estado; Etc.
69 Notação Estado Inicial Estado Final Transição Estado
70 Estados Nome: deve descrever claramente o estado; Atividades: De entrada: ocorrem ao entrarmos no estado; De saída: ocorrem ao saírmos do estado; Convencional: ocorrem enquanto o objeto estiver naquele estado.
71 Estados inicial e final Os estados ligados ao estado inicial são aqueles nos quais o objeto pode estar logo quando for construído; Deve haver um e somente um estado inicial; Os estados ligados a um estado final são aqueles dos quais o objeto não mais sairá; Não é obrigatório ter e pode ter mais de um; Um estado ligado a um estado final não pode ter transições para outros estados.
72 Eventos, condições e ações Indicam a possibilidade de ir de um estado a outro; Evento: evento externo que motivou a transição; Condição de guarda: condição necessária para efetuar a transição (além do evento); Ação: ação realizada durante a transição.
73 Ação x atividade Ação x atividade convencional: Uma ação ocorre durante a transição (ela é atômica); Uma atividade ocorre enquanto o objeto permanece no estado (quando ela acabar, ele muda de estado); Ação x atividades de entrada/saída: Caso só haja uma transição de entrada/saída, não há diferença na prática.
74 Exemplos Ao ser criado, o objeto da classe em questão encontra-se no estado E-1. Se o objeto estiver no estado E-1 e ocorrer o evento E, se a condição C = true, ocorre a ação A e o objeto passa para o estado E-2. Enquanto estiver no estado E-1, o objeto realiza a atividade A. Ao terminar a atividade A, automaticamente ele muda para o estado E-2.
75 Como identificar estados Somente para algumas classes: Que possuam comportamento variável no tempo em cada estado se comportam de maneira diferente; Nas quais seja possível identificar ao menos três estados distintos; Cujo passado influencia no seu comportamento atual; Um estado é uma situação durante a vida de um objeto durante a qual ele satisfaz alguma condição, realiza alguma atividade ou aguarda algum evento.
76 Como identificar transições Dado um estado, verificamos para quais outros estados ele pode passar e o evento em que isso ocorre; Na grande maioria das vezes, os casos de uso ou cenários são os eventos que acionam as transições; Após identificadas, avalie condições de guarda e ações.
77 Dicas práticas Preste atenção nas classes próximas, pois podem ser alvos de ações ou participar de condições; Identifique na especificação os eventos aos quais os objetos da classe devem responder; Se um estado for muito complexo, considere criar um subdiagrama só para ele; Verifique se todas as ações estão condizentes com sua modelagem de classes; Simule o sistema em execução e procure estados nãoalcançáveis, loops ou deadlocks.
78 Mais um exemplo
79 Diagramas de interação Ajudam a compreender e capturar o fluxo global de controle; Modelam um conjunto de objetos e as mensagens que trocam; Foco em uma funcionalidade específica (caso de uso); Dois tipos de diagrama: Diagrama de Sequência (temporal); Diagrama de Colaboração (estrutural).
80 Diagramas de seqüência Foco no tempo e no controle; Usaremos como uma formalização de um fluxo de um caso de uso / cenário.
81 Notação geral Classe Objeto F L U X O Escopo Retorno Linha de vida do objeto Marcador de iteração
82 Criação de objetos
83 Exclusão de objetos referência a um objeto
84 Condicionais e loops Para loops: [for i = 0; i < 10; i++] ou [for each obj in lista]
85 UML 2.0
86 Diagrama de colaboração Ênfase na organização dos objetos que participam da interação; Notação similar a grafos: objetos são vértices e mensagens são arestas.
87 Exemplo
Requisitos de Sistemas
Requisitos de Sistemas Unidade II - Processos de Negócio Identificação Conceitos Modelagem - BPM - UML Processos x Requisitos 1 Processo de negócio CONCEITO Um processo de negócio, processo organizacional
Tópicos da Aula. A Linguagem UML. A Linguagem UML. De onde surgiu? Fundadores da UML. Introdução à UML e Diagrama de Casos de Uso.
Engenharia de Software Aula 07 Tópicos da Aula Introdução à UML e Introdução a UML Visão geral de alguns diagramas Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo [email protected] 28 Março 2012 A
UML (Unified Modelling Language)
UML (Unified Modelling Language) Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Referências: Booch, G. et al. The Unified Modeling Language User Guide
UML e seus diagramas
UML e seus diagramas A UML Unified Modeling Language (Linguagem de Modelagem Unificada), como o próprio nome já diz, é uma linguagem para modelagem de objetos do mundo real, usada para especificar, construir,
Modelagem de Casos de Uso
Modelagem de Casos de Uso 11/04/2006 Prof. Vítor Souza Análise e Projeto Orientado a Objetos Departamento de Informática Univ. Federal do Espírito Santo Licença para uso e distribuição Este material está
Rational Unified Process (RUP)
Rational Unified Process (RUP) A Rational é bem conhecida pelo seu investimento em orientação em objetos. A empresa foi à criadora da Unified Modeling Language (UML), assim como de várias ferramentas que
Análise de Sistemas. Aula 5
Análise de Sistemas Aula 5 Prof. Emerson Klisiewicz CONTEXTUALIZAÇÃO Aula 5 Análise Orientada a Objetos Introdução a UML Histórico e Visão Geral Ferramentas CASE O Sucesso... Clientes satisfeitos Eles
Introdução a UML (Unified Modeling Language)
Introdução a UML (Unified Modeling Language) O que é a UML? Linguagem Gráfica de Modelagem para: Visualizar Especificar Construir Documentar Comunicar Artefatos de sistemas complexos Linguagem: vocabulário
A Linguagem UML. A Linguagem UML. De onde surgiu? Fundadores da UML. História da UML. O que é modelagem?
DCC / ICEx / UFMG A Linguagem UML A Linguagem UML Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo UML (Linguagem de Modelagem Unificada) É uma notação gráfica (visual) para projetar sistemas OO Não
Notas de Aula 03: Introdução a Orientação a Objetos e a UML
Notas de Aula 03: Introdução a Orientação a Objetos e a UML Objetivos da aula: Introduzir os conceitos da Orientação à Objetos (O.O) Introduzir os conceitos da UML Relacionar os processos às ferramentas
UML. Trabalho Análise e Projeto de Sistemas. Aluna: Luana Alves Businaro
Curso Técnico Integrado de Informática 2 Ano Projeto Integrador Formação Profissional Trabalho Análise e Projeto de Sistemas UML Aluna: Luana Alves Businaro-1614193 Maio de 2017 Sumário 1 Introdução...
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA UML UNIFIED MODELING LANGUAGE
1 INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA UML UNIFIED MODELING LANGUAGE Nickerson Fonseca Ferreira [email protected] O que é?? 2 A UML
MODELAGEM DE SISTEMAS. Introdução a Computação e Engenharia de Software. Profa. Cynthia Pinheiro
MODELAGEM DE SISTEMAS Introdução a Computação e Engenharia de Software Profa. Cynthia Pinheiro Introdução Modelagem de Sistemas: A modelagem de um sistema auxilia o analista a entender a funcionalidade
Introdução. à UML. Histórico (cont.) Histórico Definição Benefícios Notação Diagrama de Classes Diagramas de Interação Conclusões Revisão
Sumário Introdução à UML BSI Bacharelado em Sistemas de Informação LOO Linguagens Orientadas a Objetos Humberto Mossri de Almeida [email protected] Marcelo Nassau Malta [email protected]
Processo. Processo unificado. Principais Características do UP. Principais Características do UP RUP. Unified Process (Processo Unificado)
Processo UP Unified Process (Processo Unificado) Conjunto de passos que tem como objetivo atingir uma meta Processo de software na ES, processo que visa a produzir o software - de modo eficiente e previsível
Análise e Projeto de Sistemas
Análise e Projeto de Sistemas Rafael Vargas Mesquita http://www.ci.ifes.edu.br ftp://ftp.ci.ifes.edu.br/informatica/mesquita/ Para uma Análise Orientada a Objetos Identificação de Classes Especificação
UML Diagrama de Atividades Diagrama de Caso de Uso. ENG1518/3VB Sistemas de Informação Gerenciais Prof. Marcos Villas
Diagrama de Atividades Diagrama de Caso de Uso ENG1518/3VB Sistemas de Informação Gerenciais Prof. Marcos Villas [email protected] 1 - Conceitos 2 UML é uma linguagem para: Especificar Visualizar Construir...
1 Introdução. 1.1 Teoria dos Sistemas 23/4/2010
1 1 Introdução 1.1 Teoria dos Sistemas 1.2 Constituição dos sistemas 1.3 Natureza dos sistemas 1.4 Parâmetros do sistema 1.5 Descrição de sistemas 1.6 Desafios enfrentados no desenvolvimento 1.7 Perfil
Análise e projeto de sistemas
Análise e projeto de sistemas Conteúdo: UML O processo de desenvolvimento de software Prof. Patrícia Lucas A linguagem de modelagem unificada (UML) A UML teve origem em uma tentativa de se unificar os
Departamento de Sistemas de Computação Universidade de São Paulo Análise e Projeto Orientados a Objetos Aula 2 O Processo Unificado (PU)
Departamento de Sistemas de Computação Universidade de São Paulo Análise e Projeto Orientados a Objetos Aula 2 O Processo Unificado (PU) Prof. Seiji Isotani ([email protected]) Modelos de Processo de
Ciência da Computação. Análise e Projeto Orientado a Objetos UML. Anderson Belgamo
Ciência da Computação Análise e Projeto Orientado a Objetos UML Anderson Belgamo 1 Evolução do Software O rápido crescimento da capacidade computacional das máquinas resultou na demanda por sistemas de
Introdução Diagrama de Classes Diagrama de Seqüência Diagrama de Atividades. Diagramas UML. Classe, Seqüência e Atividades. Marcio E. F.
Diagramas UML Classe, Seqüência e Atividades Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 15 de maio
Engenharia de Software Processo de Desenvolvimento. Ciclo de Vida - Modelo Cascata
Processo de Desenvolvimento Também chamado de ciclo de vida do software Reflete os passos necessários para se construir um produto de software Existem vários modelos de ciclo de vida Cascata (1956) Iterativo
Introdução à Análise e Projeto de Sistemas
Introdução à I. O Que vamos fazer na Disciplina? Saber uma linguagem de programação orientada a objeto (OO) não é suficiente para criar sistemas OO Tem que saber Análise e Projeto OO (APOO) Isto é, Análise
Introdução à UML. Universidade Federal de Mato Grosso do Sul Sistemas de Informação - CPCX. Prof. Fernando Maia da Mota
Universidade Federal de Mato Grosso do Sul Sistemas de Informação - CPCX Introdução à UML Prof. Fernando Maia da Mota Slides gentilmente cedidos por Profa. Dra. Maria Istela Cagnin Machado UFMS/FACOM Introdução
INF1013 MODELAGEM DE SOFTWARE
INF1013 MODELAGEM DE SOFTWARE Departamento de Informática PUC-Rio Ivan Mathias Filho [email protected] Programa Capítulo 1 O Paradigma Orientado a Objetos A Linguagem UML Descrição da Arquitetura 1 Programa
Requisitos de sistemas
Requisitos de sistemas Unidade III - Casos de Uso Identificação de casos de uso Conceitos de orientação a objetos Modelagem do diagrama de classes e casos de uso 1 Casos de uso CONCEITO Especifica o comportamento
UML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos
UML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos [email protected] Roteiro A importância da UML para projetar sistemas. Principais características do diagrama de classes e de sequência.
O Processo Unificado (PU) SSC 121 Engenharia de Software I Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012
O Processo Unificado (PU) SSC 121 Engenharia de Software I Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012 Modelos de Processo de Software Desenvolver software é geralmente uma tarefa complexa e sujeita
UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 15 PROFª BRUNO CALEGARO
UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 15 PROFª BRUNO CALEGARO Santa Maria, 08 de Novembro de 2013. Contextualização Nas próximas aula iremos começar a modelar e projetar sistemas
INTRODUÇÃO À ENGENHARIA DE SOFTWARE. Prof.: Tiago Alves
INTRODUÇÃO À ENGENHARIA DE SOFTWARE Prof.: Tiago Alves ([email protected]) UML UNIFIED MODELING LANGUAGE Livro: Utilizando UML e Padrões, 3.ed. Autor(es): Craig Larman Modelagem de Sistemas Orientados
Visão Geral do RUP (Rational Unified Process)
Visão Geral do RUP (Rational Unified Process) Objetivos deste módulo Apresentar as características do RUP Discutir os conceitos que existem no RUP: fases, fluxos de atividades (worklows), iterações, responsáveis,
22/03/2018. Professor Ariel da Silva Dias RUP e Modelos Ágeis
Professor Ariel da Silva Dias RUP e Modelos Ágeis Modelo de processo de software proprietário. Desenvolvido pela empresa Rational Software Corporation. Em 2003 a empresa foi adquirida pela IBM. Então O
Análise e Projeto Orientados a Objetos
Análise e Projeto Orientados a Objetos Introdução Diretoria Acadêmica de Gestão e Tecnologia da Informação Introdução Os sistemas computacionais adquiriram extrema importância para as organizações públicas
Modelagem de Sistemas
Lista de Exercícios AV1 Luiz Leão [email protected] http://www.luizleao.com Questão 1 Que evento influenciou no surgimento da Engenharia de Software e qual a sua finalidade? Questão 1 Resposta Que evento
! Introdução. " Motivação para Processos de Software. ! Processo Unificado (USDP) " Definições " RUP x USDP " Características do Processo Unificado
Agenda Rodrigo Reis Cleidson de Souza! Introdução " Motivação para Processos de Software! (USDP) " Definições " RUP x USDP " Características do! Descrição detalhada do! Processos Derivados! Templates simplificados!
Introdução a UML e seus diagramas
Introdução a UML e seus diagramas A Unified Modelling Language (UML) é uma linguagem ou notação de diagramas para especificar, visualizar e documentar modelos de software orientados por objetos. O UML
Requisitos de Software e UML Básico. Janaína Horácio
Requisitos de Software e UML Básico Janaína Horácio [email protected] Agenda Requisitos O que é? Objetivos? Atividades?... UML O que é? Modelos... Casos de Uso O que é? Componentes 2 Requisitos
Modelagem Usando Orientação à Objetos (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus
Curso Disciplina Linguagem de Programação II Curso Engenharia da Computação Modelagem Usando Orientação à Objetos (Programação Orientada a Objetos) Site : http://www1.univap.br/~wagner/ec.html Prof. Responsáveis
Marcelo Henrique dos Santos
Mestrado em Educação (em andamento) MBA em Negócios em Mídias Digitais (em andamento) MBA em Marketing e Vendas Especialista em games Bacharel em Sistema de Informação [email protected] AULA 01
Modelagem Orientada a Objeto
UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Modelagem Orientada a Objeto Engenharia de Software 2o. Semestre de
Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios
Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Cronograma das Aulas. Hoje você está na aula Semana
Paradigmas de Software
Paradigmas de Software Objetivos Introdução aos paradigmas de software. Descrição de modelos genéricos e sua aplicabilidade. Descrição dos processos de requisitos, desenvolvimento, teste e evolução. Modelo
CAPÍTULO 1 O AMBIENTE DE DESENVOLVIMENTO DE SISTEMAS. Tereza Gonçalves Kirner
CAPÍTULO 1 O AMBIENTE DE DESENVOLVIMENTO DE SISTEMAS Tereza Gonçalves Kirner Apresentação elaborada com base em: Hoffer, Jeffrey A., George, Joey F. Modern Systems Analysis and Design (Capítulo 1), Pearson,
Q d( ) P. a( ) c( ) e( ) c( ) S. c( ) d( )
ELEMENTOS BÁSICOS DA LINGUAGEM JAVA Patricia Della Méa Plentz INE-CTC-UFSC E-Mail: [email protected] URL: http://moodle.ufsc.br INE5605-Turma 0238B Sumário 2.1 Classes e Objetos na POO 2.2 2 Revisão da
Engenharia de Software
Engenharia de Software Processos de Software Professor: Charles Leite O processo de software Um conjunto estruturado de atividades, procedimentos, artefatos e ferramentas necessários para o desenvolvimento
Engenharia de Software
Instituto Superior Politécnico de Ciências e Tecnologia Engenharia de Software Prof Pedro Vunge www.pedrovunge.com I Semestre de 2018 Capítulo 1 Introdução SUMÁRIO Engenharia de Software Definição; Objectivos
Linguagem de Modelagem Unificada UML
Linguagem de Modelagem Unificada UML Parte 1 Rosemary Silveira Filgueiras Melo [email protected] 1 Tópicos abordados Paradigma Orientado a Objetos Linguagem UML e seus principais diagramas Diagramas
Engenharia de Software II
Engenharia de Software II Aula 4 http://www.ic.uff.br/~bianca/engsoft2/ Aula 4-03/05/2006 1 Modelos Prescritivos de Processo Modelo em cascata Modelos incrementais Modelo incremental Modelo RAD Modelos
Aula 3.1 Introdução e Visão Geral do Processo Unificado
PDS Aula 3.1 Introdução e Visão Geral do Processo Unificado Prof. Bruno Moreno [email protected] Definição O Processo Unificado (Unified Process, UP) é um tipo de processo de desenvolvimento de
UML Unified Modeling Language Linguagem de Modelagem Unificada
UML Unified Modeling Language Linguagem de Modelagem Unificada Prof. Gilberto Porto e-mail: [email protected] A linguagem UML n UML (Unified Modeling Language) Linguagem de Modelagem Unificada
Processos de software
Processos de software 1 Processos de software Conjunto coerente de atividades para especificação, projeto, implementação e teste de sistemas de software. 2 Objetivos Introduzir modelos de processos de
FUNDAÇÃO UNIVERSIDADE ESTADUAL DE MARINGÁ
FUNDAÇÃO UNIVERSIDADE ESTADUAL DE MARINGÁ Centro de Tecnologia - CTC Departamento de Informática - DIN Programa de Pós-Graduação em Ciência da Computação PCC ESTÁGIO DE DOCÊNCIA II Disciplina: Engenharia
Visão Geral da UML. SSC Engenharia de Software I Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012
Visão Geral da UML SSC 121 - Engenharia de Software I Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012 Conteúdo Introdução Ferramentas de Apoio Diagramas da UML Elementos Genéricos Material sobre UML
Processo de Desenvolvimento
Processo de Desenvolvimento RUP Rational Unified Process A Rational e o RUP 4 Rational é conhecida pelo seu investimento em orientação em objetos. 4 A empresa foi a criadora da Unified Modeling Language
RUP Unified Process. Profª Jocelma Rios
RUP Unified Process Profª Jocelma Rios Nov/2012 O que pretendemos: Reforçar os aspectos que caracterizam o processo iterativo e incremental Identificar como atingir os objetivos dos projetos de software
UML. Adriano J. Holanda 21/3/
UML Adriano J. Holanda 21/3/2016 UML Introdução UML - Unified Modeling Language Linguagem Unificada de Modelagem. Adquiriu maturidade na segunda década de 1990 pela fusão dos métodos e diagramas de Grady
Capítulo 5 Modelação do Sistema 1
Capítulo 5 Modelação do Sistema Capítulo 5 Modelação do Sistema 1 Assuntos abordados Modelos de contexto Modelos de interação Modelos estruturais Modelos comportamentais Engenharia orientada a modelos
Engenharia de Software. Herbert Rausch Fernandes
Engenharia de Software Herbert Rausch Fernandes O Processo Unificado É uma tentativa de unir os melhores recursos e características dos modelos convencionais; Reconhece a importância da comunicação com
Processos de Software by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1
Processos de Software Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1 Objetivos Apresentar modelos de processos de software Descrever três modelos genéricos de processo e quando
Engenharia de Software. UML Unified Modeling Language
Engenharia de Software UML Unified Modeling Language UML - INTRODUÇÃO UML é um acrônimo para a expressão Linguagem de Modelagem Unificada. Pela definição de seu nome, vemos que a UML é uma linguagem que
Engenharia de Software Orientada a Objetos - OOSE. Método de Jacobson
Engenharia de Software Orientada a Objetos - OOSE Método de Jacobson Alunos: Amanda Lira Gomes Lucas Balbino de Melo Ferreira Mycke Richard Guntijo Renato Gomes Borges Júnior Sumário Introdução Visão Geral
Especificação de Sistemas de Software e a UML
Modelagem de sistema Especificação de Sistemas de Software e a UML A modelagem de sistema auxilia o analista a entender a funcionalidade do sistema Modelo => visão simplificada e abstrata de um sistema
MODELAGEM COM A UML (UNIFIED MODELING LANGUAGE)
MODELAGEM COM A UML (UNIFIED MODELING LANGUAGE) g BREVE HISTÓRICO g CARACTERÍSTICAS g CONCEITOS DE PROGRAMAÇÃO ORIENTADA A OBJETOS g MODELAGEM DE ANÁLISE E DE PROJETO 1 I. BREVE HISTÓRICO Em fins dos anos
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPI JOÃO CÂMARA RATIONAL UNIFIED PROCESS - RUP
1 INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPI JOÃO CÂMARA RATIONAL UNIFIED PROCESS - RUP Nickerson Fonseca Ferreira [email protected] Introdução 2 Modelo
Panorama da notação UML
Panorama da notação UML A notação UML (Unified Modeling Language linguagem de modelagem unificada) evoluiu desde que foi adotada a primeira vez como um padrão em 1997. Uma revisão maior para o padrão foi
POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos
UEG - Universidade Estadual de Goiás (Câmpus Posse) Disciplina: Análise e Projeto de Sistemas II Turma: 4 Semestre Ano: 2016 Professor: José Ronaldo Leles Júnior O que é? É uma forma de abordar um problema.
Visão Geral do RUP.
Visão Geral do RUP [email protected] Objetivos Apresentar as características RUP Discutir os conceitos da metodologia: fases, fluxos de atividades (workflows), iterações, responsáveis, atividades e artefatos
MODELAGEM DE SISTEMAS Unidade 2 A Linguagem UML. Luiz Leão
Luiz Leão [email protected] http://www.luizleao.com Conteúdo Programático Introdução a UML Evolução da UML Visão dos modelos UML Unified Modelling Language Linguagem de modelagem que irá se associar ao
Engenharia de Software
Tema da Aula Origens da Modelagem de Retrospectiva Histórica Prof. Cristiano R R Portella [email protected] Origens da Modelagem de A pré-história Antes de 1960: Nenhuma metodologia. Programar computador
RUP RATIONAL UNIFIED PROCESS. Prof. Fabiano Papaiz IFRN
RUP RATIONAL UNIFIED PROCESS Prof. Fabiano Papaiz IFRN Criado por três engenheiros de software: Booch, Jacobson e Rumbaugh. Conhecidos na área como Os 3 Amigos, também foram os criadores da UML (Unified
Processo de Desenvolvimento de Software
Luiz Leão [email protected] http://www.luizleao.com Conteúdo Programático desta aula Fases do Processo. Ciclo de vida do processo. Processo Unificado Orientado por Casos de Uso, surgiu para realizar o
Prof. Dr. Thiago Jabur Bittar
Prof. Dr. Thiago Jabur Bittar Uma representação abstrata e simplificada do processo de desenvolvimento software, tipicamente mostrando as principais atividades e dados usados na produção e manutenção de
APÊNDICE D Unified Model Language (UML)
APÊNDICE D Unified Model Language (UML) 299 APÊNDICE D Unified Model Language (UML) Apresenta-se neste Apêndice uma visão geral sobre a UML (Unified Modeling Language), focalizando-se nos conceitos e definições
Modelagem OO com UML. Vítor E. Silva Souza ([email protected]) http://www.inf.ufes.br/ ~ vitorsouza
Modelagem OO com UML Vítor E. Silva Souza ([email protected]) http://www.inf.ufes.br/ ~ vitorsouza Departamento de Informática Centro Tecnológico Universidade Federal do Espírito Santo Modelos Maneira
Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto
Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Engenharia de Software I Informática 2006 Profa. Dra. Itana Gimenes RUP: Projeto Artefatos Modelo de Projeto: Lista de classes de
Modelagem de Classes. Mestrado em Engenharia de Produção e Sistemas Computacionais. Profa. Adriana Pereira de Medeiros
Modelagem de Classes Mestrado em Engenharia de Produção e Sistemas Computacionais Profa. Adriana Pereira de Medeiros [email protected] Resumo Introdução Conceitos em Orientação a Objetos Diagrama
O Fluxo de Requisitos
O Fluxo de 1 Finalidade do fluxo de requisitos A finalidade deste fluxo é: Chegar a um acordo com o cliente e o usuário sobre o que o sistema deve fazer. Oferecer ao desenvolvedor um melhor entendimento
Engenharia de Software Processo de Desenvolvimento de Software
Engenharia de Software Processo de Desenvolvimento de Software Prof. Elias Ferreira Elaborador por: Prof. Edison A. M. Morais Objetivo (1/1) Conceituar PROCESSO E CICLO DE VIDA, identificar e conceituar
MANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO
MANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO Sumário PREFÁCIO...3 MODELO DA DOCUMENTAÇÃO...3 1. INTRODUÇÃO AO DOCUMENTO...3 1.1. Tema...3 2. DESCRIÇÃO
Engenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS
Engenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS 1. Com relação à engenharia de software, julgue os itens seguintes. Engenharia de software não está relacionada
Diagrama de Classes. Régis Patrick Silva Simão. Régis Simão Diagrama de Classes 1/42
Diagrama de Classes Régis Patrick Silva Simão Régis Simão Diagrama de Classes 1/42 Agenda Introdução Objetos Classes Atributos Operações & Métodos Relacionamentos Relacionamento: Associação Nome de Relacionamento
27) Em relação aos Projetos de Sistemas de Software, assinale a sequência correta de desenvolvimento de um sistema:
Modelos de Ciclo de Vida e Metodologias de Software 33) No SCRUM, uma iteração que segue um ciclo (PDCA) e entrega incremento de software pronto é denominada: A) Backlog. B) Sprint. C) Daily scrum. D)
Engenharia de Software. Processos. Desenvolvimento de Software Tradicionais 2014/2. Prof. Luís Fernando Garcia
Engenharia de Software Processos Desenvolvimento de Software Tradicionais 2014/2 Prof. Luís Fernando Garcia [email protected] Processos Um conjunto estruturado de atividades necessárias para o desenvolvimento
UML - Unified Modeling Language
UML - Unified Modeling Language Marcelle Mussalli Cordeiro {[email protected]} Cordeiro Objetivo do Curso Fornecer ao profissional que pretende utilizar as técnicas da linguagem UML Uma visão clara de
QUESTÕES TESTES. Questão 1. O modelo de ciclo de vida em cascata:
QUESTÕES 1. 0 que é domínio da aplicação (ou do problema)? 2. Qual a importância da engenharia de software e como se justificam os custos a ela associados? 3. O que é processo de desenvolvimento de software
Modelagem ou Diagrama de Caso de Uso
Modelagem ou Diagrama de Caso de Uso Objetivos principais: Delimitar o contexto de um sistema Documentar os requisitos Ajudar no entendimento dos requisitos Descrever os requisitos funcionais Facilitar
