Lekcija 1 - Uvod Flashcards

1
Q

1.1 Šta je Softversko inženjerstvo? Zašto je ono važno? Šta je razlika softverskog inženjerstva i računarskih nauka?

A

Softversko inženjerstvo je inženjerska disciplina koja se bavi svim aspektima proizvodnje softvera, od ranih faza specifikacije sistema, do održavanja nakon završetka izrade softvera.

Značajno je jer društvo sve više zavisi od softvera, a i jeftinije je koristiti metode SI umesto pisanja programa.

Računarska nauka se bavi teorijom i metodama od kojih zavise računari, a SI se bavi praktičnim problemima proizvodnje softvera.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

1.2 Šta je softverski proizvod? Koje dve vrste softverskih proizvoda postoje?

A

Sofrverski proizvod čine programi, njegova dokumentacija i podaci o konfigurisanju.

Dve vrste softveresrskog procesa su generički proizvod (za prodaju na tržištu i mogu ga koristiti različiti korisnici, za razvoj specifikacije definiše onaj koji razvija softver) i proizvodi razvijeni po narudžbini (kupac definiše zahteve). U praksi ova podela nije uvek jasna.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

1.3 Koji su atributi dobrog softvera?

A
  1. Održivost - mogućnost promene softvera
  2. Pouzdanost i bezbednost - podaci su zaštićeni, pri padu sistema ne dolazi do štete
  3. Efikasnost - ne troši resurse bez razloga, ima dobru brzinu odziva
  4. Prihvatljivost - razumljiv korisniku
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

1.4 Šta je softverski proces? Koje su četiri osnovne aktivnosti softverskog procesa?

A

Sofverski proces je sistemski pristup proizvodnji softvera.

Četiri osnovne aktivnosti su:

  1. Specifikacija - šta je potrebno
  2. Razvoj - projektovanje i programiranje
  3. Validacija - da li su zahtevi zadovoljeni
  4. Evolucija - promene softvera
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

1.5 Koji su ključni izazovi softverskog inženjerstva?

A

Rad u heterogenom okruženju, brzo prilagođavanje novim zahtevima i bezbednost informacija.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

1.6 Koji tipovi softverskih aplikacija postoje?

A
  1. Samostalne aplikacije
  2. Interaktivne transakcione aplikacije
  3. Ugrađeni upravljački sistemi
  4. Sistemi paketne obrade podataka
  5. Sistemi za zabavu
  6. Sistemi za modelovanje i simulaciju
  7. Sistemi za prikupljanje podataka
  8. Sistemi sistema
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

1.7 Koje su osnovne postavke softverskog inženjerstva koje su primenljive za sve tipove softverskih sistema?

A
  1. Heterogenost - rad na različitim računarima u različitom softveru
  2. Poslovne i društvene promene - zahteva se što kraće vreme za razvoj novog softvera
  3. Bezbednost i poverenje - zaštita od neovlašćenih korisnika
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

1.8 Koji su troškovi izraženi u softverskom inženjerstvu?

A

Troškovi inicijalnog razvijanja sistema, kasnije održavanja i
nadograđivanja sistema.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

1.9 Do kojih promena je došlo u Softverskom inženjerstvu zbog uticaja Interneta?

A

Postoje dobre i loše strane interneta kada se gleda iz konteksta razvoja softvera. Sa jedne strane, internet i sva dokumentacija na njemu, kao i povezanost sa drugim ljudima čine softversko inžinjerstvo lakšim nego ikad. Sa druge strane, postoji opasnost od napada, pa mora da se stavi veći fokus na bezbednost sistema. Takođe, razvoj softvera koji radi na internetu je drugačiji, jer mu ljudi samo pristupaju svojm uređajima, a sam softver je na nekom drugom uređaju.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

1.10 Zašto dolazi do grešaka u radu softvera?

A
  1. Povećani zahtevi - česte promene ili zahtev za brži razvoj
  2. Razvoj softvera se ne shvata kao inženjerska disciplina - slaba ili neadekvatna primena tehnika razvoja softvara
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

1.11 Koji su standardi prihvatljivog ponašanja softverskih inženjera?

A
  1. Poverljivost - čuvajte tajne poslodavaca
  2. Kompetentnost - ne uzimajte posao za koji niste kompetentni
  3. Pravo intelektualne svojine - štitite intelektualnu svojinu poslodavaca i klijenata
  4. Zloupotreba kompjutera - ne koristite znanje u zlonamerne svrhe
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

1.12 Šta su principi ponašanja? Koji su osam principa ponašanja softver inženjera?

A
  1. Javni interes - delovanje u skladu sa javnim interesom
  2. Klijent i poslodavac - delovanje u najboljem interesu klijenata i poslodavca
  3. Proizvod - proizvod mora da se zasniva na profesionalnim standardima
  4. Rasuđivanje - čuvanje integriteta i nezavisnosti pri donošenju profesionalnih odluka
  5. Upravljanje - primenjujte etički pristup
  6. Profesija - unapređujte integritet i reputaciju u skladu sa javnim interesom
  7. Kolege - budite fer prema kolegama
  8. Lično - stalno nadograđuj svoje stručno znanje
How well did you know this?
1
Not at all
2
3
4
5
Perfectly