Model softverskog procesa

Priprema za izradu softverskog sistema obuhvata ključne faze razvoja softverskih aplikacija kroz analizu ideja, specifikaciju zahtjeva i timski rad. Učenici će učiti kako prepoznati tržišne potrebe, definirati funkcionalnosti i realizirati projekat.

Model softverskog procesa
Organizacijski oblik nastave
Suradnja škole sa roditeljima i zajednicom te razvoj školskog kolektiva
Trajanje

15 časova

Predmet

Softver inženjering

Ciljevi i ishodi učenja i poučavanja

Ciljevi:

  • Učenici imaju formirane tri projektne ideje iz oblasti softver inženjeringa
  • Odabrali su željeni model razvoja softvera
  • Motivisani su za upotrebu SCRUM razvojnog metoda
  • Podjeljeni su u projektne timove i imaju dodjeljene projektne uloge u sklopu svog tima
  • Razmotrili su i motivisani su za dodatne mogućnosti upotrebe planiranog softvera

Ishodi:

  • Učenici će razumjeti osnovne etape razvoja softverskih aplikacija
  • Učenici će razviti vještine timskog rada kroz formiranje radnih grupa
  • Učenici će primijeniti SCRUM metodologiju kroz stvaranje vlastitih softverskih projekata

NAPOMENA: Predstavljeni ishodi se prate u skladu sa predviđenim i gore navedenim etapama. Mogu se ponavljati kroz navedene nastavne jedinke. U pripremi po etapi će se navesti samo glagol koji je detaljnije povezan u navedenoj tabeli. (Prilog 1. Ishodi-tabela)

Detaljan opis realizacije

Mnogo je različitih SW/softver procesa, ali svi oni uključuju stavke:​

  • Specifikacija​
  • Dizajn i implementacija ​
  • Provjera valjanosti​
  • Evolucija​

Model SW procesa je apstraktni prikaz stvarnog procesa izrade softvera. On predstavlja opis procesa iz nekog posebnog ugla gledanja na softver.​ Kad opisujemo i raspravljamo o procesima, obično razgovaramo o aktivnostima kao što su specificiranje modela podataka, dizajniranje korisničkog interfejsa itd. kao i o suradnji sa naručiocem posla.

Opisi procesa mogu takođe uključivati:​

  • Šta je rezultat procesne aktivnosti​
  • Raspodjela zadušenja osoblja radnog tima​
  • Uvid u provođenje aktivnosti procesa ili  proizvoda i usporedba sa polaznim stanjem

Napomenimo da ne postoje ispravni ili pogrešni SW procesi. U praksi većina procesa uključuje elemente i planskog i agilnog pristupa. Procesi vođeni planom su procesi u kojima se sve procesne aktivnosti planiraju unaprijed (napreduju i mjere se planski). U agilnim procesima planiranje je postepeno i mnogo je lakše promijeniti proces ukoliko postoje promjenjivi zahtjevi kupca.​ Razmatrali smo tri modela softverskog procesa: Model vodopada, Inkrementalni razvoj i Integracija i konfiguracija.

U ovoj pripremi promatramo razvoj softvera kroz osnovne etape:

  1. Razrada projektne ideje​
  2. Proces razvoja softvera
  3. SCRUM proces razvoja​
  4. Projektni tim i uloge​
  5. Dodatni resursi

Prema nastavnom planu rada predmeta Softver inženjering, IT gimnazije, predviđeno je šest časova pod oblasti: “ Pripreme za praktičan rad na izradi srednje složene aplikacije, u timovima od po tri člana ili individualno”,  te  devet časova oblasti: “Specifikacija softverskih zahtjeva”. Odlučila sam objediniti sadržaje u jednu krovnu pripremu gdje bih na sedmičnom nivou (tri časa sedmično) razradila etape: 

I etapa: 

  • Razmatranje ideja i mogućnosti
  • Izbor platforme i elemenata
  • Analiza mogućih praktičnih projekata

II etapa: 

  • Formiranje timova od tri člana – uloge
  • Podjela projektnih zadataka učenicima
  • Prezentacija plana realizacije projekta

III etapa: 

  • Specifikacija i validacija softverskih zahtjeva
  • Softverski zahtjevi (software requirements)

IV etapa: 

  • Utvrđivanje i analiza softverskih zahtjeva
  • Softverski zahtjevi - traženje dodatnih informacija i pojašnjenja

V peta: 

  • Samostalan rad učenika na projektu uz mentorstvo profesora
I etapa – 2x45min
a. Razmatranje ideja i mogućnosti
b. Izbor platforme i elemenata

MOTIVACIJA – uvodni dio časa  (5 min) 

Obavijestite učenike da u narednih mjesec dana radite na izradi softverskog sistema upotrebom agilnog – SCRUM modela rada, a zatim ih pozovite na kreativnost i rad na pobuđivanju ideja prikazom video zapisa sa linka: https://www.youtube.com/watch?v=cIsA1s9SwEU

IZNOŠENJE PLANA RADA (5 min)

Svaki projekt je u prvom redu plan rada u cilju realizacije ključne  ideje. Na čas donijeti kutijicu sitnih raznovrsnih predmeta, minimalno 5 maksimalno 10. Uz pomoć asocijacija i nasumičnim izborom predmeta pobuditi maštu učenika prilikom čega ćete izdvojiti ključna pitanja potrebna za  kvalitetno sortiranje ideja:

Uzrok? – Napraviti analizu aktuelnog stanja i odrediti uzrok nastanka potrebe za projektom.  

Zašto? – Koji problemi će se riješiti realizacijom projekta.  

Gdje? – Geografska lokalizacija projekta (naselje, općina, država, ...)  

Kako? – Definiranje popisa aktivnosti projekta. 

Šta? - Naziv projekta (jednostavan, jasan i iz njega se vidi čime se projekt bavi).  

Ko? – Ko realizira aktivnosti ili ko su odgovorne osobe za realizaciju aktivnosti?

REALIZACIJA – glavni dio časa ( aktivnosti 30 min – pauza 5min – osvrt 5 min – aktivnosti 30 min)

Nakon što se na tabli, zajedničkim angažmanom nastavnika i učenika, nađu postavljena pitanja kreće se u formiranje radnih grupa za predviđenu aktivnost: 

Razmatranje ideja i mogućnosti za softverski projekat


Učenici se podjele u grupe po 3 učenika,  čime se na nivou časa formira 4 radna stola (standard za časove SI je 12 učenika iz odjeljenja po času).

Upotrebom tehnike “oluja mozgova” učenici odabiru u okviru svoje grupe temu koja im nudi najviše potencijala za uspješan softverski product.

PRVI ZADATAK : Analiza domene problema (definiranje problema, traži se uzrok nastanka potrebe za projektom, te odgovori na pitanje zašto? i gdje?) Za realizaciju 30 min

Učenicima predočiti sljedeće sadržaje (pripremiti slide):

Projektni ciklus je niz faza kroz koje projekat prolazi od pokretanja do završetka.

On počinje idejom koja se kasnije razvija u plan rada. 

Stavke o kojima učenici vode računa prilikom “mozganja”:

1. Identifikacija

Nakon konsultacija sa potencijalnim korisnicima, analize tržišta i eventualnih problema koji postoje, donijeli ste odluku o tome koliko je odabrana projektna ideja kvalitetna i podobna te kao takva zaslužuje da bude predstavljena kroz vaše aplikativno rješenje.

2. Osmišljavanje programa

Analizirali ste stanje tržišta (možete razmisliti ko bi mogli biti potencijalni finansijeri ili donatori za vaš projekat). Istražili ste ograničenja mogućnosti vaše aplikacije i da li se projekat može nesmetano izvesti te ste razmislili sa kojom od institucija, organizacija ili pojedinaca možete ostvariti suradnju sa ciljem što kvalitetnije realizovane aplikacije. U ovoj stavci ste odredili osnovne ciljeve projekta i upoznali se sa prioritetnim zahtjevima tržišta. (Učenici imaju pristup internetu i ranije su obavješteni o planiranim radnim zadacima za ovaj čas)

3. Formulacija

Je li projekat izvodljiv, održiv i hoće li ostvariti koristi koje su previđene? Odgovor na ovo pitanje zapravo predstavlja informaciju o tome koliko, kako i od koga možete ostvari eventualnu finasijsku ili neku drugu vrstu podrške?

(Kraj I časa - pauza od 5 min)

OSVRT Za realizaciju 5 min. 

Obavještavam učenike da je prva faza odabira potencijalnih ideja završena i da je vrijeme da predstave ideje drugim grupama. Te da će svaka grupa da izlaže po 5 minuta bez obzira na broj pripremljenih potencijalnih ideja. Za svaku od njih će trebati istaknuti ključne razloge zbog kojih su privlačne. Upoznajem ih da ćemo upotrebom Venneovog dijagrama prilikom izlaganja učenika bilježiti  preklapanja projektnih ideja nezavisno od toga koja grupa ih delegira. Ta usporedba će nam pomoći u eventualnoj sintezi ideja. 

DRUGI ZADATAK : Predstavljanje ideja svake grupe kratkim izlaganjem u trajanju od 5 minuta. Za realizaciju 15 min.

Nakon predstavljanja potencijalnih ideja potrebno je izvršiti selekciju i odabrati 3 ideje koje će se realizirati u formi softverskog projekta.

Uz pomoć tehnike “kockarenje” učenici trebaju njima tri najupečatljivije ideje provesti kroz proces evaluacije, svako za sebe, bacanjem kockice (može virtualna kocka https://freeonlinedice.com), gdje je svakom broju dodjeljena određena naredba. Uz pomoć tih naredbi učenik piše o odabranoj ideji. 

Učenicima predočiti sljedeće sadržaje (pripremiti slide):

  1. Opiši – zašto izdvajaš ovu ideju
  2. Uporedi – zasičenost tržišta sa onim što ideja nudi kao softversko rješenje
  3. Poveži – potrebe tržišta i ono što ideja nudi – procjeni zadovoljenje
  4. Raščlani – da li se odabrana ideja može predstaviti kao set pojedinačnih funkcionalnosti
  5. Primjeni – posmatranoj ideji dodijeli jednu ili više potencijalnih primjena u praksi
  6. Za/protiv – nakon analize donesi konačni sud da li delegiraš ideju dalje ili ne

EVALUACIJA – završni dio časa (10 min)

U ovom dijelu drugog časa rada biramo konačne ideje za rad, vršimo njihovu evaluaciju na osnovu tri stavke:

  • Potreba tržišta za datim softverskim rješenjem
  • Težina realizacije postavljenih ciljeva
  • Vremenska i materijalna ograničenost realizacije

Svaki učenik maksimalno pola minute da na osnovu procesa kockarenja iznese stav o tri strane kocke. Barem jedan učenik sa njim mora razmijeniti stavove. Proces nastavljamo dok svaki učenik ne iznese svoj stav. U konačnici imamo set najbolje rangiranih ideja. 

 

 

 

Praćenje i procjenjivanje

U okviru ova dva časa pratim učenički angažman u radu, inovativnost, suradnju i motivaciju. Procjenjivanje znanja u okviru ova dva časa nije planirano, ali postignuta zalaganja će svakako rezultirati kvalitetom u nastavku rada na razvoju i implementaciji projektne ideje (softverskog rješenja).

 

Ideje za domaće zadaće (nastavak aktivnosti) i uključivanje roditelja

Izbor platforme i elemenata:

Učenike obavijestiti online, putem classrooma, o raspodijeli u timove po 4 člana. Te da će svakom timu biti dodijeljena po jedna od odabranih tema. Učenici će imati mogućnost odabira razvojnog okruženja u kojem će realizovati ideju (web, mobile, aplikacija za PC ili kombinovano). Za zadaću oni trebaju razmisliti o setu kreiranih ideja i njihovoj implementaciji na određeni način. Također trebaju znati da će imati mogućnost odabira tima ali ne i potpunu autonomiju u tome. O svemu navedenom bi se nastavilo naredni čas u okviru teme:  Analiza mogućih praktičnih projekata.

Napomena: Prilikom formiranja timova i dodjele projektnih ideja voditi se znanjima o učeničkim sposobnostima i afinitetima, te o tome da li su u većem dijelu upravo ti učenici delegirali dodjeljenu im ideju ili njoj sličnu.

 

Savjeti za druge nastavnike/ce kod realizacije ove lekcije/teme

Ovo je prva priprema (za dva časa) od planiranih pet (svaka po dva časa) za oblast: Pripreme za praktičan rad na izradi srednje složene aplikacije i Specifikacija softverskih zahtjeva.

 Iako je po svakoj fazi planirano tri stavke ostavljam si prostora da uvijek jedan dio sadržaja prepustim učenicima za samostalan rad u suradničkom okruženju (realni ili online model, kroz različite online kolaboracijske sisteme). Svaki naredni čas u okviru nastavnih sadržaja prelazimo te radne zadatke uz planirani nastavak razvoja.

 

Prilozi (radni materijal, radni listovi i dr.)

Slične objave


Dopisivanje

Morate biti prijavljeni da biste ćaskali