John Klein
Software Engineering Institute
John Klein is a principal investigator and senior member of the technical staff in the Software Solutions Division at the SEI.
Klein is currently leading a project investigating how to automatically reconstruct the deployment architecture of a legacy system and developing a playbook to guide organizations through modernization projects. Klein also works with the Square Kilometre Array radio telescope team, who has adopted many of the SEI’s architecture practices to reduce risk in the design of this massive system.
Past projects at the SEI have included leading research to bring stakeholder preferences into the analysis of alternatives in system modernization projects and developing architecture approaches to big data systems. Klein has collaborated with an Australian research center on a big data reference architecture adopted by the Ministry of Defence and the Australian Federal Police; led a team that assessed analytics enterprise architecture for a large health-care provider; and coached Bursatec, the Mexican Stock Exchange, in architecture development for a new trading engine.
Before joining the SEI, Klein was a chief architect at Avaya, Inc., where he focused on communication analytics and multimodal agents, and an architect at Quintus, where he designed the first integrated multichannel contact center product. Klein was also a technical director at Raytheon, where he developed hardware and software solutions for radar signal processing and multispectral image processing.
Klein holds a BEng from the Stevens Institute of Technology, an MEng from Northeastern University, and a PhD in Computer Science from VU University Amsterdam.
Contact: John Klein
Publications by John Klein
-
Why Architecture Conformance Matters for Software Systems
December 14, 2022 • Presentation
John KleinRobert NordForrest Shull
This presentation was presented at the DoD Air & Space Weapon Systems Software Summit: Accelerating DoD Software Engineering to the Speed of Relevance, co-located with the DoD Maintenance Symposium, December 13-14, 2022, in Orlando, Florida.
read -
Why Architecture Conformance Matters for Evolvable Systems
July 22, 2022 • Article
John KleinRobert Nord
This paper appears in the July 2022 issue of CrossTalk: The Journal of Defense Software Engineering on pages 19–24.
read -
Using XML to Exchange Floating Point Data
February 10, 2022 • White Paper
John Klein
This paper explains issues of using XML to exchange floating point values, how to address them, and the limits of technology to enforce a correct implementation.
read -
Maintainability
December 01, 2020 • Technical Report
Rick KazmanPhilip BiancoJames Ivers
This report summarizes how to systematically analyze a software architecture with respect to a quality attribute requirement for maintainability.
read -
A Playbook for Early Architecture Analysis
November 13, 2020 • Presentation
John KleinPhilip BiancoRick Kazman
This talk describes a playbook to analyze early architecture artifacts' support for development-time quality attributes that affect long-term system success.
read -
Architecture Evaluation for Universal Command and Control
August 03, 2020 • White Paper
John KleinPatrick DonohoePhilip Bianco
The SEI developed an analysis method to assess function allocations in existing C2 systems and reason about design choices and tradeoffs during the design of new C2 systems.
read -
Cloud Increases the Role of Acquisition in Cybersecurity
April 06, 2020 • Article
Carol Woody, PhDChristopher J. AlbertsJohn Klein
This article describes how an organization might address cybersecurity when it adopts cloud technology to replace physical data centers and monitoring and testing can no longer be performed directly on the equipment the system uses.
read -
Integrability
February 07, 2020 • Technical Report
Rick KazmanPhilip BiancoJames Ivers
This report summarizes how to systematically analyze a software architecture with respect to a quality attribute requirement for integrability.
read -
Operational Test & Evaluation (OT&E) Roadmap for Cloud-Based Systems
September 02, 2019 • White Paper
Carol Woody, PhDChristopher J. AlbertsJohn Klein
This paper provides an overview of the preparation and work that the AEC needs to perform to successfully transition the Army to cloud computing.
read -
What Makes a Good Software Architect (2019 Edition)?
April 04, 2019 • Webinar
John KleinIpek OzkayaFelix Bachmann
The architect's role continues to evolve; in this webcast we revisited the question in the context of today's role and responsibilities.
watch -
Infrastructure as Code: Final Report
January 28, 2019 • White Paper
John KleinDoug Reynolds
This project explored the feasibility of infrastructure as code, developed prototype tools, populated a model of the deployment architecture, and automatically generated IaC scripts from the model.
read -
Infrastructure as Code
October 23, 2018 • Poster
John Klein
This poster describes an approach and tools for recovering a deployed system's technical baseline.
read -
A Radio Astronomer and an Architect Walk into a Bar...
May 09, 2018 • Presentation
John Klein
This talk describes the problem of designing the architecture for a radio telescope that will process data equivalent to 10 times the global internet traffic.
read -
System-of-Systems Viewpoint for System Architecture Documentation
January 21, 2018 • Article
John KleinHans van Vliet (VU University)
We evaluated an architecture documentation viewpoint to address the concerns of a SoS architect about a constituent system, to support SoS design and analysis involving that constituent system.
read -
Architecture Practices for Complex Contexts
September 26, 2017 • White Paper
John Klein
This doctoral thesis, completed at Vrije Universiteit Amsterdam, focuses on software architecture practices for systems of systems, including data-intensive systems.
read -
"SHORT"er Reasoning About Larger Requirements Models
September 08, 2017 • Conference Paper
George Mathew (North Carolina State University)Tim Menzies (North Carolina State University)Neil Ernst
SHORT is a tool to simplify reasoning about requirements engineering (RE) models by exploiting key decisions within them, evaluated on eight complex RE models.
read -
Using Stakeholder Preferences to Make Better Architecture Decisions
April 07, 2017 • Conference Paper
Neil ErnstJohn KleinGeorge Mathew (North Carolina State University)
This paper describes a method to collect stakeholder preferences about architecture options and uses automated optimization to identify important architecture decisions.
read -
6 Things You Need to Know About Data Governance
March 23, 2017 • Presentation
John Klein
This presentation discusses a framework to guide governance decisions.
read -
Three Roles and Three Failure Patterns of Software Architects
January 26, 2017 • Podcast
John Klein
This podcast explores three roles and three failure patterns of software architects that he has observed working with industry and government software projects.
learn more -
Enabling Evidence Based Modernization
November 01, 2016 • Presentation
John Klein
The goal of is work is to develop a lightweight method for representing alternatives
read -
Enabling Evidence-Based Modernization
October 18, 2016 • Poster
John Klein
Evidence-Based Modernization (EEBM)
read -
What Makes a Good Software Architect?
May 18, 2016 • Webinar
Ipek OzkayaAndrew KotovJohn Klein
In this webinar, SEI researchers and an industry colleague discussed in two talks What Makes a Good Software Architect?
watch -
A Reference Architecture for Big Data Systems in the National Security Domain
May 16, 2016 • Conference Paper
John KleinRoss Buglak (Data to Decisions Cooperative Research Centre)David Blockow (Data to Decisions Cooperative Research Centre)
This paper presents a reference architecture for big data systems that is focused on addressing typical national defense requirements and that is vendor-neutral.
read -
Model-Driven Observability for Big Data Storage
April 08, 2016 • Conference Paper
John KleinIan Gorton (Northeastern University)Laila Alhmoud (Carnegie Mellon University)
This paper presents an architecture that automates metric collection processes for big data systems using a distributed runtime observability framework.
read -
What Makes an Architect Successful?
January 01, 2016 • Article
John Klein
A proposed model identifies the skills that a successful software architect needs at each phase of a development effort and helps explain common failure patterns.
read -
A Systematic Method for Big Data Technology Selection
November 18, 2015 • Presentation
John Klein
This talk discusses why prototyping is necessary for evaluating big data technology and how the LEAP4BD method provides a systematic framework for technology evaluation.
read -
Runtime Assurance for Big Data Systems Poster (SEI 2015 Research Review)
October 22, 2015 • Poster
John Klein
This 2015 Research Review presentation describes research into the unique assurance requirements and conditions of Big Data systems.
read -
Machine Learning for Big Data System Acquisition Poster (SEI 2015 Research Review)
October 22, 2015 • Poster
John Klein
This poster tackles the question, "Can we automatically identify relevant document pages that contain the knowledge required for a curator to populate the knowledge base?"
read -
Runtime Assurance for Big Data Systems
October 16, 2015 • Presentation
John Klein
This 2015 Research Review presentation describes research into the unique assurance requirements and conditions of Big Data systems.
read -
Machine Learning for Big Data Systems Acquisition
October 16, 2015 • Presentation
John Klein
This presentation tackles the question, "Can we automatically identify relevant document pages that contain the knowledge required for a curator to populate the knowledge base?"
read -
Application-Specific Evaluation of No SQL Databases
July 01, 2015 • Conference Paper
John KleinIan GortonNeil Ernst
This paper reports on the selection of a NoSQL database for use in an Electronic Healthcare Record system being developed by a large healthcare provider.
read -
State of Practice Report: Essential Technical and Nontechnical Issues Related to Designing SoS Platform Architectures
May 13, 2015 • Technical Report
Sholom G. CohenJohn Klein
This report analyzes the state of the practice in system-of-systems (SoS) development, based on 12 interviews of leading SoS developers in the DoD and industry.
read -
Architecture Knowledge for Evaluating Scalable Databases
May 08, 2015 • Conference Paper
Ian GortonJohn KleinAlbert Nurgaliev (Carnegie Mellon University)
This paper presents a feature taxonomy that enables comparison and evaluation of distributed database platforms and demonstrates it with nine database technologies.
read -
Design Assistant for NoSQL Technology Selection
May 06, 2015 • Conference Paper
John KleinIan Gorton
This paper presents a knowledge model, its implementation in a semantic platform, and a populated knowledge base for big data system architects choosing a NoSQL database.
read -
Model-Driven Engineering: Automatic Code Generation and Beyond
March 25, 2015 • Technical Note
John KleinHarry L. LevinsonJay Marchetti
This report offers guidance on selecting, analyzing, and evaluating model-driven engineering tools for automatic code generation in acquired systems.
read -
Performance Evaluation of NoSQL Databases: A Case Study
February 01, 2015 • Conference Paper
John KleinIan GortonNeil Ernst
This paper presents a method and the results of a study that selected among three NoSQL databases for a large, distributed healthcare organization.
read -
Runtime Performance Challenges in Big Data Systems
January 31, 2015 • Conference Paper
John KleinIan Gorton
This paper presents a reference architecture for big data systems. It uses a model-driven engineering toolkit to generate architecture-aware monitors and application-specific visualizations.
read -
Distribution, Data, Deployment: Software Architecture Convergence in Big Data Systems
May 08, 2014 • Article
Ian GortonJohn Klein
This paper describes the challenges of big data systems for software architects, including harmonizing designs across the software, data, and deployment architectures.
read -
An Approach to Managing the Software Engineering Challenges of Big Data
November 27, 2013 • Podcast
Ian GortonJohn KleinSuzanne Miller
In this episode, Ian Gorton and John Klein discuss big data and the challenges it presents for software engineers. With help from fellow SEI researchers, the two have developed a lightweight risk reduction approach to help software engineers manage the ch
learn more -
Understanding Patterns for System of Systems Integration
August 08, 2013 • Conference Paper
Rick KazmanKlaus Schmid (University of Hildesheim)Claus Nielsen (Aarhus University)
This paper develops a way to characterize system-of-systems (SoS) integration patterns and highlights important issues that a SoS architect must consider.
read -
Common Software Platforms in System-of-Systems Architectures: The State of the Practice
June 06, 2013 • White Paper
John KleinSholom G. CohenRick Kazman
System-of-systems (SoS) architectures based on common software platforms have been commercially successful, but progress on creating and adopting them has been slow. This study aimed to understand technical issues for their development and adoption.
read -
An Early Look at Defining Variability Requirements for System-of-Systems Platforms
September 25, 2012 • Conference Paper
John KleinGary ChastekSholom G. Cohen
This paper describes the development of a method for analyzing decisions about requirements for common platforms for systems of systems to enable controlled evolution.
read -
Architecting Software the SEI Way - Analyzing and Evaluating Enterprise Architectures
April 01, 2012 • Webinar
John Klein
John Klein reviews the SEI perspective on architecture-centric engineering, and discusses how this approach scales from its original software context through systems-of-systems.
watch -
A Workshop on Analysis and Evaluation of Enterprise Architectures
November 01, 2010 • Technical Note
John KleinMichael J. Gagliardi
This report summarizes a workshop on the analysis and evaluation of enterprise architectures that was held at the SEI in April of 2010.
read -
System of Systems Quality Attribute Specification and Architecture Evaluation
October 26, 2009 • Presentation
Michael J. GagliardiWilliam G. WoodTimothy Morrow
This tutorial presentation describes an SoS Architecture Engagement in the context of a DoD mission-critical SoS example.
read -
A Workshop on Architecture Competence
April 01, 2009 • Technical Note
Len BassPaul C. ClementsRick Kazman
This report summarizes a June 2008 architecture competence workshop where practitioners discussed key issues in assessing architecture competence in organizations.
read -
A Uniform Approach for System of Systems Architecture Evaluation
March 31, 2009 • Article
Michael J. GagliardiWilliam G. WoodJohn Klein
This article outlines an approach for capturing quality attribute requirements in mission threads early in the development process to analyze SoS architectures.
read -
U.S. Army Workshop on Exploring Enterprise, System of Systems, System, and Software Architectures
March 01, 2009 • Technical Report
John K. BergeyStephen Blanchette, Jr.Paul C. Clements
This report confirms that various architectural genres enjoy more commonalities than differences. Each one has its own important knowledge base, and openness among the various architectural tasks within an organization is growing in importance.
read -
Architecture and Design
October 16, 2006 • Presentation
John Klein
This page contains the slides for John Klein's guest lecture for COMP 180: Software Engineering, held at Tufts University, during the 2006 fall semester.
read