creating an architectural design
Post on 09-Jan-2016
53 Views
Preview:
DESCRIPTION
TRANSCRIPT
Creating an Architectural Design
Parengė: Jonas Bialopetravičius
Architektūrinis projektavimas
Programų sistemų architektūra
• Kas tai?– Sistemos struktūrinis pavidalas apibrėžiantis ją
sudarančius komponentus bei duomenis. Jų išdėstymą, savybes bei tarpusavio sąryšius.
Programų sistemų architektūra
• Kam to reikia?– Architektūros atvaizdavimas leidžia
suinteresuotiems asmenims efektyviai bendrauti klausimais liečiančias sistemą.
– Pateikia ankstyvus programų sistemos dizaino pasirinkimus, kurie stipriai įtakos galutinį produktą.
– Leidžia pažvelgti į sistemą, jos komponentus ir jų tarpusavio sąveikas, kaip į supaprastintą ir lengvai suvokiamą modelį.
Programų sistemų architektūra
• Iš ko susideda?– Duomenų projektavimas– Architektūros projektavimas
Duomenų projektavimas
• Perteikia analizės metu įvardintus duomenų objektus į duomenų struktūras komponentų lygmenyje arba duomenų bazės architektūrą aplikacijos lygmenyje.
Duomenų projektavimas
1. Nuoseklūs analizės principai taikomi sistemos eglsenai identifikuoti ir modeliuoti turėtų būti pritaikomi ir duomenims.
2. Visos duomenų struktūros ir su jomis atliekamos operacijos turi būti identifikuojamos.
3. Duomenų struktūros bei operacijos atliekamos su jais turėtų būti aprašomos pasirinktu metodu.
Duomenų projektavimas
4. Žemo lygmens sprendimai turėtų būti atlikti vėlai dizaino proceso metu.
5. Duomenų struktūros pavidalas turėtų būti žinomas tik tiems moduliams kurie tiesiogiai naudojasi tais duomenimis.
6. Turėtų būti sukurta duomenų struktūrų ir jiem taikomų operacijų biblioteka.
7. Programų sistemos dizaino bei programavimo kalbos turėtų palaikyti abstrakčius duomenų tipus.
Architektūriniai stiliai ir šablonai
• Stilius – bendras sistemos struktūrinės išvaizdos bei komponentų bendravimo modelis.
• Šablonas – vieno architektūrinio aspekto modelis naudojamas patenkinti kokį nors funkcinį reikalavimą.
Architektūriniai stiliai
• Duomenimis paremta architektūra
Architektūriniai stiliai
• Duomenų tekmės architektūra
Architektūriniai stiliai
• „Kviesk ir gražink“ architektūra
Architektūriniai stiliai
• Objektiškai orientuota architektūra
Architektūriniai stiliai
• Sluoksninė architektūra
Architektūriniai šablonai
• Paralelizmas – operacinės sistemos procesų valdymas, užduočių planuotojas.
• Duomenų pastovumas – duomenų bazių valdymo sistemos, aplikacijos lygio pastovumas.
• Paskirstymas – brokerio šablonas.
Architektūros projektavimas
1. Sistemos konteksto atvaizdavimas
Architektūros projektavimas
1. SafeHome sistemos konteksto atvaizdavimas
Architektūros projektavimas
2. Archetipų apibrėžimas
Architektūros projektavimas
3. Skaldymas į komponentus
Architektūros projektavimas
4. Konkrečios sistemos aprašas
Architektūrinės alternatyvos
1. Surinkti scenarijus;2. Išsiaiškinti reikalavimus, apribojimus ir aplinką;3. Apibūdinti architektūrinius stilius ir šablonus,
kurie buvo pasirinkti turimiems scenarijams ir reikalavimams;
4. Įvertinti kokybės atributus po vieną;5. Identifikuoti kokybės atributų jautrumą
architektūrinių atributų pasikeitimams;6. Kritikuoti siūlomas architektūras.
Architektūrinių alternatyvų analizės modelis:
Architektūrinės alternatyvos
• Architektūrinis sudėtingumas:– Dalijimosi priklausomybės;– Tekmės priklausomybės;– Apribojimo priklausomybės.
Sistemos architektūra iš analizės modelio
• Struktūrinis dizainas:– Pateikia patogų būdą perteikti duomenų tekmės
diagramas į sistemos architektūrą.• Priklauso nuo duomenų tekmės būdo:– Transformuojanti tekmė – duomenys plaukia
maždaug tiesiu kanalu;– Transakcijos tekmė – duomenys teka tam tikru
kanalu priklausomai nuo transakcijos centro priimto sprendimo.
Transformacinės tekmės perteikimas
1. Peržiūrėti bazinį sistemos modelį
Transformacinės tekmės perteikimas
2. Peržiūrėti ir sukonkretinti duomenų tekmės diagramas
Transformacinės tekmės perteikimas
3. Nustatyti ar DTD turi transformuojančios ar transakcijos tekmės charakteristikas
Transformacinės tekmės perteikimas
4. Surasti tekmės centrą nurodant įeities bei išeities ribas
Transformacinės tekmės perteikimas
5. Atlikti pirmo lygio skaidymą
Transformacinės tekmės perteikimas
6. Atlikti antro lygio skaidymą
Transformacinės tekmės perteikimas
7. Išgryninti pirmos iteracijos architektūrą naudojant kokybės gerinimo euristikas
Transformacinės tekmės perteikimas
7. Išgryninti pirmos iteracijos architektūrą naudojant kokybės gerinimo euristikas
Transakcinės tekmės perteikimas
• Skirtumai:4. Identifikuojamas transakcijos centras;5. DTD suprojektuojama remiantis įeities ir
išsiuntimo šakomis – likusios dalys remiasi transformacijos tipo tekmės projektavimu.
Transakcinės tekmės perteikimas
• Išsiuntimo šaka ir transformacijos tipo tekmės
Trumpai
1. Atliekamas sistemos atvaizdavimas jos kontekste.
2. Sistema aprašoma aukšto lygmens abstrakcijomis (archetipais).
3. Konkretūs komponentai identifikuojami ir išdėstomi.
4. Konkretūs architektūros pavyzdžiai sukuriami siekiant parodyti sistemos validumą realybėje.
Klausimai
?
top related