Mi az a szoftvertervezés? Definíció, alapok, jellemzők

Tartalomjegyzék:

Anonim

Mi az a szoftvertervezés?

A szoftvertervezés a felhasználói igények elemzésének, majd az ezeknek a követelményeknek megfelelő szoftveralkalmazás tervezésének, felépítésének és tesztelésének folyamata.

Nézzük meg a szoftvertervezés különböző definícióit:

  • Az IEEE a 610.12-1990 szabványában a szoftvertervezést szisztematikus, fegyelmezett alkalmazásként definiálja, amely kiszámítható megközelítés a szoftverek fejlesztése, üzemeltetése és karbantartása szempontjából.
  • Fritz Bauer „létrehozásként és szabványos mérnöki alapelvekként határozta meg. Segít gazdaságilag olyan szoftver beszerzésében, amely megbízható és hatékonyan működik a valós gépeken.
  • A Boehm meghatározza a szoftvertervezést, amely magában foglalja „a tudományos ismeretek gyakorlati alkalmazását a számítógépes programok kreatív tervezésében és felépítésében. Tartalmazza a fejlesztéshez, üzemeltetéshez és karbantartáshoz szükséges kapcsolódó dokumentációt is.

Ebben a szoftverfejlesztési oktatóanyagban megtudhatja:

  • Mi az a szoftvertervezés?
  • Miért a szoftvertervezés? Szoftverválság és megoldása
  • Miért népszerű a szoftvertervezés?
  • A szoftvertervezés kapcsolata más tudományágakkal
  • A szoftvertervezés kihívásai
  • A szoftvertermékek attribútumai
  • A jó szoftver jellemzői

Miért a szoftvertervezés? Szoftverválság és megoldása:

Mi volt a szoftverválság?

  • Az 1960-as évek végén volt, amikor sok szoftverprojekt megbukott.
  • Sok szoftver meghaladta a költségvetést. Az output megbízhatatlan szoftver volt, amelynek karbantartása drága.
  • A nagyobb szoftverek karbantartása nehéz és meglehetősen drága volt.
  • Sok szoftver nem képes kielégíteni az ügyfél növekvő igényeit.
  • A szoftverprojektek bonyolultsága nőtt, amikor a hardver képessége nőtt.
  • Az új szoftverek iránti kereslet gyorsabban nőtt az új szoftverek létrehozásának képességéhez képest.

A fenti kérdések mindegyike „szoftverválsághoz” vezet.

A megoldás

Megoldás volt az a probléma, hogy a nem szervezett kódolási erőfeszítéseket szoftverfejlesztési tudományággá alakították át. Ezek a mérnöki modellek elősegítették a társaságok működésének ésszerűsítését és az ügyfelek igényeinek megfelelő szoftverek szállítását.

  • Az 1970-es évek végén széles körben elterjedtek a szoftverfejlesztési elvek.
  • Az 1980-as években automatizálódott a szoftvertervezési folyamat és növekedett a (CASE) Computer-Aided Software Engineering.
  • Az 1990-es években egyre nagyobb hangsúlyt fektettek a projektek „menedzsment” szempontjaira, mint az ISO 9001

Miért népszerű a szoftvertervezés?

Itt vannak a szoftverfejlesztés népszerűségének fontos okai:

  • Nagy szoftver - A való életünkben falat építeni sokkal kényelmesebb, mint házat vagy épületet. Ugyanígy, amikor a szoftver mérete nagy lesz, a szoftvertervezés segít a szoftver felépítésében.
  • Méretezhetőség - Ha a szoftverfejlesztési folyamat tudományos és mérnöki koncepciókon alapult, könnyebb új szoftvert újból létrehozni a meglévő méretezéséhez.
  • Alkalmazkodóképesség : Bármikor a szoftverfolyamat tudományos és mérnöki alapokon nyugszik, könnyű új szoftvereket újból létrehozni a szoftvertervezés segítségével.
  • Költség- A hardveripar megmutatta képességeit, és a hatalmas gyártás csökkentette a számítógép és az elektronikus hardver költségeit.
  • Dinamikus természet - A szoftver mindig növekvő és alkalmazkodó jellege. Ez attól a környezettől függ, amelyben a felhasználó dolgozik.
  • Minőségmenedzsment : jobb szoftverfejlesztési módszert kínál minőségi szoftvertermékek biztosítására.

A szoftvertervezés kapcsolata más tudományágakkal

A szoftvertervezés hogyan kapcsolódik más tudományágakhoz:

  • Számítástechnika: Megadja a szoftver tudományos megalapozását, mivel az elektrotechnika főként a fizikától függ.
  • Vezetéstudomány: A szoftvertervezés munkaigényes munka, amely mind technikai, mind vezetői ellenőrzést igényel. Ezért széles körben használják a menedzsment tudományban.
  • Közgazdaságtan: Ebben az ágazatban a szoftvertervezés segít az erőforrások becslésében és a költségkontrollban. Ki kell fejleszteni a számítási rendszert, és az adatokat rendszeresen karbantartani kell egy adott költségvetés keretein belül.
  • Rendszertechnika: A legtöbb szoftver egy sokkal nagyobb rendszer része. Például egy szoftver az ipari megfigyelő rendszerben vagy a repülési szoftver egy repülőgépen. Szoftvertechnikai módszereket kell alkalmazni az ilyen típusú rendszerek vizsgálatához.

A szoftvertervezés kihívásai

Íme néhány kritikus kihívás, amellyel a szoftvermérnökök szembesülnek:

  • A biztonság szempontjából kritikus területeken, például az űrben, a repülésben, az atomerőművekben stb. A szoftverhiba költsége hatalmas lehet, mert életveszély áll fenn.
  • Megnövekedett piaci igény a gyors átfutási időre.
  • Az új alkalmazásokkal kapcsolatos szoftverek iránti megnövekedett bonyolultság kezelése.
  • A szoftveres rendszerek sokféleségének kommunikálnia kell egymással.

A szoftvertermékek attribútumai

Bármely szoftvertermék jellemzői magukban foglalják azokat a funkciókat, amelyeket a termék a telepítésekor és használatakor megjelenít.

Ezek nem a termék által nyújtott szolgáltatások. Ehelyett a termékek dinamikus viselkedésével és a termék felhasználásával kapcsolatosak.

Példák ezekre az attribútumokra:

Efficiency, reliability, robustness, maintainability, etc.

Ezen jellemzők relatív jelentősége azonban szoftverenként változik.

Termékjellemzők Leírás
Karbantarthatóság A szoftvernek úgy kell fejlődnie, hogy megfeleljen az ügyfelek változó igényeinek.
Megbízhatóság A megbízhatóság különféle jellemzőket tartalmaz. A megbízható szoftver soha nem okozhat fizikai vagy gazdasági kárt a rendszer meghibásodása idején.
Hatékonyság A szoftveralkalmazásnak túl kell használnia a rendszer erőforrásait, például a memóriát és a processzor ciklust.
Használhatóság A szoftveralkalmazásnak rendelkeznie kell egyedi felhasználói felülettel és dokumentációval.

A fenti tulajdonság optimalizálása nagyon kihívást jelent. Például jobb felhasználói felület felajánlása csökkentheti a rendszer hatékonyságát.

A jó szoftver jellemzői

Minden szoftvert annak alapján kell megítélni, hogy mit kínál, és milyen módszerek segítik a használatát.

Minden szoftvernek meg kell felelnie a következő tulajdonságoknak:

  • Működési
  • Átmeneti
  • Karbantartás

Íme néhány fontos jellemző a szoftverek által kifejlesztett jó szoftverekről

Működési

Ez a jellemző tudatja velünk, hogy a szoftver milyen jól működik a műveletek során, amelyek mérhetők:

  • Költségvetés
  • Hatékonyság
  • Használhatóság
  • Megbízhatóság
  • Helyesség
  • Funkcionalitás
  • Biztonság
  • Biztonság

Átmeneti

Ez elengedhetetlen szempont, amikor a szoftvert egyik platformról a másikra helyezzük át:

  • Átjárhatóság
  • Újrahasználhatóság
  • Hordozhatóság
  • Alkalmazkodóképesség

Karbantartás

Ez a szempont arról szól, hogy a szoftver mennyire képes alkalmazkodni a gyorsan változó környezetben:

  • Rugalmasság
  • Karbantarthatóság
  • Modularitás
  • Méretezhetőség

Összegzés

  • A szoftvertervezés a felhasználói igények elemzésének, majd az ezeknek a követelményeknek megfelelő szoftveralkalmazás tervezésének, felépítésének és tesztelésének folyamata
  • Fontos okai a szoftvertervezés használatának: 1) Nagy szoftver, 2) Méretezhetőség 3) Alkalmazkodóképesség 4) Költség és 5) Dinamikus természet.
  • Az 1960-as évek végén sok szoftver meghaladja a költségvetést. Ezért megbízhatatlan szoftvereket kínál, amelyek fenntartása költséges.
  • Az 1970-es évek végén széles körben elterjedtek a szoftverfejlesztési elvek.
  • Szoftvertechnikai koncepció 1) Számítástudomány 2) Vezetéstudomány 3) Rendszertechnika és 4) Közgazdaságtan
  • A gyors átfutási idő iránti megnövekedett piaci igény a szoftvertervezés legnagyobb kihívása.
  • 1) Fenntarthatóság, 2) Megbízhatóság, 3) Hatékonyság és 4) A használhatóság a szoftvertermékek legfontosabb jellemzője.
  • A jó szoftver három legfontosabb jellemzője: 1) Működési 2) Átmeneti 3) Karbantartás.