Egenutvecklat eller standardsystem?

”Ska vi utveckla ett eget system eller ska vi köpa ett standardsystem?”

Det är en av de viktigaste frågorna man ställer sig när man köper ett nytt system. I dagens läge säger de flesta att de absolut ska köpa ett standardsystem.

Frågan är dock om det går att ge ett så enkelt svar på frågan, eftersom det faktiskt finns fler alternativ än två att välja mellan. Vilket alternativ man sedan väljer styrs bl.a. av hur viktigt det är att kunna anpassa de aktuella processerna och hur lång tid man har på sig. De olika alternativen som finns tillgängliga är:

Enkelt standardsystem

Ett system som kan vara skrivet i Java, C# eller något annat programmeringsspråk, eller vara en applikation framtagen med någon form av processverktygslåda. Möjligheterna att konfigurera systemet är tämligen små, alternativt begränsar man frivilligt sina möjligheter genom att acceptera standardinställningarna, för att göra implementationsarbetet så enkelt som möjligt.

Passar för följande processegenskaper:

  • Enkel standardprocess
  • Inte central för verksamheten
  • Hög vilja/förmåga att anpassa processen efter verktyget
  • Inget eller litet behov av integrationer

Fördelar:

  • Någon annan (leverantören) tar alla kostnader för att vidareutveckla systemet
  • Snabb implementation, så länge processen enkelt går att passa in i verktyget.
  • Systemet är troligen tämligen billigt.

Nackdelar:

  • Kunden har ingen, eller mycket liten, kontroll över förändringar i systemet.
  • Om process och verktyg visar sig passa illa med varandra, blir implementationen mycket besvärlig.
  • Svårt att göra integrationer med andra system.
  • Om processen förändras tvingas man troligen byta system
Blå Tornets lösning:

SSM out-of-the-box som en molnbaserad tjänst. Implementationen tar några timmar och eftersom det är en molnbaserad tjänst behöver man inte bekymra sig om egen drift eller hårdvara. Kunden får naturligtvis tillgång till SSMs konfigurerbarhet, men väljer att inte använda den. Om det vid ett senare tillfälle är aktuellt att göra förändringar aktiverar men enkelt konfigurerbarheten och SSM blir då i stället ett ”Konfigurerbart standardsystem”. På så sätt slipper man de nackdelar som nämns ovan.

Konfigurerbart standardsystem

Ett system som kan vara skrivet i Java, C# eller något annat programmeringsspråk, eller vara en applikation framtagen med någon form av processverktygslåda. Inbyggt i systemet finns goda möjlighter att konfigurera sådana saker som t.ex. statuskedjor, kategorier, användargrupper, rättigheter, API för integrationer och skärmbilder.

Passar för följande processegenskaper:

  • Alla standardprocesser och många verksamhetsspecifika processer.
  • Även centrala processer, så länge de passar inom den ram som sätts av verktyget.
  • Viss vilja till anpassning av process och verksamhet till verktyget.
  • Inget till stort behov av integrationer.

Fördelar:

  • Kunden ansvarar enbart för systemets konfiguration. All annan systemutveckling hanteras av leverantören.
  • Snabb implementation, eftersom man bara behöver göra konfigurationsändringar för att anpassa verktyget till processen.
  • Kunden kan själv genomföra ett antal olika förändringar, om det blir aktuellt.

Nackdelar:

  • Kunden måste ta ett något större ansvar för systemet och sätta sig in i de olika konfigurationsmöjligheterna för att kunna använda systemet optimalt.
  • Ett konfigurerat standardsystem har trots allt någonstans en begränsning i hur mycket det går att anpassa. Om processen spränger dessa begränsningar blir det svårt att implementera verktyget.
Blå Tornets lösning:

SSM, med alla dess konfigureringsmöjligheter, som en molnbaserad lösning eller lokal installation. I SSM finns mängder av konfigurationsmöjligheter, som kunden själv styr över. Mer information finns på sidan om SSM Ärendehantering.

Anpassat standardsystem (traditionellt programmeringsspråk)

Detta är en lösning vi absolut inte rekommenderar, men vi vill ändå ta med den som ett alternativ, eftersom den trots allt är ganska vanligt förekommande. Det inträffar när en kund som tittar på ett standardsystem skrivet i ett traditionellt programmeringsspråk (Java, C#, C++ eller liknande) upptäcker att det inte riktigt klarar alla krav som ställs, och då börjar diskutera med leverantören om att göra kodade specialanpassningar. Det innebär att leverantören skapar avsteg från standardsystemets kod, vilket skapar helt kundunika releaser.

Passar för följande processegenskaper:

  • Verksamhetsspecifika processer.
  • Centrala processer.
  • Viss vilja till anpassning av process och verksamhet till verktyget. Verktyget kan också anpassas till processen helt och hållet, beroende på hur stora ingrepp man vill göra i standardprogrammet.
  • Inget till stort behov av integrationer.

Fördelar:

  • Verktyget kan anpassas till verksamheten. Denna fördel går dock lika lätt att uppnå med ett ”Anpassat standardsystem (processverktyg)” – se nedan.

Nackdelar

  • Varje uppgradering blir kostsam och komplicerad, eftersom den kommer att kräva en översyn av anpassningarna.
  • Att göra förändringar blir dyrt och tidskrävande. Varje förändring kräver en förhandling med leverantören och leverantören måste dessutom prioritera förändringen mot alla andra kunders önskemål. Det senare innebär att man kan få vänta väldigt länge på att få gehör för ett specifikt önskemål.
  • Den anpassade koden måste testas, där kunden blir den första och enda testkunden på den funktionaliteten. Man kan därför förvänta sig att hitta ett stort antal buggar.
  • Implementationstiden blir längre, eftersom man är beroende av att leverantören har tillgång till programmeringsresurser och av leverantörens releasecykel.
Blå Tornets lösning:

Vi erbjuder inte denna typ av lösning, eftersom vi inte anser att den gör det möjligt för oss att möta eller överträffa kundens förväntningar.

Anpassat standardsystem (processverktyg)

System där man arbetar med regler, drag-and-drop och andra verktyg för att ta fram kundanpassade lösningar. I grunden finns någon form av processverktygsmotor som är den stabila plattform på vilken man skapar all funktionalitet. Utvecklingsarbetet går mycket snabbt, eftersom man tack vare processmotorn får så mycket gratis. Det tar oftast inte mer än ett par veckor att ta fram verktygsstöd, även för mycket komplicerade processer.

Man kan till viss del likna dessa system med Excel. I botten finns ett mycket stabilt standardsystem som används av väldigt många. Systemet i sig har dock ingen egen användbar funktionalitet out-of-the-box, utan det kräver att man skapar sina egna beräkningar e.t.c. Man kan använda Excel till så enkla saker som att addera två tal, men också till att skapa mycket avancerade beräkningsmodeller. Med hjälp av Excel-plattformen, som är gemensam för alla kunder, kan man skapa mängder med kundunika tillämpningar. Trots detta är uppgraderingar till senare Excel-versioner inget problem, eftersom den kundunika funktionaliteten ligger vid sidan om.

Passar för följande processegenskaper:

  • Centrala processer, eller mindre viktiga processer som är helt unika för kunden.
  • Verktyget ska anpassas till processen, inte tvärt om.
  • Inget till stort behov av integrationer.

Fördelar:

  • Tillåter full flexibilitet, vilket gör att processverktyget kan anpassas fullt ut till processen.
  • Trots flexibiliteten, går det mycket fort att skapa verktygsstödet för i princip vilken process som helst.
  • Uppgraderingar av den underliggande plattformen påverkar inte processfunktionaliteten.
  • Med litet utbildning, kan kunden själv genomföra de allra flesta förändringarna eller hantera nyutveckling i verktyget, ungefär som man gör i Excel.

Nackdelar:

  • Flexibiliteten ställer högre krav på att kunden kan beskriva vad man vill med sin egen verksamhet. I ett rent standardsystem är man helt enkelt tvungen att anpassa sig och slipper därför ställas inför de mängder med alternativ som ett anpassat standardsystem innebär.
Blå Tornets lösning:

Vi erbjuder det mycket populära och beprövade processverktyget BMC Remedy Action Request System från BMC Software. Det används idag av tiotusentals företag över hela världen. Läs mer om BMC Remedy ARS.

Eget system från grunden (traditionellt programmeringsspråk)

Man använder egna eller inhyrda utvecklare för att från grunden ta fram ett helt nytt system, skrivet i Java, C# eller något annat traditionellt programmeringsspråk.

Fördelar:

  • Om man är absolut tvungen, eftersom inget av ovanstående alternativ kan leverera det man behöver, får man något som täcker behoven.
  • Man har oändliga möjligheter att påverka funktionaliteten.

Nackdelar:

  • Dyrt och komplicerat
  • Lång tid innan systemet är klart
  • Det krävs mycket testning och många fel kommer att hittas.
  • Svårt att kravställa från ”vitt papper”, helt utan begränsningar
  • Allt förvaltningsansvar faller på kunden
Blå Tornets lösning:

Vi erbjuder inte denna typ av lösning.