480 likes | 804 Views
Sistemos modeliai. Tikslai-klausimai egzaminui. Paaiškinti kodėl sistemos kontekstas turėtų būti modeliuotas kaip dalis reikalavimų inžinerijos proceso Aprašyti elgsenos modeliavimą, duomenų modeliavimą ir objektinį modeliavimą Parodyti kaip CASE paketai remia sistemos modeliavimą.
E N D
Tikslai-klausimai egzaminui • Paaiškinti kodėl sistemos kontekstas turėtų būti modeliuotas kaip dalis reikalavimų inžinerijos proceso • Aprašyti elgsenos modeliavimą, duomenų modeliavimą ir objektinį modeliavimą • Parodyti kaip CASE paketai remia sistemos modeliavimą
Aptariamos temos • Kontekstiniai modeliai • Elgsenos modeliai • Duomenų modeliai • Objektiniai modeliai • CASE paketai
Sistemų modeliavimas • Sistemų modeliavimas padeda analitikui suprasti sistemos veikimą ir sistemos modeliai naudojami bendravimui su užsakovu. • Skirtingi modeliai atvaizduoja sistemą skirtingais požiūriais: • Išorinis požiūris rodo sistemos kontekstą arba aplinką; • Elgsenos požiūris atspindi sistemos veikimą; • Struktūrinis požiūris atspindi sistemos arba duomenų architektūrą.
Modelių tipai • Duomenų apdorojimo modelis rodo duomenų apdorojimą skirtingose stadijose. • Sudėties modelis rodo kaip esybės yra sudarytos iš kitų esybių. • Architektūrinis modelis rodo principines posistemes. • Klasifikavimo modelis rodo kokias bendras charakteristikas turi esybės. • Poveikis /atsakymas modelis rodo sistemos reakciją į įvykius.
Aptariamos temos • Kontekstiniai modeliai • Elgsenos modeliai • Duomenų modeliai • Objektiniai modeliai • CASE paketai
Kontekstiniai modeliai • Kontekstiniai modeliai iliustruoja ir rodo kokia yra sistemos aplinka. • Socialiniai ir organizaciniai faktoriai įtakoja sprendimą kas yra sistemos aplinka. • Architektūriniai modeliai rodo sistemą ir jos surįštumą su kitomis sistemomis.
Proceso modeliai • Proceso modeliai rodo bendrą procesą visumoje ir sistemos remiamus procesus. • Duomenų srauto modeliai naudojami proceso demonstravimui ir rodo informacijos perdavimą iš vieno proceso į kitą.
Aptariamos temos • Kontekstiniai modeliai • Elgsenos modeliai • Duomenų modeliai • Objektiniai modeliai • CASE paketai
Elgsenos modeliai • Elgsenos modeliai naudojami aprašyti bendrą sistemos veikimą. • Yra du elgsenos modelių tipai: • Duomenų apdorojimo modeliai, kurie rodo kaip duomenys apdorojami ir kaip juda sistemoje; • Būsenų modeliai, kurie rodo kaip sistema reaguoja į įvykius. • Šie modeliai atspindi skirtingus požiūrius bet abu reikalingi sistemos elgesio aprašymui.
Duomenų apdorojimo modeliai • Duomenų srauto diagramos (DSD) gali būti naudojamos atvaizduoti sistemos duomenų apdorojimą. • DSD diagramos rodo apdorojimo žingsnius kaip duomenų srautus sistemoje. • DsD yra būdinga dalis daugeliui analizės metodų. • DSD naudojamas paprastas ir intuityvus žymėjimas, kuri lengvai gali suprasti vartotojas. • Rodo duomenų apdorojimą nuo pradžios iki pabaigos.
Duomenų srauto diagramos • DSD atvaizduoja sistemą funkciniu požiūriu. • Dokumentavimas ir sekimas kaip duomenys siejasi su procesais yra naudingas bendram sistemos supratimui. • DSD gali būti naudojamos rodant kaip vyksta apsikeitimas duomenimis tarp sistemos ir jos aplinkoje esančių kitų sistemų.
Būsenų modeliai • Būsenų modeliai vaizduoja sistemos elgseną reaguojant į išorinius ir vidinius įvykius. • Jie rodo sistemos reakciją į poveikius ir dažnai naudojama modeliuojant realaus laiko sistemas. • Būsenų modeliai vaizduoja sistemos būvius kaip mazgus ir įvykius kaip ryšius tarp šių mazgų. Įvykus įvykiui sistema pereina iš vieno būvio į kitą. • Būvio diagramos yra sudėtinė UML dalis ir naudojamos atvaizduoti būsenų modelius.
Būvio diagramos • Leidžia modelį sudalinti į smulkesnius modelius. • Trumpas veiksmų aprašymas yra pridėtas kiekvienam būviui. • Gali būti papildytos lentelėmis aprašančiomis būvius ir poveikius.
Aptariamos temos • Kontekstiniai modeliai • Elgsenos modeliai • Duomenų modeliai • Objektiniai modeliai • CASE paketai
Semantiniai duomenų modeliai • Naudojami aprašyti sistemoje apdorojamų duomenų loginę struktūrą. • Esybių santykio atributų modelis apibrėžia sistemos duomenų esybes, jų surištumą ir atributus • Plačiai naudojama projektuojant duomenų bazes, lengvai realizuojama reliacinėse duomenų bazėse.
Duomenų žodynai • Duomenų žodyną sudaro visų sistemos modelyje naudojamų vardų sąrašas. Esybių, jų sąryšių bei atributų aprašymas taip pat pridedamas. • Privalumai • Remia vardų valdymą ir padeda išvengti dubliavimo; • Išsaugo informaciją apie analizę, projektavimą ir realizavimą; • Dauguma CASE paketų palaiko duomenų žodynus.
Aptariamos temos • Kontekstiniai modeliai • Elgsenos modeliai • Duomenų modeliai • Objektiniai modeliai • CASE paketai
Objektiniai modeliai • Objektiniai modeliai aprašo sistemą objektų klasių ir jų asocijacijų pagalba. • Objektų klasė yra abstrakcija objektų aibės su bendrais atributais ir paslaugomis (operacijomis) teikiamomis kiekvieno objekto. • Gali būti naudojami įvairūs objektiniai modeliai • Paveldėjimo modeliai; • Agregavimo modeliai; • Sąveikos moeliai.
Objektiniai modeliai • Natūraliu būdu atspindi sistemos manipuliuojamas realaus pasaulio esybes • Šiuo būdu sunkiau modeliuoti labiau abstrakčias esybes • Objektų klasių identifikavimas pripažįstamas kaip sunkus procesas, reikalaujantis gilaus taikymo srities supratimo. • Objektų klasės atspindinčios srities esybes gali būti pakartotinai naudojamos visoje sistemoje
Paveldėjimo modeliai • Hierarchiškai susistemina srities objektų klases. • Hierarchijos aukščiausio lygio klasės atspindi visų klasių bendras savybes. • Objektų klasės paveldi atributus ir paslaugas vienos ar daugiau super klasių. • Klasių hierarchijos projektavimas gali būti sudėtingas jei reikia išvengti dubliavimo skirtingose šakose.
Objektiniai modeliai ir UML • UML yra standartizuotas atvaizdavimas sumanytas kūrėjų, kurie plačiai naudoja objektinės analizės ir projektavimo metodus. • Tai tapo efektyviu standartu objektiniam modeliavimui • Žymėjimai • Objektų klasės vaizduojamos stačiakampiais, kurio viršuje nurodomas vardas, viduryje atributai, o apačioje operacijos; • Sąryšis tarp objektų klasių (žinomas kaip asocijacijos) yra parodyta linijomis jungiančiomis objektus; • Paveldėjimas yra nurodytas kaip apibendrinimas ir rodo hierarchiją labiau aukštyn negu žemyn.
Daugialypis paveldimumas • Leidžia objekto klasėms paveldėti atributus ir paslaugas iš kelių super-klasių. • Tai gali iššaukti semantinius konfliktus kur atributai/paslaugos skirtingose super klasėse turi skirtingą semantiką. • Daugialypis paveldimumas sudėtingina klasių hierarchijos organizavimą.
Objektų agregavimas • Agregavimo modelis rodo kaip klasių rinkinys susideda iš kitų klasių. • Agregavimo modeliai yra panašūs į semantinių duomenų modelių sąryšių dalį.
Objekto elgesio atvaizdavimas • Elgsenos modelis parodo sąveiką tarp objektų nusakant tam tikrą sistemos elgesį, kuris yra apibrėžtas panaudojimo atvejais (use cases). • Sekos diagramos (arba bendradarbiavimo diagramos) UML’e yra naudojamos sąveikai tarp objektų atvaizduoti.
Struktūriniai metodai • Struktūriniai metodai apima sistemos modeliavimą kaip neatskiriamą metodo dalį. • Metodai apibrėžia modelių aibę, šių modelių gavimo procesą, taisykles ir nurodymai taikomi modeliams. • CASE priemonės remia sistemos modeliavimą kaip kaip struktūrinio metodo dalį.
Metodo silpnybės • Nemodeliuoja ne funkcinių sistemos reikalavimų. • Paprastai metodas neturi informacijos ar metodas yra tinkamas duotai problemai. • Gali pateikti per daug dokumentacijos. • Sistemos modeliai yra kartais per daug detalūs ir sunkiai vartotojų suprantami.
Aptariamos temos • Kontekstiniai modeliai • Elgsenos modeliai • Duomenų modeliai • Objektiniai modeliai • CASE paketai
CASE paketai • Suderinta įrankių seka, skirta palaikyti susijusiems programinės įrangos procesų veiksmams, tokiems kaip analizė, projektavimas ar testavimas. • Analizės ir projektavimo paketai palaiko sistemos modeliavimą reikalavimų ruošimo ir sistemos projektavimo metu. • Šie paketai gali palaikyti specifinius projektavimo metodus arba gali numatyti kelių skirtingų tipų sistemos modelių kūrimą.
Ataskaitų apibrėžimo ir generavimo priemonės Duomenų žinynas Diagramų redaktoriai Centrinė informacijos saugykla Kodo generavimo priemonės Užklausų kalba Projektavimo, analizės ir tikrinimo priemonės Formų apibrėžimo priemonės Importo/eksporto transliatoriai Analizės ir projektavimo paketai
Analizės priemonių komponentai • Diagramų redaktoriai - kuria duomenų srautų diagramas, objektų hierarchijas, esybių-savybių diagramas. Jie renka informaciją apie diagramų esmę ir išsaugo informaciją pagrindinėje saugykloje. • Modelių analizės ir tikrinimo įrankiai – vykdo projektavimą bei praneša apie klaidas ir anomalijas. • Saugykla ir susijusių užklausų kalba – leidžia projektuotojams surasti projektus ir apjungti projektavimo informaciją saugykloje. • Duomenų žinynas – palaiko informaciją apie naudojamas sistemos projektavimui esybes. • Ataskaitų apibrėžimo ir generavimo priemonės – pasiima informaciją iš centrinės saugyklos ir automatiškai generuoja sistemos dokumentaciją. • Formų apibrėžimo priemonės – leidžia klasifikuoti ekrano ir dokumento formatus. • Importo/eksporto transliatoriai – leidžia pasikeisti informacija iš centrinės saugyklos su kitais vystomais įrankiais. • Kodo generavimo priemonės – generuoja kodą arba kodo griaučius automatiškai iš projekto esančio centrinėje saugykloje.
Esminiai akcentai • Modelis yra abstraktus sistemos vaizdas. Papildomi modelių tipai teikia skirtingą sistemos informaciją. • Konteksto modeliai parodo sistemos poziciją jos aplinkoje su kitomis sistemomis ir procesais. • Objektų modeliai aprašo loginę sistemos esmę, jų klasifikaciją ir surinkimą. • CASE priemonės palaiko sistemos modelių kūrimą. • Būsenos modeliai modeliuoja sistemos elgesį atsakant į vidinius ir išorinius įvykius.
Esminiai akcentai • Semantiniai duomenų modeliai aprašo duomenų loginę struktūrą. • Objektiniai modeliai aprašo logines sistemos esybes, jų klasifikavimą ir agregavimą. • Sekų modeliai vaizduoja bendravimą tarp veikėjų ir sistemos naudojamų objektų. • Struktūriniai metodai teikia karkasą sistemos modelių kūrimui.