SlideShare a Scribd company logo
Vít Pelikán, Miroslav Piroh, Tomáš Vichta 19. června 2018
Edenred Cafeteria
2
Edenred Benefity Café
(Cafeteria)
Vít Pelikán
IT Director Edenred
3
Představení společnosti Edenred
Cafeterie – Edenred BenefityCafe
Historie řízení a motivace pro změnu
Proč Profinit?
Spolupráce
4
4
PŘEDSTAVENÍ SPOLEČNOSTI EDENRED
 42 zemí = téměř 8 000 zaměstnanců
 ČR
 140 zaměstnanců
 23 000 klientů
 500 000 uživatelů
 57 000 partnerských míst
„Specialista v oblasti zaměstnaneckých benefitů“
„Partner v oblasti motivace zaměstnanců“
Edenred v číslech
 Zaměstnanecké stravování
 Ticket Restaurant/ Ticket Restaurant Card
 Zaměstnanecké benefity
 Edenred benefits/ Edenred benefits card
 Edenred čistý
 Edenred junior
 Dárkové poukázky
 Ticket Compliments
 Cafeteria – Edenred Benefity Café
Produkty
5
5
CAFETERIE – EDENRED BENEFITYCAFE
„Dynamický online nástroj pro flexibilní řízení a správu zaměstnaneckých benefitů a interní komunikace“
 Webová online platforma – 24/7
 Sdružuje všechny interní a externí benefity společnosti do jednoho katalogu benefitů, administrovaného společností Edenred
 Možnosti platby
 Payment gateway
 Elektronická poukázka E-Ticket
 Ticket Benefits/ Ticket Benefits Card
 Přínosy pro klienta
 Úspora a vyšší efektivita (Snadná správa, Snížení administrativy, Snížení nákladů na ICT)
 Technická a uživatelská podpora ze strany Edenred
 Přínosy pro personalisty
 Přínosy pro uživatele
 Volnost ve výběru benefitů
 Daňové zvýhodnění benefitů
 Uplatnění u 12 500 smluvních partnerů v ČR (Payment gateway, E-Ticket, převod na EBC)
6
6
HISTORIE ŘÍZENÍ A MOTIVACE PRO ZMĚNU
 2011
 Externí dodavatel
 E-shop platforma Nop-Commerce
 Architektonický návrh pro menší počet klientů/ standardizované řešení
 2013
 Internalizace vývoje
 Architektura beze změny
 2013 - 2016
 Řízení skrze business priority – nestandardní implementace
 Klientský Web v.2
 Zahlcení systému
 Konec 2016 - Týmová efektivita 30% - vyhoření!
7
7
PROČ PROFINIT?
Výběrové řízení
 Cena
 Převzetí a správa systému
 Zajištění chodu a podpory businessu v rámci implementace změn
Vítěz Profinit
 Částečná znalost systému z předchozí spolupráce
 Jediný dodavatel ochotný převzít správu současného systému
 Návrh řešení skrze postupný refactoring funkcionalit
8
8
SPOLUPRÁCE
 Postupné přebírání znalostí
 Zajištění nového vývoje, správy systému, fixace předchozích chyb
 Příprava nové architektury a plánu pro refactoring
 Flexibilita v rámci požadavků na zdroje
 Stabilizace vývoje a dodávek!
 Plánování!
9
Od Cafeterie ke Cafeterii Professional
19. červen 2018Miroslav Piroh
11
Osnova
1. Jak převzít sofwarový systém
2. Nastavení procesů
3. Zhodnocení přínosů
Jak převzít
softwarový systém
13
Metodika přebírání
Initial Transition Full service
› Rozsah systému
› Definice požadovaných
služeb
› Revize
› dokumentace
› architektury
› zdrojového kódu
› prostředí
› Návrh konkrétních vylepšení
realizovaných v další fázi
› Testovací dodávka
› Vytvoření týmu
› Převzetí know-how
› Realizace úprav
definovaných v předešlé fázi
› Automatizace nasazování
› Automatizace testů
› Úprava architektury
› Nastavení procesů
› 1. dodávka do produkce
› Plná zodpovědnost
› Definované procesy
a služby
› Kontinuální vylepšování
systému
14
Fáze přebírání systému
07/2017
Transition
Full service
Initial
3/20171/2017
Nastavení procesů
16
Nastavení procesů
› Team
– Rozdělení odpovědnosti
• Analýza
• Vývoj
• Testování
– Rozdělení teamu
• klientské požadavky
• nové moduly
• L3 support
17
Nastavení procesů
› Version control
– Synchronizace zdrojových souborů
– Merge master – Code Review
Profinit Edenred
18
Nastavení procesů
› Continuous integration
– Buildy
– Testy
– Instalační balíčky
– Analýza kódu
19
Nastavení procesů
› Issue Tracking
– JIRA
– Evidence požadavků a chyb
– Evidence testovacích scénářů
– Exekuce testovacích cyklů
– Měření metrik
20
Nastavení procesů
› Requirements
– Analýza
– Solution Design
– T-shirt odhady
– Detailní odhad
XS
M
SL XL
XXL
21
Nastavení procesů
› Plánování
– Dlouhodobý plán rozvoje Cafeterie
– Detailní plán development teamu
– Řízení rozsahu
22
Nastavení procesů
› Testování
– Test case pro FAT a UAT
– Exekuce TC v testovacích cyklech
– Víc testovacích prostředí
– Sdílení testovacího prostředí
23
Nastavení procesů
› Reporting
– Development
– FAT & UAT testing
34.1 32.5
12.6
8
0
10
20
30
40
50
60
1 2
Series3
Series2
Series1
1, 20
2, 3
3, 4
24
Nastavení procesů
› Release management
– Délka iterace 1 nebo 2 měsíce
– Paralelní vývoj
Zhodnocení přínosů
26
Přínosy
› Odpovědnost za vývojový team má dodavatel
› Dlouhodobé snížení nákladů na údržbu a rozvoj
› Vyšší spokojenost klientů
– Kratší time to market
– Vyšší kvalita
27
Diskuze
Technická minulost, současnost
a budoucnost
19. červen 2018Tomáš Vichta
29
Osnova
1. Představení Cafeterie technicky
2. Změna architektury aplikace za běhu
3. Zhodnocení
30
Co je Cafeterie
Aplikační server 6 webových
portálů
Logika
MS SQL
Integrace
31
Technologický stack
32
Rozsah aplikace
› .NET/C# řádků kódu: 400 000
› SQL procedury řádků kódu: 100 000
› SQL tabulek: 500
› SQL procedur a funkcí: 900
› Obrazovek: 500
33
Stav před převzetím technicky
› Původně malý systém
› Nové funkce, noví klienti
› Customizace pro velké klienty
– Obtížná orientace pro analytiky, vývojáře i testery
– Duplikace chyb
– Následné zobecnění nákladné
› Postupně roste technický dluh
– Viditelné až po letech provozu
– Architektura přestává vyhovovat
34
Redesign architektury
Varianta A
Přepsat celé
na zelené louce Varianta B
Postupný přepis po
modulech nebo vrstvách
35
Redesign architektury
› Varianta A: Přepsat celé na zelené louce
– Náklady také na analýzu a testování
– Nutno přepsat dobře fungující moduly
– Migrace dat
– Provoz a rozvoj původního systému po celou dobu přepisu
› Varianta B: Postupný přepis po modulech nebo vrstvách
– Stavba jádra
– Pak nejvíce problematické celky – zlepšení se dostaví rychleji
– Nové moduly do nové architektury
– Původní dobře fungující moduly netřeba přepisovat
– Akceptovatelné technické kompromisy
› Vhodnost varianty B roste s velikostí systému
36
Web
Původní logika
SQL Database
Značení
Původní
komponenta
Nová
komponenta
Propojení nové a původní architektury
37
› Izolované nové vrstvy
› Pluginy pro customizace
Web
Původní logika
SQL Database
Nová logika
Pluginy
Značení
Původní
komponenta
Nová
komponenta
Propojení nové a původní architektury
38› Adaptery – bezpečné volání původních modulů
Web
Původní logika
SQL Database
Nová logika
Pluginy
Značení
Původní
komponenta
Nová
komponenta
Web
Původní logika
Adaptery pro
volání původní
logiky SQL Database
Nová logika
Pluginy
Značení
Původní
komponenta
Nová
komponenta
Propojení nové a původní architektury
39› Aplikační server pro řízení dávkových úloh
Web
Původní logika
Adaptery pro
volání původní
logiky
Aplikační server
SQL Database
Nová logika
Pluginy
Značení
Původní
komponenta
Nová
komponenta
Propojení nové a původní architektury
40
Zavedení automatických testů
› Unit testy - samozřejmost
› UI testy
– Omezená množina, pro kritické základní funkce
› Integrační testy
– Využití SpecFlow – testu rozumí i netechnik
› Pokrytí: 70%
Scenario: Customer imported => standing order created
Given standing order automatic creation is enabled
for Managers
When I import new employee in group Managers
Then the employee has 1 new standing order
SpecFlow ukázka
42
Přínosy nové architektury a technických změn
› Zrychlení importů
– Z hodin na minuty
› Dávkové úlohy
– Zrychlení, monitoring, snížení chybovosti
› Umělé změny času v testech
– Výrazné zrychlení ručního testování
– Zároveň možnost psát automatické testy pro časově závislé funkce
› Sjednocení a zlepšení logování, nastavení, jazykových lokalizací
– Zrychluje vývoj
– Méně chyb
– Rychlejší analýza chyb
43
Co nás ještě čeká
› Nové funkcionality systému
› Integrace na externí systémy
› Automatizace manuálních procesů
› Pokračování v technologickém upgrade
› …
44
Diskuze
Profinit EU, s.r.o.
Tychonova 2, 160 00 Praha 6 | Telefon + 420 224 316 016
Web
www.profinit.eu
LinkedIn
linkedin.com/company/profinit
Twitter
twitter.com/Profinit_EU
Facebook
facebook.com/Profinit.EU
Youtube
Profinit EU
Děkujeme
za pozornost

More Related Content

Similar to Projekt Edenred Cafeteria

IoT – používáme posbíraná data správně?
IoT – používáme posbíraná data správně?IoT – používáme posbíraná data správně?
IoT – používáme posbíraná data správně?
MarketingArrowECS_CZ
 
Outsourcing - pohled dodavatele
Outsourcing - pohled dodavateleOutsourcing - pohled dodavatele
Outsourcing - pohled dodavateleOKsystem
 
Využití externích aplikací nad PLM a ERP v podmínkách ŠKODA TRANSPORTATION
Využití externích aplikací nad PLM a ERP v podmínkách ŠKODA TRANSPORTATIONVyužití externích aplikací nad PLM a ERP v podmínkách ŠKODA TRANSPORTATION
Využití externích aplikací nad PLM a ERP v podmínkách ŠKODA TRANSPORTATION
TECHNODAT, CAE - systémy, s.r.o.
 
3 PA Solution cz CSPU
3 PA Solution cz CSPU3 PA Solution cz CSPU
3 PA Solution cz CSPU
pavelborek
 
Jak úspěšně zavést do firmy webovou analytiku
Jak úspěšně zavést do firmy webovou analytikuJak úspěšně zavést do firmy webovou analytiku
Jak úspěšně zavést do firmy webovou analytiku
Akce Dobrého webu
 
Nové »bezhlavé« CMS — přechod od monolitů ke službám
Nové »bezhlavé« CMS — přechod od monolitů ke službámNové »bezhlavé« CMS — přechod od monolitů ke službám
Nové »bezhlavé« CMS — přechod od monolitů ke službám
Jaroslav Vrána
 
Migrace do Data Centra
Migrace do Data CentraMigrace do Data Centra
Migrace do Data Centra
Onlio
 
Semináře M-Files: Konec hledání řešení pro správu firemních dat
Semináře M-Files: Konec hledání řešení pro správu firemních datSemináře M-Files: Konec hledání řešení pro správu firemních dat
Semináře M-Files: Konec hledání řešení pro správu firemních dat
Jaroslav Prodelal
 
OKbase - moderní IT nástroj pro HR
OKbase - moderní IT nástroj pro HROKbase - moderní IT nástroj pro HR
OKbase - moderní IT nástroj pro HROKsystem
 
AI Restart 2024: Alexander Bruna - AI transformace podnikání, od kreativy po ...
AI Restart 2024: Alexander Bruna - AI transformace podnikání, od kreativy po ...AI Restart 2024: Alexander Bruna - AI transformace podnikání, od kreativy po ...
AI Restart 2024: Alexander Bruna - AI transformace podnikání, od kreativy po ...
Taste
 
Jira Cloud pro SME
Jira Cloud pro SMEJira Cloud pro SME
Jira Cloud pro SME
Onlio
 
Microservices - morning talk
Microservices -  morning talkMicroservices -  morning talk
Microservices - morning talk
Jindřich Kubát
 
ITSM - Jira Service Desk a spřátelené aplikace z rodiny Atlassian
ITSM - Jira Service Desk a spřátelené aplikace z rodiny AtlassianITSM - Jira Service Desk a spřátelené aplikace z rodiny Atlassian
ITSM - Jira Service Desk a spřátelené aplikace z rodiny Atlassian
Onlio
 
(cesky) MDS ap a Sybase jak pokracujeme a co nabizime?
(cesky) MDS ap a Sybase jak pokracujeme a co nabizime?(cesky) MDS ap a Sybase jak pokracujeme a co nabizime?
(cesky) MDS ap a Sybase jak pokracujeme a co nabizime?
MDS ap
 
Přechod na Windows 10 - jak na to ve firemních sítích
Přechod na Windows 10 - jak na to ve firemních sítíchPřechod na Windows 10 - jak na to ve firemních sítích
Přechod na Windows 10 - jak na to ve firemních sítích
MarketingArrowECS_CZ
 
Automatizace velkých účtů s využitím Google Big Query
Automatizace velkých účtů s využitím Google Big QueryAutomatizace velkých účtů s využitím Google Big Query
Automatizace velkých účtů s využitím Google Big Query
Taste Medio
 
Ondřej Hlaváček: Životní cyklus featury
Ondřej Hlaváček: Životní cyklus featuryOndřej Hlaváček: Životní cyklus featury
Ondřej Hlaváček: Životní cyklus featury
Develcz
 
Jak na Smartlook, nejen pro Shoptet
Jak na Smartlook, nejen pro ShoptetJak na Smartlook, nejen pro Shoptet
Jak na Smartlook, nejen pro Shoptet
Marek Čech
 

Similar to Projekt Edenred Cafeteria (20)

IoT – používáme posbíraná data správně?
IoT – používáme posbíraná data správně?IoT – používáme posbíraná data správně?
IoT – používáme posbíraná data správně?
 
Outsourcing - pohled dodavatele
Outsourcing - pohled dodavateleOutsourcing - pohled dodavatele
Outsourcing - pohled dodavatele
 
Využití externích aplikací nad PLM a ERP v podmínkách ŠKODA TRANSPORTATION
Využití externích aplikací nad PLM a ERP v podmínkách ŠKODA TRANSPORTATIONVyužití externích aplikací nad PLM a ERP v podmínkách ŠKODA TRANSPORTATION
Využití externích aplikací nad PLM a ERP v podmínkách ŠKODA TRANSPORTATION
 
3 PA Solution cz CSPU
3 PA Solution cz CSPU3 PA Solution cz CSPU
3 PA Solution cz CSPU
 
Jak úspěšně zavést do firmy webovou analytiku
Jak úspěšně zavést do firmy webovou analytikuJak úspěšně zavést do firmy webovou analytiku
Jak úspěšně zavést do firmy webovou analytiku
 
Nové »bezhlavé« CMS — přechod od monolitů ke službám
Nové »bezhlavé« CMS — přechod od monolitů ke službámNové »bezhlavé« CMS — přechod od monolitů ke službám
Nové »bezhlavé« CMS — přechod od monolitů ke službám
 
Migrace do Data Centra
Migrace do Data CentraMigrace do Data Centra
Migrace do Data Centra
 
Semináře M-Files: Konec hledání řešení pro správu firemních dat
Semináře M-Files: Konec hledání řešení pro správu firemních datSemináře M-Files: Konec hledání řešení pro správu firemních dat
Semináře M-Files: Konec hledání řešení pro správu firemních dat
 
OKbase - moderní IT nástroj pro HR
OKbase - moderní IT nástroj pro HROKbase - moderní IT nástroj pro HR
OKbase - moderní IT nástroj pro HR
 
AI Restart 2024: Alexander Bruna - AI transformace podnikání, od kreativy po ...
AI Restart 2024: Alexander Bruna - AI transformace podnikání, od kreativy po ...AI Restart 2024: Alexander Bruna - AI transformace podnikání, od kreativy po ...
AI Restart 2024: Alexander Bruna - AI transformace podnikání, od kreativy po ...
 
Jira Cloud pro SME
Jira Cloud pro SMEJira Cloud pro SME
Jira Cloud pro SME
 
Microservices - morning talk
Microservices -  morning talkMicroservices -  morning talk
Microservices - morning talk
 
ITSM - Jira Service Desk a spřátelené aplikace z rodiny Atlassian
ITSM - Jira Service Desk a spřátelené aplikace z rodiny AtlassianITSM - Jira Service Desk a spřátelené aplikace z rodiny Atlassian
ITSM - Jira Service Desk a spřátelené aplikace z rodiny Atlassian
 
201612.ReinIT.Audit
201612.ReinIT.Audit201612.ReinIT.Audit
201612.ReinIT.Audit
 
(cesky) MDS ap a Sybase jak pokracujeme a co nabizime?
(cesky) MDS ap a Sybase jak pokracujeme a co nabizime?(cesky) MDS ap a Sybase jak pokracujeme a co nabizime?
(cesky) MDS ap a Sybase jak pokracujeme a co nabizime?
 
Cyrani2
Cyrani2Cyrani2
Cyrani2
 
Přechod na Windows 10 - jak na to ve firemních sítích
Přechod na Windows 10 - jak na to ve firemních sítíchPřechod na Windows 10 - jak na to ve firemních sítích
Přechod na Windows 10 - jak na to ve firemních sítích
 
Automatizace velkých účtů s využitím Google Big Query
Automatizace velkých účtů s využitím Google Big QueryAutomatizace velkých účtů s využitím Google Big Query
Automatizace velkých účtů s využitím Google Big Query
 
Ondřej Hlaváček: Životní cyklus featury
Ondřej Hlaváček: Životní cyklus featuryOndřej Hlaváček: Životní cyklus featury
Ondřej Hlaváček: Životní cyklus featury
 
Jak na Smartlook, nejen pro Shoptet
Jak na Smartlook, nejen pro ShoptetJak na Smartlook, nejen pro Shoptet
Jak na Smartlook, nejen pro Shoptet
 

More from Profinit

Reference Data Management
Reference Data ManagementReference Data Management
Reference Data Management
Profinit
 
Cloud in examples—(how to) benefit from modern technologies in the cloud
Cloud in examples—(how to) benefit from modern technologies in the cloudCloud in examples—(how to) benefit from modern technologies in the cloud
Cloud in examples—(how to) benefit from modern technologies in the cloud
Profinit
 
Building big data pipelines—lessons learned
Building big data pipelines—lessons learnedBuilding big data pipelines—lessons learned
Building big data pipelines—lessons learned
Profinit
 
Understand your data dependencies – Key enabler to efficient modernisation
 Understand your data dependencies – Key enabler to efficient modernisation  Understand your data dependencies – Key enabler to efficient modernisation
Understand your data dependencies – Key enabler to efficient modernisation
Profinit
 
Propensity Modelling for Banks
Propensity Modelling for BanksPropensity Modelling for Banks
Propensity Modelling for Banks
Profinit
 
Legacy systems modernisation
Legacy systems modernisationLegacy systems modernisation
Legacy systems modernisation
Profinit
 
Automating Data Lakes, Data Warehouses and Data Stores
Automating Data Lakes, Data Warehouses and Data StoresAutomating Data Lakes, Data Warehouses and Data Stores
Automating Data Lakes, Data Warehouses and Data Stores
Profinit
 
4 Steps Towards Data Transparency
4 Steps Towards Data Transparency4 Steps Towards Data Transparency
4 Steps Towards Data Transparency
Profinit
 
Software systems modernisation
Software systems modernisationSoftware systems modernisation
Software systems modernisation
Profinit
 
Data Science a MLOps v prostředí cloudu
Data Science a MLOps v prostředí clouduData Science a MLOps v prostředí cloudu
Data Science a MLOps v prostředí cloudu
Profinit
 
Detekce sociálních vazeb: domácnosti a přátelé
Detekce sociálních vazeb: domácnosti a přáteléDetekce sociálních vazeb: domácnosti a přátelé
Detekce sociálních vazeb: domácnosti a přátelé
Profinit
 
Výsledky backtestu propensitního modelu
Výsledky backtestu propensitního modeluVýsledky backtestu propensitního modelu
Výsledky backtestu propensitního modelu
Profinit
 
Propensitní modelování
Propensitní modelováníPropensitní modelování
Propensitní modelování
Profinit
 
Profinit Webinar: Benefits of Software Systems Modernization over their Repla...
Profinit Webinar: Benefits of Software Systems Modernization over their Repla...Profinit Webinar: Benefits of Software Systems Modernization over their Repla...
Profinit Webinar: Benefits of Software Systems Modernization over their Repla...
Profinit
 
Profinit webinar: Instalment Detector
Profinit webinar: Instalment DetectorProfinit webinar: Instalment Detector
Profinit webinar: Instalment Detector
Profinit
 
Profinit_snidane_DWH_22_10_2019_publish
Profinit_snidane_DWH_22_10_2019_publishProfinit_snidane_DWH_22_10_2019_publish
Profinit_snidane_DWH_22_10_2019_publish
Profinit
 
2019 03-20 snidane-serie-kuchyne-full
2019 03-20 snidane-serie-kuchyne-full2019 03-20 snidane-serie-kuchyne-full
2019 03-20 snidane-serie-kuchyne-full
Profinit
 
Matedatový sklad
Matedatový skladMatedatový sklad
Matedatový sklad
Profinit
 
Projekt Bitcoinová burza Coinmate
Projekt Bitcoinová burza CoinmateProjekt Bitcoinová burza Coinmate
Projekt Bitcoinová burza Coinmate
Profinit
 
20180321 profinit zpracovani velkych_dat_v_praxi
20180321 profinit zpracovani velkych_dat_v_praxi20180321 profinit zpracovani velkych_dat_v_praxi
20180321 profinit zpracovani velkych_dat_v_praxi
Profinit
 

More from Profinit (20)

Reference Data Management
Reference Data ManagementReference Data Management
Reference Data Management
 
Cloud in examples—(how to) benefit from modern technologies in the cloud
Cloud in examples—(how to) benefit from modern technologies in the cloudCloud in examples—(how to) benefit from modern technologies in the cloud
Cloud in examples—(how to) benefit from modern technologies in the cloud
 
Building big data pipelines—lessons learned
Building big data pipelines—lessons learnedBuilding big data pipelines—lessons learned
Building big data pipelines—lessons learned
 
Understand your data dependencies – Key enabler to efficient modernisation
 Understand your data dependencies – Key enabler to efficient modernisation  Understand your data dependencies – Key enabler to efficient modernisation
Understand your data dependencies – Key enabler to efficient modernisation
 
Propensity Modelling for Banks
Propensity Modelling for BanksPropensity Modelling for Banks
Propensity Modelling for Banks
 
Legacy systems modernisation
Legacy systems modernisationLegacy systems modernisation
Legacy systems modernisation
 
Automating Data Lakes, Data Warehouses and Data Stores
Automating Data Lakes, Data Warehouses and Data StoresAutomating Data Lakes, Data Warehouses and Data Stores
Automating Data Lakes, Data Warehouses and Data Stores
 
4 Steps Towards Data Transparency
4 Steps Towards Data Transparency4 Steps Towards Data Transparency
4 Steps Towards Data Transparency
 
Software systems modernisation
Software systems modernisationSoftware systems modernisation
Software systems modernisation
 
Data Science a MLOps v prostředí cloudu
Data Science a MLOps v prostředí clouduData Science a MLOps v prostředí cloudu
Data Science a MLOps v prostředí cloudu
 
Detekce sociálních vazeb: domácnosti a přátelé
Detekce sociálních vazeb: domácnosti a přáteléDetekce sociálních vazeb: domácnosti a přátelé
Detekce sociálních vazeb: domácnosti a přátelé
 
Výsledky backtestu propensitního modelu
Výsledky backtestu propensitního modeluVýsledky backtestu propensitního modelu
Výsledky backtestu propensitního modelu
 
Propensitní modelování
Propensitní modelováníPropensitní modelování
Propensitní modelování
 
Profinit Webinar: Benefits of Software Systems Modernization over their Repla...
Profinit Webinar: Benefits of Software Systems Modernization over their Repla...Profinit Webinar: Benefits of Software Systems Modernization over their Repla...
Profinit Webinar: Benefits of Software Systems Modernization over their Repla...
 
Profinit webinar: Instalment Detector
Profinit webinar: Instalment DetectorProfinit webinar: Instalment Detector
Profinit webinar: Instalment Detector
 
Profinit_snidane_DWH_22_10_2019_publish
Profinit_snidane_DWH_22_10_2019_publishProfinit_snidane_DWH_22_10_2019_publish
Profinit_snidane_DWH_22_10_2019_publish
 
2019 03-20 snidane-serie-kuchyne-full
2019 03-20 snidane-serie-kuchyne-full2019 03-20 snidane-serie-kuchyne-full
2019 03-20 snidane-serie-kuchyne-full
 
Matedatový sklad
Matedatový skladMatedatový sklad
Matedatový sklad
 
Projekt Bitcoinová burza Coinmate
Projekt Bitcoinová burza CoinmateProjekt Bitcoinová burza Coinmate
Projekt Bitcoinová burza Coinmate
 
20180321 profinit zpracovani velkych_dat_v_praxi
20180321 profinit zpracovani velkych_dat_v_praxi20180321 profinit zpracovani velkych_dat_v_praxi
20180321 profinit zpracovani velkych_dat_v_praxi
 

Projekt Edenred Cafeteria

  • 1. Vít Pelikán, Miroslav Piroh, Tomáš Vichta 19. června 2018 Edenred Cafeteria
  • 2. 2 Edenred Benefity Café (Cafeteria) Vít Pelikán IT Director Edenred
  • 3. 3 Představení společnosti Edenred Cafeterie – Edenred BenefityCafe Historie řízení a motivace pro změnu Proč Profinit? Spolupráce
  • 4. 4 4 PŘEDSTAVENÍ SPOLEČNOSTI EDENRED  42 zemí = téměř 8 000 zaměstnanců  ČR  140 zaměstnanců  23 000 klientů  500 000 uživatelů  57 000 partnerských míst „Specialista v oblasti zaměstnaneckých benefitů“ „Partner v oblasti motivace zaměstnanců“ Edenred v číslech  Zaměstnanecké stravování  Ticket Restaurant/ Ticket Restaurant Card  Zaměstnanecké benefity  Edenred benefits/ Edenred benefits card  Edenred čistý  Edenred junior  Dárkové poukázky  Ticket Compliments  Cafeteria – Edenred Benefity Café Produkty
  • 5. 5 5 CAFETERIE – EDENRED BENEFITYCAFE „Dynamický online nástroj pro flexibilní řízení a správu zaměstnaneckých benefitů a interní komunikace“  Webová online platforma – 24/7  Sdružuje všechny interní a externí benefity společnosti do jednoho katalogu benefitů, administrovaného společností Edenred  Možnosti platby  Payment gateway  Elektronická poukázka E-Ticket  Ticket Benefits/ Ticket Benefits Card  Přínosy pro klienta  Úspora a vyšší efektivita (Snadná správa, Snížení administrativy, Snížení nákladů na ICT)  Technická a uživatelská podpora ze strany Edenred  Přínosy pro personalisty  Přínosy pro uživatele  Volnost ve výběru benefitů  Daňové zvýhodnění benefitů  Uplatnění u 12 500 smluvních partnerů v ČR (Payment gateway, E-Ticket, převod na EBC)
  • 6. 6 6 HISTORIE ŘÍZENÍ A MOTIVACE PRO ZMĚNU  2011  Externí dodavatel  E-shop platforma Nop-Commerce  Architektonický návrh pro menší počet klientů/ standardizované řešení  2013  Internalizace vývoje  Architektura beze změny  2013 - 2016  Řízení skrze business priority – nestandardní implementace  Klientský Web v.2  Zahlcení systému  Konec 2016 - Týmová efektivita 30% - vyhoření!
  • 7. 7 7 PROČ PROFINIT? Výběrové řízení  Cena  Převzetí a správa systému  Zajištění chodu a podpory businessu v rámci implementace změn Vítěz Profinit  Částečná znalost systému z předchozí spolupráce  Jediný dodavatel ochotný převzít správu současného systému  Návrh řešení skrze postupný refactoring funkcionalit
  • 8. 8 8 SPOLUPRÁCE  Postupné přebírání znalostí  Zajištění nového vývoje, správy systému, fixace předchozích chyb  Příprava nové architektury a plánu pro refactoring  Flexibilita v rámci požadavků na zdroje  Stabilizace vývoje a dodávek!  Plánování!
  • 9. 9
  • 10. Od Cafeterie ke Cafeterii Professional 19. červen 2018Miroslav Piroh
  • 11. 11 Osnova 1. Jak převzít sofwarový systém 2. Nastavení procesů 3. Zhodnocení přínosů
  • 13. 13 Metodika přebírání Initial Transition Full service › Rozsah systému › Definice požadovaných služeb › Revize › dokumentace › architektury › zdrojového kódu › prostředí › Návrh konkrétních vylepšení realizovaných v další fázi › Testovací dodávka › Vytvoření týmu › Převzetí know-how › Realizace úprav definovaných v předešlé fázi › Automatizace nasazování › Automatizace testů › Úprava architektury › Nastavení procesů › 1. dodávka do produkce › Plná zodpovědnost › Definované procesy a služby › Kontinuální vylepšování systému
  • 16. 16 Nastavení procesů › Team – Rozdělení odpovědnosti • Analýza • Vývoj • Testování – Rozdělení teamu • klientské požadavky • nové moduly • L3 support
  • 17. 17 Nastavení procesů › Version control – Synchronizace zdrojových souborů – Merge master – Code Review Profinit Edenred
  • 18. 18 Nastavení procesů › Continuous integration – Buildy – Testy – Instalační balíčky – Analýza kódu
  • 19. 19 Nastavení procesů › Issue Tracking – JIRA – Evidence požadavků a chyb – Evidence testovacích scénářů – Exekuce testovacích cyklů – Měření metrik
  • 20. 20 Nastavení procesů › Requirements – Analýza – Solution Design – T-shirt odhady – Detailní odhad XS M SL XL XXL
  • 21. 21 Nastavení procesů › Plánování – Dlouhodobý plán rozvoje Cafeterie – Detailní plán development teamu – Řízení rozsahu
  • 22. 22 Nastavení procesů › Testování – Test case pro FAT a UAT – Exekuce TC v testovacích cyklech – Víc testovacích prostředí – Sdílení testovacího prostředí
  • 23. 23 Nastavení procesů › Reporting – Development – FAT & UAT testing 34.1 32.5 12.6 8 0 10 20 30 40 50 60 1 2 Series3 Series2 Series1 1, 20 2, 3 3, 4
  • 24. 24 Nastavení procesů › Release management – Délka iterace 1 nebo 2 měsíce – Paralelní vývoj
  • 26. 26 Přínosy › Odpovědnost za vývojový team má dodavatel › Dlouhodobé snížení nákladů na údržbu a rozvoj › Vyšší spokojenost klientů – Kratší time to market – Vyšší kvalita
  • 28. Technická minulost, současnost a budoucnost 19. červen 2018Tomáš Vichta
  • 29. 29 Osnova 1. Představení Cafeterie technicky 2. Změna architektury aplikace za běhu 3. Zhodnocení
  • 30. 30 Co je Cafeterie Aplikační server 6 webových portálů Logika MS SQL Integrace
  • 32. 32 Rozsah aplikace › .NET/C# řádků kódu: 400 000 › SQL procedury řádků kódu: 100 000 › SQL tabulek: 500 › SQL procedur a funkcí: 900 › Obrazovek: 500
  • 33. 33 Stav před převzetím technicky › Původně malý systém › Nové funkce, noví klienti › Customizace pro velké klienty – Obtížná orientace pro analytiky, vývojáře i testery – Duplikace chyb – Následné zobecnění nákladné › Postupně roste technický dluh – Viditelné až po letech provozu – Architektura přestává vyhovovat
  • 34. 34 Redesign architektury Varianta A Přepsat celé na zelené louce Varianta B Postupný přepis po modulech nebo vrstvách
  • 35. 35 Redesign architektury › Varianta A: Přepsat celé na zelené louce – Náklady také na analýzu a testování – Nutno přepsat dobře fungující moduly – Migrace dat – Provoz a rozvoj původního systému po celou dobu přepisu › Varianta B: Postupný přepis po modulech nebo vrstvách – Stavba jádra – Pak nejvíce problematické celky – zlepšení se dostaví rychleji – Nové moduly do nové architektury – Původní dobře fungující moduly netřeba přepisovat – Akceptovatelné technické kompromisy › Vhodnost varianty B roste s velikostí systému
  • 37. 37 › Izolované nové vrstvy › Pluginy pro customizace Web Původní logika SQL Database Nová logika Pluginy Značení Původní komponenta Nová komponenta Propojení nové a původní architektury
  • 38. 38› Adaptery – bezpečné volání původních modulů Web Původní logika SQL Database Nová logika Pluginy Značení Původní komponenta Nová komponenta Web Původní logika Adaptery pro volání původní logiky SQL Database Nová logika Pluginy Značení Původní komponenta Nová komponenta Propojení nové a původní architektury
  • 39. 39› Aplikační server pro řízení dávkových úloh Web Původní logika Adaptery pro volání původní logiky Aplikační server SQL Database Nová logika Pluginy Značení Původní komponenta Nová komponenta Propojení nové a původní architektury
  • 40. 40 Zavedení automatických testů › Unit testy - samozřejmost › UI testy – Omezená množina, pro kritické základní funkce › Integrační testy – Využití SpecFlow – testu rozumí i netechnik › Pokrytí: 70%
  • 41. Scenario: Customer imported => standing order created Given standing order automatic creation is enabled for Managers When I import new employee in group Managers Then the employee has 1 new standing order SpecFlow ukázka
  • 42. 42 Přínosy nové architektury a technických změn › Zrychlení importů – Z hodin na minuty › Dávkové úlohy – Zrychlení, monitoring, snížení chybovosti › Umělé změny času v testech – Výrazné zrychlení ručního testování – Zároveň možnost psát automatické testy pro časově závislé funkce › Sjednocení a zlepšení logování, nastavení, jazykových lokalizací – Zrychluje vývoj – Méně chyb – Rychlejší analýza chyb
  • 43. 43 Co nás ještě čeká › Nové funkcionality systému › Integrace na externí systémy › Automatizace manuálních procesů › Pokračování v technologickém upgrade › …
  • 45. Profinit EU, s.r.o. Tychonova 2, 160 00 Praha 6 | Telefon + 420 224 316 016 Web www.profinit.eu LinkedIn linkedin.com/company/profinit Twitter twitter.com/Profinit_EU Facebook facebook.com/Profinit.EU Youtube Profinit EU Děkujeme za pozornost