Engenharia de sowftware
845 palavras
4 páginas
INTRODUÇÃO AO PROJETO DE SOFTWARE1. Quais são os principais atributos de qualidade desejados em um bom projeto? Descreva-os sucintamente.
Coesão: medida da proximidade das partes de um sub-componente. Um componente deve implementar uma única entidade lógica ou função. Importância: quando uma mudança tiver que ser feita, ela será localizada. A herança de atributos de uma superclasse enfraquece a coesão (para entender um componente, a superclasse e também o componente precisam ser examinados).
Acoplamento: medida de força das interconexões entre componentes do sistema. Importância: baixo acoplamento implica que mudanças em um componente dificilmente afetarão outros componentes. Sistemas orientados a objeto são fracamente acoplados (geralmente não compartilham estados e a comunicação é feita através de passagem de mensagens). Uma classe está acoplada à sua superclasse (mudanças nos atributos ou operações na superclasse se propagam a todas as subclasses).
Entendimento: relacionado a várias características do componente: coesão (pode um componente ser entendido isoladamente?), nomes (são usados nomes que fazem sentido?), documentação (o projeto está bem documentado?), complexidade (algoritmos complexos são utilizados?).
Adaptabilidade: medida da facilidade de mudanças nos componentes. Alguns fatores relevantes: componentes fracamente acoplados, componentes fortemente coesos e boa documentação. A herança aumente a adaptabilidade (componentes podem ser adaptados sem mudanças através da definição de uma subclasse que é efetivamente modificada); porém, o aumento da profundidade da hierarquia a torna mais complexa.
2. O que diferencia as fases de projeto e de especificação de requisitos de software? Identifique as fases do processo de projeto e explique a função de cada uma.
Na etapa de especificação de requisitos de software o foco principal é a descoberta de quais funcionalidades precisam ser oferecidas pelo sistema e quais restrições sobre as quais