<< Chapter < Page Chapter >> Page >

Adicionalmente, a manutenção do sistema é facilitadade uma forma análoga ao seu entendimento.Se algum requisito é atendido insatisfatoriamente, por meio da arquitetura é possíveldescobrir quais elementos do sistema estão envolvidos na insatisfaçãodesses requisitos. Da mesma maneira, a arquitetura possibilita descobrirquais requisitos serão afetados por um dado elemento arquiteturalcaso esse sofra uma mudança ou manutenção.

Se uma modificação na camada de apresentação sópode ser feita se a camada de persistência também formodificada, isso pode significar que a decisão arquiteturaldo [link] não está sendo seguida corretamente. Portanto, o requisito de manutenibilidadetambém não está sendo atendido corretamente e essa divergênciada arquitetura deve ser corrigida o quanto antes.

Evolução

Devido às suas características, se torna fácil perceber que o registrodas decisões arquiteturais na forma de um documento – o documento arquitetural– agrega valor ao ciclo de vida do software, uma vez que facilitao processo de rastreamento de requisitos. Adicionalmente, se algum tipo deregistro histórico das decisões arquiteturais existir, o processode rastreamento pode também ser realizado para as diversas versõesdo sistema, facilitando assim o entendimento da evolução do mesmo.

Além de descreverem estruturas arquiteturais, as decisõestambém descrevem princípios que conduzirão a evolução do sistema.Isso significa que uma decisão não necessariamente descreverámódulos, classes, ou serviços, mas também poderá descrever regrasque deverão ser seguidas ao longo do desenvolvimento do sistema.A seguir, citamos e exemplificamos alguns tipos de regras a seremdescritas pelas decisões arquiteturais.

  • Regras para adição de funcionalidade ao sistema.

    Uma nova funcionalidade do SASF não poderá adicionaruma carga maior que mil requisições por segundo ao banco de dados de usuários,considerando a média atual de dez mil usuários simultâneosno sistema.

    Uma nova funcionalidade deum editor de imagens só será adicionada implementandoo ponto de extensão ProcessImagePlugin . Esse ponto de extensãopermite obter a imagem que está aberta no workspacedo usuário e seus atributos, além de permitir a exibiçãode uma caixa de diálogo que permitirá ao usuárioentrar com parâmetros que servirão para a execuçãodo plug-in . O retorno dessa nova funcionalidadesempre será uma imagem (processada ou não). Anova funcionalidade, para ser adicionada, deve conterum arquivo de configuração em texto sem formataçãoque conterá o atributo extension-class que indicará o caminho para a classe da nova funcionalidadeque implementa ProcessImagePlugin .

    Uma nova funcionalidade do sistema de edição detexto não poderá modificar a GUI de forma que adicione mais do que um botão na áreade trabalho em sua configuração padrão.

  • Regras para remoção ou desativação de funcionalidades,seja durante o desenvolvimento, implantação, ou execução dosistema.

    No SASF, a remoção de um serviçodo módulo responsável pelo streaming para outros dispositivos será feita em duas etapas.Na primeira etapa, o serviço será marcado como deprecated , retornando assim, alémda resposta padrão, uma flag avisando que na próxima versão ele será descontinuado.Será ainda disponibilizada uma solução que contornea ausência desse serviço (serviços alternativos,por exemplo). Na segunda etapa, que deverá acontecerno mínimo 1 mês depois da primeira etapa, o serviçoserá desativado, retornando uma mensagem padrão deerro avisando que o serviço deixou de existir.

    Caso o consumo de recursos computacionaisdo SASF ultrapasse 80% do total, alguns de seusserviços podem ser completamente ou parcialmente desativados.Um serviço que pode ser desativado temporariamentesem que os usuários percebam é o motor de sugestão defilmes. Como cada usuário está acostumado a ter sualista de sugestões atualizada apenas “de tempos em tempos”,mas não tem certeza qual é o real intervalo entrecada atualização, se dada atualização demorar algunsminutos ou horas a mais para acontecer, dificilmenteo atraso será notado. Em casos extremos, devidoao seu grande consumo de recursos, o serviço de streaming de vídeo também pode ser desativado. No entanto,essa decisão deve também levar em conta o alto graude insatisfação de usuários que causará e que, fatalmente,poderá ser convertida em perda de faturamento. Umaalternativa é desativar a transmissão de vídeopara apenas algumas opções de resolução. Assim, ograu de insatisfação será menor, uma vez que apenasuma parte dos usuários não será atendida peloserviço de streaming .

  • Regras para modificação ou manutenção de funcionalidades.

    Não haverá modificação do Web Service que realiza busca e aluguelde filmes no SASF que é disponibilizado para usopor serviços externos. Se for realmente necessáriaa modificação, dois Web Services ficarão disponíveis: o antigo,completamente suportado, e o novo, que passará aser adotado por novos sistemas a partir da data de seulançamento. O antigo só será desativado depoisda adoção do novo serviço ser feita por todos os serviços externos.

  • Regras de atendimento a atributos de qualidade.

    No [link] , a disponibilidade de partedas funcionalidades, i.e., construção da lista desugestões de filmes ou transmissão de vídeos,é mais importante do que a indisponibilidade detodas as funções: caso o uso dos recursos computacionaisalcance 100%, usuários começarão a não ser atendidosde forma descontrolada. Assim, prefere-se que umamenor parte dos usuários não seja atendida, apenasos que desejam assistir a filmes em alta definição,do que a maior parte, que são os que desejam alugarfilmes ou assisti-los em definição padrão.

    A disponibilização de uma nova funcionalidade noSASF será feita em etapas para 10%, 25%, 50%, 100%desses usuários. Dessa maneira, será possívelavaliar o comportamento da nova função no sistemasob carga real. Além disso, a desativação da funcionalidadepoderá ser feita através de uma flag de controle, permitindo o retorno às funcionalidadesanteriores do sistema emcaso de sobrecarga dos recursos por parte da novafuncionalidade.

    Antes da implantação de uma novaversão de um serviço de infraestrutura, digamos,um novo banco de dados, a carga gerada pelos usuáriosda versão antiga será espelhada para a nova versão. Assim,será possível avaliar seu comportamento com uma cargareal e, portanto, saber o que esperar quando onovo banco de dados substituir a versão em produção.

Questions & Answers

A golfer on a fairway is 70 m away from the green, which sits below the level of the fairway by 20 m. If the golfer hits the ball at an angle of 40° with an initial speed of 20 m/s, how close to the green does she come?
Aislinn Reply
cm
tijani
what is titration
John Reply
what is physics
Siyaka Reply
A mouse of mass 200 g falls 100 m down a vertical mine shaft and lands at the bottom with a speed of 8.0 m/s. During its fall, how much work is done on the mouse by air resistance
Jude Reply
Can you compute that for me. Ty
Jude
what is the dimension formula of energy?
David Reply
what is viscosity?
David
what is inorganic
emma Reply
what is chemistry
Youesf Reply
what is inorganic
emma
Chemistry is a branch of science that deals with the study of matter,it composition,it structure and the changes it undergoes
Adjei
please, I'm a physics student and I need help in physics
Adjanou
chemistry could also be understood like the sexual attraction/repulsion of the male and female elements. the reaction varies depending on the energy differences of each given gender. + masculine -female.
Pedro
A ball is thrown straight up.it passes a 2.0m high window 7.50 m off the ground on it path up and takes 1.30 s to go past the window.what was the ball initial velocity
Krampah Reply
2. A sled plus passenger with total mass 50 kg is pulled 20 m across the snow (0.20) at constant velocity by a force directed 25° above the horizontal. Calculate (a) the work of the applied force, (b) the work of friction, and (c) the total work.
Sahid Reply
you have been hired as an espert witness in a court case involving an automobile accident. the accident involved car A of mass 1500kg which crashed into stationary car B of mass 1100kg. the driver of car A applied his brakes 15 m before he skidded and crashed into car B. after the collision, car A s
Samuel Reply
can someone explain to me, an ignorant high school student, why the trend of the graph doesn't follow the fact that the higher frequency a sound wave is, the more power it is, hence, making me think the phons output would follow this general trend?
Joseph Reply
Nevermind i just realied that the graph is the phons output for a person with normal hearing and not just the phons output of the sound waves power, I should read the entire thing next time
Joseph
Follow up question, does anyone know where I can find a graph that accuretly depicts the actual relative "power" output of sound over its frequency instead of just humans hearing
Joseph
"Generation of electrical energy from sound energy | IEEE Conference Publication | IEEE Xplore" ***ieeexplore.ieee.org/document/7150687?reload=true
Ryan
what's motion
Maurice Reply
what are the types of wave
Maurice
answer
Magreth
progressive wave
Magreth
hello friend how are you
Muhammad Reply
fine, how about you?
Mohammed
hi
Mujahid
A string is 3.00 m long with a mass of 5.00 g. The string is held taut with a tension of 500.00 N applied to the string. A pulse is sent down the string. How long does it take the pulse to travel the 3.00 m of the string?
yasuo Reply
Who can show me the full solution in this problem?
Reofrir Reply
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

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