Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
APPENDIX-A
Questionnaires used to evaluate the proposed framework for visualizing evolution of models in MoDSE.
A1. QUESTIONNAIRE 1
My research topic is “Model-Driven Software Evolution” in this, evolution done at model (design) level
instead of code level. For this a framework was proposed consists of different key areas and key
features. To evaluate the proposed framework we need your contribution. I request you to do the
following:
Your Contribution: (Fill this its compulsory)
Name:
Organization:
Academician/ Research Student / Industrialist:
Designation:
Experience:
Mail ID:
Contact:
Answer the given below table by considering the role of the stakeholder in software development (ex:
user, designer, developer etc.) mentioned in the table. Put “√” mark against the feature which is your
concern and/or requirement with respect to your role (ex- designer, user etc.) during the evolution of
models. As an example I have done one for you. If you felt that the proposed features are not sufficient
or any feature is not necessary, please mention those features/key areas and the reasons why the
particular feature is your concern or not. I request you to provide your constructive
Comments/Suggestions/Queries?
Thank you very much, for spending your precious time and for your contribution/Suggestions for my
research work.
With regards,
Madhavi Karanam
Research Scholar
JNTUA, Anantapur.
Mail me @ [email protected], [email protected]
Call me @ 9642565997, 09720942890
Example: Table . Stakeholders Analysis against the Framework
Key
Features
Stakeholders
Key Areas
USE
R
AC
QU
IRER
DES
IGN
ER
DEV
ELO
PER
TEST
ER
MA
INTA
INER
Context View (CV)
CV 1
Context of a model
● ● ● ●
CV 2
Scope of a model or model element
● ● ● ●
CV 3 Express the model completely including all its
surrounding elements
● ● ●
Inter-Model View (MV)
IMV 1
Dependencies between the models and model
elements
● ● ● ●
IMV 2
Indirect dependencies between the models and
model elements
● ● ● ●
IMV 3 Integration of the two or more models ● ● ● ●
City View (CiV)
CiV 1 Extendibility of the models ● ● ● ●
CiV 2 Traceability of a model or model element? ● ● ● ●
Metric View (MeV)
MeV 1
Metrics to estimate the impact analysis of the
models during evolution
● ● ● ●
MeV 2
Visualization techniques for the evolution models ● ● ● ●
MeV 3
Metric values to know the evolution of the models ● ● ● ●
MeV 4 Metrics for quality and complexity of the model ● ● ● ● ●
Transformation View (TV)
TV 1 Kind of transformation ● ● ●
TV 2
Knowledge about the transformation of the models ● ● ●
TV 3
Mapping of the models ● ● ● ●
TV 4
Transformation Rules ● ● ●
TV 5 Transformation Language ● ● ●
Table . Stakeholders Analysis against the Framework
(Please put “√” mark against your concerns/requirements in the following table)
Evolution View (EV)
EV 1
Trends and causes for evolution of models ● ● ● ●
EV 2 Multiple dimensions of evolution ● ● ● ●
Evaluation View (EaV)
EaV 1 Evolution trends and techniques ● ● ●
EaV 2 Causes for the evolution of models ● ● ● ●
EaV 3 Stakeholders feedback ● ● ● ● ●
Key
Features
Stakeholders
Key Areas
USE
R
AC
QU
IRER
DEV
ELO
PER
DES
IGN
ER
TEST
ERS
MA
INTA
INER
Context View (CV)
CV 1
Context of a model
CV 2
Scope of a model or model element
CV 3 Express the model completely including all its
surrounding elements
Inter-Model View (MV)
IMV 1
Dependencies between the models and model
elements
IMV 2
Indirect dependencies between the models and
model elements
IMV 3 Integration of the two or more models
City View (CiV)
CiV 1 Extendibility of the models
CiV 2 Traceability of a model or model element?
Metric View (MeV)
MeV 1
Metrics to estimate the impact analysis of the
models during evolution
MeV 2
Visualization techniques for the evolution models
MeV 3
Metric values to know the evolution of the models
MeV 4 Metrics for quality and complexity of the model
Transformation View (TV)
TV 1 Kind of transformation
TV 2
Knowledge about the transformation of the models
TV 3
Mapping of the models
TV 4 Transformation Rules
A2. QUESTIONNAIRE 2
Visualizing Model – Driven Software Evolution
The first problem of the software industry concerns the problem of complexity of the software. The
second problem of the software industry is that software is continuously subject to evolution or change.
Evolution of the software is driven by a number of factors, including the change of requirements,
technologies, platforms, and corrective and perfective maintenance (changes for removing bugs and
improving functionality). Evolution of software increases its complexity.
Model-Driven Software Evolution (MoDSE): The introduction of Model Driven Engineering (MDE) needs
a new style of evolution i.e. Model-driven Software Evolution. The first fundamental premise for Model-
Driven Software Evolution is that evolution should be a continuous process. The second premise is that
reengineering of legacy systems to the model-driven of the paradigm should be done incrementally.
Model driven engineering (MDE) introduces a multitude of languages that are themselves artifacts of
the development process.
TV 5 Transformation Language
Evolution View (EV)
EV 1
Trends and causes for evolution of models
EV 2 Multiple dimensions of evolution
Evaluation View (EaV)
EaV 1 Evolution trends and techniques
EaV 2 Causes for the evolution of models
EaV 3 Stakeholders feedback
One or more stakeholders are involved in MoDSE. Each stakeholder typically has interests in, or
concerns relevant to that system. The ability of models to evolve gracefully is becoming a concern for
many stakeholders. Due to different and interrelated models used to design an entire system in MoDSE,
the concerns of stakeholders may be changes in models & model elements, model migration, model
transformation, model interaction and integration and model mapping etc.
Software Visualization: “Visualization is the process of transforming information into a visual form,
enabling users to observe the information. The resulting visual display enables the scientist or engineer
to perceive visually features which are hidden in the data but nevertheless are needed for data
exploration and analysis”. The most important advantages of visualization as inferred from up-to-date
research and practice:
• Visualization provides an ability to comprehend huge amounts of data;
• Visualization allows the perception of emergent properties that were not anticipated;
• Visualization facilitates understanding of both large-scale and small-scale features
of the data;
• Visualization facilitates hypothesis formation.
Software visualization is a very promising solution to the complexity and evolution challenges of the
software industry that supports both preventive and assertive approaches. It is a specialized branch of
information visualization, which visualizes artifacts related to software and its development process.
The most important benefits of using visualization in software engineering are:
• Software cost reduction;
• Better comprehension;
• Increase of productivity;
• Management of complexity;
• Assistance in finding errors;
• Improvement of quality.
Visualizing Model-Driven Software Evolution:
Visualizing Model-Driven Software Evolution aims at facilitating the maintenance phase of large
software projects, by revealing how a system came into being. The main question that Model-Driven
Software Evolution Visualization tries to answer is “How to enable stakeholders to get insight in the
evolution of models in a software system?” The intended audience of Model-Driven Software Evolution
Visualization consists of the management team and software engineers involved in the maintenance
phase of large software projects. These professionals (stakeholders) usually face software in the late
stages of its development process, and need to get an understanding of it, often with the support of
models itself. In software engineering, one does not speak of different persons involved in the software
maintenance process, but of different roles. The same role can be played by different persons, and the
same person can play several roles at a single moment or different moments during the lifetime of a
software project. For all the diverse roles, Model-Driven Software Evolution Visualization tries to answer
a number of questions, following the visual analytics mantra: “detect the expected and discover the
unexpected”.
Primary goal of the proposed framework is to assess and understand evolution of models in Model
Driven Software Evolution. Framework is derived from an extensive analysis of the literature in the area
of software visualization with special emphasis on model driven software evolution. Proposed
framework consists of key areas and key features which are mentioned in the Table.
Your Contribution:
Name:
Organization:
Academician/ Student / Industrialist:
Designation:
Experience:
Mail ID:
Contact:
After going through the above mentioned brief contents of our research work and the proposed
framework, Take the Table as a questioner and answer by considering the role of the stakeholders (ex:
user, designer, developer) mentioned above or anything other you feel, or actual role in your
organization. As a professional (stakeholder) what are the key features you prefer or you need to
understand or visualize the MoDSE, Put “√” mark against the feature which is your concern with respect
to your role, Put “×” mark which is not. As an example I have done one for you. If you felt that the
proposed features are not sufficient or any feature is not necessary, please mention those features/key
areas and the reasons why the particular feature is your concern or not. I request you to provide your
constructive Comments/Suggestions/Queries?
Thank you very much, for spending your precious time and for your contribution/Suggestions for my
research work.
With regards,
Madhavi Karanam
Research Scholar
JNTUA, Anatapur.
Mail me @ [email protected], [email protected]
Call me @ 9642565997, 09720942890
Example: Table . Stakeholders Analysis against the Framework
Key
Features
Stakeholders
Key Areas
USE
R
AC
QU
IRER
DES
IGN
ER
DEV
ELO
PER
TEST
ER
MA
INTA
INER
Context View (CV)
CV 1
Context of a model
● ● ● ●
CV 2
Scope of a model or model element
● ● ● ●
CV 3 Express the model completely including all its
surrounding elements
● ● ●
Inter-Model View (MV)
IMV 1
Dependencies between the models and model
elements
● ● ● ●
IMV 2
Indirect dependencies between the models and
model elements
● ● ● ●
IMV 3 Integration of the two or more models ● ● ● ●
City View (CiV)
CiV 1 Extendibility of the models ● ● ● ●
CiV 2 Traceability of a model or model element? ● ● ● ●
Metric View (MeV)
MeV 1
Metrics to estimate the impact analysis of the
models during evolution
● ● ● ●
Table . Stakeholders Analysis against the Framework
(Please put “√” mark against your concerns/requirements in the following table)
MeV 2
Visualization techniques for the evolution models ● ● ● ●
MeV 3
Metric values to know the evolution of the models ● ● ● ●
MeV 4 Metrics for quality and complexity of the model ● ● ● ● ●
Transformation View (TV)
TV 1 Kind of transformation ● ● ●
TV 2
Knowledge about the transformation of the models ● ● ●
TV 3
Mapping of the models ● ● ● ●
TV 4
Transformation Rules ● ● ●
TV 5 Transformation Language ● ● ●
Evolution View (EV)
EV 1
Trends and causes for evolution of models ● ● ● ●
EV 2 Multiple dimensions of evolution ● ● ● ●
Evaluation View (EaV)
EaV 1 Evolution trends and techniques ● ● ●
EaV 2 Causes for the evolution of models ● ● ● ●
EaV 3 Stakeholders feedback ● ● ● ● ●
Key
Features
Stakeholders
Key Areas
USE
R
AC
QU
IRER
DEV
ELO
PER
DES
IGN
ER
TEST
ERS
MA
INTA
INER
Context View (CV)
CV 1
Context of a model
CV 2
Scope of a model or model element
CV 3 Express the model completely including all its
surrounding elements
Inter-Model View (MV)
IMV 1
Dependencies between the models and model
elements
IMV 2
Indirect dependencies between the models and
model elements
IMV 3 Integration of the two or more models
City View (CiV)
CiV 1 Extendibility of the models
CiV 2 Traceability of a model or model element?
Metric View (MeV)
MeV 1
Metrics to estimate the impact analysis of the
models during evolution
APPENDIX B
This section describes the tasks distributed under Longitudinal User Study and Laboratory User Study.
MeV 2
Visualization techniques for the evolution models
MeV 3
Metric values to know the evolution of the models
MeV 4 Metrics for quality and complexity of the model
Transformation View (TV)
TV 1 Kind of transformation
TV 2
Knowledge about the transformation of the models
TV 3
Mapping of the models
TV 4
Transformation Rules
TV 5 Transformation Language
Evolution View (EV)
EV 1
Trends and causes for evolution of models
EV 2 Multiple dimensions of evolution
Evaluation View (EaV)
EaV 1 Evolution trends and techniques
EaV 2 Causes for the evolution of models
EaV 3 Stakeholders feedback
B1.TASKS
/**TASK 1**/
User Name : Task Stared : Completed: (date)
Total Duration for TASK1: (time)
Do the following:
1.What is Model-Driven Software Evolution(MoDSE)?
2.What are the Different Concerns/activities of MoDSE?
3.What is CASE ? What are the CASE tools?List any 10 tools?
4.List any 10 UML tools?
5.List any 10 MDA tools?
6. What is a MDA tools?
7.Do you find any Communities or Forums related to any tools?
8. How you find the above information/Knowledge?(mention the resources used)
9.How much time you spent for finding the above information?
10. Any comments/suggestions?
/** TASK 2 **/
User Name: Task Started: Completed: (date)
Total Duration for TASK2: (time)
Do the following:
1 .What are the factors which lead to evolution of Models?
2. What are the Different Concerns/activities of Model Driven Software Evolution?
3. Compare any two UML tools?
4. Compare any two MDA tools?
5. Are you getting theses kind of information from any Communities or Forums? Name them?
6. How do you find the above information/Knowledge? (Mention the resources used)
7. How much time you spent for finding the above information?
8. Any comments/suggestions?
/** TASK 3 **/
User Name: Task Started: Completed: (date)
Total Duration for TASK3: (time)
Do the following:
1. How do you find the right tool for the right task?
2. Are you member in any communities or forums (software engineering /case tools)?
3. How fast you are getting the reply from the Communities or Forums?
4. Do you find any communities related to MDA tools/UML tools?
5. Are there any differences/similarities between the MDA tools and UML tools?
/** TASK 4 **/
User Name: Task Started: Completed: (date)
Total Duration for TASK 4: (time)
Do the following:
1. How do you find the right tool for the right task of MoDSE?
2. What are the different tasks or concerns of MoDSE?
3. Are u member of any Communities or Forums (software engineering/case tools?
4. Do you find any communities related to MoDSE?
5. What kind of information you get from the communities/forums?
/** TASK 5**/
User Name: Task Started: Completed: (date)
Total Duration for TASK 5: (time)
Do the following:
1. How many uml tools you found?
2. How many MDA tools you found?
3. Which tools are suitable for different tasks of Model-Driven Software Evolution?(CASE/MDA/UML)
4. Do you know about commercial and non commercial tools? What are they? (MDA/UML)
5. How do you get the complete information about a single tool? (MDA/UML)?
/** TASK 6**/
User Name: Task Started: Completed: (date)
Total Duration for TASK 6: (time)
Do the following:
1. From the number of UML tools you found in the task5 are they useful for MoDSE?
2. From the number of MDA tools you found in the task5 are they useful for MoDSE?
3. The number of tools (UML & MDA) (mention the number) you found do you think that
that number is correct? What is your opinion?
4. Are you getting all the tools information in one place? If so, what is the
resource?(forum/community/group)(Any web links)
/** TASK 7 **/
User Name: Task Started: Completed: (date)
Total Duration for TASK 7: (time)
Do the following:
1. What are the commercial UML tools suitable for MoDSE?
2. What are the Non Commercial UML tools Suitable for MoDSE?
3. What are the Non Commercial MDA tools Suitable for MoDSE?
4. What are the Commercial MDA tools Suitable for MoDSE?
/ ** TASK 8 **/
User Name: Task Started: Completed: (date)
Total Duration for TASK 8: (time)
Do the following:
1. Suppose following are the some of the concerns of MoDSE. Find the suitable tool/tools
for the below given concerns.
UML (Unified Modeling Language) 2.3 Profile
Use case diagram
Class diagram
Component diagram
Deployment diagram
Object diagram
Sequence diagram
Timing diagram
State Machine diagram
Package diagram
Profile diagram
Composite diagram
Activity diagram
Communication diagram
Interaction overview diagram
MDA Support
Model Transformation
Model to Model
Platform Specific Model (PSM) to Platform Independent Model(PIM)
PIM to PIM
PSM to PIM
PIM Support multiple PSM’s
C++
JAVA
C#
.Net
Visual Basic
Code to Model Transformation
Reverse Engineering
Model to code Transformation
Executable code generation
Forward Engineering
Model Difference
Comparison between two versions of the same model
Technology Standards
XMI
XML
MOF
Navigation
Traceability
Model search
Model elements search
Relation between models
Relation between model elements
Model extension
Model Decomposition
Model Metrics
Impact Analysis
Change details
Change effect
Change Propagation
Model Integration
Meta Models
MOF
DSL
UML
/ ** TASK 9 **/
User Name: Task Started: Completed: (date)
Total Duration for TASK 9: (time)
Do the following:
1. Have you participated in the Longitudinal User study from the Task1 to Task 8?
2. Is it easy to solve all the queries in all the tasks given to you?
3. Are you evaluated your answers for the queries in the given tasks?
4. Do you trust the information gathered from various sources for solving the queries in the
given tasks?
5. How you trust the knowledge gained from the different sources?
(Communities/forums/others)
6. Why you trust the knowledge gained from the different sources?
(Communities/forums/others)
7. What is your overall opinion/suggestion about the Longitudinal User study & the tasks
given to you?
B2. QUESTIONNAIRE
Questionnaire used to rate mROSE in Laboratory Study.Please circle the most appropriate number of
each statement which correspond most closely to your desired response.
Relative advantage: Strongly Disagree Uncertain Strongly Agree
Disagree Agree
L1: Do you satisfied with the
Information in mROSE
L2: Do you gain knowledge about
Tools and MoDSE in mROSE
5 4 3
5 4 2 1 3
2 1
L3: Do you liked the idea of
mROSE
L4: Do you trust the information
in mROSE
L5: mROSE useful for the users
who involved in the MoDSE
Ease of Use:
L6: I believe that mROSE is
cumbersome to use
L7: Learning to use mROSE
is easy for me
L8: Using mROSE was often
frustrating
L9: I believe that it was easy to
get mROSE to do what I want
it to do
L10: It was easy for me to remember
how to perform tasks using mROSE
APPENDIX C
This section presents the screenshots of the six tools which are used for tools assessment to evaluate
the proposed framework. These tools are experimented to check whether they have similar features of
proposed framework or not.
5 4 3 2 1
5 4 1 3 2
5 4 1 3 2
5 4 3 1 2
5 4 3 2 1
5 4 3 1 2
5 4 3 2 1
5 4 3 1 2
C1. ArgoUML ( ARUML) Tool Screenshots
ArgoUML Editor
ArgoUML Explorer Pane for Tracebility
ArgoUML Explorer View
C2. MetricView Evolution (MVE) Tool Screenshots
Context View in MVE
UML City View in MVE for Tracebility
C3. Visual Paradigm (VP-UML) Tool Screenshots
Model Explorer Pane in VP-UML
VP-UML Diagram Pane
VP-UML Analysis Diagram for Impact Analysis
VP-UML Matrix Diagram for Traceability
C4. Generic Object Oriented Search Environment (GOOSE) Tool Screenshots GOOSE Core Interfaces
and Classes
C5. Model Management (MOMENT) Tool Screenshots
MetaModels in MOMENT
Tree Editor of MOMENT
Graphical Editor of MOMENT
Package Explorer inMOMENT
Model Operations in MOMENT
Model Generator operator used for Transformation
C6. Enterprise Architect (EA) Tool Screenshots
Model Transformation
Relationship Matrix and Hierarchal View for Traceability
EA UML Editor