SV Group Usluge Razvoj aplikacija

Razvoj aplikacija

SV Group preporuke za razvoj aplikacija temelje se na Rational Unified Process-u (RUP). 

RUP proces i dane preporuke ne predstavljaju gotova rješenja za razvoj aplikativnih projekata već je potrebno izvršiti njihovu prilagodbu i razradu ovisno o specifičnostima pojedinog aplikativnog projekta. U daljnjem tekstu ne navode se svi elementi koji mogu nastati kao proizvod procesa i preporuka  za razvoj aplikacija, već samo oni najbitniji.

Pri tome treba napomenuti da, ovisno o specifičnostima projekta, nije uvijek potrebno producirati sve elemente razvoja aplikacije koji su navedeni u nastavku teksta.

Osnovna načela procesa razvoja aplikacija temeljenog na Rational Unified Processu su :

  • Postojanje jasne vizije  – Jasna vizija ciljanog aplikativnog sustava definira se na početku projekta u okviru dokumenta „Projektni zadatak“.
  • Iterativnost  – Rad na projektu trebao bi što ranije rezultirati funkcionalnom verzijom aplikacije koju korisnici mogu koristiti i evaluirati. Dodatne funkcionalnosti dodaju se u pravilnim razmacima ili iteracijama.
  • Upravljanje rizikom – Pri raspodjeli poslova u iteracije treba koristiti načelo smanjenja rizika: prvo bi trebalo započeti rad na najrizičnijim dijelovima aplikacije.
  • Vizualni dizajn – Kod razvoja aplikacija pomoću objektno-orijentiranih jezika (Java, C++…) potrebno je koristiti UML za opise objekata, njihovih atributa, odnosa među objektima itd.
  • Arhitektura bazirana na komponentama i servisima (SOA – Service Oriented Architecture) – Buduće aplikativno rješenje treba biti izgrađeno korištenjem ponovno iskoristivih komponenti, što podrazumijeva korištenje SOA arhitekture.
  • Redovita provjera rezultata – Status i rezultate projekta potrebno je redovno provjeravati kako bi se mogle poduzeti odgovarajuće radnje vezane za probleme u upravljanju projektom, tehničke probleme ili projektne rizike.
  • Upravljanje promjenama – Zahtjevi za promjenama aplikacije su neizbježni te ih je potrebno prikupljati isključivo preko unaprijed definiranog formalnog procesa.
  • Korisnička podrška – Krajnjim korisnicima mora biti omogućen utjecaj na razvoj projekta, jer je to jedan od preduvjeta njegovog uspješnog završetka.

Proces razvoja aplikacija grafički možemo prikazati dvodimenzionalno:

  • Horizontalna os predstavlja vrijeme i pokazuje dinamički aspekt procesa razvoja aplikacija odnosno prikazuje faze (Phases) i iteracije (Iterations) procesa razvoja aplikacija.
  • Vertikalna os predstavlja statički aspekt projekta odnosno predstavlja aktivnosti (Disciplines) koje se provode tijekom procesa razvoja aplikacija. 

Osnovne aktivnosti procesa razvoja aplikacija su:

  • Poslovno modeliranje (Business Modeling)
  • Specifikacija zahtjeva  (Requirements)
  • Analiza (Analysis)
  • Dizajn (Design)
  • Implementacija (Implementation)
  • Testiranje (Testing)
  • Naseljavanje (Deployment)
  • Održavanje

Prateće aktivnosti procesa razvoja aplikacija su:

  • Upravljanje projektom (Project Management)
  • Upravljanje konfiguracijama i promjenama (Configuration and Change Mgmt)
  • Upravljanje okruženjem (Environment)

Poslovno modeliranje (Business modeling) 

Jedan od glavnih problema u procesu razvoja aplikacijskih sustava je kako postići međusobno razumijevanje dviju strana: poslovne i IT strane.  Kao rezultat poslovnog modeliranja nastaju slijedeći dokumenti (ne nužno svi):

  • Poslovni Use Case model
  • Poslovni Analitički model
  • Poslovna pravila
  • Poslovni rječnik

Specifikacija zahtjeva (Requirements) 

Specifikacija zahtjeva je aktivnost u procesu razvoja aplikacije kojom se prikupljaju, specificiraju i dokumentiraju informacije bitne za razvoj ciljane aplikacije. Osnovni cilj ove aktivnosti je opisati što ciljani aplikativni sustav mora ostvariti. Rezultat Specifikacije zahtjeva su slijedeći dokumenti:

  • Projektni zadatak
  • Software Requirements Specifications
  • Use Case Model

Analiza 

Analiza je aktivnost koja se bavi analiziranjem podataka i informacija prikupljenih tijekom Specifikacije zahtjeva i Poslovnog modeliranja, a u cilju kreiranja slijedećih dokumenata:

  • Analitički model
  • User Experience model
  • Software Architecture Document (SAD)

Dizajn

Dizajn je aktivnost kojoj je osnovni cilj da na temelju rezultata Analize proizvede dovoljno detaljnu specifikaciju koja se može efikasno implementirati i testirati.

Primarni ulazni dokumenti u postupku dizajna su Use case model, Analitički model, Software Requirements Specification, Software Architecture Document, User Experience model te, po želji, rezultati testiranja. 

Implementacija 

Cilj aktivnosti implementacije je izrada ciljnog aplikativnog sustava u skladu s prethodno usvojenim dokumentima.

Primarni ulazni dokumenti u postupku Implementacije su Dizajnerski model, Data model, Software Architecture Document, User Experience model te opcionalno Rezultati testiranja.

Rezultati Implementacije su:

  • Verzija aplikacije (izvorni i izvršni kod)
  • Dokumentacija aplikativnog koda

Testiranje

Testiranje je aktivnost planiranja, definiranja i testiranja aplikativnog sustava, čiji je cilj da u konačnici osigura ispunjavanje definiranih funkcionalnih i nefunkcionalnih zahtjeva projekta.

Naseljavanje

Naseljavanje (engl. deployment) je aktivnost koja obuhvaća naseljavanja (isporuke) aplikativnog sustava (konačne verzije ili jedne od iteracija) u testnu, simulacijsku ili produkcijsku okolinu.

Održavanje

Održavanje obuhvaća sve izmjene aplikativnog sustava nakon početka produkcijskog rada sa svrhom ispravljanja grešaka, poboljšanja performansi sustava ili uvođenja bilo koje druge izmjene sustava radi prilagodbe poslovnom, organizacijskom ili sistemskom okruženju.

Premda aktivnosti održavanja nisu dio razvoja, tijekom cijelog projekta potrebno je računati na činjenicu da će sustav biti podložan izmjenama tj. da će ga biti potrebno održavati. Ovdje treba napomenuti neke specifične radnje vezane za održavanje :

  • Upravljanje prijelazom iz procesa razvoja projekta u proces održavanja projekta podrazumijeva prijenos znanja s razvojnog tima na tim za održavanje, jer se ne mora raditi o istim osobama.
  • Definiranje razine usluge održavanja (engl. Service Level Agreements, SLA) jednom kada sustav započne sa produkcijskim radom. SLA dokumenti definiraju razne vrste i prioritete izmjena kao i vremenske i druge okvire unutar kojih se izmjene moraju izvršiti.

SV Group njeguje dugoročan, stabilan poslovni odnos sa svojim korisnicima,
partnerima te cjelokupnom društvenom zajednicom.

kontakt