Softversko inženjerstvo
86 languages
- Afrikaans
- asturianu
- azərbaycanca
- Bahasa Indonesia
- Bahasa Melayu
- català
- čeština
- Cymraeg
- dansk
- Deutsch
- English
- español
- Esperanto
- euskara
- français
- Gaeilge
- Gaelg
- galego
- Hausa
- hrvatski
- Ido
- íslenska
- italiano
- Kiswahili
- kurdî
- Latina
- latviešu
- lietuvių
- Mirandés
- Nederlands
- norsk bokmål
- norsk nynorsk
- oʻzbekcha / ўзбекча
- Piemontèis
- polski
- português
- Qaraqalpaqsha
- română
- Runa Simi
- Scots
- shqip
- Simple English
- slovenčina
- srpskohrvatski / српскохрватски
- Sunda
- suomi
- svenska
- Tagalog
- Tiếng Việt
- Türkçe
- Winaray
- Ελληνικά
- български
- македонски
- монгол
- русский
- српски / srpski
- українська
- հայերեն
- ייִדיש
- עברית
- اردو
- العربية
- پښتو
- سنڌي
- فارسی
- کوردی
- گیلکی
- ትግርኛ
- አማርኛ
- भोजपुरी
- हिन्दी
- বাংলা
- ଓଡ଼ିଆ
- தமிழ்
- తెలుగు
- മലയാളം
- සිංහල
- ไทย
- ລາວ
- ភាសាខ្មែរ
- 한국어
- 中文
- 吴语
- 日本語
- 粵語
From WikiRecord, the encyclopedia of everything · from the Bosnian Wikipedia
Softversko inženjerstvo je sistematska primjena inženjerskih pristupa razvoju softvera.[1][2][3] Softverski inženjering je direktno potpolje inženjerstva i preklapa se s računarskom i upravljačkom naukom.[4] Također se smatra dijelom cjelokupnog sistemskog inženjeringa.
U IEEE rječniku terminologije softverskog inženjeringa stoji da je to "primjena sistematskog, disciplinskog, mjerljivog pristupa razvoju, upravljanju i održavanju softvera"[5]
Historija
Prvi digitalni računari 1940-tih godina su instrukcije za rad imali već unaprijed isprogramirane. To se pokazalo nepraktično i ubrzo je osmišljen dizajn "arhitekture pohranjenog programa" poznat kao von Neumannova arhitektura. Tu je nastala podjela između "hardvera" i "softvera" gdje se apstrakcijom rješavala složenost računanja.
Programski jezici počeli su se pojavljivati u ranim 1950-im[6] što je bio dodatni iskorak u apstrakciji. Glavni jezici kao što su Fortran, ALGOL i COBOL objavljeni su krajem 1950-ih kako bi se bavili naučnim, algoritmičkim i poslovnim problemima. David Parnas predstavio je ključni koncept modularnosti i skrivanja informacija 1972. godine[7] kako bi pomogao programerima u rješavanju sve veće složenosti softverskih sistema.
Godine 1984. osnovan je Institut za softverski inženjering (Software Engineering Institute – SEI) kao centar za istraživanje i razvoj. Watts Humphrey osnovao je SEI Software Process Program, usmjeren na razumijevanje i upravljanje procesom softverskog inženjeringa.
Savremene i općeprihvaćene najbolje prakse za softverski inženjering se objedinjuju u ISO/IEC JTC 1/SC 7 standardu, koje objavljuje SWEBOK.[8]
Kontroverze
Edsger Dijkstra, osnivač mnogih koncepata u razvoja softvera, odbacio je ideju "softverskog inženjeringa" sve do svoje smrti 2002. godine.[9]
Polja
Proces inženjeringa softvera se obično sastoji iz više faza, definisanih na različite načine, ali u osnovi se sastoji od:
Softverski zahtjevi
Inženjering zahtjeva odnosi se na prikupljanje, analizu, specifikaciju i potvrdu zahtjeva za softver.
Dizajn softvera
Dizajn softvera odnosi se na proces definisanja arhitekture, komponenti, interfejsa i drugih karakteristika sistema ili komponente. To se naziva i softverska arhitektura.
Razvoj softvera
Razvoj softvera jest glavna aktivnost izgradnje softvera,[1][10] kombinacija programiranja, provjere, testiranja softvera i uklanjanje grešaka. Proces razvoja softvera jest definicija, implementacija, procjena, mjerenje, upravljanje, i poboljšanje samog procesa životnog ciklusa softvera. Oslanja se na upravljanje konfiguracijom softvera koje se odnosi na sistemsku kontrolu promjena u konfiguraciji i održavanje integriteta i praćenja konfiguracije i koda tokom životnog ciklusa sistema. Savremeni procesi koriste softversko verzioniranje.
Testiranje softvera
Testiranje softvera[1][10] jest empirijsko, tehničko istraživanje koje se provodi kako bi se pružile informacije o kvaliteti proizvoda ili usluge koja se testira. To je jedan aspekt kvalitete softvera.
Održavanje softvera
Održavanje softvera[1][10] odnosi se na aktivnosti potrebne za pružanje ekonomične podrške nakon izdavanja softverskog proizvoda.
Također pogledajte
Reference
- 1 2 3 4 Abran et al. 2004
- ↑ ACM (2007). "Computing Degrees & Careers". ACM. Arhivirano s originala, 17. 6. 2011. Pristupljeno 23. 11. 2010.
- ↑ Prazna referenca (pomoć)
- ↑ https://www.dagstuhl.de/Reports/96/9635.pdf
- ↑ IEEE Standard Glossary of Software Engineering Terminology, IEEE std 610.12-1990, 1990.
- ↑ Campbell-Kelly, Martin (april 1982). "The Development of Computer Programming in Britain (1945 to 1955)". IEEE Annals of the History of Computing. 4 (2): 121–139. doi:10.1109/MAHC.1982.10016.
- ↑ Parnas, David (decembar 1972). "On the Criteria To Be Used in Decomposing Systems into Modules". Communications of the ACM. 15 (12): 1053–1058. doi:10.1145/361598.361623. Arhivirano s originala, 20. 8. 2007. Pristupljeno 26. 12. 2008.
- ↑ "ISO/IEC TR 19759:2005". Pristupljeno 1. 4. 2012.
- ↑ Dijkstra, E. W. (1988). "On the cruelty of really teaching computing science". Pristupljeno 10. 1. 2014. CS1 održavanje: nepreporučeni parametar (link)
- 1 2 3 "Software Engineering Body of Knowledge (SWEBOK Version 3), 2014" (pdf). www.swebok.org. IEEE Computer Society. Pristupljeno 24. 5. 2016.
Literatura
- Abran, Alain; Moore, James W.; Bourque, Pierre; Dupuis, Robert; Tripp, Leonard L. (2004). Guide to the Software Engineering Body of Knowledge. IEEE. ISBN 978-0-7695-2330-9.CS1 održavanje: ref=harv (link)
- Sommerville, Ian (2008). Software Engineering (7 izd.). Pearson Education. ISBN 978-81-7758-530-8. Pristupljeno 10. 1. 2013.CS1 održavanje: ref=harv (link)
- Ghezzi, Carlo; Mehdi Jazayeri, Dino Mandrioli (2003) [1991]. Fundamentals of Software Engineering (2nd (International) izd.). Pearson Education @ Prentice-Hall. CS1 održavanje: nepreporučeni parametar (link) CS1 održavanje: ref=harv (link)
- Jalote, Pankaj (2005) [1991]. An Integrated Approach to Software Engineering (3rd izd.). Springer. ISBN 978-0-387-20881-7. Arhivirano s originala, 19. 4. 2023. Pristupljeno 3. 3. 2020. CS1 održavanje: nepreporučeni parametar (link) CS1 održavanje: ref=harv (link)
- Pressman, Roger S (2005). Software Engineering: A Practitioner's Approach (6th izd.). Boston, Mass: McGraw-Hill. ISBN 978-0-07-285318-6. CS1 održavanje: nepreporučeni parametar (link) CS1 održavanje: ref=harv (link)
- Sommerville, Ian (2007) [1982]. Software Engineering (8th izd.). Harlow, England: Pearson Education. ISBN 978-0-321-31379-9. CS1 održavanje: nepreporučeni parametar (link) CS1 održavanje: ref=harv (link)
Vanjski linkovi
- Baza znanja softverskog inženjeringa Arhivirano 23. 3. 2009. na Wayback Machine
- OpenSDLC.org Arhivirano 18. 7. 2010. na Wayback Machine
- Software Engineering Institute Carnegie Mellon
- Uvod u softversko inženjerstvo Arhivirano 3. 3. 2020. na Wayback Machine