Acquisition Support Program  |  Architecture Tradeoff Analysis  |  Capability Maturity Model Integration  |
COTS-Based Systems  |  Performance-Critical Systems  |  Predictable Assembly from Certifiable Components  |
Product Line Practice  |  Software Engineering Measurement and Analysis  |  Survivable Systems  |  Team Software Process  |   
Acronyms, Abbreviations, and Initialisms
  PREDICTABLE ASSEMBLY FROM CERTIFIABLE COMPONENTS
 

Significant economic and technical benefits accrue from the use of pre-existing and commercially available software components to develop new systems. However, variable component quality, combined with hidden component behavior, has forced system developers to rely on extensive prototyping just to establish the feasibility of using a component in a particular assembly. Predictability is difficult to attain. Many of the benefits of software component technology evaporate in the presence of high design uncertainty and low consumer trust in components.

 


Predictable:
System properties can be predicted based on component properties.

Assembly: Systems can be assembled from components, which could come from third parties, in a way that preserves predictions.

Certifiable: The properties of components are trusted and provide a basis for trust in component and system predictions.

Components: The components have interfaces that fully describe their externally visible properties.

 
 

Purpose

The Predictable Assembly from Certifiable Components (PACC) project, which began as an independent research and development project in FY2002 (see the section titled Independent Research & Development), was begun to determine whether, and how, the twin objectives of design predictability and component trust could be achieved. A software development activity is predictable if the runtime behavior of an assembly of components can be predicted from the known properties of components and if these predictions can be objectively validated. A component is certifiable if these known properties can be ascertained and validated by independent third parties.

In 2003, the SEI will provide seminal technology to certify software components for predictable assembly and to open up a new world of trusted software components. This will be accomplished by ensuring that the builders of systems can select software components on the basis of their predicted runtime behavior within specific assemblies.

The SEI’s approach to PACC rests on prediction-enabled component technology (PECT). At the highest level, PECT is a scheme for systematic and repeatable integration of software-component technology, software-architecture technology, and design analysis and verification technology. The results of this integration are engineering methods and a supporting technical infrastructure that together enable PACC.

 

2002 Accomplishment

The SEI is working with ABB on the next generation of software for use in automating electrical substations.Model Problems Research Leads to Solutions
In FY2002, the SEI collaborated with ABB Ltd.’s Corporate Research Center to undertake a two-year feasibility study of predictable assembly for substation automation systems within the domain of power transmission and control. To conduct this feasibility exploration, the SEI and ABB defined a series of model problems, simplifications of more complex problems whose solutions can be extrapolated to real problems.



 

Software and electronics are two critical areas that require increased attention from Congress and the DoD, former Congressman Dave McCurdy said in testimony before the House Armed Services Subcommittee on Military Procurement. McCurdy, president of the Electronic Industries Alliance, made the case for "a new paradigm for software engineering that moves engineering analysis to the forefront," and cited SEI technical work: "There is already very interesting and important work going on in this regard, known as Predictable Assembly from Certifiable Components. These efforts need greater attention and support from government and commercial buyers alike." A well-respected industry voice, McCurdy stressed the need for more research to improve the practice of software engineering.