ThesisPresentation
-
Upload
mario-cervera -
Category
Documents
-
view
140 -
download
0
Transcript of ThesisPresentation
![Page 1: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/1.jpg)
A Model-Driven Approach for theDesign, Implementation, and Execution
of Software Development Methods
Mario Cervera Úbeda
Supervisors:Dr. Vicente Pelechano Ferragud
Dra. Manuela Albert Albiol
![Page 2: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/2.jpg)
Agenda
1. Motivation2. Problem3. State of the Art4. Solution5. Tool Support6. Evaluation7. Conclusions
![Page 3: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/3.jpg)
MotivationProblemState of the ArtSolution
MotivationTool SupportEvaluationConclusions
The tool is not adapted to the method
Method use decreased
The gvMétrica method
![Page 4: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/4.jpg)
MotivationProblemState of the ArtSolution
MotivationTool SupportEvaluationConclusions
Tools adapted to gvMétrica
Hard to adapt MOSKitt to changes in gvMétrica
Inadequate support for method execution
![Page 5: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/5.jpg)
MotivationProblemState of the ArtSolution
MotivationTool SupportEvaluationConclusions
How to define methods so that the construction of the supporting tools can be facilitated?
How to provide appropriate assistance for software engineers?
…
![Page 6: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/6.jpg)
MotivationProblemState of the ArtSolution
MotivationTool SupportEvaluationConclusions
Method EngineeringThe engineering discipline to design, construct, and
adapt methods, techniques, and tools for the development of information systems
(Sjaak Brinkkemper, 1996)
![Page 7: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/7.jpg)
MotivationProblemState of the ArtSolution
ProblemTool SupportEvaluationConclusions
Practitioners are reluctant to adopt existing Method Engineering techniques
Problem 1.High complexity
“The remedy is worse than the disease"
Francis Bacon (1561-1626)
Problem 2.Software support
(Henderson-Sellers & Ralyté, 2010) (Niknafs & Ramsin, 2008)
![Page 8: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/8.jpg)
MotivationProblemState of the ArtSolution
ProblemTool SupportEvaluationConclusions
“The whole is greater than the sum of its parts”
Aristóteles (384 a.C. – 322 a.C.)
Problem 3.Lifecycle coverage
Problem 4.Process support
Method Engineering approaches do not offer a global solution
Lifecycle of methods Design Implementation Execution
Method parts Product Process
![Page 9: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/9.jpg)
MotivationProblemState of the ArtSolution
ContributionTool SupportEvaluationConclusions
Model-Driven Engineering
A methodological approach for Method Engineering
Problem 1. Complexity
Problem 3. Lifecycle
Problem 4. Process
Problem 2. Software
• Design, implementation, and execution
• Product and process
• Software architecture
• CAME1 environment
MOSKitt4ME: A software infrastructure
1 Computer-Aided Method Engineering
Our contribution …
4ME
![Page 10: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/10.jpg)
MotivationProblemState of the ArtSolution
State of the ArtTool SupportEvaluationConclusions
Problem 1. High complexity
AutomatedModel-driven
Ralyté (paradigm)Work Product Pool
Deneckère et al.
MMCPCA
MetaEdit+Rolland et al.
Method EditorOPF
Ralyté (assembly)Prakash
Brinkkemper et al.
Approaches
PartiallyPartiallyPartiallyPartiallyPartiallyPartiallyPartiallyPartiallyPartially
Partially
Partially
Partially
Partially
Partially
![Page 11: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/11.jpg)
MotivationProblemState of the ArtSolution
State of the ArtTool SupportEvaluationConclusions
metaCASECAME
Ralyté (paradigm)Work Product Pool
Deneckère et al.
MMCPCA
MetaEdit+Rolland et al.
Method EditorOPF
Ralyté (assembly)Prakash
Brinkkemper et al.
Approaches
Problem 2. Software Support
![Page 12: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/12.jpg)
MotivationProblemState of the ArtSolution
State of the ArtTool SupportEvaluationConclusions
Implementation ExecutionDesign
Ralyté (paradigm)Work Product Pool
Deneckère et al.
MMCPCA
MetaEdit+Rolland et al.
Method EditorOPF
Ralyté (assembly)Prakash
Brinkkemper et al. Supported
SupportedSupported
SupportedSupported
SupportedSupported
SupportedSupported SupportedSupported
SupportedSupported
Approaches
Problem 3. Lifecycle coverage
![Page 13: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/13.jpg)
MotivationProblemState of the ArtSolution
State of the ArtTool SupportEvaluationConclusions
Process
Ralyté (paradigm)Work Product Pool
Deneckère et al.MMC
MetaEdit+Rolland et al.
Method EditorOPF
Ralyté (assembly)Prakash
Brinkkemper et al. Partially
Partially
Approaches
PartiallyPartially
Partially
Partially
Partially
Problem 4. Process support
Limited expressiveness
Lack of executability
![Page 14: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/14.jpg)
MotivationProblemState of the ArtSolution
OverviewTool SupportEvaluationConclusions
Overview of our Approach
![Page 15: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/15.jpg)
MotivationProblemState of the ArtSolution
OverviewTool SupportEvaluationConclusions
Method Design
references
Method Model
1
MethodEngineer
builds
stores
retrieves
Overview of our Approach
Asset Repository
Conceptual Technical
How to define the method so that it
supports product and process?
![Page 16: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/16.jpg)
MotivationProblemState of the ArtSolution
Tool SupportEvaluationConclusions
Product• Product, Domain, Tool
Process• Task, Activity, Role, Sequence,
Process Pattern …
Method Design
How to define the method so that it supports product and process?
Using a DSL that combines SPEM 2.0 and BPMN 2.0
SPEM 2.0
Different types of tasks
Enhanced workflows
BPMN 2.0
![Page 17: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/17.jpg)
MotivationProblemState of the ArtSolution
Method DesignTool SupportEvaluationConclusions
• From scratchHow to create the method model using the DSL?
Database Scripts Generation
Database Model Specification
Database Scripts Revision
Designer System Developer
Database Model DDL Script
![Page 18: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/18.jpg)
MotivationProblemState of the ArtSolution
Method DesignTool SupportEvaluationConclusions
Conceptual fragments
Database Scripts Revision
Database Scripts Generation
Database Model Specification
Designer System
Database Model
How to create the method model using the DSL?
• Reusing conceptual fragments• From scratch
Integration of the reusable
asset
![Page 19: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/19.jpg)
MotivationProblemState of the ArtSolution
OverviewTool SupportEvaluationConclusions
Overview of our Approach
Method ImplementationMethod Design
Asset Repository
references
Method Model
1 2
MethodEngineer
builds
stores
retrieves
ModelTransf.
Conceptual Technical
CASE Environment
Product Support
Process Support
Process Engine
How to enable the execution of the method in the process
engine?
How to enable the generation of
the tools that provide product
support?
![Page 20: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/20.jpg)
MotivationProblemState of the ArtSolution
Tool SupportEvaluationConclusions Method Implementation
How to enable the generation of the tools that provide product support?
Enhancing the method using technical fragments
DB2DDL Transformation
MOSKitt component
![Page 21: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/21.jpg)
MotivationProblemState of the ArtSolution
Method ImplementationTool SupportEvaluationConclusions
Database Scripts Generation
Database Model Specification
Designer System Developer
Database Model DDL Script
Database Scripts Revision
Technical fragments
DB2DDLTransformation
Example
DDL GeneratorDatabase Editor
Reference to the reusable software asset
![Page 22: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/22.jpg)
MotivationProblemState of the ArtSolution
Tool SupportEvaluationConclusions Method Implementation
How to enable the execution of the method in the process engine?
We do not provide a process engine for our DSL
Model transformation
Methods represented in an executable language
Method Model
![Page 23: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/23.jpg)
MotivationProblemState of the ArtSolution
Method ImplementationTool SupportEvaluationConclusions
Method Product Support
Method Process Support
Model Transformation
Product part
Process Engine
CASE EnvironmentProcess part
BPMN 2.0 deployed
integratedConfiguration
Model
MethodModel
The generation process
![Page 24: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/24.jpg)
MotivationProblemState of the ArtSolution
OverviewTool SupportEvaluationConclusions
Overview of our Approach
Method ImplementationMethod Design Method Execution
Asset Repository
Software Engineer
references
Method Model
1 2 3
MethodEngineer
builds
stores
retrieves
ModelTransf.
Method Instance
follows
Conceptual Technical
interacts
CASE Environment
Product Support
Process Support
Process Engine
How does the CASE environment assist
the software engineer?
![Page 25: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/25.jpg)
MotivationProblemState of the ArtSolution
Method ExecutionTool SupportEvaluationConclusions
How does the CASE environment assist the software engineer?
CASE Environment
Method Product Support
Technical Fragment
Method Process Support
CallGet
SoftwareEngineer
Read
Modelsat runtime
Execute InvokeBPMN 2.0Process Engine
Engine API
Process View Product Explorer View Help View
Project Manager
Project Explorer View
Technical Fragment
Technical Fragment
BPMN 2.0Model
MethodModel
![Page 26: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/26.jpg)
MotivationProblemState of the ArtSolution
Tool SupportTool SupportEvaluationConclusions
What do we need to support?
Method Editor
Conceptual modeling of methods
Repository Client
Creation, storage, retrieval, and integration of fragments
Metatools
Creation of technical fragments
CASE Generator
Generation of CASE environments
Process Engine
Process execution
Project Manager
Assistance for software engineers
Editor…Transf.
Product creation
![Page 27: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/27.jpg)
MotivationProblemState of the ArtSolution
Software ArchitectureTool SupportEvaluationConclusions
Architecture of MOSKitt4ME 4ME
![Page 28: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/28.jpg)
MotivationProblemState of the ArtSolution
Software ArchitectureTool SupportEvaluationConclusions
Implementation
Eclipse UISWT/JFace
EclipsePDE
![Page 29: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/29.jpg)
MotivationProblemState of the ArtSolution
EvaluationTool SupportEvaluationConclusions
High complexity of Method Engineering Negative effect on perceived usefulness
Is MOSKitt4ME useful and easy to use?
We performed an evaluation study following the guidelines proposed by Wohlin et al. (2012)
![Page 30: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/30.jpg)
MotivationProblemState of the ArtSolution
PlanningTool SupportEvaluationConclusions
Measures of Usefulness and Ease of Use
![Page 31: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/31.jpg)
MotivationProblemState of the ArtSolution
ExecutionTool SupportEvaluationConclusions
Video recordsScreencasts
8 subjects Individual think aloud sessions
Operation
![Page 32: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/32.jpg)
MotivationProblemState of the ArtSolution
Data AnalysisTool SupportEvaluationConclusions
Think Aloud Method
We transcribed video records and screencasts
We annotated the transcriptions using a coding scheme think aloud protocols
We analyzed the protocols to obtain the objective measures
![Page 33: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/33.jpg)
MotivationProblemState of the ArtSolution
Data AnalysisTool SupportEvaluationConclusions
An excerpt of a think aloud protocol …
8 protocols with 895 segments on average
Example
![Page 34: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/34.jpg)
MotivationProblemState of the ArtSolution
ResultsTool SupportEvaluationConclusions
The subjective perception of the users indicates their willingness to accept and use MOSKitt4ME
Perceived ease of use
Perceived usefulness
![Page 35: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/35.jpg)
MotivationProblemState of the ArtSolution
ResultsTool SupportEvaluationConclusions
MOSKitt4ME increases efficiency and effectiveness during method execution
The method design is the only phase where users experienced difficulty• MOSKitt4ME must be enhanced with assistance for method construction
![Page 36: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/36.jpg)
A tool-supported methodological approach that is aimed at method/software engineers that need to carry out the design, implementation, and execution of methods
MotivationProblemState of the ArtSolution
ConclusionsTool SupportEvaluationConclusions
Contributions
1. Model-Driven Engineering Reduction in complexity
2. Equal support to three Method Engineering phases
3. Process support in a Method Engineering context
4. Software support for model-driven Method Engineering
![Page 37: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/37.jpg)
MotivationProblemState of the ArtSolution
PublicationsTool SupportEvaluationConclusions
6 publications
• 2 journals• 3 international conferences• 1 national conference
CORE AJCR
(Impact factor: 1.456)
CORE A(Acceptance rate: 17%)
![Page 38: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/38.jpg)
MotivationProblemState of the ArtSolution
Future WorkTool SupportEvaluationConclusions
Method families
Method as a Service (MaaS)
Megamodeling in Method Engineering
Method analysis and monitoring
![Page 39: ThesisPresentation](https://reader035.fdocuments.us/reader035/viewer/2022062904/5885ff381a28ab0a3f8b52bf/html5/thumbnails/39.jpg)
A Model-Driven Approach for theDesign, Implementation, and Execution
of Software Development Methods
Mario Cervera Úbeda
Supervisors:Dr. Vicente Pelechano Ferragud
Dra. Manuela Albert Albiol