Baixe o app para aproveitar ainda mais
Prévia do material em texto
1. Conceitue software, tendo em vista a ótica da Engenharia de Software. Segundo Pressman, um software é composto por instruções de computador, estruturas de dados e documentos. As instruções conduzem aos resultados esperados com base nos requisitos, as estruturas de dados permitem o armazenamento e manipulação de informações e os documentos contém a descrição das funcionalidades presentes no software e a forma com a qual ele funciona. Segundo Sommerville ”softwares são programas de computador e documentação associada. Produtos de software podem ser desenvolvidos para um cliente específico ou para o mercado em geral.” 2. Conceitue engenharia de software. É uma área da engenharia que se preocupa com todos os aspectos práticos de produção de um software: Especificação, desenvolvimento, validação e evolução. 3. Conceitue processo de software. Apresente as atividades fundamentais dos processos de software apresentados por SOMMERVILLE (2011) Segundo Sommerville processo de software é uma sequência de tarefas que leva ao desenvolvimento de um produto de software. Há quatro atividades fundamentais que são comuns a todos os processos de software: • “Especificação de software, em que clientes e engenheiros definem o software a ser produzido e as restrições de sua operação.” • “Desenvolvimento de software, em que o software é projetado e programado.” • “Validação de software, em que o software é verificado para garantir que é o que o cliente quer.” • “Evolução de software, em que o software é modificado para refletir a mudança de requisitos do cliente e do mercado.” 4. Apresente os principais problemas relacionados ao sucesso de projetos de software. 5. Discuta a relação entre requisitos e custos de desenvolvimento de software. Em qualquer modelo de software de processo é essencial a acomodação de mudanças no software em desenvolvimento. Mudança representa aumento de custo no desenvolvimento pois em geral representa mais trabalho ou até mesmo retrabalho. Quanto mais novos requisitos são identificados maior o custo de desenvolvimento de software. Porém, com um bom levantamento de requisitos podemos ter um software mais robusto e documentado facilitando a manutenção e atualização do produto. 6. Baseado nas diversas definições de requisitos apresentadas,formule um conceito de requisito de acordo com seu entendimento. Houve um tempo em que o conceito de requisito estava atrelado às funções que um software precisava desempenhar, hoje porém, essa definição está antiquada e os requisitos representam, além de funções objetivos, propriedades, restrições que o sistema precisa ter para desempenhar contratos, padrões ou especificações de acordo com o usuário. De forma mais geral um requisito é uma condição necessária para satisfazer um objetivo. 7. Discuta as diferenças entre requisitos de usuário e requisitos de sistema. Requisitos de usuários são declarações em uma linguagem natural com diagramas de quais serviços e restrições o sistema deve fornecer aos usuário. Já os requisitos de sistemas são descrições mais detalhadas das funções, serviços e restrições operacionais do software. A documentação dos requisitos de sistema deve definir exatamente o que deve ser implementado no software. 8. Como você explicaria para seu usuário o que são requisitos funcionais e não funcionais? Em uma linguagem simples e objetiva eu diria que os requisitos funcionais são as necessidades e problemas que um software deve atender e resolver através de funções ou serviços, por exemplo, calcular o status de um pedido ou elaborar um relatório. Durante a listagem dos requisitos funcionais nos preocupamos em quais funções o nosso sistema terá, diferentemente dos funcionais, os requisitos não funcionais se preocupam em como iremos entregar as funções na prática, por exemplo, qual o banco de dados que usaremos ou qual o sistema operacional, etc. 9. Apresente e discuta as principais fontes de requisitos A análise de requisitos envolve dferentes tipos de pessoas. O stakeholder do sistema é a pessoa que tem alguma influência direta ou indireta sobre os requisitos do sistema. Eles geralmente incluem os usuários finais que vão utilizar o software e todas as pessoas que serão afetadas pelo sistema em questão. Outros stakeholders podem ser os engenheiros que desenvolvem e mantém outros sistemas relacionados bem como gerentes de negócios, especialistas de domínio e representantes sindicais. 10. Apresente a importância de cada atividade do processo de elicitação e análise de requisitos. • Descoberta de requisitos: é a atividade de interação com os stakeholders que visa descobrir os requisitos e para isso são utilizadas diversas técnicas. Os requisitos de domínio dos stakeholders e da documentação também são descobertos durante essa atividade. • Classificação e organização de requisitos: Pega uma coleção de requisitos não estruturados e os organiza em grupos coerentes para facilitar a visualização e o entendimento dos requisitos. • Priorização e negociação de requisitos: Quando há vários stakeholders envolvidos inevitavelmente os requisitos entram em conflitos e essa atividade visa reunir os stakeholders para fazer a definição de quais requisitos tem maior peso e importância. • Especificação de requisitos: Depois de passadas as 3 etapas anteriores é a hora de fazer a documentação dos requisitos que foram definidos. 11. Sobre Histórias de Usuários: A) Discuta a adequação do uso de Histórias de usuários no contexto de projetos ágeis. A história do usuário pode ser definida como uma explicação informal e generalizada que parte de um usuário sobre um recurso que ele (como persona) julga necessário em um software sob a perspectiva do usuário final. Elas se encaixam em estruturas ágeis como o Kanban (são colocadas no backlog e executadas por meio do fluxo de trabalho) e o Scrum (são colocadas nas sprints e “queimadas” ao longo dela). B) Apresente a estrutura de criação do enunciado de Histórias de Usuários. Geralmente um enunciado de História de Usuário possui uma persona que anuncia uma necessidade por algum motivo. Por exemplo: “Eu como [persona] quero [uma necessidade] porque [motivo].” C) Considerando o contexto da solução para a lavanderia (ver atividade AT03 - Definindo requisitos) crie 2 exemplos de Histórias de Usuários. “Eu Gabriel, como gerente, quero que o sistema gere relatórios de desempenho individuas para cada funcionário afim de monitorar o desempenho das minhas equipes.” “Eu João, como atendente, quero que o sistema me mostre quais roupas estão em nossa lavanderia para que eu possa fazer o controle de fluxo das roupas.” D) Apresente as características de boas histórias de usuários Devem estar contextualizando o ambiente de trabalho, qual o funcionário envolvido, qual a sua demanda e o motivo dela. 12. Baseado no capítulo 7 -Elicitação de Requisitos de VAZQUEZ e SIMÕES (2016) crie uma tabela comparativa das técnicas de elicitação.
Compartilhar