Arquitetura de software
La arquitetura de software dun sistema cunsiste na defeniçon de ls cumponentes de software, sues propiadades sternas, i sous relacionamientos cun outros softwares. L termo tamien se refire a la documentaçon de l'arquitetura de software de l sistema. La documentaçon de l'arquitetura de l software facelita: la quemunicaçon antre ls stakeholders, registra las decisones eniciales acerca de l porjeto d'alto-nible, i permite l reuso de l porjeto de ls cumponentes i padrones antre porjetos.
Antroduçon
eiditarL campo de la ciéncia de la cumputaçon ten lidado cun porblemas associados, cumo la cumplexidade de l'anformaçon, zde sue criaçon.[1] Ls purmeiros porblemas de cumplexidade fúrun resolbidos puls zambolbedores atrabeç de la scolha de la estrutura de dados, de l zambolbimiento de algoritmos i pula aplicaçon de cunceitos de separaçon de scopos. Ambora l termo arquitetura de software seia relatibamente nuobo na andústria, ls percípios fundamentales deste campo bénen sendo aplicados sporadicamente pula angenharie de software zde l'ampeço de ls anhos 80. Las purmeiras tentatibas de caturar i splicar l'arquitetura de software de l sistema fúrun amprecisas i desorganizadas – frequentemente caratelizadas por un cunjunto de diagramas.[2] Durante l decorrer de la década de 90 houbo un sfuorço cuncentrado para defenir i codificar ls aspetos fundamentales desta deciplina. Einicialmente un cunjunto de padrones de porjeto, stilo, melhores práticas, çcriçon de lenguaiges, i lógica formal fúrun zambolbidas durante este período.
La deciplina d'arquitetura de software ye centrada na eideia de la reduçon de la cumplexidade atrabeç de l'abstraçon i separaçon d'antrisses. L glossairo de l site oufecial SOFTWARE ENGINEERING INSTITUTE (Anstituto de Angenharie de Software) [3] çcribe qu'arquitetura de software ye la strutura ó estruturas dun sistema, cun todos ls eilemientos de software bendo i tenendo sues propiadades bistas por todos ls outros eilemientos i relacionamientos.
Sendo l'arquitetura de sistema ua deciplina an maturaçon, sin regras claras, l'açon de l'arquiteto ye inda ua cumposiçon d'arte i ciéncia. Ls aspetos de arte de l'arquitetura de software son debidos al fato que ls sistemas de software comerciales suportan alguns aspetos dun negócio ó misson. Assi cumo l direcionamiento de negócio chabe pa l suporte ls sistemas son çcritos ne ls cenairos cumo requesitos nó-funcionales de sistema, tamien coincidos cumo atributos de culidade, que detreminan cumo un sistema eirá se cumportar.[4] Cada sistema ye único debido a la natureza de l negócio qu'el suporta, tal que l nible de ls atributos de culidade eisigidos dun sistema cumo cumpatibelidade, stensibelidade, cunfiabelidade, manutenabelidade, çponibelidade, sigurança, usabelidade, dentre outros – eiran bariar para cada aplicaçon sendo zambolbida.[4]
Para trazer la perspetiba de l'usuairo para drento de l'arquitetura de software, puode-se dezir qu'essa deciplina dá la direçon de ls passos que seran tomados i las tarefas ambolbidas an cada ária de specialidade i antresse de l'usuairo, por eisemplo, lsstakeholders de sistemas de software, ls zambolbedores de software, l grupo de suporte al software de l sistema ouperacional, ls testadores i ls usuairos de negócio final. Neste sentido, l'arquitetura de software se torna la ligaçon de las múltiplas perspetibas qu'un sistema traç nel ambutido. L fato de qu'estas bárias perspetibas defrentes puodan ser postas juntas nua arquitetura de software padron justifica i balida la necidade de criaçon de l'arquitetura de software antes de l zambolbimiento de l software para que l porjeto alcance la maturidade.
Stória
eiditarL'ourige de l'arquitetura de software cumo un cunceito fui purmeiramente eidantificado ne l trabalho de pesquisa de Edsger Dijkstra an 1968 i David Parnas ne l'ampeço de 1970. Estes cientistas anfatizórun l'amportança de las struturas dun sistema de software i la criticidade de l'eidantificaçon de la sue strutura.[5] L studo deste campo oumentou de popularidade zde l'ampeço de 1990 culs trabalhos de pesquisa cuncentrando-se ne ls padrones de stilo d'arquitetura, lenguaiges de çcriçon d'arquitetura, documentaçon d'arquitetura, i métodos formales.[6] Muitas anstituiçones de pesquisa tales cumo la Carnegie Mellon University i la University of California, Irbine stában rializando muitas pesquisas ne l campo de l'arquitetura de software. Mary Shaw i David Garlan de la Carnegie Mellon screbírun un libro antitulado Software Architeture: Perspetibes on an Eimerging Decipline an 1996, l qual trazie a tona cunceitos de l'arquitetura de software, tales cumo cumponentes, conexones, stilos, etc. Ls sfuorços de l UCI's (Anstitute fur Software Research) na pesquisa de l'arquitetura de software fúrun einicialmente direcionados pa ls stilos d'arquitetura, çcriçones de lenguaiges d'arquitetura, i arquiteturas dinámicas.
ANSI/IEEE 1471-2000: Recommended Pratice fur Architeture Çcrition of Software-Antensibe Systems[1] fui la purmeira norma padron na ária d'arquitetura de software, i fui recentemente adotada pul ISO cumo ISO/IEC DIS 25961.
Çcribendo arquiteturas
eiditarLenguaige de çcriçon d'arquitetura
eiditarLas Lenguaiges de çcriçon d'arquitetura (LDAs) son ousadas para çcrebir l'arquitetura de software. Bárias LDAs çtintas fúrun zambolbidas por defrentes ourganizaçones, ancluindo Wright (zambolbido por Carnegie Mellon), Acme (zambolbido por Carnegie Mellon), xADL (zambolbido por UCI), Darwin (zambolbido por Amperial College London), DAOP-ADL (zambolbido pula University of Málaga). Eilemientos quemuns dua LDA son cumponente, conexon i cunfiguraçon.
Bisones
eiditarL'arquitetura de software ye normalmente ourganizada an bisones[7], las quales son análogas als defrentes tipos de plantas outelizadas ne l stablecimiento de la arquitetura. Na Ontologie establecida pula ANSI/IEEE 1471-2000, bisones son anstáncias de puntos de bista, adonde cada punto de bista eisiste para çcrebir l'arquitetura na perspetiba dun cunjunto de stakeholders i sous cunsurtes.
Alguas possibles bisones son:
- Bison funcional/lógica
- Bison de código.
- Bison de zambolbimiento/strutural
- Bison de cuncorréncia/porcesso/thread
- Bison física/eibolutiba
- Bison d'açon de l'usuairo/retorno
Bárias lenguaiges para çcriçon de l'arquitetura de software fúrun ambentadas, mas nanhun cunsenso fui inda alcançado an relaçon la qual cunjunto de simblos ó sistema de repersentaçon debe ser adotado. Alguns acraditan que la UML eirá stablecer un padron para repersentaçon d'arquitetura de software. Outros acraditan que ls zambolbimientos efetibos de software dében cuntar cula cumprenson única de las restriçones de cada porblema, i notaçones tan ounibersales son cundenadas a un final anfeliç porque cada ua probé ua notaçon defrenciada que necessariamente torna la notaçon inútil ó peligrosa para alguns cunjuntos de tarefas. Eilhes apuntan la proliferaçon de lenguaiges de porgramaçon i la sucesson de tentatibas falhas para ampor ua simples 'lenguaige ounibersal' na porgramaçon, cumo ua proba de la tendéncia de l software pa la dibersidade i nun pa ls padrones.
Padrones d'arquitetura
eiditarEisemplos d'arquitetura
eiditarHai muitas formas quemuns de porjetar módulos de software de cumputador i sues quemunicaçones, antre eilhas:
- Cliente-Serbidor
- Cumputaçon çtribuída
- P2P
- Quadro Negro
- Criaçon amplícita
- Pipes i filtros
- Plugin
- Aplicaçon monolítica
- Modelo an trés camadas
- Analise de sistema struturada (baseada an módulos, mas usualmente monolíticas an drento de ls módulos)
- Arquitetura ourientada la serbício
- Arquitetura ourientada la busca
Notas i Refréncias
- ↑ «La Bery Brief Story of Cumputer Science». 2006. Cunsultado an 23 de setembre de 2006 Parâmetro desconhecido
|outhor=
ignorado (ajuda); - ↑ «Antrodution to the Special Issue on Software Architeture». 2006. Cunsultado an 23 de setembre de 2006 Parâmetro desconhecido
|outhor=
ignorado (ajuda); - ↑ «Glossary?». 2010. Cunsultado an 31 de janeiro de 2010 Parâmetro desconhecido
|outhor=
ignorado (ajuda); - ↑ 4,0 4,1 .com/one/Zeigning+Architeture/78.aspx «Antro to Software Quality Attributes» Cunsulte valor
|url=
(ajuda). 2006. Cunsultado an 23 de setembre de 2006 Parâmetro desconhecido|outhor=
ignorado (ajuda); - ↑ «Ourigines of Software Architeture Study». 2006. Cunsultado an 25 de setembre de 2006 Parâmetro desconhecido
|outhor=
ignorado (ajuda); - ↑ «An Antrodution to Software Architeture» (PDF). 2006. Cunsultado an 25 de setembre de 2006 Parâmetro desconhecido
|outhor=
ignorado (ajuda); - ↑ . [S.l.: s.n.]. ISBN 0201703726
Ber tamien
eiditarLhigaçones sternas
eiditar- Software architeture defenitiones at Carnegie Mellon University Software Anginering Anstitute
- Software architeture bs. software zeign Arquibado an 2007-09-28 ne l Wayback Machine.
- Worldwide Anstitute of Software Architets
- .com/architeture/andex.jsp Grady Boch's Handbook of Software Architeture porjet[lhigaçon einatiba]
- .com SoftwareArchitetures .com Andependent resource of anformation on the decipline
- Anternational Association of Software Architets[lhigaçon einatiba]
- Microsoft Architeture Journal[lhigaçon einatiba]
- Pangea - Professional and Academic Network to the Growing and Eibolution of Architeture (Pertuese)
- .com/t-br/ Blog de la OCTO Technology Brasil, ampresa de cunsultoria an Arquitetura de Sistemas de Anformaçon[lhigaçon einatiba]