You are on page 1of 25

Building  Innova-ve  Apps  on  ServiceNow:  

from  Idea  to  Release  


a  year-­‐long  journey  to  deliver  customer  value…  

ALEXEY  KLIMENKO  
CO-­‐FOUNDER  &  CTO  
MobiChord  

© 2016 ServiceNow All Rights Reserved


Agenda  
•  IntroducJon  
−  What  this  session  is  about  
−  What  is  MobiChord  app  
−  How  the  MobiChord  app  was  conceived,  main  constraints  
−  Why  on  ServiceNow  PlaQorm  
•  Designing  for  value  -­‐  UX  
–  It  is  all  about  bringing  value  -­‐  understanding  personas  
–  UX  is  key,  the  Value  of  the  Portal    
–  Advanced  AnalyJcs  
•  How  it  is  all  built  
–  The  big  picture  
–  Portal:  from  Eureka  to  Geneva  
–  Data  warehouse  for  advanced  analyJcs  
–  Mass  data  integraJon  
•  Helsinki  -­‐  game  changer  for  UX  
–  Power  of  new  AngularJS  CMS  -­‐  Advanced  widgets  
•  Q&A  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved   2  
2  
© 2016 ServiceNow All Rights Reserved  
What  This  Session  Is  About  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved   3  
3  
© 2016 ServiceNow All Rights Reserved  
MobiChord  –  HolisJc  Expense  and  Asset  Management  for  Mobility    
Gives  you  the  right   Saves  money  with  
Saves  Jme  for  day-­‐to-­‐day  
“opJcs”  to  be  in  control   opJmizaJon  and  
ops  with  automaJon  
of  company’s  mobility   transparency  
(up  to  50%)  
(100%  visibility)   (up  to  25%)    

Automate  device/service  
Single  System  Of  Record  
changes  

Visualize  >  Analyze  >  Act   OpJmize  spend  

Integration Cloud

IoT Integration

Logos  shown  are  trademarks  or  registered  trademarks  of  their  respec4ve  owners  and  not  ServiceNow  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved   4  
4  
© 2016 ServiceNow All Rights Reserved  
MobiChord  Portal  Sneak  Peak

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved   5  
5  
© 2016 ServiceNow All Rights Reserved  
We  Have  Seen  Problems  and  We  Had  an  Idea  
I  do  not  have  reliable  CMDB  
AutomaJcally  maintain  CMDB  
of  mobile  devices  and  
through  integraJons  
services  

I  am  forced  to  “swivel-­‐chair”   Only  one  system  to  work  with  
among  systems  

I  can’t  understand  carrier   Cool  analyJcs  and  clear  data  via  


bills  as  they  are  extremely   automagic  carrier  integraJons  
complex  

It  takes  a  lot  of  effort  to   Automate  major  mobility  


manually  provision  mobility   changes  with  carriers  
changes    

I  do  not  know  where  to  start,   Great  user  experience  that  
how  to  get  answers  or  what   I  just  want  to  have   users  “just  get”  
to  do   somware  do  it  for  me!  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved   6  
6  
© 2016 ServiceNow All Rights Reserved  
Why  ServiceNow?    

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved   7  
7  
© 2016 ServiceNow All Rights Reserved  
ServiceNow  It  Is,  Now  What?  
AutomaJcally  maintain   How  do  we  handle  mass  
CMDB  through   data  and  complex  
integraJons   integraJons?  

How  to  integrate  all  


Only  one  system  to  work  
external  systems  
with  
effecJvely?    

Cool  analyJcs  and  clear   How  do  we  go  beyond  


data  via  automagic  
carrier  integraJons  
standard  ServiceNow  
reports?   ...
How  to  automate  
Automate  major  mobility  
complex  interacJons  
changes  with  carriers  
with  almost  no  APIs?  

Great  user  experience  


Now  we  need  to   Is  there  a  way  to  create  
Let  somware  do  the   figure  out  how  to  do   unique  UX  on  
that  users  “just  get”  
ServiceNow?  
work  for  us   it  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved   8  
8  
© 2016 ServiceNow All Rights Reserved  
Our  Path  

*taken  from  “Value  ProposiJon  Design:  How  to  Create  Products  and  Services  Customers  Want  “(Strategyzer)  by  Alexander  Osterwalder  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved   9  
9  
© 2016 ServiceNow All Rights Reserved  
It’s  All  About  Bringing  Value
Why  customer  understanding  and  UX  mauers  and  what  we  did  about  it  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved  
10  
10  
© 2016 ServiceNow All Rights Reserved  
It  Is  All  About  Delivering  Value  to  People  
•  We  create  apps  for  our  customers,  not  ourselves,  not  robots  
–  Who  are  the  people  to  use  our  app  
•  People  will  use  your  app  only  if  it  helps  them  to:  
–  Do  their  jobs  
–  Address  their  pains  
–  Create  gains  
•  You  have  to  understand  the  customer  before  you  move  forward!  

See How Great Value Propositions Depend on Understanding Customers:

*taken  from  “Value  ProposiJon  Design:  How  to  Create  Products  and  Services  Customers  Want  “(Strategyzer)  by  Alexander  Osterwalder  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved  
11  
11  
© 2016 ServiceNow All Rights Reserved  
Customer  Development  at  MobiChord  

Design/   Define   Create  each   Create  Value  


Check  fit   Test  
redesign   personas   persona  profile   Map  

Jobs  -­‐  What  customers   Features  -­‐  What  you   When  customers  are  
Person  or  group  of  
are  trying  to  get  done   plan  to  build   excited  -­‐  Important  
people  you  aim  to  
in  work  and  life   Pain  relievers  -­‐  How   jobs  are  addressed,  
deliver  value  to  with  
(funcJonal,  social,   your  relieve  pains   extreme  pains  are  
your  app  
emoJonal)   Gain  creators  -­‐  How   alleviated,  essenJal  
Pains  -­‐  What  annoys  or   your  features  create   gains  are  created  
prevents    (problems,   desired  outcomes  and  
risks,  bad  outcomes)   benefits  
Gains  -­‐  Outcomes  and    
benefits  customers   Rank  them  
want  (required,  
expected,  desired,  
unexpected)  
 
Rank  them  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved  
12  
12  
© 2016 ServiceNow All Rights Reserved  
Customer  Development  at  MobiChord  -­‐  Sample  
Design/   Define   Create  each   Create  Value  
Check  fit   Test  
redesign   personas   persona  profile   Map  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved  
13  
13  
© 2016 ServiceNow All Rights Reserved  
User  Experience
Design  simple,  elegant  soluJons  to  difficult  problems  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved  
14  
14  
© 2016 ServiceNow All Rights Reserved  
User  Experience  
•  Unique  jobs  require  unique  UX  
•  Each  extra  click,  search,  etc  =    wasted  Jme  in  someone’s  life  
•  Rapid  prototyping  and  customer  validaJon  is  essenJal  
•  Don’t  forget:  it  has  to  be  built  on  ServiceNow!  

From  Paper  Doodles   And  Hi-­‐fidelity  Mocks   To  Finished  App  


@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved  
15  
15  
© 2016 ServiceNow All Rights Reserved  
User  Experience  –  AcJonable  AnalyJcs  
The  most  criJcal  piece  of  UX  to  make  right  

Challenge:  understand  what  informaJon  each  persona  needs,  


extract  it  from  millions  of  records,  and  guide  to  acJon  
 

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved  
16  
16  
© 2016 ServiceNow All Rights Reserved  
How  It’s  Built
Where  ServiceNow  shines  as  a  plaQorm  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved  
17  
17  
© 2016 ServiceNow All Rights Reserved  
The  Big  Picture  
Various  components  and  
Our  tools  
Portal   AngularJS   Custom  UI  framework   Con)nuous  delivery  
libraries  
Our  customer  vision  
Portal  API  

MobiChord    
Portal  bootstrapper   Processors   REST  API  
AngularJS  widgets  

Core  app  logic  

Custom  tables  and   Business  and  Processing   Embedded  in    


Business  Rules  
CMDB  extensions   Workflows   Service  Catalog  

Embedded  in    
Script  Includes   Unit  tes)ng  extensions   Data  Warehouse   Incident/Change  
Management  
Our  heart   IntegraJon  API  

Import  Set  Web  Services   REST  API   REST  Messages  

General  Architecture   Carrier  and  EMM  Integra)on   Internet  of  Things  Support  
     
• microservice  architecture   • non-­‐persistent  data     • massively  scalable  APIs  
• stack  for  task  at  hand:   • any  possible  kind  of   • big  data  storage  and  events  
node.js,  Java,  mongoDB,  etc   integraJon   streams  
Integra)on  Cloud   • tuned  for  types  of  work   • tuned  for  mass  data   • aggregaJon  and  analyJcs  
• conJnuous  delivery   • abstracted  integraJon  
framework  
our  Magic   • universal  data  format  
Logos  shown  are  trademarks  or  registered  trademarks  
of  their  respec4ve  owners  and  not  ServiceNow  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved  
18  
18  
© 2016 ServiceNow All Rights Reserved  
How  We  Built  Mobility  Portal  
Challenge:  Our  UX  is  crazy  different  from  ServiceNow  CMS  approach  
Challenge:  We  have  to  support  Eureka,  Geneva,  Helsinki+  
SoluJon:  Build  portal  on  AngularJS  +  Bootstrap,  host  on  CDN,  embed  with  ServiceNow  CMS  and  use  ServiceNow  as  
applicaJon  server  with  REST  and  Processors  
  Custom  UI  naviga)on   Various  components  and  
Portal   framework   libraries  
This  way,  Portal  works  in  
built  by   security  context  of  
Mobility  Portal  Applica)on  Modules  
authenJcated  user  
 
All  security  mechanisms  
Data  Sources  
hosted  on   of  ServiceNow  (domain  
sources  on  
separaJon,  ACLs,  QBRs)  
deployed  by   are  naturally  effecJve  
execute  logic  or  get  pre-­‐processed  data   get  data  
load  Portal  app  

open  
Portal  bootstrapper  UI  
Processors   REST  API  
Page  

execute   request  

Business  and  Processing   Custom  tables  and  CMDB  


Workflows   Service  Catalog  
Logos  shown  are  trademarks  or  registered  trademarks   extensions  
of  their  respec4ve  owners  and  not  ServiceNow  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved  
19  
19  
© 2016 ServiceNow All Rights Reserved  
How  We  Built  Data  AnalyJcs  
Challenge:  Massive  data  (millions  of  records)  to  report  and  create  analyJcs  from.  
Challenge:  MulJdimensional  reports  that  need  to  stay  stable  even  if  underlying  data  changes  
SoluJon:  Build  custom  Data  Warehouse  soluJon  using  canonical  data  from  MobiChord  Cloud  
 

Mobility  Portal  Analy)cs  


Char)ng  Frameworks   Data  Sources  
Modules  
Portal  

Data  Warehouse  Calcula)on  Workflows  and  Script  Includes  


REST  API  

get  raw  data  


mapreduce  
store  DW  Json  
build  dimensions  

Source  Data  Tables   Data  Warehouse  Tables  

Logos  shown  are  trademarks  or  registered  trademarks  of  their  respec4ve  owners  and  not  ServiceNow  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved  
20  
20  
© 2016 ServiceNow All Rights Reserved  
Mass  Data  IntegraJon    
Challenge:  MobiChord  has  to  process  and  analyze  gigabytes  of  data,  millions  of  records  to  make  it  usable  
Challenge:  Each  integraJon  is  unique  and  omen  very  complex  
SoluJon:  Build  specialized  scalable  external  integraJon  service,  let  it  process  data,  push  canonical  aggregated  data  into  
ServiceNow  and  do  it  gently  ;)  

Custom  tables  and  CMDB  


REST  API   Import  Set  Web  Services  
extensions  

-­‐load  data  in  batches  


data  enrichment   thousands  of  records  
-­‐use  JSON  for  auxiliary  data    

ServiceNow  connector  (throOling  and  load  balancing)    

IoT  Integra)on  
Message  
Integra)on  Cloud   Canonical  Data  Format  (aggregated  and  filtered)  
Bus  

Various  integra)on  connectors  to  external  systems   gigabytes  


of  data,  
millions  of  
records  
Horizontally  scalable  
sources  on   deployed  by   hosted  on   microservice  architecture  
Logos  shown  are  trademarks  or  registered  trademarks  of  their  respec4ve  owners  and  not  ServiceNow  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved  
21  
21  
© 2016 ServiceNow All Rights Reserved  
Helsinki’s  New  Portal-­‐  Game  Changer  for  UX  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved  
22  
22  
© 2016 ServiceNow All Rights Reserved  
Service  Portal  IntegraJon  (Helsinki)  
Challenge:  Integrate  MobiChord  use  cases  into  customer-­‐specific  portals  
SoluJon:  Provide  reusable  components  to  be  used  in  both  MobiChord  Portal  &  Service  Portal  (Helsinki)    
 
Portal   Service  Portal  

built  on   built  from  

Mobichord  Portal  SDK   Service  Portal  Components  

Components/   Services/  
Direc)ves   Provides   uses   Portal  

Data  Sources   Widgets   Pages   CSS  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved  
23  
23  
© 2016 ServiceNow All Rights Reserved  
Takeaways  
•  If  you  have  a  dream  -­‐  pursue  it,  execute  on  your  ideas!  
•  Apps  should  bring  value  to  customers  -­‐  search  for  the  right  fit  
•  User  Experience  is  what  separates  miserable  user  from  happy  one  
•  You  are  miles  ahead  of  compeJJon  -­‐  you  have  power  of  ServiceNow  PlaQorm  
behind  your  back!    

Q&A  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved  
24  
24  
© 2016 ServiceNow All Rights Reserved  
Take  the  Survey  
Please  take  a  moment  to  complete  a  session  survey  in  the  Knowledge16  app.  

Thank  You  
Alexey  Klimenko  
co-­‐founder  &  CTO  
MobiChord  
alexey@mobichord.com  

@mobichord | #Know16
ConfidenJal   ©  2016  ServiceNow  All  Rights  Reserved  
25  
25  
© 2016 ServiceNow All Rights Reserved  

You might also like