Please enable JavaScript.
Coggle requires JavaScript to display documents.
O DESENHO NO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE (REUTILIZAÇÃO (CÓDIGO…
O DESENHO NO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE
A fase de desenho tem como objetivo modelar o sistema, atendendo os requisitos levantados na fase de análise, e prepará-los para a implementação.
Atividades da fase de Projeto ou desenho de software
.
Constrói a solução computacional, com base na especificação do problema.
Avalia as alternativas tecnológicdas disponíveis.
Define as tecnologias de Linguagem de programação e SGBD (Sistema Gerenciador de Banco de dados)
Projeta o banco de dados que o software usará
Cuidados
Uso de tecnologias novas: custo compensa o risco?
Orçamento: soluções reais
Desenha a arquitetura do software
PROBLEMA VS SOLUÇÃO
PROBLEMA
Através do levantamento de informações na fase de análise de requisitos, define-se um problema ou meta a ser alcançado.
SOLUÇÃO
Após levantamento, uma solução deverá ser escolhida dentre várias possíveis, isto é o papel do arquiteto de software.
A documentação do desenho explicita a solução que será tomada para resolução do problema
Ambiente e Arquitetura do Software
MODELOS DE DESENHO
DESENHO INTERNO
É a maneira como o sistema interage com outros produtos ou sistemas.
Podem conter parte físicas, lógicas, interconexões com outros sistemas e produtos, interna ou externamente.
DESENHO EXTERNO
Visão que os usuários terão da solução ou produto e a forma com que eles interagirão.
O nível de abstração e agregação dos elementos dos sistemas podem ser:
NÍVEL ESTRATÉGICO OU DESENHO ARQUITETÔNICO
É o corpo da arquitetura do sistema a ser implementado.
Com base nesse desenho, já se pode saber se o sistema atenderá aos requisitos e aos custos relacionados do projeto.
NÍVEL TÁTICO OU DESENHO LÓGICO
É a aplicação das decisões tomadas no nível estratégico.
A solução contemplará a reutilização, ou não, de componentes, que serão desenvolvidos para ele, buscando satisfazer os requisitos do produto.
NÍVEL OPERACIONAL OU DESENHO DETALHADO
É o comportamento de cada componente.
É desenvolvido em conjunto com a documentação voltada para usuários, no caso de desenho externo, ou documentação do código do programa, no caso de desenho interno.
REUTILIZAÇÃO
Nesta fase, é comum se fazer uso de processos que já foram definidos, usados e testados em outros projetos ou produtos, evitando o retrabalho.
O processo de reutilização visa à redução do desperdício de tempo e, consequentemente, dinheiro, visto que, podemos aplicar o conceito de reutilização em diversos processos em todas as fases do desenvolvimento do software, gerando melhora significativa na qualidade e na produtividade. :warning:
CÓDIGO
Reutilização de parte ou todo ó código fonte de módulos do sistema.
Só é possível quando na fase de construção do código aplicou-se corretamente conceitos como o de coesão, acoplamento.
REUTILIZAÇÃO DE OBJETO
Bibliotecas e classes fundamentais.
REUTILIZAÇÃO DE PLATAFORMA
Reutilização de Plataforma - Camada de arquitetura, consiste na colaboração de ferramentas para gerenciar e automatizar o ciclo de vida de desenvolvimento de software, com a utilização de "templates" de processos
DESENHO
Aproveitamento de ideias para solução de problemas, são comumente encontradas em padrões, frameworks e arquiteturas, abordagens que permitem a reutilização ao nível de desenho.
REUTILIZAÇÃO DE CLASSE
Módulo de código binário, mecanismo baseado em: Composição (“tem um”) e Herança ou derivação (“é um”).