SlideShare une entreprise Scribd logo
1  sur  19
Télécharger pour lire hors ligne
Strategic  Prototyping  for  
Developing  Big  Data  Systems
SATURN  2016
May  2-­5,  San  Diego
Hong-­Mei  Chen,  University  of  Hawaii  
Serhiy Haziyev,  SoftServe Inc.
Olha Hrytsay,  SoftServe Inc.
Rick  Kazman,  University  of  Hawaii  and  SEI/CMU
Agenda
Small &  Big  
Data  Systems
Types  of  
Prototypes
RASP Model Discussion
Agenda
Small &  Big  
Data  Systems
Types  of  
Prototypes
RASP Model Discussion
Small  (Traditional)  vs  Big  Data  Systems
Traditional Analytics  (BI) Big  Data  Analytics
ETL
Data
WarehousesOLAP	
  Cubes
Reporting/BI
Structured	
  Data
Unstructured	
  Data
Semi-­‐
Structured	
  DataStructured	
  Data
NoSQL	
  Databases
Hadoop/Map	
  
Reduce
Search	
  Engines
MPP	
  Data
Warehouses
Reporting/BI Machine	
  Learning
Big  Data  Systems  Challenges
• The	
  five	
  V’s	
  of	
  big	
  data	
  (Volume,	
  Variety,	
  Velocity,	
  Veracity,	
  and	
  Value)
• Paradigm	
  shifts	
  (Data	
  Lake,	
  Polyglot	
  Persistence,	
  Lambda	
  Architecture,	
  etc.)
• The	
  short	
  history	
  of	
  big	
  data	
  system	
  development
• Rapid	
  technology	
  changes
• The	
  difficulty	
  of	
  selecting	
  big	
  data	
  technology
Agenda
Small &  Big  
Data  Systems
Types  of  
Prototypes
RASP Model Discussion
Why  Prototyping  is  Important?
Typical	
  motivations	
  for	
  prototyping:
• Requirements	
  are	
  uncertain
• Technologies	
  are	
  new
• No	
  comparable	
  system	
  has	
  been	
  previously	
  
developed
• No	
  full	
  buy-­‐in	
  from	
  the	
  business
Architectural	
  analysis	
  alone	
  can	
  not	
  
address	
  these	
  risks!
They	
  said	
  they	
  didn’t	
  need
a	
  prototype
Types  of  Prototypes
Throwaway	
  Prototype	
  
(Proof-­‐of-­‐Concept)Horizontal	
  Prototype
Vertical
Evolutionary	
  Prototype
Minimum	
  Viable	
  
Product	
  (MVP)
When  and  Why  to  Prototype?
Find	
  more	
  info	
  at:	
  “Strategic	
  Prototyping	
  for	
  Developing	
  Big	
  Data	
  Systems”,	
  IEEE	
  
Software,	
  March-­‐April,	
   2016
Initial	
  
Architecture
Analysis
Vertical
Evolutionary	
  
Prototype
PoC
MVP
Rapid	
  Horizontal	
  
Prototype
Project	
  timeline	
  (When?)
• Identification	
  of	
  missing,	
  conflicting or	
  ambiguous	
  architectural	
  requirements
• Creation	
  of	
  initial	
  architecture	
  design	
  and	
  selection	
  of	
  candidate	
  technologies
Goals	
  (Why?):
• Confirmation	
  of	
  user	
  interface	
  requirements	
  and	
  system	
  scope
• Demonstration	
  version	
  of	
  the	
  system	
  to	
  obtain	
  buy-­‐in	
  from	
  the	
  business
• Integration	
  of	
  selected	
  technologies
• Clarification	
  of	
  complex	
  requirements
• Testing	
  critical	
  functionality	
  and	
  quality	
  attribute	
  scenarios
• Validation	
  of	
  technologies	
  and	
  scenarios	
  that	
  pose	
  risks
PoCs
• Getting	
  early	
  feedback	
  from	
  end	
  users	
  and	
  updating	
  the	
  product	
  accordingly
• Presentation	
  of	
  a	
  working	
  version	
  to	
  a	
  trade	
  show	
  or	
  customer	
  event
• Evaluation	
  of	
  team	
  progress	
  and	
  alignment
Agenda
Small &  Big  
Data  Systems
Types  of  
Prototypes
RASP Model Discussion
We  created  RASP (Risk-­based  Architecture-­centric  Strategic  Prototyping)  to  provide  
guidance  on  how  to  employ  strategic  prototyping  for  risk  management.  
The  RASP  model  can  stand  alone,  but  is  ideally  integrated  with  an  architecture-­centric  
agile  development  methodology,  such  as  BDD  (Big  Data  Design).
The  RASP  Model
BDD  and  RASP
RASP  Model:  A  strategic-­prototyping  decision  flowchart  
Initial  
Architecture
AnalysisAssess  existing  
system  and   identify  
gaps  that  pose  risks  
for  new  requirements
Is  this  a  green  
field  system  
design?
Yes
Perform  architecture  
analysis,  and  select  a  
reference  
architecture   and  
candidate  
technologies
No
Perform  architecture  
analysis,  update  the  
existing  architecture,  
and  select  candidate  
technologies   to  
replace  or  augment  
existing  technologies
Evolutionary  
Prototype
Go  to  throwaway  
prototype  chart  for  
each  technology  
that  poses  a  risk
Is  there  a  
significant  risk  
with  a  selected  
technology?
No
Integrate  
technologies,   test  
critical  
functionality  and  
quality  attribute  
scenarios
Are  there  issues  
discovered  with  
any  technologies?Yes
Reconsider   the  
technology  
selection,  and  go  
to  throwaway  
prototype  chart
Yes
No
RASP  Model:  A  strategic-­prototyping  decision  flowchart  
Throwaway  Prototype
Yes
Is  the  selected  
technology  new  on  the  
market?
Was  it  used  
successfully  before  
for  similar  
scenarios?
No
Have   trusted
sources  “proven”  the  
technology  for  specific  
scenarios?
No
Create  rapid  
(throwaway)  prototype  
to  mitigate  risks
Does  the  prototype  
satisfy  the  specific  
scenarios?
Yes
Are  there  new  
requirements  that  
pose  technology  
risks?No
Yes
No
Yes
Are  there  more  
configurations,  data  
models,  resources  to  
try?No
Yes
No
Is  it  possible  to  
“soften”  any  
requirements?
No
Change  candidate  
technology
Yes
9  case  studies  were  used  to  validate  RASP
Diverse  domains:  Network  Security/Intrusion  Prevention,  Online  Coupon  Web  Analytics  
Platform,  Cloud-­based  Mobile  App  Development  Platform,  Telecom  E-­tailing  platform,  etc.
Diverse  BD  requirements:  data  volume,  latency,  scalability
Validation
1. Architecture  analysis  might  be  the  only  feasible  option  when  you  need  to  make  early  
decisions  
2. Architecture  analysis  alone  is  insufficient  to  prove  many  important  system  properties
3. Architecture  analysis  complements  vertical  evolutionary  prototyping
4. An  evolutionary  prototype  can  effectively  mitigate  risk  if  you  implement  it  as  a  skeleton  
5. Vertical  evolutionary  prototyping  might  need  to  be  augmented  with  throwaway  
prototypes
6. Throwaway  prototypes  work  best  when  you  need  to  quickly  evaluate  a  technology  
7. MVP  is  more  of  a  business  decision  than  a  decision  driven  simply  by  technological  risk  
Summary:  7  Guidelines
Agenda
Small &  Big  
Data  Systems
Types  of  
Prototypes
RASP Model Discussion
Risk  analysis  has  been  advocated  for  controlling  the  evolutionary  prototyping  
process.  
Our  research  results  demonstrate  that  an  architecture-­centric  design  
methodology  such  as  BDD  makes  risk  management  explicit,  systematic  and  cost-­
effective.  
It  provides  a  basis  for  value  discovery  with  stakeholders,  for  reasoning  about  
risks,  for  planning  and  estimating  cost  and  schedule,  and  for  supporting  
experimentation.  
The  RASP  model  offers  practical  guidelines  for  strategic  prototyping,  combining  
architecture  analysis  and  a  variety  of  prototyping  techniques.      
Conclusions
Strategic Prototyping.SATURN

Contenu connexe

Similaire à Strategic Prototyping.SATURN

Current Trends and Challenges in Big Data Benchmarking
Current Trends and Challenges in Big Data BenchmarkingCurrent Trends and Challenges in Big Data Benchmarking
Current Trends and Challenges in Big Data Benchmarking
eXascale Infolab
 
12Nov13 Webinar: Big Data Analysis with Teradata and Revolution Analytics
12Nov13 Webinar: Big Data Analysis with Teradata and Revolution Analytics12Nov13 Webinar: Big Data Analysis with Teradata and Revolution Analytics
12Nov13 Webinar: Big Data Analysis with Teradata and Revolution Analytics
Revolution Analytics
 
Levin_Michael_2016-04
Levin_Michael_2016-04Levin_Michael_2016-04
Levin_Michael_2016-04
Michael Levin
 

Similaire à Strategic Prototyping.SATURN (20)

[Webinar] Getting to Insights Faster: A Framework for Agile Big Data
[Webinar] Getting to Insights Faster: A Framework for Agile Big Data[Webinar] Getting to Insights Faster: A Framework for Agile Big Data
[Webinar] Getting to Insights Faster: A Framework for Agile Big Data
 
Agile Big Data Analytics Development: An Architecture-Centric Approach
Agile Big Data Analytics Development: An Architecture-Centric ApproachAgile Big Data Analytics Development: An Architecture-Centric Approach
Agile Big Data Analytics Development: An Architecture-Centric Approach
 
Crossing the Analytics Chasm and Getting the Models You Developed Deployed
Crossing the Analytics Chasm and Getting the Models You Developed DeployedCrossing the Analytics Chasm and Getting the Models You Developed Deployed
Crossing the Analytics Chasm and Getting the Models You Developed Deployed
 
Current Trends and Challenges in Big Data Benchmarking
Current Trends and Challenges in Big Data BenchmarkingCurrent Trends and Challenges in Big Data Benchmarking
Current Trends and Challenges in Big Data Benchmarking
 
12Nov13 Webinar: Big Data Analysis with Teradata and Revolution Analytics
12Nov13 Webinar: Big Data Analysis with Teradata and Revolution Analytics12Nov13 Webinar: Big Data Analysis with Teradata and Revolution Analytics
12Nov13 Webinar: Big Data Analysis with Teradata and Revolution Analytics
 
MLOps and Data Quality: Deploying Reliable ML Models in Production
MLOps and Data Quality: Deploying Reliable ML Models in ProductionMLOps and Data Quality: Deploying Reliable ML Models in Production
MLOps and Data Quality: Deploying Reliable ML Models in Production
 
KDD 2019 IADSS Workshop - Skills to Master Machine Learning and Data Science ...
KDD 2019 IADSS Workshop - Skills to Master Machine Learning and Data Science ...KDD 2019 IADSS Workshop - Skills to Master Machine Learning and Data Science ...
KDD 2019 IADSS Workshop - Skills to Master Machine Learning and Data Science ...
 
Big Data SE vs. SE for Big Data
Big Data SE vs. SE for Big DataBig Data SE vs. SE for Big Data
Big Data SE vs. SE for Big Data
 
Architecting Agile Data Applications for Scale
Architecting Agile Data Applications for ScaleArchitecting Agile Data Applications for Scale
Architecting Agile Data Applications for Scale
 
Fried data summit big data for lob content
Fried data summit big data for lob contentFried data summit big data for lob content
Fried data summit big data for lob content
 
Levin_Michael_2016-04
Levin_Michael_2016-04Levin_Michael_2016-04
Levin_Michael_2016-04
 
big_data_case_studies.pdf
big_data_case_studies.pdfbig_data_case_studies.pdf
big_data_case_studies.pdf
 
BDW16 London - Deenar Toraskar, Think Reactive - Fast Data Key to Efficient C...
BDW16 London - Deenar Toraskar, Think Reactive - Fast Data Key to Efficient C...BDW16 London - Deenar Toraskar, Think Reactive - Fast Data Key to Efficient C...
BDW16 London - Deenar Toraskar, Think Reactive - Fast Data Key to Efficient C...
 
Gse uk-cedrinemadera-2018-shared
Gse uk-cedrinemadera-2018-sharedGse uk-cedrinemadera-2018-shared
Gse uk-cedrinemadera-2018-shared
 
The Impact of SMACT on the Data Management Stack
The Impact of SMACT on the Data Management StackThe Impact of SMACT on the Data Management Stack
The Impact of SMACT on the Data Management Stack
 
One Size Doesn't Fit All: The New Database Revolution
One Size Doesn't Fit All: The New Database RevolutionOne Size Doesn't Fit All: The New Database Revolution
One Size Doesn't Fit All: The New Database Revolution
 
Choosing technologies for a big data solution in the cloud
Choosing technologies for a big data solution in the cloudChoosing technologies for a big data solution in the cloud
Choosing technologies for a big data solution in the cloud
 
From Business Idea to Successful Delivery by Serhiy Haziyev & Olha Hrytsay, S...
From Business Idea to Successful Delivery by Serhiy Haziyev & Olha Hrytsay, S...From Business Idea to Successful Delivery by Serhiy Haziyev & Olha Hrytsay, S...
From Business Idea to Successful Delivery by Serhiy Haziyev & Olha Hrytsay, S...
 
BDVe Webinar Series - Designing Big Data pipelines with Toreador (Ernesto Dam...
BDVe Webinar Series - Designing Big Data pipelines with Toreador (Ernesto Dam...BDVe Webinar Series - Designing Big Data pipelines with Toreador (Ernesto Dam...
BDVe Webinar Series - Designing Big Data pipelines with Toreador (Ernesto Dam...
 
MLOps - The Assembly Line of ML
MLOps - The Assembly Line of MLMLOps - The Assembly Line of ML
MLOps - The Assembly Line of ML
 

Strategic Prototyping.SATURN

  • 1. Strategic  Prototyping  for   Developing  Big  Data  Systems SATURN  2016 May  2-­5,  San  Diego Hong-­Mei  Chen,  University  of  Hawaii   Serhiy Haziyev,  SoftServe Inc. Olha Hrytsay,  SoftServe Inc. Rick  Kazman,  University  of  Hawaii  and  SEI/CMU
  • 2. Agenda Small &  Big   Data  Systems Types  of   Prototypes RASP Model Discussion
  • 3. Agenda Small &  Big   Data  Systems Types  of   Prototypes RASP Model Discussion
  • 4. Small  (Traditional)  vs  Big  Data  Systems Traditional Analytics  (BI) Big  Data  Analytics ETL Data WarehousesOLAP  Cubes Reporting/BI Structured  Data Unstructured  Data Semi-­‐ Structured  DataStructured  Data NoSQL  Databases Hadoop/Map   Reduce Search  Engines MPP  Data Warehouses Reporting/BI Machine  Learning
  • 5. Big  Data  Systems  Challenges • The  five  V’s  of  big  data  (Volume,  Variety,  Velocity,  Veracity,  and  Value) • Paradigm  shifts  (Data  Lake,  Polyglot  Persistence,  Lambda  Architecture,  etc.) • The  short  history  of  big  data  system  development • Rapid  technology  changes • The  difficulty  of  selecting  big  data  technology
  • 6. Agenda Small &  Big   Data  Systems Types  of   Prototypes RASP Model Discussion
  • 7. Why  Prototyping  is  Important? Typical  motivations  for  prototyping: • Requirements  are  uncertain • Technologies  are  new • No  comparable  system  has  been  previously   developed • No  full  buy-­‐in  from  the  business Architectural  analysis  alone  can  not   address  these  risks! They  said  they  didn’t  need a  prototype
  • 8. Types  of  Prototypes Throwaway  Prototype   (Proof-­‐of-­‐Concept)Horizontal  Prototype Vertical Evolutionary  Prototype Minimum  Viable   Product  (MVP)
  • 9. When  and  Why  to  Prototype? Find  more  info  at:  “Strategic  Prototyping  for  Developing  Big  Data  Systems”,  IEEE   Software,  March-­‐April,   2016 Initial   Architecture Analysis Vertical Evolutionary   Prototype PoC MVP Rapid  Horizontal   Prototype Project  timeline  (When?) • Identification  of  missing,  conflicting or  ambiguous  architectural  requirements • Creation  of  initial  architecture  design  and  selection  of  candidate  technologies Goals  (Why?): • Confirmation  of  user  interface  requirements  and  system  scope • Demonstration  version  of  the  system  to  obtain  buy-­‐in  from  the  business • Integration  of  selected  technologies • Clarification  of  complex  requirements • Testing  critical  functionality  and  quality  attribute  scenarios • Validation  of  technologies  and  scenarios  that  pose  risks PoCs • Getting  early  feedback  from  end  users  and  updating  the  product  accordingly • Presentation  of  a  working  version  to  a  trade  show  or  customer  event • Evaluation  of  team  progress  and  alignment
  • 10. Agenda Small &  Big   Data  Systems Types  of   Prototypes RASP Model Discussion
  • 11. We  created  RASP (Risk-­based  Architecture-­centric  Strategic  Prototyping)  to  provide   guidance  on  how  to  employ  strategic  prototyping  for  risk  management.   The  RASP  model  can  stand  alone,  but  is  ideally  integrated  with  an  architecture-­centric   agile  development  methodology,  such  as  BDD  (Big  Data  Design). The  RASP  Model
  • 13. RASP  Model:  A  strategic-­prototyping  decision  flowchart   Initial   Architecture AnalysisAssess  existing   system  and   identify   gaps  that  pose  risks   for  new  requirements Is  this  a  green   field  system   design? Yes Perform  architecture   analysis,  and  select  a   reference   architecture   and   candidate   technologies No Perform  architecture   analysis,  update  the   existing  architecture,   and  select  candidate   technologies   to   replace  or  augment   existing  technologies Evolutionary   Prototype Go  to  throwaway   prototype  chart  for   each  technology   that  poses  a  risk Is  there  a   significant  risk   with  a  selected   technology? No Integrate   technologies,   test   critical   functionality  and   quality  attribute   scenarios Are  there  issues   discovered  with   any  technologies?Yes Reconsider   the   technology   selection,  and  go   to  throwaway   prototype  chart Yes No
  • 14. RASP  Model:  A  strategic-­prototyping  decision  flowchart   Throwaway  Prototype Yes Is  the  selected   technology  new  on  the   market? Was  it  used   successfully  before   for  similar   scenarios? No Have   trusted sources  “proven”  the   technology  for  specific   scenarios? No Create  rapid   (throwaway)  prototype   to  mitigate  risks Does  the  prototype   satisfy  the  specific   scenarios? Yes Are  there  new   requirements  that   pose  technology   risks?No Yes No Yes Are  there  more   configurations,  data   models,  resources  to   try?No Yes No Is  it  possible  to   “soften”  any   requirements? No Change  candidate   technology Yes
  • 15. 9  case  studies  were  used  to  validate  RASP Diverse  domains:  Network  Security/Intrusion  Prevention,  Online  Coupon  Web  Analytics   Platform,  Cloud-­based  Mobile  App  Development  Platform,  Telecom  E-­tailing  platform,  etc. Diverse  BD  requirements:  data  volume,  latency,  scalability Validation
  • 16. 1. Architecture  analysis  might  be  the  only  feasible  option  when  you  need  to  make  early   decisions   2. Architecture  analysis  alone  is  insufficient  to  prove  many  important  system  properties 3. Architecture  analysis  complements  vertical  evolutionary  prototyping 4. An  evolutionary  prototype  can  effectively  mitigate  risk  if  you  implement  it  as  a  skeleton   5. Vertical  evolutionary  prototyping  might  need  to  be  augmented  with  throwaway   prototypes 6. Throwaway  prototypes  work  best  when  you  need  to  quickly  evaluate  a  technology   7. MVP  is  more  of  a  business  decision  than  a  decision  driven  simply  by  technological  risk   Summary:  7  Guidelines
  • 17. Agenda Small &  Big   Data  Systems Types  of   Prototypes RASP Model Discussion
  • 18. Risk  analysis  has  been  advocated  for  controlling  the  evolutionary  prototyping   process.   Our  research  results  demonstrate  that  an  architecture-­centric  design   methodology  such  as  BDD  makes  risk  management  explicit,  systematic  and  cost-­ effective.   It  provides  a  basis  for  value  discovery  with  stakeholders,  for  reasoning  about   risks,  for  planning  and  estimating  cost  and  schedule,  and  for  supporting   experimentation.   The  RASP  model  offers  practical  guidelines  for  strategic  prototyping,  combining   architecture  analysis  and  a  variety  of  prototyping  techniques.       Conclusions