Visão Geral Parte 2. Jair C Leite DIMAp/UFRN

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

Download "Visão Geral Parte 2. Jair C Leite DIMAp/UFRN"

Transcrição

1 Visão Geral Parte 2 Jair C Leite DIMAp/UFRN Requisitos Objetivos ou restrições estabelecidas por clientes e usuários do sistema que definem as diversas propriedades do sistema Condição ou capacidade necessária que o software deve possuir para que o usuário possa resolver um problema ou atingir um objetivo para atender as necessidades ou restrições da organização ou de outros componentes do sistema.

2 Problemas comuns Os envolvidos* não sabem o que eles realmente querem. Se expressam num vocabulário diferente dos desenvolvedores. Os envolvidos podem ter requisitos conflitantes. Fatores organizacionais e políticos podem influenciar os requisitos. Novos requisitos podem surgir durante o processo de levantamento/análise/especificação. Novos envolvidos podem vir a participar do processo. Podem haver mudanças externas ambiente ou regras de negócios. *Stakeholders: Envolvidos ou partes interessadas Como descrever os requisitos? A especificação dos requisitos deve ser: Completa deve descrever tudo o que é necessário Consistente não deve haver conflitos e contradições Não-ambígua não deve levar a interpretações diferentes por desenvolvedores e usuários. Difícil de atingir considerando que existem diferentes tipos de envolvidos. Depende da precisão da linguagem utilizada Linguagem natural, informal apropriada para os requisitos do usuário e do sistema. Linguagens gráficas, semi-formais apropriada para os requisitos do sistema e do software. Linguagens formais apropriada para uma especificação formal de software em métodos formais.

3 Requisitos funcionais Descrição das diversas funções que clientes e usuários querem ou precisam que o software ofereça Casos de Uso Exemplos: "o software deve possibilitar o cálculo dos gastos diários, semanais, mensais e anuais com pessoal". "o software deve emitir relatórios de compras a cada quinze dias" "os usuários devem poder obter o número de aprovações, reprovações e trancamentos em todas as disciplinas por um determinado período de tempo. Requisitos não-funcionais Propriedades de um software, como manutenibilidade, usabilidade, desempenho, custos e várias outras São exemplos de requisitos não-funcionais: "a base de dados deve ser protegida para acesso apenas de usuários autorizados". "o tempo de resposta do sistema não deve ultrapassar 30 segundo". "o software deve ser operacionalizado no sistema Linux" "o tempo de desenvolvimento não deve ultrapassar seis meses".

4 Tipos de requisitos não-funcionais Engenharia de Requisitos 1/2 Requisitos mudam sempre! Requisitos precisam ser levantados, analisados, especificados, rastreados, verificados e documentados. Estas atividades ocorrem ao longo de todo o ciclo-de-vida do software. A Engenharia de Requisitos propõe modelos, métodos, técnicas e ferramentas para a realização destas atividades

5 O processo de engenharia de requisitos Fonte: Ian Sommerville O processo de levantamento-análiseespecificação-validação.

6 Arquitetura de Software A arquitetura de um software é uma estrutura de componentes interconectados através de interfaces Componentes são compostos de componentes menores e interfaces A interação entre componentes ocorre através de suas interfaces O que é Arquitetura de Software? O que é arquitetura de software? É uma descrição em alto nível de abstração que permite uma visão completa do sistema. A arquitetura deve dar suporte à funcionalidade do sistema. Desta forma, o comportamento dinâmico do sistema deve ser levado em conta. A arquitetura deve está em conformidade com a qualidade (requisitos não-funcionais). No nível arquitetural, todos os detalhes de implementação devem ser escondidos. O que não é arquitetura de software? Design detalhado (baixo-nível) design de componentes internos, modelos de dados e implementação Arquitetura do sistema físico elementos processadores, topologia de rede, arquitetura de elementos de hardware, etc. Arquitetura de software está relacionada com estes últimos no que se chama de Arquitetura do Sistema. Fonte: Bredemeyer Consulting

7 Histórico Visão tradicional Conceito de Sub-sistema e Módulos Arquitetura nos Métodos Estruturados Arquitetura nos Métodos Orientados-a-Objetos Visão atual Disciplina emergente [Shaw e Garlan] Estilo arquiteturais Padrões de Design e Frameworks Visões Arquiteturais Linguagens de Descrição Arquitetural (ADL) Desenvolvimento Baseado em Componentes Arquitetura nos métodos estruturados A arquitetura básica é hierárquica: um programa principal decomposto em várias subrotinas ou funções Sub-rotinas podem ser agrupadas em módulos Forma de Interação: Chamada-de-função e passagem de parâmetros Conceitos: Sub-rotinas Fan-in e Fan-out: mede o grau de dependência entre as subrotinas. Coesão e Acoplamento: uma boa arquitetura deve ter alta coesão e baixo acoplamento módulos Fan-in Fan-out Baixa coesão Alta coesão Alto acoplamento Baixo acoplamento

8 Arquitetura de Software nos Métodos Orientados-a-Objetos Objetivos Agrupamento de dados e funções num único componente Visão abstrata em termos de classes/objetos e troca de mensagens Princípios: Independência Conceitual Encapsulamento Técnicas Identificação de objetos Especialização de objetos (Herança) Padrões de Projetos (Design Patterns) Representação UML: diagramas de classes, de seqüência, de colaboração e de estados Exemplo Sistema estação meteorológica subsistemas e módulos Fonte: Ian Sommerville, 2000

9 Exemplo Sistema estação meteorológica classes de um módulo Fonte: Ian Sommerville, 2000 Arquitetura nos métodos OO (UML)... Panel Applet java applet HelloWorld paint() Graphics awt lang Diagrama de Classes Pacotes

10 Arquitetura de Software visão emergente Objetivos Visão abstrata do software através de componentes e interfaces Independência de plataforma Independência de paradigma de programação Técnicas Estilos Arquiteturais Padrões de projetos (Design Patterns) Frameworks Representação Linguagens de Descrição Arquitetural Estilos Arquiteturais Identificados em diversas aplicações de sucesso Modelo em camadas OSI/ISO para redes Notificador em Sistemas de Janelas Pipes em Sistemas Unix Não são modelos, são conjunto de características comuns Mais de um estilo pode ser utilizado em uma mesma aplicação Semelhanças com a idéia de Patterns

11 Tubos e filtros (pipe-and-filter) Um Filtro é um componente que processa o fluxo de dados de sua entrada e gera um fluxo de saída para um outro filtro Fluxo de dados vai de um Filtro para o outro através de Tubos Facilmente implementado no Unix Scan Parse GenCode Outro exemplo abrindo uma imagem compactada e criptografada req req req Application Decompression OS P P Decryption P File- System Camadas Elementos da camada superior utiliza serviços oferecidos na interface (API) da camada inferior Um elemento da camada inferior não utiliza serviços da camada superior Uma camada pode ser modificada desde que mantenha a sua interface Aplicações: Sistemas de Janelas; Redes de Computadores

12 Visões arquiteturais (Hofmeister, 2000) Visão conceitual

13 Visão de módulos Visão de execução

14 Visão de execução Relação com o hardware Visão de codificação Organização do fonte

15 Visão de codificação As 3 Visões Componentee-conector (C&C) Decomposição Módulo Classes Processo Concorrência Clienteservidor Dados compartilhados Alocação Utilização Camadas Atribuição de trabalho Implantação Implementação

16 As 4+1 visões P. Krutchen Visão lógica Stakeholders Funcionalidade Diagramas: Classes, Seqüência, Colaboração Integradores Desempenho Escalabilidade Diagramas: Atividades, Objetos Seqüência, Colaboração Visão de processos Visão de Casos de Uso Visão de implementação Programadores Gerenciamento de configuração Diagramas: Pacotes, componentes Engenheiros de Sistema Topologia do Sistema Comunicação Diagramas: Implantação Visão de implantação Preenchimento iterativos das visões 1/2 No RUP, o design arquitetural está espalhado nas várias iterações na fase de elaboração. As 4 visões vão sendo elaboradas de forma iterativa, dirigidas a partir dos casos de usos e requisitos nãofuncionais. Fonte:C. Hofmeister et al. / The Journal of Systems and Software 80 (2007)

17 Preenchimento iterativos das visões 2/2 O processo sugere a elaboração de cenários a partir de requisitos (casos de uso) de negócio e de sistema. Com base nos cenários são elaborados diagramas de seqüência e colaboração. Em seguida os diagramas de classes (ainda visão lógica) a partir das quais pode-se código fonte organizados em módulos e sub-sistemas. A visão de processo permite ver a execução de processos concorrentes e como eles estão alocados nos nós processadores do sistema (visão de implantação). Padrões Padrões são soluções para problemas específicos que ocorrem de forma recorrente em um determinado contexto que foram identificados a partir da experiência coletiva de desenvolvedores de software. A proposta original de padrões veio do trabalho de Christopher Alexander na área de arquitetura. Sua definição para padrões: Cada padrão é uma regra (esquema) de três partes que expressa uma relação entre um certo contexto, um problema, e uma solução.

18 Contexto, Problema, Solução e Forças O contexto descreve uma situação no desenvolvimento na qual existe um problema. O problema que ocorre repetidamente no contexto deve também ser descrito bem como as forças (requisitos, restrições e propriedades) associadas a ele. A solução descreve uma configuração ou estrutura de componentes e suas interconexões, obedecendo às forças do problema. As forças, denominação dada por Alexander, descrevem os requisitos que caracterizam o problema e que a solução deve satisfazer, as restrições que devem ser aplicadas às soluções e propriedades desejáveis que a solução deve ter. Padrão Proxy - idéia O Padrão Proxy permite que clientes de um serviço utilizem um representante do componente que oferece o serviço. Aumenta a eficiência, a segurança e facilita o acesso. O Proxy pode substituir o servidor quando ocorrem problemas com o servidor. O Proxy permite criar uma independência de endereçamento e implementação do servidor.

19 O Padrão Proxy Contexto: Um cliente precisa acessar um serviço de um outro componente em um sistema distribuído. O acesso direto é tecnicamente possível, mas pode não ser a melhor opção. Problemas: O acesso direto pode não ser eficiente em tempo de execução, ter alto custo e não ser seguro. O cliente não precisa ficar dependente de endereço de rede do componente. Solução: Utilize um representante do cliente que ofereça o serviço de forma idêntica e realize pré- e pós-processamento adicionais para garantir a Qualidade do Serviço. : Client service : Proxy : Service pre-processing Client AbstractService service service post-processing Proxy 1 1 service Service service Verificação e Validação (V & V) Objetivo: assegurar que o software que o software cumpra as suas especificações e atenda às necessidades dos usuários e clientes. Verificação: Estamos construindo certo o produto? O software deve está de acordo com a sua especificação. Validação: Estamos construindo o produto certo? O software deve atender às necessidades dos usuários. Ocorrem em todo o ciclo de vida completo Revisões de requisitos, revisões de design, testes de código

20 Técnicas de V & V (Sommerville) Inspeções de software (V & V estática) Análise da documentação e código fonte do software Pode ser auxiliado por ferramentas de depuração Testes de software (V & V dinâmica) O programa ou um protótipo devem ser executados Casos de testes deve ser elaborados: dados de entrada e comportamento esperado. Fonte: Ian Sommerville, 2000 Inspeções de Software Características Técnica preventiva permite a V & V antes do software ser codificado Mais barata Baseada na experiência do inspetor Mais aplicada a fatores de revisão e transição Pouco eficaz para fatores operacionais Aplicações mais comuns Inspeção de programa fonte (estática e dinâmica) Inspeção de documentos e modelos Desenvolvimento Cleanroom

21 Testes de integração incremental Teste de integração Top-down Começa pelos componentes de alto nível e vai descendo na hieraquia de componentes, de acordo com a arquitetura do software. Os sub-componentes são representados por stubs. Stubs tem a mesma interface, mas não precisa ter funcionalidade. Basta retornar valores esperados.

22 Prova Formal de Programas Utilizada em métodos formais Linguagens de programação são definidas formalmente (sintaxe e semântica formal) Linguagens de especificação formais também Pode-se provar matematicamente que um programa está correto em relação à especificação formal {x=5} x := x + 1; {x=6} Especificação: condição inicial Especificação: condição final Testes de software Elaboração de casos de testes baseados na especificação funcional Dados de entradas Comportamento esperado Podem ser classificados Quanto ao escopo Quanto ao método Aplicações em fatores operacionais Correção Usabilidade Desempenho Robustez

23 Testes de correção Revelam a presença de erros, mas NÃO a ausência Um teste bem sucedido é aquele que descobre o maior número de erros existentes. Deve ser utilizado em conjunto com técnicas de inspeção O teste deve identificar o erro A inspeção analítica (rastreamento ou depuração) deve localizar e corrigir o erro O problema da geração de casos de testes Testes exaustivos são impraticáveis. Escolher bons casos de testes (dados de entrada e comportamento esperado) é fundamental para que um teste seja bem sucedido, isto é, detecte os erros existentes. Exemplo: Considere um programa (ou trecho de programa) que deve determinar o maior entre dois números inteiros: MAX(x,y) O conjunto de casos testes exaustivos é infinito. Um possível conjunto de casos de testes poderia ser: { (1,0)->1; (-2,-5)->-2; (9,3)->9; (34,25)->34; (0,-1)->0; (1,1)->1; (100,99)->100; (-45,-11)->-45; } Inspecione o código deste programa ao lado: Aplicando-se os casos de testes acima, conclui-se que o programa não tem erros. No entanto, bastariam apenas três casos de testes para concluir-se que o programa tem erros. Como determinar estes casos? read(x,y); If (x>y) then max:=x; else max:=x; print(max);

24 Testes caixa-preta São chamados testes funcionais. O programa é uma caixa preta cujo comportamento é determinado estudando-se as suas entradas e saídas. Os casos de testes são derivados da especificação funcional. A escolha dos dados de entrada podem ser feitas com várias técnicas: Partição de domínio Grafos de causa-efeito Teste caixa-branca Analisa a estrutura do programa para determinar os casos de teste Exemplo: teste do caminho básico Visa determinar um conjunto de casos de teste que garanta que todos os caminhos (fluxos) através do programa sejam percorridos. Utiliza-se um grafo de fluxo de programa onde cada nó representa uma decisão e cada arco um caminho possível. O grafo é usado como base para determinar a complexidade ciclomática do programa Complexidade ciclomática = número_de_arcos número_de_nós + 2

25 Teste de integração Bottom-up Integra unidades já testadas em módulos de mais alto nível, de acordo com a arquitetura.

Verificação e Validação (V & V)

Verificação e Validação (V & V) Verificação e Validação (V & V) Objetivo: assegurar que o software que o software cumpra as suas especificações e atenda às necessidades dos usuários e clientes. Verificação: Estamos construindo certo

Leia mais

Arquitetura de Software visão emergente

Arquitetura de Software visão emergente Arquitetura de Software visão emergente Objetivos Visão abstrata do software através de componentes e interfaces Independência de plataforma Independência de paradigma de programação Técnicas Estilos Arquiteturais

Leia mais

Organização para Realização de Teste de Software

Organização para Realização de Teste de Software Organização para Realização de Teste de Software Quando o teste se inicia há um conflito de interesses: Desenvolvedores: interesse em demonstrar que o programa é isento de erros. Responsáveis pelos testes:

Leia mais

Testes de correção (de defeitos)

Testes de correção (de defeitos) Testes de correção (de defeitos) Revelam a presença de erros, mas NÃO a ausência Um teste bem sucedido é aquele que descobre o maior número de erros existentes. Deve ser utilizado em conjunto com técnicas

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

Organização para Realização de Teste de Software Quando o teste se inicia há um conflito de interesses:

Organização para Realização de Teste de Software Quando o teste se inicia há um conflito de interesses: Organização para Realização de Teste de Software Quando o teste se inicia há um conflito de interesses: Desenvolvedores: interesse em demonstrar que o programa é isento de erros. Responsáveis pelos testes:

Leia mais

Arquitetura de Software

Arquitetura de Software Arquitetura de Software A arquitetura de um software é uma estrutura de componentes interconectados através de interfaces Componentes são compostos de componentes menores e interfaces A interação entre

Leia mais

Análise de Requisitos. Tema 4. Análise de Requisitos Profa. Susana M. Iglesias

Análise de Requisitos. Tema 4. Análise de Requisitos Profa. Susana M. Iglesias Análise de Requisitos Tema 4. Análise de Requisitos Profa. Susana M. Iglesias Análise e uma ponte entre a engenharia de sistemas e o desenho do software Engenharia de Sistema Análise de Requisitos de Software

Leia mais

TESTES DE SOFTWARE. Profa. Maria Auxiliadora

TESTES DE SOFTWARE. Profa. Maria Auxiliadora TESTES DE SOFTWARE 1 Teste de software É uma atividade crítica na garantia de qualidade de software; Quatro dimensões: Estado do teste ( o momento ); Técnica do teste ( como vou testar ); Metas do testes

Leia mais

Padrões contexto problema solução

Padrões contexto problema solução Padrões Padrões são soluções para problemas específicos que ocorrem de forma recorrente em um determinado contexto que foram identificados a partir da experiência coletiva de desenvolvedores de software.

Leia mais

Modelos de design arquitetural

Modelos de design arquitetural Modelos de design arquitetural Jair C Leite Modelos de design arquitetural Objetivo Guiar o arquiteto nas etapas para desenhar a arquitetura Deve considerar diferentes visões arquiteturais Atualmente existem

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

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

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

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

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

Técnicas de Levantamento de Requisitos Aula 1

Técnicas de Levantamento de Requisitos Aula 1 MBA em Gestão de Software Técnicas de Levantamento de Requisitos Aula 1 Agenda Introdução Conceitos Tipos de Requisitos Processo de Engenharia de Requisitos Princípios para Bons Requisitos Exercícios Introdução

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

2

2 ANÁLISE DE SISTEMAS (processo de desenvolvimento de sistemas) por Antônio Maurício Pitangueira 1 2 Levantamento de requisitos Análise de requisitos Projeto Implementação Testes Implantação Foco da disciplina

Leia mais

Desenvolvimento de Software. Testes de Software. Tópicos da Aula. Onde estamos... Verificação x Validação. Testes de Software

Desenvolvimento de Software. Testes de Software. Tópicos da Aula. Onde estamos... Verificação x Validação. Testes de Software Engenharia de Software Aula 17 Desenvolvimento de Software Testes de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo dcc603@gmail.com 7 Maio 2012 1. Especificação de requisitos 2. Projeto

Leia mais

Projeto de software Estrutura do software e arquitetura SWEBOK

Projeto de software Estrutura do software e arquitetura SWEBOK Projeto de software Estrutura do software e arquitetura SWEBOK SWEBOK Design Patterns Maneira testada ou documentada de alcançar um objetivo qualquer Padrões são comuns em várias áreas da engenharia Design

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

Teste de Software. Competência: Entender as técnicas e estratégias de testes de Software

Teste de Software. Competência: Entender as técnicas e estratégias de testes de Software Teste de Software Competência: Entender as técnicas e estratégias de testes de Software Conteúdo Programático Introdução O que é teste de software? Por que é necessário testar um software? Qual a causa

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

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

Leia mais

INF1013 MODELAGEM DE SOFTWARE

INF1013 MODELAGEM DE SOFTWARE INF1013 MODELAGEM DE SOFTWARE Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 1 O Paradigma Orientado a Objetos A Linguagem UML Descrição da Arquitetura 1 Programa

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

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

Leia mais

Análise de sistemas. Engenharia de Requisitos

Análise de sistemas. Engenharia de Requisitos Análise de sistemas Engenharia de Requisitos Análise de Requisitos Processo de descobrir, analisar, documentar e verificar serviços requeridos para um sistema e suas restrições operacionais. 2 O que é

Leia mais

ENGENHARIA DE SOFTWARE

ENGENHARIA DE SOFTWARE EMENTA ENGENHARIA DE SOFTWARE DISCIPLINA: Estrutura e Fluxo de Informação EMENTA: A disciplina Estrutura e Fluxo de Informação se propõe a capacitar o aluno sobre os fundamentos da Gestão da Informação

Leia mais

5 Processo de Reificação e de Desenvolvimento com ACCA

5 Processo de Reificação e de Desenvolvimento com ACCA Uma Arquitetura para a Coordenação e a Composição de Artefatos de Software 53 5 Processo de Reificação e de Desenvolvimento com ACCA Resumo Este capítulo visa esclarecer e descrever atividades existentes

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Software Design Principles Representando SW em UML OO em C Pattens úteis para embedded Rodrigo M A Almeida Design Principles Design Principles são guias para decompor as funcionalidades e

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

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

Princípios da Engenharia de Software aula 03

Princípios da Engenharia de Software aula 03 Princípios da Engenharia de Software aula 03 Prof.: José Honorato Ferreira Nunes Material cedido por: Prof.: Franklin M. Correia Na aula anterior... Modelos de processos de software: Evolucionário Tipos

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

Engenharia de Software Aula 21. Revisão da Prova 2. Eduardo Figueiredo.

Engenharia de Software Aula 21. Revisão da Prova 2. Eduardo Figueiredo. Engenharia de Software Aula 21 Revisão da Prova 2 Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo dcc603@dcc.ufmg.br 16 Maio 2018 Aula 16: POO Um programa OO é geralmente constituído de várias classes

Leia mais

Engenharia de Software Aula 2.1 Introdução à Engenharia de Requisitos. Prof. Bruno Moreno

Engenharia de Software Aula 2.1 Introdução à Engenharia de Requisitos. Prof. Bruno Moreno Engenharia de Software Aula 2.1 Introdução à Engenharia de Requisitos Prof. Bruno Moreno bruno.moreno@ifrn.edu.br Engenharia de Requisitos É, talvez, o maior problema da indústria de SW; Está relacionada

Leia mais

Arquitetura de software

Arquitetura de software Arquitetura de software Problema: vamos implementar um clone do compraentrega.com.br Mantém preços atualizados Recebe encomendas e pagamento Recomenda itens a usuários Por onde começamos? Arquitetura =

Leia mais

Bibliografia. Quais são os problemas? capacidade de construção. acompanha a demanda por novos programas. ameaçada por projetos ruins.

Bibliografia. Quais são os problemas? capacidade de construção. acompanha a demanda por novos programas. ameaçada por projetos ruins. Bibliografia Quais são os problemas? 4 A sofisticação do software ultrapassou nossa capacidade de construção. 4 Nossa capacidade de construir programas não acompanha a demanda por novos programas. 4 Nossa

Leia mais

Engenharia de Software

Engenharia de Software Prof. M.Sc. Ronaldo C. de Oliveira ronaldooliveira@facom.ufu.br FACOM - 2011 UML Linguagem Unificada de Modelagem Projeto de Software Introdução O que é projeto em software? O termo projeto é um tanto

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

Especificação de Requisitos. Prof. Pedro Ramires Prof. Nilton Cesar

Especificação de Requisitos. Prof. Pedro Ramires Prof. Nilton Cesar Especificação de Requisitos Prof. Pedro Ramires Prof. Nilton Cesar Especificação de Requisitos A principal tarefa do Analista de Sistemas e : descobrir o que um sistema devera fazer. A essas necessidades

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

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

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

Ciclo de vida: fases x atividades

Ciclo de vida: fases x atividades Ciclo de vida Fase de definição Análise e Especificação Estudo de Viabilidade Estimativas Planejamento Fase de desenvolvimento Design Implementação e integração Verificação e Validação Fase de operação

Leia mais

Análise e Projeto Orientado a Objetos

Análise e Projeto Orientado a Objetos Análise e Projeto Orientado a Objetos Aula 1.10 - Engenharia de Requisitos Bruno Neiva Moreno Instituto Federal do Rio Grande do Norte Campus Nova Cruz bruno.moreno@ifrn.edu.br 1/27 Introdução A Engenharia

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

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

PROJETO DE BANCO DE DADOS

PROJETO DE BANCO DE DADOS UNINGÁ UNIDADE DE ENSINO SUPERIOR INGÁ FACULDADE INGÁ CIÊNCIA DA COMPUTAÇÃO BANCO DE DADOS I PROJETO DE BANCO DE DADOS Profº Erinaldo Sanches Nascimento Objetivos Discutir o ciclo de vida do sistema de

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

Engenharia de Requisitos

Engenharia de Requisitos Engenharia de Requisitos Criado: mar/2001 Atualizado: set/2005 Tópicos Definição de Requisitos Participantes Processo Documento de Requisitos (SRS) Evolução dos Requisitos 2 Referência I.Sommerville. Sw

Leia mais

5 METODOLOGIA PROPOSTA

5 METODOLOGIA PROPOSTA 5 METODOLOGIA PROPOSTA 179 5 METODOLOGIA PROPOSTA 5.1 Introdução Primeiramente neste capítulo, introduz-se uma proposta de estruturação para o processo de especificação e projeto de sistemas de automação

Leia mais

Engenharia de Software Aula 2.1 Introdução à Engenharia de Requisitos. Prof. Bruno Moreno

Engenharia de Software Aula 2.1 Introdução à Engenharia de Requisitos. Prof. Bruno Moreno Engenharia de Software Aula 2.1 Introdução à Engenharia de Requisitos Prof. Bruno Moreno bruno.moreno@ifrn.edu.br Engenharia de Requisitos É, talvez, o maior problema da indústria de SW; Está relacionada

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

Engenharia de Software

Engenharia de Software Prof. M.Sc. Ronaldo C. de Oliveira ronaldooliveira@facom.ufu.br FACOM - 2011 Verificação e Validação (V&V) S.L.Pfleeger (Cap.8 & 9) R.Pressman (Cap.13 & 14) I.Sommerville (Cap.22 & 23) Introdução Verificação

Leia mais

Professor Emiliano S. Monteiro

Professor Emiliano S. Monteiro Professor Emiliano S. Monteiro To-Do Doing Done Conhecer os processos de desenvolvimento habilita o aluno a realizar uma melhor escolha de processo para uso em projetos futuros. A vantagem de conhecer

Leia mais

Engenharia de Requisitos

Engenharia de Requisitos DCC / ICEx / UFMG Engenharia de Requisitos Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Motivação Motivação Porque levantar Requisitos é importante? Motivação Porque levantar Requisitos é importante?

Leia mais

Arquitetura de Software

Arquitetura de Software Arquitetura de Software Jair C Leite Arquitetura e Engenharia Qual o papel da arquitetura e da engenharia... Na construção civil edifícios, pontes, estradas, etc.? Na indústria automobilística? Na indústria

Leia mais

05/09/2013. Ciclo de vida de um Sistema de Informação

05/09/2013. Ciclo de vida de um Sistema de Informação Ciclo de vida de um Sistema de Informação Objetivos dessa aula: 1. O conceito de ciclo de vida de um projeto 2. As características do ciclo de vida do projeto clássico 3. As diferenças entre projetos clássicos

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

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

6.1. Teste Baseado em Gramática e Outras Abordagens de Teste

6.1. Teste Baseado em Gramática e Outras Abordagens de Teste 6 Discussão Além das técnicas de teste usando modelos gramaticais, existem outras abordagens de teste funcional de sistemas que estão sendo estudadas pela comunidade científica. Algumas delas se dedicam

Leia mais

CONCEITOS BÁSICOS E MODELO DE PROJETO

CONCEITOS BÁSICOS E MODELO DE PROJETO CONCEITOS BÁSICOS E MODELO DE PROJETO Projeto Detalhado de Software (PDS) Profa. Cynthia Pinheiro Na aula passada... Abstração Arquitetura Padrões de Projeto Separação por interesses (por afinidades) Modularidade

Leia mais

Engenharia de Software

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

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Luiz Leão luizleao@gmail.com http://www.luizleao.com Questão 1 Para Sommerville a arquitetura de sistemas descreve o sistema em termos de um conjunto de unidades

Leia mais

RUP RATIONAL UNIFIED PROCESS PRÁTICAS RECOMENDADAS. Prof. Fabiano Papaiz IFRN

RUP RATIONAL UNIFIED PROCESS PRÁTICAS RECOMENDADAS. Prof. Fabiano Papaiz IFRN RUP RATIONAL UNIFIED PROCESS PRÁTICAS RECOMENDADAS Prof. Fabiano Papaiz IFRN O RUP recomenda as seguintes práticas que devem ser utilizadas no desenvolvimento de um software: 1. Desenvolver de forma iterativa

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

ARQUITETURA E DESENHO

ARQUITETURA E DESENHO ARQUITETURA E DESENHO DE SOFTWARE CMP 1063 Prof. Me. Fábio Assunção Parte 2 DESENHO DE SOFTWARE Espaço do problema Espaço da solução. Interpretação não literal. Orientação à escrita. Orientação à diagramação.

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 OBJETIVO Compreender uma série de técnicas de testes, que são utilizadas para descobrir defeitos em programas Conhecer as diretrizes que

Leia mais

3. Engenharia dos requisitos de software

3. Engenharia dos requisitos de software Renato Cardoso Mesquita Departamento de Eng. Elétrica da UFMG renato@cpdee.ufmg.br Engenharia de Software 3. Engenharia dos requisitos de software.......... 3.1. Visão Geral O fluxo de Requisitos reúne

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

Manutenção Leitura: Sommerville; Pressman

Manutenção Leitura: Sommerville; Pressman Manutenção Leitura: Sommerville; Pressman Auxiliadora Freire Fonte: Engenharia de Software 6º - 8º Edição / Ian Sommerville 2000-2007 Slide 1 Manutenção de software É modificar um programa depois que ele

Leia mais

Processo de desenvolvimento de sistema de informação - DSI

Processo de desenvolvimento de sistema de informação - DSI - DSI Fases do processo de Desenvolvimento de Sistemas Informação Estudo da viabilidade Engenharia de requisitos Desenho (Modelagem) Codificação Testes e Implantação Estudo da viabilidade Estudo preliminar

Leia mais

Verificação e Validação

Verificação e Validação Verificação vs Validação Verificação e Validação Verificação: Estamos construindo o produto corretamente? O software deve estar de acordo com sua especificação. Validação: Estamos construindo o produto

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

Levantamento, Análise e Gestão Requisitos. Aula 05

Levantamento, Análise e Gestão Requisitos. Aula 05 Levantamento, Análise e Gestão Requisitos Aula 05 Agenda Requisitos de Software Tipos de Requisitos: funcionais e não-funcionais Definição do escopo do problema Análise do problema Compreensão da necessidade

Leia mais

RUP Unified Process. Profª Jocelma Rios

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

Leia mais

UML 2.0 Método, Linguagem e Ferramenta. Prof. Cesar Augusto Tacla

UML 2.0 Método, Linguagem e Ferramenta. Prof. Cesar Augusto Tacla UML 2.0 Método, Linguagem e Ferramenta Prof. Cesar Augusto Tacla Conteúdo do Curso MÉTODO RUP FERRAMENTA Visual Paradigm Enterprise Architect LINGUAGEM UML UML: Unified Modeling Language Linguagem padrão

Leia mais

Teste de Software. Prof. Camila. Pedro de Assis Sobreira Jr.

Teste de Software. Prof. Camila. Pedro de Assis Sobreira Jr. Teste de Software Prof. Camila Pedro de Assis Sobreira Jr. 2 Técnicas de Testes Técnica de Teste Funcional Técnica de Teste Estrutural 3 Testes Funcionais Teste de Especificação de Requisitos. Teste de

Leia mais

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) 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 (sisotani@icmc.usp.br) Modelos de Processo de

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

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

Engenharia de Software. Projeto de Software. Projeto: definição. Profa. Dra. Lúcia V. L. Filgueiras Profa. Dra. Selma Shin Shimizu Melnikoff

Engenharia de Software. Projeto de Software. Projeto: definição. Profa. Dra. Lúcia V. L. Filgueiras Profa. Dra. Selma Shin Shimizu Melnikoff Engenharia de Software Profa. Dra. Lúcia V. L. Filgueiras Profa. Dra. Selma Shin Shimizu Melnikoff Projeto de Software Fundamentos de projeto de software Projeto estruturado Índice do documento de projeto

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

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

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

Engenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS. Nome:

Engenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS. Nome: Engenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS Nome: 1. A figura abaixo representa, simplificadamente, as fases do Modelo de Ciclo de Vida Cascata.

Leia mais

Título PROCESSO LABES ESPECIALIZADO PARA DESENVOLVIMENTO SEGUNDO O PARADIGMA ESTRUTURADO. Projeto. Analista; Requisitos Funcionais Escopo; Cliente;

Título PROCESSO LABES ESPECIALIZADO PARA DESENVOLVIMENTO SEGUNDO O PARADIGMA ESTRUTURADO. Projeto. Analista; Requisitos Funcionais Escopo; Cliente; 1/8 1. PROCESSO DE DESENVOLVIMENTO Levantamento Requisitos Análise Requisitos Projeto Implementação Testes 1.1 LEVANTAMENTO DE REQUISITOS 1.1.1 Intificação Requisitos Funcionais Requisitos Funcionais Escopo;

Leia mais

Análise de Sistemas Aula 4

Análise de Sistemas Aula 4 Análise de Sistemas Aula 4 Prof. Emerson Klisiewicz Contextualização Aula 4 Gerenciamento de Requisitos Refinamento de Requisitos Aprovação de Requisitos Matriz de Rastreabilidade O Sucesso Clientes satisfeitos

Leia mais

Visões Arquiteturais. Arquitetura de Software Thaís Batista

Visões Arquiteturais. Arquitetura de Software Thaís Batista 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

Computação e Programação

Computação e Programação Computação e Programação MEMec - LEAN 1º Semestre 2010-2011 Aula Teórica 4 Instituto Superior Técnico, Dep. de Engenharia Mecânica - ACCAII Alinhamento da AT 4 Construção de programas Actividades de teste

Leia mais

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

Leia mais

Aula 2 POO 1 Introdução. Profa. Elaine Faria UFU

Aula 2 POO 1 Introdução. Profa. Elaine Faria UFU Aula 2 POO 1 Introdução Profa. Elaine Faria UFU - 2019 Sobre o Material Agradecimentos Aos professores José Gustavo e Fabiano, por gentilmente terem cedido seus materiais. Os slides consistem de adaptações

Leia mais

Análise. Orientada a Objetos Modelo Funcional, Modelo Estrutural e Modelo Comportamental. Linguagens: Java, C++, etc.

Análise. Orientada a Objetos Modelo Funcional, Modelo Estrutural e Modelo Comportamental. Linguagens: Java, C++, etc. Análise Estruturada Modelo Essencial ou Lógico constitui-se de dois sub-modelos (Modelo Ambiental e Modelo Comportamental) e um Dicionário de Dados. Linguagens: Fortran, Cobol, C, etc. Orientada a Objetos

Leia mais

Estilos Arquiteturais. Prof. Fellipe Aleixo

Estilos Arquiteturais. Prof. Fellipe Aleixo Estilos Arquiteturais Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Introdução Em An Introduction to Software Architecture, artigo de 1994, David Garlan e Mary Shaw definiram: An architectural style,

Leia mais

Arquitetura de Software Parte 1/3 Introdução* Jorge H. C. Fernandes Junho de 1999

Arquitetura de Software Parte 1/3 Introdução* Jorge H. C. Fernandes Junho de 1999 Arquitetura de Software Parte 1/3 Introdução* Jorge H. C. Fernandes Junho de 1999 Arquitetura de Software Este curso é baseado no livro Software Architecture in Practice, de Len Bass, Paul Clements and

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