Elektronika.lt
 2025 m. gegužės 23 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
Gegužės 23 d. 14:11
Tinkamiausias ventiliatorius jūsų namams: 2025 metų TOP modelių palyginimas
Gegužės 23 d. 11:37
Ką slepia „Bluetooth“: patogumas ar atviras kvietimas kibernetinėms atakoms?
Gegužės 23 d. 08:29
SAP dirbtinis intelektas verslui iš esmės keičia įmonių veiklos principus
Gegužės 22 d. 20:26
Pristatyti „Meizu Note 16“ serijos išmanieji telefonai su didelės talpos baterijomis
Gegužės 22 d. 17:47
Atnaujintas „Corolla Cross“ – dar praktiškesnis automobilis šeimai
Gegužės 22 d. 14:17
66 proc. pasaulio gyventojų reguliariai naudoja dirbtinį intelektą
Gegužės 22 d. 11:39
Naujas greitai įkraunamas elektrinis „Volvo“ sunkvežimis nuvažiuos 600 kilometrų
Gegužės 22 d. 08:14
Nauja 160 AG „full hybrid E-Tech“ galios pavara – dviguba nauda: daugiau galios, mažesnės emisijos
Gegužės 21 d. 20:24
Nešiojamas prieš stacionarų: ką būtina žinoti, kad neprašautum investuodamas į naują kompiuterį
Gegužės 21 d. 17:52
Technologijos keičia mokslininkų darbą
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
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
FS25 Mods
Farming Simulator 25 Mods,
FS25 Maps
ATS Trailers
American Truck Simulator Mods, ATS Trucks, ATS Maps
Football Training Kit
Football Training Equipment, Football Skills, Football Training
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.
Ekspertai atskleidė, kam ir kada geriau nenaudoti „ChatGPT“

DI įrankių dauguma jau neįsivaizduoja kasdienės veiklos. Visgi, 2024 metais Stanfordo universiteto mokslininkų atliktas tyrimas parodė, kad 27 proc. „ChatGPT“ atsakymų apie įmones ir jų veiklą yra netikslūs ar visiškai klaidingi. Ir tik apie 15 proc. tokių atvejų yra atpažįstami. Tad kokioms temoms DI apskritai reikėtų vengti, o kur jis visgi nepakeičiamas?

Įspėjo naudojančius „Skype“ – turite mažai laiko pereiti prie kitos programėlės

Gegužės 5 d. viena pirmųjų vaizdo skambučių ir susirašinėjimo programėlių – „Skype“ bus išjungta visiems laikams. „Microsoft“ oficialiai nutraukia programos veikimą ir ragina žmones pereiti prie kitų nemokamų sprendimų.

DI žaidimų meškos paslauga arba lengviau asmeninių duomenų neišviliosi

Pastarosiomis savaitėmis visame pasaulyje žaibiškai plintanti pramoga pasitelkiant dirbtinį intelektą susikurti savo virtualų herojų ar lėlę nėra toks jau nekaltas žaidimas. Kad sukurtų norimą rezultatą, DI technologijos prašo pasidalinti savo nuotraukomis, taip pat nurodyti asmeninių duomenų. Kur jūsų duomenys nukeliauja toliau ir kas juos naudoja?

2025-04-07 14:26
Balso žinutės „Apple Messages“ aplikacijoje
2025-03-03 08:27
Internete gausu pavojų: ekspertas pataria, ko imtis tėvams, kad vaikai savo laisvalaikį leistų saugiai
2025-02-05 17:25
Vedate „Smart-ID“ kodą? Įsitikinkite, kad tvirtinate savo, o ne sukčių operaciją
2025-01-12 13:40
2,6 milijono pavogtų duomenų: ar jūsų naršyklės įskiepiai saugūs?
2024-12-12 17:29
Išmanus Kalėdų senelis: 9 iš 10 vertina DI pagalbą renkantis dovanas
2024-12-04 11:39
Gyvenimą socialiniuose tinkluose galėsite pradėti iš naujo: „Instagram“ pasiūlys naują funkciją
2024-11-28 08:27
Vagys savo aukas gali surasti pasitelkiant „Google“ žemėlapių programėlę, tačiau jūs galite užkirsti jiems kelią
2024-11-19 14:39
Kaip sukurti vizualiai patrauklią „Instagram“ verslo paskyrą?
2024-11-04 14:55
Rizikos zona ar galimybės verslui? Kokios grėsmės tyko naudojančių dirbtinį intelektą
2024-10-22 17:29
„TikTok“ privatumo nustatymai, kuriuos turite pasikeisti dabar
2024-10-16 08:25
Susidūrėte su sukčiais ir praradote savo „Gmail“ paskyrą?
2024-09-30 08:37
Keli mažiau žinomi „iOS“ „Mail“ patogumai
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

Sveiki ir ekologiški maisto produktai

Mokslo festivalis „Erdvėlaivis Žemė

LTV.LT - lietuviškų tinklalapių vitrina

„Konstanta 42“

„Mokslo sriuba“

www.matuok.lt - Interneto spartos matavimo sistema

www.esaugumas.lt – apsaugok savo kompiuterį!

PriedaiMobiliems.lt – telefonų priedai ir aksesuarai

Draugiškas internetas


Reklama
‡ 1999–2025 © Elektronika.lt | Autoriaus teisės | Privatumo politika | Atsakomybės ribojimas | Reklama | Turinys | Kontaktai LTV.LT - lietuviškų tinklalapių vitrina Valid XHTML 1.0!
Ets2 mods, Ats mods, Beamng drive mods
allmods.net
„MokslasPlius“ – mokslui skirtų svetainių portalas
www.mokslasplius.lt
Optical filters, UV optics, electro optical crystals
www.eksmaoptics.com
LTV.LT – lietuviškų tinklalapių vitrina
www.ltv.lt/technologijos/
Elektroninių parduotuvių optimizavimas „Google“ paieškos sistemai
www.seospiders.lt
FS22 mods, Farming simulator 22 mods,
FS22 maps

fs22.com
Reklama


Reklama