10 likes | 106 Views
CCPC Model. CCPC Model. A Meta-model CCPC core elements and relationships. Metrics and Reasoning Size, coupling, decision power, … Querying CCPC models. HP PS M425. Algorithms Conflict detection, resolution, classification, decision propagation, metrics support, …. Tool Support
E N D
CCPC Model CCPC Model A Meta-model CCPC core elements and relationships Metrics and Reasoning Size, coupling, decision power, … Querying CCPC models HP PS M425 Algorithms Conflict detection, resolution, classification, decision propagation, metrics support, … Tool Support Specification and execution of CCPC models HP PS R725 HP PS R927 Other Issues: Awareness, Traceability, Negotiation, … Mom (Quality Photos) • Zoom: optical 3x, digital 6x • Flash range: 0.2 - 4.2m • Lens: Carl Zeiss Vario-Tessar • LCD size: 2'' or greater • Computer compatibility: Mac/OS Son (Short Movies) Dad (Batteries/Memory) • Movie mode: yes • Audio: yes • File formats: jpeg, mpeg • Computer compatibility: Win-XP • Video output: NTSC/PAL • Auto OFF mode: yes • Battery type: lithium-ion • Memory size: 512Mb • Digital media type: MS DUO PRO Towards a Framework for Collaborative and Coordinated Product Configuration Marcilio Mendonca, Krzysztof Czarnecki, Toacy Oliveira, Donald Cowan {marcilio,dcowan}@csg.uwaterloo.ca, czarnecki@acm.org, toacy@inf.pucrs.br OOPSLA 2006 » A framework to support collaborative and coordinated software product configuration. Product Configuration is a Collaborative Task… … but Support for Collaborative Configuration is Lacking in Software Product Lines We Propose a Framework for Collaborative Configuration Manufacturing Product Selection A Typical Product Configuration Software Product Lines General Framework How can we effectively support CollaborativeProduct Configuration while enforcing the proper Coordination of the configuration decisions? Products Product Configuration Product Configuration Product Line Core Assets Product Configuration Process Product Decisions Decision Model Digital CameraProduct Line product requirements configuration actions Semi-automated Production Configuration Decisions Configuration Decisions Application Engineer Fully-automated Mappings Variability Stakeholders Configuration Agents Technical & Business APPLICATION ENGINEERING DOMAIN ENGINEERING • Current approaches to Product Configuration fail in supporting Collaboration: • Put heavy burden on application engineers • Are difficult to scale and time-consuming • Waste configuration knowledge • Conflict management is complex • Lack support for collaboration Market Requirements Market Segments Illustration – Collaborative Configuration of a Web Portal Product Line Feature Models are Extended to Support Collaboration (Collaborative Feature Models) Decision Coupling and Dependencies Configuration Views • Feature Modeling is a widely accepted technique in Software Product Lines to represent software commonalities and variabilities (variability management) • Products are specified by selecting desired features on a Feature Model • Unfortunately, Feature Models were not created with Collaboration in mind Conventional Feature Model Web Portal Configuration Space: Web Portal (active) {Project Manager} «Domain Concept» Web Portal Performance Persistence GUI Security Web Portal Network Performance MsSecMin {System Admin.} [1] [1..*] GUI [1] Performance GUI Security {Web Designer} Resolution Database XML Transfer Ms Templates Resolution Auth. Data Transfer Sec Min GUI Protocol Ms Templates [1..*] ? «Decided» ? «Undecided» «Decided» X Requires «Decided» «Undecided» User Login Performance Persistence GUI Security Network Https Network Requires Collaborative Configuration Phases Example of a Feature Model for a Car Header User Login AuthDataTransfer https http ftp Https Requires Auth Excludes Persistence Security {WD} Transfer {SS} {SA} {SS} Feature model Annotated feature model {Network Administrator} Database Data Car Mandatory feature Optional feature Collaborative Feature Model {Database Manager} CCPC Spec Tool {Security Specialist} {Project Manager} {Project Manager} Web Portal Specifying Priorities to Support Conflict Resolution Configuration Space: Security (inactive) Engine Seats Transmission Transmission Cruise Control [1] [1] ? Performance «Undecided» Persistence GUI Security Security [1..*] Network {PM} {Project Manager} [1..*] {Project Manager} {Database Manager} [1] [1] + [1..*] CCPC Execution Tool Normal Manual Manual Automatic Database XML 3.0 4.0 Leather Transfer Ms Templates Resolution Auth. Data Transfer Sec Min Protocol {Security Specialist} {Security Specialist} {Security Specialist} [1..*] Requires «Undecided» ? «Undecided» ? «Undecided» ? Excludes Auth. Data Transfer {WD} requires {DM} {NA} {SA} Requires Header User Login Product Specification https http ftp {System Admin.} {Database Manager} {PM(WD)} {Web Designer} {Network Administrator} Requires {Security Specialist} {System Administrator} {Network Administrator} {Web Designer} {Security Specialist}