Объекті-бағытталған жобалау үрдісі
Жобалаудың кез-келген ү рдісіндегі бірінші этап, жү йенің функционалдығ ын қ амту жә не жү йнені қ алай қ ұ ру екендігін тү сіну ү шін, жобаланатын программалық қ амтама мен оның жанындағ ылар арасындағ ы ө зара қ атынасты анық таудан тұ рады. Осылайша, біз бірін-бірі толық тыратын екі модел қ ұ руымыз керек: 1. Жү йені қ оршау моделі – бұ л жасалып жатқ ан программалық қ амтама жанындағ ы басқ а жү йелерді жазып отыратын статикалық модель. 2. Жү йені пайдалану моделі – берілген жү йенің ө зінің жанындағ ылармен ө зара ә рекетін кө рсететін динамикалық модель. Жү йе жанындағ ы моделді, жү йенің жалпы архитектурасының жай блок –схемасын беретін байланыс схемасы кө мегімен кө рсетуге болады (7.1 сурет).
мү ше болып табылады басқ арылады
басқ арады
7.1-сурет. Байланыс моделі.
UML[16] тілінің пакеттері кө мегімен оны ішкі жү йелердің жиынтығ ы секілді тө нкерілген тү рде ұ сынуғ а болады. Пакет – бұ л модел элементтерін ү лкенірек блоктарғ а ұ йымдастыру ә дісі, яғ ни бірың ғ ай бү тін ретінде манипуляциялауғ а рұ қ сат етеді. Жақ сы жобаланғ ан пакет, бірігіп ө згеретін тенденциялары бар семантикалық жақ ын элементтерді топтастырады, мұ нда қ ұ рама пакетке қ атынау сырттан қ атал бақ ыланады. 7.2 суретте мысал ретінде пакеттер кө рсетілген. Олар классикалық ү шдең гейлі архитектураны ұ йымдастырады. “import” “import” “import”
7.2-сурет. Элементтер тобын моделдеу. «Тұ тынушы сервисі» пакетінің элементтері ақ параттардың кірісі мен шығ ысы ү шін визуалды интерфейсті ұ сынады. Ең жақ сы технологиялық сипаттама болып, жү йені жобалау нұ сқ алары болып табылады. Мұ нда ә рбір пакет берілген пакеттің барлық ресурстарының жазбаларын қ ұ райтын интерфейсті қ осады жә не пакеттердің ө зара ә рекеті тек қ ана бұ л интерфейс арқ ылы іске асады. Пакет ресурстардың жү зеге асу ө згерісі бұ л жағ дайда басқ а пакеттерді жоғ алтпайды. Тек қ ана интерфейстегі ө згеріс, берілген пакет ресурстарын қ олданатын пакеттер ө згерісін қ ажет ете алады. Келесі класстар мен пакеттер тобы ерекшеленеді: · Тұ тынушы интерфейсі – интерфейс объектісін тұ тынушымен жү зеге асыратын класс; · Интерфейс компаненттер кітапханасы – интерфейсті компаненттерді: терезе, батырмалар, белгілер жә не т.б жү зеге асыратын класс; · Басқ ару объектлері – пайдалану нұ сқ аларының сценариін жү зеге асыратын класс; · Тапсырмалар объектісі – жү йенің пә ндікоблысын жү зеге асыратын класс; · Мә ліметтер базасының интерфейсі – мә ліметтер базасымен интерфейсті жү зеге асыратын класс; · Мә ліметтер базасы; · Мә ліметтердің базалық қ ұ рылымы – мә ліметтердің ішкі қ ұ рылымын жү зеге асыратын класс, ягни бұ тақ тар, тізімдер секілді; · Қ ателерді ө ң деу – нештатный жағ дайларды ө ң деуді жү зеге асыратын исключениелер класы. Соң ғ ы екі пакет, ереже бойынша, олардың элементі барлық пакеттерді қ олдана алғ андық тан глобальді болып табылады. «Мә ліметтер сервисі» пакетінің элементтері мә ліметтер мен олардың жаң артылуына қ атынасын қ амтамасыздандырады. «Бизнес-сервисі» пакеті байланыстырушы орта болып табылады. Ол бизнес-тапсырманың орындалуына жауапты басқ а элементтер мен кластарды ө зіне тартып алады, соның ішінде бизнес-ереже, яғ ни тұ тынушының сұ ранысына жауап ретінде деректерді манипуляциялау стратегиясын басқ арады. Моделдеу кезінде жү йе мен оның жанындағ ылардың ө зара іс-ә рекетіне UML тілінің абстракті тә сілі қ олданылады. BU диаграммасы тү ріндегі банктің қ арапайым моделі 7.3 суретте кө рсетілген.
7.3-сурет. Банктегі қ олдану нұ сқ аулар диаграммасы.
Қ олдану нұ сқ ауларын (Use Case) жазу ү шін ә ртү рлі форматтар (шаблондар) қ олданылады: шаблонның толық форматы, бос формат, екі колонкадағ ы формат, Rational Unified Process (RUP) жә не де Use Case бойынша танымал маман Элистер Коберн [6] ә дістемесі. BU тұ тынущының қ ажеттілігіне сә йкес жү йенің тә ртібін ұ сынады, осығ ан орай класс идентификациялары, объектлер, операциялар, жә не объектлердің ө зара ә рекеттері орындалады. Мұ ндай ұ сынулар ү шін келесі таблицалар негізделеді [4]: қ олдану варианты мен субъект бойынша қ ажеттіліктерді бө лу таблицасы; қ андай да бір формат бойынша BU –ді аутентификациялау таблицасы; ә рекеттерді негізгі жә не альтернативті ағ ындарда орнату таблицасы; класс-мә ндер мен функционалды қ ажеттіліктердің сә йкестік таблицасы.
|