Rossmann - Case Study PROJECT ROSSMANNTechnologies Innovation Challenges and solutions Model of...
Transcript of Rossmann - Case Study PROJECT ROSSMANNTechnologies Innovation Challenges and solutions Model of...
Rossmann - Case Study
PROJECT ROSSMANN
TABLE OF CONTENTS
Intro
Business needs and goals UX Design
Tests
OutcomeTeam
Timeline
Technologies
Innovation
Challenges and solutions
Model of collaboration
Functionality
INTRO
Rossmann is the second largest German drugstore chain with nearly 4,000 brick and mortar stores all over Europe.
It offers high quality products including cosmetic novelties and
innovations, providing its customers with the most marketable prices.
Its modern, hi-tech application enables joining the Rossmann Club
and displays personalized and client-adjusted promotions. It
facilitates the shopping process and lets customers buy and
collect ordered products in a nearby, most convenient drugstore.
The goal of collaboration between iteo and Rossmann was to build
a B2B sales support system to automate the process of generating
offers for business clients.
Rossmann’s sales representatives had to prepare everyday
sales offers for their business clients manually which consumed
a lot of time being highly inefficient and inconvenient.
The company needed help automating the whole process,
making it simpler, quicker, and more productive. The best
solution was building a dedicated B2B sales support system.
BUSINESS NEEDS AND GOALS
Completed UX Phase:
The platform is ready
for the UI Part
AUGUST
2019
The Beginning of
collaboration and
work process
The End of the work:
the platform is ready to be used
by the sales representatives
JUNE
2019
JANUARY
2020
TIMELINE
TEAMWe worked internally with 100% of iteo team’s engagement,
without any staff support on the client’s side.
1 UX designer
2 UI designers
3 backend developers
4 frontend developers
3 testers
1 PM
Klienci
Oferty
Produkty
Szablony
Mój profil
Wyloguj
Główna
Zwiń panel
DASHBOARD
393048223/19 Oznacz jako przeczytane09.04.2019 Kowalscy Spółka z o.o.Konieczność kontaktu z klientem
393048223/19 Oznacz jako przeczytane09.04.2019 Kowalscy Spółka z o.o.Konieczność kontaktu z klientem
Data OfertaKlientTyp
2938900030-19 20 Wysłana10.07.201909.04.2019Kowalscy Spółka z o.o. 10 000 zł
2938900030-19 20 Wysłana10.07.201909.04.2019Kowalscy Spółka z o.o. 10 000 zł
2938900030-19 20 Wysłana10.07.201909.04.2019Kowalscy Spółka z o.o. 10 000 zł
2938900030-19 20 Robocza09.04.2019Kowalscy Spółka z o.o. 10 000 zł 10.07.2019
Numer ProduktyData utworzeniaKlient StatusOstatni kontaktWartość oferty
1 2 3
PRZYPOMNIENIA
TWOJE OSTATNIE OFERTYTECHNOLOGIES
Backend solution was created in C#
(!SP.NET Core).
We enhanced the development process using varied
set of libraries and tools:
Entity Framework Core (object relational mapper)
FluentValidation (data validation)
Autofac (inversion of Control container)
Under the hood, the application integrates with MS SQL
Server T and Nuget Server. Deployment is backed with
TeamCity and Docker with Docker Compose.
Swagger / Swashbuckle (Web !PI documentation)
Serilog (logging)
OpenXml (Word and Excel documents generation)
… and much more
Klienci
Oferty
Produkty
Szablony
Mój profil
Wyloguj
Główna
Zwiń panel
UTWÓRZ NOWĄ OFERTĘ
FILTRUJWyszukiwana fraza
Klient: Kowalscy Spó
Prokudent SensitivePasta do z
Prokudent SensitivePasta do z
Twarz
3M (22)
Tylko w Rossmann
Promocja Rossnę!
1+1 na wybrane produ…
Marka
Kategorie
Status
Makijaż
4Active Men (4)
Włosy
Enfamil (7)
Ciało
Fenistil (1)
Mamy najlepsze ceny!
WYBIERZ PRODUKTY
Wyszukiwana fraza
Wyszukiwana fraza
ZASTOSUJ
Usuń filtry
MODEL OF COLLABORATION
We worked according to the fixed price model. We had a
few meetings with the client to determine the level of our
assignments. All the operations were supposed to take 2-3
months but the project stretched over a longer period of
time due to priorities alterations on the client’s side.
Klienci
Oferty
Produkty
Szablony
Mój profil
Wyloguj
Główna
Zwiń panel
B2B Sales platform enables creating a quick offer including a list
of products available in Rossmann. Thanks to the inbuilt search
engine, they can be easily located and added to the offer.
The generator facilitates:
FUNCTIONALITY
Marking the trading discounts,
Defining various collection points,
Exporting an offer to an Excel or a Word document,
Sending an offer to a client directly from the app.
Each microservice is scalable and uses the same database, but with
a different database schema (data is separated, so we could also
separate it quickly). It simplifies both development and deployment.
Services communicate by using REST, however internally
they use in-memory data bus.
Due to efficiency requirements, we created database read models which store
prepared data without need of computation or querying another microservice.
When data from another service is needed, we don’t have to make an HTTP call,
but simply download them directly from application database context. If the
required resource is modified in source service, it has to propagate this
information to keep everything up to date.
We based the application on microservice
architecture with three microservices in the
system.
INNOVATION
Clients microservice
Offers microservice
Storage management
CHALLENGES AND SOLUTIONS
One of the challenges was Word and Excel file generation
on the Linux operating system. Originally these files are
associated with Microso" products which generally
support Windows OS. Most of the tools designed for
creating this kind of documents depend on MS Office
so"ware and therefore we weren’t able to use them.
CHALLENGE
In this case, OpenXml library came to the rescue. This powerful tool
provides us with the possibility of manipulating Word and Excel
documents (and much more!). What’s most important, it supports .NET
Core and therefore works also on the Linux operating system.
Using this tool, we encountered various problems. A"er spending
a large amount of time on documentation analysis and generating
test documents, we were able to achieve a satisfactory effect which
was approved by the client.
SOLUTION
During the development, we already knew that
the deployment of the product won’t be our job.
Nevertheless, provided so!ware had to meet the
client’s expectations and requirements. To be
sure that our application behaves properly in the
client’s environment, we had to recreate it on our
side.
CHALLENGE
It was obvious that we are not able to recreate the environment as it is, but
we were sure that we could use attributes which would reflect it closely enough.
We had to recreate MS SQL Server, Nuget Server, and Docker image registry.
We were able to alter MS SQL Server database with Azure SQL. Nuget Server and
the CI/CD process was replaced with the help of TeamCity. Finally, we created
a Linux based virtual machine with Docker and provided it with an appropriate
configuration which connected all components together. These replacements
allowed us to thoroughly test the whole solution and deliver it with proper care and
quality. It also let us feel safe and sure that it will work in the client’s environment.
SOLUTION
UX DESIGNThe actual UX process was launched a!er preparing a functional diagram.
It allowed us to approach the client and discuss all the essential elements
of the platform including navigation, structure, and more.
The next step was to create a UX prototype based on wireframes. We had
an opportunity to deepen our knowledge during the iteration of first materials -
we gained additional information about the company’s approach to work and
its specific needs which helped us adjust the solution even more accurately.
There was no need to employ any product workshops, because
the client provided us with sufficient documentation.
TESTSHigh quality assurance is a must when developing any so!ware
product, especially one that needs to be a practical, simple,
and flawless solution.
In this project we’ve decided to perform manual tests.
Functional testing was based on the client’s guidelines acquired
during a team interview. We’ve performed exploratory testing,
resets, and regression testing on various internet browsers, too.
The acceptance tests were covered by the client.
OUTCOME
We’ve delivered an online tool for generating a complete offer for
wholesales buyers which reduced the time spent on manual and
repetitive tasks. The process of creating a price list, adding photos,
and organizing discounts was maximally simplified and allowed
smooth and seamless operations.
THANKYOU