Engenharia de Software I

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

Download "Engenharia de Software I"

Transcrição

1 25/04/ Engenharia de Software I Rogério Eduardo Garcia (rogerio@fct.unesp.br) Bacharelado em Ciência da Computação Aula 02 In a calm sea every man is a pilot. Tópicos Aula 2 Engenharia de Requisitos Definições Principais Atividades Elicitação, Análise, Modelagem Documento de Requisitos Requisitos Funcionais e de Qualidade Padrão IEEE Problemas com Requisitos Revisão da Especificação Estudo de Caso O Sistema TPV 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 2 1

2 25/04/ Fases Genéricas de Modelos de Processo de ENGENHARIA Especificação - estabelecer os requisitos e restrições do sistema Projeto - produzir um modelo documentado do sistema Implementação - construir o sistema Teste - verificar se o sistema atende às especificações requeridas Instalação - liberar o sistema para o cliente e garantir que ele seja operacional Manutenção eliminar defeitos e evoluir o sistema conforme demanda. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 3 Modelos de Processo de Desenvolvimento de Software Engenharia de Sistemas Análise de Requisitos Projeto Codificação Testes Manutenção Obter Requisitos Refinamento do Protótipo Elaborar Projeto Rápido Avaliar Protótipo Construir Protótipo Equipe #3 Equipe #1 Modelagem do Negócio Modelagem dos Dados 60 a 90 dias Equipe #2 Modelagem do Processo Modelage m do Negócio Modelagem dos Dados Geração da Aplicação Modelage m do Negócio Modelagem do Processo Teste e Modificação Modelagem dos Dados Geração da Aplicação Modelagem do Processo Geração da Aplicação Teste e Modificação Teste e Modificação DETERMINAR OBJETIVOS, AVALIAR ALTERNATIVAS, ALTERNATIVAS E IDENTIFICAR, RESOLVER RISCOS RESTRIÇÕES Análise de risco Análise de risco Análise de risco Protótipo de Protótipo 3 operação Protótipo 2 Análise Revisão de riscoprotó- tipo 1 Simulação, modelos, benchmarks Plano de requisitos Conceito de Plano de ciclo de vida operação Requisitos de S/W Projeto do produto Projeto detalhado Validação de Plano de requisitos Código desenvolvimento Teste de Integração e V & V do unidade plano de teste projeto Teste de integração Teste de PLANEJAR PRÓXIMA FASE aceitação Operação DESENVOLVER, VERIFICAR PRODUTO NO PRÓXIMO NÍVEL 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 4 2

3 25/04/ ISO 12207: Estrutura Processos Fundamentais Aquisição Processos de Apoio Documentação Fornecimento Garantia de Qualidade Operação Verificação Desenvolvimento Manutenção Validação Revisão Conjunta Auditoria Adaptação Resolução de Problemas Processos Organizacionais Gerência Melhoria Infra-estrutura Treinamento 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 5 Um Processo de Software com Qualidade medido gerenciado controlado PROCESSO DE SOFTWARE eficiente definido MODELOS DE PROCESSO DE SOFTWARE 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 6 3

4 25/04/ Processo de Software DEFINIÇÃO CONSTRUÇÃO SOFTWARE PRODUTO MANUTENÇÃO Análise de Sistema Planejamento do Projeto Engenharia de Requisitos Engenharia de Requisitos Projeto Codificação Teste Entendimento Modificação Revalidação Gerenciamento de Configuração Aplicação de Métricas Acompanhamento e Controle do Projeto Revisão e Inspeção Produção e Preparação de Documentos Gerenciamento de Risco Atividades para Garantir a Qualidade 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 7 Engenharia de Requisitos Uma compreensão completa dos requisitos de software é fundamental para que o desenvolvimento de software seja bem sucedido. A satisfação dos requisitos especificados pelos usuários é a pré-condição básica para o sucesso de um software. Software mal especificado... Desapontar o usuário. Causar problemas à equipe de desenvolvimento. Constantes modificações. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 8 4

5 25/04/ Requisitos... 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 9 Requisitos de Software: Base da Qualidade PROCESSO DE SOFTWARE Usuário DEFINIÇÃO Desenvolvedor Requisitos Padrões Organização CONSTRUÇÃO Requisitos atendidos SOFTWARE PRODUTO Padrões atendidos MANUTENÇÃO SOFTWARE COM QUALIDADE 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 10 5

6 25/04/ Engenharia de Requisitos Objetivo Sistematizar o processo de definição dos requisitos, obtendo uma especificação correta e completa dos requisitos. (IEEE, 1991) Desenvolver uma especificação completa, consistente e não ambígua, servindo de base para um acordo entre todas as partes envolvidas e descrevendo o que o produto de software irá fazer, mas não como ele será feito. (Boehm, 1989) 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 11 Engenharia de Requisitos Requisito Condição necessária para a obtenção de certo objetivo, ou para o preenchimento de certo fim. Especificação Descrição rigorosa e minuciosa das características que um material, uma obra, ou um serviço deverão apresentar. Portanto, Especificação é diferente de Requisitos. Especificação de Requisitos Serve como padrão para checar se as fases de projeto e implementação do processo de desenvolvimento de software estão corretas. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 12 6

7 25/04/ Engenharia de Requisitos A E.R. estabelece o processo de definição de requisitos como um processo no qual o que deve ser feito é elicitado, modelado e analisado. Este processo deve se basear em diferentes pontos de vista, e usar uma combinação de métodos, ferramentas e pessoal. O produto desse processo é um modelo, a partir do qual um documento de requisitos é produzido. (Júlio Leite, 1994) 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 13 Engenharia de Requisitos Para produzir um documento de requisitos completo e consistente... Entender melhor o contexto em que o problema se situa. Objetivos do produto a ser desenvolvido. Tarefas/atividades fundamentais para a engenharia do produto. Limites do desenvolvimento. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 14 7

8 25/04/ Engenharia de Requisitos Este processo acontece em um contexto previamente definido a que chamamos de Universo de Informação (UdeI). Contexto geral no qual o software deverá ser desenvolvido Inclui todas as fontes de informação e todas as pessoas relacionadas ao software, às quais denominamos de agentes desse universo O UdeI é a realidade circunstanciada pelo conjunto de objetivos definidos por quem solicitou o software (Júlio Leite, 1994) 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 15 Engenharia de Requisitos: Atividades Principais UdeI ELICITAR Documento de Requisitos do Sistema UdeI ANALISAR Decisões da Análise Métodos, Técnicas e Ferramentas (Júlio Leite, 1994) MODELAR Modelo de Análise do Sistema 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 16 8

9 25/04/ Engenharia de Requisitos: Atividades Principais UdeI ELICITAR Documento de Requisitos do Sistema UdeI ANALISAR Decisões da Análise Métodos, Técnicas e Ferramentas (Júlio Leite, 1994) MODELAR Modelo de Análise do Sistema 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 17 Elicitação ELICITAR = Eliciar + Clarear + Extrair + Descobrir, obter e tornar explícito o máximo de informação para o conhecimento de um objeto em questão Eliciar = Fazer sair, extrair, trazer à tona (a verdade). 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 18 9

10 25/04/ Elicitação Captar os requisitos do software, buscando obter conhecimento a respeito do domínio do problema. Atividades Principais: Identificação de Fontes de Informação Coleta de Fatos Comunicação 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 19 Elicitação: Identificação das Fontes de Informação UdeI: contém toda informação sobre o domínio do problema. Agentes (autores, usuários) Outras fontes de informação: Documentação do macro-sistema Políticas da organização Manuais de equipamentos de hardware e software Memorandos, atas, contratos com fornecedores Livros sobre tema relacionado Outros sistemas da empresa Outros sistemas externos... 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 20 10

11 25/04/ Elicitação: Identificação das Fontes de Informação Importante!!!! Priorizar as Fontes de Informação Heurísticas Atores mais importantes Documentos mais mencionados Rede de comunicações entre os componentes do macro-sistema... 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 21 Elicitação: Coleta de Fatos São realizadas entrevistas com os clientes. São consultados os materiais existentes que descrevem os objetivos e desejos da organização. É pesquisada a existência de sistemas similares para posterior análise. Importante!!! O uso apenas de entrevista não é suficiente para obter todas as informações necessárias. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 22 11

12 25/04/ Elicitação: Coleta de Fatos Outras técnicas... Leitura de documentos Observação Questionários Análise de protocolos Participação ativa dos agentes (autor e usuário) do UdeI Reuniões Reutilização e recuperação (engenharia reversa) do projeto do software 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 23 Elicitação: Comunicação Atividade fundamental para que a fase de elicitação tenha sucesso. Trata-se da comunicação entre clientes e/ou especialistas no domínio do problema e os engenheiros de software. Apresentação Forma como a informação é apresentada. Entendimento Estabelecimento de um contexto comum. Linguagem Nível de Abstração Retro-Alimentação 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 24 12

13 25/04/ Just for fun Um homem rico estava muito mal de saúde. Pediu caneta e papel e escreveu assim: Deixo meus bens à minha irmã não a meu sobrinho jamais será paga a conta do padeiro nada dou aos pobres. Morreu antes de fazer a pontuação. Afinal, a quem ele deixou a fortuna? 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 25 Just for fun O sobrinho fez a seguinte pontuação: Deixo meus bens à minha irmã? Não! A meu sobrinho. Jamais será paga a conta do padeiro. Nada dou aos pobres. A irmã chegou em seguida. Pontuou assim o escrito: Deixo meus bens à minha irmã. Não a meu sobrinho. Jamais será paga a conta do padeiro. Nada dou aos pobres. O padeiro pediu cópia do original e assim fez: Deixo meus bens à minha irmã? Não! A meu sobrinho? Jamais! Será paga a conta do padeiro. Nada dou aos pobres. Aí, chegaram os descamisados da cidade. Um deles fez esta interpretação: Deixo meus bens à minha irmã? Não! A meu sobrinho? Jamais! Será paga a conta do padeiro? Nada! Dou aos pobres. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 26 13

14 25/04/ Atividades Principais da E.R. UdeI ELICITAR Documento de Requisitos do Sistema UdeI ANALISAR Decisões da Análise Métodos, Técnicas e Ferramentas (Júlio Leite, 1994) MODELAR Modelo de Análise do Sistema 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 27 Atividades Principais da E.R. UdeI ELICITAR Documento de Requisitos do Sistema UdeI ANALISAR Decisões da Análise Métodos, Técnicas e Ferramentas (Júlio Leite, 1994) MODELAR Modelo deanálise do Sistema 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 28 14

15 25/04/ Análise Fundamental para o sucesso do processo de desenvolvimento do software. Engenheiro de requisitos Especificar as funções e desempenho do software. Indicar a interface do software com outros sistemas. Estabelecer as restrições de projeto do software. Objetivo Avaliar e revisar o escopo do software (documento de requisitos). Obter uma especificação de requisitos completa e consistente. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 29 Análise As decisões da análise servem para realimentar e melhorar o documento de requisitos do sistema. Atividades Principais: Identificação de Partes Verificação Validação 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 30 15

16 25/04/ Análise: Identificação de Partes Identificar quais partes do documento de requisitos deverão ser analisadas. Projetos de grande porte: Análises parciais Priorizar requisitos mais importantes. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 31 Análise Universo de Informação É Completo? É Correto? MODELO Verificação Entre níveis diferentes de um modelo. Usando métodos formais. Entre modelos de mesmo nível. É Consistente? Validação Entre o modelo e o UdeI. Usando comprovação informal. Usando protótipos. Reusando domínios. Usando pontos de vista. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 32 16

17 25/04/ Atividades Principais da E.R. UdeI ELICITAR Documento de Requisitos do Sistema UdeI ANALISAR Decisões da Análise Métodos, Técnicas e Ferramentas (Júlio Leite, 1994) MODELAR Modelo de Análise do Sistema 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 33 Atividades Principais da E.R. UdeI ELICITAR Documento de Requisitos do Sistema UdeI ANALISAR Decisões da Análise Métodos, Técnicas e Ferramentas (Júlio Leite, 1994) MODELAR Modelo de Análise do Sistema 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 34 17

18 25/04/ Modelagem Objetivo Criar e desenvolver modelos que descrevem estática e dinamicamente o que o sistema deve fazer (e não como deve ser feito) Os modelos expressam os requisitos descritos no documento de requisitos Possibilitam um maior entendimento do domínio da aplicação Servem para determinar se a especificação está completa, consistente e precisa Fornecem uma transição para a fase de projeto 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 35 Modelagem Atividades Principais: Representação Tipos Relações Operações Organização Níveis de abstração Regras de refinamento Regras de consistência interna Armazenamento Classificação Indexação Aspectos gerais 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 36 18

19 25/04/ Modelagem Diversos métodos/técnicas podem ser utilizados: Análise Estruturada Fusion Booch OMT JSD Larman... 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 37 Atividades Principais da E.R. UdeI Parei aqui ELICITAR Documento de Requisitos do Sistema UdeI ANALISAR Decisões da Análise Métodos, Técnicas e Ferramentas (Júlio Leite, 1994) MODELAR Modelo de Análise do Sistema 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 38 19

20 25/04/ Documento de Requisitos Como resultado do processo de elicitação é desenvolvido o documento de requisitos do sistema. Contém a especificação de todos os requisitos funcionais (funções) e de qualidade (atributos) do software, incluindo as capacidades do produto, os recursos disponíveis, os benefícios e os critérios de aceitação Serve como um meio de comunicação entre o engenheiro de software e o usuário, a fim de estabelecer um acordo acerca do software pretendido. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 39 Requisitos Funcionais: (Funções do Sistema) O que o sistema deve fazer? Devem ser identificados e listados em agrupamentos lógicos. Cada função pode ser expressa em termos de um ou mais requisitos que o sistema deve atender. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 40 20

21 25/04/ Requisitos Funcionais: (Funções do Sistema) Evidente ou Visível (E): deve ser executada e o usuário tem conhecimento de ela foi executada. Oculta (O): deve ser executada, mas não é visível para o usuário. Vale para muitos serviços técnicos de infra-estrutura. Ex.: Salvar a informação em um dispositivo permanente de armazenamento. São frequentemente, e incorretamente, esquecidas durante a fase de especificação de requisitos. Enfeite/Decoração/Luxo (D): opcional. Sua adição não afeta significativamente o custo ou outras funções. Será??? 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 41 Requisitos de Qualidade (Atributos do Sistema) São qualidades, características ou dimensões não funcionais do sistema. Ex: facilidade de uso São freqüentemente confundidos com funções. Podem aplicar-se a todas as funções ou ser específicos de uma função particular ou grupo de funções. Em geral, podem ser aplicados para qualquer sistema. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 42 21

22 25/04/ Requisitos de Qualidade (Atributos do Sistema) A Norma ISO/IEC 9126 define seis características de qualidade de software. Funcionalidade Usabilidade Confiabilidade Eficiência Manutenibilidade Portabilidade 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 43 Requisitos de Qualidade A qualidade é dependente do tipo de aplicação Sistema de Missão Crítica EXEMPLO Qualidade Importante Fazer aquilo que eu quero Comportar-se com precisão Ser fácil de usar Rodar bem no hardware Fácil de alterar Software de Sistema em Tempo Real 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 44 22

23 25/04/ Requisitos de Qualidade A qualidade é dependente do tipo de aplicação Software para Folha de Pagamento EXEMPLO Qualidade Importante Fazer aquilo que eu quero Comportar-se com precisão Ser fácil de usar Rodar bem no hardware Fácil de alterar Software Interativo com o Usuário 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 45 Documento de Requisitos O documento de requisitos do sistema deve ser composto por sentenças em linguagem natural, seguindo determinados padrões: 1) Iniciar com O sistema deve... 2) Usar frases curtas Exemplo: O sistema deve ser executado em microcomputadores da linha IBM PC que possuam microprocessador Pentium IV ou superior. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 46 23

24 25/04/ Documento de Requisitos... 3) Os requisitos devem estar organizados logicamente Seqüência de execução: Entrada, Processamento, Saída Inicialmente, todos os requisitos de entrada Em seguida, os requisitos de processamento Por último, os requisitos de saída. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 47 Documento de Requisitos... 4) Cada requisito deve ter um identificador único. Exemplo: Um identificador numérico, para posterior referência. 5) Os requisitos do software devem estar divididos em requisitos funcionais e não funcionais (de qualidade). 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 48 24

25 25/04/ Documento de Requisitos... 7) Deve-se evitar que durante o desenvolvimento do documento de requisitos decisões de projeto sejam tomadas. 6) Os requisitos não devem conter detalhes de implementação. É importante não utilizar termos relacionados à implementação, tais como arquivo e menu. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 49 Documento de Requisitos... 8) A explicação dos termos do domínio da aplicação não deve estar presente nos requisitos, devendo aparecer em um vocabulário do domínio da aplicação. 9) Manter consistência no uso dos termos do domínio da aplicação. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 50 25

26 25/04/ Usuários de um Documento de Requisitos Clientes do Sistema Especificam os requisitos e os lêem para verificar se eles atendem suas necessidades. Especificam as mudanças nos requisitos. Gerentes Utilizam o documento de requisitos para planejar um pedido de proposta para o sistema e para planejar o processo de desenvolvimento do sistema. Engenheiros de Sistema Utilizam os requisitos para compreender que sistema deve ser desenvolvido. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 51 Usuários de um Documento de Requisitos Engenheiros de Teste do Sistema Utilizam os requisitos para desenvolver testes de validação para o sistema. Engenheiros de Manutenção do Sistema Utilizam os requisitos para ajudar a compreender o sistema e as relações entre suas partes. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 52 26

27 25/04/ Padrão IEEE para o Documento de Requisitos 1 Introdução 1.1 Propósito do documento de requisitos Motivações, público-alvo, Escopo do produto Explicitar o que o produto faz (e o que não faz). Descrever a aplicação. 1.3 Definições, acrônimos e abreviações 1.4 Referências Listar todos os documentos referenciados. Especificar a origem dos documentos. 1.5 Visão geral do restante do documento Estrutura/organização. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 53 Padrão IEEE para o Documento de Requisitos 2 Descrição Geral 2.1 Perspectiva do Produto Relacionamento: sistema, usuário, hardware, software, comunicação. 2.2 Funcionalidades do Produto 2.3 Características do Usuário 2.4 Restrições Gerais Limitações de hardware, considerações sobre segurança, Suposições e Dependências Máquina específica, sistema operacional,... 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 54 27

28 25/04/ Padrão IEEE para o Documento de Requisitos 3 Requisitos Específicos Abrangem os requisitos funcionais, não funcionais e de interface. Os requisitos podem documentar interfaces externas, descrever funcionalidade e desempenho do sistema, especificar requisitos lógicos de banco de dados, restrições de projeto, propriedades emergentes do sistema e características de qualidade. 4 Apêndices 5 Índice 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 55 Problemas com Requisitos Aquisição da informação Que informação deve ser coletada e como ela deve ser representada? Quem fornece as informações? Que técnicas e ferramentas estão disponíveis para facilitar a coleta de informações? 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 56 28

29 25/04/ Problemas com Requisitos Tamanho do sistema Como eliminar inconsistências na especificação de grandes sistemas? É possível detectar omissões? Um grande sistema pode ser efetivamente particionado para que se torne administrável? 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 57 Problemas com Requisitos Alterações Como as alterações efetuadas em outros elementos do software são coordenadas com os requisitos do software? Como determinar o impacto de uma alteração em outras partes do software aparentemente não relacionadas? Como corrigir erros na especificação para que não sejam gerados efeitos colaterais? 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 58 29

30 25/04/ Problemas com Requisitos Erros mais comuns... Ignorar um grupo de clientes. Ignorar um único cliente. Omitir um grupo de requisitos. Permitir inconsistências entre grupos de requisitos. Aceitar requisito inadequado. Aceitar requisito incorreto, indefinido, ou impreciso. Aceitar um requisito ambíguo e inconsistente. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 59 Causas dos Problemas Comunicação ineficiente. Técnicas e ferramentas inadequadas. Tendências de eliminar a Especificação dos Requisitos. Falhas ao considerar alternativas antes que o software seja especificado. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 60 30

31 25/04/ Causas dos Problemas Comunicação ineficiente. Técnicas Usar e ferramentas Técnicas deinadequadas. Comunicação. FAST (Facilitaded Application Specification Techniques) Tendências de eliminar a Especificação dos Requisitos. Falhas ao considerar alternativas antes que o software seja especificado. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 61 Causas dos Problemas Comunicação ineficiente. Técnicas e ferramentas inadequadas. Tendências de eliminar a Especificação dos Usar Técnicas de Análise. Requisitos. Análise Estruturada Análise Orientada a Objetos Falhas ao considerar... alternativas antes que o software seja especificado. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 62 31

32 25/04/ Causas dos Problemas Comunicação ineficiente. Atividades de Garantia de Qualidade de Técnicas Software. e ferramentas inadequadas. Tendências de eliminar a Especificação dos Requisitos. Falhas ao considerar alternativas antes que o software seja especificado. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 63 Revisão da Especificação No nível macroscópico... Os revisores tentam garantir que a especificação seja completa, consistente e precisa. Algumas questões a serem consideradas: 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 64 32

33 25/04/ Revisão da Especificação No nível macroscópico... Metas e objetivos do software permanecem consistentes Os com revisores metas e objetivos tentam do garantir sistema? que a Foram descritas especificação as interfaces seja importantes completa, para consistente todos e os elementos precisa. do sistema? As funções Algumas importantes questões permanecem a seremdentro consideradas: do escopo e cada uma foi adequadamente descrita? O comportamento do software é consistente com a informação que ele deve processar e as funções que deve executar? 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 65 Revisão da Especificação No nível macroscópico... Metas As restrições e objetivos de projeto do software são realísticas? permanecem consistentes Os com revisores metas e objetivos tentam do garantir sistema? Qual é o risco tecnológico do desenvolvimento? que a Foram descritas especificação as interfaces seja importantes completa, para consistente todos e Requisitos de software alternativos foram os considerados? elementos precisa. do sistema? As funções Algumas importantes questões permanecem a seremdentro consideradas: do Critérios de Validação foram declarados escopo detalhadamente? e cada uma Eles foi são adequadamente adequados para descrita? descrever O um comportamento sistema bem sucedido? do software é consistente com a informação que ele deve processar e as funções que Existem inconsistências, omissões ou redundâncias? deve executar? 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 66 33

34 25/04/ Revisão da Especificação No nível detalhado... Esteja Cuidado alerta com para pronomes perceber pendentes. conectivos persuasivos e perguntar A preocupação por que eles éestão compresentes o enunciado da Quando um termo for explicitamente definido num Procure lugar, especificação. evite termos utilizar vagos outras e peça definições esclarecimento. para o mesmo Descobrir problemas que possam estar ocultos no Quando termo. forem fornecidas listas que não sejam completas, conteúdo certifique-se da especificação. Quando uma estrutura for de descrita que todos em os palavras, itens sejam entendidos. verifique Diretrizes: se há um gráfico ou uma figura para auxiliar a Esteja compreensão. certo de que os limites declarados não contenham Ao especificar pressuposições cálculos, desenvolva não declaradas. pelo menos dois Cuidado exemplos. com verbos vagos. Há muitas maneiras de interpretá-los. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 67 Revisão da Especificação Logo que a revisão for concluída, a Especificação de Requisitos de Software é assinada pelo cliente e pelo desenvolvedor. A especificação torna-se um contrato de desenvolvimento de software. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 68 34

35 25/04/ Características do Engenheiro de Requisitos Capacidade para compreender conceitos abstratos, reorganizar esses conceitos em divisões lógicas e sintetizar soluções com base em cada divisão. Capacidade de absorver fatos pertinentes a partir de fontes conflitantes ou confusas. Capacidade de se comunicar bem de forma escrita e verbal. Capacidade de ver a floresta ao invés das árvores. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 69 Estudo de Caso: TPV (Terminal de Ponto de Vendas) O TPV é um sistema computadorizado usado para registrar vendas e cuidar de pagamentos. Tipicamente usado em vendas a varejo. Inclui componentes de software e de hardware, tais como um computador e um leitor de código de barras. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 70 35

36 25/04/ Sistema TPV Cliente Terminal de Ponto de Vendas (TPV) Caixa 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 71 Sistema TPV Arquitetura O TPV é um sistema de informação típico e pode ser visualizado em várias camadas: Apresentação (interface): interface gráfica, janelas, Lógica da aplicação (ou do negócio) objetos do domínio do problema: representam os conceitos do domínio do problema que atendem aos requisitos do sistema. Ex: objeto Venda. Lógica da aplicação objetos de serviço: objetos que não fazem parte do domínio do problema mas oferecem serviços de infraestrutura. Ex: interface com o banco de dados (SGBD). Armazenamento: um mecanismo de armazenamento permanente, como uma base dados relacional, orientada a objetos, objeto-relacional, ou um diretório de arquivos. Análise e Projeto OO 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 72 36

37 25/04/ 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 73 Sistema TPV Descrição Geral O propósito deste projeto é criar um terminal de ponto de vendas (TPV) para ser usado em lojas de varejo. Clientes ObjectStore, Inc. multinacional que comercializa objetos. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 74 37

38 25/04/ Sistema TPV Objetivo Aumentar a automatização das compras (checkout) para permitir serviços e processos comerciais mais rápidos, melhores e mais baratos. Tipicamente, isso inclui: Checkout (passagem pelo caixa) mais rápido para o cliente; Análise rápida e precisa do crédito; Controle automático do estoque. 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 75 Sistema TPV: Funções Básicas R1.1 Registrar a venda em andamento (corrente), isto é, os itens comprados. (E) R1.2 Calcular o total da venda corrente, incluindo cálculos de impostos e de cupons de desconto. (E) os R1.3 Capturar a informação de um item adquirido, usando o código, obtido por um leitor de código de barra, ou pela entrada manual do código do produto, usando o código universal de produto (CUP ou UPC). (E) 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 76 38

39 25/04/ Sistema TPV: Funções Básicas R1.4 Reduzir a quantidade em estoque quando a venda for finalizada. (O) R1.5 Registrar as vendas completadas. (O) R1.6 O Caixa deve abrir o caixa (log in) com um Identificador (ID) e uma senha para poder usar o sistema. (E) R1.7 Fornecer um mecanismo de armazenamento permanente. (O) 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 77 Sistema TPV: Funções Básicas R1.8 Fornecer mecanismos de comunicação interprocessos e inter-sistemas. (O) R1.9 Exibir a descrição e o preço do item registrado. (E) 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 78 39

40 25/04/ Sistema TPV: Funções Básicas R2.1 Tratar os pagamentos em dinheiro: capturar a quantia recebida e informar o troco. (E) R2.2 Tratar o pagamento com cartão de crédito: captar a informação do cartão de crédito por um leitor de cartões ou uma entrada manual e autorizar o pagamento com o serviço de autorização de crédito (externo) da loja via conexão por modem. (E) 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 79 Sistema TPV: Funções Básicas R2.3 Registrar os pagamentos por crédito no sistema de contas a receber da loja, uma vez que o serviço de autorização de crédito deve à loja a quantia oferecida como pagamento. (O) R2.4 Tratar os pagamentos com cheque: capturar o CPF por entrada manual e autorizar o pagamento com o serviço de autorização de crédito da loja (externo) via conexão por modem. (E) 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 80 40

41 25/04/ Sistema TPV: Funções Básicas para R1.9 (Exibir a descrição e o preço do item registrado. (E)) Tempo de resposta: Max 5s Obrigatório Metáfora da interface: Saída baseada em formulário Obrigatório Saída colorida Desejável 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 81 Sistema TPV: Funções Básicas para R2.3 (Registrar os pagamentos por crédito no sistema de contas a receber da loja. (O)) Tolerância a falhas: registrar no sistema de contas a receber em 24h, mesmo em caso de falhas elétrica ou de hardware Obrigatório Tempo de resposta: Max 10s Obrigatório 25/04/ Ciência da Computação - Engenharia de Software I - Rogério Eduardo Garcia 82 41

ENGENHARIA DE REQUISITOS. SSC 121 Engenharia de Software I Profa. Dra. Elisa Yumi Nakagawa

ENGENHARIA DE REQUISITOS. SSC 121 Engenharia de Software I Profa. Dra. Elisa Yumi Nakagawa ENGENHARIA DE REQUISITOS SSC 121 Engenharia de Software I Profa. Dra. Elisa Yumi Nakagawa 1 Conteúdo 1. Engenharia de Requisitos 1.1 Elicitação 1.2 Análise 1.3 Modelagem 2. Documento de Requisitos 2 1.

Leia mais

Documento de Requisitos*

Documento de Requisitos* * Rosana T. Vaccare Braga *slides adaptados a partir do material da Profa Ellen Francine Barbosa Processo de Engenharia de Requisitos Documento de requisitos Processo de Engenharia de Requisitos Estudo

Leia mais

Modelos de Sistemas Casos de Uso

Modelos de Sistemas Casos de Uso Modelos de Sistemas Casos de Uso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Casos de Uso Objetivos Principais dos Casos de Uso: Delimitação do contexto de

Leia mais

Uma compreensão completa dos Requisitos do Software é fundamental para obter um software e um processo de desenvolvimento com alta qualidade

Uma compreensão completa dos Requisitos do Software é fundamental para obter um software e um processo de desenvolvimento com alta qualidade Introdução a Requisitos Análise e Levantamento de Requisitos Prof. Esp. MBA Heuber G. F. Lima Uma compreensão completa dos Requisitos do Software é fundamental para obter um software e um processo de desenvolvimento

Leia mais

QUALIDADE DE SOFTWARE

QUALIDADE DE SOFTWARE QUALIDADE DE SOFTWARE SSC-546 Avaliação de Sistemas Computacionais Profa. Rosana Braga (material profas Rosely Sanches e Ellen F. Barbosa) Agenda Visão Geral de Qualidade Qualidade Aplicada ao Software

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

Engenharia de Software I Engenharia de Software I Rogério Eduardo Garcia (rogerio@fct.unesp.br) Bacharelado em Ciência da Computação Aula 02 In a calm sea every man is a pilot. Tópicos Aula 2 Engenharia de Requisitos Definições

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

Engenharia de Software

Engenharia de Software Engenharia de Software Visão Geral Profa.Paulo C. Masiero masiero@icmc.usp.br ICMC/USP Algumas Dúvidas... Como são desenvolvidos os softwares? Estamos sendo bem sucedidos nos softwares que construímos?

Leia mais

MODELAGEM DE SISTEMA Apresentação

MODELAGEM DE SISTEMA Apresentação MODELAGEM DE SISTEMA Apresentação Prof Daves Martins Msc Computação de Alto Desempenho Email: daves.martins@ifsudestemg.edu.br Análise de Requisitos Processo de descobrir, analisar, documentar e verificar

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

Engenharia de Software II

Engenharia de Software II Faculdade de Ciências e Tecnologia Departamento de Matemática e Computação Bacharelado em Ciência da Computação Engenharia de Software II Aula 04 (rogerio@fct.unesp.br) 2 Conteúdo: Parte 1: Gerenciamento

Leia mais

SOFTWARE REQUIREMENTS

SOFTWARE REQUIREMENTS SOFTWARE REQUIREMENTS Ian Sommerville, 8º edição Capítulo 6 Aula de Luiz Eduardo Guarino de Vasconcelos O que é um requisito? Pode variar de uma declaração abstrata de alto nível de um serviço ou de uma

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

Manutenção de Software. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2015

Manutenção de Software. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2015 Manutenção de Software Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2015 Processos de Ciclo de Vida de Software Processos Fundamentais Aquisição Processos de Apoio Documentação

Leia mais

Concepção e Elaboração

Concepção e Elaboração UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Análise e Projeto Orientado a Objetos Concepção e Elaboração Estudo

Leia mais

SSC-546 Avaliação de Sistemas Computacionais

SSC-546 Avaliação de Sistemas Computacionais QUALIDADE DE PACOTE DE SOFTWARE SSC-546 Avaliação de Sistemas Computacionais Profa. Rosana Braga (material profas Rosely Sanches e Ellen F. Barbosa) Qualidade de Produto de Software Modelo de Qualidade

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

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

Visão Geral da Norma ISO/IEC 12207

Visão Geral da Norma ISO/IEC 12207 UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Visão Geral da Norma ISO/IEC 12207 Engenharia de Software 2o. Semestre

Leia mais

Normas ISO:

Normas ISO: Universidade Católica de Pelotas Tecnólogo em Análise e Desenvolvimento de Sistemas Disciplina de Qualidade de Software Normas ISO: 12207 15504 Prof. Luthiano Venecian 1 ISO 12207 Conceito Processos Fundamentais

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

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

Documentação de Software. Simone Vasconcelos

Documentação de Software. Simone Vasconcelos Documentação de Software Simone Vasconcelos 1 Contexto Qualquer software deve ter uma quantidade razoável de documentação.! Documentos de trabalho.! Manuais de usuário produzidos profissionalmente. Em

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

Qualidade de Software: Visão Geral. SSC 121-Engenharia de Software 1 Profa. Dra. Elisa Yumi Nakagawa

Qualidade de Software: Visão Geral. SSC 121-Engenharia de Software 1 Profa. Dra. Elisa Yumi Nakagawa Qualidade de : Visão Geral SSC 121-Engenharia de 1 Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012 Qualidade de Qualidade é um termo que pode ter diferentes interpretações Existem muitas definições

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

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

ISO/IEC Processo de ciclo de vida

ISO/IEC Processo de ciclo de vida ISO/IEC 12207 Processo de ciclo de vida O que é...? ISO/IEC 12207 (introdução) - O que é ISO/IEC 12207? - Qual a finalidade da ISO/IEC 12207? Diferença entre ISO/IEC 12207 e CMMI 2 Emendas ISO/IEC 12207

Leia mais

ISO/IEC Roteiro IEC ISO. Histórico ISO/IEC ISO

ISO/IEC Roteiro IEC ISO. Histórico ISO/IEC ISO Roteiro Processos do Ciclo de Vida de Software Diego Martins dmvb@cin.ufpe.br Histórico Objetivos Organização Processos Fundamentais Processos Organizacionais de Processo IEC ISO International Electrotechnical

Leia mais

Engenharia de Requisitos

Engenharia de Requisitos Engenharia de Requisitos Introdução a Engenharia de Requisitos Professor: Ricardo Argenton Ramos Engenharia de Software I 2017.2 Slide 1 Objetivos Introduzir a noção de requisitos do sistema e o processo

Leia mais

Engenharia de Requisitos

Engenharia de Requisitos Engenharia de Requisitos Introdução a Engenharia de Requisitos Professor: Ricardo Argenton Ramos Engenharia de Software I 2013.2 Slide 1 Objetivos Introduzir a noção de requisitos do sistema e o processo

Leia mais

Projeto de Banco de Dados. Componentes de um Sistema de Informação. Arquitetura de SI. Sistema de Informação (SI) SI nas Organizações

Projeto de Banco de Dados. Componentes de um Sistema de Informação. Arquitetura de SI. Sistema de Informação (SI) SI nas Organizações Sistema (SI) Coleção de atividades de Banco de Dados que regulam o compartilhamento, SI nas Organizações a distribuição de informações Fernando Fonseca e o armazenamento de dados relevantes ao gerenciamento

Leia mais

Padrão para Especificação de Requisitos de Produto de Multimídia

Padrão para Especificação de Requisitos de Produto de Multimídia Padrão para Especificação de Requisitos de Produto de Multimídia 1 Introdução 1.1 Escopo do documento Sugere-se aqui uma estrutura para a Especificação de Requisitos de Produto de Multimídia (ERPM). Esta

Leia mais

APOSTILAS: NORMAS; ABNT NBR ISO; MPS BR

APOSTILAS: NORMAS; ABNT NBR ISO; MPS BR APOSTILAS: NORMAS; ABNT NBR ISO; MPS BR Fonte: http://www.softex.br/mpsbr/_home/default.asp Apostilas disponíveis no site 1 NORMAS: NBR ISO NBR ISO/IEC CMM SPICE Continuação... 2 NORMAS VISÃO GERAL NBR

Leia mais

Gerência e Planejamento de Projeto. Engenharia de Software Profa. Elisa Yumi Nakagawa 1 o semestre de 2016

Gerência e Planejamento de Projeto. Engenharia de Software Profa. Elisa Yumi Nakagawa 1 o semestre de 2016 Gerência e Planejamento de Projeto Engenharia de Software Profa. Elisa Yumi Nakagawa 1 o semestre de 2016 Conteúdo: Parte 1: Gerenciamento & Qualidade Plano de Projeto Aspectos Gerais Parte 2: Plano de

Leia mais

Gerência e Planejamento de Projeto. Engenharia de Software I Profa. Elisa Yumi Nakagawa 1 o semestre de 2015

Gerência e Planejamento de Projeto. Engenharia de Software I Profa. Elisa Yumi Nakagawa 1 o semestre de 2015 Gerência e Planejamento de Projeto Engenharia de Software I Profa. Elisa Yumi Nakagawa 1 o semestre de 2015 Conteúdo: Parte 1: Gerenciamento & Qualidade Plano de Projeto - aspectos gerais Parte 2: Plano

Leia mais

Requisitos de Software

Requisitos de Software Requisitos de Software Engenharia de requisitos 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

CONTPATRI Plano de Garantia de Qualidade. Versão 1.1

CONTPATRI Plano de Garantia de Qualidade. Versão 1.1 CONTPATRI Plano de Garantia de Qualidade Versão 1.1 Histórico da Revisão Data Versão Descrição Autor 04/05/2013 1.0 Verificação do documento Emerson José Porfírio 21/04/2013 1.0 Elaboração do documento

Leia mais

Qualidade de Software: Visão Geral. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa

Qualidade de Software: Visão Geral. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa Qualidade de : Visão Geral Engenharia de Profa. Dra. Elisa Yumi Nakagawa 1 o semestre de 2017 Qualidade de Qualidade é um termo que pode ter diferentes interpretações. Existem muitas definições de qualidade

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 A MODELAGEM DE DADOS

1. INTRODUÇÃO A MODELAGEM DE DADOS 1. INTRODUÇÃO A MODELAGEM DE DADOS Para se construir uma casa ou um prédio de qualidade, é essencial fazer um planejamento detalhado, com a finalidade de pensar sobre as formas de construção, fazer estimativas

Leia mais

Engenharia de Software Aula 2.3 Processos da Engenharia de Requisitos. Prof. Bruno Moreno

Engenharia de Software Aula 2.3 Processos da Engenharia de Requisitos. Prof. Bruno Moreno Engenharia de Software Aula 2.3 Processos da Engenharia de Requisitos Prof. Bruno Moreno bruno.moreno@ifrn.edu.br Engenharia de Requisitos O objetivo do processo de Engenharia de Requisitos é criar e manter

Leia mais

Agenda TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS. Aula 3 21/08/2012

Agenda TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS. Aula 3 21/08/2012 TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS Aula 3 Agenda O processo de desenvolvimento de software Processo Unificado e as fases do Processo Unificado Requisitos

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

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 OBJETIVOS Compreender o processo de gerenciamento de qualidade e as principais atividades do processo de garantia, planejamento e controle

Leia mais

Manutenção de Software. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2016

Manutenção de Software. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2016 Manutenção de Software Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2016 Processos de Ciclo de Vida de Software Processos Fundamentais Aquisição Processos de Apoio Documentação

Leia mais

Qualidade de Pacote de Software. Avaliação do Sistema DreamWeaver. Material preparado por Débora M. B. Paiva

Qualidade de Pacote de Software. Avaliação do Sistema DreamWeaver. Material preparado por Débora M. B. Paiva Qualidade de Pacote de Software Avaliação do Sistema DreamWeaver Material preparado por Débora M. B. Paiva Visão Geral Introdução Definição dos Requisitos de Qualidade Preparação da Avaliação de Qualidade

Leia mais

Engenharia de Software

Engenharia de Software Introdução Engenharia de Software O principal objetivo da Engenharia de Software (ES) é ajudar a produzir software de qualidade; QUALIDADE DE SOFTWARE Empresas que desenvolvem software de qualidade são

Leia mais

Sistemas e software Proposta de especificação de software O fluxo de Requisitos Padrão para Especificação

Sistemas e software Proposta de especificação de software O fluxo de Requisitos Padrão para Especificação 2EQUISITOS ) 2EQUISITOS ) Sistemas e software Proposta de especificação de software O fluxo de Requisitos Padrão para Especificação 1999 Wilson de Pádua Paula Filho 1 3ISTEMAS E Conceito de sistema de

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 I

Engenharia de Software I FCT-UNESP Engenharia de Software I Rogério Eduardo Garcia (rogerio@fct.unesp.br) Bacharelado em Ciência da Computação Aula 04 In a calm sea every man is a pilot. Engenharia de Software I Aula 4 Revisão

Leia mais

Curso de Sistemas de Informação. Karla Donato Fook DESU / DAI

Curso de Sistemas de Informação. Karla Donato Fook DESU / DAI Curso de Sistemas de Informação Karla Donato Fook karladf@ifma.edu.br DESU / DAI 2017 1 Especificação Desenvolvimento Validação Evolução 4 2 A funcionalidade do software e as restrições sobre sua operação

Leia mais

AULA 02 Qualidade em TI

AULA 02 Qualidade em TI Bacharelado em Sistema de Informação Qualidade em TI Prof. Aderson Castro, Me. AULA 02 Qualidade em TI Prof. Adm. Aderson Castro, Me. Contatos: adersoneto@yahoo.com.br 1 Qualidade de Processo A Série ISO

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

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

Análise de Requisitos

Análise de Requisitos Análise de Requisitos Prof.ª: Érika A. Barrado Analisar x Projetar Análise: significa investigar, descobrir ou desvendar algo; Consiste em encontrar o conjunto de requisitos para um dado software; Definida

Leia mais

Manutenção de Software

Manutenção de Software Manutenção de Software Engenharia de Software Rosana Braga (material produzidos por docentes do Labes-ICMC/USP) Manutenção do software O propósito do processo manutenção do sistema e software é modificar

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

Marcelo Henrique dos Santos

Marcelo Henrique dos Santos Mestrado em Educação (em andamento) MBA em Marketing e Vendas (em andamento) Especialista em games Bacharel em Sistema de Informação Email: marcelosantos@outlook.com AULA 01 Análise de Requisitos Conceitos

Leia mais

Análise de Sistemas AULA 05 BCC Noturno - EMA908915A

Análise de Sistemas AULA 05 BCC Noturno - EMA908915A Análise de Sistemas AULA 05 BCC Noturno - EMA908915A Prof. Rafael Oliveira rpaes@ic.unesp.br Universidade Estadual Paulista Júlio de Mesquita Filho UNESP Rio Claro 2014 (Sem 2) Elicitação de requisitos

Leia mais

Áreas de Conhecimento, Técnicas de Análise de Negócio e Conceitos-Chave

Áreas de Conhecimento, Técnicas de Análise de Negócio e Conceitos-Chave Primeiro Módulo: Parte 3 Áreas de Conhecimento, Técnicas de Análise de Negócio e Conceitos-Chave AN V 3.0 [60] Rildo F Santos (@rildosan) rildo.santos@etecnologia.com.br www.etecnologia.com.br http://etecnologia.ning.com

Leia mais

Engenheiros de software (algumas vezes conhecidos no mundo da TI como engenheiros de sistemas ou analistas ) e outros interessados no projeto

Engenheiros de software (algumas vezes conhecidos no mundo da TI como engenheiros de sistemas ou analistas ) e outros interessados no projeto ... definem tarefas que levam a um entendimento de qual ser ao impacto do software sobre o negócio, o que o cliente quer e como os usuários finais irão interagir com o software. (Pressman, 2011) Prof.

Leia mais

Introdução INTRODUÇÃO AO SWEBOK. Origens do corpo de conhecimentos da Engenharia de Software: Introdução a Computação e Engenharia de Software

Introdução INTRODUÇÃO AO SWEBOK. Origens do corpo de conhecimentos da Engenharia de Software: Introdução a Computação e Engenharia de Software INTRODUÇÃO AO SWEBOK Introdução a Computação e Engenharia de Software Profa. Cynthia Pinheiro Introdução Origens do corpo de conhecimentos da Engenharia de Software: Engenharia da Computação Ciência da

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

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

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

ENGENHARIA DE REQUISITOS- 01. Slides do Prof. Tiago Silva da Silva ICT/UNIFESP

ENGENHARIA DE REQUISITOS- 01. Slides do Prof. Tiago Silva da Silva ICT/UNIFESP ENGENHARIA DE REQUISITOS- 01 Slides do Prof. Tiago Silva da Silva ICT/UNIFESP ObjeDvo Apresentar os principais conceitos relacionados à Engenharia de Requisitos Destacar a importância da a9vidade dentro

Leia mais

Escopo: PROCESSOS FUNDAMENTAIS

Escopo: PROCESSOS FUNDAMENTAIS Escopo: PROCESSOS FUNDAMENTAIS Etapa:Desenvolvimento de software Disciplina: Auditoria & Qualidade em Sistemas de Informação Professor: Lucas Topofalo Integrantes: Joel Soares de Jesus Luiz R. Bandeira

Leia mais

Engenharia de Software II

Engenharia de Software II Engenharia de Software II Aula 6 http://www.ic.uff.br/~bianca/engsoft2/ Aula 6-10/05/2006 1 Ementa Processos de desenvolvimento de software Estratégias e técnicas de teste de software (Caps. 13 e 14 do

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

Qualidade de Software QUALIDADE DE SOFTWARE PRODUTO

Qualidade de Software QUALIDADE DE SOFTWARE PRODUTO Qualidade de Software QUALIDADE DE SOFTWARE PRODUTO O que é Qualidade de Software Produto? Boa fabricação. Deve durar muito. Bom desempenho. Utilizável tanto em UNIX quanto em DOS. Adaptável às minhas

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

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

Engenharia de Software.

Engenharia de Software. Engenharia de Software Prof. Raquel Silveira O que é (Rational Unified Process)? É um modelo de processo moderno derivado do trabalho sobre a UML e do Processo Unificado de Desenvolvimento de Software

Leia mais

Documentação de Software

Documentação de Software ISO/IEC 12207: Documentação de Software Registra a evolução do software para que sejam criadas as bases necessárias para uma melhor utilização e manutenção do software Estima-se que de 20% a 30% de todo

Leia mais

Engenharia de Software

Engenharia de Software Prof. M.Sc. Ronaldo C. de Oliveira ronaldooliveira@facom.ufu.br FACOM - 2011 Requisitos do Sistema Introdução O que são requisitos de um software? Serviços (funcionalidades) de um software e restrições

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

Teste de Software. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2015

Teste de Software. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2015 Teste de Software Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2015 Tópicos da Aula Ø Teste de Software Ø Terminologia e Conceitos Básicos Ø Técnicas e Critérios de Teste Ø Técnicas

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

Análise e Projeto de Sistemas de Informação (APSI)

Análise e Projeto de Sistemas de Informação (APSI) COTIL Análise e Projeto de Sistemas de Informação (APSI) Profa. Simone Berbert Rodrigues Dapólito CAP. 4 Requisitos Introdução Para que um novo sistema de informação atenda às necessidades da organização,

Leia mais

Requisitos de Software

Requisitos de Software Requisitos de Software Seiji Isotani, Rafaela V. Rocha sisotani@icmc.usp.br rafaela.vilela@gmail.com PAE: Armando M. Toda armando.toda@gmail.com O que são Requisitos de Software? 2 Requisitos de Software

Leia mais

Copyright Proibida Reprodução. Prof. Éder Clementino dos Santos

Copyright Proibida Reprodução. Prof. Éder Clementino dos Santos ISO 9001:2008 GESTÃO DE QUALIDADE O que é ISO? ISO = palavra grega que significa Igualdade O Comitê - ISO A Organização Internacional de Normalização (ISO) tem sede em Genebra na Suíça, com o propósito

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

Projeto de Sistemas; Projeto Orientado a Objetos; Estruturação em Camadas; Projeto Orientado a Objetos em Camadas; Um Exemplo Ilustrativo.

Projeto de Sistemas; Projeto Orientado a Objetos; Estruturação em Camadas; Projeto Orientado a Objetos em Camadas; Um Exemplo Ilustrativo. ESPECIALIZAÇÃO EM GESTÃO DE TECNOLOGIAS DA INFORMAÇÃO Projeto Orientado a Objetos AULA 04 Projeto de Sistemas; Projeto Orientado a Objetos; Estruturação em Camadas; Projeto Orientado a Objetos em Camadas;

Leia mais

Requisitos: a ponte entre a organização. e o software. Julio Cesar Sampaio do Prado Leite. jcspl

Requisitos: a ponte entre a organização. e o software. Julio Cesar Sampaio do Prado Leite. jcspl Requisitos: a ponte entre a organização e o software Julio Cesar Sampaio do Prado Leite 1 Sumário Introdução Definições Processo de Definição de Requisitos Novas Tecnologias Conclusão 2 Introdução 3 Breve

Leia mais

ENGENHARIA DE SOFTWARE

ENGENHARIA DE SOFTWARE ENGENHARIA DE SOFTWARE Qualidade de Software Qualidade do produto e do processo Padrões de software Revisões Medições e métricas de software Kele Teixeira Belloze kelebelloze@gmail.com CONCEITO DE QUALIDADE

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 OBJETIVOS O que é Qualidade Entender o ciclo PDCA Apresentar técnicas para garantir a qualidade de software Apresentar ferramentas para

Leia mais

ENGENHARIA DE REQUISITOS

ENGENHARIA DE REQUISITOS ENGENHARIA DE REQUISITOS Introdução a Computação e Engenharia de Software Profa. Cynthia Pinheiro Contextualização Estudo realizado pelo Standish Group em 1995, envolvendo 350 companhias e 8.000 projetos

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

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 e UML Básico. Janaína Horácio

Requisitos de Software e UML Básico. Janaína Horácio Requisitos de Software e UML Básico Janaína Horácio janaina@les.inf.puc-rio.br Agenda Requisitos O que é? Objetivos? Atividades?... UML O que é? Modelos... Casos de Uso O que é? Componentes 2 Requisitos

Leia mais

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

ICET CURSO: Ciência da Computação e Sistemas de Informação (Engenharia de Software) Campus: Data: / / Nome:

ICET CURSO: Ciência da Computação e Sistemas de Informação (Engenharia de Software) Campus: Data: / / Nome: ICET CURSO: Ciência da Computação e Sistemas de Informação (Engenharia de Software) Estudos Disciplinares Campus: Data: / / Nome: RA: Turma: Questão 1: Assinale a função correta de engenharia de requisitos:

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

Requisitos de Sistemas

Requisitos de Sistemas Requisitos de Sistemas Unidade I - Engenharia de Requisitos Definição de Requisitos (Continuação) Processos de Engenharia de Requisitos (Cont.) - Análise - Registro - Validação - Gerência 1 Processo de

Leia mais