Lista12, Exercícios de Engenharia de Software. Universidade Federal de Uberlândia (UFU)
amanda_santana
amanda_santana11 de Julho de 2015

Lista12, Exercícios de Engenharia de Software. Universidade Federal de Uberlândia (UFU)

DOCX (16.7 KB)
3 páginas
956Número de visitas
Descrição
Exercícios resolvidos Arquitetura de Software
20pontos
Pontos de download necessários para baixar
este documento
baixar o documento

Lista 12 - Arquitetura de Sofware

Questão 1

a) Visão Lógica: descreve requisitos comportamentais e a decomposição do sistema em conjuntos de abstrações. Seus principais elementos são classes e objetos (representam-na Diagramas de Classe, Sequência e de Colaboração). b) Visão de Processo: Descreve os processos do sistema e como eles se comunicam (útil quando se tem múltiplos processos ou threads e permite avaliar requisitos não funcionais relacionados à execução e comunicação. O diagrama que o representa é o de Atividade). c) Visão Física (de implantação): descreve como a aplicação é instalada e como é executada em uma rede de computadores. Permite avaliar requisitos não funcionais de desempenho e disponibilidade, confiabiabilidade e escalabilidade (o Diagrama de Implantação que o representa). d) Visão de Cenários (caso de uso): Descreve as funcionalidades do sistema e detalha as ações e condições em cada caso de uso. São considerados ponto de partida para a consolidação das outras visões. Questão 2

Cada estilo descreve uma categoria de sistemas que abrange, por exemplo: conjunto de componentes, de conectores, de resoluções e de modelos semânticos. É uma transformação imposta sobre o projeto de um sistema completo cujo objetivo é estabelecer uma estrutura para todos os componentes do sistema. Os estilos arquiteturais definem meios de selecionar e apresentar blocos de construção de arquitetura.

Questão 3

a)Pipeline: Restringe a topologia, a sequência linear de filtros. Os dados fluem de uma para outra função e são transformadas ao moverem-se sequencialmente. Cada etapa do processo é implementada como uma transformação. Os dados de entradas fluem através dessas transformações até serem convertidos em saída. As transformações são representadas como processos separados. b) Camada: tem uma organização hierárquica e um certo número de camadas é definido, e cada uma realiza operações que se tornam progressivamente mais próximas ao conjunto de instruções da máquina. Cada camada provê serviços para a camada de cima e usa serviços da camada de baixo. Além disso, tem um conjunto de serviços coesos e uma interface bem definida. Na camada mais exterior provê

uma interface mais próxima ao usuário e a camada mais interna provê uma interface com o sistema operacional. c) Eventos: São regidos pelos eventos gerados externamente. Um evento pode ser um sinal que assume uma gama de valores ou uma entrada de comando baseado em um menu Um evento é uma ocorrência importante que ocorre em um determinado instante de tempo. Um disparador de eventos faz a mediação entre componentes que anunciam e são noticados sobre eventos. d) MVC: Model-view-controller (MVC), é um modelo de arquitetura de software que separa a representação da informação da interação do usuário com ele. Modelo (model) consiste nos dados da aplicação, regras de negócios, lógica e as funções. A visão (view) pode ser qualquer saída de representação dos dados (como uma tabela ou um diagrama). O controlador (controller) faz a mediação da entrada, convertendo-a em comandos para o modelo ou visão. Questão 4

Um framework (ou arcabouço), em desenvolvimento de software, é uma abstração que une códigos comuns entre vários projetos de software provendo uma funcionalidade genérica. Um framework pode atingir uma funcionalidade específica, por configuração, durante a programação de uma aplicação.

Questão 5

Para melhorar o desenvolvimento do sistema, os engenheiros devem compreender completamente sua arquitetura, de forma a serem capazes de analisar opções de projeto ou realizar mudanças. A UML fornece uma notação padrão que permite a compreensão do sistema, além de ser utilizada como ferramenta de compartilhamento de informações, por ser uma forma de comunicação comum aos engenheiros de software.

Questão 6

A utilização da arquitetura de software em Camadas permitiria a extensão do escopo do sistema. Uma camada de Operações forneceria os serviços (cadastro, empréstimo, devolução) dos itens da biblioteca. Como camada superior, cada tipo de mídia implementa diferentemente a utilização dos serviços da camada de Operações. Assim, para incorporar as novas funcionalidades ao sistema, faz-se

necessária a criação de serviços específicos para as novas mídias na camada que utiliza as operações fornecidas pela camada de Operações.

Questão 7 A solução B tende a permitir o reuso de comportamentos e informações comuns entre indivíduo e corporação, por meio da classe cliente. Desta forma, códigos de implementação são reutilizados e a modificação / manutenção desses aspectos comuns é facilitada, conceitos priorizados no desenvolvimento de um sistema de software, sendo, assim, a melhor solução para o problema.

Questão 8

A escolha feita pelo modelador é adequada ao problema pois, com a necessidade de expandir o sistema, foram criados módulos independentes de funcionalidades específicas. Dessa forma, os clientes mais específicos (Jornal, Comida) podem utilizar as funções que necessitam, sem carregar, juntamente, funções que não seriam utilizadas por eles durante a existência do objeto.

comentários (0)
Até o momento nenhum comentário
Seja o primeiro a comentar!
Esta é apenas uma pré-visualização
Consulte e baixe o documento completo
Docsity is not optimized for the browser you're using. In order to have a better experience we suggest you to use Internet Explorer 9+, Chrome, Firefox or Safari! Download Google Chrome