Projeto orientado a objetos

Tamanho: px
Começar a partir da página:

Download "Projeto orientado a objetos"

Transcrição

1 Projeto orientado a objetos Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 1 Objetivos Explicar como um projeto de software pode ser representado como um conjunto de objetos que interagem e que gerenciam seu estado e operações. Descrever as atividades no processo de projeto orientado a objetos Apresentar vários modelos que podem ser usados para descrever um projeto orientado a objetos Mostrar como a UML pode ser usada para representar esses modelos Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 2

2 Tópicos abordados Objetos e classes de objetos Processo de projeto orientado a objetos Evolução de projeto Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 3 Desenvolvimento orientado a objetos Análise, projeto e programação orientados a objetos estão relacionados, mas são distintos. A análise orientada a objetos concentra-se no desenvolvimento de um modelo de objetos do domínio da aplicação. O projeto orientado a objetos concentra-se no desenvolvimento de um modelo orientado a objetos de sistema para implementar requisitos. A programação orientada a objetos concentra-se no desenvolvimento de um projeto orientado a objetos usando uma linguagem de programação, tal como Java ou C++. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 4

3 Características do projeto orientado a objetos Objetos são abstrações do mundo real ou entidades de sistema e gerenciam a si próprios. Os objetos são independentes e englobam estados e informações de representação. A funcionalidade do sistema é expressa em termos de serviços de objetos. Áreas de dados compartilhados são eliminados e os objetos se comunicam por meio da passagem de mensagens. Objetos podem ser distribuídos e executados seqüencialmente ou em paralelo. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 5 Objetos que interagem entre si Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 6

4 Vantangens do projeto orientado a objetos Maior facilidade de manutenção. Os objetos podem ser compreendidos como entidades autônomas. Objetos são, potencialmente, componentes reusáveis. Para alguns sistemas, pode haver um mapeamento óbvio de entidades do mundo real para objetos de sistema. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 7 Objetos e classes de objetos Objetos são entidades em um sistema de software que representam instâncias do mundo real e entidades de sistema. Classes de objeto podem herdar atributos e serviços de outras classes de objeto. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 8

5 Objetos e classes de objetos Um objeto é uma entidade que possui um estado e um conjunto definido operações definidas para funcionar nesse estado. O estado é representado como um conjunto de atributos de objeto. As operações associadas ao objeto fornecem serviços a outros objetos (clientes) que solicitam estes serviços quando alguma computação é necessária. Os objetos são criados de acordo com uma definição de classe de objeto. Uma definição de classe de objeto funciona tanto como uma especificação quanto como um template para criação de objetos. Essa definição inclui declarações de todos os atributos e operações que devem ser associadas a um objeto dessa classe. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 9 A linguagem de modelagem unificada (UML) Várias notações diferentes para a descrição de projetos orientados a objetos foram propostas nas décadas de 1980 e A UML é uma integração dessas notações. Ela descreve notações para uma série de modelos diferentes que podem ser produzidos durante a análise e o projeto de objetos orientados. Ela é atualmente um padrão de fato para modelagem de objetos orientados. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 10

6 Classe de objeto Funcionário (UML) Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 11 Comunicação de objetos Conceitualmente, os objetos se comunicam por meio da de passagem de mensagens. Mensagens O nome do serviço solicitado pelo objeto chamador; As cópias das informações necessárias para executar o serviço e o nome de um objeto para o resultado do serviço. Na prática, as mensagens são freqüentemente implementadas pelas chamadas de procedimentos Nome = nome de procedimento; Informação = lista de parâmetros. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 12

7 Exemplo de mensagens //Chamar um método associado a um // objeto buffer que retorna o próximo valor // no buffer v = circularbuffer.get () ; // Chamar o método associado a um objeto // termostato que ajuste a temperatura a ser // mantida thermostat.settemp (20) ; Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 13 Generalização e herança Objetos são membros de classes que definem tipos de atributos e operações. As classes podem ser organizadas em uma hierarquia onde uma classe (uma classe-pai) é uma generalização de uma ou mais classes (classesfilho). Uma classe-filho herda os atributos e as operações da classe-pai e pode adicionar novos métodos ou atributos para si. A generalização na UML é implementada como herança nas linguagens de programação orientada a objetos. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 14

8 Uma hierarquia de generalização Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 15 Vantagens da herança É um mecanismo de abstração que pode ser usado para classificar entidades. É um mecanismo de reuso em ambos os níveis, projeto e programação. O gráfico de herança é uma fonte de conhecimento da organização acerca de domínios e sistemas. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 16

9 Problemas com herança Classes de objetos não são auto-contidas. Elas não podem ser compreendidas sem referência às suas classes-pai. Projetistas tendem a reusar o gráfico de herança criado durante a análise. Isso pode conduzir à uma ineficiência significativa. Os gráficos de herança de análise, projeto e implementação têm diferentes funções, e devem ser mantidos separadamente. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 17 Associações de UML Objetos e classes de objeto participam de relacionamentos com outros objetos e classes de objeto. Na UML, um relacionamento generalizado é indicado por uma associação. Associações podem ser anotadas com informações que descrevem a associação. Associações são gerais, mas podem indicar que o atributo de um objeto é um objeto associado, ou que um método conta com um objeto associado. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 18

10 Um modelo de associação Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 19 Objetos concorrentes A natureza dos objetos como entidades auto-contidas os torna adequados para implemantação de concorrência. O modelo da passagem de mensagem da comunicação de objetos pode ser implementado diretamente se eles são executados em processadores separados em um sistema distribuído. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 20

11 Servidores e objetos ativos Servidores O objeto é implementado como um processo paralelo (servidor) com pontos de entrada que correspondem às operações de objeto. Se nenhuma chamada é feita para ele, o objeto suspende a sua execução e aguarda outras solicitações de serviço. Objetos ativos Os objetos são implementados como processos paralelos, e o estado interno do objeto pode ser modificado por ele próprio, e não simplesmente por chamadas externas. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 21 Objeto ativo transponder Objetos ativos podem ter seus atributos modificados, mas podem, também, atualizálos autonomamente usando operações internas. Um objeto transponder transmite a posição da aeronave. A posição pode ser atualizada usando um sistema de navegação por satélite. O objeto atualiza peeriodicamente a posição pela triangulação dos satélites. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 22

12 Um objeto ativo Transponder Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 23 Threads Java Threads em Java são uma construção simples para implementar objetos concorrentes. Os threads devem incluir um método chamado run() e é iniciado pelo sistema runtime Java. Objetos ativos incluem tipicamente um loop infinito e, assim, eles estão sempre executando o processamento. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 24

13 Um processo de projeto orientado a objetos Processos de projeto estruturados envolvem o desenvolvimento de uma série de modelos diferentes de sistema. Eles requerem uma grande quantidade de esforço para desenvolvimento e manutenção desses modelos e, para sistemas pequenos, isto pode não ser adequado em termos de custo. Contudo, para sistemas grandes desenvolvidos por grupos diferentes, modelos de projeto são um mecanismo essencial de comunicação. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 25 Estágios de processo Destaca as atividades-chave sem estar amarrado a qualquer processo proprietário, tal como o RUP. Define o contexto e os modelos de uso do sistema; Projeta a arquitetura do sistema; Identifica os objetos principais do sistema; Desenvolve modelos de projeto; Especifica interfaces de objetos. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 26

14 Descrição do sistema de meteorologia Um sistema de mapeamento meteorológico é necessário para gerar mapas meteorológicos regularmente usando dados coletados de estações remotas, sem funcionários, e de outras fontes de dados, como observatórios, balões e satélites. As estações meteorológicas transmitem seus dados para um computador local em resposta à solicitação dessa máquina. O sistema de computador local valida os dados coletados e integra os dados a partir de diferentes fontes. Os dados integrados são arquivados e, usando dados desse arquivo e um banco de dados de mapas digitalizados, um conjunto de mapas meteorológicos locais é criado. Os mapas podem ser impressos para distribuição em uma impressora de mapas especial e ser apresentados em diversos formatos. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 27 Contexto de sistema e modelos de uso Desenvolver uma compreensão dos relacionamentos entre o software que está sendo desenvolvido e seu ambiente externo. Contexto do sistema É um modelo estático que descreve outros sistemas no ambiente. Use um modelo de subsistema para mostrar outros sistemas. O slide seguinte mostra os sistemas em torno do sistema da estação meteorológica. Modelo de uso do sistema É um modelo dinâmico que descreve como o sistema interage com seu ambiente. Use casos de uso para mostrar as interações. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 28

15 Arquitetura de camadas Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 29 Subsistemas no sistema de mapeamento meteorológico Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 30

16 Modelos de casos de uso Modelos de casos de uso são usados para representar cada interação com o sistema. Um modelo de caso de uso mostra as características do sistema como elípse, e a entidade de interação como a figura de um boneco. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 31 Casos de uso para a estação meteorológica Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 32

17 Descrição de caso de uso Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 33 Projeto de arquitetura Uma vez que as interações entre o sistema e seu ambiente tenham sido compreendidas, você pode usar essas informações para projetar a arquitetura do sistema. Uma arquitetura de camadas, conforme discutida no Capítulo 11, é apropriada para a estação meteorológica A camada de interface cuida das comunicações; A camada de coleta de dados cuida do gerenciamento de instrumentos; A camada de instrumentos é responsável pela coleta de dados. Não deve haver normalmente mais que sete entidades em um modelo de arquitetura. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 34

18 Arquitetura da estação meteorológica Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 35 Identificação de objetos A identificação de objetos (ou classes de objetos) é a parte mais difícil do projeto orientado a objetos. Não há fórmula mágica para a identificação de objetos. É baseada no perfil, experiência e conhecimento de domínio dos projetistas de sistema. Identificação de objeto é um processo iterativo. É improvável que você faça certo na primeira vez. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 36

19 Abordagens para identificação Usar uma abordgem gramatical baseada em uma descrição da linguagem natural do sistema (usado no método HOOD de projeto orientado a objetos). Basear a identificação em coisas tangíveis no domínio da aplicação. Usar uma abordagem comportamental e identificar objetos baseados em no que participa em qual comportamento. Usar uma análise baseada em cenários. Os objetos, os atributos e os métodos em cada cenário são identificados. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 37 Descrição da estação meteorológica Uma estação meteorológica é um pacote de instrumentos controlados por software que coleta dados, executa processamento de dados e transmite esses dados para processamento posterior. Os instrumentos incluem termômetros de ar e de solo, um anemômetro, uma hélice de vento, um barômetro e um medidor de chuva. Os dados são coletados periodicamente. Quando um comando é emitido para transmitir os dados meteorológicos, a estação meteorológica processa e sumariza os dados coletados. Os dados sumarizados são transmitidos para o computador de mapeamento quando uma solicitação é recebida. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 38

20 Classes de objeto da estação meteorológica Termômetro de solo, Anemômetro, Barômetro Objetos do domínio da aplicação que são objetos de hardware relacionados aos instrumentos no sistema. Estação meteorológica A interface básica da estação meteorológica em seu ambiente. Ele reflete portanto, as interações identificadas no modelo de caso de uso. Dados meteorológicos Encapsula os dados sumarizados a partir dos instrumentos. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 39 Classes de objeto da estação meteorológica Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 40

21 Mais objetos e refinamento de objetos Usar conhecimento de domínio para identifcar mais objetos e operações Estações meteorológicas devem ter um único identificador; As estações meteorológicas são remotamente situadas e, assim, as falhas de instrumentos devem ser reportados automaticamente. Portanto, atributos e operações para auto verificação são necessários. Objetos ativos e passivos Nesse caso, os objetos são passivos e coletam dados sob demanda ao invés de autonomamente. Isso introduz flexibilidade no gasto de tempo de processamento do controlador. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 41 Modelos de projeto Modelos de projeto mostram os objetos ou as classes de objetos e os relacionamentos entre essas entidades. Os modelos estáticos descrevem a estrutura estática do sistema em termos de classes de objeto e seus relacionamentos. Modelos dinâmicos descrevem as interações dinâmicas entre os objetos. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 42

22 Exemplos de modelos de projeto Modelos de subsistema que mostram os agrupamentos lógicos de objetos em subsistemas coerentes. Modelos de seqüência que mostram a seqüência das interações entre objetos. Modelos de máquina de estado que mostram como objetos individuais mudam seu estado em resposta aos eventos. Outros modelos incluem modelos de caso de uso, modelos de agregação, modelos de generalização, etc. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 43 Modelos de subsistema Mostram como o projeto é organizado em grupos de objetos logicamente relacionados. Na UML, esses modelos são mostrados usando pacotes uma construção de englobamento. Isso é um modelo lógico. A organização real dos objetos no sistema pode ser diferente. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 44

23 Subsistemas da estação meteorológica Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 45 Modelos de seqüência Os modelos de seqüência mostram a seqüência das interações de objetos que ocorrem Os objetos são organizados horizontalmente no topo; O tempo é representado verticalmente e, assim, os modelos são lidos de cima para baixo; As interações são representadas por setas rotuladas. Estilos diferentes de seta representam tipos diferentes de interação; Um retângulo estreito no tempo de vida do objeto representa o tempo em que este é objeto de conrole no sistema. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 46

24 Seqüência de coleta de dados Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 47 Statecharts Mostram como os objetos respondem às solicitações diferentes de serviço e as transições de estado disparadas por estas solicitações Se o estado de objeto for Desativado, o sistema poderá somente responder à mensagem iniciar(); No estado Aguardando, o objeto está aguardando outras mensagens; Se uma mensagem relatarclima() for recebida, então o sistema passará ao estado Sumarizando; Se uma mensagem calibrar() for recebida, o sistema passará ao estado Calibrando; Um estado Coletando é atingido quando um sinal de relógio for recebido. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 48

25 Diagrama de estado da estação meteorológica Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 49 Especificação de interface entre objetos As interfaces de objeto têm de ser especificados, de tal modo que os objetos e outros componentes possam ser projetados em paralelo. Os projetistas devem evitar projetar a representação da interface, mas devem ocultar isso no próprio objeto. Os objetos podem ter várias interfaces que são pontos de vista sobre os métodos fornecidos. A UML usa diagramas de classe para especificação de interface, embora Java também possa ser usada. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 50

26 Interface da estação meteorológica Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 51 Evolução de projeto Ocultar informação dentro de objetos significa que mudanças feitas nesses objeto não afetam quaisquer outros objetos de maneira imprevisível. Assuma que capacidades de monitoração de poluição devem ser acrescentadas às estações meteorológicas. Essas coletam amostras do ar e calculam a quantidade de poluentes diferentes na atmosfera. Leituras de poluição são transmitidas com dados meteorológicos. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 52

27 Mudanças requeridas Acrescentar uma classe de objeto chamada QualidadeDoar como parte da EstaçãoMeteorológica. Acrescentar uma operação relatarqualidadedoar para EstaçãoMeteorológica. Modificar o software de controle para coletar leituras de poluição. Acrescentar objetos que representem instrumentos de monitoração de poluição. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 53 Monitoração de poluição Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 54

28 Pontos-chave O projeto orientado a objetos é uma abordagem para projeto na qual os componentes de projeto têm seu próprio estado privado e operações. Os objetos devem ter operações de construção e de inspeção. Eles fornecem serviços para outros objetos. Os objetos podem ser implementados seqüencial ou concorrentemente. A UML fornece notações diferentes para a definição de modelos de objetos diferentes. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 55 Pontos-chave Uma variedade de modelos diferentes podem ser produzidos durante um processo de projeto orientado a objetos. Esses modelos incluem modelos de sistema estáticos e dinâmicos. As interfaces de objeto devem ser definidas precisamente usando, por exemplo, uma linguagem de programação como Java. Projeto orientado a objetos simplifica potencialmente a evolução do sistema. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 14 Slide 56

15/04/2013. Pensar Orientado a Objetos. Projeto Orientado a Objetos. Características de Objetos. Classe de Objetos. Comunicação entre Objetos

15/04/2013. Pensar Orientado a Objetos. Projeto Orientado a Objetos. Características de Objetos. Classe de Objetos. Comunicação entre Objetos DCC / ICEx / UFMG Pensar Orientado a Objetos Projeto Orientado a Objetos Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Onde quer que você olhe no mundo real, você vê objetos Pessoas, animais, plantas,

Leia mais

Análise e Projeto de Software

Análise e Projeto de Software Análise e Projeto de Software Proj. Desenvolvimento de Software Prof. Cleverton Hentz cleverton.hentz@ifrn.edu.br 8 de junho de 2017 Material Apresentado Sumário de Aula 1 Introdução 2 Estruturação do

Leia mais

Modelagem Orientada a Objetos

Modelagem Orientada a Objetos DCC / ICEx / UFMG Modelagem Orientada a Objetos Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Atividades de Modelagem OO 1. Definir o contexto do sistema 2. Projetar a arquitetura 3. Identificar

Leia mais

Diagramas. Abordaremos agora cada um destes tipos de diagrama: 1. Diagrama Use-Case. 2. Diagrama de Colaboração. 3. Diagrama de Sequência

Diagramas. Abordaremos agora cada um destes tipos de diagrama: 1. Diagrama Use-Case. 2. Diagrama de Colaboração. 3. Diagrama de Sequência Diagramas Os diagramas utilizados pela UML são compostos de nove tipos: diagrama de use case, de classes, de objecto, de estado, de sequência, de colaboração, de actividade, de componente e o de instalação/execução.

Leia mais

Capítulo 7 Conceção e Implementação 1

Capítulo 7 Conceção e Implementação 1 Capítulo 7 Conceção e Implementação Capítulo 7 Conceção e Implementação 1 Assuntos abordados Design orientado a objetos com recurso ao UML Padrões de design Questões de implementação Desenvolvimento de

Leia mais

Estilos Arquiteturais

Estilos Arquiteturais Estilos Arquiteturais Estilos Arquiteturais A arquitetura de um sistema pode aderir a um ou mais estilos arquiteturais Um estilo define os tipos de elementos que podem aparecer em uma arquitetura e as

Leia mais

UML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos

UML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos UML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Roteiro A importância da UML para projetar sistemas. Principais características do diagrama de classes e de sequência.

Leia mais

Processos de Software by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1

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

Leia mais

Introdução Diagrama de Classes Diagrama de Seqüência Diagrama de Atividades. Diagramas UML. Classe, Seqüência e Atividades. Marcio E. F.

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

Leia mais

Projeto de Arquitetura

Projeto de Arquitetura Projeto de Arquitetura Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 11 Slide 1 Objetivos Apresentar projeto de arquitetura e discutir sua importância Explicar as decisões de projeto

Leia mais

Especificação de Sistemas de Software e a UML

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

Leia mais

ARCHITECTURAL DESIGN. Ian Sommerville, 8º edição Capítulo 11 Aula de Luiz Eduardo Guarino de Vasconcelos

ARCHITECTURAL DESIGN. Ian Sommerville, 8º edição Capítulo 11 Aula de Luiz Eduardo Guarino de Vasconcelos ARCHITECTURAL DESIGN Ian Sommerville, 8º edição Capítulo 11 Aula de Luiz Eduardo Guarino de Vasconcelos Objetivos Tópicos abordados Arquitetura de Software Projeto de arquitetura Vantagens de arquitetura

Leia mais

Capítulo 5 Modelação do Sistema 1

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

Leia mais

Visões Arquiteturais. Visões Arquiteturais

Visões Arquiteturais. Visões Arquiteturais Visões Arquiteturais Separar diferentes aspectos em visões separadas com o objetivo de gerenciar complexidade. Cada visão descreve diferentes conceitos da Engenharia. Visões permitem reduzir a quantidade

Leia mais

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 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

Leia mais

Capítulo 6. Projeto de arquitetura. 2011 Pearson Pren0ce Hall. Todos os direitos reservados. 1. slide 1

Capítulo 6. Projeto de arquitetura. 2011 Pearson Pren0ce Hall. Todos os direitos reservados. 1. slide 1 Capítulo 6 Projeto de arquitetura slide 1 2011 Pearson Pren0ce Hall. Todos os direitos reservados. 1 Os tópicos abordados Decisões de projeto de arquitetura Visões de arquitetura Padrões de arquitetura

Leia mais

Engenharia de Software 2012/3 Aula 5 Modelagem de Sistemas

Engenharia de Software 2012/3 Aula 5 Modelagem de Sistemas Engenharia de Software Engenharia de Software 2012/3 Aula 5 Modelagem de Sistemas Thiago P. da Silva thiagosilva@ufmt.br Agenda Modelagem de Sistemas Modelos de contexto Diagramas de Atividades Modelos

Leia mais

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 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

Leia mais

Tópicos da Aula. Diretrizes Gerais. Trabalho Prático (TP) Pontuação do TP. Tema do Trabalho. Projeto de Software Diagrama de Classes

Tópicos da Aula. Diretrizes Gerais. Trabalho Prático (TP) Pontuação do TP. Tema do Trabalho. Projeto de Software Diagrama de Classes Engenharia de Software Aula 09 Tópicos da Aula Projeto de Software Revisão de orientação a objetos Projeto orientado a objetos Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo dcc603@gmail.com 04

Leia mais

O que é um sistema distribuído?

O que é um sistema distribuído? Disciplina: Engenharia de Software 4 Bimestre Aula 1: ENGENHARIA DE SOFTWARE DISTRIBUÍDO O que é um sistema distribuído? Segundo Tanenbaum e Steen (2007) um sistema distribuído é uma coleção de computadores

Leia mais

Generalização das técnicas de Piloto Automático para VANTs. Aluno: Raphael da Silva Teixeira (ED 14205) Professor: Cel R/R Cícero Garcez

Generalização das técnicas de Piloto Automático para VANTs. Aluno: Raphael da Silva Teixeira (ED 14205) Professor: Cel R/R Cícero Garcez Generalização das técnicas de Piloto Automático para VANTs Aluno: Raphael da Silva Teixeira (ED 14205) Professor: Cel R/R Cícero Garcez Introdução Um piloto automático é um sistema micro-elétrico-mecânico

Leia mais

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.

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 dcc603@gmail.com 28 Março 2012 A

Leia mais

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 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

Leia mais

Análise e projeto de sistemas

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

Leia mais

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos Análise e Projeto Orientados por Objetos Aula 02 Análise e Projeto OO Edirlei Soares de Lima Análise A análise modela o problema e consiste das atividades necessárias para entender

Leia mais

Sistemas Embarcados (embutidos) Paulo C. Masiero

Sistemas Embarcados (embutidos) Paulo C. Masiero Sistemas Embarcados (embutidos) Paulo C. Masiero Caracterização São usados para controlar sistemas de diferentes tipos: máquinas domésticas, fábricas, carros, jogos etc. O software é embutido no hardware

Leia mais

Agenda da Aula. Arquitetura de Software e Padrões Arquiteturais. Elementos de um Padrão. Arquitetura de Software. Arquitetura de Software

Agenda da Aula. Arquitetura de Software e Padrões Arquiteturais. Elementos de um Padrão. Arquitetura de Software. Arquitetura de Software Reuso de Software Aula 04 Agenda da Aula Arquitetura de Software e Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com 14 Março 2012 Arquitetura de Software Padrões arquiteturais

Leia mais

Exemplos de Estilos Arquiteturais. Estilos Arquiteturais. Estilos Arquiteturais. Estilo: Pipe e Filtros

Exemplos de Estilos Arquiteturais. Estilos Arquiteturais. Estilos Arquiteturais. Estilo: Pipe e Filtros Estilos Arquiteturais Em geral sistemas seguem um estilo, ou padrão, de organização estrutural Os estilos diferem: nos tipos de componentes que usa na maneira como os componentes interagem com os outros

Leia mais

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

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

Leia mais

Engenharia de Software. Projeto de Arquitetura

Engenharia de Software. Projeto de Arquitetura Engenharia de Software Projeto de Arquitetura O que já vimos? Introdução a Engenharia de Software Processos de Software Desenvolvimento Ágil de Software Engenharia de Requisitos Modelagem de sistemas (outra

Leia mais

Engenharia de Software Processo de Desenvolvimento. Ciclo de Vida - Modelo Cascata

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

Leia mais

Visões Arquiteturais. Visões Arquiteturais. Visões Arquiteturais. Visão Conceitual

Visões Arquiteturais. Visões Arquiteturais. Visões Arquiteturais. Visão Conceitual Visões Arquiteturais Separar diferentes aspectos em visões separadas com o objetivo de gerenciar complexidade. Cada visão descreve diferentes conceitos da Engenharia. Visões permitem reduzir a quantidade

Leia mais

Introdução a UML e seus diagramas

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

Leia mais

Requisitos de Software

Requisitos de Software Engenharia de requisitos Requisitos de Software Estabelece os serviços que o cliente requer de um sistema e as restrições sob as quais tal sistema operará e será desenvolvido. Tais serviços e restrições

Leia mais

Padrões. Arquitetura de Software Thaís Batista

Padrões. Arquitetura de Software Thaís Batista Padrões Endereçam uma classe de problemas recorrentes e apresenta uma solução para eles (podem ser considerados um par problema-solução) Permitem a construção de software com propriedades definidas Ajudam

Leia mais

UML (Unified Modelling Language)

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

Leia mais

Modelagem de Sistemas. Análise de Requisitos. Modelagem

Modelagem de Sistemas. Análise de Requisitos. Modelagem Modelagem de Sistemas Teoria Geral de Sistemas TADS 2. Semestre Prof. André Luís Para abordarmos de forma mais profunda os conceitos de Modelagem de Sistemas de Informação, precisamos também falar na Engenharia

Leia mais

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini /

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini   / Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com / andre.belini@ifsp.edu.br MATÉRIA: ENGENHARIA DE SOFTWARE Aula N : 06 Tema:

Leia mais

Reuso de Software Aula Maio 2012

Reuso de Software Aula Maio 2012 Reuso de Software Aula 19 Tópicos da Aula Engenharia de Software baseada em Componentes (CBSE) Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com Componentes Modelos de Componentes

Leia mais

15/03/2018. Professor Ariel da Silva Dias Introdução a Engenharia de Software. O mundo moderno poderia existir sem software?

15/03/2018. Professor Ariel da Silva Dias Introdução a Engenharia de Software. O mundo moderno poderia existir sem software? O mundo moderno poderia existir sem software? Professor Ariel da Silva Dias Introdução a Engenharia de Software 1 Software Associação de programas de computador e documentação; Atributos de um bom software

Leia mais

Modelagem ou Diagrama de Caso de Uso

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

Leia mais

Engenharia de Software II

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

Leia mais

A modelagem é tida como a parte central de todas as atividades para a construção de um bom sistema, com ela podemos:

A modelagem é tida como a parte central de todas as atividades para a construção de um bom sistema, com ela podemos: Módulo 6 Análise Orientada a Objeto É interessante observar como a análise orientada a objeto utiliza conceitos que aprendemos há muito tempo: objetos, atributos, classes, membros, todos e partes. Só não

Leia mais

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 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

Leia mais

Tópicos da Aula. Alguns Diagramas UML. Diagramas Principais. Diagramas de Interação: Sequência e Colaboração. Tipos de Diagramas de Interação

Tópicos da Aula. Alguns Diagramas UML. Diagramas Principais. Diagramas de Interação: Sequência e Colaboração. Tipos de Diagramas de Interação Engenharia de Software Aula 10 Tópicos da Aula Diagramas de Interação: Sequência e Colaboração Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo dcc603@gmail.com 09 Abril 2012 Alguns Diagramas UML

Leia mais

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 12 PROFª BRUNO CALEGARO

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 12 PROFª BRUNO CALEGARO UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 12 PROFª BRUNO CALEGARO Santa Maria, 29 de Outubro de 2013. Revisão aula passada Modelagem de sistemas Perspectiva externa Perspectiva de iteração

Leia mais

DMS - DOCUMENTO DE MODELAGEM DE SISTEMA VERSÃO: [NOME DO SISTEMA] [SIGLA] [AUTORES]

DMS - DOCUMENTO DE MODELAGEM DE SISTEMA VERSÃO: [NOME DO SISTEMA] [SIGLA] [AUTORES] DMS - DOCUMENTO DE MODELAGEM DE SISTEMA Este documento foi criado seguindo as recomendações e orientações do livro UML na Prática Do Problema ao Sistema e do modelo PRISM do MPDS (Modelo Prático para Desenvolvimento

Leia mais

Introdução a UML (Unified Modeling Language)

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

Leia mais

1 Introdução. 1.1 Teoria dos Sistemas 23/4/2010

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

Leia mais

Introdução ao Java. Prof. Herbert Rausch Fernandes

Introdução ao Java. Prof. Herbert Rausch Fernandes Introdução ao Java Prof. Herbert Rausch Fernandes Orientação a Objetos Programação Orientada por Objetos: é a construção de sistemas de software como uma coleção estruturada de implementações de tipos

Leia mais

Verificação e Validação. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 22 Slide 1

Verificação e Validação. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 22 Slide 1 Verificação e Validação Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 22 Slide 1 Objetivos Apresentar a verificação e validação de software e discutir a distinção entre elas Descrever

Leia mais

POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos

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.

Leia mais

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos Introdução Laboratório de Computação para Ciências Módulo II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional

Leia mais

Rational Unified Process (RUP)

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

Leia mais

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos Conceitos Básicos Introdução Tópicos Especiais Modelagem de Dados Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional

Leia mais

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini /

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini   / Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com / andre.belini@ifsp.edu.br MATÉRIA: ENGENHARIA DE SOFTWARE Aula N : 15 Tema:

Leia mais

S15 - Engenharia de Requisitos continuação cap.6

S15 - Engenharia de Requisitos continuação cap.6 S15 - Engenharia de Requisitos continuação cap.6 ENGENHARIA DE SOFTWARE PRESSMAN, 2011 Gilberto Wolff UTFPR Roteiro Análise de requisitos Modelagem baseada em cenários Modelos UML que complementam o Caso

Leia mais

Capítulo 6 Design da Arquitectura

Capítulo 6 Design da Arquitectura Capítulo 6 Design da Arquitectura Capítulo 6 Design da Arquitetura 1 Assuntos abordados Decisões de design de arquitectura Visões de arquitetura Padrões de arquitetura Arquiteturas de aplicativos Capítulo

Leia mais

Panorama da notação UML

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

Leia mais

06/02/2014. Engenharia de requisitos. Requisitos de Software. Capítulo 6. O que é um requisito? Objetivos. Abstração de requisitos (Davis)

06/02/2014. Engenharia de requisitos. Requisitos de Software. Capítulo 6. O que é um requisito? Objetivos. Abstração de requisitos (Davis) Engenharia de requisitos Requisitos de Software O processo de estabelecer os serviços que o cliente requer a partir de um sistema e as restrições sob as quais ele opera e é desenvolvido. Os próprios requisitos

Leia mais

4/14/11. Processos de Engenharia de Requisitos. Engenharia de requisitos. Elicitação e análise. A espiral de requisitos

4/14/11. Processos de Engenharia de Requisitos. Engenharia de requisitos. Elicitação e análise. A espiral de requisitos Processos de engenharia de requisitos Processos de Engenharia de Requisitos Os requisitos e as formas de obtê-los e documentálos variam drasticamente de um projeto para o outro Contudo, existe uma série

Leia mais

Requisitos de Software

Requisitos de Software Requisitos de Software Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 6 Slide 1 Objetivos Apresentar os conceitos de requisitos de usuário e de sistema Descrever requisitos funcionais

Leia mais

Análise de Sistemas 4º Bimestre (material 3)

Análise de Sistemas 4º Bimestre (material 3) Análise de Sistemas 4º Bimestre (material 3) Permite a visualização das classes que irão compor o sistema com seus respectivos atributos e métodos, bem como demonstrar como elas se relacionam, complementam

Leia mais

RUP RATIONAL UNIFIED PROCESS

RUP RATIONAL UNIFIED PROCESS O que é RUP? É um metodologia para gerenciar projetos de desenvolvimento de software que usa a UML como ferramenta para especificação de sistemas. Ele é um modelo de processo híbrido Mistura elementos

Leia mais

Gerência de Projetos e Qualidade de Software. Prof. Walter Gima

Gerência de Projetos e Qualidade de Software. Prof. Walter Gima Gerência de Projetos e Qualidade de Software Prof. Walter Gima 1 Plano de Ensino e Aprendizagem 2 3 Objetivos CONTEÚDO Se preparar para o inicio de um projeto Acompanhamento projeto Controles Métricas

Leia mais

Processos de software

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

Leia mais

SSC Engenharia de Software. Prof. Paulo C. Masiero

SSC Engenharia de Software. Prof. Paulo C. Masiero SSC - 5764 Engenharia de Software Prof. Paulo C. Masiero Processo de Software: Fases ou Subprocessos DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO Análise de Sistema Análise de Requisitos Projeto Projeto Processo pelo

Leia mais

UML e seus diagramas

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,

Leia mais

Introdução à Análise e Projeto de Sistemas

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

Leia mais

Prof. Esp. Fabiano Taguchi

Prof. Esp. Fabiano Taguchi UML Prof. Esp. Fabiano Taguchi http://fabianotaguchi.wordpress.com fabianotaguchi@hotmail.com UML COMPETÊNCIA: Conhecer e desenvolver estudos de caso usando modelagem orientada a objeto. HABILIDADE: Conhecer

Leia mais

Modelagem Orientada a Objeto

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

Leia mais

Projeto Orientado a Objetos

Projeto Orientado a Objetos UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Projeto Orientado a Objetos Engenharia de Software 2o. Semestre de

Leia mais

Trata-se de uma variação do diagrama de estado com um propósito um pouco diferente do diagrama de estado:

Trata-se de uma variação do diagrama de estado com um propósito um pouco diferente do diagrama de estado: Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Atividade 6 Diagrama de Atividade 6.1 Definição

Leia mais

Métodos formais. Especificação Formal. Aceitação de métodos formais. O uso de métodos formais. Especificação e projeto

Métodos formais. Especificação Formal. Aceitação de métodos formais. O uso de métodos formais. Especificação e projeto Métodos formais Especificação Formal A especificação formal é parte de um coleção mais geral de técnicas que são conhecidas como métodos formais. São todas baseadas na representação matemática e na análise

Leia mais

As Visões. Visões arquiteturais (revisão)

As Visões. Visões arquiteturais (revisão) As 4 + 1 Visões Jair C Leite Visões arquiteturais (revisão) Separar diferentes aspectos em visões separadas com o objetivo de gerenciar complexidade. Cada visão descreve diferentes conceitos da engenharia.

Leia mais

Modelagem de Sistemas Web. Modelagem de BD

Modelagem de Sistemas Web. Modelagem de BD Modelagem de Sistemas Web Aula 9 Modelagem de BD OBS: Pré-requisito: noções intermediárias em BD e de modelo ER Fonte: Proj. e Mod. BD 4/E Capítulo: Análise de Req. E Mod. Dados Conceit. - Toby Teorey

Leia mais

Engenharia de Software

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

Leia mais

A modelagem de Negócio com UML

A modelagem de Negócio com UML A modelagem de Negócio com UML Introdução A passagem do Modelo do Negócio para o Modelo do Sistema envolve a definição de quais Casos de Uso do Negócio deverão ser automatizados; No momento em que os requisitos

Leia mais

A Linguagem UML. A Linguagem UML. De onde surgiu? Fundadores da UML. História da UML. O que é modelagem?

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

Leia mais

PROJETO DE ARQUITETURA

PROJETO DE ARQUITETURA PROJETO DE ARQUITETURA Projeto Detalhado de Software (PDS) Profa. Cynthia Pinheiro Antes de mais nada... Próximas aulas: Seminários de Padrões de Projeto GoF 1º Dia: 10/11/2017, 08h 10h, Sala 04 2º Dia:

Leia mais

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPI JOÃO CÂMARA RATIONAL UNIFIED PROCESS - RUP

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 nickerson.ferreira@ifrn.edu.br Introdução 2 Modelo

Leia mais

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA UML UNIFIED MODELING LANGUAGE

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 nickerson.ferreira@ifrn.edu.br O que é?? 2 A UML

Leia mais

27) Em relação aos Projetos de Sistemas de Software, assinale a sequência correta de desenvolvimento de um sistema:

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)

Leia mais

UML. Modelando um sistema

UML. Modelando um sistema UML Modelando um sistema Fases do desenvolvimento de Software Análise de requisitos Análise Projeto Programação Análise de Requisitos Esta fase captura as intenções e necessidades dos usuários do sistema

Leia mais

Modelagem Dinâmica. Toda a ação é designada em termos do fim que procura atingir. Niccolo Maquiavel. O pensamento é o ensaio da ação.

Modelagem Dinâmica. Toda a ação é designada em termos do fim que procura atingir. Niccolo Maquiavel. O pensamento é o ensaio da ação. Modelagem Dinâmica Toda a ação é designada em termos do fim que procura atingir. Niccolo Maquiavel O pensamento é o ensaio da ação. Sigmund Freud Modelagem Dinâmica Identifica e modela os aspectos do sistema

Leia mais

Metodologia Simplified. António Rocha

Metodologia Simplified. António Rocha Metodologia Simplified António Rocha - 2003 Metodologias As empresas precisam de uma metodologia simples e eficaz para realizarem o seu primeiro projecto OO Uma metodologia tem mais probabilidades de ser

Leia mais

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

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 hmossri_cursos@yahoo.com.br Marcelo Nassau Malta nassau_cursos@yahoo.com.br

Leia mais

UML Diagrama de Atividades Diagrama de Caso de Uso. ENG1518/3VB Sistemas de Informação Gerenciais Prof. Marcos Villas

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 villas@puc-rio.br 1 - Conceitos 2 UML é uma linguagem para: Especificar Visualizar Construir...

Leia mais

Engenharia de Software

Engenharia de Software Arquitetura de Sistemas Distribuídos Cap. 12 Sommerville 8 ed. Introdução: É um software que usa várias máquinas para executar suas tarefas. Praticamente todos os sistemas baseado em grandes computadores

Leia mais

PROVA DE CONHECIMENTOS ESPECÍFICOS

PROVA DE CONHECIMENTOS ESPECÍFICOS Nesta PROVA DE CONHECIMENTOS ESPECÍFICOS, nas questões objetivas de a, que valem dez pontos dois pontos para cada questão, marque, em cada uma, a única opção correta, de acordo com o respectivo comando.

Leia mais

Requisitos de sistemas

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

Leia mais

DESENVOLVIMENTO BASEADO EM COMPONENTES

DESENVOLVIMENTO BASEADO EM COMPONENTES DESENVOLVIMENTO BASEADO EM COMPONENTES Projeto Detalhado de Software (PDS) Profa. Cynthia Pinheiro Definições de Componente de Software: Uma parte modular de um sistema, possível de ser implantada e substituível,

Leia mais

Introdução a Engenharia de Software

Introdução a Engenharia de Software Engenharia de Software Aula 02 Introdução a Engenharia de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo dcc603@dcc.ufmg.br ou disciplina.eduardo@gmail.com 7 Março de 2018 Bibliografia

Leia mais

15/04/2013. Outro Diagrama de Classes. Primeiro Diagrama de Classes. Diagrama de Classes. Atributos. Eduardo Figueiredo

15/04/2013. Outro Diagrama de Classes. Primeiro Diagrama de Classes. Diagrama de Classes. Atributos. Eduardo Figueiredo DCC / ICEx / UFMG Primeiro Diagrama de Classes Diagrama de Classes Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Professor Aluno matricula Outro Diagrama de Classes Diagrama de Classes Serve de

Leia mais

INTRODUÇÃO À ENGENHARIA DE SOFTWARE. Prof.: Tiago Alves

INTRODUÇÃO À ENGENHARIA DE SOFTWARE. Prof.: Tiago Alves INTRODUÇÃO À ENGENHARIA DE SOFTWARE Prof.: Tiago Alves (tiagofga@gmail.com) UML UNIFIED MODELING LANGUAGE Livro: Utilizando UML e Padrões, 3.ed. Autor(es): Craig Larman Modelagem de Sistemas Orientados

Leia mais

ISO/IEC 12207: Manutenção

ISO/IEC 12207: Manutenção ISO/IEC 12207: Manutenção O desenvolvimento de um sistema termina quando o produto é liberado para o cliente e o software é instalado para uso operacional Daí em diante, deve-se garantir que esse sistema

Leia mais

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini /

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini   / Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com / andre.belini@ifsp.edu.br MATÉRIA: ENGENHARIA DE SOFTWARE Aula N : 16 Tema:

Leia mais

Princípios de Engenharia de Software. Aula 6 Projeto de Software

Princípios de Engenharia de Software. Aula 6 Projeto de Software Princípios de Engenharia de Software Aula 6 Projeto de Software Projeto de Software Um projeto de software é uma descrição de estrutura de software a ser implementada, dos dados que são parte do sistema,

Leia mais

2 Fluxos no Ciclo de Vida do Processo Unificado. O Processo Unificado consiste da repetição de uma série de ciclos durante a vida de um sistema.

2 Fluxos no Ciclo de Vida do Processo Unificado. O Processo Unificado consiste da repetição de uma série de ciclos durante a vida de um sistema. Processo Unificado Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Ciclo de Vida - Fluxos Autoria:Aristófanes Corrêa Silva Adaptação: Alexandre

Leia mais