2. About
Client
-‐
TIM
• TIM
SA
is
the
biggest
electro-‐
technical
goods
distributor
in
Poland.
• The
company
has
25
years
of
experience
on
the
market
and
it’s
been
on
GPW
stock
market
for
nearly
17
years.
• Their
target
audience
are
clients
from
the
construcHon
business
area.
2
3. E-‐Commerce
Strategy
• For
the
last
few
years,
TIM
SA’s
strategy
has
depended
on
construcHon
businesses
and
the
new
opportuniHes
there.
• With
anexpanding
product
range
and
new
product
categories,
TIM
SA
is
trying
to
reach
other
market
segments.
• At
this
moment,
TIM
has
over
30.000
products
in
Warehouses.
• The
whole
strategy
is
supported
by
intense
investments
in
IT
and
warehouse
area.
• The
top
cherry
of
the
company
is
CRM
program
Pivotal,
implemented
in
2013.
• AQer
successful
implementaHon
of
www.bankkabli.pl,
the
company
decided
to
conHnue
cooperaHon
with
Divante
and
created
a
B2B
e-‐store
as
well.
To
accomplish
our
goals
associated
with
diversifica5on
of
trade
markets
we
are
implemen5ng
customer
service
strategy
in
many
different
sales
channels.
Customers,
apart
from
the
support
of
30
Departments
and
Trade
Offices,
have
been
also
able
to
shop
fully
online
in
a
high-‐class
internet
store
since
August
2013.
An
extra
customer
support
for
both
online
and
offline
sales
is
provided
by
Contact
Center.
-‐
Dawid
Sadulski,
E-‐commerce
Director
3
4. Choosing
the
technology
• Our
clients
oQen
ask
about
eCommerce
plaTorm
that
fits
to
their
needs.
We
have
tried
many
eCommerce
plaTorms.
Magento
is
most
oQen
the
best
choice.
• Why
Magento
– Magento
is
currently
the
most
popular
eCommerce
soQware.
– Magento
is
the
most
popular
plaTorm
to
migrate
to
– Producer’s
support
and
elasHc
license
model.
– The
soQware
provides
a
rich
set
of
funcHons
ready
to
use,
deals
with
millions
of
product
data
and
over
80
000
orders
per
hour.
4
Source:
hYp://tomrobertshaw.net/2013/03/feb-‐2013-‐
ecommerce-‐survey/
+
hYp://divante.co/blog/magento/
5. Process
5
The
implementaHon
process
at
Divante
is
focused
on
meeHng
the
exact
requirements,
designing
everything
clearly
and
making
all
relevant
changes
before
someone
starts
coding.
6. System
designing
• Prototyping
– Any
changes
during
prototyping
are
much
cheaper
than
during
the
implementaHon
and
development.
– Using
mockups,
you
can
easily
verify
your
ideas
in
a
cheap
and
fast
way.
• Furthermore,
interacHve
prototypes
show
how
the
applicaHon
will
work,
which
allows
for
a
fast
verificaHon
of
the
designer’s
idea
with
client’s
expectaHons
and
his
target
audience.
6
7. User
tesHng
Based
on
interacHve
prototypes,
we
have
tested
how
potenHal
customers
will
work
with
the
e-‐store.
TesHng
was
a
challenge
because
potenHal
customer
representaHves
were
people
having
very
different
experience
with
online
stores.
7
It’s
worth
menHoning
that
during
TIM
–
Divante
cooperaHon,
all
of
the
popular
UX
tools
and
techniques
were
used:
Business
Model
Canvas,
User-‐Centered
Design,
A/B
tesHng
and
others.
8. InteracHon
Design
>>
Graphic
Design
• AQer
the
final
version
of
prototypes
had
been
approved,
we
prepared
a
single
graphic
line
(look&feel).
– AQer
the
acceptance
of
the
home
page,
we
designed
screens
fof
all
funcHonal
mock-‐ups.
– It
took
us
one
month
to
finish
all
of
the
graphic
work.
– Simultaneously,
we
proceeded
with
implementaHon,
to
shorten
the
final
Hme
of
product
delivery.
• AQer
graphic
designing,
our
webmaster
created
HTML
and
CSS
templates
which
were
implemented
into
the
final
project
in
the
next
stage.
– The
“PSD2HTML”
stage
took
nearly
4
weeks
of
full-‐Hme
webmaster’s
work
and
was
also
parHally
done
in
parallel
with
development.
• At
the
same
Hme,
we
analyzed
integraHon
and
migraHon
of
data,
plus
we
prepared
some
proper
technical
documentaHon
as
a
base
for
implementaHon
work.
8
9. ImplementaHon
and
start-‐up
• ImplementaHon
took
over
14
months.
– Development
was
done
on
both
sides:
• Divante
(implementaHon
of
dedicated
funcHonal
modules
for
Magento)
• TIM
(preparing
integraHon
systems)
and
partners
–
including
Pivotal
CRM.
• The
soQware
was
expanded
with
many
dedicated
funcHons.
– All
the
modificaHons
were
added
as
extra
Magento
modules.
– Using
EAV
mechanisms
(object
database
of
Magento),
event-‐driven-‐
development
kept
full
actualizaHon
of
the
plaTorm
and
soQware
architecture.
9
10. IntegraHons
Nowadays
the
plaTorm
is
connected
to
the
following
systems:
• IntegraHon
with
CRM
system:
– Sending
client’s
data
– Downloading
client’s
data
– Cart
synchronizaHon
(price)
– Cart
downloading
– Cart
reservaHon
– Sending
orders
– Sending
RFPs
– Downloading
offers
for
a
customer
– Downloading
product
price
– Downloading
product
price
for
a
customer
– Downloading
invoices
data
and
invoices
in
pdf
– Downloading
order’s
history
– Downloading
order’s
data
• Product
Management
Program
– Downloading
data
on
products
and
categories
– Downloading
catalogue
cards
of
products
and
pictures
• Warehouse
IntegraHon
– Downloading
product
availability
– Downloading
cable
segments
• FactFinder
IntegraHon
– Sending
product
database
– Downloading
search
results
10
11. CRM
live
integraHon
• CRM
integraHon
plays
the
key
role
in
the
system.
– Thanks
to
bilateral
integraHon
in
a
real
Hme,
the
merchants
in
TIM’s
central
can
edit
the
shopping
carts
of
the
customers
that
are
currently
logged
on.
This
combinaHon
gives
rare
trade
possibiliHes.
E-‐store
system
is
integrated
with
Pivotal
CRM
system
by
a
dozen
Webservices.
Those
services
use
the
SOAP
protocol
to
send
messages
via
Gearman
server.
The
main
areas
of
data
exchange
are
data
synchroniza5on
with
customers’
addresses
in
both
ways
and
exchanging
current
informa5on
about
the
customers’
merchant
limit
–
says
Marcin
Dykas,
development
leader
in
the
project.
• Customers
have
access
to
order
informaHon
and
history
downloaded
from
CRM.
– Also
the
only
place
where
they
have
access
to
invoices
is
their
account
in
the
e-‐store.
InformaHon
about
their
payment
status
and
invoice
files
is
downloaded
directly
from
the
CRM
system.
11
12. Dedicated
FuncHons
12
Database
of
products
is
very
differenHated.
Some
stuff
like
cables
require
complicated
configuraHon
and
data
exchange
in
warehouse
in
the
real-‐Hme.
What’s
the
most
unique
about
this
implementaHon
is
a
live
integraHon
with
CRM
system
(product
prices
and
whole
carts).
13. Dedicated
FuncHons
13
Online
basket
is
very
extended.
You
have
a
bunch
of
specific
funcHons
like
communicaHon
with
the
merchant.
14. Scalability
and
Performance
• As
a
part
of
the
system’s
architecture,
many
improvements
that
had
influence
on
scalability
and
performance
were
made.
– replicaHon
of
database
master-‐master
(backups)
and
master-‐slave
to
speed
up
reading
operaHon
and
balanced
traffic
to
database,
service
is
available
by
default
in
Magento,
– using
a
scaYered
cache
system
–
in
this
case
Memcached
during
its
opHmizaHon
was
replaced
by
Redis,
– using
a
scaYered
system
of
files
(GlusterFS),
– using
an
hYp-‐reverse-‐proxy
system
Varnish
that
speeds
up
loading
pages
and
staHsHc
files,
– using
PerconaDB
instead
of
MySQL
for
database
• In
case
there
is
a
big
amount
of
inquiries
or
a
crash
of
WMS,
PIM
or
CRM
systems,
the
line
system
doses
communicatesand
repeats
inquiries
unHl
realizaHon.
• AQer
every
round
of
changes,
there
is
performance
tesHng
to
check
and
prove
that
applicaHon
is
working
beYer
using
JMeter,
Siege
and
Apache
Bench
tools.
14
15. TesHng,
tesHng,
tesHng
• E-‐commerce
systems
are
those
with
increased
degree
of
required
availability.
In
case
of
TIM,
the
extra
risk
factor
that
influenced
the
system’s
stability
was
a
big
number
of
integraHons.
As
for
tests,
we
wrote
the
whole
tesHng
scripts
for
UAT
(User
Acceptance
Tests
–
funcHonal
tests)
and
plans
for
performance
tesHng
and
the
rest.
• Tests
that
were
performed:
– func%onal/
acceptable
tests
-‐
based
on
scripts
that
became
a
foundaHon
for
the
rest
of
the
smoke
tests
and
tests
performed
during
development,
aQer
implementaHon,
– integra%on
tests
–
based
on
the
tesHng
scripts
prepared
before,
in
cooperaHon
with
TIM’s
employees,
we
checked
if
data
synchronized
in
required
range
and
Hme,
and
what
performance
and
failure
frequency
of
the
system
was,
– safety
tests
–
two-‐staged
tests
were
performed,
stage
one
was
using
automaHc
tools
for
typical
vulnerability
(XSS,
SQL
InjecHon,
CSRF),
in
stage
two
Magento’s
added
funcHonaliHes
were
revised
and
rated,
– performance
tests
–
Siege
and
JMeter
tools
were
used
to
applicaHon’s
key
paths.
As
part
of
maintainability
agreement,
the
applicaHon
ensured
Hmes
of
response
and
implementaHon
of
users
goals.
Performance
tests
showed
that
the
goals
were
implemented
and
the
applicaHon
was
able
to
keep
up
with
the
traffic
and
sales
volume.
• WriYen
reports
from
all
the
tests
were
prepared
for
the
client.
ImplementaHon
was
started
only
aQer
their
acceptance.
15
16. Ensuring
quality
• To
keep
the
quality
of
the
implementaHon,
we
used
the
standard
soluHons
of
Divante:
– version
control
system
–
in
this
case
the
SVN
version
with
tagging,
development
planning
– a
system
of
recording
requests
-‐
Redmine,
where
all
communicaHon
with
the
client
is
carried
out.
Redmine
is
used
to
plan
the
next
releases
of
the
soQware,
– monitoring
system
–
Incinga,
monitoring
all
the
parameters
of
the
operaHng
system
and
applicaHon
availability
monitoring
(HTTP),
– separate
environment:
developers,
test
and
producHon
– transac%onal
system
of
deployment
-‐
using
SVN
(transacHons)
and
procedures
–
versions
are
planned
for
each
Hme
taking
into
account
the
implementaHon
of
UAT
tests
and
our
funcHonal
tesHng
and
regression
tesHng.
16
17. Development
• For
the
last
10
months,
the
system
has
been
live
and
constantly
developed
by
a
team
consisHng
of
experts
from
both
TIM
and
Divante.
• Divante
provides
SLA
–
including
response
Hmes
and
bugfixing
opHons.
They
are
very
restricHve
because
each
downHme
of
the
system
is
a
large
measurable
loss.
ReacHon
Hmes
range
from
0.5
to
1
hour
and
fixing
Hmes
of
2-‐3
hours,
respecHvely.
• To
maintain
such
high
SLA,
Divante
uses
the
“Divante
S.W.A.T.”
–
a
specially
formed
unit
of
the
most
experienced
developers
and
administrators.
In
shiQs,
they
carry
on
the
duty,
updaHng
the
documentaHon
and
recovery
plans.
17
Divante
S.W.A.T.
is
an
unity,
that
covers
security
of
the
plaTorm
and
react
ASAP
when
the
system
is
down
or
emergency
happens.
18. Business
effects
AQer
the
first
year:
– 2.500.000
visitors
in
the
store
– More
than
100.000
transacHons
– Over
$50.000.000
revenue
– TIM
client’s
really
love
the
B2B
e-‐Commerce
website
18
Clients
tesHmonials:
hYps://www.youtube.com/watch?v=-‐
QumO63G_7M&list=PLuXGEsfZdwIUuaIJTEd3PDSUQLilYVu
9a&index=3
19. Are
you
planning
B2B
E-‐Commerce?
Ask
us
about
offer
sales@divante.co
hYp://divante.co
19