11.01.2017 Views

A Technical History of the SEI

ihQTwP

ihQTwP

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Diverse experience in industry suggests that this type <strong>of</strong> development is almost always accomplished<br />

on <strong>the</strong> basis <strong>of</strong> early commitment to effective architectural structures. There are two principal<br />

reasons for this. First, architectural structures have enormous influence on quality and security<br />

outcomes for systems. Without early consideration <strong>of</strong> quality and security attributes, it may be<br />

infeasible to “bolt <strong>the</strong>m on” later in a process. Indeed, for many categories <strong>of</strong> systems, early architectural<br />

decisions can be a greater influence on success than nearly any o<strong>the</strong>r factor. Second, architectural<br />

structures strongly influence <strong>the</strong> work breakdown structure for major s<strong>of</strong>tware-intensive<br />

systems. The ability to achieve an effective granularity <strong>of</strong> effort—breaking larger tasks into<br />

feasible subtasks that can be managed separately and at differing tempos—is an architecturebased<br />

outcome at nearly every level <strong>of</strong> scale.<br />

It is easy to see <strong>the</strong> benefits <strong>of</strong> <strong>the</strong> “framework-and-apps” model ubiquitously adopted in <strong>the</strong> commercial<br />

sector for mobile devices, web applications, GUI development, and o<strong>the</strong>r categories <strong>of</strong><br />

systems. This model is a compelling example <strong>of</strong> architecture-enabled scale-up. At <strong>the</strong> <strong>SEI</strong>, we aspire<br />

to that same approach in defense s<strong>of</strong>tware: for example, in <strong>the</strong> development <strong>of</strong> principles <strong>of</strong><br />

design for systems <strong>of</strong> systems. Military leaders have described a shift from platform-focused approaches<br />

to payload-focused approaches. This shift—which is premised on improving agility<br />

while lowering costs and risks—is enabled by appropriate architectural concepts.<br />

While many areas <strong>of</strong> technical development are needed to aggressively advance this vision, it is<br />

none<strong>the</strong>less possible in many domains to advance development approaches based on <strong>the</strong>se concepts.<br />

The evidence <strong>of</strong> this feasibility is <strong>the</strong> widespread adoption <strong>of</strong> architecture-led approaches in<br />

<strong>the</strong> commercial sector for products, s<strong>of</strong>tware as a service (SAAS) services, and <strong>the</strong> like. Indeed,<br />

many commercial and in-house government development organizations already employ practices<br />

that are increasingly consistent with <strong>the</strong> ALIID vision. It is a major challenge, however, to adapt<br />

<strong>the</strong>se ideas to <strong>the</strong> kind <strong>of</strong> arm’s length engagement with development organizations characteristic<br />

<strong>of</strong> DoD major defense acquisition programs.<br />

Advancing <strong>the</strong> ALLIID vision involves at least four areas <strong>of</strong> particular emphasis:<br />

a. Architectural structures and practices. This area includes identification <strong>of</strong> concepts<br />

<strong>of</strong> operations for systems <strong>of</strong> systems, ultra-large-scale systems, 74 and <strong>the</strong> like. This area<br />

also includes <strong>the</strong> development <strong>of</strong> practices for early validation, to assist in getting reliable<br />

early assessment <strong>of</strong> quality and security outcomes associated with particular architectural<br />

choices.<br />

b. Measurement and process models for cost, progress, and engineering risks. Any<br />

approach based on incremental and/or iterative development must incorporate effective<br />

practices for estimating costs, progress, and risks and <strong>the</strong>n use <strong>the</strong>se practices to reward<br />

developers for value earned. Cost-estimation techniques, for example, could be enhanced<br />

to evaluate both estimated mean values and variances and to support ongoing<br />

74 See https://www.sei.cmu.edu/uls/ for more information.<br />

CMU/<strong>SEI</strong>-2016-SR-027 | SOFTWARE ENGINEERING INSTITUTE | CARNEGIE MELLON UNIVERSITY 288<br />

Distribution Statement A: Approved for Public Release; Distribution is Unlimited.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!