Upload
pravin-nadkarni
View
110
Download
0
Embed Size (px)
Citation preview
25 DATA PRINCIPLES
TO ABIDE BY
PRAVIN NADKARNI
Copyright © 2017 Pravin Nadkarni
A data value should not be maintained by multiple systems
I’ve got to call the customer about their order …
But, which number should I call ???
The phone number in CRM is different…
from the one in the Accounts system …
than the one in the Orders system!
2Copyright © 2017 Pravin Nadkarni
1. Data should have One Master
2. Store data as displayed
On the fly processing
Database User Interface
Report User
Do not apply business rules on-the-fly
3Copyright © 2017 Pravin Nadkarni
User Training Manual
Check the Order StatusIf “In Queue” or “In Progress” then Order Processing is as statedIf “Complete” then Check the Invoice Status .. if it is “Paid”, Check the Dispatch Date … if <= current date Get the Dispatch Batch Number Check its status … If it is “Mailed” then Order Processing is “Complete” Otherwise Order Processing is “In Progress”
Do not train users to derive correct values in their heads
If the Order is still being processed, why
does its Status say “Complete”?
4Copyright © 2017 Pravin Nadkarni
3. Reflect status accurately in data
It should not mean multiple things
Then, what’s STUPID ?
5Copyright © 2017 Pravin Nadkarni
If the customer status is SMART that means the customer is Single Male
from Albania who has Requested Termination.
4. Keep data value simple and atomic
Prevent misinterpretation
6Copyright © 2017 Pravin Nadkarni
He was to meet me at the pool
She was to meet me at the pool
5. Avoid ambiguity in data values
6. Data meaning should be unique
But, its brinjal!
No, its eggplant!Its aubergine!
7Copyright © 2017 Pravin Nadkarni
Keep them distinct
“FB” on NASDAQ until 2017 :
“FB” on NASDAQ in 2017 : Franco Buena’s Shady Inc.
8Copyright © 2017 Pravin Nadkarni
And I thought I was buying Facebook shares !!!
People and processes rely on the data definitions
7. Do not alter data meaning over time
8. Adopt industry standard codes and structures
Huh???
Simplify communication with other parties
9Copyright © 2017 Pravin Nadkarni
Qity jalo myli gintu?
9. Derive data onceSpare them the reinvention effort and agony!
10Copyright © 2017 Pravin Nadkarni
Total Cost =
A + B + M
Total Cost = B + C + ???
Total Cost = A + B + C + D + E
When did we first land on the
moon?1776?
Otherwise, how would you know when events occurred?
11Copyright © 2017 Pravin Nadkarni
10. Timestamp updates to data
Provide means to void them
Users press the delete buttonno matter what they claim or deny.
It is best to void the records.
12Copyright © 2017 Pravin Nadkarni
Read My Lips:I DO NOT
Delete
I DID NOT press the Delete
button!
I DID NOT either!
11. Systems should not drop records
Use only as intended by its designer
13Copyright © 2017 Pravin Nadkarni
12. Do not repurpose data structures
General purpose configurable services enable wider use
14Copyright © 2017 Pravin Nadkarni
13. Design data services for reuse
Someone will mine valuable insights from it one day
15Copyright © 2017 Pravin Nadkarni
Gather data that may not be necessary for processing but provides deep visibility into operations, interactions and behavior.
I wonder if there is any correlation
between …
I wonder how many customers tried to find the answer on our website before
calling …
14. Collect all possible data
Get snapshots of how data changed since its creation
16Copyright © 2017 Pravin Nadkarni
15. Capture data change history
Connections make them valuable
17Copyright © 2017 Pravin Nadkarni
Paris Train Connections
16. Connect the data
Infrastructure should scale to meet the demand
18Copyright © 2017 Pravin Nadkarni
17. Plan ahead for data growth
Authorized users should have easy access to information
19Copyright © 2017 Pravin Nadkarni
Would have been nice if it
had elevators!!Magnificent
Building!
18. Make data accessible
You do not know what will get entered on the screen!
20Copyright © 2017 Pravin Nadkarni
19. Validate data at entry
Fix the root. Otherwise, you have to repair it again and again and ...
21Copyright © 2017 Pravin Nadkarni
20. Correct data error at its source
Upstream and Downstream
22Copyright © 2017 Pravin Nadkarni
“… could not wait for foundation to be built. It would have impacted our schedule.”
21. Be mindful of data dependencies
Detect and prevent undesirable outcomes
23Copyright © 2017 Pravin Nadkarni
22. Apply data controls
It simplifies training, development and maintenance
24Copyright © 2017 Pravin Nadkarni
23. Adopt uniform practices
Users should have the minimum access necessary to do their jobs effectively
One breach is all it takes!25
Copyright © 2017 Pravin Nadkarni
24. Protect data
And finally, the Mother of All Principles
Please please ...Think beyond your little
systems !
Think Enterprise !!
26
Keep your sight on the big picture. Always.Consider long term impact of all decisions.
Copyright © 2017 Pravin Nadkarni
TO SUMMARIZE …
27Copyright © 2017 Pravin Nadkarni
THINK ENTERPRISE
Copyright © 2017 Pravin Nadkarni
DATA SHOULD HAVEONE MASTERREFLECT STATUS ACCURATELY IN DATA
KEEP DATA VALUE SIMPLE AND ATOMICAVOID AMBIGUITY IN DATA VALUES
STORE DATA ASDISPLAYEDDO NOT ALTER DATA MEANING OVER TIME
PLAN AHEAD
DERIVE DATA ONCE
TIMESTAMP UPDATES TO DATA
SYSTEMS SHOULD NOT DROP RECORDS
DO NOT REPURPOSE DATA STRUCTURES
DESIGN DATA SERVICES FOR REUSECOLLECT ALL CAPTURE DATA CHANGE
HISTORY
MAKE DATA ACCESSIBLEVALIDATE DATA
CORRECT DATA ERROR AT ITS SOURCE
PROTECT DATA
POSSIBLE DATA AT ENTRY
CONNECT THE DATA SHOULD BE
UNIQUE
FOR DATA GROWTH
BE MINDFUL OF
ADOPT INDUSTRY STANDARD CODES AND STRUCTURES
DATA MEANING
DEPENDENCIES
APPLY DATA CONTROLS
ADOPT UNIFORM PRACTICES