Жүйе жұмысының сценариі
Жү йе кестесінің негізгі абстракциясын анық тау арқ ылы тапсырма жә не анализдерін жү йе жұ мысының кейбір сценарийін қ арастыруды жалғ астырамыз. Сценарийді қ арау кө мегімен кө рсеткіштің ә ртү рлі механизмін тү сінуге жә не баяндауғ а жә не жұ мыстағ ы жү йелерге қ атысты, сыртқ ы жү йеге тә уелді жү йе қ ұ рамының тізім жағ дайларын қ ұ рудан басталады. Ереже бойынша тізім жағ дайлары пайдаланушының кө зқ арасы бойынша анық талады. Осы жолмен сыртқ ы қ ұ рылымдары емес, жү йе кө рсеткіштерін зеттеу жү зеге асады. Сценарийдің кө рсеткіштерін мысалдармен дә йектей тү су ү шін UML ө зара ә рекетінің диаграммалары қ атысады. Ізбасарлық диаграмма, мысалы анализдің барлық объектілерін жә не оның жауапкершілігін дә йектей тү седі, қ ажет болғ ан кезде концептуалды қ ұ рылым кезең інде бө лінбеген қ осымшаларды енгізеді жә не сценарийдегі объектілердің ө зара іс-ә рә кетін кө рстеді. Тізімде жү йе жұ мысының режимдері дә йекті тү рде болмағ ан кезде, қ осымша сценарийлерді қ осуғ а тура келеді. Ары қ арай жү йе жә не қ олданушы сценарийінің ө зара іс-ә рекетін қ арастырамыз. Пайдаланушығ а оның тапсырмасының орындалуы ү шін оптимальды ізбасарлық ты беру ө нердің ү лкен сатысынан қ арағ анда графикалық интерфейсті жобалау болып табылады. Бұ л жағ дайда тү пнұ сқ аны пайдалану қ ажет болады. Ол ә зірлеу кезінде пайдаланушының тә уекелін тө мендетеді. Одан тысқ ары, егер жү йе архитектурасы объекті-бағ ытталғ ан болып табылса, онда пайдаланушы интерфесінің қ ұ рылым ө згерісімен байланысты шығ ындары азаяды. Пайдаланушы мен жү йе ө зара іс-ә рекетінің мү мкін болатын сценарийінің анализі ү йлесімді сыныптар операциясының кең ейтілімі жетіспеген жағ дайда енгізіледі. Жү йе сценарийін мең гергеннен кейін пайдаланушы интерфейсі тү пнұ сқ асының дисплейде орналасуын жә не оның қ ұ рамын анық тауғ а болады. Одан басқ а аралық диаграммасы мен қ ұ рылым диаграммасының кө мегімен қ ұ растырғ ан сценарийді егжей-тегжейлі бейнелеуге болады. Аралық жә не қ ұ рылым диаграммасы қ ұ рылым қ ұ рылым ауысымы нә тижесінде пайда болатын қ ұ рылымның бірінен екіншісіне ө туін жә не ық палын шақ ыратын оқ иғ аның, мә лімет сыныптары қ ұ рылымының кең істігін бейнелейді. Барлық сценарийлер бір-бірімен тығ ыз байланысты. Ондағ ы пайдаланушы команданы диспетчерлеуге жауапты жеке басқ арушы сыныптарды белгілеу ө те кү рделі болады. Басқ арушы сыныптың жалғ ыз ғ ана операциясы мә лімет сыныбының нұ сқ асында “ө мір сү ретін” соң ғ ы автомат ә рекетіне ә сер етеді. Басқ ару сыныбының қ ұ рылым диаграммасы жобалау жү йесі табылуы мү мкін болатын негізгі қ ұ рылымдарды қ осуы керек болады. Бұ л қ ұ рылым жү йе кө рсеткішінің барлық белгіленген сценарийіне ә сер етеді. Нақ ты ө німдерді қ ұ растырғ анда детальды анализ қ ұ рылым жә не аралық диаграммасы қ ұ рылысымен аяқ талуы шарт. Соң ғ ы негізгі сценарий барлық жү йе объектілерін қ ажетті ізбасарлық пен қ ұ растыратын жә не оларды тұ рақ ты басқ арушы қ ұ рылымғ а келтіруі мү мкін болатын жү йені қ осуғ а қ атысады. Осы жағ дайда, жү йе жұ мысының негізгі сценарийлерін мең гергеннен кейін жү йенің негізгі функционалды кө лемі жеткілікті дең гейде жә не енді оның архитектурасын жобалауғ а кірісуімізге болады деп есептейміз. Ә рбір программалық жү йе қ арапайым жә не бір уақ ытта жалпы кө лемді қ ұ рылымдық философия болып табылуы қ ажет. Коггинстің “прогматизм ә рқ ашан ә сем болуы керек, ө йткені біз табиғ аттан бә рібір ештең е кө ре алмаймыз” бағ дарламасының ә зірлеу заң ымен ү йлесімділігі. Алдын-ала тексеру: бағ дарламалау ешқ ашан жобаны жү зеге асыру тілінен толық тә уелсіз болмайды. Тіл ерекшелігі осы немесе басқ а да архитектуралық шешімдерге шарасыз кү йде ө з ә серін тигізеді. Объекті-бағ ытталғ ан тілдер сыныптың ү лкен санын тә ртіпке келтірудің ү ш негізгі механизмін береді. Олар: ізбасарлық, агрегация жә не параметрлеу. Параметрлеудің ізбасарлық пен жә не агрегациямен байланысы қ уатты жә не бір уақ ытта компактты архитектураны қ ұ руғ а кө мектеседі. Жү йенің архитектурағ а қ адамын қ арастыра отырып, біз ү ш моментті: клиенттік, серверлік бө лім функциясының бө лімдерін, транзикциямен басқ ару механизмін жә не қ осымшаның клиенттік бө лімінің жү зеге асу стратегиясын еске алуымыз шарт.
|