The 4 Interfaces for the Business Model Canvas and Storyboard: How to THINK O...Rod King, Ph.D.
If you are looking for ways to improve your creativity and productivity especially in Business Model Innovation, then explore the 4 ways of organizing and presenting information for systems.
Build systems orchestrate how human-readable source code is translated into executable programs. In a software project, source code changes can induce changes in the build system (aka. build co-changes). It is difficult for developers to identify when build co-changes are necessary due to the complexity of build systems. Prediction of build co-changes works well if there is a sufficient amount of training data to build a model. However, in practice, for new projects, there exists a limited number of changes. Using training data from other projects to predict the build co-changes in a new project can help improve the performance of the build co-change prediction. We refer to this problem as cross-project build co-change prediction.
In this paper, we propose CroBuild, a novel cross-project build co-change prediction approach that iteratively learns new classifiers. CroBuild constructs an ensemble of classifiers by iteratively building classifiers and assigning them weights according to its prediction error rate. Given that only a small proportion of code changes are build co-changing, we also propose an imbalance-aware approach that learns a threshold boundary between those code changes that are build co-changing and those that are not in order to construct classifiers in each iteration. To examine the benefits of CroBuild, we perform experiments on 4 large datasets including Mozilla, Eclipse-core, Lucene, and Jazz, comprising a total of 50,884 changes. On average, across the 4 datasets, CroBuild achieves a F1-score of up to 0.408. We also compare CroBuild with other approaches such as a basic model, AdaBoost proposed by Freund et al., and TrAdaBoost proposed by Dai et al.. On average, across the 4 datasets, the CroBuild approach yields an improvement in F1-scores of 41.54%, 36.63%, and 36.97% over the basic model, AdaBoost, and TrAdaBoost, respectively.
A Method for the Unified Definition and Treatment of Conceptual Schema Qualit...David Aguilera
Presentation of my PhD thesis, which took place June 6th, 2014. It introduces the problem of quality in conceptual modeling and presents the three main contributions of my work: a formalization of quality issues (what they are, how man deals with them, and so on), a unified catalog of quality issues (discussing its expressiveness and usefulness), and a conceptual modeling assistant (a prototype tool that implements the two first contributions on top of the Eclipse Platform).
NOTICE: I took several images from flickr to enhance the slides and make them look prettier. I'd like to thank the authors for publishing those pictures! In the following, I include the links to the original images (I hope I miss no one, but if that's the case, please tell me!).
- https://www.flickr.com/photos/mmortah/6902857551
- https://www.flickr.com/photos/clarkmaxwell/5070107391
- https://www.flickr.com/photos/41894144622@N01/10962707284
- https://www.flickr.com/photos/rdecom/7222825892
- https://www.flickr.com/photos/25179368@N06/4349630962
- https://www.flickr.com/photos/75862793@N06/6812701367
- https://www.flickr.com/photos/elessar_82/9630968224
- https://www.flickr.com/photos/heatherpeaches/8389438221
- https://www.flickr.com/photos/sveinhal/2507540811
- https://www.flickr.com/photos/webinteger/6135862404
- https://www.flickr.com/photos/simonhua/4153234724
- https://www.flickr.com/photos/oberazzi/318947873
- https://www.flickr.com/photos/kelehen/7639423108
- https://www.flickr.com/photos/gsfc/6166295967
- https://www.flickr.com/photos/hellsbells75/8450851214
- https://www.flickr.com/photos/an_untrained_eye/6630719431
What's beyond BDD? Why do we need to go there for real three-way DevOps? How does this work with self-propagating transformation, 3D Kanban, and Business Agility? And how do these things fit together in XSCALE? Here are the slides from my Selenium Summit keynote in 2018.
This presentation gives a brief overview of Altair ProductDesign, a global product development and engineering company who specialize in optimization and creating lightweight design solutions.
NWC 2015 - Critical - Path Simulation Jennifer Day
Critical-Path Simulation: Case studies in the identification and execution of finite-element analysis early in the design process to assure feasibility and increase ROI
Bradford Range - Acorn Product Development
Business Applications of Predictive Modeling at ScaleSongtao Guo
Tutorial delivered in KDD 2016 San Francisco
Abstract
Predictive modeling is the art of building statistical models that forecast probabilities and trends of future events. It has broad applications in industry across different domains. Some popular examples include user intention predictions, lead scoring, churn analysis, etc. In this tutorial, we will focus on the best practice of predictive modeling in the big data era and its applications in industry, especially sales and marketing. We will start with an overview of how predictive modeling helps power and drive various key business use cases. We will introduce the essential concepts and state of the art in building end-to-end predictive modeling solutions, and discuss the challenges, key technologies, and lessons learned from our practice, followed by a case study. Moreover, we will discuss some practical solutions of building predictive modeling platform to scale the modeling efforts for data scientists and analysts, along with an overview of popular tools and platforms used across the industry.
Target Audience and Prerequisites
This tutorial is suitable for researchers, students, and practitioners of predictive modeling who are interested in the industry applications. Advanced techniques in data mining and statistical modeling are not required but some background in statistics and big data is expected.
Driving Innovation with Kanban at Jaguar Land RoverLeanKit
Find out how Kanban is accelerating product design and development at Jaguar Land Rover.
Watch the recorded webinar here: https://vimeo.com/172780037
Hamish McMinn, Automotive and IT Project Manager, will explain how Kanban is improving time, cost and quality across new vehicle development projects at Jaguar Land Rover.
You'll learn:
-Why new product development provides rich opportunities for continuous process improvement.
-Benefits and challenges of transferring agile software techniques to hardware design and development.
-How to visualize work, focus on flow and increase cross-functional collaboration using LeanKit.
Hamish will share learnings from the initial pilot project, and how Kanban is now being scaled across multiple engineering teams.
This paper proposes Facetedpedia, a faceted retrieval system for information discovery and exploration in Wikipedia. Given the set of Wikipedia articles resulting from a keyword query, Facetedpedia generates a faceted interface for navigating the result articles. Compared with other faceted retrieval systems, Facetedpedia is fully automatic and dynamic in both facet generation and hierarchy construction, and the facets are based on the rich semantic information from Wikipedia. The essence of our approach is to build upon the collaborative vocabulary in Wikipedia, more specifically the intensive internal structures (hyperlinks) and folksonomy (category system). Given the sheer size and complexity of this corpus, the space of possible choices of faceted interfaces is prohibitively large. We propose metrics for ranking individual facet hierarchies by user’s navigational cost, and metrics for ranking interfaces (each with k facets) by both their average pairwise similarities and average navigational costs. We thus develop faceted interface discovery algorithms that optimize the ranking metrics. Our experimental evaluation and user study verify the effectiveness of the system.
Machine Learning Meets Quantitative Planning: Enabling Self-Adaptation in Aut...Pooyan Jamshidi
Modern cyber-physical systems (e.g., robotics systems) are typically composed of physical and software components, the characteristics of which are likely to change over time. Assumptions about parts of the system made at design time may not hold at run time, especially when a system is deployed for long periods (e.g., over decades). Self-adaptation is designed to find reconfigurations of systems to handle such run-time inconsistencies. Planners can be used to find and enact optimal reconfigurations in such an evolving context. However, for systems that are highly configurable, such planning becomes intractable due to the size of the adaptation space. To overcome this challenge, in this paper we explore an approach that (a) uses machine learning to find Pareto-optimal configurations without needing to explore every configuration and (b) restricts the search space to such configurations to make planning tractable. We explore this in the context of robot missions that need to consider task timeliness and energy consumption. An independent evaluation shows that our approach results in high-quality adaptation plans in uncertain and adversarial environments.
Paper: https://arxiv.org/abs/1903.03920
Software Development Life Cycle By Team Paradise (Dept. of Pharmacy)Suman Mia
The software development lifecycle (SDLC) is the cost-effective and time-efficient process that development teams use to design and build high-quality software.
The goal of SDLC is to minimize project risks through forward planning so that software meets customer expectations during production and beyond.
The 4 Interfaces for the Business Model Canvas and Storyboard: How to THINK O...Rod King, Ph.D.
If you are looking for ways to improve your creativity and productivity especially in Business Model Innovation, then explore the 4 ways of organizing and presenting information for systems.
Build systems orchestrate how human-readable source code is translated into executable programs. In a software project, source code changes can induce changes in the build system (aka. build co-changes). It is difficult for developers to identify when build co-changes are necessary due to the complexity of build systems. Prediction of build co-changes works well if there is a sufficient amount of training data to build a model. However, in practice, for new projects, there exists a limited number of changes. Using training data from other projects to predict the build co-changes in a new project can help improve the performance of the build co-change prediction. We refer to this problem as cross-project build co-change prediction.
In this paper, we propose CroBuild, a novel cross-project build co-change prediction approach that iteratively learns new classifiers. CroBuild constructs an ensemble of classifiers by iteratively building classifiers and assigning them weights according to its prediction error rate. Given that only a small proportion of code changes are build co-changing, we also propose an imbalance-aware approach that learns a threshold boundary between those code changes that are build co-changing and those that are not in order to construct classifiers in each iteration. To examine the benefits of CroBuild, we perform experiments on 4 large datasets including Mozilla, Eclipse-core, Lucene, and Jazz, comprising a total of 50,884 changes. On average, across the 4 datasets, CroBuild achieves a F1-score of up to 0.408. We also compare CroBuild with other approaches such as a basic model, AdaBoost proposed by Freund et al., and TrAdaBoost proposed by Dai et al.. On average, across the 4 datasets, the CroBuild approach yields an improvement in F1-scores of 41.54%, 36.63%, and 36.97% over the basic model, AdaBoost, and TrAdaBoost, respectively.
A Method for the Unified Definition and Treatment of Conceptual Schema Qualit...David Aguilera
Presentation of my PhD thesis, which took place June 6th, 2014. It introduces the problem of quality in conceptual modeling and presents the three main contributions of my work: a formalization of quality issues (what they are, how man deals with them, and so on), a unified catalog of quality issues (discussing its expressiveness and usefulness), and a conceptual modeling assistant (a prototype tool that implements the two first contributions on top of the Eclipse Platform).
NOTICE: I took several images from flickr to enhance the slides and make them look prettier. I'd like to thank the authors for publishing those pictures! In the following, I include the links to the original images (I hope I miss no one, but if that's the case, please tell me!).
- https://www.flickr.com/photos/mmortah/6902857551
- https://www.flickr.com/photos/clarkmaxwell/5070107391
- https://www.flickr.com/photos/41894144622@N01/10962707284
- https://www.flickr.com/photos/rdecom/7222825892
- https://www.flickr.com/photos/25179368@N06/4349630962
- https://www.flickr.com/photos/75862793@N06/6812701367
- https://www.flickr.com/photos/elessar_82/9630968224
- https://www.flickr.com/photos/heatherpeaches/8389438221
- https://www.flickr.com/photos/sveinhal/2507540811
- https://www.flickr.com/photos/webinteger/6135862404
- https://www.flickr.com/photos/simonhua/4153234724
- https://www.flickr.com/photos/oberazzi/318947873
- https://www.flickr.com/photos/kelehen/7639423108
- https://www.flickr.com/photos/gsfc/6166295967
- https://www.flickr.com/photos/hellsbells75/8450851214
- https://www.flickr.com/photos/an_untrained_eye/6630719431
What's beyond BDD? Why do we need to go there for real three-way DevOps? How does this work with self-propagating transformation, 3D Kanban, and Business Agility? And how do these things fit together in XSCALE? Here are the slides from my Selenium Summit keynote in 2018.
This presentation gives a brief overview of Altair ProductDesign, a global product development and engineering company who specialize in optimization and creating lightweight design solutions.
NWC 2015 - Critical - Path Simulation Jennifer Day
Critical-Path Simulation: Case studies in the identification and execution of finite-element analysis early in the design process to assure feasibility and increase ROI
Bradford Range - Acorn Product Development
Business Applications of Predictive Modeling at ScaleSongtao Guo
Tutorial delivered in KDD 2016 San Francisco
Abstract
Predictive modeling is the art of building statistical models that forecast probabilities and trends of future events. It has broad applications in industry across different domains. Some popular examples include user intention predictions, lead scoring, churn analysis, etc. In this tutorial, we will focus on the best practice of predictive modeling in the big data era and its applications in industry, especially sales and marketing. We will start with an overview of how predictive modeling helps power and drive various key business use cases. We will introduce the essential concepts and state of the art in building end-to-end predictive modeling solutions, and discuss the challenges, key technologies, and lessons learned from our practice, followed by a case study. Moreover, we will discuss some practical solutions of building predictive modeling platform to scale the modeling efforts for data scientists and analysts, along with an overview of popular tools and platforms used across the industry.
Target Audience and Prerequisites
This tutorial is suitable for researchers, students, and practitioners of predictive modeling who are interested in the industry applications. Advanced techniques in data mining and statistical modeling are not required but some background in statistics and big data is expected.
Driving Innovation with Kanban at Jaguar Land RoverLeanKit
Find out how Kanban is accelerating product design and development at Jaguar Land Rover.
Watch the recorded webinar here: https://vimeo.com/172780037
Hamish McMinn, Automotive and IT Project Manager, will explain how Kanban is improving time, cost and quality across new vehicle development projects at Jaguar Land Rover.
You'll learn:
-Why new product development provides rich opportunities for continuous process improvement.
-Benefits and challenges of transferring agile software techniques to hardware design and development.
-How to visualize work, focus on flow and increase cross-functional collaboration using LeanKit.
Hamish will share learnings from the initial pilot project, and how Kanban is now being scaled across multiple engineering teams.
This paper proposes Facetedpedia, a faceted retrieval system for information discovery and exploration in Wikipedia. Given the set of Wikipedia articles resulting from a keyword query, Facetedpedia generates a faceted interface for navigating the result articles. Compared with other faceted retrieval systems, Facetedpedia is fully automatic and dynamic in both facet generation and hierarchy construction, and the facets are based on the rich semantic information from Wikipedia. The essence of our approach is to build upon the collaborative vocabulary in Wikipedia, more specifically the intensive internal structures (hyperlinks) and folksonomy (category system). Given the sheer size and complexity of this corpus, the space of possible choices of faceted interfaces is prohibitively large. We propose metrics for ranking individual facet hierarchies by user’s navigational cost, and metrics for ranking interfaces (each with k facets) by both their average pairwise similarities and average navigational costs. We thus develop faceted interface discovery algorithms that optimize the ranking metrics. Our experimental evaluation and user study verify the effectiveness of the system.
Machine Learning Meets Quantitative Planning: Enabling Self-Adaptation in Aut...Pooyan Jamshidi
Modern cyber-physical systems (e.g., robotics systems) are typically composed of physical and software components, the characteristics of which are likely to change over time. Assumptions about parts of the system made at design time may not hold at run time, especially when a system is deployed for long periods (e.g., over decades). Self-adaptation is designed to find reconfigurations of systems to handle such run-time inconsistencies. Planners can be used to find and enact optimal reconfigurations in such an evolving context. However, for systems that are highly configurable, such planning becomes intractable due to the size of the adaptation space. To overcome this challenge, in this paper we explore an approach that (a) uses machine learning to find Pareto-optimal configurations without needing to explore every configuration and (b) restricts the search space to such configurations to make planning tractable. We explore this in the context of robot missions that need to consider task timeliness and energy consumption. An independent evaluation shows that our approach results in high-quality adaptation plans in uncertain and adversarial environments.
Paper: https://arxiv.org/abs/1903.03920
Software Development Life Cycle By Team Paradise (Dept. of Pharmacy)Suman Mia
The software development lifecycle (SDLC) is the cost-effective and time-efficient process that development teams use to design and build high-quality software.
The goal of SDLC is to minimize project risks through forward planning so that software meets customer expectations during production and beyond.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Search and Society: Reimagining Information Access for Radical FuturesBhaskar Mitra
The field of Information retrieval (IR) is currently undergoing a transformative shift, at least partly due to the emerging applications of generative AI to information access. In this talk, we will deliberate on the sociotechnical implications of generative AI for information access. We will argue that there is both a critical necessity and an exciting opportunity for the IR community to re-center our research agendas on societal needs while dismantling the artificial separation between the work on fairness, accountability, transparency, and ethics in IR and the rest of IR research. Instead of adopting a reactionary strategy of trying to mitigate potential social harms from emerging technologies, the community should aim to proactively set the research agenda for the kinds of systems we should build inspired by diverse explicitly stated sociotechnical imaginaries. The sociotechnical imaginaries that underpin the design and development of information access technologies needs to be explicitly articulated, and we need to develop theories of change in context of these diverse perspectives. Our guiding future imaginaries must be informed by other academic fields, such as democratic theory and critical theory, and should be co-developed with social science scholars, legal scholars, civil rights and social justice activists, and artists, among others.
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
David aguilera presentation
1. Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
CAiSE 2013
Enforcement of Conceptual Schema Quality Issues in
Current Integrated Development Environments
David Aguilera
Cristina G´omez
Antoni Oliv´e
1/23
7. IntroductionIntroduction
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Aim of this Work
Improve the support on addressing quality of
conceptual schemas
Explore and analyse current UML IDEs in order to
determine
the support they offer to modelers,
how they offer this support, and
whether this support can be greater
6/23
8. IntroductionIntroduction
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Aim of this Work
Improve the support on addressing quality of
conceptual schemas
Explore and analyse current UML IDEs in order to
determine
the support they offer to modelers,
how they offer this support, and
whether this support can be greater
Present a catalog of Conceptual Schema Quality Issues
6/23
9. IntroductionIntroduction
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Outline
1 Introduction to Conceptual Schema Quality Issues
2 CSQI in current IDEs
3 A Catalog of CSQI
4 Extending IDEs
can IDEs be improved?
5 Evaluation
what we get VS what we could get
7/23
10. Conceptual Schema Quality IssuesConceptual Schema Quality Issues
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What is an Issue?
Informal Definition
According to the dictionary:
“an issue is an important topic or problem
for debate or discussion”
8/23
11. Conceptual Schema Quality IssuesConceptual Schema Quality Issues
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What is an Issue?
Informal Definition
According to the dictionary:
“an issue is an important topic or problem
for debate or discussion”
In conceptual modeling, we have:
Problem issues
Checking Issues
8/23
12. Conceptual Schema Quality IssuesConceptual Schema Quality Issues
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Example
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
* 1..0
parent 2
3
child
Owns
IsParentOf
plateNumber:String
motorcycle
plateNumber:String
Person
9/23
13. Conceptual Schema Quality IssuesConceptual Schema Quality Issues
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Example
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
* 1..0
parent 2
3
child
Owns
IsParentOf
plateNumber:String
motorcycle
plateNumber:String
Person
9/23
14. Conceptual Schema Quality IssuesConceptual Schema Quality Issues
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Example
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
* 1..0
parent 2
3
child
Owns
IsParentOf
plateNumber:String
m
plateNumber:String
Person
otorcycle
9/23
15. Conceptual Schema Quality IssuesConceptual Schema Quality Issues
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Example
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
* 1..0
parent 2
3
child
Owns
IsParentOf
plateNumber:String
m
plateNumber:String
Person
otorcycle
9/23
16. Conceptual Schema Quality IssuesConceptual Schema Quality Issues
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Example
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
* 1..0
parent
child
Owns
IsParentOf
plateNumber:String
m
plateNumber:String
Person
otorcycle
2
3
9/23
17. Conceptual Schema Quality IssuesConceptual Schema Quality Issues
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Example
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
* 1..0
parent
child
Owns
IsParentOf
plateNumber:String
m
plateNumber:String
Person
otorcycle
2
3
9/23
18. Conceptual Schema Quality IssuesConceptual Schema Quality Issues
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Example
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
* 1..0
parent
child
Owns
IsParentOf
plateNumber:String
m
plateNumber:String
Person
otorcycle
2
3
9/23
19. Conceptual Schema Quality IssuesConceptual Schema Quality Issues
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Example
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
* 1..0
parent
child
Owns
IsParentOf
plateNumber:String
m
plateNumber:String
Person
otorcycle
2
3
9/23
20. Conceptual Schema Quality IssuesConceptual Schema Quality Issues
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Example
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
* 1..0
parent
child
Owns
IsParentOf
plateNumber:String
m
plateNumber:String
Person
otorcycle
2
3
9/23
21. Conceptual Schema Quality IssuesConceptual Schema Quality Issues
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Example
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
* 1..0
parent
child
Owns
IsParentOf
plateNumber:String
m
plateNumber:String
Person
otorcycle
2
3
(ir)reflexive?
(in)transitive?
(a)symmetric?
9/23
22. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
29 IDEs Analysed
10/23
23. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Issue Types: How many of them do they monitor?
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
* 1..0
parent
child
Owns
IsParentOf
plateNumber:String
m
plateNumber:String
Person
otorcycle
2
3
(ir)reflexive?
(in)transitive?
(a)symmetric?
11/23
24. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Issue Types: How many of them do they monitor?
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
* 1..0
parent
child
Owns
IsParentOf
plateNumber:String
m
plateNumber:String
Person
otorcycle
2
3
(ir)reflexive?
(in)transitive?
(a)symmetric?
Syntactic
11/23
25. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Issue Types: How many of them do they monitor?
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
* 1..0
parent
child
Owns
IsParentOf
plateNumber:String
m
plateNumber
Person
otorcycle
2
3
(ir)reflexive?
(in)transitive?
(a)symmetric?
Syntactic+
11/23
26. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Issue Types: How many of them do they monitor?
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
* 1..0
parent
child
Owns
IsParentOf
plateNumber:String
m
plateNumber:String
Person
otorcycle
2
3
(ir)reflexive?
(in)transitive?
(a)symmetric?
Basic Property
11/23
27. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Issue Types: How many of them do they monitor?
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
* 1..0
parent
child
Owns
IsParentOf
plateNumber:String
m
plateNumber:String
Person
otorcycle
2
3
(ir)reflexive?
(in)transitive?
(a)symmetric?
Naming
11/23
28. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Issue Types: How many of them do they monitor?
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
* 1..0
parent
child
Owns
IsParentOf
plateNumber:String
m
plateNumber:String
Person
otorcycle
2
3
(ir)reflexive?
(in)transitive?
(a)symmetric?
Best Pratice
11/23
29. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Issue Tolerance: How do they deal with issues?
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
plateNumber:String
motorcycle
plateNumber:String
12/23
30. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Issue Tolerance: How do they deal with issues?
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
plateNumber:String
motorcycle
plateNumber:String
12/23
31. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Issue Tolerance: How do they deal with issues?
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
plateNumber:String
motorcycle
plateNumber:String
Forbidden!
12/23
32. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Issue Tolerance: How do they deal with issues?
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
plateNumber:String
motorcycle
plateNumber:String
Forbidden
12/23
33. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Issue Tolerance: How do they deal with issues?
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
plateNumber:String
motorcycle
plateNumber:String
Forbidden
Allowed
Forbidden
12/23
34. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Issue Tolerance: How do they deal with issues?
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
plateNumber:String
m
plateNumber:String
Forbidden
Allowed
Mixed
otorcycle
12/23
35. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Corrective Actions: Do they help us?
m
plateNumber:String
otorcycle
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
plateNumber:String
13/23
36. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Corrective Actions: Do they help us?
m
plateNumber:String
otorcycle
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
plateNumber:String
Remove redundant
generalization
Suggested Action
13/23
37. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Corrective Actions: Do they help us?
m
plateNumber:String
otorcycle
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
plateNumber:String
13/23
38. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Corrective Actions: Do they help us?
m
plateNumber:String
otorcycle
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
plateNumber:String
Capitalize classname
Suggested Action
13/23
39. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Corrective Actions: Do they help us?
M
plateNumber:String
otorcycle
Vehicle
LandVehicle
MotorVehicle
Car
{disjoint, complete}
plateNumber:String
13/23
40. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What were we looking for?
Extensibility: Can we add support for new issue types?
OCL or a custom constraint language
A plugin mechanism aimed at this end
14/23
41. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What we found
15/23
42. CSQI in current IDEsCSQI in current IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
What we found
Syntactic Support
9 None
17 Partial
3 Full
Non-Syntactic Support
14
0
ArgoUML SDMetrics Others
Best Pratice
Naming
Basic Property
Syntactic+
Issue Tolerance
7
Forbidden
10 Mixed
3 Allowed
Corrective Actions (2)
ArgoUML, VisualParadigm
Extension Mechanisms (4)
Generic Modeling Environment,
IBM Rational Rose, MagicDraw UML,
SDMetrics
16/23
43. A Catalog of CSQIA Catalog of CSQI
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Where and How to look for?
“Quality Issues” is not used broadly
“Quality” is used too much
Some works may imply quality issues (e.g. refactorings)
17/23
44. A Catalog of CSQIA Catalog of CSQI
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Where and How to look for?
“Quality Issues” is not used broadly
“Quality” is used too much
Some works may imply quality issues (e.g. refactorings)
We manually reviewed CAiSE and ER papers
This is obviously an on-going work
17/23
45. A Catalog of CSQIA Catalog of CSQI
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Our Catalog
Issue Catalog
ID Name
020 A recursive binary association nee
035 A recursive binary association nee
036 A recursive binary association nee
037 Non strongly satisfiable schema be
064 A class has really so many attribut
059 A class is really involved in so man
049 A class really has more than 60 att
023 A class without generalizations or
045 A cycle of composition relationship
046 An abstract class has a concrete p
063 There are no attributes missing in
CMA - Issue Catalog - Mozilla Firefox
Firefox CMA - Issue Catalog
helios.lsi. /phd/catalog/issues.php?select=BEST-PRAupc.edu Google
A class has no name
CMA - Issue Catalog - Mozilla Firefox
Firefox CMA - Issue Catalog
helios.lsi. /phd/catalog/issues.php?select=OCupc.edu Google
According to [SDMetrics] and [ArgoUML], classes should have a descriptive name that reflects
the concept they represent.
Label
Selector Condition
Description
1 self isEmpty or self size.name-> () .name. () = 0
Issue Condition
#051 :: NAMING-GUIDELINES-unamed-class
The class has no name
1 true
Scope: <Class>
59 non-syntactic issue types (37 problem, 22 checking)
11 Syntactic+
20 Basic Properties
10 Naming Guidelines
18 Best Practices
18/23
46. A Catalog of CSQIA Catalog of CSQI
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Our Catalog
Defined in XML
XSLT make them user-friendly
We use a formalization to uniformly define them
We use OCL conditions to detect issues
Problem VS Checking issues
It includes Issue Actions
19/23
47. Extending IDEsExtending IDEs
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
The problems one may face
Only 4 tools can be extended
They all deal with problem issues, ignoring checking
issues
The formalization they use is less expressive than ours
Single VS multiple scope
Precedents
20/23
48. EvaluationEvaluation
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Conceptual Schemas and Results
13 conceptual schemas that were developed by
students, as part of their their final projects, during the
last year of their Computer Science degree.
Evaluation with ArgoUML and SDMetrics:
several issues were found.
Evaluation with our catalog: the number of issues
increases dramatically (10x).
The missing issue types cannot be easily integrated in
these two tools (specially the 22 checking ones).
21/23
49. ConclusionsConclusions
Introduction
Concept.Schema
Quality Issues
CSQI in current
IDEs
Catalog of CSQI
Extending IDEs
Evaluation
Conclusions
Conclusions
There is a large room for improvement
IDEs should enforce all relevant quality criteria
Only 2 out of 29 IDEs provide some significant support.
We presented our catalog of issue types
We compared the support that is currently offered by the
support that could be offered (if our catalog was used)
22/23