Funded by the European Union
Towards an Ontology for Strategic Decision Making: The Case of Quality in Rapid Software Development Projects
Cristina Gómez1, Claudia Ayala1, Xavier Franch1, Lidia López1, WoubshetBehutiye2, Silverio Martínez‐Fernández3
1UPC (Catalonia), 2U. Oulu (Finland), 3Fraunhofer IESE (Germany)
Q Motivation and GoalQ Research ApproachQ Strategic Decision‐Making OntologyQ Extending the Ontology for the Case of Quality in Rapid Software Development
Q Related WorkQ Conclusions and Future Work
Outline
2
Q Strategic decision making is the process of selecting a logical and informed choice from the alternative options based on key strategic indicators.
o Important to follow organization’s strategies.o Applied to several fields.
Q Nowadays, tools as decision support systems and strategic dashboards help decision makers in the process of making decisions.
Q A way of providing a common underlying language integrating the concepts to manage decisions and to handle strategic indicators is to define an ontology.
Motivation
4
Q To present the Strategic Decision‐Making (SDM) ontology to support different strategic decision‐making processes.
Q To extend the SDM ontology to cover the context of managing quality in Rapid Software Development (RSD) projects.
Goal
5
Research Approach: The Q‐Rapids Context
7
The Q‐Rap
ids ap
proa
ch
We propose the use of ontologies to characterize theinformation to be managed by the strategic dashboard
Q Definition of the ontology structure: Ontology packages to group concepts with related semantics.
Q Extraction of relevant terms for the ontology: These terms were discovered and confirmed from the industrial partners’ assessment.
Q Concept characteristics: Attributes, associations with other concepts, generalizations in which the concept is involved and constraints, if any.
Research Approach: Ontology Definition
9
Strategic Decision‐Making Ontology: Relevant Terms
12
Concept Definition Examples
StrategicIndicator
An aspect that a company considers relevant for the decision‐makingprocess
Customer satisfaction, product quality,Blocking
Entity Constituent part of a product and its environment for which a strategicindicator could be defined Software product, feature
Factor Property of an entity (or part of it) that is related to the product quality Maintainability, reliability
KPI Metric that measures the degree of achievement of a strategic indicator Percentage of user stories delivered asPlanned
KPIEvaluation Measurement of a KPI at a certain point of time 40% user stories delivered on time at the
end of iteration 3.
Role Position or purpose that someone has in an organization Product manager, software developer
Concept Definition ExamplesDecision Determination arrived at after consideration Hiring another developerDecision Maker A person who makes decisions about a specific factor Project manager
Decision Rule
Rule encoding preferences of decision makers (i.e., several decisionalternatives or conflicts)
When a conflict arises, quality levels will bePrioritized
Constraint Condition or restriction that affects to a decision Developers cannot work in 2 activities thesame day
External Constraint
Constraint representing conditions that are out of the control of decisionmakers Project budget
Internal Constraint
Constraint that encodes conditions that may eventually influence decisionmaking
Developers cannot work in 2 activities thesame day
Action Something done or performed Include a quality requirement into thebacklog
Strategic Indicator p
ackage
Decision pa
ckage
Q‐Rapids DoAIndustrial PartnersLiterature
Ontology Extension for the Case of Quality in Rapid Software Development
16
Qua
lity As
sessmen
t pa
ckage
Concept Definition ExamplesFactor Property of the software product (or part of it) that is related to the product's quality Productivity, Code quality, ReliabilityProcessFactor
Property of the software development process Productivity
ProductFactor
Attributes of a software product (or part of it) Code quality
QualityFactor
A property of the software product Maintainability
Data Source Contains information to calculate metrics related to the software product or process SonarQube, Jenkins, issue tracking systems
Metric Provides a means to quantify factors that characterize an entity Lines of code, test coverage
Entity Constituent part of a software product Feature, product tests
Instrument Artifact used to determine the value of a measure, either using some tool or manually SQALE plugin of SonarQube, FindBugs
Aggregation Function used to aggregate values of other measures Utility functions
Concept Definition ExamplesRole Position or purpose that someone has in an organization Product OwnerFeature Functional or non‐functional distinguishing characteristic of a system Apply standard theme from mail theme
CatalogueProcess A set of interrelated or interacting activities which transforms inputs into outputs Requirements elicitation, feature development
and testingQuality
Requirement Specify how well the system performs its intended functions Performance, maintainabilityRapidSoftware
DevelopmentStep from agile software development that focuses on organizational capability todevelop, release, and learn from software in rapid parallel cycles
Continuous delivery
Release Describes an increment into complete software product valuable to customers Versions (e.g. Version 1.0 registration and loginmanagement)
Sprint Short time frame, in which a set of software features is developed, leading to aworking product One week sprint
ProjectBacklog The user stories the team has identified for implementation Collection of user stories
User story Simple narrative illustrating the user goals that a software function will satisfyAs a < tester>, I want to <apply the firstprototype standard desktop theme> so that I can<provide feedback on the concept>
Rapid So
ftware
Develop
men
t package
Related Work
19
Reference Description Main Concepts
Balance Scorecard (BSC) Business framework used for describing and measuring an organization’s strategy and fortracking the actions taken to improve the results
Strategic objectives, Key performance indicators (KPIs)and actions
Business MotivationMetamodel (BMM)
Metamodel that provides concepts for developing, communicating and managing businessplans in an organized manner Strategy and goals
Business IntelligenceModel (BIM) Model that provides constructs for modelling business organizations at strategic level Actors and KPIs
Scoro A work management software solution to track project performance Specific KPIs (return on investment, overdue projecttasks/crossed deadlines)
Enfocus Solutions Defines KPIs for business analysis and project managementSpecific KPIs (project stakeholder satisfaction index, andnumber of milestones missed)
CBS (Center for BusinessPractices)
Enumerates a comprehensive list of measures of project management and value in the contextof IT organizations
Metrics (e.g., average time to repair a defect, alignmentto strategic business goals)
[Diamantini et al. 2014] An ontology in which KPIs are described together with their mathematics formulas KPIs
[Maté et al. 2014] Semi‐automatic approach that performs queries guided by the KPIs of the company to discoverthe existence of problems and where they are located KPIs
[Maté et al. 2017] An integrated view of strategic business objectives linked to conceptual data warehouses KPIs Strategic business objectives and KPIs
Decision Model andNotation (DMN) Metamodel that provides the constructs that are needed to model decisions Decision, decision maker and knowledge requirement
Q The SDM ontology to support different strategic decision making processes has been defined.
Q An extension of the ontology to cover the context of managing quality in RSD projects has been presented.
Conclusions
21
Q To refine the SDM ontology extending it with new concepts to track the reasons of the decisions, to manage the prediction of violations of the strategic indicators and to explore corrective actions in the solution space through what‐if‐analysis.
Q To evaluate the SDM ontology in the context of Q‐Rapids industrial partners.
Future Work
22