Ce diaporama a bien été signalé.

Managing Variability in Workflow with Feature Model Composition Operators

0

Partager

Chargement dans…3
×
1 sur 41
1 sur 41

Plus De Contenu Connexe

Livres associés

Gratuit avec un essai de 14 jours de Scribd

Tout voir

Livres audio associés

Gratuit avec un essai de 14 jours de Scribd

Tout voir

Managing Variability in Workflow with Feature Model Composition Operators

  1. 1. Managing Variability in Workflow with Feature Model Composition Operators Mathieu Acher1, Philippe Collet1, Philippe Lahire1, Robert France2 1 University of Nice Sophia Antipolis (France), Modalis Team (CNRS, I3S Laboratory) 2 Computer Science Department, Colorado State University
  2. 2. Context: Medical Imaging Services • Scientists build workflows by assembling a wide variety of medical imaging algorithms – Processing chain to manipulate large medical data sets Managing Variability in Workflow with Feature Model Composition Operators 2
  3. 3. Context: Medical Imaging Services • Scientists build workflows by assembling a wide variety of medical imaging algorithms – Processing chain to manipulate large medical data sets Managing Variability in Workflow with Feature Model Composition Operators 3
  4. 4. Context: Medical Imaging Services • Scientists build workflows by assembling a wide variety of medical imaging algorithms – Processing chain to manipulate large medical data sets Managing Variability in Workflow with Feature Model Composition Operators 4
  5. 5. Context: Medical Imaging Grid Services • Scientists build workflows by assembling a wide variety of medical imaging algorithms – processing chain to manipulate large medical data sets • Requirement: deployable on Grid infrastructures – High throughput, performance computing, data storage, resource federation Managing Variability in Workflow with Feature Model Composition Operators 5
  6. 6. Context: Medical Imaging Grid Services • Scientists build workflows by assembling a wide variety of medical imaging algorithms – processing chain to manipulate large medical data sets • Requirement: deployable on Grid infrastructures – High throughput, performance computing, data storage, resource federation • Services embed the business code and are invoked remotely through standardized protocol and well-defined interfaces Managing Variability in Workflow with Feature Model Composition Operators 6
  7. 7. Services: A lot of Concerns • Highly Parameterized Services – efficiently extend, change, customize, or configure services from various perspectives for use in a particular context Medical Image Format: DICOM? Nifti? Analyze? Modality Acquisition: MRI? CT? PET? Algorithm: User intervention? Method (spatial? frequency?) Transformation (Linear? Affine?) Managing Variability in Workflow with Feature Model Composition Operators 7
  8. 8. Services: A lot of Concerns • Highly Parameterized Services – efficiently extend, change, customize, or configure services from various perspectives for use in a particular context Medical Image Format: DICOM? Grid Deployment: Nifti? Analyze? Operation System? Library ? Processor required? Modality Acquisition: MRI? CT? Network : PET? Protocol? Format? Algorithm: User intervention? Method (spatial? frequency?) Transformation (Linear? Affine?) Security: Data? Level Access (VO)? Managing Variability in Workflow with Feature Model Composition Operators 8
  9. 9. Services: A lot of Concerns • Highly Parameterized Services – efficiently extend, change, customize, or configure services from various perspectives for use in a particular context Medical Image Format: DICOM? Grid Deployment: Nifti? Operation System? Analyze? Library ? Processor required? Modality Acquisition: MRI? CT? Network : PET? Protocol? Format? Algorithm: User intervention? Method (spatial? frequency?) Security: Transformation (Linear? Affine?) Data? Level Access (VO)? Managing Variability in Workflow with Feature Model Composition Operators 9
  10. 10. Services as Software Product Lines • Highly Parameterized Services – efficiently extend, change, customize, or configure services for from various perspectives use in a particular context • Service as software product line (SPL) • See papers SOAPL’08, MICCAI-Grid’08 • Managing variability within services Grid Deployment Concern – to enhance reusability • …and across services – to enhance composability Network Protocol Concern Medical Image Concern Managing Variability in Workflow with Feature Model Composition Operators 10
  11. 11. Variability in Workflow Managing the variability in the entire processing chain Managing Variability in Workflow with Feature Model Composition Operators 11
  12. 12. Variability in Workflow Managing the in the entire processing chain Scalability? 40 features per Service, 360 features for the workflow… Managing Variability in Workflow with Feature Model Composition Operators 12
  13. 13. Overview of the Approach Managing Variability in Workflow with Feature Model Composition Operators 13
  14. 14. Overview of the Approach (2) • Considering multiple dimensions of a service – And their variation points • Reasoning about concerns with variability – To ensure consistency of services composed • Assisting the user during configuration – To select right variants • … Dealing with the entire workflow… Managing Variability in Workflow with Feature Model Composition Operators 14
  15. 15. Overview of the Approach (3) • Modeling – Workflow – Services – Dependency – Concerns with Variability • Composition Operators to reason about variable concerns and assist the user in selecting variants for the entire worflow Managing Variability in Workflow with Feature Model Composition Operators 15
  16. 16. Metamodel of Workflow and Service 1 Workflow Dataport -input 1..* -output 1..* 1 1 1..* -processors 0..* -relations 1 1 -realizedBy -left DeploymentInformation Service Process 1 Relation -deployment 1 -id : String -right 1 -id : String 1 1 1..* -operations GridDeploymentInformation FunctionalInterface Source Sink 1 1 1 -nodes 1..* -parameters ComputingNode Parameter -uri : String Variable -condition Guard -name : String -value : Boolean 1 Managing Variability in Workflow with Feature Model Composition Operators 16
  17. 17. Metamodel of Workflow and Service 1 Workflow Dataport -input 1..* -output 1..* 1 1 1..* -processors 0..* -relations 1 1 -realizedBy -left DeploymentInformation Service Process 1 Relation -deployment 1 -id : String -right 1 -id : String 1 1 1..* -operations GridDeploymentInformation FunctionalInterface Source Sink 1 1 1 -nodes 1..* -parameters ComputingNode Parameter -uri : String Variable -condition Guard -name : String -value : Boolean 1 Sink Segmentation Intensity Correction Source Sink Unbias Service Element Managing Variability in Workflow with Feature Model Composition Operators 17
  18. 18. Modeling Weaving of Concern Managing Variability in Workflow with Feature Model Composition Operators 18
  19. 19. Weaving of Variable Concern Instance of Joinpoint Weaving FService1 Output Dataport Medical Image FMo1 Format Modality Anonymized Acquisition DICOM T1 T2 Managing Variability in Workflow with Feature Model Composition Operators 19
  20. 20. Concerns as Feature Models • Hierarchy + Variability – Mandatory features, Optional features – Alternatives and Constraints Medical Image Modality Acquisition Format Anonymized MRI CT SPEC PET DICOM Nifti Analyze And-Group Xor-Group T1 T2 Optional Or-Group Managing Variability in Workflow with Mandatory Feature Model Composition Operators 20
  21. 21. Concerns as Feature Models • Hierarchy + Variability – Mandatory features, Optional features – Alternatives and Constraints Medical Image Modality Acquisition Format Anonymized MRI CT SPEC PET DICOM Nifti Analyze And-Group Xor-Group T1 T2 Optional Or-Group Mandatory Managing Variability in Workflow with Feature Model Composition Operators 21
  22. 22. Variable Concern Dependency Modeling Instance of Joinpoint Weaving FService1 FService2 Output Dataport Input Dataport FMi2 FMo1 Managing Variability in Workflow with Feature Model Composition Operators 22
  23. 23. Variable Concern Dependency Modeling Instance of Joinpoint Weaving FService1 FService2 Output Dataport Input Dataport FMi2 FMo1 Managing Variability in Workflow with Feature Model Composition Operators 23
  24. 24. Variable Concern Dependency Modeling FMfi2 FMfi1 Instance of Joinpoint Functional Interface Functional Interface FService1 FService2 Grid Node Grid Node Weaving FMg2 Output Dataport Input Dataport FMg1 FMo1 FMi2 Managing Variability in Workflow with Feature Model Composition Operators 24
  25. 25. Reasoning: Merge Operator Instance of Joinpoint Weaving FService1 FService2 Output Dataport Input Dataport Medical Medical Image FMo1 Image FMi2 Format Modality Modality Anonymized Format Acquisition Acquisition DICOM T1 T2 DICOM Nifti T1 T2 When two feature models (FMs) share several features, there is a need to merge the overlapping parts. Composing Feature Models (SLE’09) Comparing Approaches to Implement Feature Model Composition (ECMFA’10) Managing Variability in Workflow with Feature Model Composition Operators 25
  26. 26. Feature Model Operator in Action Instance of Joinpoint Weaving FService1 FService2 Output Dataport Input Dataport Medical Medical Image FMo1 Image FMi2 Modality Modality Format Acquisition Anonymized +∩ Format Acquisition DICOM T1 T2 DICOM Nifti T1 T2 Medical Image FMr Modality Format (intersection) Acquisition DICOM T1 T2 Managing Variability in Workflow with Feature Model Composition Operators 26
  27. 27. Configurating and Propagating Choices Managing Variability in Workflow with Feature Model Composition Operators 27
  28. 28. Feature Model Operator in Action (2) FMi2 FMo2 FMi3 FMin FMon FMi1 FMo1 FMo3 Input Output Input Output Input Output Input Output Dataport Dataport Dataport Dataport Dataport Dataport Dataport Dataport FService1 FService2 FService3 FServicen Functional Interface Functional Interface Functional Interface Functional Interface A FMep1 A FMep2 A FMep3 FMepn B F B F B F +∩ +∩ C D G H C D E G H M E G H I J I I J A FMep'2 A FMep'3 B F B F +∩ C D G H E G H error I I Managing Variability in Workflow with Feature Model Composition Operators 28
  29. 29. Concurrency Medical Image FMi2 Modality Format Acquisition FService2 Input Dataport DICOM Nifti T1 T2 FService1 FMi2 Output Dataport Medical Image FMi3 FService3 Format Modality Acquisition Medical Image FMo1 FMo1 Input Dataport DICOM T1 T2 Format Modality Anonymized Acquisition FMi3 Medical DICOM T1 T2 Image FMin FServicen Format Modality Acquisition Input Dataport DICOM Analyze T1 T2 FMin Managing Variability in Workflow with Feature Model Composition Operators 29
  30. 30. Concurrency Medical Image FMi2 Modality Format Acquisition FService2 Input Dataport DICOM Nifti T1 T2 FService1 FMi2 Output Dataport Medical Image FMi3 FService3 Format Modality Acquisition Medical Image FMo1 FMo1 Input Dataport DICOM T1 T2 Format Modality Anonymized Acquisition FMi3 Medical DICOM T1 T2 Image FMin FServicen Format Modality Acquisition Input Dataport DICOM Analyze T1 T2 Xor FMin Managing Variability in Workflow with Feature Model Composition Operators 30
  31. 31. Condition FService3 Functional Interface FMep3 FService1 Guard FService4 Functional Interface Functional Interface FMep1 FMep4 FService2 Functional Interface FMep2 Managing Variability in Workflow with Feature Model Composition Operators 31
  32. 32. Condition FService3 Functional Interface FMep3 FService1 Guard FService4 Functional Interface Functional Interface FMep1 FMep4 FService2 Functional Interface FMep2 Managing Variability in Workflow with Feature Model Composition Operators 32
  33. 33. Condition FService3 Functional Interface FMep3 FService1 Guard FService4 Functional Interface Functional Interface FMep1 FMep4 FService2 Functional Interface FMep2 Managing Variability in Workflow with Feature Model Composition Operators 33
  34. 34. Condition “Union” of the two paths FService3 Functional Interface FMep3 FService1 Guard FService4 Functional Interface Functional Interface FMep1 FMep4 FService2 Functional Interface FMep2 Managing Variability in Workflow with Feature Model Composition Operators 34
  35. 35. Merge Operator: Union MRI MRI FM1 FM2 T1 T2 T1 T2 { {MRI, T1}, { {MRI, T2} {MRI, T1}, } {MRI, T1, T2} } MRI {{MRI, T1}, {MRI, T1, T2}, T1 T2 {MRI, T2}} Managing Variability in Workflow with Feature Model Composition Operators 35
  36. 36. Benefits • Automated detection of inconsistency at design or at configuration time • Separation of Concerns – locate the source of errors and give information to assist users – incremental and independent reasoning • The merge contributes to decrease the number of remaining variability choices. – can reduce the amount of time and effort needed during the configuration process Managing Variability in Workflow with Feature Model Composition Operators 36
  37. 37. Variability in Workflow Managing the in the entire processing chain Scalability? 40 features per Service, 360 features for the workflow… Managing Variability in Workflow with Feature Model Composition Operators 37
  38. 38. Prototype Implementation • http://modalis.polytech.unice.fr/softwares/manvarwor • We provide: – Ecore metamodels of workflow, service, joinpoint – a Domain-Specific Language (DSL) to specify where the variable concerns are attached to specific joinpoint into a workflow model – a DSL to design variable concerns and feature models • Realization in Kermeta – Dependencies analysis between variable concerns at the workflow level – Reasoning about variable concerns at the feature model level Managing Variability in Workflow with Feature Model Composition Operators 38
  39. 39. Conclusion • Separation of Concerns for managing highly parameterized services in scientific workflow. – (1) Modeling workflows, services, (variable) concerns and their dependencies – (2) Composing and configuring services and associated concerns boils down to composing feature models – (3) Feature models composition operator are used on different constructions of workflow Managing Variability in Workflow with Feature Model Composition Operators 39
  40. 40. Future Work • Dealing with feature model constraints – relations can exist between variables concerns of a service / two services • Aligning Feature Models • Generalization of the approach to any (workflow or service) metamodel • Evaluation on the case study – practical use of the approach – scalability on large workflows Managing Variability in Workflow with Feature Model Composition Operators 40
  41. 41. ?

×