An outline of my c
-
Upload
henry-muccini -
Category
Engineering
-
view
367 -
download
3
Transcript of An outline of my c
![Page 1: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/1.jpg)
Università degli Studi dell’Aquila
Talking to IndustriesSoftware Architecture and Testing
ResearchHenry Muccini
DISIM, University of L’Aquila [email protected], @muccinihenry, www.henrymuccini.com
@Amrita University, India – June 2014
![Page 2: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/2.jpg)
Researcher at the University of L’Aquila,
Italy
Research
2
![Page 3: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/3.jpg)
Research interests
on developing methods and tools for the analysis and design of software architectures
→Architecture-driven Model-based Testing, Model-checking, and V&V
→Models Interoperability in Software Architecture Descriptions
→Multi-view Software Architecture Description
→Group Decision Making in Software Architecture
→Engineering Mobile Applications
→Crowd Testing
M
D
E
![Page 4: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/4.jpg)
Group Decision Making in SA
Engineering Mobile Applications
Crowd Testing
Software Architecture Description
4
![Page 5: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/5.jpg)
GROUP DECISION MAKING IN SOFTWARE ARCHITECTURE
5
![Page 6: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/6.jpg)
Group Decision Making in SA (1/2)6
Multiple stakeholders are involved
Each with different concerns and goals
Context: SA decision-making is a group process
Three decades of research on group
decision making in the business domain
GDM has been studied from multiple
perspectives that includes Psychology,
Organizational Behavior, Operations
Research and Economics
Picture taken from http://apprentiperpetuel.blogspot.com.au/
![Page 7: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/7.jpg)
Group Decision Making in SA (2/2)Goal:
� Understand Industrial needs in Group Decision Making
� Understand state of the research in Architecture GMD
� Improve current industrial practices so to converge
faster to better decisions
7
![Page 8: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/8.jpg)
ENGINEERING MOBILE APPLICATIONS
8
![Page 9: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/9.jpg)
The problem we want to deal with 9
Recurring issues and challenges in app development
Technical (fragmentation, code reuse, frequent
changes, monitoring analysis and testing, etc.)
Design issues
Limited reasoning in the context
Limited information architecture
engineering
Stakeholder diversity
Best practices for app design and development are available, but mobile
applications are still developed with ad-hoc development processes, and
best practices are still not automated.
![Page 10: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/10.jpg)
Goals of our proposal
To codify best design practices into a Model-
Driven Engineering language and framework
10
An
aly
sis
r
App
Developer
Anal
ysis r
Analysis
results
1
A
1 2
A
2 n
A
n
Content ManagerPlugin developers
Navigation
MLData
UI ML
UI Designer
MobML
Analysis
MobL
Code
The MobML Framework
Business Logic
An
alyACode
Modeling environment for
Mobile Applications
Server Side
Developer
MobML
Testing
Analysis and
Code
Generation
![Page 11: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/11.jpg)
Principles11
Participatory design
Collaborative Design
Multi-view Modeling Languages
Hiding MDE complexities
A
B
C
D
![Page 12: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/12.jpg)
ENGINEERING THE CROWD FOR TESTING
12
![Page 13: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/13.jpg)
13
Software Testing
No dedicatedtesting team
Dedicated(in-house) testing team
Outsourcedtesting
[1500 respondents]
0% 20% 40%60%
51%41%
Internal/In-house Testing
2013 2012
[1500 respondents]
0%10%
20%
13%20%
Crowd Sourced Testing
(External/Managed Services)
2013 2012
0%20%
40%
8%26%
"Centralized" Testing
2013 2012
[World Quality Report 2013-2014]
“IDC and Forrester indicate … an increase in
outsourcing of 15% annually over the next
several years.” [Forrester]
![Page 14: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/14.jpg)
Testing Mobile App14
Taken from [World Quality Report 2013-2014], page 27
![Page 15: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/15.jpg)
Summing up…
CROWD TESTING
QA needs
Mobile and Web
Outsourcing
![Page 16: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/16.jpg)
16
diversity/coverage/realistic
independent and test as a user
payment system
immediate results
Principles
![Page 17: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/17.jpg)
Challenges in Crowd Testing17
Securitybreaches
Duplicate defect
managementMeasurement
Coverage
critical features
coverage
No control
Lack of
ownershipReward
mechanismCommunication
and mgmt.
Lack of
standards
Continuousinvolvement
![Page 18: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/18.jpg)
SOFTWARE ARCHITECTURE DESCRIPTION
18
![Page 19: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/19.jpg)
Pro:
� formal semantics
� computable
Cons:
� difficult to learn
� general lack of tools
� prolifetarion
Pro:
� not too difficult
� same notation for SA
and design modeling
Cons:
� not a 100% fit
� tool investment
Pro:
� of immediate use
� perfect for sketching
� communicative
Cons:
� ambiguous
� non automated
19
But.. What Industry needs from Architectural Languages?
![Page 20: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/20.jpg)
Goal of the study:
→ to better understand the real needs about using ALs
for software architecture modeling in industry
─ RQ1: What are the architectural description needs of
practitioners?
─ RQ2: What features typically supported by existing ALs
are useful (or not useful) for the software industry?
20
Ivano Malavolta, Patricia Lago, Henry Muccini, Patrizio Pelliccione, Antony Tang: What Industry Needs from
Architectural Languages: A Survey. IEEE TSE 39(6): 869-891 (2013)
![Page 21: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/21.jpg)
C1: need of models interoperability
� multiple languages are used to describe the architecture of a
software system
C2: need of extending existing ALs
C3: need of creating, storing, re-using, views and
Architecture Frameworks
C4: need of communicative and analytic AL
21
![Page 22: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/22.jpg)
Darwin/FSP
ACME
AADL
xADL
SA UML profiles
other ADLs
pivot
metamodel
(A0)
Extended/customized ADLgenerated in byADL
BPMN
FTVP
1
VP
1
VP
2
VP
2St1
MK1
Composed AFgenerated in MEGAF
MEGAF: a model-driven infrastructure for building reusable
and extensible architecture frameworks
MEGAF: a model-driven infrastructure for building reusable
and extensible architecture frameworks
DUALLy: an automated approach for ADLs interoperabilityDUALLy: an automated approach for ADLs interoperability
byADL: an approach to adapt and customize existing ADLsbyADL: an approach to adapt and customize existing ADLs
![Page 23: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/23.jpg)
MEGAFDUALLy
EMF
AM3 AMW ATL
AMMA
byADLother
engines
MEGAF
![Page 24: An outline of my c](https://reader030.fdocuments.net/reader030/viewer/2022032514/55d4fd9bbb61eba4528b46d0/html5/thumbnails/24.jpg)
megaf.di.univaq.it
• Preliminary prototype in Eclipse, usingmegamodeling techniques
dually.di.univaq.it
• Prototype in Eclipse, using model-drivenengineering techniques
byadl.di.univaq.it
• Prototype in Eclipse, using model-driven engineering techniques