2013.10 operating * by the numbers

67
OPERATING * BY THE NUMBERS Allison Miller @selenakyle

Upload: a-e-miller

Post on 04-Jul-2015

496 views

Category:

Technology


2 download

DESCRIPTION

Discusses how new approaches to managing business risk and software services (like Dev Ops and Platform Engineering/Management) can draw from their forefather concepts: Operations Management and Decision Science.

TRANSCRIPT

Page 1: 2013.10 Operating * by the Numbers

OPERATING * BY THE NUMBERSAllison Miller!@selenakyle

Page 2: 2013.10 Operating * by the Numbers

Overview! How we got here!! Improving systems using models!! Model building!! Back to the Numbers!! Beg, Borrow, Steal

Page 3: 2013.10 Operating * by the Numbers
Page 4: 2013.10 Operating * by the Numbers
Page 5: 2013.10 Operating * by the Numbers
Page 6: 2013.10 Operating * by the Numbers
Page 7: 2013.10 Operating * by the Numbers
Page 8: 2013.10 Operating * by the Numbers
Page 9: 2013.10 Operating * by the Numbers
Page 10: 2013.10 Operating * by the Numbers
Page 11: 2013.10 Operating * by the Numbers
Page 12: 2013.10 Operating * by the Numbers
Page 13: 2013.10 Operating * by the Numbers
Page 14: 2013.10 Operating * by the Numbers
Page 15: 2013.10 Operating * by the Numbers
Page 16: 2013.10 Operating * by the Numbers
Page 17: 2013.10 Operating * by the Numbers
Page 18: 2013.10 Operating * by the Numbers
Page 19: 2013.10 Operating * by the Numbers
Page 20: 2013.10 Operating * by the Numbers
Page 21: 2013.10 Operating * by the Numbers
Page 22: 2013.10 Operating * by the Numbers
Page 23: 2013.10 Operating * by the Numbers
Page 24: 2013.10 Operating * by the Numbers
Page 25: 2013.10 Operating * by the Numbers
Page 26: 2013.10 Operating * by the Numbers
Page 27: 2013.10 Operating * by the Numbers
Page 28: 2013.10 Operating * by the Numbers
Page 29: 2013.10 Operating * by the Numbers

A Shift to Operations! Life at Layer 8!! The modern operating

environment!High complexity!High stakes!

! Operations!Process of transforming inputs into outputs

Layer 8

Say

You

Would

What

Here?

You

Do

Transport

Session

Presentation

Application

Physical

Network

Data Link

Business Logic

Page 30: 2013.10 Operating * by the Numbers

The Modern World! Buzzword Bingo!

Big Data / NoSQL / Graph DB’s!Machine Learning!Agile development/delivery (aka Dev Ops)!Cloud / Anything...as a Service!

! The New Hotness is Old School!Management science !Operations research!Decision Science!Six Sigma / TQM / Kai Zen

Page 31: 2013.10 Operating * by the Numbers

Who Cares! Relevant to control systems!! Tools to improve running an

operation/business!Automation!Optimization!Prediction / Forecasting!

! Modeling as an operations tool

Page 32: 2013.10 Operating * by the Numbers

I’m no model lady. A model’s just an

imitation of the real thing. !–Mae West

Page 33: 2013.10 Operating * by the Numbers

Improving Systems Using Models! What are models!

Not reality, but an approximation!90% likelihood vs 90% of behavior observed!

! Why do we employ models!Design (how to build/design a system)!Management (goal setting & performance monitoring)!Live / Production / Operations (automation)!

! How do we know if they work?

Abstraction RealismPrescriptive Descriptive

Combat Modeling Spectrum Washburn & Kress, Combat Modeling, International Series in Operations Research & Management

Page 34: 2013.10 Operating * by the Numbers

Quality cannot be improved by trying harder. !–W.E. Deming

Page 35: 2013.10 Operating * by the Numbers

Operating Better Systems! Operations – a transformative process that

converts inputs into outputs

Page 36: 2013.10 Operating * by the Numbers

Example: Data Driven Defense! What’s a risk decisioning system?!! Where do you put it?!! What does it cost?!! What do you need to build it?!! How do you build it?!! Operating Risk by the numbers!

Forecasting / Prediction!Automation!Optimization

Page 37: 2013.10 Operating * by the Numbers

Big Data &Little Loops

Page 38: 2013.10 Operating * by the Numbers

123.123.123.123 - - [26/Apr/2000:00:23:48 -0400] "GET /pics/wpaper.gif HTTP/1.0" 200 6248 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"123.123.123.123 - - [26/Apr/2000:00:23:47 -0400] "GET /asctortf/ HTTP/1.0" 200 8130 "http://search.netscape.com/Computers/Data_Formats/Document/Text/RTF" "Mozilla/4.05 (Macintosh; I; PPC)"123.123.123.123 - - [26/Apr/2000:00:23:48 -0400] "GET /pics/5star2000.gif HTTP/1.0" 200 4005 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"[Tue Mar 9 22:02:41 2004] [info] created shared memory segment #10813446[Tue Mar 9 22:02:41 2004] [notice] Apache/1.3.29 (Unix) mod_ssl/2.8.16 OpenSSL/0.9.7c configured -- resuming normal operations[Tue Mar 9 22:02:41 2004] [info] Server built: Mar 7 2004 13:38:59pausing [http://xmlrevenue.com/s.php?username=jenneypan&keywords=Online+Gambling] for 50000 ms[Tue Mar 9 22:04:16 2004] [error] [client 218.93.92.137] mod_security: Access denied with code 200. Pattern match "Basic" at HEADER.[Tue Mar 9 22:07:16 2004] [error] [client 203.121.182.190] mod_security: Invalid character detected [4]123.123.123.123 - - [26/Apr/2000:00:23:50 -0400] "GET /pics/5star.gif HTTP/1.0" 200 1031 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"123.123.123.123 - - [26/Apr/2000:00:23:51 -0400] "GET /pics/a2hlogo.jpg HTTP/1.0" 200 4282 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"123.123.123.123 - - [26/Apr/2000:00:23:51 -0400] "GET /cgi-bin/newcount?jafsof3&width=4&font=digital&noshow HTTP/1.0" 200 36 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"[Tue Mar 9 22:02:41 2004] [notice] Accept mutex: sysvsem (Default: sysvsem)[Tue Mar 9 22:03:26 2004] [error] [client 218.93.92.137] mod_security:[Tue Mar 9 22:07:16 2004] [error] [client 203.121.182.190] mod_security: Invalid character detected [4]123.123.123.123 - - [26/Apr/2000:00:23:50 -0400] "GET /pics/5star.gif HTTP/1.0" 200 1031 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"123.123.123.123 - - [26/Apr/2000:00:23:51 -0400] "GET /pics/a2hlogo.jpg HTTP/1.0" 200 4282 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"123.123.123.123 - - [26/Apr/2000:00:23:51 -0400] "GET /cgi-bin/newcount?jafsof3&width=4&font=digital&noshow HTTP/1.0" 200 36 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"[Tue Mar 9 22:02:41 2004] [notice] Accept mutex: sysvsem (Default: sysvsem)

Big Data &Little Loops

Page 39: 2013.10 Operating * by the Numbers

123.123.123.123 - - [26/Apr/2000:00:23:48 -0400] "GET /pics/wpaper.gif HTTP/1.0" 200 6248 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"123.123.123.123 - - [26/Apr/2000:00:23:47 -0400] "GET /asctortf/ HTTP/1.0" 200 8130 "http://search.netscape.com/Computers/Data_Formats/Document/Text/RTF" "Mozilla/4.05 (Macintosh; I; PPC)"123.123.123.123 - - [26/Apr/2000:00:23:48 -0400] "GET /pics/5star2000.gif HTTP/1.0" 200 4005 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"[Tue Mar 9 22:02:41 2004] [info] created shared memory segment #10813446[Tue Mar 9 22:02:41 2004] [notice] Apache/1.3.29 (Unix) mod_ssl/2.8.16 OpenSSL/0.9.7c configured -- resuming normal operations[Tue Mar 9 22:02:41 2004] [info] Server built: Mar 7 2004 13:38:59pausing [http://xmlrevenue.com/s.php?username=jenneypan&keywords=Online+Gambling] for 50000 ms[Tue Mar 9 22:04:16 2004] [error] [client 218.93.92.137] mod_security: Access denied with code 200. Pattern match "Basic" at HEADER.[Tue Mar 9 22:07:16 2004] [error] [client 203.121.182.190] mod_security: Invalid character detected [4]123.123.123.123 - - [26/Apr/2000:00:23:50 -0400] "GET /pics/5star.gif HTTP/1.0" 200 1031 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"123.123.123.123 - - [26/Apr/2000:00:23:51 -0400] "GET /pics/a2hlogo.jpg HTTP/1.0" 200 4282 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"123.123.123.123 - - [26/Apr/2000:00:23:51 -0400] "GET /cgi-bin/newcount?jafsof3&width=4&font=digital&noshow HTTP/1.0" 200 36 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"[Tue Mar 9 22:02:41 2004] [notice] Accept mutex: sysvsem (Default: sysvsem)[Tue Mar 9 22:03:26 2004] [error] [client 218.93.92.137] mod_security:[Tue Mar 9 22:07:16 2004] [error] [client 203.121.182.190] mod_security: Invalid character detected [4]123.123.123.123 - - [26/Apr/2000:00:23:50 -0400] "GET /pics/5star.gif HTTP/1.0" 200 1031 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"123.123.123.123 - - [26/Apr/2000:00:23:51 -0400] "GET /pics/a2hlogo.jpg HTTP/1.0" 200 4282 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"123.123.123.123 - - [26/Apr/2000:00:23:51 -0400] "GET /cgi-bin/newcount?jafsof3&width=4&font=digital&noshow HTTP/1.0" 200 36 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"[Tue Mar 9 22:02:41 2004] [notice] Accept mutex: sysvsem (Default: sysvsem)

Big Data &Little Loops

Page 40: 2013.10 Operating * by the Numbers

* Loop Disposition: Logic, Human, or Other?

Page 41: 2013.10 Operating * by the Numbers

Big Data &Little Loops

Why are you picking on me?Boo-yah!

Still getting away with it.

<Sigh> Nobody

understands me.

Page 42: 2013.10 Operating * by the Numbers

SHALL WE PLAY A GAME?(SINCE WE CAN’T PLAY “CLUE” FOR EVERY LOGIN

TRANSACTIONNEW USER MESSAGE

FRIEND REQUESTATTACHMENT

PACKETWINKPOKECLICK

BIT

WE BUILD RISK MODELS)

Page 43: 2013.10 Operating * by the Numbers

Applying Decisions

Risk management is decision management

ACTOR ATTEMPTS

ACTIONSuSUBMIT

WHAT IS THE

REQUEST

HOW TO HONOR THE

REQUESTSHOULD WE

HONOR?

RESULTACTIONOCCURS

Page 44: 2013.10 Operating * by the Numbers

Applied where?

Where risks manifest in observable behavior

Where system owners make decisions

Where controls can be optimized by better recognizing identity, intent, or change

Page 45: 2013.10 Operating * by the Numbers

Decisions, Decisions

Authorize Block

Good false positive

Bad false negative

RESPONSE

POPULATION

Incorrect decisions have a cost Correct decisions are free (usually)

Good Action Gets Blocked

Bad Action Gets Through

Downstream Impacts

Page 46: 2013.10 Operating * by the Numbers

Such as...Populations- Users, Transactions, Messages, Packets, API calls,

Files!

Actions- Allow, Block, Challenge, Review, Retry, Quarantine,

Add privileges, Upgrade privileges, Make Offer!

Costs- Fraud, Data leakage, Customer churn, Customer

contacts, Downstream liability

Page 47: 2013.10 Operating * by the Numbers

For example:ACTOR

ATTEMPTS Payment

p (actor attempting payment is

accountholder)

DecisionAuthorize

Review

Refer

Request Authentication

Decline

f(variable A + Variable B + ...)

SuSUBMIT

Page 48: 2013.10 Operating * by the Numbers

Flavors of Risk Models

I deviate significantly from a

normal (good) pattern

I summarize a known bad

pattern

fa(x), fb(x), fc(x) fq(x), fr(x), fs(x)

Page 49: 2013.10 Operating * by the Numbers

What is normal?

http://en.wikipedia.org/wiki/Normal_distribution

WHAT IS BAD? WHAT IS GOOD?

Page 50: 2013.10 Operating * by the Numbers

Model Development Process

Target ! Yes/No questions best

Find Data, Variable Creation ! Best part

Data Prep ! Worst part

Model Training ! Pick an algorithm

Assessment ! Catch vs FP rate

Deployment ! Decisioning vs Detection

Page 51: 2013.10 Operating * by the Numbers

User IP Country

<> Billing Country

Buying prepaid mobile phones

Add new shipping address in cart

Buyer = Phone reseller, static machine ID

How much $$ is at risk?What is “normal” for this customer?What “bad” profiles does this match?

Geolocate IP

Convert geo to country code

Flag on Mismatch

Cart Category

Merch Risk Level

Date Added

Address Type

String Matching

Customer Profile

Device IDDevice HistoryTXN-$-AMT

Churn Risk, CLV, ...TXNs, logins, ...

Stolen CC, Collusion

Page 52: 2013.10 Operating * by the Numbers

Model TrainingSome algorithms:- Regression: Determines the best equation describe

relationship between control variable and independent variables!

Linear Regression: Best equation is a line!Logistic Regression: Best equation is a curve (exponential properties)!

- Bayesian: Used to estimate regression models, useful when working w/small data sets !

- Neural Nets: Can approximate any type of non-linear function, often highly predictive, but doesn’t explain the relationship between control and independent variables

Page 53: 2013.10 Operating * by the Numbers

LOGISTIC <DEPVAR> <VAR1> <VAR2>...

Page 54: 2013.10 Operating * by the Numbers

p-value of significance, throw out if > .05

Variance in dependent variable explained by independent variables

Dependent Variable

Independent Variables

Factor odds of dependent go up

when independent var incremented

p-value should be < significance

level (.05)

Page 55: 2013.10 Operating * by the Numbers
Page 56: 2013.10 Operating * by the Numbers

Operating a Risk System

Disposition &

Time

Email CC# Items Total !Submit

Maybe !! No! !! Yes!! !!SuOutcomeSuAttempt

Black & Whitelists

Machine Learning

Velocity & Spend caps

Geo & IP Logic

Linking

Data• Reporting • Metrics • Analysis • Modeling

Good Bad Indeterminate

Page 57: 2013.10 Operating * by the Numbers

The Better Mousetrap

Automates defensive action x-platform

- Fast !

- Accurate!

- Cheap

In Real TimeIn Time to Minimize

LossReasonable False PositivesAs good as a human specialistReduces More Loss than Cost

CreatedCheaper than

Manual intervention

Page 58: 2013.10 Operating * by the Numbers

GAIN

More gain/lift = more efficient predictionsCatch as much as possible (as much of the “bads”)Minimize the overall affected

% of population

Page 59: 2013.10 Operating * by the Numbers

Cos

t

Number of Defects Produced

Cost of Control

Cost of Defects

Total Cost

“Alice: Which way should I go? Cat: That depends on where you are going. Alice: I don’t know. Cat: Then it doesn’t matter which way you go.” ― Lewis Carroll, Alice in Wonderland

Page 60: 2013.10 Operating * by the Numbers

% of populationC

ost

Number of Defects Produced

Cost of Control

Cost of Defects

CV

Total CostCV

Page 61: 2013.10 Operating * by the Numbers

Finding the * approach in the wild! Operating * by the numbers in many disciplines!

Automation!Optimization!Forecasting / Prediction!

! Such as…!Science !Finance!Marketing / Advertising!Software Development!Site/Network Ops!Manufacturing!Military

Is all fun and game until you are need of put it in production – @devopsborat

Page 62: 2013.10 Operating * by the Numbers

Beg, Borrow, Steal! A/B Testing!! Control Charts!! Highly engaged

change management!! Sample strategy!! Instrument

everything!! Poka-Yoke

Page 63: 2013.10 Operating * by the Numbers

RecapOperating systems effectively means:- Using data to understand and improve

performance!- Using tools to:!

- Automate (Efficiency, Scale, Standardization)!- Optimize (Set goals cognizant of tradeoffs)!- Forecast / Predict (Plan, course correct)!

Designing data-driven defenses- Decisions that can be automated w/data!- Where/what data sets to use!- Business drivers to keep in mind !Numbers, Numbers, Numbers

p (bad)f(variable A + Variable B + ...)

Page 64: 2013.10 Operating * by the Numbers

Prediction is very difficult, especially about the future

Niels Bohr

Allison Miller@selenakyle

Page 65: 2013.10 Operating * by the Numbers

Metrics vs Analytics

METRICS ANALYTICS

Page 66: 2013.10 Operating * by the Numbers

Such as...Metrics Analytics

$ Loss Txns Purchase trends of high loss users

# Compromised Accts IP Sources of bad login attempts

% of Spam Messages Delivered Spam subject lines generating most clicks

Minutes of downtime Most process-intensive applications

# Customer Contacts Generated Highest-contact exception flows

Page 67: 2013.10 Operating * by the Numbers

The first rule of any technology used in a

business is that automation applied to an efficient operation

will magnify the efficiency. "

The second is that automation applied to

an inefficient operation will

magnify the inefficiency."–Bill Gates