Šifra modula CS 370 Fakultet PMF Sarajevo

 

Principi softverskog inžinjeringa

 

NASTAVNI PROGRAM

 

A. OPŠTI PODACI

Fakultet Prirodno-matematički fakultet Univerziteta u Sarajevu
Odsjek Odsjek za matematiku
Smjer Teorijska kompjuterska nauka
Semestar Šesti
Naziv modula Principi softverskog inžinjeringa
Tip modula Obavezni
Broj kreditnih bodova 7
Kontakt sati Ukupno Predavanja Vježbe Seminari Konsultacije
105 30 AV15, LV30 15 15
Samostalni rad (sati) 70
Obavezni prethodno položeni moduli Uvod u programiranje; Objektno orjentirano i generičko programiranje; Računarske mreže
Modul relevantan za module
Nastavno osoblje  
– Nastavnik nosilac modula Doc. dr. Nedžad Dukić
– Ostali nastavnici Doc. dr. Željko Jurić; Doc. dr. Haris Gavranović
– Asistenti Adis Alihodžić; Mr. Esmir Pilav

B. CILJEVI MODULA

Cilj modula je da ponudi studentima osnovno razumijevanje inženjerskog pristupa razvoju softvera, i da ih nauči praktičnim vještinama pri korištenju rasprostranjenih metoda i alata koji se koriste pri razvoju velikih i složenih softverskih sistema. Pri tome se naglasak stavlja na objektno orijentirane metode i modele za analizu i dizajn softverskih sistema.

C. SPECIFIČNI ZADACI MODULA

Kroz navedeni modul studenti će kroz samostalan rad na laboratorijskim vježbama biti  usmjereni na upotrebu inženjerskih alata za planiranje kao što su Microsoft Project, CASE alata koji podržavaju UML, kao što je Rational Rose, kao i implementaciju tipičnih softverskih rješenja u programskom jeziku Java.

D. OČEKIVANI REZULTATI NASTAVNOG PROCESA

Nakon završetka modula, studenti će biti u stanju da:

  • Razumiju osnovne tehnike za planiranje i analizu složenih projekata;
  • Razumiju moderne objektno-orijentirane metode modeliranja softverskih rješenja uz pomoć UML notacije;
  • Razumiju osnovne ideje formalnog modeliranja softvera;
  • Razumiju principe klijent-server arhitekture softvera;
  • Razumiju principe implementacije softvera u programskom jeziku Java;
  • Razumiju upotrebu programskog jezika Java za razvoj mrežnih i Internet aplikacija;
  • Razumiju metode za validaciju i verifikaciju softvera.

E. SADRŽAJ NASTAVNOG PROCESA

Br. Nastavna jedinica Nastavni metod Sati rada
Kontakt Samostalno
1. Pojam softverske krize; Potreba za inženjerskim pristupom razvoju softvera Usmeno izlaganje 2

Vježbe i zadaci 1

Rad na računaru 2

5 2
2. Rukovođenje projektima; Planiranje; Procjena troškova; Organizacija tima Usmeno izlaganje 2

Vježbe i zadaci 1

Rad na računaru 2

5 2
3. Razvoj softverskog procesa; Životni ciklus razvoja softvera Usmeno izlaganje 2

Vježbe i zadaci 1

Rad na računaru 2

5 2
4. Gantt-ovi i PERT dijagrami; CPM i PERT analiza Usmeno izlaganje 2

Vježbe i zadaci 1

Rad na računaru 2

5 2
5. Pregled jezika i metoda za modeliranje softvera; Uvod u osnovne koncepte UML-a Usmeno izlaganje 2

Vježbe i zadaci 1

Rad na računaru 2

5 2
6. Dijagrami slučajeva korištenja; Dijagrami klasa; Dijagrami objekata Usmeno izlaganje 2

Vježbe i zadaci 1

Rad na računaru 2

5 2
7. Dijagrami aktivnosti; Dijagrami stanja; Dijagrami interakcije; Implementacijski dijagrami Usmeno izlaganje 2

Vježbe i zadaci 1

Rad na računaru 2

5 2
8. Mapiranje UML modela na implementacijski nivo objektno orijentiranih jezika (C++, Java) Usmeno izlaganje 2

Vježbe i zadaci 1

Rad na računaru 2

5 2
9. Uvod u formalne metode za specifikaciju softvera; Uvod u Z notaciju Usmeno izlaganje 2

Vježbe i zadaci 1

Rad na računaru 2

5 2
10. Softverske arhitekture; Mrežni i distribuirani softverski sistemi Usmeno izlaganje 2

Vježbe i zadaci 1

Rad na računaru 2

5 2
11. Klijent-server sistemi; Tanki i debeli klijenti Usmeno izlaganje 2

Vježbe i zadaci 1

Rad na računaru 2

5 2
12. Primjeri softverskih rješenja u programskom jeziku Java Usmeno izlaganje 2

Vježbe i zadaci 1

Rad na računaru 2

5 2
13. Primjena jezika Java za razvoj mrežnih i Internet aplikacija Usmeno izlaganje 2

Vježbe i zadaci 1

Rad na računaru 2

5 2
14. Osiguravanje kvaliteta softvera; Faktori kvaliteta; Planiranje kvaliteta Usmeno izlaganje 2

Vježbe i zadaci 1

Rad na računaru 2

5 2
15. Metode za verifikaciju i validaciju softvera Usmeno izlaganje 2

Vježbe i zadaci 1

Rad na računaru 2

5 2

 F. PROVJERA ZNANJA I OCJENJIVANJE

Provjera znanja - kriteriji Ocjenjivanje
Kriterij Maksimalan broj bodova Bodovi za prolaz Osvojen broj bodova Ocjena

(BiH)

ECTS ocjena
Projektni zadaci (2 projekta) 40 25 < 55,00 5 F
Prateća dokumentacija 20 10 55,00 – 64,99 6 E
Pismeni završni ispit 40 20 65,00 – 74,99 7 D
      75,00 – 84,99 8 C
      85,00 – 94,99 9 B
      95,00 – 100,00 10 A
U k u p n o 100 55  

 

G. LITERATURA

Osnovna literatura: 

1.        I. Sommerville: “Software Enguneering (6th edition)”, Addison Wesley, 2000.

2.        M. Fowler, K. Scott: “UML Distilled (2nd edition)”, Addison Wesley, 1999.

3.        B. Potter, J. Sinclair, D. Till: “An Introduction to Formal Specification and Z (2nd edition)”, Prentice Hall, 1996.

4.        Y. D. Liang, Y, “Introduction Java Programming (5th edition)”, Prentice Hall, 2005.

Dopunska literatura:

1.    M. Campione, K. Walrath, A. Huml: “The Java (TM Tutorial: A Short Course on the Basics”, The Java (TM) Series, Sum Microsystems, 2000.

2.    J. Rumbaugh, I. Jacobson, G. Booch: “The Unified Modeling Language Reference Manual”, Pearson Education, 2004.

3.       M. Fowler, K. Scott: “UML Distilled: Applying the Standard Object Modelling Language”, Addison Wesley, 1998.