Sergels .NET-system Billjonär hjälper företag med att ta betalt Företaget Sergel Kredittjänster AB har med hjälp av konsultföretaget Cefalo AB utvecklat ett billingsystem som hanterar fakturering och reskontrahantering för Sergels kunder. Sergel ville ha ett system som var enkelt att anpassa, kostnadseffektivt att utveckla samt kunde klara över 200 miljoner transaktioner såväl i batch som i realtid varje månad. Valet föll på .NET, C# och SQL Server. Sergel, ett dotterbolag till TeliaSonera, hanterar kreditupplysningar, billing, reskontra och inkasso åt företag såsom en servicebyrå. Servicebyråtanken är att kunder ska kunna lägga ut sina betalningsrutiner åt Sergel för att istället ägna sig åt sin kärnverksamhet. – En allt starkare trend som vi ser är att företag outsourcar de delar av sina affärsprocesser som inte är en del företagets kärnkompetens, säger Magnus Lindgren, partneransvarig på Sergel. Rutinåtgärder som prissättning, fakturering, kreditbedömning, reskontra och inkasso är livsviktiga för företag men inte nödvändigtvis något de måste kunna själva. Det är där vi kommer in. Sergel vill i egenskap av servicebyrå för sina kunder, snabbt och enkelt kunna anpassa billingsystemet efter kundernas behov. Kraven på ett billing- och reskontrasystem som ska klara av inte bara telekom utan även andra branscher blir väldigt speciella. Utveckling i systemet måste kunna genomföras till så låg kostnad som möjligt samtidigt som systemet måste klara av stora mängder transaktioner och kunna integreras med externa system. Telekomvärlden har också en rad speciella krav, som till exempel att kunna hantera communities samt avancerad prissättning och rabattering. Det måste också finnas en möjlighet för kunden att välja om denne vill använda olika delar i systemet utan att behöva ta hela kakan. – Vårt gamla system började bli svårt att förvalta och anpassningar till kundernas krav kunde inte ske tillräckligt effektivt. Dessutom fanns det få personer som kunde hantera systemet. Vi ville ha en generell miljö som skulle vara anpassningsbar och vara så kostnadseffektiv som möjligt, säger Magnus Lindgren. Vi tittade på Java och .NET och valet föll på att tillsammans med Cefalo bygga ett system i .NET från grunden. Anledningen till att Cefalo och Sergel fick bygga ett system från noll är att Sergel inte hittade ett system på marknaden som uppfyllde alla de högt ställda kraven. – Vi pratade med Microsoft i Redmond som själva hade byggt ett eget billingsystem. Redan från början fick vi bra respons från Microsoft som sedan hela tiden har varit ett bra bollplank åt oss. Det var inte bara .NET som plattform som fick utstå en hård utvärderingsprocess från Sergel utan även programspråket C# och databasen Microsoft SQL Server som skulle utgöra hörnpelare i konstruktionen av systemet. Cefalo fick sedan en kravspecifikation på över 1 200 krav som skulle uppfyllas. Bland annat skulle systemet klara av över 200 miljoner transaktioner varje månad, kunna hantera ett antal miljoner slutkunder samt kunna generera 100 000 fakturor på någon timme. 16 000 utvecklingstimmar Resultatet av designen blev ett Microsoft .NET-baserat system med Web Services i botten. Systemet är utvecklat av Cefalo som tidigt arbetade med .NET-utveckling. Redan när Visual Studio .NET var i betastadiet hade Cefalo utvecklat ett personal- och administrationssystem i .NET. Sedan dess har företaget utvecklat flera tunga .NET-system åt sina kunder, varav Sergels är ett. – Projektet tillsammans med Sergel är ett stort projekt. Det ligger 16 000 utvecklingstimmar bakom systemet och de stora kapacitetskraven gör systemet mycket speciellt, säger Björn Wiktorsson, vd för Cefalo. Billingsystemet, som Sergel kallar Billjonär, tog drygt ett år att utveckla, från det att kravspecifikationen levererades till dess att hela systemet var testat och i drift. Billjonär är anpassat för att hantera fakturering av hundratals miljoner telefonsamtal, bredbandsuppkopplingar och Internet-sessioner. Dessutom skall en rad specialfunktioner kunna hanteras som möjliggör avancerad prissättning och skapande av erbjudanden och rabatter. Exempelvis kanske man skall ha ett visst pris för att man är Djurgårdare, för att det är en viss tid på dagen eller för att man väljer att köpa både bredband och mobiltelefoni från ett visst företag. – Förutom att ha hög tillgänglighet och klara höga kapacitetstal ska systemet också kunna användas för att hantera prissättning och fakturering av helt andra saker, till exempel kilowattimmar, megabyte, eller för den delen gummistövlar, säger Björn Wiktorsson. Systemet som helhet innefattar moduler för billing, fakturering och reskontra samt koppling till inkassosystem. Som administrativa hjälpmedel finns dessutom moduler för kund-, produktoch prishantering. Microsofts teknik bakom Billjonär består, på serversidan, av två webbservrar som är ihopkopplade för att fördela arbetsbelastningen. De kallas för Kärnan och Fasaden. Fasaden huserar de Web Services och ASP.NET-sidor som exponeras externt. De sköter också all kommunikation med Kärnan som i sin tur delar upp stora jobb i små bitar för att sedan skicka dem till sitt eget kluster. Det innebär att Billjonär på ett kostnadseffektivt och förhållandevis okomplicerat sätt kan använda sig av flera servrar om behov skulle uppstå. En del av det faktiska arbetet utförs i lagrade procedurer i Microsoft SQL Server–databasen som körs i ett feltolerant kluster på en HPserver. Även på databassidan har Cefalo utvecklat en metod för att på ett enkelt sätt kunna fördela lasten över flera maskiner. För att säkerställa att systemets användare är de de utger sig för att vara och att de bara får tillgång till ”sin” information används Microsoft Active Directory och Windows Integrated Security i alla tillämpliga delar av Billjonär. All prissättning sker med ett Java-/Unixbaserat system som heter Pricemaker som utvecklats av det amerikanska företaget Rate Integration Inc. Pricemaker får samtalsinformation från kundernas system och skriver de prissatta transaktionerna i Billjonärs databas. För att kommunicera utåt används Web Services och SOAP-protokollet som går via en proxy mot Sergels interna klientdatorer eller mot Internet där Sergels kunder ska kunna komma åt systemet via en vanlig https-inloggning. – En stor fördel med Billjonär är att mycket av det som normalt görs manuellt har automatiseras, säger Johan Idstam, systemarkitekt på Cefalo. Ett exempel är inbetalningar som kunder görs automatiskt matchas med fakturan. Om kunden har uppgett ett felaktigt fakturanummer vid inbetalningen kan systemet automatiskt kolla och rätta till felet. Det senare är något som idag kräver en hel del manuellt arbete. Billjonär är förutom Pricemaker, utvecklat i Visual Studio .NET 2003 Enterprise Architect, främst i programmeringsspråket C#. Nästa steg Nästa steg för Sergel är att kunna erbjuda Billjonär till andra kunder än telekombolag. – Telekomtransaktioner är något av det mest krävande man kan utsätta ett system för, säger Magnus Lindgren på Sergel. En stor fördel med Billjonär är att man kan skala både upp och ner. Det innebär att om en kund vill ha ett betalningssystem som inte är lika transaktionsintensivt som telekom, så kan vi lätt anpassa vårt system till en enklare bransch och för mindre företag. Åter igen, vi vill fungera som en servicebyrå där kunderna köper vår billing- och reskontratjänst. Våra kunder vill betala för transaktionshanteringen, inte för utvecklingstimmar och förvaltning. Enkel utveckling och förvaltning blir därmed naturliga krav som vi ställer på vårt system där vi producerar tjänsterna. I ett nötskal Företagsprofil Sergel, ett dotterbolag till TeliaSonera, hanterar kreditupplysningar, billing, reskontra och inkasso åt företag såsom en servicebyrå. Servicebyråtanken är att kunder ska kunna lägga ut sina betalningsrutiner åt Sergel för att istället ägna sig åt sin kärnverksamhet. Uppgift Skapa ett billing- och reskontrasystem som ska kunna användas till olika branscher, vara skalbart och enkelt att kundanpassa. Lösning Skapa ett eget system utvecklat i .NET som klarar av prestandakraven och som samtidigt sparar kostnader. Resultat Ett skalbart, tillförlitligt system som klarar av över 200 miljoner transaktioner varje månad, hanterar ett antal miljoner slutkunder samt genererar 100 000 fakturor på någon timme. Produkter och tjänster Visual Studio .NET 2003 Enterprise Architect, främst Visual C#, Microsoft .NET Framework 1.1, Microsoft SQL Server 2000, Windows 2000 Advanced Server. Kontaktpersoner: Magnus Lindgren, partneransvarig på Sergel Kredittjänster AB, [email protected] Björn Wiktorsson, vd på Cefalo AB, [email protected] Citat “En stor fördel med Billjonär är att man kan skala både upp och ner. Det innebär att om en kund vill ha ett betalningssystem som inte är lika transaktionsintensivt som telekom, så kan vi lätt anpassa vårt system till en enklare bransch och för mindre företag.” Magnus Lindgren, partneransvarig på Sergel AB