Кіріспе

Бағдарламалық құралдар саласы. Компьютерлік көмекпен бағдарламалық жасақтама жасау (CASE) – қолданбаларды жобалау және іске асыру үшін қолданылатын бағдарламалық құралдар саласы. CASE құралдары аппараттық өнімдерді жобалау үшін пайдаланылатын компьютерлік көмекпен жобалау (CAD) құралдарымен ұқсас және ішінара шабыттанған. CASE құралдары жоғары сапалы, ақаусыз және қолдауға оңай бағдарламалық жасақтаманы жасауға көмектеседі. CASE бағдарламалық жасақтамасы жиі ақпараттық жүйелерді әзірлеу әдістерімен және бағдарламалық жасақтаманы әзірлеу процесінде қолданылатын автоматтандырылған құралдармен байланысты болды.

Тарих

1968 жылы Мичиган университетінде басталған Ақпараттық жүйелерді жобалау және оңтайландыру жүйесі (ISDOS) жобасы, талдаушыларға талаптарды талдау және жүйелерді әзірлеудің өте қиын процесінде көмектесу үшін компьютерлік жүйелерді пайдалану тұжырымдамасына зор қызығушылық тудырды. Дэниел Тейхроудың бірнеше мақаласы автоматтандырылған жүйелерді дамыту мүмкіндігімен бірнеше буын энтузиасттарды шабыттандырды. Оның Проблемалық мәлімдеме тілі / Проблемалық мәлімдеме талдағышы (PSL/PSA) құралы CASE құралы болды, бірақ бұл термин пайда болғанға дейін жасалған. Тағы бір маңызды бағыт – деректер базасының дерек сөздігіне логикалық кеңейтім ретінде пайда болды. Метадеректердің ауқымын кеңейту арқылы қосымшаның атрибуттары сөздікке енгізіліп, орындалу кезінде қолданылуы мүмкін болды. Бұл «белсенді сөздік» қазіргі заманғы модельге негізделген инженерия мүмкіндіктерінің алға басушысы болды. Дегенмен, белсенді сөздік метадеректердің графикалық бейнеленуін қамтамады. Деректерді интеграцияланған әдістер жиынтығын қолдану арқылы алынған талдаушылардың метадеректерін сақтайтын сөздік тұжырымдамасымен, сондай-ақ мұндай деректердің графикалық бейнеленуінің үйлесімділігі CASE-тің алғашқы нұсқаларын тудырды. Нарыққа келесі кірген компания – Кембридждегі Index Technology компаниясының Excelerator құралы. DesignAid Convergent Technologies және кейіннен Burroughs Ngen желілік микрокомпьютерлерінде жұмыс істесе, Index IBM PC/AT платформасында Excelerator-ды іске қосты. Іске қосылған кезде және бірнеше жыл бойы IBM платформасы Convergent Technologies немесе Burroughs машиналары сияқты желілік қосылымдарды немесе орталықтандырылған деректер базасын қолдамаса да, IBM-нің тартымдылығы зор болды және Excelerator танымал болды. Excelerator-дың ізінен Knowledgeware (Джеймс Мартин, Фран Таркентон және Дон Аддингтон), Texas Instrument-тің CA Gen және Andersen Consulting-тің FOUNDATION құрал жиынтығы (DESIGN/1, INSTALL/1, FCP) сияқты компаниялардың ұсыныстары келді. CASE құралдары 1990 жылдардың басындағы ең жоғары деңгейіне жетті. 1990 жылғы қаңтардағы PC Magazine журналының мәліметтері бойынша 100-ден астам компания 200-ге жуық түрлі CASE құралдарын ұсынды. Мейнфреймнің құлдырауымен AD/Cycle және ірі CASE құралдары жойылды, бұл бүгінгі күнгі негізгі CASE құралдарының нарығын ашты. 1990 жылдардың басындағы CASE нарығының көптеген көшбасшылары Computer Associates компаниясымен сатып алынды, олар IEW, IEF, ADW, Cayenne және Learmonth & Burchett Management Systems (LBMS) компанияларын қамтыды. CASE құралдарының эволюциясына әкелген тағы бір тенденция – нысанға бағдарланған әдістер мен құралдардың пайда болуы болды. Көптеген құрал-саймандар өндірушілері нысанға бағдарланған әдістер мен құралдарды қолдауды қосты. Сонымен қатар, нысанға бағдарланған тәсілді қолдау үшін төменнен жоғарыға қарай жасалған жаңа өнімдер пайда болды. Andersen өзінің Foundation-ға балама ретінде Eagle жобасын жасады. Нысанға бағдарланған дамудағы бірнеше ой-пікір көшбасшылары әрқайсысы өз әдістемелерін және CASE құралдарын жасады: Джейкобсон, Румбо, Буч және т.б. Ақырында, бұл әртүрлі құралдар мен әдістер Object Management Group (OMG) бастаған стандарттар арқылы біріктірілді. OMG-нің Бірыңғай модельдеу тілі (UML) қазіргі уақытта нысанға бағдарланған модельдеудің өнеркәсіп стандарты ретінде кеңінен қабылданды.

Құралдар

CASE құралдары бағдарламалық жасақтаманы әзірлеу өмірлік циклындағы нақты міндеттерді қолдайды. Оларды келесі категорияларға бөлуге болады:
Бізнес және талдау модельдеуі: Графикалық модельдеу құралдары. Мысалы, Э/Р модельдеу, объектілік модельдеу және т.б.
Даму: Өмір циклінің жобалау және құрылыс кезеңдері. Ақауларды жою орталары. Мысалы, IISE LKO.
Тексеру және растау: Код пен ерекшеліктерді дұрыстығына, өнімділігіне және т.б. талдау.
Конфигурацияны басқару: Репозиторий нысандары мен файлдарды тексеру және шығаруды басқару. Мысалы, SCCS, IISE.
Метрикалар мен өлшеу: Кодты күрделілік, модулділік (мысалы, "goto" операторларының болмауы), өнімділік және т.б. бойынша талдау.
Жобаларды басқару: Жоба жоспарларын, тапсырмаларды, кестелеуді басқару.
CASE құралдарын ажыратудың тағы бір кең таралған тәсілі – Upper CASE және Lower CASE арасындағы айырмашылық. Upper CASE құралдары бизнес және талдау модельдеуін қолдайды. Олар ER диаграммалары, деректер ағыны диаграммалары, құрылымдық диаграммалар, шешім ағаштары, шешім кестелері және т.б. сияқты дәстүрлі диаграммалық тілдерді қолдайды. Lower CASE құралдары физикалық жобалау, жөндеу, құрылыс, сынау, компоненттерді интеграциялау, техникалық қызмет көрсету және кері инженерия сияқты даму шараларын қолдайды. Қалған барлық шаралар өмірлік цикл бойына созылады және Upper CASE және Lower CASE екеуіне де бірдей қолданылады.

Қоршаған орта

Қоршаған орта — толық бағдарламалық жасақтама процесін қолдауға тырысатын CASE құралдары немесе жұмыс орталары жиынтығы. Бұл бір нақты тапсырмаға немесе өмірлік циклдің белгілі бір бөлігіне бағытталған құралдардан өзгеше. CASE орталары Fuggetta бойынша келесідей жіктеледі:

Құрал жиынтығы: Бос байланысқан құралдар жиынтығы. Бұл жүйелер әдетте операциялық жүйе жұмыс орталарына, мысалы Unix Programmer's Workbench немесе VMS VAX жиынтығына негізделген. Олар әдетте деректерді алмасу және басқаруды жүзеге асыру үшін құбырлар немесе басқа қарапайым механизмдерді пайдаланады. Оңай интеграцияның артықшылығы бар болғанымен, ол кемшілік те болуы мүмкін. Shell скрипті сияқты технологиялар арқылы параметрлерді қарапайым түрде беру, жалпы репозиторий деректер базасының қамтамасыз ете алатын күрделі интеграцияны ұсына алмайды.

Төртінші буын: Бұл орталар 4GL деп те аталады, себебі алғашқы орталар Visual Basic сияқты нақты тілдерге негізделген. Олар бірнеше құралды терең интеграциялауды қамтамасыз еткен алғашқы орталар болды. Әдетте, бұл орталар нақты қосымша түрлеріне бағытталған. Мысалы, реляциялық деректер базасына стандартты атомдық операцияларды орындайтын пайдаланушы интерфейсімен басқарылатын қосымшалар. Мысалдар: Informix 4GL және Focus.

Тілге бағытталған: Символиктер Лисп Genera ортасы немесе Parcplace-тен VisualWorks Smalltalk сияқты бір, көбінесе объектіге бағытталған тілге негізделген орталар. Мұндай орталарда операциялық жүйенің барлық ресурстары объектіге бағытталған тілдегі объектілер болып табылады. Бұл қуатты түзету және графикалық мүмкіндіктерді ұсынады, бірақ әзірленген код көбінесе нақты тілмен шектеледі. Осы себепті бұл орталар CASE ішіндегі арнайы орынды иеленді. Олар көбінесе прототиптерді жасау және ғылыми-зерттеу жобалары үшін қолданылды. Бұл орталардың ортақ идеясы — модель-көрініс-бақылаушы пайдаланушы интерфейсі, ол бір дизайнның бірнеше нұсқаларын негізгі модельмен үйлесімді ұстауға мүмкіндік береді. MVC архитектурасы CASE орталарының басқа түрлерімен және олармен жасалған көптеген қосымшалармен қабылданып алынды.

Интеграцияланған: Бұл орталар — көптеген ИТ мамандары CASE туралы ойлағанда есімізге келетін нәрсе. IBM-нің AD/Cycle, Andersen Consulting-тің FOUNDATION, ICL CADES жүйесі және DEC Cohesion сияқты орталар. Бұл орталар талдаудан бастап техникалық қызмет көрсетуге дейінгі өмірлік циклды толық қамтуға тырысады және бағдарламалық жасақтама процесінің барлық артефакттарын сақтау үшін интеграцияланған деректер базасын ұсынады. Интеграцияланған бағдарламалық жасақтама репозиторийі — осы құралдардың ерекшелігі. Олар әртүрлі дизайн модельдерін, сондай-ақ гетерогенді тілдердегі кодты қолдайды. Бұл орталардың маңызды мақсаттарының бірі — «қайтару инженериясы»: дизайн деңгейінде өзгерістер енгізіп, оларды кодқа автоматты түрде көшіру және керісінше. Бұл орталар, әдетте, бағдарламалық жасақтаманы әзірлеудің нақты әдістемесімен байланысты болды. Мысалы, Andersen-дің FOUNDATION CASE жиынтығы Andersen Method/1 әдістемесімен тығыз байланысты болды.

Процесске бағытталған: Бұл интеграцияның ең жоғары деңгейі. Бұл орталар бағдарламалық жасақтама процесінің талдау және жобалау объектілерін ғана емес, сонымен қатар нақты процестің өзін ресми түрде сипаттауға және бағдарламалық жасақтама жобаларын басқару және бағыттау үшін осы ресми процесті пайдалануға тырысады. Мысалдар: East, Enterprise II, Process Wise, Process Weaver және Arcadia. Бұл орталар, өзіндік бағдарламалық жасақтама процесі ортаның бір бөлігі болғандықтан және құралдарды шақырудың көптеген аспектілерін басқара алатындықтан, әдістемемен байланысты.

Іс жүзінде, жұмыс орталары мен орталарды ажырату икемді болды. Мысалы, Visual Basic — бағдарламалау жұмыс ортасы, бірақ көптеген адамдар оны 4GL ортасы деп санайды. Жұмыс орталарын орталардан ерекшелейтін ерекшеліктер — ортақ репозиторий немесе ортақ тіл арқылы терең интеграция және қандай да бір әдістеме (интеграцияланған және процесске бағытталған орталар) немесе домен (4GL) ерекшелігі.