Što je uzorak softverske analize?

Obrazac softverske analize je metoda dizajniranja računalnog programa izjednačavanjem apstraktnih procesa ili obrazaca s radom programa koji se razvija. Koncept je usporediti neku vrstu uzorka koji učinkovito funkcionira u nekom kontekstu, obično u stvarnom svijetu, a zatim primijeniti istu logiku, a ponekad i terminologiju uzorka na program koji se dizajnira. Procjenom cjelokupnog funkcioniranja programa ili modula na ovaj način, cilj je pronaći manje obrasce tijekom analize softvera i, potencijalno, odgovarajuće obrasce dizajna za početak rada na stvarnim detaljima implementacije. Za razliku od dizajnerskih obrazaca koji se često koriste za pomoć pri dizajnu implementacije i koda, uzorak analize softvera je više namijenjen pružanju okvira za razmišljanje o projektu kako bi se složenost bolje vizualizirala. Ne postoji formalna definicija za korištenje ili razvoj obrasca softverske analize, iako postoji nekoliko primjera obrazaca.

U početnim fazama razvoja softvera, obrazac analize softvera namijenjen je pomoći u strukturiranju širokog pogleda na program i kako se njegovi dijelovi međusobno odnose. Uzorak je, međutim, namijenjen za apstraktnu analizu, a ne za razradu manjih detalja aplikacije, kao što su pojedinačne metode, varijable ili formati datoteka. Jedan od razloga za apstrakciju je taj što se koncept jednog uzorka analize softvera može samo neznatno modificirati i zatim ponovno koristiti za drugi softver koji bi u stvarnosti mogao obavljati potpuno drugačiji zadatak.

Prilikom razvoja obrasca softverske analize najčešće se koriste primjeri iz stvarnog svijeta. Jedan primjer može biti korištenje pošte kao uzorka za analizu softvera za jednostavan poslužitelj poruka. U ovom primjeru, slova bi predstavljala poruku, a pečat bi mogao predstavljati neku vrstu provjere valjanosti poslužitelja. Poštanski sandučić postaje red za poruke, a vremena preuzimanja i odlaska vezana su za procese slanja i primanja. Na taj se način složena struktura aplikacije može apstrahirati i razmišljati na konkretniji način, toliko da se terminologija izvora uzorka često može prevesti u nazive klasa ili komponenti samog programa tijekom provedba.

Komplikacije se mogu pojaviti pri korištenju obrasca analize softvera, posebno za vrlo velike programe. Pretjerano pojednostavljivanje programa tijekom razvoja moguće je tako da neki podsustavi možda, tijekom implementacije, ne spadaju striktno unutar analitičkog obrasca kada se jednom realiziraju. Alternativno, uzorak može biti tako strukturiran da se događaji unutar programa modeliraju na način koji odgovara uzorku i koji je jasan, ali ne mora nužno biti vrlo učinkovit.