AgileTecting™: Placing Agility Where It Counts In System and Software Architecting (Invited Presentation)

advertisement
AgileTecting™:
Placing Agility Where It Counts In
System and Software Architecting
(Invited Presentation)
Dr. Azad M. Madni
CEO and Chief Scientist
Intelligent Systems Technology, Inc.
USC-CSSE Workshop
on Integrating Systems and Software Engineering
Davison Conference Center; Los Angeles, CA
October 29-30, 2007
3250 Ocean Park Blvd., Suite 100, Santa Monica, CA 90405
310-581-5440 Fax: 310-581-5430 www.IntelSysTech.com
Copyright © 2007 Intelligent Systems Technology, Inc.
Outline
 Environment
 Agility Imperative
 AgileTecting™
 Agile Process vs. Agile System
 Agility Metrics
 Conclusions
 References
** AgileTecting™ and AgileTecture™ are trademarks of Intelligent Systems Technology, Inc.
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/2
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
Environment
 Competitive market forces impose challenging tradeoffs especially
in complex product development
 achieve low-cost despite uncertainties about production volume
 assure high quality while exploiting emergent/new technologies
 Uncertainty will certainly exist in this environment (evolving needs
of users and customers; changes in the operational environment)
 In these circumstances, product development processes need to be
more than just flexible (i.e., easy to change), they need to be agile
(i.e., assure change is possible at low cost regardless of build
volume)
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/3
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
A Matter of Concern
Ref: From Flexible Product Development by
Preston G. Smith, Jossey-Bass, 2007. © 2007 by
John Wiley & Sons. Data source: Robert G.
Cooper, “Your NPD Portfolio May Be Harmful to
Your Business’s Health,” Visions, 29(2): 22–26
(April 2005).
There has been a steady, steep decline in highly innovative,
unprecedented products. Instead, 80 percent of the products are
extensions, improvements, and modifications to existing products.
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/4
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
Agility Imperative
 Encompasses both development process as well as end product
 Agility in development process
 required when pressing need for flexibility and speed in upstream
process of conceptualizing, designing, and implementing
products/systems
 implies keeping solution options space open as late as possible
 Agility in system or end product
 required when unable to predict future demand or functional
requirements with high confidence
 implies embedding agility in the system or end product
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/5
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
A Few Key Definitions
 Flexible
 the ability of a system to be easily changed
 Robust
 the ability of a system to perform predictably under a variety of changing
conditions (e.g., environment changes, internal variation)
 Adaptive
 the ability of a system to semi-autonomously/autonomously change its mode of
operation in response to changing environmental demands
 the ability of a system to have some degree of autonomy to self-optimize, test,
or monitor
 Adaptable
 the ability of a system to respond to predefined, deterministic set of operation
parameters
 also called reconfigurable
 Agile
 the ability of a system to rapidly AND cost-effectively exploit change
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/6
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
A Key Clarification
 Complicated System
 a system comprising many elements
 the whole can be (re)assembled from its parts
 a single key flaw can compromise the operation of the entire system
 Complex System
 a system in which overall performance cannot be predicted from merely
“sum of the parts”
 exhibit behaviors such as adaptiveness, self-organization and emergence
 consist of many types of components and connections… which may
both change dynamically
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/7
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
AgileTecting™
(Madni, 2004)
 A methodology-driven process for:
 assessing when agility is appropriate for a particular problem
domain
 incorporating agility in both the product and process in the right
places to achieve desired outcomes
Especially appropriate for engineering
complex, long-lived systems / products
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/8
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
Sample AgileTecting
Principles (Madni, 2004)
 Reuse
 decouple unit cost from build volume through reuse and up-front
infrastructure investment
 Continuous, Incremental Deployment
 accommodate process change throughout the product lifecycle to exploit new
breakthroughs (in product and process)
 Dynamic Capacity Adaptation
 adapt capacity to demand in both process and product
 Individual Preference Support
 achieve customization of individual products at mass production efficiencies
(e.g., automobile dealers)
 Option Space Preservation
 avoid/circumvent premature closure of option space to exploit new
breakthroughs in process and technologies
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/9
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
Agile Process
 Characteristics
 embraces change as a natural consequence of innovative work
 keeps options open as late as possible in the product lifecycle to exploit
opportunities and breakthroughs without paying a steep price
 Suitability
 those circumstances in which significant uncertainties exist during product
development and after product is fielded
 Sources of Uncertainty (examples)
 changing customer requirements
 technology readiness level (e.g., immature technologies)
 manufacturing readiness levels (e.g., immature manufacturing processes)
 Key Benefits
 opportunity to rethink/modify solutions and concepts to exploit new
developments / findings
 cost-effectively build and deliver the right product regardless of build volume
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/10
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
Agile Product (or System)
 Characteristics
 can respond to unexpected changes in the environment through dynamic
restructuring/reconfiguration (e.g., re-plan during C2 operations; agile assembly
lines)
 is adaptable to unfolding user demand, new regulatory measures, or new
competitors after being fielded
 Suitability
 circumstances in which not all uncertainties are resolved before product is
fielded
 system needs to cost-effectively and rapidly respond to changes or capitalize on
opportunities during operation
 Sources of Uncertainty
 change in mission or operational environment; new user or customer
requirement(s)
 Key Benefits
 ability to rapidly and cost-effectively adapt to or exploit changes in
customer/mission demands, or respond to unexpected conditions in the
operational environment
 ability to handle uncertainties even after being deployed
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/11
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
Agile Process vs. Agile Product
Comparison
Factors
Agile Process
Agile Product
Emphasis
carefully explore design option space;
delay “design freeze” point until vital new
information becomes available during
development or after deployment
respond to changes in requirements after
being initial fielded
Key Characteristic
flexibility incorporated in the
development process for rapid, costeffective adaptation
system can easily, quickly, cost-effectively
change/be changed in operational setting
Uncertainty
most uncertainty resolved prior to
product release; however, process
remains flexible throughout lifecycle
(e.g., five years after deployment; it turns
out we can do it with COTS)
substantial (e.g., demand evolution,
changes in customer functional
requirements); needs to be addressed
during product operations
When Needed
changing customer criteria, immature
technologies, low-to-medium
manufacturing readiness levels
long lifecycle (>10 years), significant
replacement costs (i.e., to build a new
system)
Penalty
increased process complexity, potentially Increased product complexity, introduction
slower cycle time
of additional interfaces, higher costs
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/12
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
Agility Metrics
 Process
 to what extent is unit cost decoupled from build volume
 how late can technology choices/decision options stay open in product lifecycle
 to what extent can individual products be made at the speed and efficiency of
mass customization
 Product
 to what extent can individual requirements be satisfied across the product and
its variants
 to what extent does the architecture support product reconfiguration into “new”
products as planned variants
 to what extent can the architecture reconfigure into minimal form to avoid
damage by unexpected events (e.g., shut down systems when security breach
occurs)
 what are the cost and time savings from product replacement avoidance
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/13
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
AgileTecting Example
 Problem: Flexible Manufacturing System (FMS)
 easy to change
 …. but, unit cost highly sensitive to build volume
Unit
TD
SD&D
 AgileTecting Solution
Cost
POC
 identify idle time in manufacturing line
POD
 identify other products the
EDM
manufacturing line could support
during idle times
POC
 identify equipment gaps (if any) to
POD
EDM
support new products, and fill gaps
 employ manufacturing line for multiple
0.1
1
products simultaneously and thereby eliminate idle times
P&D
LRIP
PROD
LRIP
10
PROD
100
Traditional Process
Agile Process
1,000
10n
Volume
 Outcome: Agile Manufacturing Systems (AMS)
 increase in “effective build volume” of manufacturing line decreases unit cost for
each product regardless of build volume for each product
 net result is that unit cost is decoupled from build volume for a particular product
by exploiting “volume” effects across multiple products
 Reuse of manufacturing line is what achieves effective decoupling of unit cost
from build volume
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/14
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
AgileTecting Example
 Problem: Current Enterprise Architectures
 non-scalable
 limited extensibility
 AgileTecting Solution
 identify reusable IT services/components
 map reusable IT services/components to business processes
 decouple communications from services
 employ standard communication protocols
 Outcome: Service Oriented Architecture
 unbounded extensibility
 unbounded scalability
 on-demand process adaptation through dynamic services orchestration
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/15
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
Conclusion
 Agility comes at a cost (thinking, planning, modifying, keeping options
open)
 Not every situation requires agility
 It is possible to have a flexible process that is not agile; however, every agile
process is flexible
 The key challenge is determining where agility is needed and to what end
 e.g., mature industries tend to focus on process innovation, not product
innovation (Haberfellner, et. al., 2002); such industries stand to benefit from
agile process
 We need to step-up in the creation of innovative, “game-changing” products
 Properly placed agility is a key ingredient in realizing this vision
 AgileTecting™ provides a methodology-based approach for determining if
and where agility is needed and how best to introduce it in processes and
systems
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/16
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
References
 Madni, A.M.. “AgileTecting™: Placing Agility Where it Counts in System and Software Architecting,







to be presented in the Sixth Annual Conference on Systems Engineering Research (CSER), April 4-5,
2008, Los Angeles, CA.
Madni, A.M., Madni, C.C., and Stogdill, C. “ProcessWeb™: Web-enabled Process Support for
Planning the Formation of a Virtual Enterprise,” (Invited paper) Proceedings of the 1998 IEEE
International Conference on Systems, Man, and Cybernetics, San Diego, CA, October 11-14, 1998,
pp. 2591-2596.
From Flexible Product Development by Preston G. Smith, Jossey-Bass, 2007. © 2007 by John Wiley
& Sons. Data source: Robert G. Cooper, “Your NPD Portfolio May Be Harmful to Your Business’s
Health,” Visions, 29(2):22–26 (April 2005).
Haberfellner, R. and de Weck, O. “Agile SYSTEMS ENGINEERING versus AGILE SYSTEM
engineering,” Proceedings of Fifteenth Annual International Symposium of the International Council
On Systems Engineering (INCOSE), July 10-15, 2005, Rochester, NY.
Madni, A.M., Moini, A. and Madni, C.C. AgileTecture™: A Methodology and Toolkit for Agile
Design and Dynamic Reconfiguration of C4ISR Architectures, Intelligent Systems Technology, Inc.
Phase I Final Technical Report, ISTI-FR-576-07/05, Contract #W15P7T-05-C-S601, July 8, 2005.
Boehm, B. and Turner, R. “Balancing Agility and Discipline: A Guide for the Perplexed,” MA:
Addison-Wesley. ISBN 0-321-18612-5.
Goranson, H. T. “The Agile Virtual Enterprise: Cases, Metrics, Tools, Quorum Books, Westport, CT,
1999.
Atkinson, S.R. and Moffat, J. “The Agile Organization: from Informal Networks to Complex Effects
and Agility,” Information Age Transformation Series, Command Control Research Program (CCRP)
Publication Series, Washington, D.C., July 2005.
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/17
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
Dr. Azad M. Madni
amadni@intelsystech.com
Azad M. Madni, Ph.D.
CEO and Chief Scientist, ISTI
•
•
•
•
•
•
•
•
•
•
President, Society of Design and Process Science (SDPS)
Editor-in-Chief, Journal of Integrated Design and Process Science
Fellow of IEEE, INCOSE, SDPS, IETE, and Associate Fellow of AIAA
Developer of the Year in 2000, 2004 at Software Industry Awards
2006 C.V. Ramamoorthy Distinguished Scholar Award from SDPS for seminal contributions to
design and process science
Selected by DARPA IPTO for Sustained Excellence by a Performer and Significant Technical
Achievement Awards at DARPATech 2004
SBA’s 1999 National Tibbetts Award for California (innovation, entrepreneurship)
Mass Mutual and Chamber of Commerce 2002 Blue Chip Enterprise Award for entrepreneurship
Several awards and commendations from DARPA, OSD, and Navy for innovations in concurrent
engineering, agile manufacturing, modeling and simulation, and agent architectures
Principal Investigator on approximately seventy R&D projects sponsored by: DARPA,
HSARPA, OSD, MDA, AFRL, AFOSR, NSWC, ONR, NAVSEA, NAVAIR, NRL, MARCOR,
CECOM, AMCOM, RDECOM, ARI, HEL, NIST, DoE, and NASA
Copyright © 2007 Intelligent Systems Technology, Inc.
Madni/19
Information in this document is the property of Intelligent Systems Technology, Inc. Disclosure is made in confidence.
Unless otherwise permitted, use or further disclosure of the depicted information by persons outside Intelligent Systems Technology, Inc. is prohibited.
Download