Software architecture: Difference between revisions

Content deleted Content added
Rearranged the text to make it more coherent. Also removed the example scenario because: 1) it didn't have a credible source 2) it was too detailed for the beginning of the article 3) it didn't elaborate the tough choices the architect must take and its tradeoffs.
No edit summary
Line 16:
 
Software architecture design is commonly juxtaposed with [[software application design]]. Whilst application design focuses on the design of the processes and data supporting the required functionality (the services offered by the system), software architecture design focuses on designing the infrastructure within which application functionality can be realized and executed such that the functionality is provided in a way which meets the system's [[non-functional requirement]]s.
 
Software architectures can be categorized into two main types: [[Monolithic architecture|monolith]] and [[Distributed computing|distributed architecture]], each has its own subcategories<ref>{{Cite book |title=Fundamentals of Software Architecture: An Engineering Approach |publisher=O'Reilly Media |year=2020 |isbn=978-1492043454}}</ref>.
 
[[File:Software Architecture Activities.jpg|thumb|Software architecture activities]]