Applying Scrum in an Interdisciplinary Project using ...

17 downloads 0 Views 1MB Size Report
TAILORING SCRUM FOR ACADEMIC PURPOSES. 4. THE IPBL*. The project development and its challenges. 5. CONCLUSION. (*) IPBL = Interdisciplinary ...
Applying Scrum in an Interdisciplinary Project using Big Data, Internet of Things, and Credit Cards Rene  Esteves  Maria,  Luiz  Antonio  Rodrigues  Junior,  Luiz  Eduardo  Guarino  de  Vasconcelos,  Adriano  Fonseca   Mancilha  Pinto,  Paulo  Takachi  Tsoucamoto,  Henrique  Nunweiler  Angelim  Silva,  Airton  Lastori,  Adilson   Marques  da  Cunha,  Luiz  Alberto  Vieira  Dias     Computer  Science  Division     AeronauIcs  InsItute  of  Technology,  ITA     Sao  Jose  dos  Campos,     Brazil     {rene.stvs,  lrodrigues5150,  du.guarino,  amancilha,  ptakachi,  henriqueprogramacao,  alastori}@gmail.com,   {cunha,  vdias}@ita.br  

Agenda 1.  2.  3.  4. 

INTRODUCTION     BACKGROUND     TAILORING  SCRUM  FOR  ACADEMIC  PURPOSES     THE  IPBL*  

               The  project  development  and  its  challenges    

5.  CONCLUSION      

  (*)  IPBL  =  Interdisciplinary  Problem  Based  Learning  

1. INTRODUCTION Motivation

◦ According   to   Gartner,   McKinsey,   and   IDC,   the   Internet   of   Things   (IoT)   represents  the  technology  trend  for  next  years   ◦ In  2014,  more  than  12  billion  devices  were  connected  to  the  Internet     ◦ Consequently,  the  data  volume  has  increased  exponenIally  

1. INTRODUCTION The Project

  During   the   first   semester   of   2014,   courses   at   the   Brazilian   AeronauIcs   InsItute   of   Technology   (InsItuto   Tecnologico   de   AeronauIca   -­‐   ITA   -­‐   Brazil)  have  produced,  as  a  capstone  project,  a  prototype  named  BDI-­‐C3*:     ◦ Big  Data,  Internet  of  Things,  and  Credit  Cards     ◦ The   BDI-­‐C3   was   academically   developed   as   a   Proof   of   Concept   (PoC),   using  the  approach  of  IPBL  (Interdisciplinary  Problem  Based  Learning)       (*)  in  Portuguese,  Banco  de  Dados,  Internet  das  Coisas  e  Cartoes  de  Credito  –  BDI-­‐C3  

2. BACKGROUND Big Data Age

◦ Big   Data   are   large   pools   of   data   that   can   be   captured,   communicated,  aggregated,  stored,  and  analyzed   ◦ Big  Data  can  be  describe  by  5  V’s     ◦  Volume   ◦  Velocity     ◦  Variety     ◦  Value     ◦  Veracity  

2. BACKGROUND The Internet of Things (IoT)

◦ Internet   of   Things   (IoT)   is   a   compuIng   concept   that   describes   a   future   where   everyday   physical   objects   will   be   able   to   be   connected   to   the   Internet,   idenIfy   themselves,   and   interact   to   other  devices    

                                                                                                                                       Source:  techpedia.com,  2014    

2. BACKGROUND Agile Method Scrum

◦ Scrum   is  a  framework  with  roots  from  Control  Theory,  which  has   been  used  for  years,  to  address  complex  adapIve  problems     ◦ It   was   used   in   order   to   manage   sogware   development,   its   processes,  techniques,  and  best  prac@ces  

3. TAILORING SCRUM FOR ACADEMIC PURPOSES The Project Settings

◦ The   BDI-­‐C3   project   conducted   during   17   weeks,   has   involved   approximately  forty  grad  students  and  two  professors,  within  a   set  of  three  courses  taught  at  the  Graduate  Program  in  Electronic   Engineering  and  Computer  Science  at  ITA   ◦ Students   of   the   Tes@ng   Course   (CE-­‐229)   acted   as   POs   and   Testers,   while   students   from   the   other   courses   (Database   Systems   Project   –   CE-­‐240   and   Informa@on   Technologies   –   CE-­‐245)  have  acted  as  Development  Team  members  

3. TAILORING SCRUM FOR ACADEMIC PURPOSES Communication

◦ Poten@al   communica@on   problems   were   mi@gated  with   the   use   of  collaboraIve  and  free  tools  available  on  the  Internet,  such  as   Google   Docs   Suite,   Google   Drive,   Google   Hangouts,   Skype,   Github,  Trello,  among  others     ◦ To   centralize   shared   informaIon,   a   website   for   the   project   was   created  using  Google  Sites  

4. THE IPBL

Sprint 0 - Safe Project •  Sprint   0   is   a   kind   of   project-­‐before-­‐the-­‐ project   where   POs   can   work   toward   creaIng   a n   i n i I a l   p r o d u c t   backlog,   and   team   members   sehng   up   t h e   t e c h n i c a l   environment     •  TesIng   students   have   created   the   product   vision   as   an   important   agile  arIfact  

4. THE IPBL

Sprint 0 - Forming Phase •  In  order  to  help   students  to   understand  the   problem,  the  first   version  of  a  possible   architecture  design   was  generated  

4. THE IPBL

Sprint 1 - Proposal for the Development Enviroment  

4. THE IPBL

Sprint 1 - Storming Phase   ◦ This   Sprint   aimed   to   define   replica@on   mechanism   of   data   between  data  sources  (structured  to  unstructured)     ◦  This   challenge   was   overcome   with   the   use   of   a   tool   called   MySQL   Applier   for  Hadoop  (Happlier)    

◦ Another   goal   of   this   sprint   was   the   automaIc   generaIon   of   graphics,   in   order   to   help   fraud   analysts   to   detect   suspected   transacIons     ◦  This  goal  was  achieved  by  integraIng  the  architecture  with  the  R  System     ◦  In   order   to   idenIfy   suspected   transacIons,   the   upper   limit   from   boxplot,   Ls,   was  used:  

4. THE IPBL

Sprint 2 - Norming Phase ◦  During   the   2nd   Sprint   Planning,   four   features   were   proposed,   in   order   to   improve   students  technology  knowledge     ◦  All  these  features  were  documented  and  available  on  the  project  portal    

◦  The   first   feature   generated   a   comprehensive   documenta@on   on   the   required   technologies  used  in  the  VM  Cloudera  to  create  a  BDI-­‐C3  project  environment     ◦  This   documentaIon   was   collaboraIvely   generated   by   students   who   gained   knowledge   on   the   used  technologies  (Java,  Eclipse  IDE,  MySQL,  among  others)  during  the  project  development    

◦  The   second   feature   was   responsible   for   creaIng   an   account   on   Github   where   the   project   development   was   centralized   (e.g.   database   scripts,   R   scripts,   Java   applica@on)     ◦  In  order  to  assist  students,  a  complete  tutorial  on  how  to  use  the  Github  and  the  Git  with  Eclipse   IDE  was  prepared  

4. THE IPBL

Sprint 2 - Norming Phase ◦  The  result  of  the  third  feature  was  a  dataset  based  on  the  relaIonal  database  model   from  Sprint  1     ◦  The   dataset   loaded   the   main   tables   of   the   MySQL   database   related   to   transacIons   (i.e.   transacIons,  fraud,  locaIon,  media,  browser,  client  enIIes)     ◦  Each  data  transacIon  had  a  georeferenced  iden@fica@on  and  credit  card  number     ◦  The   transacIons   were   first   persisted   on   a   relaIonal   MySQL   database   and   then   instantly   replicated  to  the  HDFS  in  CSV  format,  via  MySQL  Hadoop  Applier    

◦  The   fourth   feature   has   helped   on   implemenIng   the   concept   of   IoT   creaIng   an   e-­‐ Commerce    

◦  The   Java   with   a   Spring   Framework   applica@on   was   defined,   having   integraIon   tools   that   facilitate  and  accelerate  the  development     ◦  As  Maven  does  to  manage  the  applicaIon  lifecycle  and  dependencies  control  and  Hibernate   also  does  for  data  persistence     ◦  The  MVC  (Model  View  Controller)  architecture  and  REST  API  were  also  used  

4. THE IPBL

Sprint 2 - Architecture •  Ager  features’   compleIon,  it   was  possible  to   generate  the   final  version  of   the  project   architecture  

_  

4. THE IPBL

Sprint 3 - Performing Phase ◦  In   order   to   improve   communicaIon   between   teams,   the   pracIce   of   Scrum   of   Scrums  was  used     ◦  3rd  Sprint  aimed  to  integrate  all  the  technologies  involved  in  the  project  into   a  single  applica@on     ◦  The  groups  were  divided  according  to  the  following  specialIes     ◦  (i)  e-­‐Commerce  (i.e.  Team  1),  working  with  REST  architecture     ◦  (ii)  Hive  (i.e.  Team  2),  analyzing  data  from  HDFS,  in  a  transparent  way  to  the  users     ◦  (iii)   Team   3   analyzed   the   client   fraud   contestaIons,   using   Hive   and   Happlier,   with   real   Ime   data  replicaIon     ◦  (iv)  Team  4  used  R  scripts  in  Java,  in  order  to  present  StaIsIcal  Analysis     ◦  ( v )   A r c g i s   O n l i n e   w a s   t h e   d u t y   o f   T e a m   5 ,   p r e s e n I n g   real  Ime  fraud  idenIficaIon  in  world  maps  

4. THE IPBL

Sprint 3 - Performing Phase ◦ The  tools  used  for  each  team  are  shown  

4. THE IPBL

The Final Presentation ◦ On   June   18,   2014,   the   students   performed   a   final   project   presentaIon  to  an  audience  composed  of  the  professors  and  guest   from  financial  insItuIons     ◦  The  alendees  have  appointed  as  a  posiIve  highlight,  the  use  of  free  tools   for  development  and  management   ◦  They  also  highlighted  the  transparent  use  of  Big  Data  technologies,  making  it   an  excellent  tool  for  analysts  operaIons  on  financial  transacIons  

5. CONCLUSION Inspection and Adaptation

◦ The   Sprint   RetrospecIves   was   remotely   conducted   using   the   Google  Drive     ◦  1st   Retrospec@ve   -­‐   students   described   that   the   internal   communicaIon   of   some  groups  was  impaired     ◦  2nd   Retrospec@ve   -­‐   it   was   noIced   that   the   developing   process   has   improved,  from  suggesIons  on  the  1st  RetrospecIve     ◦  3rd  Retrospec@ve   -­‐   students,   unanimously   agreed   that   the   Scrum   of   Scrums   pracIces  have  improved  the  project  development  

5. CONCLUSION Final Considerations

◦  The  experience  of  parIcipaIng  in  the  BDI-­‐C3  project  was  rewarding  in  terms   of   learning,   use   of   Big   Data   technologies,   Internet   of   Things,   and   agile   methods     ◦  This  successful  result  was  derived  from    

◦  (i)  the  use  of  a  IPBL  aligned  with  real  market  needs     ◦  (ii)  the  integra@on  of  students’  teams  from  other  graduate  courses     ◦  (iii)  the  use  of  agile  methods     ◦  (iv)  the  focus  on  sogware  working  delivery     ◦  (v)  the  choice  of  open-­‐source  tools  proved  to  be  a  success  on  large  scale  

◦  It   is   suggested   the   exploitaIon   of   specific   tools   to   provide   test   automa@on   for  Big  Data  (e.g.  MRunit  for  Map  Reduce  Tests)     ◦  In  this  way,  it  is  possible  to  explore  and  verify  that  these  tools  produce  safer  applicaIons  

ACKNOWLEDGMENTS The BDI-C3 Project 2014

  The  authors  of  this  paper  would  like  to  thank  the  Brazilian   AeronauIcs  InsItute  of  Technology  (ITA)  and  its  Electronic   and  Computer  Engineering  Graduate  Program  for  their   support,  during  the  development  of  this  BDI-­‐C3  project  

REFERENCES Gartner.  Published  in  STANFORD,  Conn.,  June  27,  2011.  Last  access:  09/09/2014.  Available  at:        

McKinsey.  McKinsey  Global  InsItute.  Ten  IT-­‐enabled  business  trends  for  the  decade  ahead.  May  2013.       IDC.  IDC’s  Top  10  Global  IT  Trends.  January  27,  2014.  Last  access:  17/08/2014.  Available  at:         Techopedia.  Internet  of  things  (IoT).  Last  access:  06/10/2014.  Available  at:         Schwaber,  Ken;  Beedle,  Mike.  "Agile  Sogware  Development  with  Scrum."  (2002).       Shayib,  Mohammed  A.  Applied  StaIsIcs,  1st  EdiIon.  1st  EdiIon.  2013.  

Suggest Documents