Atunci când trebuie să achiziționăm o aplicație software suntem puși în situația de a decide între mai multe opțiuni. Să cumpărăm o aplicație software gata făcută numită și COTS (comercial off-the-shelf), să contactăm o firmă care dezvoltă aplicații software pentru a construi aplicația de la zero așa cum o dorim sau să apelăm la o platformă BPMS peste care să configurăm aplicația dorită? O astfel de alegere nu este deloc simplă pentru ca fiecare opțiune are avantaje și dezavantaje iar alegerea optimă se poate face doar după o evaluare a mai multor parametri.
Să analizăm împreună cele trei opțiuni și să vedem cum stau lucrurile.
1. APLICAȚIE SOFTWARE DE RAFT
Aplicație software “de pe raft” este prima opțiune care ne vine în minte și de cele mai multe ori este și opțiunea selectată. Exista o piață extrem de diversificată de aplicații software gata făcute care acoperă aproape orice nevoie organizațională, de la ERP la CRM și de la WMS la BI. Acest tip de aplicații conțin diverse setări care permit activarea și dezactivarea diverselor funcționalități sau module precum și diverse particularizări în funcție de specificul clientului. Diverșii furnizori folosesc o paletă largă de tehnologii iar interfețele și funcționalitățile sunt extrem de variate.
Avantajele unei aplicații de pe raft sunt:
- Cel mai bun preț în raport cu o aplicație la comandă sau cu un BPM (pentru că aplicația se vinde în serie);
- Timpul de livrare al aplicației este foarte scurt pentru ca este deja dezvoltată;
- Suportul tehnic este bun atât din perspectiva prețului cât și a disponibilității pentru că este oferit unui număr mare de clienți și atunci poate fi optimizat;
- Aplicația este în general stabilă, are puține defecțiuni și primește actualizări relativ frecvente;
- Include bune practici din diverse industrii, modele de rapoarte și funcționalități standard în concordanță cu legislația (dacă este cazul).
Dezavantajele unei aplicații de pe raft sunt:
- Posibilitățile de adaptare la nevoile specifice ale clientului sunt limitate;
- Nu se pot dezvolta funcționalități la cerere decât dacă acestea sunt solicitate de mai mulți clienți;
- Nu te poți diferenția de concurenții tăi folosind aceeași aplicație cu aceleași funcționalități și performante;
- Posibilitățile de interconectare cu alte aplicații sau sisteme sunt în general limitate;
- Actualizările sunt de regulă plătite suplimentar în cadrul unui abonament iar renunțarea la ele nu este o soluție pentru că pe termen lung rămâi cu o aplicație învechită și pentru care furnizorul nu va mai asigura suport;
- Dependența de furnizor – decizia de schimbare a furnizorului nu se poate face decât renunțând la aplicație. În plus datele de regulă sunt stocate într-un mod foarte particular la nivelul aplicației și sunt greu de extras pentru a fi importate în altă aplicație.
2. APLICAȚIE SOFTWARE LA COMANDĂ
O aplicație software la comandă este opțiunea care ne vine în minte atunci când: “Ce avem noi nevoie este așa de specific încât nu poate fi găsit nicăieri gata făcut”. Mai mult, uneori managerii spun: “Și dacă tot depunem efort să construim această aplicație, vrem să fie a noastră și să nu cumva să mai ajungă și la altcineva” chiar dacă trebuie să plătim în plus. O să vedem că și o platforma BPMS poate acoperi aceste cerințe doar că o astfel de opțiune este mai nouă și mult mai puțin cunoscută.
Avantajele unei aplicații software la comandă:
- Oferă o foarte bună flexibilitate pentru a acoperi nevoile clientului atât ca interfață grafică cât și ca funcționalități;
- Posibilitate de selecție – există o multitudine de companii (în țară și în străinătate) care oferă servicii de dezvoltare software la comandă folosind diverse tehnologii;
- Oferă posibilitatea de a deține drepturile de proprietate intelectuală asupra aplicației astfel încât să nu mai poată fi folosită de altă companie.
Dezavantajele unei aplicații software la comandă:
- Este cea mai costisitoare soluție în raport cu un o aplicație de pe raft sau cu un BPM;
- Timpul de dezvoltare este în general mare și majoritatea proiectelor de acest tip produc întârzieri și depășiri de cost în raport cu planificarea inițială;
- Necesită o colaborare excelentă între client și furnizor pe durata proiectului pentru a putea identifica corect cerințele și pentru a le implementa conform cu așteptările (pentru că odată creată, modificările nu sunt ușor de realizat);
- Mentenanța este scumpă și consumă mult timp – din cauza modului particular în care a fost dezvoltată aplicația, dar și datorită destrămării echipei de dezvoltare și a unei documentații incomplete la nivelul codului (caz întâlnit în cele mai multe situații);
- Modificările sau adăugarea de noi funcționalități sunt greu de făcut, deci timpul de dezvoltare este mare, adesea testarea fiind incompletă și introducând deficiențe de funcționare; din toate aceste motive prețul modificărilor este mare;
- Posibilitățile de interconectare cu alte aplicații sau sisteme sunt limitate la designul inițial;
- Dependența de furnizor – de cele mai multe ori chiar dacă clientul deține codul sursă, în cazul unei aplicații complexe (cu sute de mii de linii de cod), preluarea de către o altă companie a mentenanței sau a noilor dezvoltări este foarte de greu de făcut și implicit devine foarte costisitoare.
3. PLATFORMA BPM
Platforma BPM este o opțiune mai nou apărută pe piață (sau cel puțin conștientizată ca atare) și oferă un mix interesant între o aplicație de pe raft și o aplicație la comandă. Mai exact platforma conține un portal pentru utilizatori, o baza de date și o interfață grafică care permite construirea funcționalităților aplicației fără scriere de cod folosind principiile BPM. Odată instalată platforma peste ea se pot implementa oricâte fluxuri de lucru. Aceste fluxuri pot fi modificate rapid, de cele mai multe ori fără să fie nevoie de intervenția furnizorului. Aplicația se construiește dinamic în funcție de configurările făcute și schimbările pot fi publicate în portalul utilizatorilor în timp real.
Avantajele unei platforme BPM:
- Oferă cel mai înalt nivel de flexibilitate și agilitate raportat la o aplicație de pe raft sau o aplicație la comandă pentru că permite modelarea inițială ți respectiv remodelarea proceselor cu ușurință;
- Permite implementarea graduală și agilă a proceselor de business uneori chiar de către client cu o minimă implicare a furnizorului;
- Permite interconectarea rapidă și simplă a datelor din diversele procese dar și integrări cu alte aplicații și sisteme la nivel de baza de date sau prin intermediul API;
- Procesele sunt în general vizuale și ușor de înțeles pentru o bună comunicare înter-departamentala versus modul „hard-coded” folosit de aplicațiile la comandă sau cele de pe raft;
- Oferă posibilitatea de a deține drepturile de proprietate intelectuală asupra conceptului de procese astfel încât să nu mai poată fi folosită de altă companie;
Dezavantajele unei platforme BPM:
- Are un preț mediu atât pentru achiziție cât și pentru mentenanță – mai mare decât al unei aplicații de pe raft dar mai mic decât al unei aplicații la comandă;
- Timpul de implementare este mediu – mai mic decât în cazul unei aplicații la comandă dar mai mare decât în cazul unei aplicații de pe raft;
- Dependența de platformă – procesele se configurează la nivelul platformei BPM și sunt dependente de aceasta. Migrarea de la o platformă la alta este în general mai simplă decât în cazul aplicațiilor create de la zero sau de pe raft, dar tot poate ridica dificultăți;
- Interfața grafică și capabilitățile funcționale sunt în general mai limitative decât în cazul unei aplicații la comandă însă acest fapt poate duce și la o adopție mai ridicată a unei astfel de aplicații.
Concluzie: În funcție de maturitate, de strategia de afaceri folosită de companie, dar și de bugetul disponibil, alegerea optimă poate fi: o aplicație de raft, o platformă BPM sau o aplicație la comandă. În infograficul de mai jos am sumarizat opțiunile pentru înțelegerea sintetică a fenomenului și pentru o decizie mai rapidă. Orice decizie ați lua, nu uitați că important este să fiți coerenți cu strategia de afaceri!