SYS-CON MEDIA Authors: Roger Strukhoff, Pat Romanski, Doug Masi, Mat Mathews, PR.com Newswire

Blog Feed Post

Equipping Your Toolbox with TOGAF Building Blocks

A cornerstone of the TOGAF Architecture Development Methodology (ADM) is that of the elusive ‘building block’.  I say that it is ‘elusive’, because the Open Group describes the characteristics of building blocks and articulates various uses of these blocks, but stops short of giving a truly concrete implementation of the concept.  I have developed a tangible implementation of the TOGAF Building Block concept that includes real artifacts and concrete deliverables. After a quick introduction to building blocks, I will describe this implementation.

TOGAF Building Blocks Background

Building Block Uses

  • Defining the baseline architecture for each domain
  • Defining the target architecture for each domain
  • Populating the repository with reusable assets
  • Retrieving previously vetted assets from the repository
  • Performing a gap analysis and producing a roadmap of building block changes to evolve the architecture landscape
  • Identifying solutions (SBBs) that map against architectural functionality (ABBs)

Building Block Characteristics

  • A package of functionality defined to meet the business needs across an organization
  • A building block has published interfaces to access functionality
  • A building block may inter-operate with other, inter-dependent building blocks
  • Considers implementation and usage and evolves to exploit technology and standards
  • May be assembled from or a subassembly of other building blocks
  • Is reusable and replaceable

TOGAF Specification References

Building Block Implementation

I have defined Function Blocks (FBs), Infrastructure Blocks (IBs), and Utility Blocks (UBs) as a tangible implementation of TOGAF’s ABB and SBB concepts.  I collectively refer to this as the Function Block technique (although supporting Infrastructure and Utility blocks exist as well).  The intent of the FB technique is to provide a concrete instantiation of TOGAF’s building block concept in the form of a descriptive template, BPMN and UML diagrams, and supporting tables, lists, interfaces, and association / dependency references.

FBs allow a system designer to construct solutions in a modular fashion.  It allows systems to be defined in terms of logically connected modules that are capable of running on different processing resources.  Complete applications, can be built from a collection of function blocks, formed by interconnecting their inputs and outputs.  Functional Blocks are intended to improve productivity in terms of re-use, reliability, flexibility and interoperability.

Use Cases / User Stories / Business Scenarios and applicable requirements are connected to FBs / IBs / UBs.  Functional Blocks are self contained work units that have direct co-relation to the use cases and  functional requirements developed during the business architecture phase (Phase B of TOGAF’s ADM).  Simple blocks might only map to a single Use Case (UC) while more complex blocks may map to multiple UCs.  A given UC can map to multiple blocks in order to fulfill all of its identified functionality.

Function / Infrastructure / Utility Block Template

  • Context Diagram (Provides a high-level visual overview)
  • Description (Text-based narrative that introduces the block)
  • Core Functions (List of significant functionality as identified by Use Cases)
  • Use Case Mapping (List of UC numbers)
  • Related FBs (List of other FBs that this one talks to)
  • Interfaces (List of data entities that this FB sends/receives)
  • Artifacts (Diagrams that support the block definition)

Want to learn more about Function Blocks?  Check out my pre-recorded webinar: A Tangible Implementation of TOGAF Building Blocks.

 

Read the original blog entry...

More Stories By Kyle Gabhart

Kyle Gabhart is a subject matter expert specializing in strategic planning and tactical delivery of enterprise technology solutions, blending EA, BPM, SOA, Cloud Computing, and other emerging technologies. Kyle currently serves as a director for Web Age Solutions, a premier provider of technology education and mentoring. Since 2001 he has contributed extensively to the IT community as an author, speaker, consultant, and open source contributor.