ypermodelling Next Level Software Engineering With Data Warehouses Dr. Tim Frey Software Engineering
ypermodellingNext Level Software Engineering With Data Warehouses
Dr. Tim Frey
Software Engineering
Why we need it
How it works
What we can do with it
Where it leads us
Our discussion
… More Samples
Software Quality – Why We Care
Eurozone bailout: $591 billion (2008-today)
Software bugs: ??? (2012)
Eurozone bailout: $591 billion (2008-today)
Software bugs: $312 billion annually (increasing)
Software Quality – Why We Care
Sources: Cambridge University Study, Prweb.com article, 2013Frequently Forgotten Fundamental Facts about Software Engineering, Robert L. Glass, IEEE Software Engineering, 2001h // id / / f ?id E2B6497B 9AF3 38A7
Software Quality – Why We Care
Eurozone bailout: $591 billion (2008-today)
Software bugs: $312 billion annually (increasing)
40-80% Maintenance Costs-> 20% Innovation.
Mission: Improve Maintenance with Analysis-> Bridge the Valley
Analysis Challenges
Analysis Challenges
Analysis Challenges
USE
USE
Analysis Challenges
USE
USE
• Problem Size: 8,5 MLOC• Multi-dimensional Code• Today
NO Transferable Studies (2 Tables)NO Integration ApproachNO Big Data Code ProcessingNO Code Abstraction
-> Missing: Large Scale Re-Use
and „Customizable“ AnalysisInfrastructure
Analysis Challenges
• KPIs – Data Warehouses
-> Why? Because they…
– Offer Indicator based Abstraction– Are Fast– Provide Multi-Dimensional
Viewpoints– Offer Integration– Handle Big Data
Source: BI Verdict, Pendse und Creeth, 1995
How are Analysis ChallengesSolved in Other Areas?
IF and HOW can we use Data Warehouses for Source Code?
IF and HOW can we use Data Warehouses for Source Code?
Source Code Data Warehouse
Store in Analysis
Store in Analysis
IF/HOW
Store in Analysis
ApplicationsBenefits
DataWarehouse
Store in
-----------------
-----------------
-----------------
-----------------
-----------------
Hypermodelling =Data Warehousing for Source Code
Complex Source Code Relation Computations+ Data Warehouse Infrastructure
-> Effective and Customized Code Investigations
Quantifying Development
DataWarehouse
Analysis
Comparison toComplete Project
Static Analysis
Vendor Lock-ins
Dependencies
Skill Requirements
Drill-downSkill Requirements
Drill-down
Diversity / Variation ->
Application Cases:
• Easily adjustable queries – (Alfresco…)• Clean Code Principles• Dynamic & Flexible Code Slicing/ Queries
-> Quick Architecture Reviews…-> Architecture Planning-> Continous Dependency Managment-> Architecture Enforcement
• QA Processes
Multi-File -MetricSample Cohesion / Coupling
Code ReviewsSlicing in any Dimension- Cohesion
Code ReviewsSlicing in any Dimension- Cohesion
DD
Code ReviewsSlicing in any Dimension- Cohesion
Further Advancements?
• Increased Code Re-Use:Code SearchLive Clone DetectionRecommendationTest Driven Code Search
• IDE EnhancementsOlap Queries and Analysis in the IDE
• Statistic Analysis…… And many more use cases…
Further Advancements
Summary Key Contributions:1. Multi-Dimensional Concern
Computation Model2. Improvement of 5+
Application Scenarios
• Growing Future Market• Business Cases
- Estimating/Planning Migration Effort- Dependency Analysis- Code Mining- Code Study/Review Information- Statistic Failure Analysis- HR – Developer Skill Profiles
• Integrated Large Scale Code Control with Data Warehouse
• Future: Statistic Software Product Line Analysis
• Plenty of New Opportunities->„One Platform, many Use Cases“
ConclusionOpen
Leveraging New Opportunities
http://hypermodelling.com facebook.com/hypermodelling Dr. Tim Frey