You are on page 1of 26

Softverski inenjering

DOC. DR. EMIR SKEJI

Osnovne informacije o predmetu


2

Nastavno osoblje
3

Nastavnik: Doc. dr. Emir Skeji


Lokacija: Fakultet elektrotehnike, kancelarija 203 E-mail: emir.skejic@untz.ba Web stranica predmeta: www.fe.untz.ba/nastava

Asistent: mr. sc. Emir Mekovi


Lokacija: Fakultet elektrotehnike, kancelarija 208 E-mail: emir.meskovic@untz.ba

Preduslovi za sluanje predmeta


4

Osnovno poznavanje programiranja

Obaveze studenata
5

Redovno pohaanje predavanja Dozvoljena su 2 neopravdana izostanka Redovno pohaanje vjebi

Dozvoljen je samo 1 neopravdan izostanak

Nain bodovanja i ocjenjivanje


6

Zadae iz programiranja: 30% Meuispit: 30% Zavrni ispit: 30% Prisustvo predavanjima: 5% Prisustvo vjebama: 5%

Nain bodovanja i ocjenjivanje


7

Konana ocjena se formira kao zbir osvojenih bodova Od 54 do 63 dovoljan (6) Od 64 do 73 dobar (7) Od 74 do 83 vrlo dobar (8) Od 84 do 93 odlian (9) Od 94 do 100 izvrstan (10)

Literatura
8

Osnovna literatura Materijali s predavanja i vjebi u pdf formatu "Software Engineering: A Practitioner's Approach" 5th Ed. by Roger S. Pressman, Mc-Graw-Hill, 2001 Dodatna literatura "Software Engineering" by Ian Sommerville, AddisonWesley, 2001 Bilo kakvi korisni sadraji koji se mogu pronai na Internetu

Uvodno predavanje
9

DOC. DR. EMIR SKEJI

Ciljevi predavanja
10

Definirati proces softverskog inenjeringa Razumjeti vanost softverskog inenjeringa Razmotriti bitne karakteristike softvera Razumjeti da kvalitet razliitih aplikacija moe biti

razliito evaluiran

Jednostavan program
11

"Napisati program za dobijanje liste rezultata testa, izraun ocjena i ispis izvjetaja o rezultatima"

Tipini pristupi
12

Sjesti za raunar i odmah napisati program Pronai stari program i modificirati ga Prodiskutovati s prijateljima kako to uraditi Zamoliti predavaa za vie informacija o programu

ta je softverski inenjering
13

Softver programi koji obezbjeuju funkciju i performansu strukture podataka za manipulaciju informacijama dokumenti koji opisuju operacije i upotrebu programa Inenjering Disciplina koja primjenjuje naune i tehnike metode u dizajnu i produkciji proizvoda

Definicija softverskog inenjeringa


14

IEEE definicija: Primjena sistematinog, discipliniranog, kvantifikabilnog pristupa razvoju, funkcioniranju i odravanju softvera

Jo jedna definicija softverskog inenjeringa


15

Praktina primjena naunih spoznaja u dizajnu i izgradnji raunarskih programa i pripadajua dokumentacija potrebna za razvoj, funkcioniranje i odravanje istih. (Boehm)

Ciljevi softverskog inenjeringa


16

Poboljati kvalitet softverskih proizvoda Poveati zadovoljstvo kupaca Poveati produktivnost Poveati zadovoljstvo poslom

Softverski inenjering nije programiranje. Programiranje je vaan dio softverskog inenjeringa. "Ovo nije kurs programiranja"

Historijska pozadina
17

U poecima razvoja raunarstva programi su pisani

da bi hardver radio Programiranje nije bilo disciplina, vie hobi ili "umjetniko izraavanje" Meutim, razvoj raunara je zahtijevao izradu veih programa, npr. kompajlera i operativnih sistema Programiranje postaje profesija

Karakteristike programa
18

Prije su programi bili mali i izraivao ih je samo

jedan strunjak (programming in the small) za odreeni algoritam. Ulaz su bili numeriki podaci a izlaz je bio slat na printer. Otkrivanje greaka (troubleshooting) se radilo na memorijskom i registarskom nivou. Danas su programi veliki i kompleksni, a piu ih grupe ljudi (programming in the large).

Trokovi u IT-u
19

100% Odravanje hardvera


Ukupni troak

Razvoj softvera

Odravanje softvera

1955

1980-e

Softverska kriza
20

Veliki programski projekti su zahtijevali da mnogo

programera zajedno radi Projekti nisu zavravani na vrijeme, a kotali su vie nego to je poetnim budetom bilo predvieno softverska kriza Razvijene su metode softverskog inenjeringa da bi se ovi problemi prevazili

Sistematian proces
21

Analiza

Problem

Dizajn

Modeli

Razvoj Rjeenje

Testiranje

Karakteristike softvera
22

Softver se razvija ili gradi, a ne proizvodi u klasinom

smislu Softver se ne "troi" Veina softvera se gradi za jednog kupca (custombuilt), a ne iz postojeih komponenti

ta je dobar softver?
23

1/2

Softver je nematerijalan Dobar softver je subjektivan Neke osobine koje se koriste da bi se ocijenio softver:

Ispravnost: program zadovoljava svoje specifikacije. Pouzdanost: program zadovoljava svoje namijenjene funkcije. Upotrebljivost: trud potreban za uenje, rukovanje, pripremu ulaza i interpretaciju izlaznih podataka. Integritet: Kontrola pristupa neautoriziranim osobama.

ta je dobar softver?
24

2/2

Efikasnost: koliina potrebnih raunarskih resursa. Odrivost: trud potreban da se lociraju i isprave greke u operativnim programima. Prenosivost: trud potreban da se program prenese iz jednog hardverskog/softverskog okruenja u drugo. Testabilnost: trud potreban za testiranje programa kako bi se osiguralo da isti obavlja svoje namijenjene funkcije. Interoperabilnost: trud potreban da se upare programi. Ponovna upotrebljivost: ponovna upotreba programa u drugim aplikacijama.

Softverske aplikacije
25

Sistemski softver Real-time softver Poslovni softver Inenjerski i nauni softver Ugraeni softver Softver za personalne raunare (Personal Computer

Software) Softver za vjetaku inteligenciju (Artificial Intelligence Software)

Reference
26

"Software Engineering: A Practitioner's Approach"

5th Ed. by Roger S. Pressman, Mc-Graw-Hill, 2001 "Software Engineering" by Ian Sommerville, Addison-Wesley, 2001

You might also like