Automated Planning for Feature Model Configuration based on Functional and Non-Functional Requirements Samaneh Soltani 1, Mohsen Asadi 1, Dragan Gašević.

Slides:



Advertisements
Similar presentations
Knowledge Engineering for Planning Domain Design Ron Simpson University of Huddersfield.
Advertisements

1 An innovative Policy-based Cross Certification methodology for Public Key Infrastructures V.Casola, A.Mazzeo, N.Mazzocca, M. Rak University of Naples.
Customer Contract Management
A System to Generate Test Data and Symbolically Execute Programs Lori A. Clarke September 1976.
The GDSE Framework A Meta-Tool for Automated Design Space Exploration Tripti Saxena Graduate Student Vanderbilt University 1.
SHOP2: An HTN Planning System Nau, D.S., Au, T.C., Ilghami, O., Kuter, U., Murdock, J.W., Wu, D. and Yaman, F. (2003) "SHOP2: An HTN Planning System",
Domain Engineering Silvio Romero de Lemos Meira
Ontological Logic Programming by Murat Sensoy, Geeth de Mel, Wamberto Vasconcelos and Timothy J. Norman Computing Science, University of Aberdeen, UK 1.
CyberSource Strengths
MIS 325 PSCJ. 2  Business processes can be quite complex  Process model: any abstract representation of a process  Process-modeling tools provide a.
WebRatio BPM: a Tool for Design and Deployment of Business Processes on the Web Stefano Butti, Marco Brambilla, Piero Fraternali Web Models Srl, Italy.
© 2005 Prentice Hall6-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Spreadsheet Management. Field Interviews with Senior Managers by Caulkins et. al. (2007) report that Spreadsheet errors are common and have been observed.
The Decision-Making Process IT Brainpower
Knowledge and Systems Research Group, University of Huddersfield B vs OCL: Comparing Specification Languages for Planning Domains Diane Kitchin, Lee McCluskey,
Introduction to SAP R/3.
Building Knowledge-Driven DSS and Mining Data
Short Course on Introduction to Meteorological Instrumentation and Observations Techniques QA and QC Procedures Short Course on Introduction to Meteorological.
Configuration Management
Introduction to our e Commerce Solution.  Supports categories and manufacturers  Categories can also be fully nested to any level desired (sub-categories)
NON-FUNCTIONAL PROPERTIES IN SOFTWARE PRODUCT LINES: A FRAMEWORK FOR DEVELOPING QUALITY-CENTRIC SOFTWARE PRODUCTS May Mahdi Noorian
Technical Considerations for Implementing International Credit Projects Jay Tchakarov Director of Product Management HighRadius
© 2008 Authorize.Net 1 Welcome to Authorize.Net New Reseller Overview 2008.
Data Mining Chun-Hung Chou
Enabling Organization-Decision Making
What do you get when you combine two leaders in their respective fields?
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
Chapter 8 Architecture Analysis. 8 – Architecture Analysis 8.1 Analysis Techniques 8.2 Quantitative Analysis  Performance Views  Performance.
Li Yi, APSEC ‘12 Constructing Feature Models Us­­ing a Cross-Join Merging Operator.
1 Intelligent Systems ISCRAM 2013 Validating Procedural Knowledge in the Open Virtual Collaboration Environment Gerhard Wickler AIAI, University.
Visual Linker Final presentation.
Overview of Data Mining Methods Data mining techniques What techniques do, examples, advantages & disadvantages.
Agent Model for Interaction with Semantic Web Services Ivo Mihailovic.
DECISION-MAKING SYSTEMS Decision Support Software.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
1 Software Reliability Assurance for Real-time Systems Joel Henry, Ph.D. University of Montana NASA Software Assurance Symposium September 4, 2002.
Decision Support System for the Long-Term City Metabolism Planning Problem Work Package 54 Mark Morley, Diogo Vitorino, Kourosh Behzadian, Rita Ugarelli,
Visual Linker ARD presentation. slide 2  Background and Vision  Problem Domain  Stakeholders  Functional Requirements  Non Functional.
Achieving High Software Reliability Using a Faster, Easier and Cheaper Method NASA OSMA SAS '01 September 5-7, 2001 Taghi M. Khoshgoftaar The Software.
Kislaya Prasad, PhD. Artificial Intelligence Ubiquitous Sensors 2.
1 Context-dependent Product Line Practice for Constructing Reliable Embedded Systems Naoyasu UbayashiKyushu University, Japan Shin NakajimaNational Institute.
27/3/2008 1/16 A FRAMEWORK FOR REQUIREMENTS ENGINEERING PROCESS DEVELOPMENT (FRERE) Dr. Li Jiang School of Computer Science The.
2nd Meeting of Young Researchers on MULTIPLE CRITERIA DECISION AIDING Iryna Yevseyeva Niilo Mäki Instituutti University of Jyväskylä, Finland
Menu Labeling Katie Bengston MS, RD, LD Nutrition Manager Panera Bread
E-Commerce Solution for all businesses. E-commerce solution for all businesses.
Top-K Generation of Integrated Schemas Based on Directed and Weighted Correspondences by Ahmed Radwan, Lucian Popa, Ioana R. Stanoi, Akmal Younis Presented.
Introduction Complex and large SW. SW crises Expensive HW. Custom SW. Batch execution Structured programming Product SW.
Welcome!. Bright Stores Boot Camp: An Intro to Company Stores 101.
Error Explanation with Distance Metrics Authors: Alex Groce, Sagar Chaki, Daniel Kroening, and Ofer Strichman International Journal on Software Tools for.
Requirement Engineering with URN: Integrating Goals and Scenarios Jean-François Roy Thesis Defense February 16, 2007.
E commerce Online Shopping Website at Rs. 7920/-.
Chapter 3 Building Business Intelligence Chapter 3 DATABASES AND DATA WAREHOUSES Building Business Intelligence 6/22/2016 1Management Information Systems.
The PLA Model: On the Combination of Product-Line Analyses 강태준.
Industry’s Best CMS Package For Magento Ecommerce.
Wolfgang Runte Slide University of Osnabrueck, Software Engineering Research Group Wolfgang Runte Software Engineering Research Group Institute.
Requirements Engineering Process
Introduction Characteristics Advantages Limitations
Over-the-Counter Sales Scenario Overview
Etalaze Overview RUDY SUSILO
Personal Finance Portfolio Management App for Better ROI and Control As portfolios become more diverse, they naturally become more complex. This increased.
Order-to-Cash (Project-Based Services) Scenario Overview
Engineering design is the process of devising a system, component, or process to meet desired needs. It is a decision-making process in which the basic.
Course: Module: Lesson # & Name Instructional Material 1 of 32 Lesson Delivery Mode: Lesson Duration: Document Name: 1. Professional Diploma in ERP Systems.
Over-the-Counter Sales Scenario Overview
Order-to-Cash (Project-Based Services) Scenario Overview
Demand Management, Order Management, and Customer Service
METHOD ENGINEERING A Dissection of Dynamic Decision Models for Staged Software Product Line Configuration Ahmad Rifai ( )
MAPO: Mining and Recommending API Usage Patterns
Presentation transcript:

Automated Planning for Feature Model Configuration based on Functional and Non-Functional Requirements Samaneh Soltani 1, Mohsen Asadi 1, Dragan Gašević 2, Marek Hatala 1, Ebrahim Bagheri 2 1 Simon Fraser University, 2 Athabasca University SPLC’12

2 Research Problem & Goal SPLC'12 Software development issues: Control cost Accelerate time-to-market Improve product quality Instance1Instance2Instance3 Requirements1 Requirements2 Requirements3 Core Software assets Variabilities Software Product Line Engineering

3 Outline SPLC'12 Introduction of Software Product Line Problem Statement Automated Feature Model Configuration Integrating feature model with non-functional properties Optimizing non-functional properties Feature model configuration using HTN planning Tooling support and evaluation Related Work Future Work

4 Introduction to SPLE SPLC'12 Software Product Line A set of similar software systems that share many common features and satisfy the requirements of a particular domain. Feature Models Provides formal and graphical representations of relations, constraints, and dependencies of the features FM Configuration Selecting best and allowable combination of features based on objectives of stakeholder.

5 Manual Feature Model Configuration SPLC'12 Stakeholders Functional & Non-functional Requirements Root F2 F1 F4F5 F6 F7 F3 Feature Model Configuration Process Application Engineer Configuration Decision Root F2 F1 F4F5 F6 F7 F3 Final Configuration:    Roles Artifacts Process

6 Problem Statement SPLC'12 Research Problem: Selecting a correct set of features for one product among all features in feature model is hard. Number of possible configuration Impact of features on non-functional properties Stakeholders’ constraints and preferences Solution: Using Artificial Intelligence (AI) planning technique to select suitable features and optimize non-functional properties HTN planning (SHOP2)

7 Overview of the Proposed Approach SPLC'12 Root F2 F1 F4F5 F6 F7 F3 Extended Feature Model Generate Plan (using SHOP2 Planner) Application Engineer Root F2 F1 F4F5 F6 F7 F3 Final Product   Stakeholders Transform to HTN formalism Create Shop2 Domain and Problem Constraints over NFPs Functional Requirements Calculate weight of NFPs and Ranks of feature using SAHP algorithm Requirements Relative importance

8 Extended Feature Model SPLC'12 NFP Features Security Internatio nal Sale Customer Satisfaction Response Time CostAvailability Reliabilit y Credit CardLowNHigPMedP50ms$60090%95% Debit CardLowPMedP 60ms$45090%95% Fraud Detection HighPLowPHighP40ms$60080%98%. Payment Gateway Payment Options Payment Type Order Confirmation Check out Mail Shipping Options Multiple Shipments Gift Option Phone Electroni c Page Fraud Detection Cost Calculation QoS Selection Courier Gateway Electronic Checque Paradata DHL Canada Post Cyber Source Link Point Authorize. NET Fedex Purchas e Order Credit Card Debit Card Cash Security [LowN] International Sale [HighP] Cost [$600] Response Time [50ms] Reliability [95%] Security [HighP] International Sale [LowP] Cost [$600] Response Time [40ms] Reliability [98%] Security [LowP] International Sale [MedP] Cost [$400] Response Time [60ms] Reliability [95%]

9 Extended Feature Model SPLC'12 NFP Model: Types of NFP Quantitative(Numeral): e.g. footprint, cost, accuracy,.. Qualitative(Ordinal): e.g. Security, reliability, integrity,.. Effect of Features Over NFP Positive e.g. security Negative e.g. cost Aggregation functions Additive, Multiplication, Min/Max, …

10 Overview of the Proposed Approach SPLC'12 Requirements Constraints over NFPs Functional Requirements Relative importance Root F2 F1 F4F5 F6 F7 F3 Extended Feature Model Generate Plan (using SHOP2 Planner) Application Engineer Root F2 F1 F4F5 F6 F7 F3 Final Product   Stakeholders Transform to HTN formalism Create Shop2 Domain and Problem Calculate weight of NFPs and Ranks of feature using SAHP algorithm

11 Preferences & Constraints SPLC'12 Constraints over NFPs: Cost: $1000 Ease of use: Hard Easy Very easy Security: Low Medium High … Preferences over NFPs: Security is slightly more important than performance (Security > 3 Performance) ….

12 Overview of the Proposed Approach SPLC'12 Calculate weight of NFPs and Ranks of feature using SAHP algorithm 1. Requirements Root F2 F1 F4F5 F6 F7 F3 Extended Feature Model Generate Plan (using SHOP2 Planner) Application Engineer Root F2 F1 F4F5 F6 F7 F3 Final Product   Stakeholders Transform to HTN formalism Create Shop2 Domain and Problem Constraints over NFPs Functional Requirements Relative importance

13 Preferences SPLC'12 weight of each NFP calculated by SAHP algorithm

14 Rank of Features SPLC'12 w is the weight of each non-functional µ is average of the quantitative NFPs  is standard deviation of the quantitative NFPs

15 Overview of the Proposed Approach SPLC'12 Transform to HTN formalism Create Shop2 Domain and Problem 2. Requirements Root F2 F1 F4F5 F6 F7 F3 Extended Feature Model Generate Plan (using SHOP2 Planner) Application Engineer Root F2 F1 F4F5 F6 F7 F3 Final Product   Stakeholders Constraints over NFPs Functional Requirements Calculate weight of NFPs and Ranks of feature using SAHP algorithm Relative importance

16 SHOP2 Domain and Problem SPLC'12 HTN Planning Problem P =(s 0, T 0, D) Basic Elements of a Domain Description a set of operators o ∈ O a set of tasks a ∈ A a set of methods m ∈ M a set of domain predicates v ∈ V

17 operator Transforming Feature Model to HTN SPLC'12 operator Feature2 Atomic Feature Feature1 Feature4 Atomic Feature Feature3 task & method(s) operator Atomic Feature task & method(s)

18 Transforming Feature Model to HTN SPLC'12 Domain predicate transformation Operator transformation Method and task transformation Preprocessing step f f1f1 fofo f f1f1 fofo f d fpfp f f1f1 f2f2 (a) (b) f f1f1 f2f2

19 Generating Domain Predicates: SPLC'12 f f2f2 f1f1 f3f3 f4f4 f5f5 NFP QT1 QT2 QT3 Domain Predicates for leave features: v f3, v f4, v f5, v f2 Attainment Formula for intermediate features:  f1 = v f3  v f4  v f5  f =  f1  v f2 Domain Predicate for Qualifier Tags: v QT1, v QT2, v QT3

20 Generating Operators SPLC'12 Operators for atomic features: o f 2, o f 3, o f 4 pre(o f 2 ) =    MaxCost - f 2 Cost>0 eff(o f 2 ) =, (MaxCost = MaxCost - f 2 Cost) value(o f 2 ) = pre(o f 3 )= QT 2   v f 4 eff(o f 3 )=v f 3 value(o f 3 )= 1.5 pre(o f 4 )= QT 3   v f 3 eff(o f 4 ) = v f 4 value(o f 4 ) = 0.75 f f4f4 f1f1 f2f2 f3f3 Required Exclude QT 3 Value=0.75 QT 1, QT 3 Value=0.5 f2Cost = $98 QT 2 Value = 1.5 MaxCost(Requested by stakeholder )= $1000 QT 1 QT 3 v f 4 v f2 0.5

21 Generating Tasks and Methods (AND) SPLC'12 Task : t f One method m f for feature f with Tsk-m f = t f Pre-m f =  f6   f7 Dec-m f = {o f1, t f2 } f f1f1 f2f2 f6f6 f7f7 Required Exclude

22 Generating Tasks and Methods (XOR) SPLC'12 Task: t f methods m 1 f, m 2 f for task t f with: Tsk-m 1 f = t f, Pre-m 1 f =  f 6   f 7, Dec-m 1 f = {o f 1 } Tsk-m 2 f = t f, Pre-m 2 f =  f 6   f 7, Dec-m 2 f = {t f 2 } f f1f1 f2f2 f6f6 f7f7 Required Exclude

23 Task: t f One method m f for feature f with Tsk-m f = t f Dec-m f = {t f1_o, t f2_o, o f_or } Tsk-m 1 f1_o = t f1_o Tsk-m 2 f1_o = t f1_o, Dec-m 1 f1_o = {o f 1 } Dec-m 2 f1_o = {o f d } Tsk-m 1 f2_o = t f2_o, Tsk-m 2 f2_o = t f2_o Dec-m 1 f2_o = {t f 2 } Dec-m 2 f2_o = {o f d } Pre(o f _or )= v f 1   f 2 Generating Tasks and Methods (OR) SPLC'12 f f1f1 f2f2 (c)... f f 1_o f 2_o... f1f1 fdfd f2f2 fdfd f or Pre processing step

24 Generating FM Configuration SPLC'12 Root F2 F1 F4F5 F6 F7 F3 Final Product   Generate Plan (using SHOP2 Planner) Create Shop2 Domain and Problem

25 Tooling Support SPLC'12

26 Evaluation SPLC'12 RQ1 (Scalability): Can the approach configure feature models, in a reasonable time? independent variables number of features number of constraints integrity constraints dependent variable time RQ2 (Effectiveness): How effective is the approach in producing a feature model configuration?

27 Evaluation (1) SPLC'12

28 Evaluation (2) SPLC'12

29 Comparative Analysis of Related Works SPLC'12

30 Conclusion SPLC'12 Integrating the feature model and non-functional properties Facilitating the feature model configuration process by automating the feature model configuration process based on non-functional requirements; Employing visualization and interaction techniques

31 Future Work SPLC'12 Using other HTN planner PDDL and PDDL based planner Employing more interaction and visualization techniques

Thanks! SPLC'12