Elektronika.lt
 2024 m. lapkričio 5 d. Projektas | Reklama | Žinokite | Klausimai | Prisidėkite | Atsiliepimai | Kontaktai
Paieška portale
EN Facebook RSS

 Kas naujo  Katalogas  Parduotuvės  Forumas  Tinklaraščiai
 Pirmas puslapisSąrašas
 NaujienosSąrašas
 StraipsniaiSąrašas
 Vaizdo siužetaiSąrašas
 Nuolaidos, akcijosSąrašas
 Produktų apžvalgosSąrašas
 Naudingi patarimaiSąrašas
 - Elektronika, technika
 - Ryšio technika
 - Programinė įranga
 - Operacinės ir tinklai
 - Kompiuterinė įranga
 - Kitos protingos mintys
 Vykdomi projektaiSąrašas
 Schemų archyvasSąrašas
 Teorija, žinynaiSąrašas
 Nuorodų katalogai
 Įvairūs siuntiniai
 Bendravimas
 Skelbimai ir pasiūlymai
 Elektronikos remontas
 Robotų kūrėjų klubas
 RTN žurnalo archyvas






 Verta paskaityti
Lapkričio 4 d. 20:23
„Hyundai“ pristato „Initium“ – naujos kartos vandenilio kuro visureigį
Lapkričio 4 d. 17:23
KTU mokslininkas apie DI ir automatizacijos paradoksą: pakeisdamos žmogų, jos kuria naujas darbo vietas
Lapkričio 4 d. 14:55
Rizikos zona ar galimybės verslui? Kokios grėsmės tyko naudojančių dirbtinį intelektą
Lapkričio 4 d. 11:33
„NanoAvionics“ palydovas nufotografavo Lietuvą iš kosmoso – skriejo aukščiau nei Tarptautinė kosminė stotis
Lapkričio 4 d. 08:23
„Volvo Trucks“ pristato naujos kartos saugumo sistemas pėstiesiems ir dviratininkams apsaugoti
Lapkričio 3 d. 17:23
Žaliasis vandenilis pramonėje: Lietuvos ir Vokietijos mokslininkai siūlo aplinkai nekenksmingą technologiją
Lapkričio 3 d. 11:29
Patarė, kaip išsirinkti EV įkrovimo stotelę: efektyvumą garantuoja tinkama elektromobilio ir įkroviklio kombinacija
Lapkričio 2 d. 17:35
Lietuvos ateities transportas: nuo skraidančių automobilių iki 240 km/h lekiančių traukinių
Lapkričio 2 d. 11:19
„Adobe“ vieną iš savo programų padarė nemokama
Lapkričio 1 d. 17:43
Tikroji energetinė laisvė – globaliai konkurencingos kainos
FS25 Tractors
Farming Simulator 25 Mods, FS25 Maps, FS25 Trucks
ETS2 Mods
ETS2 Trucks, ETS2 Bus, Euro Truck Simulator 2 Mods
FS22 Tractors
Farming Simulator 22 Mods, FS22 Maps, FS25 Mods
VAT calculator
VAT number check, What is VAT, How much is VAT
LEGO
Mänguköök, mudelautod, nukuvanker
Thermal monocular
Thermal vision camera,
Night vision ar scope,
Night vision spotting scope
FS25 Mods
FS25 Harvesters, FS25 Tractors Mods, FS25 Maps Mods
Dantų protezavimas
All on 4 implantai,
Endodontija mikroskopu,
Dantų implantacija
FS25 Mods
FS25 Maps, FS25 Cheats, FS25 Install Mods
GTA 6 Weapons
GTA 6 Characters, GTA 6 Map, GTA 6 Vehicles
FS25 Mods
Farming Simulator 25 Mods
Reklama
 Patarimai » Programinė įranga Ankstesnis patarimas | Sekantis patarimas | Dalintis | Spausdinti

Kaip efektyviau projektuoti programinės įrangos architektūrą

Publikuota: 2005-06-08 11:24
Tematika: Programinė įranga
Autorius: Darius Šilingas
Aut. teisės: ©Baltijos programinė įranga, UAB
Inf. šaltinis: Baltijos programinė įranga, UAB
Daugiau skaitykite straipsnyje „Programinės įrangos architektūros projektavimas“.

Pateiksime keletą praktinių patarimų, kaip pasiekti, kad programinės įrangos architektūros projektavimas būtų efektyvus ir teiktų ilgalaikę naudą — leistų efektyviau realizuoti kokybišką ir nesunkiai palaikomą programinę įrangą.

Pirmas žingsnis: Projektavimo veiklos apibrėžimas

Visų pirma reikia įvertinti projektavimo veiklos svarbą planuojant ir išskirti jai pakankamai laikoTaip pat reikia nutarti, kas iš projekto vykdytojų bus atsakingas už programinės įrangos architektūrą. Didesniuose projektuose reikalinga sistemų architekto specializacija, o mažesniuose projektuose tai gali atlikti ir programuotojai. Taip pat svarbu apibrėžti projektavimo sprendimų dokumentavimo taisykles, nustatyti jų aptarimo ir priėmimo procedūras.

Antras žingsnis: UML modeliavimo kalbos įsisavinimas

Šiuo metu UML modeliavimo kalba yra standartinė projektavimo priemonė, kuri visuotinai naudojama pasaulyje ir praktiškai neturi rimtesnių “konkurentų”. Todėl, jeigu siekiate standartizuoti modeliavimo notaciją, kuri būtų plačiai suprantama, vienareikšmiškai rekomenduojame pasirinkti UML. UML apibrėžia 12 rūšių diagramas, kurios leidžia specifikuoti įvairius architektūros aspektus. Tačiau tikrai nebūtina naudoti visų diagramų. Čia, kaip ir daugelyje kitų sričių galioja 80/20 taisyklė: 80% projekto užtenka 20% UML galimybių. Nebūtinai reikia ir specializuotų UML įrankių – nedideliuose projektuose galima braižyti UML diagramas bendrais diagramų modeliavimo įrankiais, pvz. Microsoft Visio, arba tiesiog ranka ant popieriaus ar lentos. Visgi didesniuose projektuose specializuotų UML įrankių naudojimas leidžia dirbti daug efektyviau.

Naudojant UML, galima modeliuoti sistemą skirtingais abstrakcijos lygiais. Pavyzdžiui, kuriamos sistemos esybes ir jų ryšius vaizduojanti klasių diagrama gali būti naudojama reikalavimų analizės metu, o vėliau pagal ją gali būti sukuriama detali realizacijos klasių diagrama, kurioje nurodomi specifiniai realizacijos kalbos duomenų tipai, atliekamos reikalingos ryšių transformacijos, pridedamos tik realizacijai reikalingos savybės, tokios kaip identifikaciniai kodai. Modeliavimas skirtingais abstrakcijos lygiais leižia glaudžiau susieti programinės įrangos architektūros projektavimą su reikalavimų analizės veikla.

Trečias žingsnis: Projektavimo principų žinojimas ir taikymas

Norint priimti gerus projektavimo sprendimus, reikia žinoti ir taikyti projektavimo principus, kurie yra išbandyti ir pasiteisinę praktikoje. Tokių principų pavyzdžiai: sistemų skaidymas į posistemių sluoksnius, MVC ( Model-View-Controller ) karkasas, projektavimo šablonai, aprašyti klasika tapusioje Design Patterns: Elements of Reusable Object-Oriented Software bei kitose knygose. Principų ir šablonų naudojimas leidžia panaudoti sukauptą projektavimo išmintį, nekartoti klaidų ir “neišradinėti dviračio”.

Yra daug gyvenimiškų principų, kurie puikiai tinka projektuojant programinę įrangą. Vienas iš tokių — dar romėnų imperijos kūrimo laikais taikytas “skaldyk ir valdyk”. Bet kurią sudėtingesnę programinės įrangos sistemą reikia suskaidyti į dalis, kad būtų galima efektyviai padalinti kūrimą grupei žmonių. Čia labai svarbu tiksliai apibrėžti tų dalių bendravimo principus ir sąsajas. Vienas iš plačiausiai taikomų sprendimų — sluoksniuotos posistemių architektūra, kurioje bendravimas tarp sluoksnių yra griežtai ribojamas hierarchijos — auščiausio lygio sluoksnis bendrauja tik su po juo esančiu sluoksniu, šis su dar žemesniu ir t.t. Nėra leidžiamas bendravimas iš žemesnių sluoksnių į aukštesnius arba “peršokant” tarpinius sluoksnius. Toks sistemų organizavimas labai palengvina sistemų palaikomumą. Sluoksniuota architektūra dažnai jungiama su MVC (angl. Model-View-Controller) šablonu, kuris siūlo skaidyti programinę įrangą į vartotojo sąsajos, duomenų modelio ir veiklos logikos dalis.

1 paveikslas. Sluoksniuota trijų lygių architektūra pagal MVC projektavimo šabloną

Sluoksniuotos architektūros, pagrįstos MVC šablonu, schema puikiai tinka taikyti daugumoje programinės įrangos sistemų, kadangi tiek vartotojo sąsaja, tiek duomenys yra praktiškai bet kurioje programinėje įrangoje, o didesnėse verslo optimizavimui skirtose sistemose dažniausiai yra pakankamai sudėtinga veiklos logika, kuri gali kisti priklausomai nuo įmonės strategijos, todėl ją verta išskirti kaip atskirą modulį. Toks organizavimas leidžia realizuoti nesunkiai praplečiamą ir palaikomą programinę įrangą bei lengvai paskirstyti darbus.

Ketvirtas žingsnis: Projektavimo sprendimų dokumentavimas

Tam, kad projektavimo sprendimai būtų gerai suprantami ir įsisavinami, juos būtų galima analizuoti ir įvertinti, reikia dokumentuoti svarbiausius projektavimo sprendimus. Paprastai dokumentavimą labai palengvina ruošinio, kuriuo apibrėžta dokumento struktūra ir paaiškinta, ką ir kaip kiekviename skyriuje reikia aprašyti. Žemiau pateikta pavyzdinė programinės įrangos architektūros dokumento struktūra, kuri yra siūloma RUP proceso ruošinyje (Rational Unified Process).

Modeliuojant projektavimo sprendimus ir juos dokumentuojant, taip pat reikia laikytis modeliavimo stiliaus taisyklių, kurios leidžia sukurti paprastesnes, aiškesnes ir geriau suprantamas diagramas. UML stiliaus taisyklių rinkinys pateiktas knygoje The Elements of UML Style.

Tokių taisyklių pavyzdžiai:

  • diagramoje turėtų būti 7±2 elementai, o didesnes diagramas reikia skaidyti į keletą mažesnių;
  • vengti besikertančių, vingiuotų, ilgų linijų, vaizduojančių ryšius tarp elementų;
  • naudoti spalvas skirtingiems pagal reikšmę elementams atskirti;
  • stengtis išlaikyti diagramos elementų išdėstymo simetriją.

Penktas žingsnis: Projektavimo sprendimų aptarimas

Projektavimo sprendimus būtina aptarti ir įvertinti, kad būti priimti geriausi ir visi juos puikiai suprastų ir pritaikytų. Tai daroma organizuojant techninių sprendimų pristatymo ir aptarimo susirinkimus, kurie gali būti tiek formalūs, tiek neformalūs. Taip pat rekomenduojama atlikti periodines peržiūras. Kai dirbama su naujomis technologijomis arba pagal naują metodiką patartina samdyti techninius konsultantus.

Šeštas žingsnis: programinio kodo atitikimo architektūrai analizė

Reikia ne tik suprojektuoti ir dokumentuoti programinės įrangos architektūrą, bet ir siekti, kad ji būtų tinkamai perkeliama į programinį kodą nepažeidžiant architektūroje nustatytų principų. Pirminis įrankis analizuojant programinio kodo atitikimą architektūrai yra programinio kodo peržiūros, kurias taip pat rekomenduotina atlikti periodiškai ir įtraukti į projekto planus. Programinio kodo peržiūrai ir vertinimui gali labai padėti specializuotų kodo statinės analizės įrankių naudojimas. Analizuoti kodą padeda ir UML įrankiai, tokie kaip MagicDraw UML, palaikantys atgalinės inžinerijos funkcijas, leidžiančias atstatyti programinės įrangos realizacijos modelį iš programinio kodo ir jį vizualizuoti bei analizuoti.

Daugiau skaitykite straipsnyje „Programinės įrangos architektūros projektavimas“.


Draudžiama platinti, skelbti, kopijuoti informaciją su
nurodyta autoriaus teisių žyma be redakcijos sutikimo.

 Rodyti komentarus (0)
Įvertinimas:  1 2 3 4 5 
Vardas:    El. paštas:   (nebūtinas)
Pakartokite kodą: 
  Apsaugos kodas: 
 
Komentarus rašo lankytojai. Komentarai nėra redaguojami ar patikrinami, jų turinys neatspindi redakcijos nuomonės. Redakcija pasilieka teisę pašalinti pasisakymus, kurie pažeidžia įstatymus, reklamuoja, yra nekultūringi arba nesusiję su tema. Pastebėjus nusižengimus, prašome mums pranešti. Jei nurodomas el. pašto adresas, jis matomas viešai. Patvirtindami komentaro įrašymą, kartu patvirtinate, jog esate susipažinęs su portalo privatumo politika ir su ja sutinkate.
Rizikos zona ar galimybės verslui? Kokios grėsmės tyko naudojančių dirbtinį intelektą

Dirbtinis intelektas šiandien – jau neatsiejama kasdienybės dalis ne tik kiekvieno iš mūsų gyvenimuose, bet ir versle. Bet ar kada susimąstėte, kokią kainą mainais už šią pagalbą mokame? O kiek saugūs išlieka mūsų duomenys, kuriuos lengva ranka atiduodame DI įrankiams?

„TikTok“ privatumo nustatymai, kuriuos turite pasikeisti dabar

Siekdama tobulinti savo paslaugas, trumpų vaizdo įrašų platforma taip pat gausiai renka vartotojų asmeninius duomenis. Tačiau ne visi žino, kur ir kaip ši informacija yra naudojama. Ką galite padaryti, kad išsaugotumėte savo privatumą?

Susidūrėte su sukčiais ir praradote savo „Gmail“ paskyrą?

Internautai dažnai susiduria su įvairiausiais sukčiais, o tarp populiarių užklausų rasime ir klausimą, susijusį su įsilaužimu į „Gmail“ elektroninio pašto paskyras ir kaip ją susigrąžinti.

2024-09-30 08:37
Keli mažiau žinomi „iOS“ „Mail“ patogumai
2024-09-25 17:03
Kaip pačiam susikurti internetinę svetainę su „WordPress“: išsamus vadovas
2024-09-23 11:49
Ekspertai pataria: taupyti projektuojant – neapsimoka, nes klaidos kainuoja per brangiai
2024-09-18 14:23
Sulaukiate gausybės erzinančių „WhatsApp“ skambučių? Paprastas triukas, kuris garantuos jums ramybę
2024-09-16 08:11
7 „Facebook“ funkcijos, kurias žino tik patys gudriausi vartotojai
2024-09-11 14:45
5 geriausi būdai „supakuoti“ prisiminimus
2024-09-03 18:36
„Snapchat“ – vaikų mėgstamas socialinis tinklas. Ar jis saugus?
2024-07-17 11:35
Kaip teisingai formuoti užklausą „ChatGPT“, kad gautumėte naudingą atsakymą?
2024-06-25 16:29
Jei nespėjote atsidaryti „Shazam“, paniūniuokite patys: nauja funkcija padės lengviau atrasti patinkančią dainą
2024-05-28 14:12
Kaip įjungti „Lossless“ garso formatą „Music“ aplikacijoje „Apple TV“
2024-05-17 11:09
Neseniai kalbėjote su rusakalbiais „Google“ atstovais? Pasitikrinkite, ar neatidavėte savo duomenų sukčiams
2024-05-09 08:38
Naujausias sukčių įrankis – „FraudGPT“: kaip apsisaugoti
Daugiau...Paieška archyve

Global electronic components distributor – Allicdata Electronics

Electronic component supply – „Eurodis Electronics“

LOKMITA – įvairi matavimo, testavimo, analizės ir litavimo produkcija

Full feature custom PCB prototype service

GENERAL FINANCING BANKAS

Mokslo festivalis „Erdvėlaivis Žemė

LTV.LT - lietuviškų tinklalapių vitrina

„Konstanta 42“

Technologijos.lt

Buitinė technika ir elektronika internetu žemos kainos – Zuza.lt

www.esaugumas.lt – apsaugok savo kompiuterį!

PriedaiMobiliems.lt – telefonų priedai ir aksesuarai

Draugiškas internetas


Reklama
‡ 1999–2024 © Elektronika.lt | Autoriaus teisės | Privatumo politika | Atsakomybės ribojimas | Reklama | Turinys | Kontaktai LTV.LT - lietuviškų tinklalapių vitrina Valid XHTML 1.0!
Script hook v, Openiv, Menyoo
gta5mod.net
FS25 Mods, FS25 Tractors, FS25 Maps
fs25mods.lt
Optical filters, UV optics, electro optical crystals
www.eksmaoptics.com
Reklamos paslaugos
SEO sprendimai

www.addad.lt
Elektroninių parduotuvių optimizavimas „Google“ paieškos sistemai
www.seospiders.lt
FS22 mods, Farming simulator 22 mods,
FS22 maps

fs22.com
Reklama


Reklama