Upload
prismtech
View
579
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Radio architects and developers very often need to produce variants of their Software Defined Radio (SDR) Software Communications Architecture (SCA) applications and platforms to support different configurations of their radio set. Traditionally this has been a time consuming and costly process as they needed to create and maintain multiple models for every possible product variant. This presentation will introduce and demonstrate an innovative new product, Spectra CX Product Line Management, which has been designed to support the modeling needs of entire radio families using just a single model. Presentation attendees will learn how to use model driven development techniques to reduce the time and costs of managing variations in SDR/SCA product family design.
Citation preview
November 29, 2012
Using Model Driven Development
to Easily Manage Variations in
SDR Product Family Design
PrismTech 2012
Introduction
Radio architects and developers very often need to produce variants of their SDR/SCA applications and platforms to support different configurations of their radio set.
This can be a time consuming and costly process as they need to create and maintain multiple models for every possible product variant.
This webcast will introduce and demonstrate an innovative new product, Spectra CX Product Line Management, which has been designed to support the modeling needs of entire radio families using just a single model.
2
PrismTech 2012
TOPICS
SDR/SCA product variability problem
Current solutions
Modeling variability and product lines
Spectra CX Product Line Management
Concepts – Variation Points, …
Workflow
Demonstration
Benefits
3
PrismTech 2012
Product Variability Problem
Radio manufacturers need to produce
variants of their SCA applications and
platforms to support different configurations
of their radio set
Development teams need to manage debug,
test, production, etc. versions of their radios
Developers need to build “lab” radios to test
their components under development
SCA 4.0 profiles?
4
PrismTech 2012
Example: DTP4700 5
DTP4700L 30 MHz to 1600 MHz frequency range 40 KHz – 40 MHz signal bandwidth
DTP4700H 400 MHz to 4000 MHz frequency range 20 KHz – 40 MHz signal bandwidth
Set the value of
three (3)
SCA Properties
of one (1)
component
Select an
Implementation
PrismTech 2012
Current Solutions
Copy and Edit
Compiler switches
Pre/post processing
Custom tools
Repositories with re-use capabilities
Model-driven development capabilities of Spectra CX Managing/sharing model elements across multiple projects/teams
6
Not ideal for managing product
lines…variations on a base product
PrismTech 2012
Modeling Variability
Modeling variability using Variation Points was introduced by Jacobson in 1997
A Variation Point identifies one or more locations at which variation may occur
Handling variability with extensions to UML-based design methods and processes >> UML 2.0 [Clauss 2001] [Gomaa 2004]
Variation Point Model (VPM) -- an approach to modeling variability, based on Jacobson’s original concept [Webber 2004]
Visualizes the variation points
Gives the “reuser” an understanding of how to build a variant from a set of variation points
7
PrismTech 2012
Modeling Product Lines (2000+) 8
Modeling and Using Product Line Variability in Automotive
Systems, Theil and Hein, IEEE Software July/August 2002
Product line feature and architecture modeling with generation of product architectures and artefacts >> Model-Driven Development
PrismTech 2012
Spectra SDR/SCA Solution
Leverage current Spectra CX capabilities >> MDD
Domain-specific application of the Variation Point and Variation Point Model concepts
Generic UML2 based Variation Points applied to SDR/SCA-specific model elements
SDR/SCA-specific validation and generation
Provide model-based capability for managing a product line architecture
Meet the need for building product variants (configurations)
Complement the SCA’s support for “dynamic” variants
Generate Spectra CX models which can be used to generate, build, deploy and test product variants
9
PrismTech 2012
Spectra CX Product Line Management
Plug-in to Spectra CX 3.4 Implemented as a UML Profile
Provides architects with ability to specify variability (variation points) for any model
Inclusion/Exclusion
Parameterization of values or settings
Variation point models allow users to quickly and easily engineer product configurations
Generates standard Spectra CX models for a given product configuration
10
PrismTech 2012
New Concepts
Product Line Model
Spectra CX modeling used to produce a “base” model for the product line architecture
Specifies all the features and variation points in the product line
Variation Point
Identifies one or more model elements where a variation may occur
Variation Point Model
Generated from a product line model – a list of all the variation points in the base model
Simplifies the workflow for specifying a product variant
Product Configuration
Derived from the Variation Point Model – a list of all the configuration points in the base model
Configuration Point
Editable copy of a Variation Point in a Product Configuration
Used to specify generation and values or settings for product line model elements
Product (Configuration) Model
Generated from the Product Line Model + Product Configuration (Points)
Correct-by-construction model artefact supported by Spectra CX MDD capabilities
11
PrismTech 2012
Variation Points
New stereotype used to identify those features which are variation points in the product
Properties:
Name (user defined)
Id (generated, unique)
Constrained Elements (list)
For each element, the Attributes (list), Name, and Qualified Name
12
PrismTech 2012
…can be created on
Applications and nodes
Application, node and platform parts
Properties
Implementations
Component interface ports
Components and component interfaces
13
PrismTech 2012
Types of Variation Points
Variation Point -- controls generation of the element (true | false)
… With Value -- applied to component properties where values will be set
…With Settings – applied to element attributes where values or references will be set
14
PrismTech 2012
Configuration Points
Similar to Variation Points, except modifiable
Properties
Generate -- the constrained elements of the
Variation Point (set to true by default)
Name (set to the name of the Variation Point)
Variation Point (set to the Variation Point)
…WithValue, Value applied to all properties
constrained by the Variation Point
…WithSettings, Settable Attributes
15
PrismTech 2012
…Currently Settable Attributes 16
Model Element Settable Attributes
Component PRFFileName, SPDFileName
Component implementation PRFFileName
Component interface PRFFileName, SCDFileName
Node DCDFileName
Parts on node Deployondevice
Application SADFileName
Implementation File on its SCABinary
PrismTech 2012
Roles and Responsibilities
Product Line Architect
Responsible for the product
line model
Manages variability –
models the variation points
Ensures a variation point is
modeled such that a
product engineer has
enough knowledge to
specify a variant
When a new variant is
needed, they add or modify
VPs
Product Engineer
Creates product configurations as needed
Specifies product configurations using the configuration points
Generates the product model
Generates the XML descriptors, …
Builds the product variant
17
PrismTech 2012
Workflow 18
Product Line Model
Variation Points
Variation Point Model
Product Configuration
Product Model
Code, Tests, Docs, … XML
Add
Generate
Specify
Generate
Generate
Architects
Engineers
PrismTech 2012
Demonstration
Modeling a product line
Modeling variation points
Generating a variation point model
Creating product configurations
Specifying configuration points for 1. X86 Radio
2. ARM9 Platform
3. X86 Radio with Debug implementation
Generating product configuration models
Using product configuration models
19
PrismTech 2012
Benefits
Radio developers no longer need to create and maintain a model for every possible product variant, only the product line model, variation points and product configurations
Architects have the flexibility of tailoring the core assets to the needs of the product line
Modeling the variation points lets the product line architect define the range and scope of the product variants
Variation Points communicate to the user the knowledge needed to specify a variant
Variation Point Models simplify the creation and management of product configurations
Users can engineer product configurations to meet their specific needs
Generated product models are complete, correct-by-construction, Spectra CX models which can be used to generate SCA compliant platforms and applications
20
PrismTech 2012
Summary
Spectra CX Product Line Management supports model-driven development of SDR/SCA product lines
Variation Points provide the flexibility for specifying/managing product line architectures
Leverages Spectra CX modeling features
Specific to the needs of SDR/SCA developers
Optimized workflows for creating/maintaining product variants
Synchronization of the Product Line Model, Product Configurations, and Product Models
Extensible to meet customer needs e.g. default values for Variation Points
Generates Spectra CX model and XML descriptors for each variant
21
PrismTech 2012
For More Information…
E-mail: [email protected]
Website: www.prismtech.com/spectra
Contact your local PrismTech account
manager
22
PrismTech 2012
23
Thank You