SlideShare une entreprise Scribd logo
1  sur  38
Télécharger pour lire hors ligne
Pitfalls and Countermeasures in Software
Quality Measurements and Evaluations
Hironori Washizaki washizaki@waseda.jp
Prof., Global Software Engineering Laboratory,
Waseda University
Visiting Prof., National Institute of Informatics
Director, SYSTEM INFORMATION CO., LTD.
Vice-Chair, IEEE CS Japan Chapter
Chair, SEMAT Japan Chapter
Convenor, ISO/IEC/JTC1/SC7/WG20
PC Co-Chair, APSEC 2018 Nagoya!
5th International Workshop on Quantitative Approaches to Software Quality (QuASoQ)
Nanjing, Dec 4, 2017
H. Washizaki, Pitfalls and Countermeasures in Software Quality Measurements and Evaluations, Advances in Computers, 106, 2017
Metric and Measurement
• Mapping attributes to values/names
on scales
– Quality control by single metric
– Estimating metric values by other metrics
• You cannot control what you cannot
measure!
Req.
Def.
Design Impl. Testing
Func. Spec.
Function
point
Module
design
Coupling
Source
code
Complexity
LOC
Defect
report
Defect
density
Test
case
N. tests
passed
Effort, time
Cyclomatic
complexity
0
0.2
0.4
0.6
0.8
1
0 0.05 0.1 0.15 0.2 0.25 0.3
Reuserate
#Header files included
2
Pitfalls and Countermeasures
3
Pitfall Countermeasure
Negative
Hawthorne effects
Goal-orientation
Multidimensional measurements
Organization
misalignment
Visualization of relationships among
organizational goals, strategies, and
measurements
Exhaustive identification of rationales
Uncertain future
Prediction incorporating uncertainty
Measurement program improvement by
machine learning
Self-certified quality
Standard-based evaluation
Pattern-based evaluation
H. Washizaki, Pitfalls and Countermeasures in Software Quality Measurements and Evaluations, Advances in Computers, 106, 2017
Pitfalls and Countermeasures
4
Pitfall Countermeasure
Negative
Hawthorne effects
Goal-orientation
Multidimensional measurements
Organization
misalignment
Visualization of relationships among
organizational goals, strategies, and
measurements
Exhaustive identification of rationales
Uncertain future
Prediction incorporating uncertainty
Measurement program improvement by
machine learning
Self-certified quality
Standard-based evaluation
Pattern-based evaluation
H. Washizaki, Pitfalls and Countermeasures in Software Quality Measurements and Evaluations, Advances in Computers, 106, 2017
Hawthorne Effect
5nicolasdsampson.com, Observe And Learn: The Magic Of Paying Attention
http://nicolasdsampson.com/wp-content/uploads/2012/10/2010_12_06_observe-learn-magic-paying-attention.jpg
Goal-Question-Metric (GQM) Paradigm
• Goal-oriented framework for identifying goals and necessary
corresponding metrics
• Goal: measurement goals
• Question: questions for evaluating goal achievement
• Metric: objective or subjective metrics for obtaining
necessary quantitative data to answer questions
Identifying
metrics
Interpreting
measurement
results
Metric
Goal
Question
Collected data
Goal achievement
evaluation
Answer
Measured
value
R. van Solingen, E. Berghout, “The Goal/Question/Metric Method” McGraw-Hill Education, 1999
7
GQM-based Multidimensional Measurements
H. Washizaki, R. Namiki, T. Fukuoka, Y. Harada, H. Watanabe, "A Framework for Measuring and Evaluating Program
Source Code Quality", 8th Int’l Conference on Product Focused Software Development and Process Improvement (Profes2007)
Reliability
Maintain
-ability
Portability
Efficiency
Reusability
Analysability
Changeability
Testability
Goal Metric
Depth of
call graph T
Cyclomatic
Number min
Estimated static
path length min
Measured by
some tools
Measured by
some tools
Are functions
not
complicated?
Question Sub-
Question
Is call-
nesting
not too deep?
Is logic
not too
complex?
IndependentIndependent SpecificSpecific
Are entities
named
properly?
(Scale type: T threshold, min smaller is better, max larger is better)
SEMAT-based Multidimensional measurements
8
Software System
Opportunity Stakeholders
Requirements
Work Team
Way of Working
Customer
Solution
Endeavour
Ivar Jacobson, Pan-Wei Ng, Paul E. McMahon, Ian Spence, Svante Lidman, “The Essence of Software Engineering:
The SEMAT Kernel,” Communications of the ACM, vol.55, no.12, pp.42-49, December 2012.
alpha as Project Measurement
9
 State 1
 XXXXXXXXXXXXXXXXXX
 XXXXXXXXXXX
 XXXXXXXXXXXX
 State 2
 XXXXXXXXXXXXXXXXXX
 XXXXXXXXXXX
 XXXXXXXXXXXX
 State 3
 XXXXXXXXXXXXXXXXXX
 XXXXXXXXXXX
 XXXXXXXXXXXX
 ……..
 …….
Checklist
Adopted/modified from I. Jacobson, et al.: Tutorial: Essence - Kernel and Language for Software
Engineering Practices, ICSE'13
alpha
Indicator
1
2
3
4
5
Example from ITA WG on project failuers
10
• An employee in charge of Bank office
inquires "registered customer information
cannot be browsed from the terminal“.
• It was because a batch processing for the
previous day has ended abnormally due to
wrong data input.
• It took about two hours to recover the
data, and employees at each office had to
handle customer inquiry manually.
• For that reason, we had received plenty of
complaints from customers who had been
waiting for a long time!
H. Washizaki, “Analyzing and refining project failure cases from wider viewpoints by using SEMAT Essence,” Essence
Conference in Seoul, 2017.
11
Delay in service
deployment
Delay in service
deployment
Huge data inputs
manually
Huge data inputs
manually
Wrong data inputWrong data input
Defects in
operation manual
Defects in
operation manual
Misunderstanding
of abnormal state
as normal state
Misunderstanding
of abnormal state
as normal state
Problem
Cause
Root cause
Requirement
s: NG
“Coherent”
Software
System: NG
“Demonstrable”
Automate data
input
Automate data
input
Countermeasure
Frequent rule-
violations
Frequent rule-
violationsWork:
NG “Under
Control”
Way of Working:
NG “In Use”
Review and modify
rules
Review and modify
rules
Monitor and
enforce compliance
with rules
Monitor and
enforce compliance
with rules
Opportunity:
NG “Benefit
Accrued”
Team:
NG
“Collaborating”
Stakeholders:
NG “Satisfied
in Use”
Pitfalls and Countermeasures
12
Pitfall Countermeasure
Negative
Hawthorne effects
Goal-orientation
Multidimensional measurements
Organization
misalignment
Visualization of relationships among
organizational goals, strategies, and
measurements
Exhaustive identification of rationales
Uncertain future
Prediction incorporating uncertainty
Measurement program improvement by
machine learning
Self-certified quality
Standard-based evaluation
Pattern-based evaluation
H. Washizaki, Pitfalls and Countermeasures in Software Quality Measurements and Evaluations, Advances in Computers, 106, 2017
Organization misalignment
13
We increase customer
satisfaction by quality and
usability improvement!
Top managementWe reduce customer-
reported defects by
improving testing process
and product maintainability.
Development
team We track defect data and
code quality metrics.
Quality
assurance
team
GQM+Strategies
M1: Customer
satisfaction survey
M1: Customer
satisfaction survey
Measurement DataGoals and Strategies
BusinessLevelSoftwareLevel
Goal: Increase
customer
satisfaction by 10%
Goal: Increase
customer
satisfaction by 10%
Strategy: Improve
product quality
Strategy: Improve
product quality
Strategy: Improve
usability of
product
Strategy: Improve
usability of
product
Goal: Reduce
customer-
reported defects
by 20%
Goal: Reduce
customer-
reported defects
by 20%
No sub-level
goal defined
Strategy: Improve
efficiency of
system testing
Strategy: Improve
efficiency of
system testing
Strategy: Improve
maintainability of
software
Strategy: Improve
maintainability of
software
Isolated
strategy
M2: Field defect
data
M2: Field defect
data
M3: Code quality
metrics (McCabe,
coupling, cohesion)
M3: Code quality
metrics (McCabe,
coupling, cohesion)
Isolated
data 14
• Alignment and tracing among goal, strategy
and data
Context & Assumption
Context & Assumption
Context-Assumption-Matrix [IEICE’16]
15Takanobu Kobori, Hironori Washizaki, et al., “Exhaustive and efficient identification of rationales using GQM+Strategies with
stakeholder relationship analysis,” IEICE Transactions on Information and Systems, Vol.E99-D, No.9, pp.2219-2228, 2016.
Target
View
Hospital
Insurance
company
Health
sensor
maker
・・・
Hospital
Insurance
company
Health sensor
maker
・・・
Insurance company can
offer personalized products
by having medical info…
Context / Assumption
Insurance
company
Medical
info
provider
Personal
medical
info.
Customized
product
Resource
Goal
depends
16
Insurance
company
G
S
A
S
Health
sensor maker
Medical
info.
provider
Expectation from the
view of insurance
company
Expectation from
the view of health
sensor maker
Receive medical
info.
Personalized
products developed
Strategy
Insurance product and
fee can be personalized
based on personal
medical info.
Goal
Context / Assumption
Sales of new
products
Personal
fitness
Confirm personal info.
Management system of
receiver of info.
Secure management
of medical info.
Strategy
Must ensure
personal info.
guideline
Goal
Context / Assumption
Insurance
company Medical
info.
provider
Confirming
management
systems
Pati
ent
Getting
consent
Conflict, redundancy,
complement
Conflict, redundancy,
complement
17
Towards clear dependency and alignment
G
S
A
S
Insurance
company
Medical
info.
provider
Personal
medical info.
Realizing
personalized
insurance
Objective of
medical
info. use
Managing
personal info.
Clarify objective
of use of medical
info.
Strategy
Establish personal
info. management
system
Strategy
Medical
info.
provider
Secure management
of medical info.
Strategy
Must ensure
personal info.
guideline
Goal
Context / Assumption
Health
sensor maker
Insurance
company
Receive medical
info.
Personalized
products developed
Strategy
Goal
Context / Assumption
Sales of new
products
Personal
fitness
Insurance product and
fee can be personalized
based on personal
medical info.
S1 S2
S3 S5
S6
S4 S7
S1
S2
S3
S4
S6
S5
S7
Interpretive Structural Modeling (ISM)
18
Impact
S1 S2 S3 S4 S5 S6 S7
S1 1 0 0 0 0 0 0
S2 0 1 0 0 0 0 0
S3 1 1* 1 0 1 0 0
S4 1 1* 0 1 0 0 1
S5 1* 1 1 0 1 0 0
S6 1* 1 0 1 0 1 1*
S7 1* 1 0 1 0 0 1
Power.
Hierarchical
structuring
可到達行列
S1 S2 S3 S4 S5 S6 S7
S1 1 0 0 0 0 0 0
S2 1 1 0 0 0 0 0
S3 1 0 1 0 1 0 0
S4 1 0 0 1 0 0 1
S5 0 1 1 0 1 0 0
S6 0 1 0 1 0 1 0
S7 0 1 0 1 0 0 1
Relation matrix Reachability matrix
ISM-based Alignment [HICSS’16]
S1
S2
S3
S4
・
・
S1 S2 S3 S4 ・・
1
1
(1) Decompose into elements
(2)Restru
cturing
(3)Analysis&
alignment
S5
S1 S2
S3
S4
S6 S7
Hierarchical structure
S5
S1 S2 S3
S4 S6 S7
ISM
1
Elements (especially strategies)
1
1
1
1
S5
S1 S2
S3 S4 S6 S7
GQM+Strategies
G
GG G
Reachability matrix
Conflict specified
• Alignment for single GQM+Strategies model
• Future: alignment over areas and stakeholders
Yohei Aoki, Takanobu Kobori, Hironori Washizaki, et al., “Identifying Misalignment of Goals and Strategies across Organizational
Units by Interpretive Structural Modeling,” 49th Hawaii International Conference on System Sciences (HICSS), 2016
Pitfalls and Countermeasures
20
Pitfall Countermeasure
Negative
Hawthorne effects
Goal-orientation
Multidimensional measurements
Organization
misalignment
Visualization of relationships among
organizational goals, strategies, and
measurements
Exhaustive identification of rationales
Uncertain future
Prediction incorporating uncertainty
Measurement program improvement by
machine learning
Self-certified quality
Standard-based evaluation
Pattern-based evaluation
H. Washizaki, Pitfalls and Countermeasures in Software Quality Measurements and Evaluations, Advances in Computers, 106, 2017
Uncertain Future
21
Identifying parts
that are hard to
maintain…
How large?
ELOC N. functions
Measurement System Improvement by ML
N. Tsuda, et al. Iterative Process to Improve GQM Models with Metrics Thresholds to Detect High-risk Files, SANER 2015
Review
Quality
measurement
Machine
learning
Goal
Question
Measurement
22
10 25
300
150
N. functions
ELOC
OK
NG
71
N. functions
ELOC
OK
NG
Improvement
X
]]
#Issues
Actual
Predicted
DayKiyoshi Honda, Hironori Washizaki and Yoshiaki Fukazawa, “Generalized Software Reliability Model Considering Uncertainty and
Dynamics: Model and Applications”, International Journal of Software Engineering and Knowledge Engineering (IJSEKE), 2016.
Logistic
Gompertz
Non-homogeneous
Poisson
process(NHPP)
Software reliability model (SRM)
as actionable metric
23
Prediction with uncertainty
0
10
20
30
40
50
60
70
80
90
0 2 4 6 8 10 12 14
#Issues
Time
ActualData
Our model
24
Kiyoshi Honda, Hironori Washizaki and Yoshiaki Fukazawa, “Generalized Software Reliability Model Considering Uncertainty and
Dynamics: Model and Applications”, International Journal of Software Engineering and Knowledge Engineering (IJSEKE), 2016.
Prediction with uncertainty
0
10
20
30
40
50
60
70
80
90
0 2 4 6 8 10 12 14
#Issues
Time
ActualData
Our model
-
+
25
Lower (worst case)
Upper (best case)
T1 T2
Kiyoshi Honda, Hironori Washizaki and Yoshiaki Fukazawa, “Generalized Software Reliability Model Considering Uncertainty and
Dynamics: Model and Applications”, International Journal of Software Engineering and Knowledge Engineering (IJSEKE), 2016.
Uncertainty patterns and prediction
26
0 0.5 1
ConstantIncrease Decrease
Kiyoshi Honda, Hironori Washizaki and Yoshiaki Fukazawa, “Generalized Software Reliability Model Considering Uncertainty and
Dynamics: Model and Applications”, International Journal of Software Engineering and Knowledge Engineering (IJSEKE), 2016.
Pitfalls and Countermeasures
27
Pitfall Countermeasure
Negative
Hawthorne effects
Goal-orientation
Multidimensional measurements
Organization
misalignment
Visualization of relationships among
organizational goals, strategies, and
measurements
Exhaustive identification of rationales
Uncertain future
Prediction incorporating uncertainty
Measurement program improvement by
machine learning
Self-certified quality
Standard-based evaluation
Pattern-based evaluation
H. Washizaki, Pitfalls and Countermeasures in Software Quality Measurements and Evaluations, Advances in Computers, 106, 2017
Self-Certified Quality
28
Image: How to Spot a Fake: Avoiding Degree Mill Scams https://wenr.wes.org/2015/06/spot-fake-avoiding-degree-mill-scams
ISO/IEC 25000 SQuaRE-based
Quality Measurement and Benchmark
29
Q1. Any path going through internal
servers only?
Q2. Any path going through outside
servers?
Q3. Any P2P communications?
…
G. The events or actions cannot
be repudiated later through
communication channels (paths).
M. Signed communication path ratio
= #Signed_paths / #Total_paths
E.g. Non-repudiation
Waseda U. Team Vendor
1 Concretize SQuaRE
measurements by
GQM
2 Prepare measurement
methods: data forms,
static analysis,
questionnaire, user-
testing
3 Conduct code
static analysis,
user-testing
Fill data
forms,
questionnaire
4 Measure and
evaluate quality
Scores by using percentile
E.g., Top 30% = 0.7
HighLow
#Products
Measured value
H. Nakai, N. Tsuda, K. Honda, H. Washizaki and Y. Fukazawa, Initial Framework for a Software Quality Evaluation based on
ISO/IEC 25022 and ISO/IEC 25023, IEEE International Conference on Software Quality, Reliability & Security (QRS 2016)
21 Japanese Products Measurement
30
Functional
suitability
Performance
efficiency
Compatibility Usability
Reliability Security Maintainability Portability
Effectiveness Efficiency Satisfaction Freedom from
risk
Context
coverage • Low security and compatibility in some products
• Necessary to address these in IoT era
H. Nakai, N. Tsuda, K. Honda, H. Washizaki and Y. Fukazawa, Initial Framework for a Software Quality Evaluation based on
ISO/IEC 25022 and ISO/IEC 25023, IEEE International Conference on Software Quality, Reliability & Security (QRS 2016)
Relationships among characteristics
31
Internal/External Quality Quality in Use
p-value < 0.1p-value < 0.1
性能効率性 互換性 使用性 信頼性 セキュリティ 保守性 移植性 有効性 効率性 満足性 リスク回避性 利用状況網羅性
機能適合性 0. 31 0. 19 -0. 72 0. 37 -0. 05 0. 50 0. 31 -0. 14 0. 52 1. 00 1. 00 1. 00
性能効率性 0. 44 0. 24 0. 36 -0. 17 0. 37 0. 32 0. 32 -0. 10 -0. 50 -0. 50 -0. 50
互換性 0. 04 0. 17 -0. 06 0. 36 -0. 04 -0. 14 0. 05 -0. 50 -0. 50 -0. 50
使用性 0. 17 -0. 21 0. 11 0. 44 -0. 09 -0. 20 -1. 00 -1. 00 -1. 00
信頼性 0. 30 0. 41 0. 45 -0. 08 0. 11 1. 00 1. 00 1. 00
セキュリティ -0. 06 0. 19 0. 64 -0. 34 0. 50 0. 50 0. 50
保守性 0. 26 -0. 29 0. 01 1. 00 1. 00 1. 00
移植性 -0. 21 0. 67 0. 50 0. 50 0. 50
有効性 0. 03 -1. 00 -1. 00 -1. 00
効率性 1. 00 1. 00 1. 00
満足性 1. 00 1. 00
リスク回避性 1. 00
Func.
Perf.
Comp.
Usa.
Relia.
Sec.
Main.
Port.
Effe.
Effic.
Sati.
Free.
Perf. Comp. Usa. Relia. Sec. Main. Port. Effe. Effic. Sati. Free. Cont.
• Negative correlation between usability
and functionality.
• Need to adopt user-centered
development
H. Nakai, N. Tsuda, K. Honda, H. Washizaki and Y. Fukazawa, Initial Framework for a Software Quality Evaluation based on
ISO/IEC 25022 and ISO/IEC 25023, IEEE International Conference on Software Quality, Reliability & Security (QRS 2016)
Appropriate
design
Inappropriate
design
Security Patterns and Testing
32
Role-based access control (RBAC) pattern
TESEM: Test Driven Secure Modeling Tool
[ARES’13][ARES’13][IJSSE’14][ICST’15][Information’16]
33
Security
Design
Pattern
Problem
Solution
Context
Test design as
requirement
! create Actor
! create UI :
! create Subject..
Test Script Test case
testing
[ARES’13] Validating Security Design Pattern Applications Using Model Testing, Int’l Conf. Availability, Reliability and Security
[ARES’14] Verification of Implementing Security Design Patterns Using a Test Template, Conf. Availability, Reliability and Security
[IJSSE’14] Validating Security Design Pattern Applications by Testing Design Models, Int’l J. Secure Software Engineering 5(4)
[ICST’15] TESEM: A Tool for Verifying Security Design Pattern Applications by Model Testing, IEEE ICST’15 Tools Track
[Information’16] Implementation Support of Security Design Patterns Using Test Templates, Information 7(2)
testing
34
window.onload = setEventHandler;
function setEventHandler() {
$(“reg_type”).onchange = calcPrice;
・・・
$(“reg_addcart”).onclick = addCart;
};
function calcPrice() { ・・・ };
function addCart() {
if(isValidInput()) {
reqRunTrans();
} else {
alert(“Invalid user inputs”);
}
};
function reqRunTrans() {
new Ajax.Request(“runTrans.php”, {
method: “GET”, parameters: getParams(),
onSuccess: succeeded });
};
function succeeded() { disableAll();
jumpToConfirm();
};
window.onload = setEventHandler;
function setEventHandler() {
$(“reg_type”).onchange = calcPrice;
・・・
$(“reg_addcart”).onclick = addCart;
};
function calcPrice() { ・・・ };
function addCart() {
if(isValidInput()) {
reqRunTrans();
} else {
alert(“Invalid user inputs”);
}
};
function reqRunTrans() {
new Ajax.Request(“runTrans.php”, {
method: “GET”, parameters: getParams(),
onSuccess: succeeded });
};
function succeeded() { disableAll();
jumpToConfirm();
};
35
Finite State Machine Extraction
……………………………………………
……………………………………………
function setEventHandler() {
$(“addcart”).onclick=addCart;
……………………………………………
……………………………………………
……………………………………………
……………………………………………
function setEventHandler() {
$(“addcart”).onclick=addCart;
……………………………………………
……………………………………………
onclick
setEventHandler
addCart
E.g. User Action [Mahamoff’06]
“Prevent multiple calls of
specific user event handler”
Y. Maezawa, K. Nishiura, H. Washizaki, S. Honiden, Validating Ajax Applications Using a Delay-Based Mutation Technique”,
29th IEEE/ACM International Conference on Automated Software Engineering (ASE 2014)
Y. Maezawa, H. Washizaki, Y. Tanabe and S. Honiden , “Automated Verification of Pattern-based Interaction Invariants in Ajax
Applications, 28th IEEE/ACM International Conference on Automated Software Engineering (ASE2013)
Duplicate
order
Duplicate
order
[Mahamoff’06] M. Mahamoff, “Ajax Design Patterns”, O’Reilly Media Inc., 2006.
36
window.onload = setEventHandler;
function setEventHandler() {
$(“reg_type”).onchange = calcPrice;
・・・
$(“reg_addcart”).onclick = addCart;
};
function calcPrice() { ・・・ };
function addCart() {
if(isValidInput()) {
$(“addCart”).disabled = true;
reqRunTrans();
} else {
alert(“Invalid user inputs”);
$(“addCart”).disabled = false;
}
};
function reqRunTrans() {
new Ajax.Request(“runTrans.php”, {
method: “GET”, parameters: getParams(),
onSuccess: succeeded }); };
function succeeded() { disableAll();
jumpToConfirm(); };
window.onload = setEventHandler;
function setEventHandler() {
$(“reg_type”).onchange = calcPrice;
・・・
$(“reg_addcart”).onclick = addCart;
};
function calcPrice() { ・・・ };
function addCart() {
if(isValidInput()) {
$(“addCart”).disabled = true;
reqRunTrans();
} else {
alert(“Invalid user inputs”);
$(“addCart”).disabled = false;
}
};
function reqRunTrans() {
new Ajax.Request(“runTrans.php”, {
method: “GET”, parameters: getParams(),
onSuccess: succeeded }); };
function succeeded() { disableAll();
jumpToConfirm(); };
Pitfalls and Countermeasures
37
Pitfall Countermeasure
Negative
Hawthorne effects
Goal-orientation
Multidimensional measurements
Organization
misalignment
Visualization of relationships among
organizational goals, strategies, and
measurements
Exhaustive identification of rationales
Uncertain future
Prediction incorporating uncertainty
Measurement program improvement by
machine learning
Self-certified quality
Standard-based evaluation
Pattern-based evaluation
SamurAI Coding
IPSJ 6th International AI
Programing Contest
World Final
March 14 2018 Tokyo
http://samuraicoding.info
APSEC 2018
25th Asia-Pacific Software
Engineering Conference
Nara
Dec 4-7 (due: June)
PC Chair: H. Washizaki
Int. Journal of Agile and
Extreme Software
Development
(IJAESD)
Editor-in-Chief: H. Washizaki
COMPSAC 2018
42nd IEEE Computer Society Int’l Conf.
Computers, Software & Applications
Tokyo
July 23-27 (due: Jan 15)

Contenu connexe

Tendances

The End User Requirement for Project Management Software Accuracy
The End User Requirement for Project Management Software Accuracy The End User Requirement for Project Management Software Accuracy
The End User Requirement for Project Management Software Accuracy IJECEIAES
 
Clinlogix - Improving Pharmacovigilance Outsourcing with Modern Technologies
Clinlogix - Improving Pharmacovigilance Outsourcing with Modern Technologies Clinlogix - Improving Pharmacovigilance Outsourcing with Modern Technologies
Clinlogix - Improving Pharmacovigilance Outsourcing with Modern Technologies Veeva Systems
 
Building Quality in Legacy Systems - The Art of Asking Questions, JavaZone VR...
Building Quality in Legacy Systems - The Art of Asking Questions, JavaZone VR...Building Quality in Legacy Systems - The Art of Asking Questions, JavaZone VR...
Building Quality in Legacy Systems - The Art of Asking Questions, JavaZone VR...Mufrid Krilic
 
IRJET- Survey of Classification of Business Reviews using Sentiment Analysis
IRJET- Survey of Classification of Business Reviews using Sentiment AnalysisIRJET- Survey of Classification of Business Reviews using Sentiment Analysis
IRJET- Survey of Classification of Business Reviews using Sentiment AnalysisIRJET Journal
 
Yelp Data Set Challenge (What drives restaurant ratings?)
Yelp Data Set Challenge (What drives restaurant ratings?)Yelp Data Set Challenge (What drives restaurant ratings?)
Yelp Data Set Challenge (What drives restaurant ratings?)Prashanth Raj
 
Applied Statistics, with Emphasis on Risk Management in R&D, QA/QC, and Manuf...
Applied Statistics, with Emphasis on Risk Management in R&D, QA/QC, and Manuf...Applied Statistics, with Emphasis on Risk Management in R&D, QA/QC, and Manuf...
Applied Statistics, with Emphasis on Risk Management in R&D, QA/QC, and Manuf...GlobalCompliancePanel
 
Intelligence Density
Intelligence DensityIntelligence Density
Intelligence DensityAhmed Zyada
 
27 ijcse-01238-5 sivaranjani
27 ijcse-01238-5 sivaranjani27 ijcse-01238-5 sivaranjani
27 ijcse-01238-5 sivaranjaniShivlal Mewada
 
The Fast Track to Fair Lab Data
The Fast Track to Fair Lab Data The Fast Track to Fair Lab Data
The Fast Track to Fair Lab Data OSTHUS
 
Requirements Engineering - Scaling RE & Requirements Refinement
Requirements Engineering - Scaling RE & Requirements RefinementRequirements Engineering - Scaling RE & Requirements Refinement
Requirements Engineering - Scaling RE & Requirements RefinementBirgit Penzenstadler
 
The Challenges Of, And Advantages In, Establishing A Consistent Architectural...
The Challenges Of, And Advantages In, Establishing A Consistent Architectural...The Challenges Of, And Advantages In, Establishing A Consistent Architectural...
The Challenges Of, And Advantages In, Establishing A Consistent Architectural...Tim Eyres
 
Us and Them — A Study of Privacy Requirements Across North America, Asia, and...
Us and Them — A Study of Privacy Requirements Across North America, Asia, and...Us and Them — A Study of Privacy Requirements Across North America, Asia, and...
Us and Them — A Study of Privacy Requirements Across North America, Asia, and...Walid Maalej
 
Make the Most of Your Time: How Should the Analyst Work with Automated Tracea...
Make the Most of Your Time: How Should the Analyst Work with Automated Tracea...Make the Most of Your Time: How Should the Analyst Work with Automated Tracea...
Make the Most of Your Time: How Should the Analyst Work with Automated Tracea...Tim Menzies
 
Sentiment analysis in healthcare
Sentiment analysis in healthcareSentiment analysis in healthcare
Sentiment analysis in healthcareTony Russell-Rose
 
Requirements Engineering - Wrap-up: Putting it all together
Requirements Engineering - Wrap-up: Putting it all togetherRequirements Engineering - Wrap-up: Putting it all together
Requirements Engineering - Wrap-up: Putting it all togetherBirgit Penzenstadler
 
Aligning Bounded Contexts with Subdomains in Legacy Code - NDC Oslo 2021
Aligning Bounded Contexts with Subdomains in Legacy Code - NDC Oslo 2021Aligning Bounded Contexts with Subdomains in Legacy Code - NDC Oslo 2021
Aligning Bounded Contexts with Subdomains in Legacy Code - NDC Oslo 2021Mufrid Krilic
 
Software Development as an Experiment System: A Qualitative Survey on the St...
Software Development as an Experiment System:  A Qualitative Survey on the St...Software Development as an Experiment System:  A Qualitative Survey on the St...
Software Development as an Experiment System: A Qualitative Survey on the St...Jürgen Münch
 
Building a Data Quality Program from Scratch
Building a Data Quality Program from ScratchBuilding a Data Quality Program from Scratch
Building a Data Quality Program from Scratchdmurph4
 

Tendances (20)

The End User Requirement for Project Management Software Accuracy
The End User Requirement for Project Management Software Accuracy The End User Requirement for Project Management Software Accuracy
The End User Requirement for Project Management Software Accuracy
 
Clinlogix - Improving Pharmacovigilance Outsourcing with Modern Technologies
Clinlogix - Improving Pharmacovigilance Outsourcing with Modern Technologies Clinlogix - Improving Pharmacovigilance Outsourcing with Modern Technologies
Clinlogix - Improving Pharmacovigilance Outsourcing with Modern Technologies
 
UX research
UX researchUX research
UX research
 
Building Quality in Legacy Systems - The Art of Asking Questions, JavaZone VR...
Building Quality in Legacy Systems - The Art of Asking Questions, JavaZone VR...Building Quality in Legacy Systems - The Art of Asking Questions, JavaZone VR...
Building Quality in Legacy Systems - The Art of Asking Questions, JavaZone VR...
 
IRJET- Survey of Classification of Business Reviews using Sentiment Analysis
IRJET- Survey of Classification of Business Reviews using Sentiment AnalysisIRJET- Survey of Classification of Business Reviews using Sentiment Analysis
IRJET- Survey of Classification of Business Reviews using Sentiment Analysis
 
Yelp Data Set Challenge (What drives restaurant ratings?)
Yelp Data Set Challenge (What drives restaurant ratings?)Yelp Data Set Challenge (What drives restaurant ratings?)
Yelp Data Set Challenge (What drives restaurant ratings?)
 
Applied Statistics, with Emphasis on Risk Management in R&D, QA/QC, and Manuf...
Applied Statistics, with Emphasis on Risk Management in R&D, QA/QC, and Manuf...Applied Statistics, with Emphasis on Risk Management in R&D, QA/QC, and Manuf...
Applied Statistics, with Emphasis on Risk Management in R&D, QA/QC, and Manuf...
 
Intelligence Density
Intelligence DensityIntelligence Density
Intelligence Density
 
Promise Keynote
Promise KeynotePromise Keynote
Promise Keynote
 
27 ijcse-01238-5 sivaranjani
27 ijcse-01238-5 sivaranjani27 ijcse-01238-5 sivaranjani
27 ijcse-01238-5 sivaranjani
 
The Fast Track to Fair Lab Data
The Fast Track to Fair Lab Data The Fast Track to Fair Lab Data
The Fast Track to Fair Lab Data
 
Requirements Engineering - Scaling RE & Requirements Refinement
Requirements Engineering - Scaling RE & Requirements RefinementRequirements Engineering - Scaling RE & Requirements Refinement
Requirements Engineering - Scaling RE & Requirements Refinement
 
The Challenges Of, And Advantages In, Establishing A Consistent Architectural...
The Challenges Of, And Advantages In, Establishing A Consistent Architectural...The Challenges Of, And Advantages In, Establishing A Consistent Architectural...
The Challenges Of, And Advantages In, Establishing A Consistent Architectural...
 
Us and Them — A Study of Privacy Requirements Across North America, Asia, and...
Us and Them — A Study of Privacy Requirements Across North America, Asia, and...Us and Them — A Study of Privacy Requirements Across North America, Asia, and...
Us and Them — A Study of Privacy Requirements Across North America, Asia, and...
 
Make the Most of Your Time: How Should the Analyst Work with Automated Tracea...
Make the Most of Your Time: How Should the Analyst Work with Automated Tracea...Make the Most of Your Time: How Should the Analyst Work with Automated Tracea...
Make the Most of Your Time: How Should the Analyst Work with Automated Tracea...
 
Sentiment analysis in healthcare
Sentiment analysis in healthcareSentiment analysis in healthcare
Sentiment analysis in healthcare
 
Requirements Engineering - Wrap-up: Putting it all together
Requirements Engineering - Wrap-up: Putting it all togetherRequirements Engineering - Wrap-up: Putting it all together
Requirements Engineering - Wrap-up: Putting it all together
 
Aligning Bounded Contexts with Subdomains in Legacy Code - NDC Oslo 2021
Aligning Bounded Contexts with Subdomains in Legacy Code - NDC Oslo 2021Aligning Bounded Contexts with Subdomains in Legacy Code - NDC Oslo 2021
Aligning Bounded Contexts with Subdomains in Legacy Code - NDC Oslo 2021
 
Software Development as an Experiment System: A Qualitative Survey on the St...
Software Development as an Experiment System:  A Qualitative Survey on the St...Software Development as an Experiment System:  A Qualitative Survey on the St...
Software Development as an Experiment System: A Qualitative Survey on the St...
 
Building a Data Quality Program from Scratch
Building a Data Quality Program from ScratchBuilding a Data Quality Program from Scratch
Building a Data Quality Program from Scratch
 

Similaire à Pitfalls and Countermeasures in Software Quality Measurements and Evaluations

Importance of software quality metrics
Importance of software quality metricsImportance of software quality metrics
Importance of software quality metricsPiyush Sohaney
 
Using the power of OpenAI with your own data: what's possible and how to start?
Using the power of OpenAI with your own data: what's possible and how to start?Using the power of OpenAI with your own data: what's possible and how to start?
Using the power of OpenAI with your own data: what's possible and how to start?Maxim Salnikov
 
Integrating the users logic into Requirements Engineering
Integrating the users logic into Requirements EngineeringIntegrating the users logic into Requirements Engineering
Integrating the users logic into Requirements EngineeringSofia Ouhbi
 
Software Metrics: Taking the Guesswork Out of Software Projects
Software Metrics: Taking the Guesswork Out of Software ProjectsSoftware Metrics: Taking the Guesswork Out of Software Projects
Software Metrics: Taking the Guesswork Out of Software ProjectsTechWell
 
Advanced Project Data Analytics for Improved Project Delivery
Advanced Project Data Analytics for Improved Project DeliveryAdvanced Project Data Analytics for Improved Project Delivery
Advanced Project Data Analytics for Improved Project DeliveryMark Constable
 
Amp Up Your Testing by Harnessing Test Data
Amp Up Your Testing by Harnessing Test DataAmp Up Your Testing by Harnessing Test Data
Amp Up Your Testing by Harnessing Test DataTechWell
 
Software Productivity Framework
Software Productivity Framework Software Productivity Framework
Software Productivity Framework Zinnov
 
Using Data Science to Build an End-to-End Recommendation System
Using Data Science to Build an End-to-End Recommendation SystemUsing Data Science to Build an End-to-End Recommendation System
Using Data Science to Build an End-to-End Recommendation SystemVMware Tanzu
 
Effectiveness of software product metrics for mobile application
Effectiveness of software product metrics for mobile application Effectiveness of software product metrics for mobile application
Effectiveness of software product metrics for mobile application tanveer ahmad
 
MVP (Minimum Viable Product) Readiness | Boost Labs
MVP (Minimum Viable Product) Readiness | Boost LabsMVP (Minimum Viable Product) Readiness | Boost Labs
MVP (Minimum Viable Product) Readiness | Boost LabsBoost Labs
 
Process Improvement for better Software Technical Quality under Global Crisis...
Process Improvement for better Software Technical Quality under Global Crisis...Process Improvement for better Software Technical Quality under Global Crisis...
Process Improvement for better Software Technical Quality under Global Crisis...Optimyth Software
 
IBM Cognos Social Media Analytic Solution - G A InfoMart
IBM Cognos Social Media Analytic Solution - G A InfoMartIBM Cognos Social Media Analytic Solution - G A InfoMart
IBM Cognos Social Media Analytic Solution - G A InfoMartGA InfoMart Ltd
 
The adoption of machine learning techniques for software defect prediction: A...
The adoption of machine learning techniques for software defect prediction: A...The adoption of machine learning techniques for software defect prediction: A...
The adoption of machine learning techniques for software defect prediction: A...RAKESH RANA
 
Sonu balasubramanian agile_qtp_selenium
Sonu balasubramanian  agile_qtp_seleniumSonu balasubramanian  agile_qtp_selenium
Sonu balasubramanian agile_qtp_seleniumSonu Balasubramanian
 
A Survey of Software Reliability factor
A Survey of Software Reliability factorA Survey of Software Reliability factor
A Survey of Software Reliability factorIOSR Journals
 
Privacy-preserving Analytics and Data Mining at LinkedIn
Privacy-preserving Analytics and Data Mining at LinkedInPrivacy-preserving Analytics and Data Mining at LinkedIn
Privacy-preserving Analytics and Data Mining at LinkedInKrishnaram Kenthapadi
 

Similaire à Pitfalls and Countermeasures in Software Quality Measurements and Evaluations (20)

Importance of software quality metrics
Importance of software quality metricsImportance of software quality metrics
Importance of software quality metrics
 
Using the power of OpenAI with your own data: what's possible and how to start?
Using the power of OpenAI with your own data: what's possible and how to start?Using the power of OpenAI with your own data: what's possible and how to start?
Using the power of OpenAI with your own data: what's possible and how to start?
 
Integrating the users logic into Requirements Engineering
Integrating the users logic into Requirements EngineeringIntegrating the users logic into Requirements Engineering
Integrating the users logic into Requirements Engineering
 
chvs-Cambria
chvs-Cambriachvs-Cambria
chvs-Cambria
 
Sonali-resume
Sonali-resumeSonali-resume
Sonali-resume
 
Software Metrics: Taking the Guesswork Out of Software Projects
Software Metrics: Taking the Guesswork Out of Software ProjectsSoftware Metrics: Taking the Guesswork Out of Software Projects
Software Metrics: Taking the Guesswork Out of Software Projects
 
Advanced Project Data Analytics for Improved Project Delivery
Advanced Project Data Analytics for Improved Project DeliveryAdvanced Project Data Analytics for Improved Project Delivery
Advanced Project Data Analytics for Improved Project Delivery
 
Amp Up Your Testing by Harnessing Test Data
Amp Up Your Testing by Harnessing Test DataAmp Up Your Testing by Harnessing Test Data
Amp Up Your Testing by Harnessing Test Data
 
Software Productivity Framework
Software Productivity Framework Software Productivity Framework
Software Productivity Framework
 
AshishShrivastava_Capgemini
AshishShrivastava_CapgeminiAshishShrivastava_Capgemini
AshishShrivastava_Capgemini
 
Using Data Science to Build an End-to-End Recommendation System
Using Data Science to Build an End-to-End Recommendation SystemUsing Data Science to Build an End-to-End Recommendation System
Using Data Science to Build an End-to-End Recommendation System
 
Effectiveness of software product metrics for mobile application
Effectiveness of software product metrics for mobile application Effectiveness of software product metrics for mobile application
Effectiveness of software product metrics for mobile application
 
MVP (Minimum Viable Product) Readiness | Boost Labs
MVP (Minimum Viable Product) Readiness | Boost LabsMVP (Minimum Viable Product) Readiness | Boost Labs
MVP (Minimum Viable Product) Readiness | Boost Labs
 
Process Improvement for better Software Technical Quality under Global Crisis...
Process Improvement for better Software Technical Quality under Global Crisis...Process Improvement for better Software Technical Quality under Global Crisis...
Process Improvement for better Software Technical Quality under Global Crisis...
 
IBM Cognos Social Media Analytic Solution - G A InfoMart
IBM Cognos Social Media Analytic Solution - G A InfoMartIBM Cognos Social Media Analytic Solution - G A InfoMart
IBM Cognos Social Media Analytic Solution - G A InfoMart
 
The adoption of machine learning techniques for software defect prediction: A...
The adoption of machine learning techniques for software defect prediction: A...The adoption of machine learning techniques for software defect prediction: A...
The adoption of machine learning techniques for software defect prediction: A...
 
Sonu balasubramanian agile_qtp_selenium
Sonu balasubramanian  agile_qtp_seleniumSonu balasubramanian  agile_qtp_selenium
Sonu balasubramanian agile_qtp_selenium
 
A Survey of Software Reliability factor
A Survey of Software Reliability factorA Survey of Software Reliability factor
A Survey of Software Reliability factor
 
VIGNESH s
VIGNESH sVIGNESH s
VIGNESH s
 
Privacy-preserving Analytics and Data Mining at LinkedIn
Privacy-preserving Analytics and Data Mining at LinkedInPrivacy-preserving Analytics and Data Mining at LinkedIn
Privacy-preserving Analytics and Data Mining at LinkedIn
 

Plus de Hironori Washizaki

Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
IEEE Computer Society 2024 Technology Predictions Update
IEEE Computer Society 2024 Technology Predictions UpdateIEEE Computer Society 2024 Technology Predictions Update
IEEE Computer Society 2024 Technology Predictions UpdateHironori Washizaki
 
鷲崎弘宜, "国際規格ISO/IEC 24773とその意義", 情報処理学会 第86回全国大会
鷲崎弘宜, "国際規格ISO/IEC 24773とその意義", 情報処理学会 第86回全国大会鷲崎弘宜, "国際規格ISO/IEC 24773とその意義", 情報処理学会 第86回全国大会
鷲崎弘宜, "国際規格ISO/IEC 24773とその意義", 情報処理学会 第86回全国大会Hironori Washizaki
 
IEEE Computer Society’s Strategic Activities and Products including SWEBOK Guide
IEEE Computer Society’s Strategic Activities and Products including SWEBOK GuideIEEE Computer Society’s Strategic Activities and Products including SWEBOK Guide
IEEE Computer Society’s Strategic Activities and Products including SWEBOK GuideHironori Washizaki
 
TISO/IEC JTC1におけるソフトウェア工学知識体系、技術者認証および品質の標準化と研究・教育他への活用
TISO/IEC JTC1におけるソフトウェア工学知識体系、技術者認証および品質の標準化と研究・教育他への活用TISO/IEC JTC1におけるソフトウェア工学知識体系、技術者認証および品質の標準化と研究・教育他への活用
TISO/IEC JTC1におけるソフトウェア工学知識体系、技術者認証および品質の標準化と研究・教育他への活用Hironori Washizaki
 
アジャイル品質のパターンとメトリクス Agile Quality Patterns and Metrics (QA2AQ) 20240225
アジャイル品質のパターンとメトリクス Agile Quality Patterns and Metrics (QA2AQ) 20240225アジャイル品質のパターンとメトリクス Agile Quality Patterns and Metrics (QA2AQ) 20240225
アジャイル品質のパターンとメトリクス Agile Quality Patterns and Metrics (QA2AQ) 20240225Hironori Washizaki
 
Joseph Yoder : Being Agile about Architecture
Joseph Yoder : Being Agile about ArchitectureJoseph Yoder : Being Agile about Architecture
Joseph Yoder : Being Agile about ArchitectureHironori Washizaki
 
世界標準のソフトウェア工学知識体系SWEBOK Guide最新第4版を通じた開発アップデート
世界標準のソフトウェア工学知識体系SWEBOK Guide最新第4版を通じた開発アップデート世界標準のソフトウェア工学知識体系SWEBOK Guide最新第4版を通じた開発アップデート
世界標準のソフトウェア工学知識体系SWEBOK Guide最新第4版を通じた開発アップデートHironori Washizaki
 
SWEBOK Guide Evolution and Its Emerging Areas including Machine Learning Patt...
SWEBOK Guide Evolution and Its Emerging Areas including Machine Learning Patt...SWEBOK Guide Evolution and Its Emerging Areas including Machine Learning Patt...
SWEBOK Guide Evolution and Its Emerging Areas including Machine Learning Patt...Hironori Washizaki
 
デジタルトランスフォーメーション(DX)におけるソフトウェアの側面とダイバーシティ・インクルーシブに関する研究実践動向
デジタルトランスフォーメーション(DX)におけるソフトウェアの側面とダイバーシティ・インクルーシブに関する研究実践動向デジタルトランスフォーメーション(DX)におけるソフトウェアの側面とダイバーシティ・インクルーシブに関する研究実践動向
デジタルトランスフォーメーション(DX)におけるソフトウェアの側面とダイバーシティ・インクルーシブに関する研究実践動向Hironori Washizaki
 
SQuBOKガイドV3概説 ~IoT・AI・DX時代のソフトウェア品質とシステム監査~
SQuBOKガイドV3概説 ~IoT・AI・DX時代のソフトウェア品質とシステム監査~SQuBOKガイドV3概説 ~IoT・AI・DX時代のソフトウェア品質とシステム監査~
SQuBOKガイドV3概説 ~IoT・AI・DX時代のソフトウェア品質とシステム監査~Hironori Washizaki
 
人生100年・60年カリキュラム時代のDX人材育成: スマートエスイー 2021年度成果および2022年度募集
人生100年・60年カリキュラム時代のDX人材育成: スマートエスイー 2021年度成果および2022年度募集人生100年・60年カリキュラム時代のDX人材育成: スマートエスイー 2021年度成果および2022年度募集
人生100年・60年カリキュラム時代のDX人材育成: スマートエスイー 2021年度成果および2022年度募集Hironori Washizaki
 
スマートエスイーコンソーシアムの概要と2021年度成果紹介
スマートエスイーコンソーシアムの概要と2021年度成果紹介スマートエスイーコンソーシアムの概要と2021年度成果紹介
スマートエスイーコンソーシアムの概要と2021年度成果紹介Hironori Washizaki
 
DXの推進において企業内に求められる人材やデジタル人材の育て方
DXの推進において企業内に求められる人材やデジタル人材の育て方DXの推進において企業内に求められる人材やデジタル人材の育て方
DXの推進において企業内に求められる人材やデジタル人材の育て方Hironori Washizaki
 
対応性のある運用のパターン
対応性のある運用のパターン対応性のある運用のパターン
対応性のある運用のパターンHironori Washizaki
 
モデル訓練のパターン
モデル訓練のパターンモデル訓練のパターン
モデル訓練のパターンHironori Washizaki
 
パターンのつながりとAI活用成熟度
パターンのつながりとAI活用成熟度パターンのつながりとAI活用成熟度
パターンのつながりとAI活用成熟度Hironori Washizaki
 
データ表現のパターン
データ表現のパターンデータ表現のパターン
データ表現のパターンHironori Washizaki
 
機械学習デザインパターンの必要性と機械学習ライフサイクル
機械学習デザインパターンの必要性と機械学習ライフサイクル機械学習デザインパターンの必要性と機械学習ライフサイクル
機械学習デザインパターンの必要性と機械学習ライフサイクルHironori Washizaki
 
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)Hironori Washizaki
 

Plus de Hironori Washizaki (20)

Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
IEEE Computer Society 2024 Technology Predictions Update
IEEE Computer Society 2024 Technology Predictions UpdateIEEE Computer Society 2024 Technology Predictions Update
IEEE Computer Society 2024 Technology Predictions Update
 
鷲崎弘宜, "国際規格ISO/IEC 24773とその意義", 情報処理学会 第86回全国大会
鷲崎弘宜, "国際規格ISO/IEC 24773とその意義", 情報処理学会 第86回全国大会鷲崎弘宜, "国際規格ISO/IEC 24773とその意義", 情報処理学会 第86回全国大会
鷲崎弘宜, "国際規格ISO/IEC 24773とその意義", 情報処理学会 第86回全国大会
 
IEEE Computer Society’s Strategic Activities and Products including SWEBOK Guide
IEEE Computer Society’s Strategic Activities and Products including SWEBOK GuideIEEE Computer Society’s Strategic Activities and Products including SWEBOK Guide
IEEE Computer Society’s Strategic Activities and Products including SWEBOK Guide
 
TISO/IEC JTC1におけるソフトウェア工学知識体系、技術者認証および品質の標準化と研究・教育他への活用
TISO/IEC JTC1におけるソフトウェア工学知識体系、技術者認証および品質の標準化と研究・教育他への活用TISO/IEC JTC1におけるソフトウェア工学知識体系、技術者認証および品質の標準化と研究・教育他への活用
TISO/IEC JTC1におけるソフトウェア工学知識体系、技術者認証および品質の標準化と研究・教育他への活用
 
アジャイル品質のパターンとメトリクス Agile Quality Patterns and Metrics (QA2AQ) 20240225
アジャイル品質のパターンとメトリクス Agile Quality Patterns and Metrics (QA2AQ) 20240225アジャイル品質のパターンとメトリクス Agile Quality Patterns and Metrics (QA2AQ) 20240225
アジャイル品質のパターンとメトリクス Agile Quality Patterns and Metrics (QA2AQ) 20240225
 
Joseph Yoder : Being Agile about Architecture
Joseph Yoder : Being Agile about ArchitectureJoseph Yoder : Being Agile about Architecture
Joseph Yoder : Being Agile about Architecture
 
世界標準のソフトウェア工学知識体系SWEBOK Guide最新第4版を通じた開発アップデート
世界標準のソフトウェア工学知識体系SWEBOK Guide最新第4版を通じた開発アップデート世界標準のソフトウェア工学知識体系SWEBOK Guide最新第4版を通じた開発アップデート
世界標準のソフトウェア工学知識体系SWEBOK Guide最新第4版を通じた開発アップデート
 
SWEBOK Guide Evolution and Its Emerging Areas including Machine Learning Patt...
SWEBOK Guide Evolution and Its Emerging Areas including Machine Learning Patt...SWEBOK Guide Evolution and Its Emerging Areas including Machine Learning Patt...
SWEBOK Guide Evolution and Its Emerging Areas including Machine Learning Patt...
 
デジタルトランスフォーメーション(DX)におけるソフトウェアの側面とダイバーシティ・インクルーシブに関する研究実践動向
デジタルトランスフォーメーション(DX)におけるソフトウェアの側面とダイバーシティ・インクルーシブに関する研究実践動向デジタルトランスフォーメーション(DX)におけるソフトウェアの側面とダイバーシティ・インクルーシブに関する研究実践動向
デジタルトランスフォーメーション(DX)におけるソフトウェアの側面とダイバーシティ・インクルーシブに関する研究実践動向
 
SQuBOKガイドV3概説 ~IoT・AI・DX時代のソフトウェア品質とシステム監査~
SQuBOKガイドV3概説 ~IoT・AI・DX時代のソフトウェア品質とシステム監査~SQuBOKガイドV3概説 ~IoT・AI・DX時代のソフトウェア品質とシステム監査~
SQuBOKガイドV3概説 ~IoT・AI・DX時代のソフトウェア品質とシステム監査~
 
人生100年・60年カリキュラム時代のDX人材育成: スマートエスイー 2021年度成果および2022年度募集
人生100年・60年カリキュラム時代のDX人材育成: スマートエスイー 2021年度成果および2022年度募集人生100年・60年カリキュラム時代のDX人材育成: スマートエスイー 2021年度成果および2022年度募集
人生100年・60年カリキュラム時代のDX人材育成: スマートエスイー 2021年度成果および2022年度募集
 
スマートエスイーコンソーシアムの概要と2021年度成果紹介
スマートエスイーコンソーシアムの概要と2021年度成果紹介スマートエスイーコンソーシアムの概要と2021年度成果紹介
スマートエスイーコンソーシアムの概要と2021年度成果紹介
 
DXの推進において企業内に求められる人材やデジタル人材の育て方
DXの推進において企業内に求められる人材やデジタル人材の育て方DXの推進において企業内に求められる人材やデジタル人材の育て方
DXの推進において企業内に求められる人材やデジタル人材の育て方
 
対応性のある運用のパターン
対応性のある運用のパターン対応性のある運用のパターン
対応性のある運用のパターン
 
モデル訓練のパターン
モデル訓練のパターンモデル訓練のパターン
モデル訓練のパターン
 
パターンのつながりとAI活用成熟度
パターンのつながりとAI活用成熟度パターンのつながりとAI活用成熟度
パターンのつながりとAI活用成熟度
 
データ表現のパターン
データ表現のパターンデータ表現のパターン
データ表現のパターン
 
機械学習デザインパターンの必要性と機械学習ライフサイクル
機械学習デザインパターンの必要性と機械学習ライフサイクル機械学習デザインパターンの必要性と機械学習ライフサイクル
機械学習デザインパターンの必要性と機械学習ライフサイクル
 
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)
 

Dernier

Not a Kubernetes fan? The state of PaaS in 2024
Not a Kubernetes fan? The state of PaaS in 2024Not a Kubernetes fan? The state of PaaS in 2024
Not a Kubernetes fan? The state of PaaS in 2024Anthony Dahanne
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesKrzysztofKkol1
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITmanoharjgpsolutions
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencessuser9e7c64
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldRoberto Pérez Alcolea
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingShane Coughlan
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonApplitools
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?Alexandre Beguel
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
VictoriaMetrics Anomaly Detection Updates: Q1 2024
VictoriaMetrics Anomaly Detection Updates: Q1 2024VictoriaMetrics Anomaly Detection Updates: Q1 2024
VictoriaMetrics Anomaly Detection Updates: Q1 2024VictoriaMetrics
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...OnePlan Solutions
 
SoftTeco - Software Development Company Profile
SoftTeco - Software Development Company ProfileSoftTeco - Software Development Company Profile
SoftTeco - Software Development Company Profileakrivarotava
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slidesvaideheekore1
 

Dernier (20)

Not a Kubernetes fan? The state of PaaS in 2024
Not a Kubernetes fan? The state of PaaS in 2024Not a Kubernetes fan? The state of PaaS in 2024
Not a Kubernetes fan? The state of PaaS in 2024
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh IT
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conference
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository world
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
VictoriaMetrics Anomaly Detection Updates: Q1 2024
VictoriaMetrics Anomaly Detection Updates: Q1 2024VictoriaMetrics Anomaly Detection Updates: Q1 2024
VictoriaMetrics Anomaly Detection Updates: Q1 2024
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
 
SoftTeco - Software Development Company Profile
SoftTeco - Software Development Company ProfileSoftTeco - Software Development Company Profile
SoftTeco - Software Development Company Profile
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slides
 

Pitfalls and Countermeasures in Software Quality Measurements and Evaluations

  • 1. Pitfalls and Countermeasures in Software Quality Measurements and Evaluations Hironori Washizaki washizaki@waseda.jp Prof., Global Software Engineering Laboratory, Waseda University Visiting Prof., National Institute of Informatics Director, SYSTEM INFORMATION CO., LTD. Vice-Chair, IEEE CS Japan Chapter Chair, SEMAT Japan Chapter Convenor, ISO/IEC/JTC1/SC7/WG20 PC Co-Chair, APSEC 2018 Nagoya! 5th International Workshop on Quantitative Approaches to Software Quality (QuASoQ) Nanjing, Dec 4, 2017 H. Washizaki, Pitfalls and Countermeasures in Software Quality Measurements and Evaluations, Advances in Computers, 106, 2017
  • 2. Metric and Measurement • Mapping attributes to values/names on scales – Quality control by single metric – Estimating metric values by other metrics • You cannot control what you cannot measure! Req. Def. Design Impl. Testing Func. Spec. Function point Module design Coupling Source code Complexity LOC Defect report Defect density Test case N. tests passed Effort, time Cyclomatic complexity 0 0.2 0.4 0.6 0.8 1 0 0.05 0.1 0.15 0.2 0.25 0.3 Reuserate #Header files included 2
  • 3. Pitfalls and Countermeasures 3 Pitfall Countermeasure Negative Hawthorne effects Goal-orientation Multidimensional measurements Organization misalignment Visualization of relationships among organizational goals, strategies, and measurements Exhaustive identification of rationales Uncertain future Prediction incorporating uncertainty Measurement program improvement by machine learning Self-certified quality Standard-based evaluation Pattern-based evaluation H. Washizaki, Pitfalls and Countermeasures in Software Quality Measurements and Evaluations, Advances in Computers, 106, 2017
  • 4. Pitfalls and Countermeasures 4 Pitfall Countermeasure Negative Hawthorne effects Goal-orientation Multidimensional measurements Organization misalignment Visualization of relationships among organizational goals, strategies, and measurements Exhaustive identification of rationales Uncertain future Prediction incorporating uncertainty Measurement program improvement by machine learning Self-certified quality Standard-based evaluation Pattern-based evaluation H. Washizaki, Pitfalls and Countermeasures in Software Quality Measurements and Evaluations, Advances in Computers, 106, 2017
  • 5. Hawthorne Effect 5nicolasdsampson.com, Observe And Learn: The Magic Of Paying Attention http://nicolasdsampson.com/wp-content/uploads/2012/10/2010_12_06_observe-learn-magic-paying-attention.jpg
  • 6. Goal-Question-Metric (GQM) Paradigm • Goal-oriented framework for identifying goals and necessary corresponding metrics • Goal: measurement goals • Question: questions for evaluating goal achievement • Metric: objective or subjective metrics for obtaining necessary quantitative data to answer questions Identifying metrics Interpreting measurement results Metric Goal Question Collected data Goal achievement evaluation Answer Measured value R. van Solingen, E. Berghout, “The Goal/Question/Metric Method” McGraw-Hill Education, 1999
  • 7. 7 GQM-based Multidimensional Measurements H. Washizaki, R. Namiki, T. Fukuoka, Y. Harada, H. Watanabe, "A Framework for Measuring and Evaluating Program Source Code Quality", 8th Int’l Conference on Product Focused Software Development and Process Improvement (Profes2007) Reliability Maintain -ability Portability Efficiency Reusability Analysability Changeability Testability Goal Metric Depth of call graph T Cyclomatic Number min Estimated static path length min Measured by some tools Measured by some tools Are functions not complicated? Question Sub- Question Is call- nesting not too deep? Is logic not too complex? IndependentIndependent SpecificSpecific Are entities named properly? (Scale type: T threshold, min smaller is better, max larger is better)
  • 8. SEMAT-based Multidimensional measurements 8 Software System Opportunity Stakeholders Requirements Work Team Way of Working Customer Solution Endeavour Ivar Jacobson, Pan-Wei Ng, Paul E. McMahon, Ian Spence, Svante Lidman, “The Essence of Software Engineering: The SEMAT Kernel,” Communications of the ACM, vol.55, no.12, pp.42-49, December 2012.
  • 9. alpha as Project Measurement 9  State 1  XXXXXXXXXXXXXXXXXX  XXXXXXXXXXX  XXXXXXXXXXXX  State 2  XXXXXXXXXXXXXXXXXX  XXXXXXXXXXX  XXXXXXXXXXXX  State 3  XXXXXXXXXXXXXXXXXX  XXXXXXXXXXX  XXXXXXXXXXXX  ……..  ……. Checklist Adopted/modified from I. Jacobson, et al.: Tutorial: Essence - Kernel and Language for Software Engineering Practices, ICSE'13 alpha Indicator 1 2 3 4 5
  • 10. Example from ITA WG on project failuers 10 • An employee in charge of Bank office inquires "registered customer information cannot be browsed from the terminal“. • It was because a batch processing for the previous day has ended abnormally due to wrong data input. • It took about two hours to recover the data, and employees at each office had to handle customer inquiry manually. • For that reason, we had received plenty of complaints from customers who had been waiting for a long time! H. Washizaki, “Analyzing and refining project failure cases from wider viewpoints by using SEMAT Essence,” Essence Conference in Seoul, 2017.
  • 11. 11 Delay in service deployment Delay in service deployment Huge data inputs manually Huge data inputs manually Wrong data inputWrong data input Defects in operation manual Defects in operation manual Misunderstanding of abnormal state as normal state Misunderstanding of abnormal state as normal state Problem Cause Root cause Requirement s: NG “Coherent” Software System: NG “Demonstrable” Automate data input Automate data input Countermeasure Frequent rule- violations Frequent rule- violationsWork: NG “Under Control” Way of Working: NG “In Use” Review and modify rules Review and modify rules Monitor and enforce compliance with rules Monitor and enforce compliance with rules Opportunity: NG “Benefit Accrued” Team: NG “Collaborating” Stakeholders: NG “Satisfied in Use”
  • 12. Pitfalls and Countermeasures 12 Pitfall Countermeasure Negative Hawthorne effects Goal-orientation Multidimensional measurements Organization misalignment Visualization of relationships among organizational goals, strategies, and measurements Exhaustive identification of rationales Uncertain future Prediction incorporating uncertainty Measurement program improvement by machine learning Self-certified quality Standard-based evaluation Pattern-based evaluation H. Washizaki, Pitfalls and Countermeasures in Software Quality Measurements and Evaluations, Advances in Computers, 106, 2017
  • 13. Organization misalignment 13 We increase customer satisfaction by quality and usability improvement! Top managementWe reduce customer- reported defects by improving testing process and product maintainability. Development team We track defect data and code quality metrics. Quality assurance team
  • 14. GQM+Strategies M1: Customer satisfaction survey M1: Customer satisfaction survey Measurement DataGoals and Strategies BusinessLevelSoftwareLevel Goal: Increase customer satisfaction by 10% Goal: Increase customer satisfaction by 10% Strategy: Improve product quality Strategy: Improve product quality Strategy: Improve usability of product Strategy: Improve usability of product Goal: Reduce customer- reported defects by 20% Goal: Reduce customer- reported defects by 20% No sub-level goal defined Strategy: Improve efficiency of system testing Strategy: Improve efficiency of system testing Strategy: Improve maintainability of software Strategy: Improve maintainability of software Isolated strategy M2: Field defect data M2: Field defect data M3: Code quality metrics (McCabe, coupling, cohesion) M3: Code quality metrics (McCabe, coupling, cohesion) Isolated data 14 • Alignment and tracing among goal, strategy and data Context & Assumption Context & Assumption
  • 15. Context-Assumption-Matrix [IEICE’16] 15Takanobu Kobori, Hironori Washizaki, et al., “Exhaustive and efficient identification of rationales using GQM+Strategies with stakeholder relationship analysis,” IEICE Transactions on Information and Systems, Vol.E99-D, No.9, pp.2219-2228, 2016. Target View Hospital Insurance company Health sensor maker ・・・ Hospital Insurance company Health sensor maker ・・・ Insurance company can offer personalized products by having medical info… Context / Assumption Insurance company Medical info provider Personal medical info. Customized product Resource Goal depends
  • 16. 16 Insurance company G S A S Health sensor maker Medical info. provider Expectation from the view of insurance company Expectation from the view of health sensor maker Receive medical info. Personalized products developed Strategy Insurance product and fee can be personalized based on personal medical info. Goal Context / Assumption Sales of new products Personal fitness Confirm personal info. Management system of receiver of info. Secure management of medical info. Strategy Must ensure personal info. guideline Goal Context / Assumption Insurance company Medical info. provider Confirming management systems Pati ent Getting consent Conflict, redundancy, complement Conflict, redundancy, complement
  • 17. 17 Towards clear dependency and alignment G S A S Insurance company Medical info. provider Personal medical info. Realizing personalized insurance Objective of medical info. use Managing personal info. Clarify objective of use of medical info. Strategy Establish personal info. management system Strategy Medical info. provider Secure management of medical info. Strategy Must ensure personal info. guideline Goal Context / Assumption Health sensor maker Insurance company Receive medical info. Personalized products developed Strategy Goal Context / Assumption Sales of new products Personal fitness Insurance product and fee can be personalized based on personal medical info.
  • 18. S1 S2 S3 S5 S6 S4 S7 S1 S2 S3 S4 S6 S5 S7 Interpretive Structural Modeling (ISM) 18 Impact S1 S2 S3 S4 S5 S6 S7 S1 1 0 0 0 0 0 0 S2 0 1 0 0 0 0 0 S3 1 1* 1 0 1 0 0 S4 1 1* 0 1 0 0 1 S5 1* 1 1 0 1 0 0 S6 1* 1 0 1 0 1 1* S7 1* 1 0 1 0 0 1 Power. Hierarchical structuring 可到達行列 S1 S2 S3 S4 S5 S6 S7 S1 1 0 0 0 0 0 0 S2 1 1 0 0 0 0 0 S3 1 0 1 0 1 0 0 S4 1 0 0 1 0 0 1 S5 0 1 1 0 1 0 0 S6 0 1 0 1 0 1 0 S7 0 1 0 1 0 0 1 Relation matrix Reachability matrix
  • 19. ISM-based Alignment [HICSS’16] S1 S2 S3 S4 ・ ・ S1 S2 S3 S4 ・・ 1 1 (1) Decompose into elements (2)Restru cturing (3)Analysis& alignment S5 S1 S2 S3 S4 S6 S7 Hierarchical structure S5 S1 S2 S3 S4 S6 S7 ISM 1 Elements (especially strategies) 1 1 1 1 S5 S1 S2 S3 S4 S6 S7 GQM+Strategies G GG G Reachability matrix Conflict specified • Alignment for single GQM+Strategies model • Future: alignment over areas and stakeholders Yohei Aoki, Takanobu Kobori, Hironori Washizaki, et al., “Identifying Misalignment of Goals and Strategies across Organizational Units by Interpretive Structural Modeling,” 49th Hawaii International Conference on System Sciences (HICSS), 2016
  • 20. Pitfalls and Countermeasures 20 Pitfall Countermeasure Negative Hawthorne effects Goal-orientation Multidimensional measurements Organization misalignment Visualization of relationships among organizational goals, strategies, and measurements Exhaustive identification of rationales Uncertain future Prediction incorporating uncertainty Measurement program improvement by machine learning Self-certified quality Standard-based evaluation Pattern-based evaluation H. Washizaki, Pitfalls and Countermeasures in Software Quality Measurements and Evaluations, Advances in Computers, 106, 2017
  • 22. Identifying parts that are hard to maintain… How large? ELOC N. functions Measurement System Improvement by ML N. Tsuda, et al. Iterative Process to Improve GQM Models with Metrics Thresholds to Detect High-risk Files, SANER 2015 Review Quality measurement Machine learning Goal Question Measurement 22 10 25 300 150 N. functions ELOC OK NG 71 N. functions ELOC OK NG Improvement X
  • 23. ]] #Issues Actual Predicted DayKiyoshi Honda, Hironori Washizaki and Yoshiaki Fukazawa, “Generalized Software Reliability Model Considering Uncertainty and Dynamics: Model and Applications”, International Journal of Software Engineering and Knowledge Engineering (IJSEKE), 2016. Logistic Gompertz Non-homogeneous Poisson process(NHPP) Software reliability model (SRM) as actionable metric 23
  • 24. Prediction with uncertainty 0 10 20 30 40 50 60 70 80 90 0 2 4 6 8 10 12 14 #Issues Time ActualData Our model 24 Kiyoshi Honda, Hironori Washizaki and Yoshiaki Fukazawa, “Generalized Software Reliability Model Considering Uncertainty and Dynamics: Model and Applications”, International Journal of Software Engineering and Knowledge Engineering (IJSEKE), 2016.
  • 25. Prediction with uncertainty 0 10 20 30 40 50 60 70 80 90 0 2 4 6 8 10 12 14 #Issues Time ActualData Our model - + 25 Lower (worst case) Upper (best case) T1 T2 Kiyoshi Honda, Hironori Washizaki and Yoshiaki Fukazawa, “Generalized Software Reliability Model Considering Uncertainty and Dynamics: Model and Applications”, International Journal of Software Engineering and Knowledge Engineering (IJSEKE), 2016.
  • 26. Uncertainty patterns and prediction 26 0 0.5 1 ConstantIncrease Decrease Kiyoshi Honda, Hironori Washizaki and Yoshiaki Fukazawa, “Generalized Software Reliability Model Considering Uncertainty and Dynamics: Model and Applications”, International Journal of Software Engineering and Knowledge Engineering (IJSEKE), 2016.
  • 27. Pitfalls and Countermeasures 27 Pitfall Countermeasure Negative Hawthorne effects Goal-orientation Multidimensional measurements Organization misalignment Visualization of relationships among organizational goals, strategies, and measurements Exhaustive identification of rationales Uncertain future Prediction incorporating uncertainty Measurement program improvement by machine learning Self-certified quality Standard-based evaluation Pattern-based evaluation H. Washizaki, Pitfalls and Countermeasures in Software Quality Measurements and Evaluations, Advances in Computers, 106, 2017
  • 28. Self-Certified Quality 28 Image: How to Spot a Fake: Avoiding Degree Mill Scams https://wenr.wes.org/2015/06/spot-fake-avoiding-degree-mill-scams
  • 29. ISO/IEC 25000 SQuaRE-based Quality Measurement and Benchmark 29 Q1. Any path going through internal servers only? Q2. Any path going through outside servers? Q3. Any P2P communications? … G. The events or actions cannot be repudiated later through communication channels (paths). M. Signed communication path ratio = #Signed_paths / #Total_paths E.g. Non-repudiation Waseda U. Team Vendor 1 Concretize SQuaRE measurements by GQM 2 Prepare measurement methods: data forms, static analysis, questionnaire, user- testing 3 Conduct code static analysis, user-testing Fill data forms, questionnaire 4 Measure and evaluate quality Scores by using percentile E.g., Top 30% = 0.7 HighLow #Products Measured value H. Nakai, N. Tsuda, K. Honda, H. Washizaki and Y. Fukazawa, Initial Framework for a Software Quality Evaluation based on ISO/IEC 25022 and ISO/IEC 25023, IEEE International Conference on Software Quality, Reliability & Security (QRS 2016)
  • 30. 21 Japanese Products Measurement 30 Functional suitability Performance efficiency Compatibility Usability Reliability Security Maintainability Portability Effectiveness Efficiency Satisfaction Freedom from risk Context coverage • Low security and compatibility in some products • Necessary to address these in IoT era H. Nakai, N. Tsuda, K. Honda, H. Washizaki and Y. Fukazawa, Initial Framework for a Software Quality Evaluation based on ISO/IEC 25022 and ISO/IEC 25023, IEEE International Conference on Software Quality, Reliability & Security (QRS 2016)
  • 31. Relationships among characteristics 31 Internal/External Quality Quality in Use p-value < 0.1p-value < 0.1 性能効率性 互換性 使用性 信頼性 セキュリティ 保守性 移植性 有効性 効率性 満足性 リスク回避性 利用状況網羅性 機能適合性 0. 31 0. 19 -0. 72 0. 37 -0. 05 0. 50 0. 31 -0. 14 0. 52 1. 00 1. 00 1. 00 性能効率性 0. 44 0. 24 0. 36 -0. 17 0. 37 0. 32 0. 32 -0. 10 -0. 50 -0. 50 -0. 50 互換性 0. 04 0. 17 -0. 06 0. 36 -0. 04 -0. 14 0. 05 -0. 50 -0. 50 -0. 50 使用性 0. 17 -0. 21 0. 11 0. 44 -0. 09 -0. 20 -1. 00 -1. 00 -1. 00 信頼性 0. 30 0. 41 0. 45 -0. 08 0. 11 1. 00 1. 00 1. 00 セキュリティ -0. 06 0. 19 0. 64 -0. 34 0. 50 0. 50 0. 50 保守性 0. 26 -0. 29 0. 01 1. 00 1. 00 1. 00 移植性 -0. 21 0. 67 0. 50 0. 50 0. 50 有効性 0. 03 -1. 00 -1. 00 -1. 00 効率性 1. 00 1. 00 1. 00 満足性 1. 00 1. 00 リスク回避性 1. 00 Func. Perf. Comp. Usa. Relia. Sec. Main. Port. Effe. Effic. Sati. Free. Perf. Comp. Usa. Relia. Sec. Main. Port. Effe. Effic. Sati. Free. Cont. • Negative correlation between usability and functionality. • Need to adopt user-centered development H. Nakai, N. Tsuda, K. Honda, H. Washizaki and Y. Fukazawa, Initial Framework for a Software Quality Evaluation based on ISO/IEC 25022 and ISO/IEC 25023, IEEE International Conference on Software Quality, Reliability & Security (QRS 2016)
  • 32. Appropriate design Inappropriate design Security Patterns and Testing 32 Role-based access control (RBAC) pattern
  • 33. TESEM: Test Driven Secure Modeling Tool [ARES’13][ARES’13][IJSSE’14][ICST’15][Information’16] 33 Security Design Pattern Problem Solution Context Test design as requirement ! create Actor ! create UI : ! create Subject.. Test Script Test case testing [ARES’13] Validating Security Design Pattern Applications Using Model Testing, Int’l Conf. Availability, Reliability and Security [ARES’14] Verification of Implementing Security Design Patterns Using a Test Template, Conf. Availability, Reliability and Security [IJSSE’14] Validating Security Design Pattern Applications by Testing Design Models, Int’l J. Secure Software Engineering 5(4) [ICST’15] TESEM: A Tool for Verifying Security Design Pattern Applications by Model Testing, IEEE ICST’15 Tools Track [Information’16] Implementation Support of Security Design Patterns Using Test Templates, Information 7(2) testing
  • 34. 34 window.onload = setEventHandler; function setEventHandler() { $(“reg_type”).onchange = calcPrice; ・・・ $(“reg_addcart”).onclick = addCart; }; function calcPrice() { ・・・ }; function addCart() { if(isValidInput()) { reqRunTrans(); } else { alert(“Invalid user inputs”); } }; function reqRunTrans() { new Ajax.Request(“runTrans.php”, { method: “GET”, parameters: getParams(), onSuccess: succeeded }); }; function succeeded() { disableAll(); jumpToConfirm(); }; window.onload = setEventHandler; function setEventHandler() { $(“reg_type”).onchange = calcPrice; ・・・ $(“reg_addcart”).onclick = addCart; }; function calcPrice() { ・・・ }; function addCart() { if(isValidInput()) { reqRunTrans(); } else { alert(“Invalid user inputs”); } }; function reqRunTrans() { new Ajax.Request(“runTrans.php”, { method: “GET”, parameters: getParams(), onSuccess: succeeded }); }; function succeeded() { disableAll(); jumpToConfirm(); };
  • 35. 35 Finite State Machine Extraction …………………………………………… …………………………………………… function setEventHandler() { $(“addcart”).onclick=addCart; …………………………………………… …………………………………………… …………………………………………… …………………………………………… function setEventHandler() { $(“addcart”).onclick=addCart; …………………………………………… …………………………………………… onclick setEventHandler addCart E.g. User Action [Mahamoff’06] “Prevent multiple calls of specific user event handler” Y. Maezawa, K. Nishiura, H. Washizaki, S. Honiden, Validating Ajax Applications Using a Delay-Based Mutation Technique”, 29th IEEE/ACM International Conference on Automated Software Engineering (ASE 2014) Y. Maezawa, H. Washizaki, Y. Tanabe and S. Honiden , “Automated Verification of Pattern-based Interaction Invariants in Ajax Applications, 28th IEEE/ACM International Conference on Automated Software Engineering (ASE2013) Duplicate order Duplicate order [Mahamoff’06] M. Mahamoff, “Ajax Design Patterns”, O’Reilly Media Inc., 2006.
  • 36. 36 window.onload = setEventHandler; function setEventHandler() { $(“reg_type”).onchange = calcPrice; ・・・ $(“reg_addcart”).onclick = addCart; }; function calcPrice() { ・・・ }; function addCart() { if(isValidInput()) { $(“addCart”).disabled = true; reqRunTrans(); } else { alert(“Invalid user inputs”); $(“addCart”).disabled = false; } }; function reqRunTrans() { new Ajax.Request(“runTrans.php”, { method: “GET”, parameters: getParams(), onSuccess: succeeded }); }; function succeeded() { disableAll(); jumpToConfirm(); }; window.onload = setEventHandler; function setEventHandler() { $(“reg_type”).onchange = calcPrice; ・・・ $(“reg_addcart”).onclick = addCart; }; function calcPrice() { ・・・ }; function addCart() { if(isValidInput()) { $(“addCart”).disabled = true; reqRunTrans(); } else { alert(“Invalid user inputs”); $(“addCart”).disabled = false; } }; function reqRunTrans() { new Ajax.Request(“runTrans.php”, { method: “GET”, parameters: getParams(), onSuccess: succeeded }); }; function succeeded() { disableAll(); jumpToConfirm(); };
  • 37. Pitfalls and Countermeasures 37 Pitfall Countermeasure Negative Hawthorne effects Goal-orientation Multidimensional measurements Organization misalignment Visualization of relationships among organizational goals, strategies, and measurements Exhaustive identification of rationales Uncertain future Prediction incorporating uncertainty Measurement program improvement by machine learning Self-certified quality Standard-based evaluation Pattern-based evaluation
  • 38. SamurAI Coding IPSJ 6th International AI Programing Contest World Final March 14 2018 Tokyo http://samuraicoding.info APSEC 2018 25th Asia-Pacific Software Engineering Conference Nara Dec 4-7 (due: June) PC Chair: H. Washizaki Int. Journal of Agile and Extreme Software Development (IJAESD) Editor-in-Chief: H. Washizaki COMPSAC 2018 42nd IEEE Computer Society Int’l Conf. Computers, Software & Applications Tokyo July 23-27 (due: Jan 15)