Aula 9 Especificação de Requisitos

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

Download "Aula 9 Especificação de Requisitos"

Transcrição

1 Aula 9 Especificação de Requisitos Alessandro Garcia LES/DI/PUC-Rio Abril 2016 Especificação Objetivos dessa aula Apresentar a importância e o que são especificações de requisitos, bem como conceitos relacionados Referência básica: Capítulo 10 Seção 8.3 Capítulo 9.4 Apêndice 2 Slides adaptados de: Staa, A.v. Notas de Aula em Programação Modular; Referência complementar Silva, R.P.; UML2 em Modelagem Orientada a Objetos; Florianópolis, SC: Visual Books; /36 1

2 Sumário Retrabalho inútil Por que especificar? Especificação de requisitos requisitos funcionais requisitos não-funcionais Como identificar requisitos? 3/36 Visão do Desenvolvedor Mágico" Requisitos Descrição abstrata do problema Aqui o Milagre acontece Código Muitas membros envolvidos não estão interessados em tais decisões de baixo nível 4/36 2

3 Uma Visão Profissional Descrição explícita de requisites para evitar retrabalho inútil Requisitos Documentação das decisões de projeto Boas práticas de projeto modular Decisões relacionadas as estratégias organizacionais e do implementar primeiro Arquitetura Código 5/36 Como eliminar causas de retrabalho inútil? O que fazer para reduzir ou evitar de vez esse risco? produzir uma boa especificação do que se deseja que seja feito modelar o problema a resolver especificação de requisitos por exemplo: saber/descobrir antes quais são as funcionalidades básicas de um jogo de Xadrez tornar o projeto e implementação do jogo mais manutenível e reutilizável possível produzir uma arquitetura organização da solução adequada ao problema a resolver modelar a solução modelagem da arquitetura e modelagem física 6/36 3

4 O que é uma especificação? Especificação é um documento ou fragmento que: Determina o que deve ser feito, sem dizer como fazê-lo Especificações de um artefato são veículos de comunicação entre as diversas pessoas interessadas (stakeholders) neste artefato desenvolvedores do artefato e mantenedores do artefato desenvolvedores cliente que pretendem localizar e utilizar artefatos servidores já existentes (reuso) usuários que utilizarão um programa contendo o artefato os gerentes de desenvolvimento e manutenção Nem sempre sabemos exatamente o que desejamos precisamos ver para saber se está bom ou não dificuldade - exemplo: abrangência da solução 7/36 Por que especificar? Precisa-se saber, com precisão, o que o sistema deve implementar... Requisitos são funções, condições, atributos, propriedades ou características a serem satisfeitas pelo artefato Requisitos funcionais e não-funcionais Antes de começar a escrever código precisa-se saber o que este código deve fazer requisitos funcionais também é óbvio que, existindo condicionantes ou restrições, estas devem ser explicitadas antes requisitos não funcionais usualmente chamados de requisitos de qualidade» manutenibilidade» reusabilidade» confiabilidade: robustez, corretude, etc..» desempenho» segurança»... 8/36 4

5 Requisitos funcionais ou não-funcionais?? Outros exemplos: o sistema deve gerar um relatório com a descrição dos empréstimos diários o tempo de resposta deverá ser menor do que 10 ms o módulo deverá ser portátil melhor é enumerar os sistemas operacionais explicitamente deve ser possível fazer uma consulta as reclamações dos usuários nos últimos 5 dias o sistema deve ser robusto quanto os dados obtidos através de janelas de diálogos, i.e. devem ser validados 9/36 Jogo de Damas Requisitos Funcionais? 10/36 5

6 Jogo de Damas Requisitos Funcionais? Exemplos Jogo: o programa deve possibilitar o jogo entre duas pessoas, num tabuleiro de 8 x 8 casas alternadamente claras e escuras cada jogador deve possuir 12 peças (pretas ou brancas) e ter como objetivo capturar ("comer") as peças do adversário ganha aquele que "comer" todas ou a maior quantidade de peças do adversário o programa deve permitir que cada jogador movimente apenas uma peça por vez Peças: o programa deve permitir somente dois tipos de peças, a peça comum, que são as peças que os jogadores possuem no início do jogo e as damas se uma peça comum do jogador terminar uma rodada na última fileira de casas do lado oposto do tabuleiro, esta é substituída por uma dama etc... 11/36 Jogo de Damas Requisitos Não-Funcionais? 12/36 6

7 Jogo de Damas Requisitos Não-Funcionais? Exemplos Robustez: todos os dados de entradas (ex. movimentos) serão validados pelo jogo caso alguma entrada não seja válida, uma mensagem será exibida ao jogador informando dado inválido; ele terá nova oportunidade de digitar Corretude: todos os módulos devem ser testados individualmente, onde cada função dos módulos é estada em diferentes circunstâncias Reuso: restrição: deve-se reusar o Arcabouço de teste automatizado de forma a acelerar o processo de reutilização de projeto e implementação (e teste), deve-se maximizar a reutilização de módulos restrição: em particular, deve-se reusar o módulo LISTA do Arcabouço Manutenibilidade: todas funções e módulos deverão ser desenvolvidos utilizando padrões de documentação, garantindo assim que o programa seja de fácil manutenção restrição: usar catálogos do livro "Programação Modular (Staa, Arndt von) 13/36 Como descobrir requisitos? Um exemplo simplório Desenvolver um programa que computa raiz quadrada dá para começar sem nenhuma informação a mais? Veja algumas perguntas que podem surgir raiz quadrada de que? inteiros, reais, complexos? qual é a precisão requerida? float, double, múltipla? quantos algarismos significativos? existe alguma exigência de desempenho? tempo de resposta versus precisão deve-se verificar se o argumento fornecido é válido? x >= 0.? como responder se não for válido? condição de retorno ou cancelamento? 14/36 7

8 Como requisitos (F/NFs) são descobertos? Diretamente em entrevistas ou discussões com o cliente do sistema Mas eles pouco sabe o que querem mais tarde: elaboração de protótipos Busca de documentação disponível sobre sistemas semelhantes Alguns são requeridos pelo próprio gerente de projetos ou por membros do time p.e. reusabilidade de certos módulos, tais como definir módulos que encapsulem estruturas de dados genéricas p.e. manutenibilidade: evitar gastos com interfaces de módulos má projetadas, levando a instabilidades futuras no software Produtos novos de software: análise de mercado identificar necessidades de uma gama de potenciais clientes Ex.: algum tempo atrás... jogos em dispositivos móveis identificar características e deficiências de produtos dos competidores Ex.: inclusão de sons em jogos de dispositivos móveis trends futuros: novas tecnologias, p.e. aumento de capacidade de memória em dispositivos móveis 15/36 Terminologia Requisitos: são funções, condições, atributos, propriedades e características a serem disponibilizadas ou satisfeitas pelo artefato Hipóteses: são funções, condições, atributos, propriedades ou características assumidas como satisfeitas externamente à equipe de desenvolvimento o usuário logado tem direitos de ativar esta função pressupõe que os direitos já foram controlados antes de efetuar a chamada o volume de memória disponível será sempre suficiente para executar o programa mesmo assim sempre verifique se malloc( ) retornou NULL Restrições: são condições que restringem a liberdade de escolha de alternativas de construção do artefato sendo especificado o programa deverá ser redigido em C o módulo deverá utilizar a biblioteca xpto.lib Ago 2008 Arndt von Staa LES/DI/PUC-Rio 16/36 8

9 Descobrir novos requisitos Forma de se descobrir novos requisitos identifique as abstrações principais quais são as propriedades ou regras associadas com tais abstrações elaboree respondaperguntasdo tipo: Qual(is)? Onde? Quando? existem restrições e hipóteses? Abr 2010 Alessandro Garcia LES/DI/PUC-Rio 17/35 Jogo de Damas Requisitos Funcionais? Exemplos Jogo: (quaissão as regras?) como e onde é praticado o jogo? é praticado ente duas pessoas, num tabuleiro de 8 x 8 casas alternadamente claras e escuras qual é a dinâmica do jogo? cada jogador possui 12 peças (pretas ou brancas) e tem como objetivo capturar ("comer") as peças do adversário quem ganha? ganha aquele que "comer" todas ou a maior quantidade de peças do adversário quando pode ser feito o movimento de peças? cada jogador movimenta uma peça por vez Peças: (quais são as regras?) existem dois tipos de peças, a peça comum, que são as peças que os jogadores possuem no início do jogo e as damas se uma peça comum do jogador terminar uma rodada na última fileira de casas do lado oposto do tabuleiro, esta é substituída por uma dama etc... 18/36 9

10 Exercício Faça a especificação de requisitos com base no que foi apresentado hoje: não somente requisitos funcionais mas também: não-funcionais, hipóteses e restrições A especificação deve ser feita com seu grupo do trabalho Lembrete Regras básicas do jogo incluem: mão de onze, mão de ferro, esconder carta, situações de empate Abr 2010 Alessandro Garcia LES/DI/PUC-Rio 19/35 Dúvidas - Trabalho Passos 1) Elicite os requisitos Quais as funcionalidades do programa do jogo de Truco? Os requisitos serão importantes para que vocês descubram: Módulos, interfaces e dependências Quais outras características (estrutura/funções) dos módulos Lista? Set 2009 LES/DI/PUC-Rio 20/28 10

11 Não esquecer... Preencher tabela de atividades ao longo do processo. NÃO DEIXE PARA ÚLTIMA HORA, POIS VOCÊ NÃO SE LEMBRARÁ DO QUE FEZ TAL DIA, TAL HORA. Com relatórios similares a esse você aprende a planejar o seu trabalho. O relatório é INDIVIDUAL Ferramentas como gmake e batches de apoio deve ser utilizados 21/ 30 LES/DI/PU Dicas para o Trabalho Não esqueça de rever cuidadosamente: critérios de avaliação procedimentos para entrega do trabalho Certifique-se que seu trabalho atende os seguintes pontos: estruturação: contém tanto o fonte dos módulos de implementação quanto módulos definição (interface) siga princípios de modularidade: interfaces simples e documentadas,... obediência a padrões de programação não esqueçam de produzir arquivos LEIAME.TXT e RELATOR.TXT 22/ 30 LES/DI/PU 11

12 Aula 9 Especificação de Requisitos Alessandro Garcia LES/DI/PUC-Rio Abril

Aula 10 Especificação de Requisitos

Aula 10 Especificação de Requisitos Aula 10 Especificação de Requisitos Alessandro Garcia LES/DI/PUC-Rio Setembro 2016 Especificação Objetivos dessa aula Apresentar a importância e o que são especificações de requisitos, bem como conceitos

Leia mais

Aula 8 Especificação de Requisitos

Aula 8 Especificação de Requisitos Aula 8 Especificação de Requisitos Alessandro Garcia Abril 2017 Recados Enunciado do trabalho prático (T2) já está disponível no sítio da disciplina: http://www.inf.puc-rio.br/~inf1301/ Enviem mensagem

Leia mais

Aula 10 Arquitetura de Software e Exercício. Alessandro Garcia LES/DI/PUC-Rio Abril de 2017

Aula 10 Arquitetura de Software e Exercício. Alessandro Garcia LES/DI/PUC-Rio Abril de 2017 Aula 10 Arquitetura de Software e Exercício Alessandro Garcia Abril de 2017 Não Esquecer... Preencher tabela de atividades ao longo do processo. NÃO DEIXE PARA ÚLTIMA HORA, POIS VOCÊ NÃO SE LEMBRARÁ DO

Leia mais

Aula 9 Especificação de Requisitos Exercício

Aula 9 Especificação de Requisitos Exercício Aula 9 Especificação de Requisitos Exercício Alessandro Garcia LES/DI/PUC-Rio Abril 2017 Exercício Faça a especificação de requisitos do programa do jogo FreeCell com base no que foi apresentado na aula

Leia mais

Aula 11 Modelagem da Arquitetura. Alessandro Garcia LES/DI/PUC-Rio Abril 2016

Aula 11 Modelagem da Arquitetura. Alessandro Garcia LES/DI/PUC-Rio Abril 2016 Aula 11 Modelagem da Arquitetura Alessandro Garcia LES/DI/PUC-Rio Abril 2016 Especificação Objetivos dessa aula Revisar notação de modelagem da arquitetura Realizar exercício: definição da arquitetura

Leia mais

Aula 13 Modelagem da Arquitetura

Aula 13 Modelagem da Arquitetura Aula 13 Modelagem da Arquitetura Alessandro Garcia LES/DI/PUC-Rio Setembro 2017 Especificação Objetivos dessa aula Notação de modelagem da arquitetura Realizar exercício: definição da arquitetura do programa

Leia mais

Aula 12 Modelos Arquitetural e Físico Outros Princípios de Modularidade

Aula 12 Modelos Arquitetural e Físico Outros Princípios de Modularidade Aula 12 Modelos Arquitetural e Físico Outros Princípios de Modularidade Alessandro Garcia LES/DI/PUC-Rio Outubro de 2016 Avisos e Lembretes Exercícios em sala T1 entrega das correções no fim da aula testes

Leia mais

Aula 14. Modelagem Física (e Exercício)

Aula 14. Modelagem Física (e Exercício) Aula 14 Modelagem Física (e Exercício) Alessandro Garcia LES/DI/PUC-Rio Maio 2018 Avisos e Lembretes Prova P1: quarta, 09/05, início as 13:00 matéria dada até esta aula com consulta de material impresso

Leia mais

Aula 02 Conceitos e Princípios de Modularidade 1

Aula 02 Conceitos e Princípios de Modularidade 1 Aula 02 Conceitos e Princípios de Modularidade 1 Alessandro Garcia LES/DI/PUC-Rio Março 2017 Lembretes Horário das aulas vamos ter que começar as 13:00 Definição de horário de monitoria Sítio (site) da

Leia mais

Aula 02 Conceitos e Princípios de Modularidade 1

Aula 02 Conceitos e Princípios de Modularidade 1 Aula 02 Conceitos e Princípios de Modularidade 1 Alessandro Garcia LES/DI/PUC-Rio Agosto 2016 Lembretes Horário das aulas inicio cada aula a partir de 13:15 Sítio (site) da disciplina: www.inf.puc-rio.br/~inf1301

Leia mais

Aula 20 Testes 3. Alessandro Garcia Leonardo da Silva Sousa OPUS Group/LES/DI/PUC-Rio Dezembro 2016

Aula 20 Testes 3. Alessandro Garcia Leonardo da Silva Sousa OPUS Group/LES/DI/PUC-Rio Dezembro 2016 Aula 20 Testes 3 Alessandro Garcia Leonardo da Silva Sousa OPUS Group/LES/DI/PUC-Rio Dezembro 2016 Slides adaptados de: Staa, A.v. Notas de Aula em Programacao Modular; 2008. Teste de Caixa Branca O que

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Prof. Fabiano Papaiz IFRN

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Prof. Fabiano Papaiz IFRN PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Prof. Fabiano Papaiz IFRN Um Processo de Desenvolvimento de Software, ou simplesmente Processo de Software, é um conjunto de atividades realizadas por pessoas cujo

Leia mais

Aula 07 Teste Automatizado Parte II

Aula 07 Teste Automatizado Parte II Aula 07 Teste Automatizado Parte II Prof. Alessandro Garcia Eduardo Fernandes (assistente) LES/DI/PUC-Rio Março 2018 Especificação Objetivo dessa aula Apresentar como sistematicamente instalar e utilizar

Leia mais

Aula 17 Revisão. Alessandro Garcia LES/DI/PUC-Rio Abril 2010

Aula 17 Revisão. Alessandro Garcia LES/DI/PUC-Rio Abril 2010 Aula 17 Revisão Alessandro Garcia LES/DI/PUC-Rio Abril 2010 Matéria da Prova Todo material dado até o dia de hoje capítulos correspondentes do livro são indicados no início de cada aula material referenciado

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

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

REUSO E REUSABILIDADE

REUSO E REUSABILIDADE REUSO E REUSABILIDADE Manutenção de Software Profa. Cynthia Pinheiro Antes de mais nada... 2ª Lista de Exercícios Já está disponível no site a 2ª Lista de Exercícios Entrega: dia 03/10, no horário da aula.

Leia mais

Introdução à Qualidade de Software

Introdução à Qualidade de Software Universidade Católica de Pelotas Tecnólogo em Análise e Desenvolvimento de Sistemas Disciplina de Qualidade de Software Introdução à Qualidade de Software Prof. Luthiano Venecian venecian@ucpel.tche.br

Leia mais

Programação Modular: Prova, Trabalho e Considerações Finais

Programação Modular: Prova, Trabalho e Considerações Finais Programação Modular: Prova, Trabalho e Considerações Finais Alessandro Garcia LES/DI/PUC-Rio Junho 2016 Prova 22/06 Toda matéria Em particular, material após P1 Dicas: Revisem os exercícios dados em sala

Leia mais

Eng. de Requisitos: Atividades. Engenharia de Requisitos. Eng. de Requisitos: Processo. O Documento de Requisitos. Stakeholders

Eng. de Requisitos: Atividades. Engenharia de Requisitos. Eng. de Requisitos: Processo. O Documento de Requisitos. Stakeholders DCC / ICEx / UFMG Eng. de Requisitos: Atividades Engenharia de Requisitos Eduardo Figueiredo Inclui quatro fases principais Estudo de viabilidade Elicitação (ou análise) de Especificação de Validação dos

Leia mais

Aula 5 Introdução à Teste de Módulos. Alessandro Garcia LES/DI/PUC-Rio Agosto 2017

Aula 5 Introdução à Teste de Módulos. Alessandro Garcia LES/DI/PUC-Rio Agosto 2017 Aula 5 Introdução à Teste de Módulos Alessandro Garcia LES/DI/PUC-Rio Agosto 2017 Avisos Monitoria, horário: Sextas, 11:00 às 13:00 9º. Andar do Prédio Pe. Leonel Franca Próxima aula: exercício (T1) Alessandro

Leia mais

Aula 17 Decomposição sucessiva

Aula 17 Decomposição sucessiva Aula 17 Decomposição sucessiva Francisco Dantas LES/DI/PUC-Rio Agosto 2008 Especificação Objetivos dessa aula Apresentar o método de desenvolvimento baseado em decomposição sucessiva Apresentar uma técnica

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Herança e Polimorfismo Msc. Paulo de Tarso F. Júnior 1 Projeto Orientado a Objetos O que desejam? Produção de projetos conceitualmente simples o bastantes para serem entendidos

Leia mais

Eng. de Requisitos: Atividades. Engenharia de Requisitos. Eng. de Requisitos: Processo. O Documento de Requisitos. Stakeholders. Estudo de Viabilidade

Eng. de Requisitos: Atividades. Engenharia de Requisitos. Eng. de Requisitos: Processo. O Documento de Requisitos. Stakeholders. Estudo de Viabilidade DCC / ICEx / UFMG Eng. de Requisitos: Atividades Engenharia de Requisitos Eduardo Figueiredo Inclui quatro fases principais Estudo de viabilidade Elicitação (ou análise) de Especificação de Validação dos

Leia mais

ENGENHARIA DE SOFTWARE. Introdução

ENGENHARIA DE SOFTWARE. Introdução ENGENHARIA DE SOFTWARE Introdução AGENDA Conceitos de Engenharia de Software Processo de desenvolvimento de software ENGENHARIA DE SOFTWARE CONCEITOS CENÁRIO INICIAL Desenvolvimento informal e não suficiente

Leia mais

Paradigmas de Software

Paradigmas de Software Paradigmas de Software Objetivos Introdução aos paradigmas de software. Descrição de modelos genéricos e sua aplicabilidade. Descrição dos processos de requisitos, desenvolvimento, teste e evolução. Modelo

Leia mais

especificação por meio de exemplos não é garantia de corretude, mas a experiência mostra que tende a ser melhor do que o estado da prática hoje

especificação por meio de exemplos não é garantia de corretude, mas a experiência mostra que tende a ser melhor do que o estado da prática hoje 1 Introdução Testar é o conjunto de tarefas ou passos executados para verificar se um produto ou serviço atende à sua proposta. Dessa forma, a execução de testes em um programa contribui para a melhoria

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

ENGENHARIA DE SOFTWARE

ENGENHARIA DE SOFTWARE 2016-1 ENGENHARIA DE SOFTWARE Histórico Produtos de software Tipos de aplicações de software Mitos do software Kele Teixeira Belloze kelebelloze@gmail.com HISTÓRICO (ERA PRÉ-ES) 1940s: Primeiro computador

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

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

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

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

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

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

Levantamento, Análise e Gestão Requisitos. Aula 03 Levantamento, Análise e Gestão Requisitos Aula 03 Agenda Paradigma da Orientação a Objetos Classes e objetos Abstração Encapsulamento Herança e polimorfismo Associação de objetos Coesão e acoplamento Levantamento

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

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

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

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

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

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

3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks

3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks 48 3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks Este capítulo apresenta uma visão geral da contribuição principal deste trabalho: uma abordagem orientada a aspectos para 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

Modelagem de Casos de Uso (Parte 1)

Modelagem de Casos de Uso (Parte 1) Modelagem de Casos de Uso (Parte 1) Introdução (1) Objetivos Principais dos Casos de Uso: Delimitação do contexto de um sistema Documentação e o entendimento dos requisitos Descrição dos requisitos funcionais

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

Unidade II MODELAGEM DE PROCESSOS. Profa. Gislaine Stachissini

Unidade II MODELAGEM DE PROCESSOS. Profa. Gislaine Stachissini Unidade II MODELAGEM DE PROCESSOS Profa. Gislaine Stachissini Modelagem de sistemas A fase do desenvolvimento do sistema exige: esforço; dedicação; envolvimento; um único objetivo. Estilo de desenvolvimento

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

Aula 04 Princípios de Modularidade 3 e Introdução à Teste de Software Alessandro Garcia

Aula 04 Princípios de Modularidade 3 e Introdução à Teste de Software Alessandro Garcia Aula 04 Princípios de Modularidade 3 e Introdução à Teste de Software Alessandro Garcia LES/DI/PUC-Rio Março 2017 Avisos O horário de monitoria será no seguinte horário: 6ª. Feira, 13:00 15:00 (15 alunos

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

FUNDAMENTOS DA ANÁLISE E PROJETO DE SISTEMAS. Projeto de Programas PPR0001

FUNDAMENTOS DA ANÁLISE E PROJETO DE SISTEMAS. Projeto de Programas PPR0001 FUNDAMENTOS DA ANÁLISE E PROJETO DE SISTEMAS Projeto de Programas PPR0001 2 Introdução Antes de desenvolver ou construir qualquer produto ou sistema em engenharia é necessário um... o PROJETO O que é um

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

Programação Modular. Alessandro Garcia. DI/PUC-Rio Agosto 2016

Programação Modular. Alessandro Garcia. DI/PUC-Rio Agosto 2016 Programação Modular Alessandro Garcia DI/PUC-Rio Agosto 2016 Programação Modular Quem sou eu? Quem são vocês? Qual é o problema abordado no curso? Qual é o objetivo do curso? Organização: aulas, avaliação

Leia mais

Descrição Arquitetural

Descrição Arquitetural Descrição Arquitetural IEEE ISO 1471 Stakeholders Pessoas interessadas no desenvolvimento e no produto final do sistema: 1. Professora Adriana: responsável por verificar e validar o sistema. Tem como principal

Leia mais

Técnicas de Reutilização. Reutilização em Programação Orientada a Objetos. Considere três classes... Reuso de Classes.

Técnicas de Reutilização. Reutilização em Programação Orientada a Objetos. Considere três classes... Reuso de Classes. DCC / ICEx / UFMG Técnicas de Reutilização Reutilização em Programação Orientada a Objetos Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Reuso de classes Bibliotecas Frameworks Considere três classes

Leia mais

Um Middleware de Inteligência Artificial para Jogos Digitais 105

Um Middleware de Inteligência Artificial para Jogos Digitais 105 6 Conclusão Este capítulo apresenta alguns comentários e considerações gerais sobre o trabalho de pesquisa realizado durante o desenvolvimento desta dissertação, as contribuições alcançadas e sugestões

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

Aula 04 Conceitos e Princípios de Modularidade 3 Alessandro Garcia

Aula 04 Conceitos e Princípios de Modularidade 3 Alessandro Garcia Aula 04 Conceitos e Princípios de Modularidade 3 Alessandro Garcia LES/DI/PUC-Rio Agosto 2017 Especificação Objetivo dessa aula Estudar características da interface de módulos Estudar os princípios de

Leia mais

Processos de Software

Processos de Software Processos de Software Centro de Informática - Universidade Federal de Pernambuco Kiev Gama kiev@cin.ufpe.br Slides originais elaborados por Ian Sommerville e adaptado pelos profs. Márcio Cornélio, Vinicius

Leia mais

PROJETO ARQUITETURAL PARTE II: PADRÕES DE PROJETO. Projeto de Programas PPR0001

PROJETO ARQUITETURAL PARTE II: PADRÕES DE PROJETO. Projeto de Programas PPR0001 PROJETO ARQUITETURAL PARTE II: PADRÕES DE PROJETO Projeto de Programas PPR0001 QUALIDADE DO PROJETO 2 3 Qualidade do Projeto de Software Modularidade: gerar particionamento em elementos que executam funções

Leia mais

Introdução à Engenharia de Software

Introdução à Engenharia de Software Introdução à Engenharia de Software Professor: Rômulo César romulodandrade@gmail.com www.romulocesar.com.br Imagem Clássica Objetivo da aula Depois desta aula você terá uma visão sobre o que é a engenharia

Leia mais

Material Disciplina Tópicos em Engenharia de Software Parte 1 (Introdução aos Conceitos Engenharia de Software) Prof. Wagner Santos C.

Material Disciplina Tópicos em Engenharia de Software Parte 1 (Introdução aos Conceitos Engenharia de Software) Prof. Wagner Santos C. Material Disciplina Tópicos em Engenharia de Software Parte 1 (Introdução aos Conceitos Engenharia de Software) Prof. Wagner Santos C. de Jesus wsantoscj@gmail.com Sumário 1. Introdução à Engenharia de

Leia mais

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA ENGENHARIA DE SOFTWARE

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA ENGENHARIA DE SOFTWARE 1 INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA ENGENHARIA DE SOFTWARE Nickerson Fonseca Ferreira nickerson.ferreira@ifrn.edu.br Introdução 2 Antes de qualquer

Leia mais

Roni Fabio Banaszewski UTFPR Universidade Tecnológica Federal do Paraná

Roni Fabio Banaszewski UTFPR Universidade Tecnológica Federal do Paraná Roni Fabio Banaszewski UTFPR Universidade Tecnológica Federal do Paraná Reuso Motivações para reutilização de software Aspecto econômico Produtividade Time to market Qualidade Utilização de artefatos (código,

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

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

Como Modelar com UML 2

Como Modelar com UML 2 Ricardo Pereira e Silva Como Modelar com UML 2 Visual Books Sumário Prefácio... 13 1 Introdução à Modelagem Orientada a Objetos... 17 1.1 Análise e Projeto Orientados a Objetos... 18 1.2 Requisitos para

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

LIVRO ENGENHARIA DE SOFTWARE FUNDAMENTOS, MÉTODOS E PADRÕES

LIVRO ENGENHARIA DE SOFTWARE FUNDAMENTOS, MÉTODOS E PADRÕES LIVRO ENGENHARIA FUNDAMENTOS, MÉTODOS E PADRÕES WILSON PADUA PAULA FILHO CAPÍTULO REQUISITOS 1 REQUISITOS TECNICO E GERENCIAL ESCOPO (RASCUNHO) CARACTERISTICAS 2 O que são Requisitos? São objetivos ou

Leia mais

ENGENHARIA DE SOFTWARE/ SISTEMAS DE SOFTWARE

ENGENHARIA DE SOFTWARE/ SISTEMAS DE SOFTWARE ENGENHARIA DE SOFTWARE/ SISTEMAS DE SOFTWARE CMP1280/CMP1250 Prof. Me. Fábio Assunção Introdução à Engenharia de Requisitos REQUISITOS Descrições do que o sistema deve fazer, os serviços oferecidos pelo

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

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

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

Diagrama de Casos de Uso

Diagrama de Casos de Uso Diagrama de Casos de Uso Régis Patrick Silva Simão Régis Simão Diagrama de Casos de Uso 1/29 Agenda Introdução Casos de Uso Atores Relacionamento entre Atores e Casos de Uso Relacionamento entre Casos

Leia mais

Programação Modular: Exercício T4 e Considerações Finais

Programação Modular: Exercício T4 e Considerações Finais Programação Modular: Eercício T4 e Considerações Finais Alessandro Garcia LES/DI/PUC-Rio Cronograma Aula 13/6: Eercício do T3 relativo a: critérios de cobertura de teste caia-branca instrumentação para

Leia mais

3 Arquitetura para a Coordenação e a Composição de Artefatos de Software

3 Arquitetura para a Coordenação e a Composição de Artefatos de Software Uma Arquitetura para a Coordenação e a de Artefatos de 23 3 Arquitetura para a Coordenação e a de Artefatos de Resumo Este capítulo apresenta a arquitetura ACCA, que é a parte central deste trabalho. A

Leia mais

Aula 08 Ferramentas de desenvolvimento. Alessandro Garcia Alexander Chávez Eduardo Fernandes Leonardo Sousa LES/DI/PUC-Rio Setembro 2017

Aula 08 Ferramentas de desenvolvimento. Alessandro Garcia Alexander Chávez Eduardo Fernandes Leonardo Sousa LES/DI/PUC-Rio Setembro 2017 Aula 08 Ferramentas de desenvolvimento Alessandro Garcia Alexander Chávez Eduardo Fernandes Leonardo Sousa LES/DI/PUC-Rio Setembro 2017 Especificação Objetivo dessa aula Apresentar algumas das ferramentas

Leia mais

Programação para Games II. Professor Ariel da Silva Dias Orientação a Objetos

Programação para Games II. Professor Ariel da Silva Dias Orientação a Objetos Programação para Games II Professor Ariel da Silva Dias Orientação a Objetos Pacotes Pacotes são um modo de organizar classes e interfaces Um programa pode ser formado por centenas de classes individiduais;

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

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

FUNDAÇÃO UNIVERSIDADE ESTADUAL DE MARINGÁ

FUNDAÇÃO UNIVERSIDADE ESTADUAL DE MARINGÁ FUNDAÇÃO UNIVERSIDADE ESTADUAL DE MARINGÁ Centro de Tecnologia - CTC Departamento de Informática - DIN Programa de Pós-Graduação em Ciência da Computação PCC ESTÁGIO DE DOCÊNCIA II Disciplina: Engenharia

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

Engenharia de Software

Engenharia de Software Engenharia de Software Requisitos de Software Professor: Charles Leite Engenharia de requisitos Os requisitos de um sistema são as descrições do que o sistema deve fazer, os serviços que oferece e as restrições

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

Prof. Fábio Lúcio Meira

Prof. Fábio Lúcio Meira Prof. Fábio Lúcio Meira Objetivo Transformar os requisitos no design do futuro sistema Evoluir uma arquitetura robusta do sistema Adaptar o design para adequá-lo ao ambiente de implementação O principal

Leia mais

Resumo de TCC: MAGIC: Um framework para jogos de cartas. Ademir Coelho

Resumo de TCC: MAGIC: Um framework para jogos de cartas.  Ademir Coelho Resumo de TCC: MAGIC: Um framework para jogos de cartas http://www.lisha.ufsc.br/~robert/tcc/relatorio.pdf Autores: André Luís Knabben Thiago Robert Orientador: Professor Doutor Ricardo Pereira e Silva

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

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

Análise de Sistemas. Aula 5

Análise de Sistemas. Aula 5 Análise de Sistemas Aula 5 Prof. Emerson Klisiewicz CONTEXTUALIZAÇÃO Aula 5 Análise Orientada a Objetos Introdução a UML Histórico e Visão Geral Ferramentas CASE O Sucesso... Clientes satisfeitos Eles

Leia mais

RUP/PSDS. Introdução e Comparação

RUP/PSDS. Introdução e Comparação RUP/PSDS Introdução e Comparação Agenda RUP Introdução Mlehores Práticas Estrutura Tempo Conteúdo Contraponto PSDS Introdução Objetivos Promover planejamento, medição e controle dos projetos Reduzir riscos

Leia mais

Prof. Dr. Thiago Jabur Bittar

Prof. Dr. Thiago Jabur Bittar Prof. Dr. Thiago Jabur Bittar Uma representação abstrata e simplificada do processo de desenvolvimento software, tipicamente mostrando as principais atividades e dados usados na produção e manutenção de

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

CONCEITOS DE PROJETOS - 2. Profa. Reane Franco Goulart

CONCEITOS DE PROJETOS - 2. Profa. Reane Franco Goulart 1 CONCEITOS DE PROJETOS - 2 Profa. Reane Franco Goulart MODULARIDADE A arquitetura do software incorpora a modularidade, isto é, o software é dividido em componentes nomeados separadamente e endereçáveis,

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

Resumo parcial da Tese de Doutorado. Um modelo de Sistema de Gestão do Conhecimento para grupos de pesquisa e desenvolvimento.

Resumo parcial da Tese de Doutorado. Um modelo de Sistema de Gestão do Conhecimento para grupos de pesquisa e desenvolvimento. Universidade Federal de Santa Catarina Centro Tecnológico Disciplina: PROJETOS I Aluno: Cleosvaldo G. Vieira Jr cgvjr@inf.ufsc.br Resumo parcial da Tese de Doutorado Um modelo de Sistema de Gestão do Conhecimento

Leia mais

Teste de Software. Karen Frigo Busolin Novembro / 2010

Teste de Software. Karen Frigo Busolin Novembro / 2010 Teste de Software Karen Frigo Busolin Novembro / 2010 Processo de Testes de Software Possibilitar aos profissionais maior visibilidade e organização dos trabalhos. Representa uma estruturação de etapas,

Leia mais

Modelos de Processo de Software. SSC Engenharia de Software 1 Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012

Modelos de Processo de Software. SSC Engenharia de Software 1 Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012 Modelos de Processo de Software SSC 121 - Engenharia de Software 1 Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012 ENGENHARIA DE SOFTWARE 3 pode ser vista como uma abordagem de desenvolvimento de

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