<< Chapter < Page Chapter >> Page >

[Decisão Arquitetural 001]A arquitetura do SASF é dividida em três camadaslógicas: apresentação, lógica de negócio e persistência dedados, que serão mapeadas respectivamente para os pacotes: com.sasf.webui , com.sasf.service , com.sasf.storage . Os testes presentes na listagem a seguir , que podem ser executados usando o DesignWizard , descrevem as regras de comunicaçãoentre as camadas.

public class ThreeTierDesignTest extends TestCase { public void test_communication_web_ui_and_services() {String sasfClassesDir = System.getProperties("sasf.classes.directory");DesignWizard dw = new DesignWizard(sasfClassesDir); PackageNode services =dw.getPackage("com.sasf.service"); PackageNode webUI = dw.getPackage("com.sasf.webui");Set<PackageNode>callers = services.getCallerPackages();for (PackageNode caller : callers) { assertTrue(caller.equals(webUI));} }public void test_communication_services_and_storage() { String sasfClassesDir =System.getProperties("sasf.classes.directory"); DesignWizard dw = new DesignWizard(sasfClassesDir);PackageNode services = dw.getPackage("com.sasf.service");PackageNode storage = dw.getPackage("com.sasf.storage");Set<PackageNode>callers = storage.getCallerPackages();for (PackageNode caller : callers) { assertTrue(caller.equals(services));} }}
Testes para comunicação entre tiers.

Objetivo

O objetivo da decisão serve para registrarmos o motivoda decisão estar sendo tomada. Como decisões de design são conduzidaspor requisitos, sejam eles funcionais ou de qualidade, a identificaçãodos requisitos deve estar presente neste atributo. Os objetivos dasdecisões arquiteturais ajudam na rastreabilidade da arquitetura.

No [link] , percebemos duas formas de menção aos requisitosimplementados pela decisão. A primeira forma é presença o identificadordo requisito de qualidade, RNF-01. Já a outra forma é uma breve descriçãodo requisito alcançado.

(continuação da [Decisão Arquitetural 001])

Objetivo : Atendimento ao requisito não-funcional:RNF-01. Esta divisão diminui o acoplamento entre os elementosinternos da arquitetura, facilitando o desenvolvimento e a manutenção.

Fundamentação

Uma decisão arquitetural deve ser tomada com alguma fundamentação,seja ela uma análise das alternativas de design, baseada na experiênciaprévia do arquiteto, ou baseada em padrões de design. Esta fundamentaçãoresulta no julgamento das vantagens e desvantagens das alternativase servem para justificar a solução proposta.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Arquitetura de software. OpenStax CNX. Jan 05, 2010 Download for free at http://cnx.org/content/col10722/1.9
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Arquitetura de software' conversation and receive update notifications?

Ask