The document describes PUMConf, a tool that helps configure product-specific use case and domain models from product line models. PUMConf allows modeling variability directly in use case diagrams, specifications, and domain models without using feature models. It provides automated consistency checking of product line models, interactive configuration support with consistency checking of decisions, and automated generation of product-specific models from configured product line models. An evaluation in an industrial case study found the approach and tool to be practical and beneficial for configuring product models in industrial settings.
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽❤️🧑🏻 89...
PUMConf: A Tool to Configure Product Specific Use Case and Domain Models in a Product Line
1. .lusoftware verification & validation
VVS
PUMConf: A Tool to Configure Product
Specific Use Case and Domain Models
in a Product Line
Ines Hajri, Arda Goknil, Lionel C. Briand "
SnT Center, University of Luxembourg
IEE, Luxembourg
Thierry Stephany "
3. • Ad-hoc change management in the context of product
lines
• No explicit representation of variabilities and
commonalities across products
• Manual and error-prone evaluation of the entire use
cases and domain model for changes across
products
• Manual and time-consuming generation of use
cases and domain models across products
Problem"
3
4. • Support requirements configuration in the context of
product lines
• Practical variability modeling in use case models:
modeling variability directly in use cases without
making use of feature models
• Automatic configuration of product specific use
case models
Objective"
4
5. Product specific "
use cases and
domain model
Customer A
for Product X
Product line
use cases and
domain model
Customer B
for Product X
Product specific "
use cases and
domain model
Customer C
for Product X
Product specific "
use cases and
domain model
configure
configure
configure
Define all
variabilities and
commonalities
Reuse commonalities
and exploit
variability to build a
product
Configurator:"
PUMConf
5
6. Elicitation of PL Use Case
and Domain Models with
Consistency Checking
¨
PL Use Case
Diagram
PL Domain
Model
<<s>>
<<p>>
<<p>>
<<m>>
PL Use Case
Specifications
PUMConf Overview"
6
7. 2. Model
variability in
use case
specifications
Introduce new
extensions for use
case specifications
in RUCM
1. Model
variability in
use case
diagram
3. Model
variability in the
domain model
Integrate and adapt
existing work
Integrate and adapt
existing work
G. Halmans and K. Pohl, “Communicating the variability !
of a software-product family to customers,” Sosym, 2003
T. Ziadi and J.-M. Jezequel, “Product line !
engineering with the uml : Deriving products,
” Software Product Lines. Springer, 2006.
Product Line Use Case Modeling
Method: PUM
7
I. Hajri, A. Goknil, L. C. Briand, and
T. Stephany” Configuring use case
models in product families” Sosym
2016
8. Elicitation of PL Use Case
and Domain Models with
Consistency Checking
¨
PL Use Case
Diagram
PL Domain
Model
<<s>>
<<p>>
<<p>>
<<m>>
PL Use Case
Specifications
Are the models
consistent ?
List of
Inconsitencies
No•• •• •• •• •• •• •• ••
PUMConf Overview"
8
9. 9
Use Case Models Consistency
Use case diagram
Use case specifications
10. Elicitation of PL Use Case
and Domain Models with
Consistency Checking
¨
PL Use Case
Diagram
PL Domain
Model
<<s>>
<<p>>
<<p>>
<<m>>
PL Use Case
Specifications
Are the models
consistent ?
List of
Inconsitencies
No•• •• •• •• •• •• •• ••
Yes Elicitation of
Configuration Decisions
with Consistency Checking
≠
Are decisions
consistent and
complete? List of
Contradicting
Decisions
No •• •• •• •• •• •• •• ••
PUMConf Overview"
10
11. STO System
Sensors
Recognize
Gesture
Identify System
Operating Status Storing
Error
Status
Provide System
Operating Status
Tester
<<include>>
<<Variant>>
Store Error
Status
<<include>>
Clearing
Error
Status
<<Variant>>
Clear Error
Status
0..1
0..1
<<Variant>>
Clear Error Status
via Diagnostic
Mode
<<Variant>>
Clear Error
Status via IEE
QC Mode
0..1
<<include>>
Method of
Clearing
Error Status
1..1
<<require>>
STO Controller
<<include>>
Storing
Error
Status
<<Variant>>
Store Error
Status
Clearing
Error
Status
<<Variant>>
Clear Error
Status
0..1
0..1
<<require>>
Checking Contradicting Decisions"
11
13. Elicitation of PL Use Case
and Domain Models with
Consistency Checking
¨
PL Use Case
Diagram
PL Domain
Model
<<s>>
<<p>>
<<p>>
<<m>>
PL Use Case
Specifications
Are the models
consistent ?
List of
Inconsitencies
No•• •• •• •• •• •• •• ••
Yes Elicitation of
Configuration Decisions
with Consistency Checking
≠
Are decisions
consistent and
complete? List of
Contradicting
Decisions
No •• •• •• •• •• •• •• ••
Yes
PS Use Case
Diagram
PS Domain
Model
PS Use Case
Specifications
Generation of
Product Specific Use
Case and Domain Models
Actor
Reques
t Order
Show
catalog
Pay For
PUMConf Overview"
13
14. PUMConf Maturity"
14
• PUMConf is evaluated in industrial context with case
study and questionnaire study
• Semi-structured interview and a questionnaire
• Interviewees had substantial experience and seven
important roles were covered
• Our approach and tool are practical and beneficial to
configure product use case and domain models in
industrial settings
15. • PUMConf is implemented as IBM DOORS plugin
• Modeling variability directly in use case diagram,
specifications and domain models without making use of
feature models
• Automated consistency checking of product line use case
and domain models
• Automated, interactive configuration support with
consistency checking of configuration decisions
• Automated generation of PS use case and domain models
from product line models
Summary: Tool Features"
15
17. .lusoftware verification & validation
VVS
PUMConf: A Tool to Configure Product
Specific Use Case and Domain Models
in a Product Line
Ines Hajri, Arda Goknil, Lionel C. Briand "
SnT Center, University of Luxembourg
IEE, Luxembourg
Thierry Stephany "
21. 21
Product Specific"
Use Cases and
Domain Model
Customer A
for Product X
Product-Line
Use Cases and
Domain Model
Configurator
Customer B
for Product X
Product Specific"
Use Cases and
Domain Model
Customer C
for Product X
Product Specific "
Use Cases and
Domain Model
Configure
evolvesevolvesevolves
ReconfigureReconfigure
Reconfigure
evolves
22. The Need for a Custom Configurator
for Use Cases
• A custom solution is required for further extensions:
reconfiguration and change impact analysis in product
line use case models
• Most of existing configurators need feature models or
require variability be expressed in a specific notation or
language
• Not only we need a decision-making support but also the
automatic generation of product specific use case and
domain models
22
23. • Our consistency checking algorithm is based on
mapping variation points, use cases and variant
dependencies to propositional logic formulas
• Our approach only checks the satisfaction of the
propositional formulas derived from dependencies of
variation points in the PL diagram
• If the formulas are not satisfied, the algorithm returns
contradicting decisions to the analyst
23
Consistency Checking of
Configuration Decisions (1)
24. • The algorithm checks if there is any contradiction with
prior decisions
• Our approach follows the Fix right away with selective
(multiple) undo strategy
24
Consistency Checking of
Configuration Decisions (2)
25. 25
Generation of PS Models
PL Use Case
Diagram
Diagram
Decisions in
Decision Model
PL Use Case
Specifications
Specification
Decisions in
Decision Model
Annotated
PL Use Case
Specifications
PL Domain
Model
Domain Model
Decisions in
Decision Model
PL-PS Transformer
Diagram
Transformer
Specification
Transformer
Domain
Model
Transformer
PS Use Case
Diagram
PS Use Case
Specifications
PS Domain
Model
GATE NLP
WorkbenchJAPEJAPEJAPEJAPE