470 likes | 619 Views
Systems and Software Product Line Engineering. Charles W. Krueger, PhD CEO, BigLever Software www.biglever.com ckrueger@biglever.com INCOSE Chicagoland Chapter Oct 21, 2010. Agenda. Systems and Software Product Lines (SPL) BigLever Software Gears SPL Framework and Methodology Gears Demo.
E N D
Systems and Software Product Line Engineering • Charles W. Krueger, PhD • CEO, BigLever Software • www.biglever.com • ckrueger@biglever.com • INCOSE Chicagoland Chapter • Oct 21, 2010
Agenda • Systems and Software Product Lines (SPL) • BigLever Software Gears SPL Framework and Methodology • Gears Demo
BigLever at a Glance • Industry leader in Systems and Software Product Line engineering tools and services • 9 years of commercial practice with GearsTM technology and methods • Strategic partner of IBM Rational • Proven success • BigLever customer case studies illustrate successful transitions • SPL Hall of Fame: Salion (2004), LSI Logic (2006), HomeAway (2009) • Large-scale deployments: Lockheed Martin, General Dynamics, GM, ... • Best ROI metrics in the industry
Systems and Software Product Lines • The key to business success depends on the infusion of new ideas about how products and systems are brought to market • To achieve this goal, today's product development organizations must deliver a product line • A portfolio of similar products or systems with variations in features and functions • Not just an individual product or system
Product Lines and Profitability • Companies need economy of scale in their product lines • In manufacturing, greater profitability is achieved by investing in an efficient means of production – manufacturing infrastructure and shared product assets – that can be used to deploy different “flavors” of a product • As product differentiation and innovation move from the physical attributes to software-based features, the need for an efficient means of production for systems and software product lines has become universal
An Efficient Means of Production for Systems and Software Product Lines
Overview ofSystems and Software Product Line Engineering and Delivery
Systems and Software Product Line Engineering and Delivery • Systems and software product line (SPL) engineering and delivery has emerged as a new approach that • provides an efficient means of production for systems and software product lines • supports the full product line development and delivery lifecycle
Order N2 Complexity Complexity of Product-centric Thinking Impedes Portfolio Production “Vertical” Product Perspective
Processes, tools and techniques cannot overcome the exponential complexity A new approach is required... Engineering Complexity Time The Challenge of Product Line Engineering: Harnessing Complexity Engineering Capability
Benefits of a Software Production Line • Economy of Scale from Automated Production • Increase in the scope of product diversity • Increase in the scale of different products effectively delivered and maintained • Cost Savings from Efficiency and Productivity • Increase in productivity and efficiency • Reduction in per-product development cost and overhead • Higher profit margins • Faster Profits from Faster Time to Market • Reduction in time-to-market for new and updated products • Increased agility to react to new opportunities and changing market conditions • Better Products from Better Quality • Increase in customer-perceived product quality • Reduction in defect density • Improved risk management
Multiple Dimensions in a 2G SPL Solution • Synchronous concerns: multi-product, multi-phase, multi-baseline • Multi-product. Feature-based variation management and automated production line • Multi-phase. Product line lifecycle assets, architecture and traceability • Multi-baseline. Product line change management and baseline management
Simplify. SPL Asset Focused Development Leverage. Feature Based SPL Management Consolidate. Variation Management & Automated Production • Business-wide management of portfolio by features rather than by products leads to optimized: • Scalability • Time-to-Market • Eliminating duplication, divergence, merging, manual variation techniques, lifecycle silos, and manual production leads to optimized: • Productivity and Cost • High levels of reuse, deep asset expertise, stable organization structure leads to optimized: • Quality The BigLever 3-Tiered SPL Methodology • Leveraging industry best practices from SPL successes
Minimally Invasive Transitions to SPL Practice • Start with what you’ve got • Use an incremental transition strategy • Create a pilot as the catalyst for change • Stage transition to be non-disruptive to production schedules
What We Offer • Gears™ • Software product line engineering tool & framework • Powerful patented technology • Industry leading • Award winning • Bridge integrations • Rhapsody/Gears Bridge • DOORS/Gears Bridge • Eclipse Plugin • Universal Configuration Management Bridge • Rational Quality Manager/Gears Bridge • Methodology integrations: Focal Point, Publishing Engine, Team Concert, ... • The industry’s most innovative software product line services
DesignModels Require-ments DesignModels Require-ments DesignModels Require-ments FocalPoint QualityManager Rhapsody Eclipse DOORS EclipsePlugin TestCases TestCases TestCases UserDocs UserDocs UserDocs DOORS/GearsBridge Rhapsody/GearsBridge UniversalCMBridge RQM/GearsBridge SourceCode SourceCode SourceCode SourceCode SourceCode SourceCode ProfileA Example Tools FeatureProfiles ... Synergy ProductConfigurator OSFileSystem Production LineDevelopmentEnvironment Example Assets Product A Product N Gears SPL Framework Software Product Line Lifecycle Framework
Services for SuccessIndustry Leading Experience and Expertise • Getting Started Package (recommended first step) • Intense, accelerated, hands-on pilot project • 3-days onsite, half-day prep, half-day post • $5,000 (a $10,000 value). Refundable if not 100% satisfied. • Á la carte • Pilots • Assessments • Transitions • Training
SPL Source Code & File-based Asset Engineeringwith the Universal Configuration Management Bridge
Early Generation SPL Source Code & File-based Asset Engineering • Early generation product-centric approaches lead to exponential complexity • Clone-and-own and branching • For each new product, make a copy or branch, then modify • Leads to expensive duplication, divergence and merging • Compiler preprocessor directives • Tag source code blocks with #ifdef directives • Leads to complex and convoluted source code and build system • One-size-fits-all with runtime conditionals and startup configuration files • Write the portfolio variations and diversity directly into the source code text • Leads to ever-growing, increasingly complex and convoluted source code
Source Code as Gears SPL AssetsFeature-based Software Development
Source file Variation Point with Variants, Logic and Projection
ReleaseManager Product N Product B Product A Baseline 1 Baseline 4 Asset 1 Asset 3 Asset L Asset 2 Key: Beta release Public release Alpha release ... Baseline 2 Baseline 3 Baseline M ... Multi-baseline Management for SPL SPL AssetManagers ...
Gears File-based Variation Points • File system extended with Feature-based SPL variation points • Optional files • Variant files • Optional directories • Variant directories • Variant text transformations • Optional text blocks
Early Generation SPLRequirements Engineering for Product Lines • Early generation product-centric approaches lead to exponential complexity • Clone-and-own (and requirements branching) • For each new product, make a copy of requirements and modify • Optionally add links to track commonality and variations • Leads to expensive duplication, divergence and merging • Attributes, links, scripting • Tag each requirement with one or more attributes about product diversity • Leads to high overhead • Major effort to define and implement attributes, dictionaries, semantics, schemas, scripts and filters • Labor intensive to revisit all requirements and attributes during maintenance and portfolio extension • One-size-fits-all • Write the portfolio variations and diversity directly into the requirements text • Leads to complexity and errors interpreting requirements for any particular product
DOORS Requirements as Gears SPL AssetsFeature-based Requirements Engineering
DOORS/GearsBridge RationalDOORS BigLever SoftwareGears DOORS/Gears Bridge • Dual Plugin “Bridge” between DOORS and Gears SPL Framework • Gears plugin extensions • Automated configuration of DOORS requirements, based on Gears feature profiles • DOORS plugin extensions • Any requirement can be converted into a first-class Gears variation point
DOORS/Gears Variation Points • DOORS extended with Feature-based SPL variation points • Optional requirements • Requirements with variants • Requirements with text transformations
Early Generation SPLModel-driven Development for Product Lines • Early generation product-centric approaches lead to exponential complexity • Clone-and-own • For each new product, make a copy of a similar model and modify • Leads to expensive duplication, divergence and merging • One-size-fits-all • For each new product, add product diversity meta-logic in one model • Leads to large and complex models with product diversity logic intermingled with application logic
Rhapsody Models as Gears SPL AssetsFeature-based MDD for SysML and UML
Rhapsody/GearsBridge RationalRhapsody BigLever SoftwareGears Rhapsody/Gears Bridge • Dual Plugin “Bridge” between Rhapsody and Gears SPL Framework • Gears plugin extensions • Automated configuration of Rhapsody model elements, based on Gears feature profiles • Rhapsody plugin extensions • SysML and UML model elements can be converted into first-class Gears variation points
Rhapsody/Gears Variation Points • Rhapsody extended with Feature-based SPL variation points • Optional model elements (SysML, UML) • Optional code generation (UML) • Code generation variants (UML)
Early Generation SPLTest Engineering for Product Lines • Early generation product-centric approaches lead to exponential complexity • Clone-and-own (and test case branching) • For each new product, make a copy of test cases and modify • Leads to expensive duplication, divergence and merging • One-size-fits-all • Write the portfolio variations and diversity directly into the test case text • Leads to complexity and errors interpreting test procedure for any particular product
RQM Test Cases as Gears SPL AssetsFeature-based Test Engineering
Sub-systemTests Sub-systemTests Sub-systemTests DesignModels Require-ments DesignModels IntegrationTests Require-ments DesignModels Require-ments IntegrationTests IntegrationTests UnitTestCases UnitTestCases UnitTestCases SourceCode SourceCode SourceCode ProfileA FeatureProfiles GearsProduct Configurator SPL Symmetry in the ‘V’ ... Reusable SPL Assets Product A Product N
RQM/GearsBridge RQM/Gears Bridge • Dual Plugin “Bridge” between RQM and Gears SPL Framework • Gears plugin extensions • Automated configuration of RQM test suites, based on Gears feature profiles • RQM plugin extensions • Any test case can be converted into a first-class Gears variation point IBM RationalQuality Manager BigLever SoftwareGears
RQM/Gears Variation Points • RQM extended with Feature-based SPL variation points • Optional test cases
Low Low Slow Low High High High Fast Into the New SPL Frontier • Automated Production Line – an Efficient Means of Production • The scale of your product line and the scope of diversity can be based on business opportunities and profitability rather than the complexity limitations • The BigLever SPL solution opens new frontiers in innovation, economy of scale and profitability, impacting the fundamentals of how you compete
Next Steps to Learn More • Sign up for BigLever Software technical newsletter • www.biglever.com/learn/newsletters.html • Read our white papers, case studies and articles • www.biglever.com/learn/resources.html • Gain hands-on experience • www.biglever.com/learn/evaluations.html • Customer-recommended favorite: Getting Started Package • Call or e-mail • +1-512-426-2227 • info@biglever.com