Mis vahe on kõrgetasemelisel süsteemidisainil ja kõrgel tasemel loogilisel disainil?


Vastus 1:

Küsimus puudutab erinevaid termineid ja mõisteid. Kasutatakse termineid "kõrgetasemeline disain" (erinevalt "madala taseme disainist"), "süsteemi kujundamine" ja "loogiline disain" (erinevalt "füüsilisest disainist"). Lubage mul kõigepealt käsitleda üksiktermineid ja seejärel nende mõistete seoseid, millele küsimus viitab.

Äärmiselt soovitatav allikas mõistete määratlemiseks süsteemides ja tarkvaratehnikas on ISO / IEC / IEEE 24765: 2017 standard, mille saab vabalt alla laadida siit: avalikult saadaolevad standardid.

ISO 24765 sisaldab järgmisi määratlusi (tsiteeritud kaldkirjas):

kõrgetasemeline kavandamine 1. madala tasemega kavandamist ja rakendamist suunavate kõrgetasemeliste kontseptsioonide määratlemise protsess, vrd. arhitektuur. Märkus 1 kande kohta: Kõrgetasemeline disain hõlmab tavaliselt süsteemi korraldamist alamprogrammideks ja nendevaheliste liideste täpsustamist.

süsteemi projekteerimine 1. süsteemi riistvara ja tarkvara arhitektuuri, komponentide, moodulite, liideste ja andmete määratlemise protsess, mis vastab määratletud nõuetele […]

kontseptuaalne süsteemi kujundamine 1. süsteemi kavandamise tegevus, mis on seotud süsteemi korralduse, selle protsesside ja süsteemi kaudu toimuva teabe voo loogiliste aspektide täpsustamisega […]

Standardi ISO / IEC / IEEE 15288: 2015 Süsteemide ja tarkvaratehnika - Süsteemide elutsükliprotsesside F lisast leiate järgmise kirjelduse, mis seob terminid konteksti (tsiteeritud kaldkirjas):

F lisa Arhitektuuri modelleerimine

F.1 Sissejuhatus

[…] Süsteemi arhitektuuri võib mõista struktureeritud arhitektuuriliste üksuste ja nende suhete kogumina, näiteks funktsioonid, funktsioonide vood, liidesed, ressursivoo üksused, teabe / andmeelemendid, füüsilised komponendid, konteinerid, sõlmed, lingid, nendel arhitektuurilistel üksustel võivad olla sellised omadused nagu mõõtmed, keskkonna vastupidavus, käideldavus, vastupidavus, täitmise tõhusus, missiooni tõhusus jne. […]

F.2 Arhitektuuris kasutatavad vaatepunktid, vaated ja mudelitüübid

Arhitektuurimääratluse protsess kasutab mitmesuguseid mudeleid, sealhulgas järgmises jaotises loetletud näidismudeleid. (Traditsiooniline süsteemitehnika tava klassifitseerib osa neist mudelitest „loogilisteks mudeliteks” või „füüsilisteks mudeliteks”, kuid selle rahvusvahelise standardi rakendamisel pole taksonoomiline erinevus vajalik.) Süsteemi ülesehituse sidusrühmade poole pöördumiseks kasutatakse erinevaid vaateid. mured. Vaated koosnevad mudelitest. Arhitektuuriterminite määratluste ning arhitektuurimõistete ja -mudelite lisateavet leiate standardist ISO / IEC / IEEE 42010.

F.3 Loogilised ja füüsilised mudelid

F.3.1 Funktsionaalne mudel

Süsteemi funktsionaalne mudel kujutab funktsioonide kogumit, mis määratleb sisendite teisendused väljunditeks, mida süsteem täidab oma missiooni või eesmärgi saavutamiseks. Need funktsioonid määratakse kindlaks vastavalt sellele, kuidas süsteem eeldatavalt käitub, kui seda kasutatakse ettenähtud viisil. Järelikult on iga süsteemi funktsioon seotud süsteemi ja selle keskkonna vastastikmõjuga. Funktsioonide ja sisendi-väljundi voogude määramiseks analüüsitakse tavaliselt funktsionaalseid, jõudluse, mittefunktsionaalseid ja piirangunõudeid. Kui funktsioonid on seotud süsteemielementidega, tuleb disaini määratlemise protsessil kindlaks teha, kas iga süsteemi element on selle ehitamiseks või ostmiseks piisavalt täpsustatud. Kui süsteemielementi tuleb selle piisavuse saavutamiseks täiendavalt lahendada, tuleb süsteemielemendiga seotud funktsioonid ka edasi lahendada ja alamelementidega korralikult seostada. Tavaliselt on funktsioonide lagundamiseks mitu viisi, mis aitab kaasa mitme kandidaat-arhitektuuri määratlemisele.

[…]

Kokkuvõtteks: loogiline (kontseptuaalne) disain on süsteemidisaini alamhulk, mis hõlmab nii loogilist kui ka füüsilist disaini, nii kõrgel kui ka madalamal tasemel. On erinevaid standardkorpusi ja standardeid, mis kasutavad samade asjade jaoks oma eelistatud termineid.

Siin on kaks diagrammi tasuta õpikust System Engineering Fundamentals, mis näitavad kenasti seost loogilise disaini (joonistel funktsionaalne analüüs / allokatsioon) ja füüsilise disaini (joonisel sünteesi esindatud), aga ka kõrge ja madalama vahel. taseme kujundused (joonisel kujutatud süsteemi ja üksuse arengutasemega).

Teisel joonisel (8–2) näete, et süsteemide kavandamise protsessi (joonis 3–1) rakendatakse rekursiivselt süsteemi ja üksuse tasandil.

Kui vajate lisateavet, vaadake ka järgmisi vastuseid:

Rochus Kelleri vastus küsimusele Millised on ülalt alla lähenemise eelised süsteemianalüüsis ja kujundamisel?

Rochus Kelleri vastus küsimusele Kas süsteemi arhitektuuril ja süsteemi kujundamisel on erinevusi?

Rochus Kelleri vastus küsimusele Mis vahe on funktsionaalsetel ja mittefunktsionaalsetel nõuetel?

Rochus Kelleri vastus küsimusele, mida tähendab huvipakkuv süsteem süsteemitehnoloogias?


Vastus 2:

Rohkem kui triviaalsete süsteemide arendamine nõuab mitmeid erinevaid komponente ja vajaliku väljamõtlemiseks peate endalt küsima mõned küsimused.

Mida süsteem kavatseb teha? Milline on keskkonna keskkond ja süsteemi piirangud? Kas süsteemi toimimist saab ajaliselt arvestada?

Siinkohal tuleb arvestada arhitektuuriliste või üldiste kaalutlustega. Arhitektuur on hea sõna, kuna annab analoogia. Kujutame ette, et plaanisite linna. Ühtegi polnud veel ehitatud. Küsimused, mida võiksite esitada, võivad sisaldada järgmist:

  • Mis on linna eesmärk? Mis on linna peamine tööstusharu? Kus linn peaks asuma? Kui palju inimesi seal elama peab? Milliseid kauplusi ja milliseid mugavusi on vaja nende toetamiseks? Millised teenused on vajalikud? Kuidas kas inimesed reisivad linnas ringi ja kuidas inimesed linnast sisse ja välja pääsevad? Kuidas jäätmeid käideldakse?

Süsteemitasandil valiksite sellele küsimusele antud vastuste põhjal konkreetse arhitektuurilise paigutuse. Planeeriksite veevarustust, elektrit ja kütust, kanalisatsiooni, teid, poode, koole, arstiabi ja eluasemeid. Te segmenteeriksite konkreetset tüüpi teenuste asukoha konkreetses asukohas, et kõige paremini teenindada elanikkonda ja tööstust, kus nad peamiselt töötavad. See on teie süsteemi arhitektuur või süsteemi kõrge tase.

Üksikasjalikumal tasemel võiksite vaadata, kui spetsiifiline infrastruktuur nõutavate funktsioonide täitmiseks on. Kuidas töötab tööstusharu tootmine? Kujutage näiteks ette vabrik (või kontor), mis on spetsiaalselt linna peamise tööstuse jaoks ehitatud. Milliseid protsesse on vaja selle tööstusega tegelemiseks? Millised on selle protsessi sammud ja sõltuvused? Millised on selle sisendid? Mis on selle väljundid? Milline on toimingute jada, nende sõltuvused ja tingimused, mis on vajalikud nende sisendite muutmiseks väljunditeks? See on teie loogiline kujundus.

Komplekssed tarkvarapõhised süsteemid on süsteemide süsteemid. Väljakutse on sarnane linna või linna kavandamisega. Kõrgetasemelised süsteemilised otsused tehakse asjade korraldamise ja üldiselt nende käitlemise kohta. Komponentide ja osade kaart eesmärgi täitmiseks on süsteemi kõrgetasemeline kujundus. Järjestuse, sammude ja tegevuste voog ning teave komponentide sees ja nende vahel on kõrgetasemeline loogiline kujundus. Need kaks töötavad koos, kui süsteemi eesmärk on saavutatud.