Reuse Standards

Download Report

Transcript Reuse Standards

Reuse Standards
Dr. Carma McClure
Extended Intelligence, Inc.
www.reusability.com
Copyright (c) 1998 by Extended Intelligence, Inc.
zzz
Component Industry
$5.5 billion
$2.4 billion
Services
Sales
2001
Between 1998 and 2001, component sales are predicted to
increase from $1.1 billion to $2.4 billion and related
services from $2.2 billion to $5.5 billion.
Gartner Group Market Research
Components
• Software parts that –
–
–
–
Provide a common function or feature
Have well-defined interfaces
Hide implementation details
Have ability to interoperate with other
components
– Fit into an architecture
– Have potential to be reused in multiple
software products and systems
Component-Based Development
• Architecture-driven construction
approach whereby software products and
systems are assembled from components
• Architecture is a generic structure that
provides a framework for assembling the
components
Benefits of Components
• Deploy mission-critical systems more
quickly; gain competitive advantage
• Simplify large-scale development
• Make system more adaptable; easier to
change
• Improve software quality
• Increase software productivity; lower
costs
Power of Reuse
• Faster, better, cheaper, without
compromise
• Reuse is the only technology that allows a
company to simultaneously address
software cost, time-to-market, flexibility
- Gartner Group Reuse Report, 1995
and quality.
Reuse Opportunities
60 - 70 % of a software product’s
functionality is common
Components Need Standards
• Interface Standards
– Interconnecting
components written
in different languages
supplied by different
sources
• Process Standards
– Specifying the types
of components used
by the componentbased development
and the activities for
performing
component
identification,
construction,
selection & assembly
UML
• Unified Modeling Language
• OMG nonproprietary, open standard
• Common modeling language for building
distributed objects
• Standardized notation and semantics for
describing software analysis and design
models (e.g., Use Case, Class, Activity)
UML
Where is the
Process?
Why Process Standards?
1. Common Understanding
2. Quality
Software Quality
Process
Quality
CMM
Capability Maturity Model
Level 5: Optimizing
Level 4: Managed
Level 3: Defined
Level 2: Repeatable
Level 1: Initial
SE-CMM
• De facto industry standard from SEI
• Purposes – Assessment of an organization’s software
processes for process improvement
– Evaluation of a vendor’s software processes
for determination of vendor’s ability to
produce quality software
CMM
Where is reuse
in the process?
IEEE Reuse Process Standard
• Purpose
– Establish a framework for practicing reuse
within the software life cycle model
– Define the minimum set of processes,
activities and tasks that are required to
practice reuse
– Promote and control the practice of reuse
– Define reuse terminology
IEEE Std. 1517
• IEEE Std. 1517 - Standard for
Information Technology - Software Life
Cycle Processes - Reuse Processes
• Requirements specification for practicing
systematic reuse on an enterprise-wide
basis
• Guide for using the best software reuse
practices
IEEE Std. 1517- Reuse Process
• May be used to – Acquire, supply, develop and maintain
reusable components
– Acquire, supply, develop, operate and
maintain software built with reusable
components
– Manage and improve an organization’s
software life cycle process w.r.t. reuse
IEEE Std. 1517 - Reuse Process
• May be used to – Establish software management and
engineering environments based on reuse
– Facilitate the use of reusable components to
develop software products and systems
– Facilitate the development of reusable
components
– Foster an understanding of reuse among
parties involved in life cycle process
ISO/IEC 12207
Standard for Information
Technology Software Life Cycle Processes
ISO/IEC 12207
• Purpose
– Establish a common framework for software
life cycle processes
– Describe architecture of software life cycle
processes, but not details of how to perform
process activities and tasks
– Contain processes that are applied during
the acquisition, supply, development,
operation and maintenance of software
products
Copyright (c) 1998 by Extended Intelligence, Inc
ISO/IEC 12207 Framework
Primary
Processes
-Acquisition
-Supply
-Development
-Operation
-Maintenance
Supporting Processes
Documentation
-Configuration
Mgt.
-Verification
-Validation
-Joint Review
-Audit
-Problem Resolution
Organizational Processes
-Management
-Improvement
-Infrastructure
-Training
Copyright (c) 1998 by Extended Intelligence, Inc
IEEE 1517 Reuse Framework
Primary
Processes
Supporting Processes
-Asset Management
Cross Project Processes
-Domain Engineering
Organizational Processes
-Reuse Program Administration
Reuse Program Administration
• Plan and implement
an enterprise-wide
Reuse Program
Domain Engineering
• Reusable Components • Process of identifying
domains and creating
domain-specific
reusable components
to be used in
developing software
products for the
domain
Asset Management
• Process for managing
reusable component
storage, retrieval,
version control,
change control, and
distribution
IEEE Std. 1517 Status Report
• Currently exists in final draft form
• Begin review and balloting process in
Spring 1998
• Goal is to have IEEE Std. 1517 approved
and available for industry use in Spring
1999
• Web Page for Draft is rsc.asset.com