/
From  Program  A nalysis From  Program  A nalysis

From Program A nalysis - PowerPoint Presentation

maddoxjustin
maddoxjustin . @maddoxjustin
Follow
342 views
Uploaded On 2022-08-03

From Program A nalysis - PPT Presentation

R esearch to Industrial Programming L anguage Development Andy Maule Scenario UCL coffee company Wholesale coffee traders Sales application Process orders Addupdate customers Inventory application ID: 934515

missing program false update program missing update false criteria change required country column town hand app warn impact schema

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "From Program A nalysis" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

From

Program Analysis Research to Industrial Programming Language Development

Andy Maule

Slide2

Scenario UCL coffee company™

Wholesale coffee traders

Slide3

Sales applicationProcess orders

Add/update customers

Slide4

Inventory application

Update stock detailsManage supplier infoAdd/remove products

Slide5

Database schema

ProductOrderSupplierCustomer1

1

1

Slide6

Change

SupplierColumn: AddressColumn: StreetColumn: Town

Column:

Country

Slide7

Impacts?

INSERT INTO Suppliers (Name, Address) VALUES (?, ?)Invalid Column Name

Address

Missing required value

Town

Missing required value

Street

Missing required value

Country

Slide8

Estimate impact by hand

DB Refactoring book: “knowledge built up over time… gut feeling…”Manual inspection

Slide9

Don’t change the database!

What will be affected?What is the cost of this change?

Slide10

Automated analysisProgram analysisCompilers

AppDBDependences

Slide11

Precision

False positivesNeed low false positivesGo through by hand

Slide12

How much do low false positives cost

O(kn)Size of analyzed program

Analysis time

Slide13

Making it scaleMake algorithms more efficient

Reduce the size of the program

Slide14

Overview

Slide15

1. Program slicing

“… the parts of a program that (potentially)affect the values computed at some point of interest”

Backward slice

(affect criteria)

Criteria

Forward slice

(affected by criteria)

Slide16

Estimation using SUITE

Schema Update Impact Tool

E

nvironment

Slide17

Does it work?

ChangePredictedTrue positivesFalse positives15 warns2324 warns0434 warns04

4

4 warns

0

4

5

1 err

1

0

6

1 warn

1

0

7

1 warn

0

1

8

None

0

0

App (v.234)

App

(v.235)

changes

Predict effects

Compare to differences

Version history

Slide18

Does it scale?

Slide19

Internship

Building tools is hard!How is it done in the real world?I got to find out

Slide20

Now…

The M programming languageThe Oslo project

Slide21

What’s it like being a PhD in Industry?

At least 5 PhDs on my teamREALLY Smart peopleREALLY interesting workLots of resourcesPotentially big impactGood pay 

Slide22

The end…

andymaul@microsoft.comFunded byLondon Software Systems