logo

Kas yra sistemų projektavimas – išmok sistemos dizaino

Sistemų projektavimas – tai architektūros, komponentų, modulių, sąsajų ir duomenų apibrėžimo procesas, kad sistema atitiktų nurodytus reikalavimus. Tai apima vartotojo reikalavimų pavertimą detaliu planu, kuriuo vadovaujamasi įgyvendinimo etape. Tikslas yra sukurti gerai organizuotą ir efektyvią struktūrą, atitinkančią numatytą tikslą, atsižvelgiant į tokius veiksnius kaip mastelio keitimas, priežiūra ir našumas.



Mastering Systems Design yra labai svarbus visiems, norintiems sukurti tvirtas ir keičiamo dydžio sistemas. Mūsų visapusiška Sistemų projektavimo kursas suteikia žinių ir įgūdžių tobulėti šioje srityje. Remdamiesi praktiniais pavyzdžiais ir ekspertų įžvalgomis, sužinosite, kaip efektyviai paversti vartotojų reikalavimus išsamiais projektais, kuriuos galima sėkmingai įgyvendinti.

Svarbios sistemos projektavimo temos

Kodėl verta mokytis sistemos dizaino?

Bet kuriame kūrimo procese, nesvarbu, ar tai būtų programinė įranga, ar bet kuri kita technologija, svarbiausias etapas yra Dizainas . Be projektavimo etapo negalite pereiti prie įgyvendinimo ar testavimo dalies. Tas pats yra ir su Sistema.



Sistemų projektavimas yra ne tik gyvybiškai svarbus sistemos kūrimo žingsnis, bet ir suteikia pagrindą tvarkyti išskirtinius scenarijus, nes atspindi programinės įrangos verslo logiką.

Sistemos projektavimo etapo svarba SDLC

Sistemos projektavimo etapo svarba SDLC

javascript kintamasis globalus

Iš aukščiau pateiktų SDLC žingsnių aišku, kad sistemos dizainas veikia kaip pagrindas, nes kad ir kaip gerai būtų vykdoma kodavimo dalis, vėliau ji tampa nereikšminga, jei atitinkama konstrukcija nėra gera. Taigi čia mes gauname labai svarbią informaciją, kodėl jos klausiama kiekvienoje gaminių įmonėje.



Sistemų projektavimo tikslai

  1. Praktiškumas : Mums reikia sistemos, kuri turėtų būti nukreipta į auditorijų (vartotojų) rinkinį, pagal kurį jie kuria.
  2. Tikslumas : Aukščiau pateiktas sistemos dizainas turi būti suprojektuotas taip, kad atitiktų beveik visus reikalavimus, pagal kuriuos ji sukurta, nesvarbu, ar tai būtų funkciniai, ar nefunkciniai.
  3. Išbaigtumas : Sistemos dizainas turi atitikti visus vartotojo reikalavimus
  4. Efektyvus : Sistema turi būti suprojektuota taip, kad ji nebūtų naudojama per daug, viršijant išteklių sąnaudas ar nepakankamai naudojama, nes iki šiol žinome, kad tai sumažins išsamų įdėjimą (išvestį) ir trumpesnį atsako laiką (delsą).
  5. Patikimumas : Suprojektuota sistema tam tikrą laiką turi būti šalia aplinkos be gedimų.
  6. Optimizavimas : Tikėtina, kad laikas ir erdvė yra tai, ką darome, kad atskirų komponentų kodo dalys veiktų sistemoje.
  7. Keičiamas (lankstumas) : Sistemos dizainas turi būti pritaikomas laikui bėgant, atsižvelgiant į skirtingus klientų poreikius, kurie, kaip žinome, laiku keisis. Geriausias pavyzdys yra gerai žinoma įmonė: „Nokia“. Tai yra svarbiausias aspektas kuriant sistemas ir yra rezultatas, kodėl 1 iš 100 naujų įmonių ilgainiui pasiseka. Geriausias pavyzdys yra techcodeview.com.
Sistemos projektavimo tikslai

Sistemos projektavimo tikslai

Pastaba: Sistemos projektavimas taip pat padeda mums pasiekti atsparumą gedimams, ty programinės įrangos gebėjimą toliau veikti, kai sugenda net 1 ar 2 jos komponentai.

Dabar, peržvelgę ​​aukščiau nurodytus tikslus, aptarkime sistemos projektavimo pranašumus, kad geriau suprastume, nes žemiau pateikti pranašumai dar labiau priartina mūsų supratimą prie realaus gyvenimo.

Sistemų projektavimo komponentai

Žemiau yra keletas pagrindinių sistemos dizaino komponentų. aptarta trumpai. Išsami versija bus aptarta skirtinguose pranešimuose:

vlc parsisiųsti youtube
  1. Apkrovos balansuotojai: Svarbiausias sistemų mastelio, prieinamumo ir našumo priemonių komponentas.
  2. Pagrindinės vertės parduotuvės: Tai saugojimo sistema, panaši į maišos lenteles, kur raktinių reikšmių saugyklos yra paskirstytos maišos lentelės.
  3. Blob saugykla: Blob reiškia dvejetainius didelius objektus, kaip rodo pavadinimas, tai nestruktūrizuotų duomenų, tokių kaip „YouTube“ ir „Netflix“, saugykla.
  4. Duomenų bazės: Tai organizuotas duomenų rinkinys, kad juos būtų galima lengvai pasiekti ir keisti.
  5. Kainos ribotojai: Tai nustato maksimalų užklausų, kurias gali patenkinti paslauga, skaičių.
  6. Stebėjimo sistema: Iš esmės tai yra programinė įranga, kurioje sistemos administratorius stebi infrastruktūras, tokias kaip pralaidumas, centrinis procesorius, maršrutizatoriai, jungikliai ir kt.
  7. Paskirstytos sistemos pranešimų eilė: Sandorių tarp gamintojų ir vartotojų terpė.
  8. Paskirstytas unikalaus ID generatorius: Didelių paskirstytų sistemų atveju kiekvieną akimirką įvyksta kelios užduotys, todėl norint atskirti jas, priskirkite žymą, atitinkančią kiekvieną įvykį.
  9. Paskirstyta paieška: Kiekvienoje svetainėje svarbi informacija, kurios lankytojai ieškos, įtraukiama į paieškos juostą.
  10. Paskirstytos medienos ruošos paslaugos: Įvykių sekų sekimas nuo pabaigos iki galo.
  11. Paskirstytas užduočių planuoklis: Skaičiavimo ištekliai, tokie kaip CPU, atmintis, saugykla ir kt.
Sistemos projektavimo komponentai

Sistemos projektavimo komponentai

Sistemos projektavimo gyvavimo ciklas (SDLC)

Sistemos projektavimo gyvavimo ciklas (SDLC) yra išsamus procesas, apibūdinantis sistemos projektavimo ir tobulinimo veiksmus, nesvarbu, ar tai būtų programinė įranga, aparatinės įrangos sprendimas, ar integruota sistema, derinanti abu. Ji apima keletą etapų, kuriais vadovaujantys inžinieriai sukuria sistemą, atitinkančią vartotojo poreikius ir organizacijos tikslus. SDLC siekiama užtikrinti, kad galutinis produktas būtų patikimas, keičiamo dydžio ir prižiūrimas.

Sistemos projektavimo gyvavimo ciklo fazės (etapai) yra šios:

  1. Planavimas
  2. Galimybių studija
  3. Sistemos projektavimas
  4. Įgyvendinimas
  5. Testavimas
  6. Diegimas
  7. Priežiūra ir palaikymas

architektūros sistema

Programinės įrangos architektūra yra būdas, kuriuo mes apibrėžiame kaip vaizduojami dizaino komponentai projektavimas ir programinės įrangos diegimas .

Iš esmės tai yra programinės įrangos sistemos skeletas, vaizduojantis komponentus, abstrakcijos lygius ir kitus programinės įrangos sistemos aspektus. Norint tai suprasti pasauliečio kalba, verslo tikslas arba logika turi būti visiškai aiškūs ir išdėstyti ant vieno popieriaus lapo. Čia pateikiami didelių projektų tikslai ir tolesni didinimo vadovai, kad būtų galima išplėsti esamą ir būsimas sistemas.

Sistemos architektūros modeliai

Yra įvairių būdų, kaip organizuoti komponentus programinės įrangos architektūroje. Skirtingas iš anksto nustatytas komponentų organizavimas programinės įrangos architektūrose yra žinomas kaip programinės įrangos architektūros modeliai. Daug modelių buvo išbandyta ir išbandyta. Dauguma jų sėkmingai išsprendė įvairias problemas. Kiekviename modelyje komponentai yra išdėstyti skirtingai, kad būtų išspręstos konkrečios programinės įrangos architektūros problemos.

Įvairių tipų programinės įrangos architektūros modeliai apima:

  1. Sluoksniuotas raštas
  2. Kliento-serverio modelis
  3. Įvykiais pagrįstas modelis
  4. Mikrobranduolių modelis
  5. Mikro paslaugų modelis
Sistemos architektūros modeliai

Sistemos architektūros modeliai

Moduliškumas ir sąsajos sistemų projektavimo srityje

  • Modulinis dizainas reiškia gaminio projektavimo metodą/procedūrą, apimančią mažesnių nepriklausomų elementų integravimą arba derinimą, kad būtų sukurtas gatavas produktas. Didelis produktas (pavyzdžiui, automobilis) gali būti padalintas į mažesnius, paprastesnius komponentus, kurie yra atskirai kuriami ir gaminami naudojant modulinės konstrukcijos metodą. Galutinis produktas sukuriamas integruojant (arba surenkant) kiekvieną iš šių sudedamųjų dalių.
  • Sistemos projektavimo sąsajos yra sritis, kurioje vartotojai bendrauja. Jį sudaro ekranai, kurie palengvina sistemos naršymą, ekranai ir formos, kuriose kaupiami duomenys, ir sistemos ataskaitos.

Esamos sistemos raida/atnaujinimas/mastas

Didėjant technologijų naudojimui, nesvarbu, ar tai būtų neprisijungus, ar prisijungus, dabar kiekvienas kūrėjas privalo sukurti ir sukurti keičiamo dydžio sistema . Jei sistema nėra keičiamo dydžio, didėjant vartotojų skaičiui, labai tikėtina, kad sistema suges. Taigi atsiranda mastelio keitimo koncepcija.

do while ciklas java

Tarkime, kad yra sistema su tam tikro disko ir RAM konfigūracija, kuri tvarkė užduotis. Dabar, jei mums reikia tobulinti savo sistemą arba padidinti jos mastelį, turime dvi galimybes.

  1. Esamos sistemos atnaujinimo specifikacijos: Mes tiesiog tobuliname procesorių, atnaujindami RAM ir disko dydį bei daugybę kitų komponentų. Atminkite, kad čia mes nesirūpiname tinklo pralaidumo masteliu ir prieinamumu. Atsižvelgiant į evoliuciją, mes dirbame su pasiekiamumo faktoriumi, tik atsižvelgdami į tai, kad bus išlaikytas mastelio keitimas. Tai žinoma kaip vertikalus mastelio keitimas.
  2. Sukurkite paskirstytą sistemą sujungdami kelias sistemas: Aukščiau matome, kad jei mastelio keitimas nėra tinkamas, šiai priemonei reikia kelių sistemų, nes prieinamumo priemonės turi apribojimų. Norint padidinti mastelį, mums reikia daugiau sistemų (daugiau blokų dalių) ir tai vadinama horizontaliu mastelio keitimu.
Esamos sistemos raida/atnaujinimas/mastas

Esamos sistemos raida/atnaujinimas/mastas

Duomenų srautai tarp sistemų per Duomenų srauto diagramos arba DFD .

Duomenų srauto diagramos arba DFD apibrėžiamas kaip grafinis duomenų srauto per informaciją atvaizdavimas. DFD skirtas parodyti, kaip sistema yra padalinta į mažesnes dalis, ir pabrėžti duomenų srautą tarp šių dalių.

Štai pavyzdys, rodantis pagrindinę duomenų srauto diagramos struktūrą:

tigrinio liūto skirtumas
Duomenų srauto diagrama

Pagrindinė duomenų srauto diagramos struktūra

DFD komponentai:

Atstovavimas Veiksmas atliktas
Kvadratas Apibrėžia duomenų paskirties šaltinį
Rodyklė Identifikuoja duomenų srautą ir veikia kaip dujotiekis, kuriuo teka informacija
Apskritimas / burbulas Reiškia procesą, kuris paverčia gaunamų duomenų srautą į išeinančius duomenis
Atidarykite stačiakampį Tai duomenų saugykla arba ramybės būsenos duomenys / laikina duomenų saugykla

Pastaba: Siuntėjas ir gavėjas visada turi būti rašomi didžiosiomis raidėmis. Atvirkščiai, gera praktika būtų naudoti didžiąsias ir didžiąsias raides, kurios dedamos į kvadratinį langelį pagal DFD taisykles.

Sistemos projektavimo pavyzdys: oro linijų rezervavimo sistema

Kadangi iki šiol aptarėme sistemos projektavimo pagrindus, supraskime sistemos projektavimą per pagrindinį pavyzdį – oro linijų rezervavimo sistemą.

Java serverio puslapiai

Norėdami geriau suprasti oro linijų rezervavimo sistemos komponentus ir dizainą, pirmiausia peržvelkime jos kontekstinio lygio srauto diagramą:

Sistemos projektavimo pavyzdys: oro linijų rezervavimo sistema

Sistemos projektavimo pavyzdys: oro linijų rezervavimo sistema

Dabar supraskime oro linijų rezervavimo sistemos DFD:

  • Aukščiau pateiktoje srauto diagramoje Keleivis , Kelionių agentas , Aviakompanija yra šaltiniai, per kuriuos perduodami duomenys.
  • Čia duomenys perduodami iš Keleivis, norintis užsisakyti lėktuvo bilietą kaip parodyta su DFD rodyklės ženklu, kur pateikiamas kelionės prašymas.
  • Dabar šie duomenys perduodami iš dviejų šaltinių, kaip parodyta aukščiau, būtent „ Kelionių agentas 'ir' Aviakompanija “ kur, jei yra vieta Parinktys ir Oro skrydis prašymas pateikiamas šaltiniui.
  • Kelionių agentas ir atitinkami bilietai pateikiami pagal pageidavimą.
  • Jei bilieto nėra, užklausa dėl keleivių rezervavimo pateikiama šaltiniui – aviakompanijai.

Sistemos projektavimo privalumai

Išsamiai aptarus sistemos projektavimo įvadą, dabar būtina aptarti jo privalumus ir trūkumus.

Didžiausias sistemos projektavimo privalumas yra sąmoningumo ir kūrybiškumo ugdymas visos dėklos kūrėjams sinergiškai sujungiant API protokolų šliuzus, tinklus ir duomenų bazes.

Kai kurie pagrindiniai sistemos projektavimo pranašumai yra šie:

  • Sumažina gaminio projektavimo išlaidas.
  • Greitas programinės įrangos kūrimo procesas
  • Sutaupo bendrą SDLC laiką
  • Padidina programuotojo efektyvumą ir nuoseklumą.
  • Taupo išteklius

Sužinokite sistemos dizainą: Sistemos projektavimo pamoka