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