Software architecture: Difference between revisions

Content deleted Content added
No edit summary
m removed the unreliable source
Line 1:
{{short description|High level structures of a software system}}
{{Software development process}}
'''Software architecture''' is the set of structures needed to reason about a [[software system]] and the discipline of creating such structures and systems. Each structure comprises software elements, relations among them, and properties of both elements and relations.<ref name="DSA2">{{cite book |last=Clements |first=Paul |title=Documenting Software Architectures: Views and Beyond, Second Edition |author2=Felix Bachmann |author3=Len Bass |author4=David Garlan |author5=James Ivers |author6=Reed Little |author7=Paulo Merson |author8=Robert Nord |author9=Judith Stafford |publisher=Addison-Wesley |year=2010 |isbn=978-0-321-55268-6 |___location=Boston |language=en-US |author3-link=Len Bass}}</ref><ref>{{Cite web |title=Software Architecture |url=https://www.sei.cmu.edu/research-capabilities/all-work/display.cfm?customel_datapageid_4050=21328 |access-date=2018-07-23 |website=www.sei.cmu.edu |language=en-US}}</ref>
 
The ''architecture'' of a software system is a [[metaphor]], analogous to the [[architecture]] of a building.<ref name="PERRY1992">{{Cite journal | last1 = Perry | first1 = D. E. | last2 = Wolf | first2 = A. L. | author-link2 = Alexander L. Wolf| doi = 10.1145/141874.141884 | title = Foundations for the study of software architecture | journal = [[ACM SIGSOFT Software Engineering Notes]]| volume = 17 | issue = 4 | pages = 40 | year = 1992 | url = http://users.ece.utexas.edu/~perry/work/papers/swa-sen.pdf| citeseerx = 10.1.1.40.5174 | s2cid = 628695 }}</ref> It functions as the blueprints for the system and the development project, which [[project management]] can later use to extrapolate the tasks necessary to be executed by the teams and people involved.