Top Banner
ypermodelling Next Level Software Engineering With Data Warehouses Dr. Tim Frey Software Engineering
41

Hypermodelling - Data Warehousing for Source Code

Apr 12, 2017

Download

Technology

Tim Frey
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Hypermodelling - Data Warehousing for Source Code

ypermodellingNext Level Software Engineering With Data Warehouses

Dr. Tim Frey

Software Engineering

Page 2: Hypermodelling - Data Warehousing for Source Code

Why we need it

How it works

What we can do with it

Where it leads us

Our discussion

… More Samples

Page 3: Hypermodelling - Data Warehousing for Source Code

Software Quality – Why We Care

Eurozone bailout: $591 billion (2008-today)

Software bugs: ??? (2012)

Page 4: Hypermodelling - Data Warehousing for Source Code

Eurozone bailout: $591 billion (2008-today)

Software bugs: $312 billion annually (increasing)

Software Quality – Why We Care

Page 5: Hypermodelling - Data Warehousing for Source Code

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

Page 6: Hypermodelling - Data Warehousing for Source Code

Analysis Challenges

Page 7: Hypermodelling - Data Warehousing for Source Code

Analysis Challenges

Page 8: Hypermodelling - Data Warehousing for Source Code

Analysis Challenges

Page 9: Hypermodelling - Data Warehousing for Source Code

USE

USE

Analysis Challenges

Page 10: Hypermodelling - Data Warehousing for Source Code

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

Page 11: Hypermodelling - Data Warehousing for Source Code

• 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?

Page 12: Hypermodelling - Data Warehousing for Source Code

IF and HOW can we use Data Warehouses for Source Code?

Page 13: Hypermodelling - Data Warehousing for Source Code

IF and HOW can we use Data Warehouses for Source Code?

Page 14: Hypermodelling - Data Warehousing for Source Code

Source Code Data Warehouse

Store in Analysis

Page 15: Hypermodelling - Data Warehousing for Source Code

Store in Analysis

IF/HOW

Page 16: Hypermodelling - Data Warehousing for Source Code

Store in Analysis

ApplicationsBenefits

Page 17: Hypermodelling - Data Warehousing for Source Code

DataWarehouse

Store in

-----------------

Page 18: Hypermodelling - Data Warehousing for Source Code

-----------------

Page 19: Hypermodelling - Data Warehousing for Source Code

-----------------

Page 20: Hypermodelling - Data Warehousing for Source Code

-----------------

Page 21: Hypermodelling - Data Warehousing for Source Code

-----------------

Page 22: Hypermodelling - Data Warehousing for Source Code

Hypermodelling =Data Warehousing for Source Code

Complex Source Code Relation Computations+ Data Warehouse Infrastructure

-> Effective and Customized Code Investigations

Page 23: Hypermodelling - Data Warehousing for Source Code

Quantifying Development

DataWarehouse

Analysis

Page 24: Hypermodelling - Data Warehousing for Source Code
Page 25: Hypermodelling - Data Warehousing for Source Code

Comparison toComplete Project

Page 26: Hypermodelling - Data Warehousing for Source Code

Static Analysis

Page 27: Hypermodelling - Data Warehousing for Source Code

Vendor Lock-ins

Dependencies

Skill Requirements

Page 28: Hypermodelling - Data Warehousing for Source Code

Drill-downSkill Requirements

Page 29: Hypermodelling - Data Warehousing for Source Code

Drill-down

Diversity / Variation ->

Page 30: Hypermodelling - Data Warehousing for Source Code

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

Page 31: Hypermodelling - Data Warehousing for Source Code

Multi-File -MetricSample Cohesion / Coupling

Page 32: Hypermodelling - Data Warehousing for Source Code

Code ReviewsSlicing in any Dimension- Cohesion

Page 33: Hypermodelling - Data Warehousing for Source Code

Code ReviewsSlicing in any Dimension- Cohesion

DD

Page 34: Hypermodelling - Data Warehousing for Source Code

Code ReviewsSlicing in any Dimension- Cohesion

Page 35: Hypermodelling - Data Warehousing for Source Code

Further Advancements?

Page 36: Hypermodelling - Data Warehousing for Source Code

• 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

Page 37: Hypermodelling - Data Warehousing for Source Code

Summary Key Contributions:1. Multi-Dimensional Concern

Computation Model2. Improvement of 5+

Application Scenarios

Page 38: Hypermodelling - Data Warehousing for Source Code
Page 39: Hypermodelling - Data Warehousing for Source Code

• Growing Future Market• Business Cases

- Estimating/Planning Migration Effort- Dependency Analysis- Code Mining- Code Study/Review Information- Statistic Failure Analysis- HR – Developer Skill Profiles

Page 40: Hypermodelling - Data Warehousing for Source Code

• Integrated Large Scale Code Control with Data Warehouse

• Future: Statistic Software Product Line Analysis

• Plenty of New Opportunities->„One Platform, many Use Cases“

ConclusionOpen

Page 41: Hypermodelling - Data Warehousing for Source Code

Leveraging New Opportunities

http://hypermodelling.com facebook.com/hypermodelling Dr. Tim Frey