Prévia do material em texto
ACH 2006 – Engenharia de Sistemas de Informação I Exerćıcios Engenharia de Requisitos e Projeto de Software Professor: Marcos L. Chaim 1. Considere o seguinte requisito de um sistema de vendas de ingressos: R–7.3 – O cliente pode cancelar a sua compra até 120 minutos antes do ińıcio do evento. Este requisito é verificável? Por quê? 2. Qual a diferença entre os requisitos de usuário e os requisitos de sistema? 3. Dê um exemplos de defeitos em uma especificação de requisitos que caracterizem uma omissão de funcionalidade e uma ambiguidade. 4. A história do usuário abaixo é SMART? Justifique sua resposta. "Como usuário de um site de comércio eletrônico, para que eu possa ir ao carrinho e finalizar a compra sem problemas, a interface de login de pré-compra deve ser t~ao intuitiva que 80% dos clientes possam fazer login em vinte segundos." 5. Qual é o relacionamento Behavior Driven Design (BDD) e testes automatizados? 6. O que são o Happy Path e o Sad Path? 7. Para que serve Storyboarding? 8. Considere que uma universidade irá modernizar os seus vários sistemas computacionais. Hoje em dia, estes sistemas controlam matŕıculas de alunos, empréstimo de livros da biblioteca, concessão de bolsas etc. A idéia agora é criar um único sistema no qual os sistemas atuais sejam subsistemas. Qual o estilo arquitetural que você sugeriria para o novo sistema? Justifique apresentando as vantagens e desvantagens da sua escolha. 9. Qual a diferença entre os estilos arquiteturais pipeline e baseado em camadas. 10. Quais os estilos arquiteturais você consegue inferir no sistema de compra de créditos da USP? 11. Para que serve o padrão Singleton? Explique a sua motivação, estrutura e aplicabilidade. Apre- sente um código Java que o implemente. 12. Para que serve o padrão Proxy? Explique a sua motivação, estrutura e aplicabilidade. Apresente um código Java que o implemente. 13. Para que serve o padrão Visitor? Explique a sua motivação, estrutura e aplicabilidade. Apresente um código Java que o implemente.