Untitled Quiz
16 Questions
1 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

Qual é o objetivo principal da elicitação de requisitos?

  • Criar um código-fonte inicial para o sistema.
  • Estabelecer um padrão de interface gráfica para o sistema.
  • Documentar todos os requisitos técnicos do sistema.
  • Assegurar que os usuários e desenvolvedores tenham a mesma visão do problema. (correct)
  • O que define um requisito em um sistema?

  • Uma condição que o sistema deve satisfazer segundo documentos formais. (correct)
  • Um recurso opcional que pode ser implementado.
  • Uma norma de qualidade que deve ser atendida pelo software.
  • Um limite de tempo para a entrega do projeto.
  • Qual atividade faz parte do processo de engenharia de requisitos?

  • Análise e documentação dos requisitos. (correct)
  • Codificação do sistema.
  • Definição da arquitetura de software.
  • Testes e validação do código.
  • Qual é a primeira fase na subdivisão da especificação e análise de requisitos?

    <p>Análise de domínio.</p> Signup and view all the answers

    O que está envolvido na fase de projeto (design) do sistema?

    <p>Definir como o sistema funcionará conforme os requisitos.</p> Signup and view all the answers

    Na fase de implementação, o que é primordial em um processo orientado a objetos?

    <p>A criação do código-fonte correspondente às classes do sistema.</p> Signup and view all the answers

    Qual dos seguintes aspectos não é considerado durante a fase de projeto (design)?

    <p>Criação da documentação do usuário.</p> Signup and view all the answers

    Qual é um resultado chave da análise de aplicação?

    <p>Modelos que representam a interação dos componentes do sistema.</p> Signup and view all the answers

    Qual é uma das principais motivações para utilizar processos no desenvolvimento de software?

    <p>Padronização, estabilidade e controle</p> Signup and view all the answers

    Qual destas definições melhor descreve um processo de software?

    <p>Um conjunto de políticas, estruturas, tecnologias e procedimentos</p> Signup and view all the answers

    Os processos de software garantem automaticamente que o software desenvolvido terá alta qualidade?

    <p>Não, apenas contribuem para a melhoria.</p> Signup and view all the answers

    Qual é uma característica de um processo de software ideal?

    <p>Deve ser fluido e adaptável às necessidades específicas.</p> Signup and view all the answers

    Qual é um dos principais desafios no desenvolvimento de software?

    <p>Gerenciamento de riscos</p> Signup and view all the answers

    Um processo de software pode ser definido como:

    <p>Um conjunto de atividades necessárias para o desenvolvimento de software.</p> Signup and view all the answers

    O que é um aspecto importante da especificação e análise no processo de software?

    <p>Transformação de requisitos em ações práticas.</p> Signup and view all the answers

    Como a aprendizagem organizacional pode impactar os processos de software?

    <p>Contribuindo para a melhoria contínua dos processos.</p> Signup and view all the answers

    Study Notes

    Introdução: Processos de Software

    • A disciplina abrange os processos de desenvolvimento de software.
    • O objetivo é apresentar conceitos básicos e terminologia.

    Objetivos

    • Apresentar conceitos fundamentais e terminologia utilizada em processos de software.

    Processos vs. Requisitos

    • É essencial entender os requisitos do projeto de software antes de iniciar o desenvolvimento.
    • A comunicação clara sobre o que o software precisa fazer é crucial.
    • O cliente precisa definir os requisitos do software.

    Motivação

    • Por que utilizar processos em Engenharia de Software?
    • Processo é sinônimo de Engenharia de Software?
    • Não, é um elemento importante, mas não é sinônimo.
    • Existe um processo de software ideal?
    • Não, cada software tem necessidades e características específicas.
    • Utilizar processos garante alta qualidade em software?
    • Não, depende do nível de maturidade do processo.

    Processo de Software

    • Por que é tão "difícil" usar processos no desenvolvimento de software?
    • Quais são os problemas no desenvolvimento de software?

    Principais Problemas no Desenvolvimento de Software

    • Especificação de requisitos
    • Definição e cumprimento de prazos
    • Custo do projeto
    • Produtividade
    • Qualidade e testes de software
    • Trabalho em equipe
    • Capacitação de pessoal
    • Planejamento
    • Motivação
    • Manutenibilidade
    • Gerência de projeto

    Categorias de Problemas

    • Pessoas
    • Processo
    • Negócio

    Principais Desafios do Desenvolvimento de Software

    • Novos ambientes de desenvolvimento
    • Contratos externos e ambientes distribuídos
    • Gerenciamento de riscos
    • Capacitação de pessoal
    • Planejamento
    • Padrões de desenvolvimento de software
    • Certificação
    • Aprendizagem organizacional
    • Produtividade e motivação

    O que é Processo de Software?

    • Um conjunto de atividades necessárias e relacionadas para o desenvolvimento de software.
    • Uma metodologia para a realização de atividades, ações e tarefas em desenvolvimento de software.
    • Um conjunto de políticas, estruturas, tecnologias, procedimentos e artefatos necessários para conceber, implementar e manter um produto de software.
    • Um conjunto de atividades de engenharia para transformar requisitos em software.

    Processo de Software: Definições

    • Uma sequência de atividades necessária e relacionada ao desenvolvimento do software (Sommerville).
    • Uma metodologia para o desenvolvimento de software com qualidade (Pressman).
    • Políticas, estruturas organizacionais e tecnologias para conceber, implementar e manter um produto de software (Fuggeta 2000).
    • Atividades necessárias para transformar os requisitos do usuário em um sistema de software (Humphrey, 1989).

    Processo de Software (Fluxograma)

    • Problema → Elicitação (especificação e análise) → Projeto → Implementação → Validação → Solução

    Elicitação de Requisitos

    • Compreensão do problema
    • Compreensão do domínio
    • Visão compartilhadas de usuários e desenvolvedores
    • Especificação de requisitos
    • Engenharia de Requisitos

    Especificação e Análise

    • Estudo detalhado de requisitos e criação de modelos.
    • Quebrar o sistema em componentes para entender como eles interagem.
    • Pode ser dividido em análise de domínio e análise de aplicação.

    Projeto (Design)

    • Como o sistema funcionará de acordo com os recursos tecnológicos existentes.
    • Descrição da estrutura do software.
    • Considerar os aspectos físicos e dependentes de implementação.
    • Exemplos: arquitetura, interface gráfica, linguagem de programação, gerenciamento de banco de dados.

    Implementação

    • Codificação do sistema usando a linguagem de programação escolhida.
    • Reuso de componentes, bibliotecas e padrões de software.
    • As atividades de projeto e implementação são fortemente relacionadas.

    "Validação" / Verificação

    • Verificar se o software atende à especificação.
    • Verificar se o software está sendo construído corretamente.
    • Validar se o software atende às expectativas do cliente.
    • Exemplos: testes de sistema.

    Evolução

    • Os requisitos mudam com as mudanças do negócio, o software também deve evoluir.
    • Novas necessidades surgem durante o uso do software.
    • Erros devem ser corrigidos.
    • Novas tecnologias podem ser adicionadas ao sistema.
    • O desempenho do sistema pode exigir melhorias.

    Processo de Software: Atividades, Artefatos, Ferramentas, Papéis

    • O processo de software é visualizado como um fluxo.
    • O processo possui papéis, atividades, artefatos e ferramentas.
    • Papéis: descrições das pessoas e suas responsabilidades. Exemplos incluem gerente de projeto, analista, projetista, desenvolvedor.
    • Atividades: tarefas que produzem artefatos.
    • Artefatos: os resultados das atividades. Exemplos incluem diagramas, programas, documentos de texto, etc.
    • Ferramentas: ajudam na execução das atividades.

    Processo de Software: Terminologia (Artefatos)

    • Um artefato pode ser composto por outros artefatos.
    • Artefato é o resultado de uma atividade.
    • Exemplos: diagramas, programas, documentos de texto, desenhos, contratos, projetos, planos, módulos implementados, testados e aprovados.

    Processo de Software: Terminologia (Tarefa)

    • É uma ação executada por uma pessoa para a realização ou monitoramento do projeto.
    • Não representa progresso no desenvolvimento, mas consome recursos (tempo, esforço).

    Processo de Software: Terminologia (Atividade)

    • Um conjunto de tarefas resultando em artefatos.
    • Indica progresso no desenvolvimento.
    • Pode ser simples ou complexo, envolvendo diferentes técnicas de controle de qualidade.

    Processo de Software: Terminologia(Ferramentas)

    • Auxiliam a execução das atividades e tarefas dos processos.
    • Automatízam tarefas.
    • Minimizam erros.
    • Agilizam processos.

    Processo de Software: Terminologia (Papéis)

    • Descrição de como as pessoas se comportam no processo, suas responsabilidades e habilidades necessárias.
    • Exemplos: Gerente de projeto, analista, projetista, desenvolvedor, avaliador de qualidade.

    Exemplo de Papéis

    • Gerente de Projeto: coordena as atividades do projeto.
    • Analista: compreende o domínio do negócio.
    • Projetista: avalia as soluções, detalha a solução.

    Exemplo de Arquitetos

    • Definir arquitetura do sistema.
    • Identificar subsistemas e interfaces.

    Exemplo de Desenvolvedores

    • Implementação/codificação do sistema.

    Exemplo de Papéis(cont.)

    • Avaliadores de Qualidade: garantem a adequação do processo e do produto a padrões de qualidade

    Processo de Software: Terminologia (Pré e Pós-Condições)

    • Declarações verdadeiras antes e depois de uma atividade.
    • Exemplo: pré-condição: requisitos aprovados pelo cliente; pós-condição: modelos UML revisados.

    Processo de Software (Produtos)

    • Resultado de uma atividade do processo.
    • Exemplos: modelo da arquitetura.

    Exemplo de Tarefas Relacionadas a um Papel

    • Um exemplo de um papel no desenvolvimento de software e as tarefas envolvidas.

    Exemplo de uma Atividade

    • Realizar estimativas para um projeto: detalhar as atividades, estimar recursos, cronograma e orçamento.

    Sem o uso de processos...

    • Procedimentos não documentados e inconsistentes.
    • Repetição de erros.
    • Dificuldade em prever prazos e orçamentos.
    • Alto índice de defeitos e retrabalho.
    • Dificuldade em implementar boas práticas e lições aprendidas.
    • Dificuldade na prevenção de defeitos.

    Bibliografia

    • Lista de referencias utilizadas no material apresentado.

    Studying That Suits You

    Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

    Quiz Team

    Related Documents

    More Like This

    Untitled Quiz
    37 questions

    Untitled Quiz

    WellReceivedSquirrel7948 avatar
    WellReceivedSquirrel7948
    Untitled Quiz
    18 questions

    Untitled Quiz

    RighteousIguana avatar
    RighteousIguana
    Untitled Quiz
    50 questions

    Untitled Quiz

    JoyousSulfur avatar
    JoyousSulfur
    Untitled Quiz
    48 questions

    Untitled Quiz

    StraightforwardStatueOfLiberty avatar
    StraightforwardStatueOfLiberty
    Use Quizgecko on...
    Browser
    Browser