software_architecture_bibliography

Software Architecture Bibliography

Return to Bibliography of Cloud Native SRE-DevOps-DevSecOps Azure-AWS-GCP-IBM Containers-Docker-Kubernetes-FaaS-PaaS Serverless, Software Engineering and Programming Bibliography, Software engineering and programming courses, Design Patterns Bibliography, Microservices Bibliography

https://learning.oreilly.com/topics/software-architecture


Fair Use Source: From Learning Domain-Driven Design by Vlad Khononov:

References

Brandolini, A. (n.d.). Introducing EventStorming. Leanpub.

Brooks, F. P., Jr. (1974). The Mythical Man Month and Other Essays on Software Engineering. Reading, MA: Addison-Wesley.

Eisenhardt, K., & Sull, D. (2016). Simple Rules: How to Succeed in a Complex World. London: John Murray.

Esposito, D., & Saltarello, A. (2008). Architecting Applications for the Enterprise: Microsoft® .NET. Redmond, WA: Microsoft Press.

Evans, E. (2003). Domain-Driven Design: Tackling Complexity in the Heart of Software. Boston: Addison-Wesley.

Feathers, M. C. (2005). Working Effectively with Legacy Code. Upper Saddle River, NJ: Prentice Hall PTR.

Fowler, M. (2002). Patterns of Enterprise Application Architecture. Boston: Addison-Wesley.

Fowler, M. (2019). Refactoring: Improving the Design of Existing Code (2nd ed.). Boston: Addison-Wesley.

Fowler, M. (n.d.). What do you mean by “Event-Driven”? Retrieved August 12, 2021, from https://martinfowler.com/articles/201701-event-driven.html.

Gamma, E., Helm, R., & Johnson, R. (1994). Design Patterns: Elements of Reusable Object-Oriented Software. Reading, MA: Addison-Wesley.

Gigerenzer, G., Todd, P. M., & ABC Research Group (Research Group, Max Planck Institute, Germany). (1999). Simple Heuristics That Make Us Smart. New York: Oxford University Press.

Goldratt, E. M. (2005). Beyond the Goal: Theory of Constraints. New York: Gildan Audio.

Goldratt, E. M., & Goldratt-Ashlag, E. (2018). The Choice. Great Barrington, MA: North River Press Publishing Corporation.

Goldratt-Ashlag, E. (2010). “The Layers of Resistance—The Buy-In Process According to TOC.” (Chapter 20 of the Theory of Constraints handbook.) Bedford, England: Goldratt Marketing Group.

Garcia-Molina, H., & Salem K. (1987). Sagas. Princeton, NJ: Department of Computer Science, Princeton University.

Helland, P. (2020). Data on the outside versus data on the inside. Communications of the ACM, 63(11), 111–118.

Hohpe, G., & Woolf, B. (2003). Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions. Boston: Addison-Wesley.

Khononov, V. (2022). Balancing Coupling in Software Design. Boston: Addison-Wesley.

Khononov, V. (2019). What Is Domain-Driven Design? Boston: O’Reilly.

Martraire, C. (2019). Living Documentation: Continuous Knowledge Sharing by Design. Boston: Addison-Wesley.

Millett, S., & Tune, N. (2015). Patterns, Principles, and Practices of Domain-Driven Design (1st ed.). Nashville: John Wiley & Sons.

Myers, G. J. (1978). Composite/Structured Design. New York: Van Nostrand Reinhold.

Ousterhout, J. (2018). A Philosophy of Software Design. Palo Alto, CA: Yaknyam Press.

Richardson, C. (2019). Microservice Patterns: With Examples in Java. New York: Manning Publications.

Vernon, V. (2013). Implementing Domain-Driven Design. Boston: Addison-Wesley.

Vernon, V. (2016). Domain-Driven Design Distilled. Boston: Addison-Wesley.

West, G. (2018). Scale: The Universal Laws of Life and Death in Organisms, Cities and Companies. Oxford, England: Weidenfeld & Nicolson.

Wright, D., & Meadows, D. H. (2009). Thinking in Systems: A Primer. London: Earthscan.

Fair Use Source: Learning Domain-Driven Design by Vlad Khononov


Fair Use Source: From Software Architecture in Practice, 4th Edition by Len Bass, Paul Clements, Rick Kazman:

BIBLIO Software Architecture in Practice, 2021-7, 4th Ed, Len Bass, Paul Clements, Rick Kazman

References

Abrahamsson 10] P. Abrahamsson, M. A. Babar, and P. Kruchten. “Agility and Architecture: Can They Co[[exist?” IEEE Software 27, no. 2 (March–April 2010): 16–22.

[AdvBuilder 10] Java Adventure Builder Reference Application. https]]://ad[[venturebuilder.dev.java.net

[Anastasopoulos 00] M. Anastasopoulos and C. Gacek. “Implementing Product Line Variabilities” (IESE-Report no. 089.00/E, V1.0). Kaiserslautern, Germany: Fraunhofer Institut Experimentelles Software Engineering]], 2000.

[Anderson 20] Ross Anderson. Security Engineering: A Guide to Building Dependable Distributed System]]s, 3rd ed. Wiley, 2020.

Argote 07] L. Argote and G. Todorova. International Review of Industrial and Organizational Psychology. John Wiley & Sons, 2007.

[Aviienis 04] Algirdas Aviienis, Jean-Claude Laprie, Brian Randell, and Carl Landwehr. “Basic Concepts and Taxonomy of Dependable and Secure Computing,” IEEE Transactions on Dependable and Secure Computing 1, no. 1 (January 2004): 11–33.

Bachmann 00a] Felix Bachmann, Len Bass, Jeromy Carriere, Paul Clements, David Garlan, James Ivers, Robert Nord, and Reed Little. “Software Architecture]] Documentation in Practice: Documenting Architectural Layers,” CMU/SEI-2000-SR-004, 2000.

Bachmann 00b] F. Bachmann, L. Bass, G. Chastek, P. Donohoe, and F. Peruzzi. “The Architecture-Based Design Method,” CMU/SEI-2000-TR-001, 2000.

Bachmann 05] F. Bachmann and P. Clements. “Variability in Software Product Lines,” CMU/SEI-2005-TR-012, 2005.

Bachmann 07] Felix Bachmann, Len Bass, and Robert Nord. “Modifiability Tactics,” CMU/SEI-2007-TR-002, September 2007.

Bachmann 11] F. Bachmann. “Give the Stakeholders What They Want: Design Peer Review]]s the ATAM Style,” Cross[[talk (November/December 2011): 8–10, cross[[talkonline.org/storage/issue-archives/2011/201111/201111-Bachmann.pdf.

[Barbacci 03] M. Barbacci, R. Ellison, A. Lattanze, J. Stafford, C. Wein[[stock, and W. Wood. “Quality Attribute Workshops (QAWs), Third Edition]],” CMU/SEI-2003-TR-016, sei.cmu.edu/reports/03tr016.pdf.

[Bass 03] L. Bass and B. E. John. “Linking Usability to Software Architecture]] Patterns through General Scenarios,” Journal of Systems and Software 66, no. 3 (2003): 187–197.

[Bass 07] Len Bass, Robert Nord, William G. Wood, and David Zubrow. “Risk Themes Discovered through Architecture Evaluations,” in Proceedings of WICSA 07, 2007.

[Bass 08] Len Bass, Paul Clements, Rick Kazman, and Mark Klein. “Models for Evaluating and Improving Architecture Competence,” CMU/SEI-2008-TR-006, March 2008, sei.cmu.edu/library/abstracts/reports/08tr006.cfm.

[Bass 15] Len Bass, Ingo Weber, and Liming Zhu. DevOps: A Software Architect]]’s Perspective. Addison-Wesley, 2015.

[Bass 19] Len Bass and John Klein. Deployment and Operations for Software Engineer]]s. Amazon, 2019.

[Baudry 03] B. Baudry, Yves Le Traon, Gerson Sunyé, and Jean-Marc Jézéquel. “Measuring and Improving Design Patterns Testability,” Proceedings of the Ninth International Software Metrics Symposium (METRICS ’03), 2003.

[Baudry 05] B. Baudry and Y. Le Traon. “Measuring Design Testability of a UML Class [[Diagram,” Information & Software Technology 47, no. 13 (October 2005): 859–879.

Beck 02] Kent Beck. Test-[[Driven Development]] by Example. Addison-Wesley, 2002.

Beck 04] Kent Beck and Cynthia Andres. Extreme Programming Explained: Embrace Change, 2nd ed. Addison-Wesley, 2004.

[Beizer 90] B. Beizer. Software Testing]] Techniques, 2nd ed. International Thomson Computer Press, 1990.

Bellcore 98] Bell Communications Research. GR-1230-CORE, SONET Bidirectional Line-Switched Ring Equipment Generic Criteria. 1998.

Bellcore 99] Bell Communications Research. GR-1400-CORE, SONET Dual-Fed Unidirectional Path Switched Ring (UPSR) Equipment Generic Criteria. 1999.

[Bellomo 15] S. Bellomo, I. Gorton, and R. Kazman. “Insights from 15 Years of ATAM Data: Towards Agile Architecture,” IEEE Software 32, no. 5 (September/October 2015): 38–45.

[Benkler 07] Y. Benkler. The Wealth of Networks: How Social Production Transforms Markets and Freedom. Yale University Press, 2007.

[Bertolino 96a] Antonia Bertolino and Lorenzo Strigini. “On the Use of Testability Measures for Dependability Assessment,” IEEE Transactions on Software Engineering]] 22, no. 2 (February 1996): 97–108.

[Bertolino 96b] A. Bertolino and P. Inverardi. “Architecture-Based Software Testing]],” in Proceedings of the Second International Software Architecture]] Workshop (ISAW-2), L. Vidal, A. Finkelstain, G. Spanoudakis, and A. L. Wolf, eds. Joint Proceedings of the SIGSOFT ’96 Workshops, San Francisco, October 1996. ACM Press.

[Biffl 10] S. Biffl, A. Aurum, B. Boehm, H. Erdogmus, and P. Grunbacher, eds. Value-Based Software Engineering]]. Springer, 2010.

Binder 94] R. V. Binder. “Design for Testability in Object-Oriented Systems,” CACM 37, no. 9 (1994): 87–101.

Binder 00] R. Binder. Testing Object-Oriented Systems: Models, Patterns, and Tools. Addison-Wesley, 2000.

[Boehm 78] B. W. Boehm, J. R. Brown, J. R. Kaspar, M. L. Lipow, and G. MacCleod. Characteristics of Software Quality. American Elsevier, 1978.

[Boehm 81] B. Boehm. Software Engineering]] Economics. Prentice Hall, 1981.

[Boehm 91] Barry Boehm. “Software Risk Management: Principles and Practices,” IEEE Software 8, no. 1 (January 1991): 32–41.

[Boehm 04] B. Boehm and R. Turner. Balancing Agility and Discipline: A Guide for the Perplexed. Addison-Wesley, 2004.

[Boehm 07] B. Boehm, R. Valerdi, and E. Honour. “The ROI of Systems Engineering]]: Some Quantitative Results for Software Intensive Systems,” Systems Engineering]] 11, no. 3 (2007): 221–234.

[Boehm 10] B. Boehm, J. Lane, S. Koolmanojwong, and R. Turner. “Architected Agile Solutions for Software-Reliant Systems,” Technical Report USC-CSSE-2010-516, 2010.

[Bondi 14] A. B. Bondi. Foundations of Software and System Performance Engineering: Process, Performance Modeling, Requirements, Testing, Scalability, and Practice. Addison-Wesley, 2014.

[Booch 11] Grady Booch. “An Architectural Oxymoron,” podcast available at computer.org/portal/web/computingnow/onarchitecture. Retrieved]] January 21, 2011.

[Bosch 00] J. Bosch. “Organizing for Software Product Lines,” Proceedings of the 3rd International Workshop on Software Architecture]]s for Product Families (IWSAPF-3), pp. 117–134. Las Palmas de Gran Canaria, Spain, March 15–17, 2000. Springer, 2000.

[Bouwers 10] E. Bouwers and A. van Deursen. “A Lightweight Sanity Check for Implemented Architectures,” IEEE Software 27, no. 4 (July/August 2010): 44–50.

[Bredemeyer 11] D. Bredemeyer and R. Malan. “Architect Competencies: What You Know, What You Do and What You Are,” http://www.bredemeyer.com/Architect/ArchitectSkillsLinks.htm.

Brewer 12] E. Brewer. “CAP Twelve Years Later: How the ‘Rules’ Have Changed,” IEEE Computer (February 2012): 23–29.

Brown 10] N. Brown, R. Nord, and I. Ozkaya. “Enabling Agility through Architecture,” Cross[[talk (November/December 2010): 12–17.

Brownsword 96] Lisa Brownsword and Paul Clements. “A Case [[Study in Successful Product Line Development,” Technical Report CMU/SEI-96-TR-016, October 1996.

Brownsword 04] Lisa Brownsword, David Carney, David Fisher]], Grace Lewis, Craig Meterys, Edwin Morris, Patrick Place, James Smith, and Lutz Wrage. “Current Perspectives on Interoperability],” CMU/SEI-[[2004-TR-009, sei.cmu.edu/reports/04tr009.pdf.

[Bruntink 06] Magiel Bruntink and Arie van Deursen. “An Empirical Study into Class Testability,” Journal of Systems and Software 79, no. 9 (2006): 1219–1232.

[Buschmann 96] Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad, and Michael Stal. Pattern-Oriented Software Architecture]] Volume 1: A System of Patterns. Wiley, 1996.

[Cai 11] Yuanfang Cai, Daniel Iannuzzi, and Sunny Wong. “Leveraging Design Structure Matrices]] in Software Design]] Education,” Conference on Software Engineering]] Education and Training 2011, pp. 179–188.

[Cappelli 12] Dawn M. Cappelli, Andrew P. Moore, and Randall F. Trzeciak. The CERT Guide to Insider Threats: How to Prevent, Detect, and Respond to Information Technology Crimes (Theft, Sabotage, Fraud). Addison-Wesley, 2012.

[Carriere 10] J. Carriere, R. Kazman, and I. Ozkaya. “A Cost-Benefit Framework for Making Architectural Decisions in a Business Context,” Proceedings of 32nd International Conference on Software Engineering]] (ICSE 32), Capetown, South Africa, May 2010.

[Cataldo 07] M. Cataldo, M. Bass, J. Herbsleb, and L. Bass. “On Coordination Mechanisms in Global Software Development]],” Proceedings Second IEEE International Conference on Global Software Development]], 2007.

[Cervantes 13] H. Cervantes, P. Velasco, and R. Kazman. “A Principled]] Way of Using Frameworks in Architectural Design,” IEEE Software (March/April 2013): 46–53.

[Cervantes 16] H. Cervantes and R. Kazman. Designing Software Architecture]]s: A Practical Approach. Addison-Wesley, 2016.

Chandran 10] S. Chandran, A. Dimov, and S. Punnekkat. “Modeling Uncertainties in the Estimation of Software Reliability: A Pragmatic Approach,” Fourth IEEE International Conference on Secure Software Integration and Reliability Improvement, 2010.

[Chang 06] F. Chang, J. Dean, S. Ghemawat, W. Hsieh, et al. “Bigtable: A Distributed Storage System for Structured Data,” Proceedings of Operating Systems Design and Implementation, 2006, http://research.google.com/archive/bigtable.html.

[Chen 10] H.-M. Chen, R. Kazman, and O. Perry. “From Software Architecture]] Analysis to Service Engineering: An Empirical Study of Enterprise SOA Implementation,” IEEE Transactions on Services Computing 3, no. 2 (April–June 2010): 145–160.

[Chidamber 94] S. Chidamber and C. Kemerer. “A Metrics Suite for Object-Oriented Design,” IEEE Transactions on Software Engineering]]20, no. 6 (June 1994).

[Chowdury 19] S. Chowdhury, A. Hindle, R. Kazman, T. Shuto, K. Matsui, and Y. Kamei. “GreenBundle: An Empirical Study on the Energy Impact of Bundled]] Processing,” Proceedings of the International Conference on Software Engineering]], May 2019.

[Clements 01a] P. Clements and L. Northrop]]. Software Product Lines. Addison-Wesley, 2001.

[Clements 01b] P. Clements, R. Kazman, and M. Klein. Evaluating Software Architecture]]s. Addison-Wesley, 2001.

[Clements 07] P. Clements, R. Kazman, M. Klein, D. Devesh, S. Reddy, and P. Verma. “The Duties, Skills, and Knowledge of Software Architect]]s,” Proceedings of the Working IEEE/IFIP Conference on Software Architecture]], 2007.

[Clements 10a] Paul Clements, Felix Bachmann, Len Bass, David Garlan, James Ivers, Reed Little, Paulo Merson, Robert Nord, and Judith Stafford. Documenting Software Architecture]]s: Views and Beyond, 2nd ed. Addison-Wesley, 2010.

[Clements 10b] Paul Clements and Len Bass. “Relating Business Goals to Architecturally Significant Requirements for Software Systems,” CMU/SEI-2010-TN-018, May 2010.

[Clements 10c] P. Clements and L. Bass. “The Business Goals Viewpoint,” IEEE Software 27, no. 6 (NovemberDecember 2010): 38–45.

[Clements 16] Paul Clements and Linda Northrop]]. Software Product Lines: Practices and Patterns. Addison-Wesley, 2016.

[Cockburn 04] Alistair Cockburn. Crystal Clear: A Human-Powered Methodology for Small Teams. Addison-Wesley, 2004.

[Cockburn 06] Alistair Cockburn. Agile [[Software Development]]: The Cooperative Game. Addison-Wesley, 2006.

Conway 68] Melvin E. Conway. “How Do Committees Invent?” Datamation 14, no. 4 (1968): 28–31.

[Coplein 10] J. Coplein and G. Bjornvig. Lean Architecture for Agile [[Software Development]]. Wiley, 2010.

[Coulin 19] T. Coulin, M. Detante, W. Mouchère, F. Petrillo. et al. “Software Architecture]] Metrics: A Literature Review,” January 25, 2019, https]]://arxiv.org/abs/1901.09050.

[Cruz 19] L. Cruz and R. Abreu. “Catalog of Energy Patterns for Mobile Applications,” Empirical Software Engineering]] 24 (2019): 2209–2235.

[Cunningham 92] W. Cunningham. “The Wycash Portfolio Management System,” in Addendum to the Proceedings of Object-Oriented Programming]] Systems, Languages, and Applications (OOPSLA), pp. 29–30. ACM Press, 1992.

[CWE 12] The Common Weakness Enumeration. http://cwe.mitre.org/.

[Dean 04] Jeffrey Dean and Sanjay Ghemawat. “Map[[Reduce: Simplified Data Processing on Large Clusters,” Proceedings Operating System Design]] and Implementation, 1994, http://research.google.com/archive/map[[reduce.html.

[Dean 13] Jeffrey Dean and Luiz André Barroso. “The Tail at Scale,” Communications of the ACM 56, no. 2 (February 2013): 74–80.

Dijkstra 68] E. W. Dijkstra. “The Structure of the ‘THE’-Multiprogramming System,” Communications of the ACM 11, no. 5 (1968): 341–346.

Dijkstra 72] Edsger W. [[Dijkstra, Ole-Johan Dahl, and Tony [[Hoare, Structured Programming. Academic Press, 1972: 175–220.

[Dix 04] Alan Dix, Janet Finlay, Gregory Abowd, and Russell Beale. HumanComputer Interaction, 3rd ed. Prentice Hall, 2004.

[Douglass 99] Bruce Douglass. Real-Time Design Patterns: Robust Scalable Architecture]] for Real-Time Systems. Addison-Wesley, 1999.

[Dutton 84] J. M. Dutton and A. Thomas. “Treating Progress Functions as a Managerial Opport[[unity,” Academy of Management Review 9 (1984): 235–247.

[Eickelman 96] N. Eickelman and D. Richardson. “What Makes One Software Architecture]] More Testable Than Another?” in Proceedings of the Second International Software Architecture]] Workshop (ISAW-2), L. Vidal, A. Finkelstein, G. Spanoudakis, and A. L. Wolf, eds., Joint Proceedings of the SIGSOFT ’96 Workshops, San Francisco, October 1996. ACM Press.

[EOSAN 07] “WP 8.1.4 — Define Methodology for Validation within OATA: Architecture Tactics Assessment Process,” eurocontrol.int/valfor/gallery/content/public/OATA-P2-D8.1.4-01%20DMVO%20Architecture%20Tactics%20Assessment%20Process.pdf.

[FAA 00] “System Safety Handbook,” faa.gov/library/manuals/aviation/risk_management/ss_handbook/.

Fairbanks 10] G. Fairbanks. Just Enough Software Architecture]]: A Risk-Driven Approach. Marshall & Brainerd, 2010.

Fairbanks 20] George Fairbanks. “Ur-Technical Debt,” IEEE Software 37, no. 4 (April 2020): 95–98.

[Feiler 06] P. Feiler, R. P. Gabriel, J. Goodenough, R. Linger, T. Longstaff, R. Kazman, M. Klein, L. Northrop]], D. Schmidt, K. Sullivan, and K. Wallnau. Ultra-Large-Scale Systems: The Software Challenge of the Future. sei.cmu.edu/library/assets/ULS_Book20062.pdf.

[Feng 16] Q. Feng, R. Kazman, Y. Cai, R. Mo, and L. Xiao. “An Architecture-centric Approach to Security Analysis,” in Proceedings of the 13th Working IEEE/IFIP Conference on Software Architecture]] (WICSA 2016), 2016.

[Fiol 85] C. M. Fiol and M. A. Lyles. “Organizational Learning,” Academy of Management Review 10, no. 4 (1985):. 803.

[Fonseca 19] A. Fonseca, R. Kazman, and P. Lago. “A Manifesto]] for Energy-Aware Software,” IEEE Software 36 (November/December 2019): 79–82.

Fowler 09] Martin Fowler]]. “TechnicalDebtQuadrant,” https]]://martinfowler.com/bliki/TechnicalDebtQuadrant.html, 2009.

Fowler 10] Martin Fowler]]. “Blue Green Deployment,” https]]://martinfowler.com/bliki/BlueGreenDeployment.html, 2010.

Freeman 09] Steve Freeman and Nat Pryce. Growing Object-Oriented Software, Guided]] by Tests. Addison-Wesley, 2009.

[Gacek 95] Cristina Gacek, Ahmed Abd-Allah, Bradford Clark, and Barry Boehm. “On the Definition of Software System Architecture,” USC/CSE-95-TR-500, April 1995.

[Gagliardi 09] M. Gagliardi, W. Wood, J. Klein, and J. Morley. “A Uniform Approach for System of Systems Architecture Evaluation,” Cross[[talk 22, no. 3 (March/April 2009): 12–15.

[Gajjarby 17] Manish J. Gajjarby. Mobile Sensors and Context-Aware Computing. Morgan Kaufman, 2017.

Gamma 94] E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1994.

[Garlan 93] D. Garlan and M. Shaw. “An Introduction to Software Architecture]],” in Ambriola and Tortola, eds., Advances in Software Engineering]] & Knowledge Engineering, Vol. II. World Scientific Pub., 1993, pp. 1–39.

[Garlan 95] David Garlan, Robert Allen, and John Ockerbloom. “Architectural Mismatch or Why It’s Hard to Build Systems out of Existing Parts,” 17th International Conference on Software Engineering]], April 1995.

[Gilbert 07] T. Gilbert. Human Competence: Engineering Worthy Performance. Pfeiffer, Tribute Edition, 2007.

[Gokhale 05] S. Gokhale, J. Crigler, W. Farr, and D. Wallace. “System [[Availability Analysis Considering Hardware/Software Failure Severities,” Proceedings of the 29th Annual IEEE/NASA Software Engineering]] Workshop (SEW ’05), Greenbelt, MD, April 2005. IEEE, 2005.

[Gorton 10] Ian Gorton. Essential Software Architecture]], 2nd ed. Springer, 2010.

[Graham 07] T. C. N. Graham, R. Kazman, and C. Walmsley. “Agility and Experimentation]]: Practical Techniques for Resolving Architectural Tradeoff]]s,” Proceedings of the 29th International Conference on Software Engineering]] (ICSE 29), Minneapolis, MN, May 2007.

Gray 93] Jim Gray and Andreas Reuter. Distributed Transaction]] Processing: Concepts and Techniques. Morgan Kaufmann]], 1993.

[Grinter 99] Rebecca E. Grinter. “Systems Architecture: Product Designing and Social Engineering]],” in Proceedings of the International Joint Conference on Work Activities Coordination and Collaboration (WACC ’99), Dimitrios Georgakopoulos, Wolfgang Prinz, and Alexander]] L. Wolf, eds. ACM, 1999, pp. 11–18.

[Hamm 04] “Linus [[TorvaldsBenevolent Dictatorship,” BusinessWeek, August 18, 2004, businessweek.com/technology/content/aug2004/tc20040818_1593.htm.

[Hamming 80] R. W. Hamming. Coding and Information [[Theory. Prentice Hall, 1980.

[Hanmer 13] Robert S. Hanmer. Patterns for Fault Tolerant Software, Wiley Software Patterns Series, 2013.

Harms 10] R. Harms and M. Yamartino. “The Economics of the Cloud,” http://economics.uchicago.edu/pdf/Harms_110111.pdf.

Hartman 10] Gregory Hartman. “Attentiveness: Reactivity at Scale,” CMU-ISR-10-111, 2010.

[Hiltzik 00] M. Hiltzik. Dealers of Lightning: Xerox PARC and the Dawn of the Computer Age. Harper Business, 2000.

Hoare 85] C. A. [[R. Hoare. Communicating Sequential Processes. Prentice Hall International Series in Computer Science, 1985.

[Hoffman 00] Daniel M. Hoffman and David M. Weiss. Software Fundamentals]]: Collected Papers by David L. Parnas. Addison-Wesley, 2000.

[Hofmeister 00] Christine Hofmeister, Robert Nord, and Dilip Soni. Applied Software Architecture]]. Addison-Wesley, 2000.

[Hofmeister 07] Christine Hofmeister, Philippe Kruchten, Robert L. Nord, Henk Obbink, Alexander]] Ran, and Pierre American. “A General Model of Software Architecture]] Design Derived from Five Industrial Approaches,” Journal of Systems and Software 80, no. 1 (January 2007): 106–126.

[Hohpe 20] Gregor Hohpe. The Software Architect]] Elevator: Redefining the Architect’s Role in the Digital Enterprise. O'Reilly, 2020.

Howard 04] Michael Howard. “Miti[[gate Security Risks by Minimizing the Code You Expose to Untrusted Users,” MSDN Magazine, http://msdn.microsoft.com/en-us/magazine/cc163882.aspx.

Hubbard 14] D. Hubbard. How to Measure Anything: Finding the Value of Intangibles in Business. Wiley, 2014.

Humble 10] Jez Humble and David Farley. Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation, Addison-Wesley, 2010.

IEEE 94] “IEEE Standard]] for Software Safety Plans,” STD-1228-1994, http://standards.ieee.org/findstds/standard/1228-1994.html.

IEEE 17] “IEEE Guide: Adoption of the Project Management]] Institute (PMI) Standard: A Guide to the Project Management]] Body of Knowledge (PMBOK Guide), Sixth Edition,” projectsmart.co.uk/pmbok.html.

[IETF 04] Internet Engineering Task Force. “RFC 3746, Forwarding]] and Control Element Separation (ForCES) Framework,” 2004.

[IETF 05] Internet Engineering Task Force. “RFC 4090, Fast Reroute Extensions to RSVP-TE for LSP Tunnels,” 2005.

[IETF 06a] Internet Engineering Task Force. “RFC 4443, Internet Control Message Protocol]] (ICMPv6) for the Internet Protocol]] Version 6 (IPv6) Specification,” 2006.

[IETF 06b] Internet Engineering Task Force. “RFC 4379, Detecting]] Multi-Protocol Label Switched (MPLS) Data Plane Failures,” 2006.

[INCOSE 05] International Council on Systems Engineering]]. “System Engineering Competency]] Framework 2010–0205,” incose.org/ProductsPubs/products/competenciesframework.aspx.

[INCOSE 19] International Council on Systems Engineering]], “Feature-Based Systems and Software Product Line Engineering: A Primer]],” Technical Product INCOSE-TP-2019-002-03-0404, https]]://connect.incose.org/Pages/Product-Details.aspx?ProductCode=PLE_Primer_2019.

[Ingeno 18] Joseph Ingeno. Software Architect]]’s Handbook. Packt Publishing, 2018.

ISO 11] International Organization for Standardization. “ISO/IEC 25010: 2011 Systems and Software Engineering]] — Systems and Software Quality Requirements and Evaluation (SQuaRE) — System and Software Quality Models.”

Jacobson 97] I. Jacobson, M. Griss, and P. Jonsson. Software Reuse: Architecture, Process, and Organization for Business Success. Addison-Wesley, 1997.

[Johnston 19] Eric Johnston, Nic Harrigan, and Mercedes Gimeno-Segovia, Programming Quantum [[Computers. O'Reilly, 2019.

[Kanwal 10] F. Kanwal, K. Junaid, and M.A. Fahiem. “A Hybrid Software Architecture]] Evaluation Method for FDD: An Agile Process Mode,” 2010 International Conference on Computational Intelligence and Software Engineering]] (CiSE), December 2010, pp. 1–5.

Kaplan 92] R. Kaplan and D. Norton. “The Balanced Scorecard: Measures That Drive Performance,” government intelligence center Harvard Business Review (January/February 1992): 71–79.

[Karat 94] Claire Marie Karat. “A Business Case Approach to Usability Cost Justification,” in Cost-Justifying Usability, R. Bias and D. Mayhew, eds. Academic Press, 1994.

Kazman 94] Rick Kazman, Len Bass, Mike Webb, and Gregory Abowd. “SAAM: A Method for Analyzing the Properties of Software Architecture]]s,” in Proceedings of the 16th International Conference on Software Engineering]] (ICSE ’94). Los Alamitos, CA. IEEE Computer Society Press, 1994, pp. 81–90.

Kazman 99] R. Kazman and S. J. Carriere. “Playing Detective]]: Reconstructing Software Architecture]] from Available Evidence,” Automated Software Engineering]] 6, no 2 (April 1999): 107–138.

Kazman 01] R. Kazman, J. Asundi, and M. Klein. “Quantifying the Costs and Benefits of Architectural Decisions,” Proceedings of the 23rd International Conference on Software Engineering]] (ICSE 23), Toronto, Canada, May 2001, pp. 297–306.

Kazman 02] R. Kazman, L. O’Brien, and C. Verhoef. “Architecture Reconstruction Guidelines, Third Edition]],” CMU/SEI Technical Report, CMU/SEI-2002-TR-034, 2002.

Kazman 04] R. Kazman, P. Kruchten, R. Nord, and J. Tomayko. “Integrating Software-Architecture-Centric Methods into the Rational Unified Process,” Technical Report CMU/SEI-2004-TR-011, July 2004, sei.cmu.edu/library/abstracts/reports/04tr011.cfm.

Kazman 05] Rick Kazman and Len Bass. “Categorizing Business Goals for Software Architecture]]s,” CMU/SEI-2005-TR-021, December 2005.

Kazman 09] R. Kazman and H.-M. Chen. “The Metropolis]] Model: A New Logic for the Development of Crowdsourced Systems,” Communications of the ACM (July 2009): 76–84.

Kazman 15] R. Kazman, Y. Cai, R. Mo, Q. Feng, L. Xiao, S. Haziyev, V. Fedak, and A. Shapochka. “A Case [[Study in Locating the Architectural Roots of Technical Debt,” in Proceedings of the International Conference on Software Engineering]] (ICSE) 2015, 2015.

Kazman 18] R. Kazman, S. Haziyev, A. Yakuba, and D. Tamburri. “Managing Energy Consumption as an Architectural Quality Attribute,” IEEE Software 35, no. 5 (2018).

Kazman 20a] R. Kazman, P. Bianco, J. Ivers, and J. Klein. “Integrability,” CMU/SEI-2020-TR-001, 2020.

Kazman 20b] R. Kazman, P. Bianco, J. Ivers, and J. Klein. “Maintainability]],” CMU/SEI-2020-TR-006, 2020.

[Kircher 03] Michael Kircher and Prashant Jain. Pattern-Oriented Software Architecture]] Volume 3: Patterns for Resource Management. Wiley, 2003.

Klein 10] J. Klein and M. Gagliardi. “A Workshop on Analysis and Evaluation of Enterprise Architectures,” CMU/SEI-2010-TN-023, sei.cmu.edu/reports/10tn023.pdf.

Klein 93] M. Klein, T. Ralya, B. Pollak, R. Obenza, and M. Gonzalez Harbour. A Practitioner’s Handbook for Real-Time Systems Analysis. Kluwer Academic, 1993.

[Koopman 10] Phil Koopman. Better Embedded System]] Software. Drumnadrochit Education, 2010.

[Koziolet 10] H. Koziolek. “Performance Evaluation of Component-Based]] Software Systems: A Survey,” Performance Evaluation 67, no. 8 (August 2010).

[Kruchten 95] P. B. Kruchten. “The 4+1 View Model of Architecture,” IEEE Software 12, no. 6 (November 1995): 42–50.

[Kruchten 03] Philippe Kruchten. The Rational Unified Process: An Introduction, 3rd ed. Addison-Wesley, 2003.

[Kruchten 04] Philippe Kruchten. “An Ontology of Architectural Design Decisions,” in Jan Bosch, ed., Proceedings of the 2nd Workshop on Software Variability Management, Groningen, Netherlands, December 3–4, 2004.

[Kruchten 19] P. Kruchten, R. Nord, and I. Ozkaya. Managing Technical Debt: Reducing Friction in Software Development]]. Addison-Wesley, 2019.

Kumar 10a] K. Kumar and T. V. Prabhakar. “Pattern-Oriented Knowledge Model for Architecture Design,” in Pattern Languages of Programs Conference 2010, Reno/Tahoe, NV: October 15–18, 2010.

Kumar 10b] Kiran Kumar and T. V. Prabhakar. “Design Decision Topology Model for Pattern Relationship Analysis,” Asian]] Conference on Pattern Languages of Programs 2010, Tokyo, Japan, March 15–17, 2010.

[Ladas 09] Corey Ladas. Scrumban: Essays on Kanban Systems for Lean Software Development]]. Modus Cooperandi Press, 2009.

Lamport 98] Leslie Lamport. “The Part-Time Parliament,” ACM Transactions on Computer System]]s 16, no. 2 (May 1998): 133–169.

[Lampson 11] Butler Lampson, “Hints and Principles for Computer System]] Design]],” https]]://arxiv.org/pdf/2011.02455.pdf.

[Lattanze 08] Tony Lattanze. Architecting Software Intensive Systems: A Practitioner’s Guide. Auerbach Publications, 2008.

[Le Traon 97] Y. Le Traon and C. Robach. “Testability Measurement]]s for Data Flow Designs,” Proceedings of the 4th International Symposium on Software Metrics (METRICS ’97). Washington, DC: November 1997, pp. 91–98.

[Leveson 04] Nancy G. Leveson. “The Role of Software in Space[[craft Accidents,” Journal of Space[[craft and Rockets 41, no. 4 (July 2004): 564–575.

[Leveson 11] Nancy G. Leveson. Engineering a Safer World: Systems Thinking]] Applied to Safety. MIT Press, 2011.

[Levitt 88] B. Levitt and J. March. “Organizational Learning,” Annual Review of Sociology 14 (1988): 319–340.

[Lewis 14] J. Lewis and M. Fowler. “Microservices,” https]]://martinfowler.com/articles/microservices.html, 2014.

Liu 00] Jane Liu. Real-Time Systems. Prentice Hall, 2000.

Liu 09] Henry Liu. Software Performance and Scalability: A Quantitative Approach. Wiley, 2009.

[Luftman 00] J. Luftman. “Assessing Business Alignment Maturity,” Communications of AIS 4, no. 14 (2000).

[Lyons 62] R. E. Lyons and W. Vanderkulk. “The Use of Triple-Modular Redundancy to Improve Computer Reliability,” IBM Journal of Research and Development]] 6, no. 2 (April 1962): 200–209.

[MacCormack 06] A. MacCormack, J. Rusnak, and C. Baldwin. “Exploring the Structure of Complex Software Design]]s: An Empirical Study of Open Source]] and Proprietary Code,” Management Science 52, no 7 (July 2006): 1015–1030.

[MacCormack 10] A. MacCormack, C. Baldwin, and J. Rusnak. “The Architecture of Complex System]]s: Do Core-Periphery Structures Dominate?” MIT Sloan Research Paper no. 4770-10, hbs.edu/research/pdf/10-059.pdf.

[Malan 00] Ruth Malan and Dana Bredemeyer. “Creating an Architectural Vision: Collecting Input,” July 25, 2000, bredemeyer.com/pdf_files/vision_input.pdf.

[Maranzano 05] Joseph F. Maranzano, Sandra A. Rozsypal, Gus H. Zimmerman, Guy W. Warnken, Patricia E. Wirth, and David M. Weiss. “Architecture Reviews: Practice and Experience,” IEEE Software (March/April 2005): 34–43.

Martin 17] Robert C. Martin. Clean Architecture]]: A Craftsman’s Guide to Software Structure and Design. Pearson, 2017.

[Mavis 02] D. G. Mavis. “Soft Error Rate Mitigation Techniques for Modern Microcircuits,” in 40th Annual Reliability Physics Symposium Proceedings, April 2002, Dallas, TX. IEEE, 2002.

[McCall 77] J. A. McCall, P. K. Richards, and G. F. Walters. Factors in Software Quality. Griffiths Air Force Base, NY: Rome Air Development Center Air Force Systems Command.

McConnell 07] Steve McConnell. “Technical Debt,” construx.com/10x_Software_Development/Technical_Debt/, 2007.

[McGregor 11] John D. McGregor, J. Yates Monteith, and Jie Zhang. “Quantifying Value in Software Product Line Design,” in Proceedings of the 15th International Software Product Line Conference, Volume 2 (SPLC ’11), Ina Schaefer, Isabel John, and Klaus Schmid, eds.

[Mettler 91] R. Mettler. “Frederick C. Lindvall,” in Memorial Tributes: National Academy of Engineering, Volume 4. National Academy of Engineering, 1991, pp. 213–216.

[Mo 15] R. Mo, Y. Cai, R. Kazman, and L. Xiao. “Hotspot Patterns: The Formal Definition and Automatic Detection of Architecture Smells,” in Proceedings of the 12th Working IEEE/IFIP Conference on Software Architecture]] (WICSA 2015), 2015.

[Mo 16] R. Mo, Y. Cai, R. Kazman, L. Xiao, and Q. Feng. “De[[coupling Level: A New Metric for Architectural Maintenance Complexity]],” Proceedings of the International Conference on Software Engineering]] (ICSE) 2016, Austin, TX, May 2016.

[Mo 18] R. Mo, W. Snipes, Y. Cai, S. Ramaswamy, R. Kazman, and M. Naedele. “Experiences Applying Automated Architecture Analysis Tool Suite]]s,” in Proceedings of Automated Software Engineering]] (ASE) 2018, 2018.

Moore 03] M. Moore, R. Kazman, M. Klein, and J. Asundi. “Quantifying the Value of Architecture Design Decisions: Lessons from the Field,” Proceedings of the 25th International Conference on Software Engineering]] (ICSE 25), Portland, OR, May 2003, pp. 557–562.

[Morelos-Zaragoza 06] R. H. Morelos-Zaragoza. The Art of Error-Correcting Coding, 2nd ed. Wiley, 2006.

[Muccini 03] H. Muccini, A. Bertolino, and P. Inverardi. “Using Software Architecture]] for Code Testing]],” IEEE Transactions on Software Engineering]] 30, no. 3 (2003): 160–171.

[Muccini 07] H. Muccini. “What Makes Software Architecture]]-Based Testing Distinguishable,” in Proceedings of the Sixth Working IEEE/IFIP Conference on Software Architecture]], WICSA 2007, Mumbai, India, January 2007.

Murphy 01] G. Murphy, D. Notkin, and K. Sullivan. “Software Reflexion Models: Bridging the Gap between Design and Implementation,” IEEE Transactions on Software Engineering]] 27 (2001): 364–380.

[NASEM 19] National Academies of Sciences, Engineering, and Medicine. Quantum Computing: Progress and Prospects. National Academies Press, 2019. https]]://doi.org/10.17226/25196.

Newman 15] Sam Newman]]. Building Microservices: Designing Fine-Grained Systems. O'Reilly, 2015.

[Nielsen 08] Jakob Nielsen. “Usability ROI Declining, But Still Strong,” useit.com/alertbox/roi.html.

NIST 02] National Institute of Standards and Technology. “Security Requirements for Cryptographic Modules,” FIPS Pub. 140-2, http://csrc.nist.gov/publications/fips/fips140-2/fips1402.pdf.

NIST 04] National Institute of Standards and Technology. “Standards for Security Categor-ization of Federal Information [[Systems,” FIPS Pub. 199, http://csrc.nist.gov/publications/fips/fips199/FIPS-PUB-199-final.pdf.

NIST 06] National Institute of Standards and Technology. “Minimum Security Requirements for Federal Information and Information [[Systems,” FIPS Pub. 200, http://csrc.nist.gov/publications/fips/fips200/FIPS-200-final-march.pdf.

NIST 09] National Institute of Standards and Technology. “800-53 v3 Recommended Security Controls for Federal Information [[Systems and Organizations,” August 2009, http://csrc.nist.gov/publications/nistpubs/800-53-Rev3/sp800-53-rev3-final.pdf.

[Nord 04] R. Nord, J. Tomayko, and R. Wojcik. “Integrating Software Architecture]]-Centric Methods into Extreme Programming (XP),” CMU/SEI-2004-TN-036. Software Engineering]] Institute, Carnegie Mellon University, 2004.

Nygard 18] Michael T. Nygard. Release It!: Design and Deploy Production-Ready Software, 2nd ed. Pragmatic Programmers, 2018.

[Obbink 02] H. Obbink, P. Kruchten, W. Kozaczynski, H. Postema, A. Ran, L. Dominic, R. Kazman, R. Hilliard, W. Tracz, and E. Kahane. “Software Architecture]] Review and Assessment (SARA) Report, Version 1.0,” 2002, http://pkruchten.wordpress.com/architecture/SARAv1.pdf/.

[O’Brien 03] L. O’Brien and C. Stoermer. “Architecture Reconstruction Case [[Study,” CMU/SEI Technical Note, CMU/SEI-2003-TN-008, 2003.

[ODUSD 08] Office of the Deputy Under Secretary of Defense for Acquisition and Technology. “Systems Engineering]] Guide for Systems of Systems, Version 1.0,” 2008, acq.osd.mil/se/docs]]/SE-Guide-for-SoS.pdf.

[Oki 88] Brian Oki and Barbara Liskov. “Viewstamped Replication: A New Primary Copy Method to Support Highly-[[Available Distributed System]]s,” PODC ‘88: Proceedings of the Seventh]] Annual ACM Symposium on Principles of Distributed Computing, January 1988, pp. 8–17, https]]://doi.org/10.1145/62546.62549.

[Palmer 02] Stephen Palmer and John Felsing. A Practical Guide to Feature-Driven Development. Prentice Hall, 2002.

[Pang 16] C. Pang, A. Hindle, B. Adams, and A. Hassan. “What Do Programmers Know about Software Energy Consumption?,” IEEE Software 33, no. 3 (2016): 83–89.

[Paradis 21] C. Paradis, R. Kazman, and D. Tamburri. “Architectural Tactics for Energy Efficiency: Review of the Literature and Research Roadmap,” Proceedings of the Hawaii International Conference on System Sciences (HICSS) 54 (2021).

[Parnas 72] D. L. Parnas. “On the Criteria to Be Used in Decomposing Systems into Modules,” Communications of the ACM 15, no. 12 (December 1972).

[Parnas 74] D. Parnas. “On a ‘Buzzword]]’: Hierarchical Structure,” in Proceedings of IFIP Congress 74, pp. 336–339. North Holland Publishing Company, 1974.

[Parnas 76] D. L. Parnas. “On the Design and Development of Program Families,” IEEE Transactions on Software Engineering]], SE-2, 1 (March 1976): 1–9.

[Parnas 79] D. Parnas. “Designing Software for Ease of Extension and Contraction,” IEEE Transactions on Software Engineering]], SE-5, 2 (1979): 128–137.

[Parnas 95] David Parnas and Jan Madey. “Functional Documents for Computer System]]s,” in Science of Computer Programming]]. Elsevier, 1995.

[Paulish 02] Daniel J. Paulish. Architecture-Centric Software Project Management]]: A Practical Guide. Addison-Wesley, 2002.

[Pena 87] William Pena. Problem Seeking: An Architectural Programming Primer]]. AIA Press, 1987.

Perry 92] Dewayne E. Perry and Alexander]] L. Wolf. “Foundations for the Study of Software Architecture]],” SIGSOFT Software Engineering]] Notes 17, no. 4 (October 1992): 40–52.

[Pettichord 02] B. Pettichord. “Design for Testability,” Pacific Northwest Software Quality Conference, Portland, Oregon, October 2002.

Procaccianti 14] G. Procaccianti, P. Lago, and G. Lewis. “A Catalogue of Green Architectural Tactics for the Cloud,” in IEEE 8th International Symposium on the Maintenance and Evolution of Service-Oriented and Cloud-Based]] Systems, 2014, pp. 29–36.

[Powel Douglass 99] B. Powel Douglass. Doing Hard Time: Developing Real-Time Systems with UML, Objects, Frameworks, and Patterns. Addison-Wesley, 1999.

[Raiffa 00] H. Raiffa & R. Schlaifer. Applied Statistical]] Decision Theory. Wiley, 2000.

[SAE 96] SAE International, “ARP-4761: Guidelines and Methods for Conducting the Safety Assessment Process on Civil Airborne Systems and Equipment,” December 1, 1996, sae.org/standards/content/arp4761/.

[Sangwan 08] Raghvinder Sangwan, Colin Neill, Matthew Bass, and Zakaria El Houda. “Integrating a Software Architecture]]-Centric Method into Object-Oriented Analysis and Design,” Journal of Systems and Software 81, no. 5 (May 2008): 727–746.

[Sato 14] D. Sato. “Canary Deployment,” https]]://martinfowler.com/bliki/CanaryRelease.html, 2014.

[Schaarschmidt 20] M. Schaarschmidt, M. Uelschen, E. Pulvermuellerm, and C. Westerkamp. “Framework of Software Design Patterns for Energy-Aware Embedded System]]s,” Proceedings of the 15th International Conference on Evaluation of Novel Approaches to Software Engineering]] (ENASE 2020), 2020.

[Schmerl 06] B. Schmerl, J. Aldrich, D. Garlan, R. Kazman, and H. Yan. “Discovering]] Architectures from Running Systems,” IEEE Transactions on Software Engineering]] 32, no. 7 (July 2006): 454–466.

Schmidt 00] Douglas Schmidt, M. Stal, H. Rohnert, and F. Buschmann. Pattern-Oriented Software Architecture]]: Patterns for Concurrent and Networked Objects. Wiley, 2000.

Schmidt 10] Klaus Schmidt. High [[Availability and Disaster Re[[covery]]: Concepts, Design, Implementation. Springer, 2010.

[Schneier 96] B. Schneier. Applied Cryptography. Wiley, 1996.

[Schneier 08] Bruce Schneier. Schneier on Security. Wiley, 2008.

[Schwaber 04] Ken Schwaber. Agile Project Management]] with Scrum. Microsoft Press, 2004.

[Scott 09] James Scott and Rick Kazman. “Realizing and Refining Architectural Tactics: Availability,” Technical Report CMU/SEI-2009-TR-006, August 2009.

Seacord 13] Robert Seacord. Secure Coding in C and C++. Addison-Wesley, 2013.

[SEI 12] Software Engineering]] Institute. “A Framework for Software Product Line Practice, Version 5.0,” sei.cmu.edu/productlines/frame_report/PL.essential.act.htm.

[Shaw 94] Mary Shaw. “Procedure Calls Are the Assembly Language]] of Software Interconnections: Connectors Deserve First-Class Status,” Carnegie Mellon University Technical Report, 1994, http://repository.cmu.edu/cgi/viewcontent.cgi?article=1234&context=sei.

[Shaw 95] Mary Shaw. “Beyond Objects: A Software Design]] Paradigm Based on Process Control,” ACM Software Engineering]] Notes 20, no. 1 (January 1995): 27–38.

Smith 01] Connie U. Smith and Lloyd G. Williams. Performance Solutions: A Practical Guide to Creating Responsive, Scalable Software. Addison-Wesley, 2001.

[Soni 95] Dilip Soni, Robert L. Nord, and Christine Hofmeister. “Software Architecture]] in Industrial Applications,” International Conference on Software Engineering]] 1995, April 1995, pp. 196–207.

Stonebraker 09] M. Stonebraker. “The ‘NoSQLDiscussion]] Has No[[thing to Do with SQL,” http://cacm.acm.org/blogs/blog-cacm/50678-the-nosql-discussion]]-has-no[[thing-to-do-with-sql/fulltext.

Stonebraker 10a] M. Stonebraker. “SQL Databases v. NoSQL Databases,” Communications of the ACM 53, no 4 (2010): 10.

Stonebraker 10b] M. Stonebraker, D. Abadi, D. J. Dewitt, S. Madden, E. Paulson, A. Pavlo, and A. Rasin. “Map[[Reduce and Parallel DBMSs,” Communications of the ACM 53 (2010): 6.

Stonebraker 11] M. Stonebraker. “Stonebraker on NoSQL and Enterprises,” Communications of the ACM 54, no. 8 (2011): 10.

Storey 97] M.-A. Storey, K. Wong, and H. Müller. “Rigi: A Visualization Environment for Reverse Engineering]] (Research Demonstration]] Summary),” 19th International Conference on Software Engineering]] (ICSE 97), May 1997, pp. 606–607. IEEE Computer Society Press.

[Svahnberg 00] M. Svahnberg and J. Bosch. “Issues Concerning Variability in Software Product Lines,” in Proceedings of the Third International Workshop on Software Architecture]]s for Product Families, Las Palmas de Gran Canaria, Spain, March 15–17, 2000, pp. 50–60. Springer, 2000.

Taylor 09] R. Taylor, N. Medvidovic, and E. Dashofy. Software Architecture]]: Foundations, Theory, and Practice. Wiley, 2009.

[Telcordia 00] Telcordia. “GR-253-CORE, Syn[[chronous]] Optical Network (SONET) Transport Systems: Common Generic Criteria.” 2000.

[Urdangarin 08] R. Urdangarin, P. Fernandes, A. Avritzer, and D. Paulish. “Experiences with Agile Practices in the Global Studio Project,” Proceedings of the IEEE International Conference on Global Software Engineering]], 2008.

[USDOD 12] U.S. Department of Defense, “Standard Practice: System Safety, MIL-STD-882E,” May 11, 2012, dau.edu/cop/armyesoh/DAU%20Sponsored%20Documents/MIL-STD-882E.pdf.

[Utas 05] G. Utas. Robust Communications Software: Extreme Availability, Reliability, and Scalability for Carrier-Grade Systems. Wiley, 2005.

[van der Linden 07] F. van der Linden, K. Schmid, and E. Rommes. Software Product Lines in Action. Springer, 2007.

[van Deursen 04] A. van Deursen, C. Hofmeister, R. Koschke, L. Moonen, and C. Riva. “Symphony: View-Driven Software Architecture]] Reconstruction,” Proceedings of the 4th Working IEEE/IFIP Conference on Software Architecture]] (WICSA 2004), June 2004, Oslo, Norway. IEEE Computer Society.

[van Vliet 05] H. van Vliet. “The GRIFFIN Project: A GRId For inFormatIoN about Architectural Knowledge,” http://griffin.cs.vu.nl/, Vrije Universiteit, Amsterdam, April 16, 2005.

[Verizon 12] “Verizon 2012 Data [[Breach Investigations Report,” verizonbusiness.com/resources/reports/rp_data-[[breach-investigations-report-2012_en_xg.pdf.

[Vesely 81] W.E. Vesely, F. F. Goldberg, N. H. Roberts, and D. F. Haasl. “Fault Tree Handbook,” nrc.gov/reading-rm/doc-collections/nuregs/staff/sr0492/sr0492.pdf.

[Vesely 02] William Vesely, Michael Stamatelatos, Joanne Dugan, Joseph Fragola, Joseph Minarick III, and Jan Railsback. “Fault Tree Handbook with Aerospace Applications,” hq.nasa.gov/office/codeq/doctree/fthb.pdf.

Viega 01] John Viega and Gary McGraw. Building Secure Software: How to Avoid Security Problems the Right Way. Addison-Wesley, 2001.

[Voas 95] Jeffrey M. Voas and Keith W. Miller. “Software Test]]ability: the New Verification,” IEEE Software 12, no. 3 (May 1995): 17–28.

Von [[Neumann 56] J. Von [[Neumann. “Probabi[[listic]] Logics and the Synthesis of Reliable Organisms from Unreliable Components,” in Automata Studies, C. E. Shannon and J. McCarthy, eds. Princeton University Press, 1956.

[Wojcik 06] R. Wojcik, F. Bachmann, L. Bass, P. Clements, P. Merson, R. Nord, and W. Wood. “Attribute-Driven Design (ADD), Version 2.0,” Technical Report CMU/SEI-2006-TR-023, November 2006, sei.cmu.edu/library/abstracts/reports/06tr023.cfm.

[Wood 07] W. Wood. “A Practical Example of Applying Attribute-Driven Design (ADD), Version 2.0,” Technical Report CMU/SEI-2007-TR-005, February 2007, sei.cmu.edu/library/abstracts/reports/07tr005.cfm.

[Woods 11] E. Woods and N. Rozanski. Software Systems Architecture: Working with Stakeholders Using Viewpoints and Perspectives, 2nd ed. Addison-Wesley, 2011.

Wozniak 07] J. Wozniak, V. Baggiolini, D. Garcia Quintas, and J. Wenninger. “Software Inter-locks System,” Proceedings of ICALEPCS07, http://ics-web4.sns.ornl.gov/icalepcs07/WPPB03/WPPB03.PDF.

[Wu 04] W. Wu and T. Kelly, “Safety Tactics for Software Architecture]] Design,” Proceedings of the 28th Annual International Computer Software and Applications Conference (COMPSAC), 2004.

[Wu 06] W. Wu and T. Kelly. “Deriving Safety Requirements as Part of System Architecture Definition,” in Proceedings of 24th International System Safety Conference. Albuquerque, NM: System Safety Society, August 2006.

[Xiao 14] L. Xiao, Y. Cai, and R. Kazman. “Titan: A Toolset That Connects Software Architecture]] with Quality Analysis,” Proceedings of the 22nd ACM SIGSOFT International Symposium on the Foundations of Software Engineering]] (FSE 2014), 2014.

[Xiao 16] L. Xiao, Y. Cai, R. Kazman, R. Mo, and Q. Feng. “Identifying and Quantifying Architectural Debts,” Proceedings of the International Conference on Software Engineering]] (ICSE) 2016, 2016.

[Yacoub 02] S. Yacoub and H. Ammar. “A Methodology for Architecture-Level Reliability Risk Analysis,” IEEE Transactions on Software Engineering]] 28, no. 6 (June 2002).

[Yin 94] James Bieman and Hwei Yin. “Designing for Software Test]]ability Using Automated Oracles,” Proceedings International Test Conference, September 1992, pp. 900–907.

Fair Use Source: Software Architecture in Practice, 4th Edition by Len Bass, Paul Clements, Rick Kazman

BIBLIO Software Architecture in Practice, 2021-7, 4th Ed, Len Bass, Paul Clements, Rick Kazman


Software Architecture: Software Architects

Monolithic Architecture, Microservices Architecture, Service-Oriented Architecture (SOA), Event-Driven Architecture, Layered Architecture, Client-Server Architecture, Peer-to-Peer Architecture, Serverless Architecture, Cloud-Native Architecture, Domain-Driven Design (DDD), Hexagonal Architecture, Clean Architecture, Onion Architecture, CQRS (Command Query Responsibility Segregation), Event Sourcing, API Gateway Pattern, Backend for Frontend (BFF) Pattern, Database Sharding, Data Lake Architecture, Big Data Architecture, IoT Architecture, Blockchain Architecture, Artificial Intelligence and Machine Learning Architecture, High Availability Systems, Scalable Web Architecture, Security Architecture, Network Architecture, Infrastructure as Code (IaC), Continuous Integration/Continuous Deployment (CI/CD), DevOps Practices, Test-Driven Development (TDD), Behavior-Driven Development (BDD), System Design Principles, Design Patterns, Architectural Patterns, Performance Optimization, Load Balancing, Caching Strategies, Data Partitioning, Rate Limiting, API Design, Micro Frontends, Cross-Cutting Concerns, Versioning Strategies, Dependency Injection, Modular Design, Software Design Principles (SOLID), Reactive Systems, Distributed Systems Design, Failover Strategies, Disaster Recovery Planning, Data Consistency Models, Concurrency Models, Message Queuing, Stream Processing, Workflow Engines, Business Process Management (BPM), Enterprise Integration Patterns, Data Integration Patterns, Mobile App Architecture, Game Architecture, Virtual Reality (VR) Architecture, Augmented Reality (AR) Architecture, Content Delivery Networks (CDN), Edge Computing, Fog Computing, Hybrid Cloud Architecture, Multi-Tenant Architecture, OAuth and OpenID Connect, Web Security Architecture, Cryptographic Architecture, Compliance and Regulatory Frameworks, Architecture Review Processes, Technical Debt Management, Architectural Refactoring, Monitoring and Observability, Logging Strategies, Feature Toggling, A/B Testing, Blue-Green Deployments, Canary Releases, Service Mesh, Containerization and Orchestration, Kubernetes Architecture, Docker Architecture, Function as a Service (FaaS), Platform as a Service (PaaS), Infrastructure as a Service (IaaS), Software as a Service (SaaS), Blockchain as a Service (BaaS), Artificial Intelligence as a Service (AIaaS), Machine Learning Operations (MLOps), DataOps, Architecture Decision Records (ADR), Technical Writing for Architects, Stakeholder Management, Architecture Governance, Cost Optimization in Architecture, Sustainability in Software Architecture, Ethics in Software Architecture, Future Trends in Software Architecture

Software Architecture and DevOps - Software Architecture and SRE - Software Architecture of CI/CD, Cloud Native Software Architecture - Microservices Software Architecture - Serverless Software Architecture, Software Architecture and Security - Software Architecture and DevSecOps, Software Architecture and Functional Programming, Software Architecture of Concurrency, Software Architecture and Data Science - Software Architecture of Databases, Software Architecture of Machine Learning, Software Architecture Bibliography (Fundamentals of Software Architecture by Mark Richards and Neal Ford, Software Architecture - The Hard Parts), Software Architecture Courses, Software Architecture Glossary, Awesome Software Architecture, Software Architecture GitHub, Software Architecture Topics

SHORTEN THIS fork from navbar_golang_detailed:

Programming languages, abstraction, agile, ahead-of-time (AOT), AI, algebraic data types, algorithms, Android, anonymous functions, anonymous methods, AOP, AOT, APIs, arguments, ARM, arithmetic, arrays, aspect-oriented, assignment, associative arrays, async, asynchronous callbacks, asynchronous programming, automatic variables, automation, Avro, backend, backwards compatibility, block scoped, Booleans, Boolean expressions, buffer overflow, builds, built-in types, bytecode, cache, caching, call by reference, call by value, callbacks, call stack, casting, characters, Chocolatey, CI/CD, classes, CLI, client-side, closures, cloud (Cloud Native-AWS-Azure-GCP-IBM Cloud-IBM Mainframe-OCI), code smells, coercion, collections, command-line interface, commands, comments, compilers, complex numbers, composition, concurrency, concurrent programming, conditional expressions, conferences, constants, constructors, containers, control flow, control structures, coroutines, crashes, creators, currying, databases, data manipulation, data persistence, data science, data serialization, data structures, data synchronization, dates, dates and times, deadlocks, debugging, declarative, deferred callbacks, delegates, delegation, dependency injection, design patterns, designers, destructors, DevOps, dictionaries, dictionary comprehensions, DI, distributed software, distributions, distros, DL, Docker, do-while, DSL, duck typing, dynamic binding, dynamic scope, dynamically scoped, dynamically typed, dynamic variables, eager evaluation, embedded, encapsulation, encryption, enumerated types, enumeration, enums, environment variables, errors, error handling, evaluation strategy, event-driven, event handlers, event loops, exception handling, executables, execution, expressions, FaaS, Facebook, fibers, fields, file input/output, file synchronization, file I/O, filter, first-class functions, fold, foreach loops, fork-join, floating-point, FP, frameworks, FreeBSD, frontend, functions, functional, functional programming, function overloading, garbage collection, generators, generator expressions, generics, generic programming, GitHub, global variables, GraphQL, gRPC, GUI, hashing, heap, heap allocation, hello world, higher-order functions, history, Homebrew, HTTP, idempotence, IDEs, import, imperative, immutable values, immutability, inheritance, influenced, influenced by, installation, integers, integration testing, interfaces, internationalization, interpreters, interprocess communication (IPC), iOS, IoT, IPCs, ISO Standard, iteration, JetBrains, JIT, JSON, JSON-RPC, JSON Web Tokens, JSON Web Token (JWT), Just-in-time (JIT), JWT, K8S, keywords, lambdas, lambda expressions, lambda functions, language spec, lazy evaluation, lexically scoped, lexical scoping, libraries, linters, Linux, lists, list comprehensions, literals, localization, local variables, locks, logging, logo, looping, loosely typed, loose typing, macOS, map, mascot, math, member variables, memoization, memory addressing, memory allocation, malloc, memory management, memory safety, message queues, metaclasses, meta-programming, methods, method overloading, MFA, ML, microservices, Microsoft, mobile dev, modules, modulo operators, monitoring, multiprocessing, multi-threaded, mutable values, mutability, mutex (mutual exclusion), namespaces, natural language processing (NLP), networking, network programming, NLP, non-blocking, non-blocking I/O, null, null reference, null coalescing operators, numbers, number precision, OAuth, objects, object code, object comparisons, object creation, object creators, object destruction, object destructors, object lifetime, object-oriented constructors, object-oriented programming, object serialization, observability, OOP, operators, operator overloading, optimizations, organizations, ORMs, packages, package managers, pass by reference, pass by value, parallel computing, parallel programming, parallelism, parameters, people, performance, persistence, pipelines, pointers, polymorphism, primitives, primitive data types, probability, procedural, processes, producer-consumer, programmers, programming, programming paradigm, program structure, program termination, Protocol Buffers (Protobuf), Protocol Buffers, Protobuf, proxies, public-key encryption, PKI, pure functions, race conditions, random, reactive, readability, records, recursion, reentrancy, refactoring, reference counting, reference types, referential transparency, reflection, regex, remote procedure calls (RPC), REPL, reserved words, REST, REST APIs, RHEL, RPCs, runtimes, safe navigation operators, SDK, secrets, security, serialization, serverless, server-side, sets, set comprehensions, side effects, signed integers, SMTP, Snapcraft, social media, sockets, source code, source-to-source compiler, SQL, SSL - SSL-TLS, Single sign-on (SSO), SSO, StackOverflow, stack, stack allocation, Stack overflow, standards, standard errors, standard input, standard library, standard operators, standard output, state, statements, strings, string concatenation, string functions, string operations, scheduling, scientific notation, scope, scope rules, scoping, scripting, static analyzers, statically scoped, static scoping, statically typed, static variables, statistics, strongly typed, structural typing, synchronization, syntax, systems programming, TCP/IP, TDD, testing, test frameworks, threads, thread-local storage (TLS), TLS, thread locking, thread locks, thread safety, thread scheduling, thread synchronization, times, timers, to JavaScript, tools, toolchain, transpiler, transpiling to JavaScript, truth values, tuples, type checking, type conversion, type inference, type safety, type system, web dev, while loops, work stealing, values, value types, variables, variable lifetime, variable scope, versions, virtual environments, virtual machine, Ubuntu, Unicode, unit testing, unsigned integers, usability, weak typing, weakly typed, Windows, wrappers, written using, x86-64-AMD64, XML, YAML;

topics-courses-books-docs.

. (navbar_software_architecture - see also navbar_microservices, navbar_design_patterns, navbar_programming_detailed - Based on MASTER navbar_golang_detailed. navbar_programming is the shorter one.

Programming: Programming languages

Variables and Data Types, Control Structures, Functions and Methods, Object-Oriented Programming (OOP), Functional Programming, Procedural Programming, Event-Driven Programming, Concurrent and Parallel Programming, Error Handling and Debugging, Memory Management, Recursion, Algorithms, Data Structures, Design Patterns, Software Development Life Cycle (SDLC), Version Control Systems, Database Programming, Web Development, Mobile App Development, Game Development, Machine Learning and AI Programming, Network Programming, API Development, Security in Programming, Testing and Quality Assurance, User Interface and User Experience Design, Scripting Languages, Assembly Language, High-Level Programming Languages, Low-Level Programming Languages, Compiler Design, Interpreter Design, Garbage Collection, Regular Expressions, Graphical User Interface (GUI) Programming, Command Line Interface Development, Cross-Platform Development, Cloud Computing in Programming, Blockchain Programming, IoT Programming, Embedded Systems Programming, Microservices Architecture, Serverless Architecture, Big Data Technologies, Data Visualization, Data Mining and Analysis, Natural Language Processing (NLP), Computer Graphics Programming, Virtual Reality (VR) Development, Augmented Reality (AR) Development, Cryptography in Programming, Distributed Systems, Real-Time Systems Programming, Operating System Development, Compiler and Interpreter Development, Quantum Computing, Software Project Management, Agile Methodologies, DevOps Practices, Continuous Integration and Continuous Deployment (CI/CD), Software Maintenance and Evolution, Software Licensing, Open Source Development, Accessibility in Software Development, Internationalization and Localization, Performance Optimization, Scalability Techniques, Code Refactoring, Design Principles, API Design, Data Modeling, Software Documentation, Peer-to-Peer Networking, Socket Programming, Front-End Development, Back-End Development, Full Stack Development, Secure Coding Practices, Code Reviews, Unit Testing, Integration Testing, System Testing, Functional Programming Paradigms, Imperative Programming, Declarative Programming, Software Architecture, Cloud-Native Development, Infrastructure as Code (IaC), Ethical Hacking for Developers, Artificial Intelligence Ethics in Programming, Software Compliance and Standards, Software Auditing, Debugging Tools and Techniques, Code Optimization Techniques, Software Deployment Strategies, End-User Computing, Computational Thinking, Programming Logic and Techniques, Advanced Data Management

Agile, algorithms, APIs, asynchronous programming, automation, backend, CI/CD, classes, CLI, client-side, cloud (Cloud Native-AWS-Azure-GCP-IBM Cloud-IBM Mainframe-OCI), comments, compilers, concurrency, conditional expressions, containers, control flow, databases, data manipulation, data persistence, data science, data serialization, data structures, dates and times, debugging, dependency injection, design patterns, DevOps, distributed software, Docker, error handling, file I/O, frameworks, frontend, functions, functional programming, GitHub, history, Homebrew, IDEs, installation, JetBrains, JSON, JSON Web Token (JWT), K8S, lambdas, language spec, libraries, linters, Linux, logging, macOS, methods, ML, microservices, mobile dev, modules, monitoring, multi-threaded, network programming, null, numbers, objects, object-oriented programming, observability, OOP, ORMs, packages, package managers, performance, programmers, programming, reactive, refactoring, reserved words, REST APIs, RHEL, SDK, secrets, security, serverless, server-side, Snapcraft, SQL, StackOverflow, standards, standard library, statements, scope, scripting, syntax, systems programming, TDD, testing, tools, type system, web dev, variables, versions, Ubuntu, unit testing, Windows; topics-courses-books-docs. (navbar_programming - see also navbar_variables, navbar_programming_libraries, navbar_data_structures, navbar_algorithms, navbar_software_architecture, navbar_agile)

Bibliography: Books, De-DRM (Calibre and Anna's Archive Shadow Library), Publishers and Publications, WorldCat.org (ISBN), Amazon (ASIN), Apple Books-Kindle-eBooks. (navbar_bibliography - see also navbar_shadow_library, navbar_propaganda)


© 1994 - 2024 Cloud Monk Losang Jinpa or Fair Use. Disclaimers

SYI LU SENG E MU CHYWE YE. NAN. WEI LA YE. WEI LA YE. SA WA HE.


software_architecture_bibliography.txt · Last modified: 2024/04/28 03:41 (external edit)