Sunday, January 10, 2021

2021-01-10 Sunday - Suggested Architecture Books & Resources

Photo by Dariusz Sankowski on Unsplash
Source: https://unsplash.com/photos/ABAmxzlot8E

 

I think in another 3-4 weeks eventually, this may be a nice reference blog post for folks that may have expertise in one area - that may need a few good suggestions for introductions to other areas that are not in their core area of specialization. 

2021-03-09 Status Update: WORK-IN-PROGRESS  still continues - ***MUCH*** more content to be added...lists to be re-sorted/organized 

2023-03-28 Status Update: I'm going to make a few passes through this list in April - to continue elaboration, refinement, refreshment, and expansion of suggested titles.

  • 2023-03-28 added section on TLS


1.0 Suggested Architecture Books & Resources

 A friend and former colleague recently reached out to me for suggestions on books to include in a Master's level Computer Science course, with a particular emphasis on Enterprise Architecture. 

This posting revisits some previous lists of such resources I've assembled in the past - revised and updated with new interesting findings - and some more recently published books. 

I've also included a section at the end, to organize interesting online resources (YouTube channels, podcasts, blogs, etc.) of some of the innovative people and organizations that I find most interesting. 

This list is intended to provide a holistic coverage of topics that would provide any Enterprise Architecture practitioner with a roadmap for further reading in their own professional development endeavors.

1.1 Architecture Diagrams & Notations 

In my consulting practice over the last few years - I have seen many Enterprise Architecture organizations seek to embrace ArchiMate as their preferred modeling notation - and it seems that the Unified Modeling Language (UML) has fallen out of favor, or into (mostly) disuse. This is a shame - as there are aspects of intent and design that are more elegantly expressed in UML - than in ArchiMate. 

When architects & engineers find themselves needing to collaborate quickly - and brainstorm ideas - ArchiMate's notation, for the different layers/concerns, becomes more of a burden than a benefit. Particularly if the team members are using a physical (or electronic) hand-drawing mode in a whiteboard. 

For ArchiMate, the following resources are suggested:

  1. https://en.wikipedia.org/wiki/ArchiMate 
  2.  ArchiMate® 3.1 Specification
  3. Mastering ArchiMate Edition III: A serious introduction to the ArchiMate® enterprise architecture modeling language 

For UML, the following resources are suggested:

  1. https://en.wikipedia.org/wiki/Unified_Modeling_Language
  2. Unified Modeling Language Specification  

The Object Management Group's list of many different specifications may also be of interest - in particular, note some of the domain and platform specific categories. 

  ...entries to be added...

1.2 Enterprise Architecture

1.2.1 Enterprise Architecture Strategy & Roadmaps

1.2.2 Content Management Database (CMDB)  

This might seem in-congurent, at the top of such a list...but in practice, I have found this to be often missing - or poorly implemented. It should be considered a key foundational stone in any Enterprise Architecture initiative. Get this right, from the start.

  1. https://en.wikipedia.org/wiki/Configuration_management_database
  2. ServiceNow.com
    1. https://docs.servicenow.com/
    2. https://docs.servicenow.com/bundle/paris-servicenow-platform/page/product/csdm-implementation/concept/csdm-basics.html 
    3. https://docs.servicenow.com/bundle/paris-servicenow-platform/page/product/csdm-implementation/concept/csdm-conceptual-model.html
    4. Learning ServiceNow: Administration and development on the Now platform, for powerful IT automation, 2nd Edition 
  3. A Better Practices Guide for Populating a CMDB: Examples of IT Configuration Management for the Computer Room, the Datacentre and the Cloud 1st Edition  
    1. KM: This book is well-worth reading...
  4. CMDB Systems: Making Change Work in the Age of Cloud and Agile 1st Edition  
    1. KM: This looks like a good, broad, overview of the subject...
  5. Foundation of Intelligent IT Operations: CMDB and Service Maps 
  6. The CMDB Imperative: How to Realize the Dream and Avoid the Nightmares 1st Edition  
  7. A Better Practices Guide for Populating a CMDB: Examples of IT Configuration Management for the Computer Room, the Datacentre and the Cloud 1st Edition

1.2.3 Application Portfolio Management

  1. https://en.wikipedia.org/wiki/Application_portfolio_management
  2. ...more entries to be added...
  3. Portfolio Definition...
  4. Portfolio Management...
  5. Portfolio Roadmaps... 
  6. ServcieNow APM
    1. https://www.servicenow.com/products/application-portfolio-management.html
    2. https://docs.servicenow.com/bundle/paris-it-business-management/page/product/application-portfolio-management/concept/application-portfolio-management.html

1.2.4 Business Architecture

  1. Anything written by Daniel Lambert
    1. https://www.slideshare.net/DanielLambert4  
    2. https://www.cio.com/author/Daniel-Lambert/
    3. https://twitter.com/daniellambert07 
  2. Business Architecture: A Practical Guide 
  3. Business Models: 
    1. ...
  4. Capability Modeling:
    1. ...
  5. Process Modeling:
    1. ...
  6. BPMN:
    1. https://en.wikipedia.org/wiki/Business_Process_Model_and_Notation  
    2. ...
  7.   ...entries to be added...

1.2.5 Infrastructure Architecture

1.2.6 Security Architecture

  1. Principles
    1. ...
  2. Policies
    1. ...
  3. Regulations, Standards, Compliance:
    1. https://hitrustalliance.net/ 
    2. https://www.pcisecuritystandards.org/
    3. HIPAA
  4. Threats, Vulnerabilities:
    1. https://cwe.mitre.org/
    2. https://www.cvedetails.com/
    3. https://www.sans.org/
    4. https://owasp.org/
    5. https://csrc.nist.gov/
  5. Zero Trust
    1. NIST SP 800-207 Zero Trust Architecture 
    2. Zero Trust Networks: Building Secure Systems in Untrusted Networks 
  6. Cloud:
    1. Practical Cloud Security: A Guide for Secure Design and Deployment 
  7. Infrastructure:
    1. Defensive Security Handbook: Best Practices for Securing Infrastructure  
  8. Design:
    1. Secure By Design 1st Edition  
  9. Identity Access Management (IAM)
    1. https://en.wikipedia.org/wiki/Identity_management
  10. Encryption:
    1. TLS
      1. https://en.wikipedia.org/wiki/Transport_Layer_Security 
      2. https://datatracker.ietf.org/doc/rfc8446/
      3. RFC 8446: The Transport Layer Security (TLS) Protocol Version 1.3
      4. NIST: Guidelines for the Selection, Configuration, and Use of Transport Layer Security (TLS) Implementations: NIST SP 800-52 Rev. 2  
      5. https://www.hhs.gov/sites/default/files/securing-ssl-tls-in-healthcare-tlpwhite.pdf 
      6. https://wiki.openssl.org/index.php/TLS1.3 
      7. https://developer.mozilla.org/en-US/docs/Web/Security/Transport_Layer_Security 
      8. https://www.microsoft.com/en-us/security/blog/2020/08/20/taking-transport-layer-security-tls-to-the-next-level-with-tls-1-3/ 
      9. https://www.ibm.com/docs/en/sdk-java-technology/8?topic=provider-tls-protocol-overview
        1. https://www.ibm.com/docs/en/sdk-java-technology/8?topic=works-tls-13-handshake
        2. https://www.ibm.com/docs/en/sdk-java-technology/8?topic=handshake-tls-13-protocol 
    2. Fully Homomorphic Encryption (FHE)
      1. https://en.wikipedia.org/wiki/Homomorphic_encryption
      2. https://blog.nucypher.com/an-engineers-guide-to-fully-homomorphic-encryption/
      3. https://medium.com/privacy-preserving-natural-language-processing/homomorphic-encryption-for-beginners-a-practical-guide-part-1-b8f26d03a98a
      4. https://venturebeat.com/2020/01/16/meet-the-new-twist-on-data-encryption-that-promises-better-privacy-and-security-for-ai/
      5. https://venturebeat.com/2021/01/22/researchers-propose-porcupine-a-compiler-for-homomorphic-encryption/ 
      6. https://homomorphicencryption.org/
      7. FHE Libraries:
        1. https://www.microsoft.com/en-us/research/project/microsoft-seal/
          1. https://github.com/Microsoft/SEAL/
        2. https://palisade-crypto.org/software-library/
          1. https://git.njit.edu/palisade/PALISADE 
        3. https://github.com/shaih/HElib
        4. https://github.com/kimandrik/HEAAN
        5. https://tfhe.github.io/tfhe/
          1. https://github.com/tfhe/tfhe 
      8. https://research.ibm.com/labs/uk/fhe.html
        1. https://www.ibm.com/blogs/research/2020/06/ibm-releases-fully-homomorphic-encryption-toolkit-for-macos-and-ios-linux-and-android-coming-soon/ 
        2. https://www.zdnet.com/article/ibm-releases-toolkit-aimed-at-keeping-data-encrypted-even-while-in-use/
  11.   ...entries to be added...

1.2.7 Information Architecture, Data Science, Data Architecture

  1. The Data-Centric Revolution: Restoring Sanity to Enterprise Information Systems First Edition  
    1. KM: I suggest you start with this book - as it will open your eyes / provide a foundational shift in your thinking.  
    2. Also by the same author:
      1. Software Wasteland: How the Application-Centric Mindset is Hobbling our Enterprises First Edition  
  2. Semantic Modeling, Ontologies:
    1. Semantic Modeling for Data: Avoiding Pitfalls and Breaking Dilemmas 1st Edition (Sept 2020) 
    2. Building Ontologies with Basic Formal Ontology
    3. Structures for Organizing Knowledge: Exploring Taxonomies, Ontologies, and Other Schema 
    4. The Accidental Taxonomist, Second Edition  
    5. Semantic Web for the Working Ontologist: Effective Modeling in RDFS and OWL 2nd Edition 
  3. Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems  
  4. The Enterprise Big Data Lake: Delivering the Promise of Big Data and Data Science
  5. Big Data in Practice: How 45 Successful Companies Used Big Data Analytics to Deliver Extraordinary Results  
  6. Effective Data Visualization: The Right Chart for the Right Data 2nd Edition 
  7. Think Like a Data Scientist: Tackle the data science process step-by-step  
  8. https://github.com/arpit20adlakha/Data-Structure-Algorithms-LLD-HLD
  9.   ...entries to be added...

1.3 Software Architecture

1.3.1 Suggested book lists from others...

  1. Grady Booch
    1. https://twitter.com/Grady_Booch/status/1265665900973133824 
  2. Gregor Hohpe:  His suggested lists are excellent - although I find some guidance in his recent books to be in-congruent with my own thinking:

1.3.2 My suggested list

  1.  The Architecture Of Open Source Applications Paperback – March 15, 2012 
  2. The Architecture Of Open Source Applications, Volume Ii Paperback – May 7, 2008  
  3. Beautiful Architecture: Leading Thinkers Reveal the Hidden Beauty in Software Design 1st Edition  
  4. Building Evolutionary Architectures: Support Constant Change 1st Edition  
  5. Fundamentals of Software Architecture: An Engineering Approach  
  6. https://leanpub.com/software-architecture/ 
  7. Streaming Data: Understanding the real-time pipeline 
  8. Flow Architectures: The Future of Streaming and Event-Driven Integration (Feb 2021) 
  9. Streaming Systems: The What, Where, When, and How of Large-Scale Data Processing 
  10. Gregor Hohpe:
    1. https://architectelevator.com/
    2. https://www.enterpriseintegrationpatterns.com/
  11.   ...more entries to be added... 

1.3.3 Patterns

  1. Technology Strategy Patterns: Architecture as Strategy
  2. https://www.manning.com/books/soa-patterns 
  3. https://www.amazon.com/Design-Patterns-Prentice-Service-Oriented-Computing-dp-0136135161/dp/0136135161/
  4. Domain-Driven Design: Tackling Complexity in the Heart of Software 1st Edition  
  5. Designing Distributed Systems: Patterns and Paradigms for Scalable, Reliable Services 
  6.  Domain-Driven Design Reference: Definitions and Pattern Summaries
  7. Patterns, Principles, and Practices of Domain-Driven Design 1st Edition  
  8. Monolith to Microservices: Evolutionary Patterns to Transform Your Monolith 
  9. https://www.amazon.com/Microservices-Patterns-examples-Chris-Richardson/dp/1617294543 

1.3.4 System Design

  1. ByeByteGo - blog post, re: Free System Design PDF (158 pages)
  2. https://github.com/InterviewReady/system-design-resources

1.4  Lean, Agile, DevOps

  1. Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations
  2. Continuous Architecture in Practice: Software Architecture in the Age of Agility and DevOps  
    1. "I am continuously delighted and inspired by the work of these authors. Their first book laid the groundwork for understanding how to evolve the architecture of a software-intensive system, and this latest one builds on it in some wonderfully actionable ways."
      --Grady Booch, Chief Scientist for Software Engineering, IBM Research
  3.   ...more entries to be added...

1.5 Chaos Engineering 

  1. https://en.wikipedia.org/wiki/Chaos_engineering
  2. https://principlesofchaos.org/
  3. Chaos Engineering: System Resiliency in Practice 1st Edition
  4. Learning Chaos Engineering: Discovering and Overcoming System Weaknesses Through Experimentation 1st Edition
  5. https://chaostoolkit.org/
  6. https://github.com/dastergon/awesome-chaos-engineering
  7. https://github.com/upgundecha/howtheysre
  8. ...entries to be added...

1.6 Management & Organizational Aspects

  1. Peopleware: Productive Projects and Teams 
  2. Team Topologies: Organizing Business and Technology Teams for Fast Flow   
  3. Measure What Matters: How Google, Bono, and the Gates Foundation Rock the World with OKRs 
  4. Mythical Man-Month, The: Essays on Software Engineering, Anniversary Edition 
  5.  Strategy Beyond the Hockey Stick: People, Probabilities, and Big Moves to Beat the Odds
  6.   ...more entries to be added...

1.7 Machine Learning, Deep Learning, Artificial Intelligence

  1. Deep Learning with Python, 2nd Edition (December 2021)
  2. The Kaggle Book: Data analysis and machine learning for competitive data science  
    1.  "...insights from over 30 Kaggle Masters and Grandmasters. Discover tips, tricks, and best practices for competing effectively on Kaggle and becoming a better data scientist"
  3. The Machine Learning Solutions Architect Handbook: Create machine learning platforms to run solutions in an enterprise setting  
  4. https://www.amazon.com/Grokking-Deep-Learning-Andrew-Trask/dp/1617293709/
    1. For a gentle introduction...
  5. Deep Learning (Adaptive Computation and Machine Learning series) Illustrated Edition
    1. https://www.deeplearningbook.org/
  6. Understanding Machine Learning (From Theory to Algorithms) 1st Edition
  7. Machine Learning: An Applied Mathematics Introduction Paperback – May 26, 2019
  8. Grokking Artificial Intelligence Algorithms: Understand and apply the core algorithms of deep learning and artificial intelligence in this friendly illustrated guide including exercises and examples 1st Edition
  9. https://www.amazon.com/Artificial-Intelligence-A-Modern-Approach/dp/0134610997/
    1. For a deeper treatment...
    2. http://aima.cs.berkeley.edu/
  10. Machine Learning Design Patterns: Solutions to Common Challenges in Data Preparation, Model Building, and MLOps 1st Edition
  11. Knowledge Graph 1st ed. 2021 Edition
  12. Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems 2nd Edition
  13. GANs in Action: Deep learning with Generative Adversarial Networks 1st Edition
  14. Neural Networks and Deep Learning: A Textbook 1st ed. 2018 Edition
  15. Reinforcement Learning, second edition: An Introduction (Adaptive Computation and Machine Learning series) second edition
  16. https://github.com/dair-ai/Mathematics-for-ML
  17.   ...more entries to be added...

1.8 Quantum Computing

...

1.9  Governance

  1. ITIL
    1. ITIL® 4 Essentials: Your essential guide for the ITIL 4 Foundation exam and beyond, second edition 
    2. ITIL Foundation, ITIL 4th Edition
  2. ITSM
    1. ITSM: QuickStart Guide - The Simplified Beginner's Guide to IT Service Management 1st Edition  
    2. Implementing Itsm: From Silos to Services: Transforming the It Organization to an It Service Management Valued Partner  
    3. Organizing Itsm: Transitioning The It Organization From Silos To Services With Practical Organizational Change 
    4. Architecting ITSM: A Reference of Configuration Items and Building Blocks for a Comprehensive IT Service Management Infrastructure
    5. Servicing ITSM: A Handbook of Service Descriptions for it Service Managers and a Means for Building Them 
  3. COBIT 5
    1. Governance Of Enterprise It Based On Cobit 5: A Management Guide 
    2. Enterprise Governance of Information Technology (Management for Professionals) 3rd ed. 
 

1.10 Recommended Online Resources

1.10.1 Misc.

  1. http://iea.wikidot.com/
  2. https://www.hpcwire.com/ 
  3. https://insidehpc.com/ 
  4. https://www.acm.org/conferences/best-paper-awards
  5.   ...entries to be added...

1.10.2 Blogs

  1. https://martinfowler.com/
  2. https://architectelevator.com/blog/
  3. https://medium.com/wardleymaps
  4. https://developers.redhat.com/blog/ 
  5. https://stackshare.io/featured-posts 
  6. https://medium.com/s-c-a-l-e
  7. http://highscalability.com/
  8.   ...entries to be added... 

1.10.3 Podcasts

  1. https://softwareengineeringdaily.com/
  2. https://www.softwaredefinedtalk.com/
  3. https://www.thecloudcast.net/
  4. https://www.sei.cmu.edu/publications/podcasts/ 
  5. https://thoughtworks.libsyn.com/
  6. https://anchor.fm/ticket-volume/
  7.   ...entries to be added...

1.10.4 YouTube Channels

There is so much great content for architects - on YouTube - but, I will try to limit this list to my top-20 suggestions - listed in order of value. The intent is to provide a balanced mix of suggested content resources to develop and maintain a competitive edge with respect to awareness of emerging innovative trends in business and technology:
  1.  QCon plus
  2. GOTO Conferences
  3. NDC Conferences 
  4. DevOps Conferences
  5. Strange Loop
  6. O'Reilly 
  7. Cloud Native Computing Foundation (CNCF)
  8. IBM Research 
  9. Amazon Web Services
  10. VMware 
  11. Association for Computing Machinery (ACM) 
  12. Two Minute Papers
  13. Harvard Innovation Labs
  14.  Knowledge@Wharton
  15. Startup Grind
  16.   ...a few more entries to be added...still refining this list...may add/remove entries...

1.10.5 Published Articles, Papers, etc.

  1.  FEAMI: A Methodology to Include and to Integrate Enterprise Architecture Processes Into Existing Organizational Processes
    1. Citation: N. Dedić, "FEAMI: A Methodology to Include and to Integrate Enterprise Architecture Processes Into Existing Organizational Processes," in IEEE Engineering Management Review, vol. 48, no. 4, pp. 160-166, 1 Fourthquarter,Dec. 2020, doi: 10.1109/EMR.2020.3031968.
    2. Abstract: "There are many frameworks, concepts, and standards that define and describe Enterprise Architecture from various perspectives and have different purposes. However, despite all the efforts being made, a practical methodology concerned with the inclusion and integration of Enterprise Architecture Processes (EAPs) into Existing Operational Processes (EOPs) was not found in the existing literature. This positioning article reduces the identified knowledge gap and presents FEAMI, a novel methodology to effectively include and to functionally integrate EAPs into EOPs. Motivation for the development of FEAMI arose from the need of the industry for such a methodology, experienced on several occasions by the author of this article as well. FEAMI is a result of two years of work where pragmatic approach to research was applied."

Copyright

© 2001-2021 International Technology Ventures, Inc., All Rights Reserved.