Мысал
және13.3суретте«Студент»классынұсқасыныңқалып-күйдиаграммасыберілген.Бұлдиаграммалар«Студент»классыобъектісініңстуденттердіңБД-ыменөзараәрекеттесубарысындағынұсқаныңқалып-күйінкөрсетеді. Бірінші диаграмма объектінің күйін толық бейнелейді, ал екіншісітекқанаБД-менөзараәрекеттесудің жалпыкүйін көрсетеді.
Әрдиаграммаүшінсандықбағасынтабамыз.1 диаграмма
Қалып-күй диаграммасында байланыс болмағандықтан, қысқартылғанформуламен есептейміз:
Шыққаннәтиже2диаграммада жеткіліктінақтыланбағанқалып-күйдіңболуыментүсіндіріледі.
Тапсырма
Үлгіленетінжүйеденқалып-күйдиаграммаларықұрылатынобъектілерүшін кластардытаңдапалу.
Әрбіртаңдапалынғанклассүшінпайдаланудыңбірнешенұсқасындаолардыңобъектілерініңтәртібінсипаттайтынқалып-күйдиаграммасынжасау.
4.Бақылаусұрақтары
Қалып-күйдиаграммасыныңмақсатықандай?
Қалып-күйдиаграммаларындаәрекетпенқызметтеркалайбейнеленеді?
Шарттыауысудегенімізнежәнеолдиаграммағақалайенгізіледі?
Объектініңқандайерекшекүйлерідиаграммадакөрінеді?
Қалып-күй диаграммаларының артықшылықтары мен кемшіліктеріқандай?
№14зертханалықжұмыс
Пакеттер,компоненттержәнеорналастырудиаграммалары
Жұмысмақсаты:
пакеттер диаграммаларын, компоненттер диаграммасын жәнеорналастырудиаграммасынзерделеу;
жобалауүдерісіндеолардыңпайдалануынзерделеу.
Пакеттердиаграммалары(package diagrams)
Бағдарламалық қамтамасыз етуді құру методологиясының ең маңыздымәселелерініңбірі–үлкенжүйенішағынішкіжүйелергеқалайбөлшектеукерек?Дәлосыкөзқарастақұрылымдықтәсілденобъектілік-бағдарланғантәсілгеөтуменбайланыстыөзгерістерайрықшакөзгетүсерлікболыптабылады.Кластардыбұданжоғарыдеңгейлікомпоненттергетоптастыруидеясы бар.UML-детоптастырудыңбұлмеханизміпакеттератауымен аталады(package).
Кластар пакеті және олардың арасындағы тәуелділік бар диаграмма пакеттердиаграммасы болып табылады.Атап айтқанда, пакеттер және тәуелділік кластардиаграммасыныңэлементтеріболыптабылады,яғнипакеттердиаграммасы–кластар диаграммасының нысаны ғана. Алайда тәжірибедебұндайдиаграммалардың құрылусебебіәр түрлі.
Бір элементті анықтаудағы өзгерістер екінші элементтің өзгеруіне әкелсе, екіэлемент арасында тәуелділікболады. Ал кластарға қатысты тәуелділік себептеріәртүрлі болуы мүмкін: бір класс екінші класқа хабарлама жібереді; бір класқа екіншікласс мәліметтерінің бір бөлшегі енгізіледі; бір класс екіншісіне операция параметріретінде сүйенеді. Егер класс өзінің интерфейсін ауыстырса, ол жіберген кез келгенхабарламадұрысболмауымүмкін.
Идеалды жағдайда кластың интерфейсіндегі өзгерістер басқа кластарғаықпал етуі тиіс. Үлкен жүйелерді жобалау өнеріне тәуелділікті ықшамдау кіреді, олөзгерісте әсерінтөмендетедіжәнеолардыенгізугеаз күштіталап етеді.
14.1 суретте «Клиенттер» және «Тапсырыстар» екі пакетіне топтастырылғанұйымныңқызметін өңдейтінзаттық салакластарыберілген.
«Тапсырыстардыжинауқосымшасы»заттықсаланыңекіпакетінедетәуелді.«Тапсырыстардыжинаудыңпайдаланушыинтерфейсі»«Тапсырыстардыжинауқосымшасына»және«GUI кітапханасына»тәуелді.
Кезкелгенекіпакетклассыарасындақандайдабіртәуелділікболса,екіпакетарасындатәуелділілікболады.
Үлкенжобаларүшінпакеттеререкшеқажетті құралдарболыптабылады.Олардыбарлық жүйені бүтіндей қамтитын және А4 пішімді қағаздың бір парағынаорнықтырылғанкластардиаграммасыноқуқиынболғанжағдайдапайдалануқажет.
Пакеттерәзірленіпжатқанжүйедетәуелділіктерсанынқалайазайтуғаболадыдегенсұраққажауапбермейді,алайдаоларбұлтәуелділіктердібөліпшығаруға көмектеседі. Тәуелділіктер санын барынша азайту жүйе компоненттерініңбайланыстылығынтөмендетеді.Бұлүдеріскеноэвристикалықәдістіпайдаланужеткіліксіз.
Пакеттер, әсіресе, тестілеу кезіндепайдалы.Тестілеу кезінде әр пакетте бірнемесебірнешетесткластарыболады,солардыңкөмегіменпакеттәртібі тексеріледі.
Достарыңызбен бөлісу: |