Меню
  Список тем
  Поиск
Полезная информация
  Краткие содержания
  Словари и энциклопедии
  Классическая литература
Заказ книг и дисков по обучению
  Учебники, словари (labirint.ru)
  Учебная литература (Читай-город.ru)
  Учебная литература (book24.ru)
  Учебная литература (Буквоед.ru)
  Технические и естественные науки (labirint.ru)
  Технические и естественные науки (Читай-город.ru)
  Общественные и гуманитарные науки (labirint.ru)
  Общественные и гуманитарные науки (Читай-город.ru)
  Медицина (labirint.ru)
  Медицина (Читай-город.ru)
  Иностранные языки (labirint.ru)
  Иностранные языки (Читай-город.ru)
  Иностранные языки (Буквоед.ru)
  Искусство. Культура (labirint.ru)
  Искусство. Культура (Читай-город.ru)
  Экономика. Бизнес. Право (labirint.ru)
  Экономика. Бизнес. Право (Читай-город.ru)
  Экономика. Бизнес. Право (book24.ru)
  Экономика. Бизнес. Право (Буквоед.ru)
  Эзотерика и религия (labirint.ru)
  Эзотерика и религия (Читай-город.ru)
  Наука, увлечения, домоводство (book24.ru)
  Наука, увлечения, домоводство (Буквоед.ru)
  Для дома, увлечения (labirint.ru)
  Для дома, увлечения (Читай-город.ru)
  Для детей (labirint.ru)
  Для детей (Читай-город.ru)
  Для детей (book24.ru)
  Компакт-диски (labirint.ru)
  Художественная литература (labirint.ru)
  Художественная литература (Читай-город.ru)
  Художественная литература (Book24.ru)
  Художественная литература (Буквоед)
Реклама
Разное
  Отправить сообщение администрации сайта
  Соглашение на обработку персональных данных
Другие наши сайты
Приглашаем посетить
  Горький (gorkiy-lit.ru)

   

CASE-технології розробки програмного забезпечення

Київський нацiональний унiверситет технологiй та дизайну

Реферат

« CASE-технологiї розробки програмного забезпечення »

Виконала: студентка IV курсу

факультету ІЕ гр. БІЕ-4-07

Брусенська Катерина Валентинiвна

Київ 2011


Тенденцiї розвитку сучасних iнформацiйних технологiй призводять до постiйного зростання складностi iнформацiйних систем (ІС), створюваних у рiзних галузях.

Для успiшної реалiзацiї проекту об'єкт проектування повинен бути насамперед адекватно описаний, повиннi бути побудованi повнi i несуперечливi функцiональнi й iнформацiйнi моделi ІС. Крiм того, у процесi створення i функцiонування ІС iнформацiйнi потреби користувачiв можуть змiнюватися чи уточнюватися, що ще бiльш ускладнює розробку i супровiд таких систем.

непогодженiстю рiзних етапiв розробки. Помилок було багато й обходилися вони дуже дорого. Модульне i структурне програмування, логiчне моделювання структур баз даних, схеми потокiв даних i проектування "зверху вниз" при всiй початковiй ейфорiї, узагалi ж, залишилися внутрiшньою справою розроблювачiв. Проблема була глибше - потрiбно було якось об'єднати замовникiв, розроблювачiв, програмiстiв, користувачiв - причому в умовах постiйно мiнливої ситуацiї. А для того, щоб про щось домовитися, потрiбна якась спiльна мова. Природна мова в силу малої наочностi, неоднозначностi, надмiрностi i багатослiвностi для цiєї ролi не пасувала, i, зрештою, почалися спроби створення чiткої графiчної мови.

Перерахованi фактори сприяли появi програмно-технологiчних засобiв спецiального класу - CASE-засобiв, що реалiзують CASE-технологiю створення i супроводу ІС. Термiн CASE (Computer Aided Software Engineering) використовується в даний час у дуже широкому сенсi. Первiсне значення термiна CASE, обмежене питаннями автоматизацiї розробки тiльки лише програмного забезпечення (ПЗ), у даний час набуло нового сенсу, що охоплює процес розробки складних ІС у цiлому. Тепер пiд термiном CASE-засобу розумiються програмнi засоби, що пiдтримують процеси створення i супроводу ІС, включаючи аналiз i формулювання вимог, проектування прикладного ПЗ (додаткiв) i баз даних, генерацiю коду, тестування, документування, забезпечення якостi, конфiгурацiйне управлiння i управлiння проектом, а також iншi процеси. CASE-засоби разом iз системним ПЗ i технiчними засобами утворять повне середовище розробки ІС.

Появi CASE-технологiї i CASE-засобiв передували дослiдження в областi методологiї програмування. Програмування знайшло риси системного пiдходу з розробкою i впровадженням мов високого рiвня, методiв структурного i модульного програмування, мов проектування i засобiв їх пiдтримки, формальних i неформальних мов описiв системних вимог i специфiкацiй i т. д. Крiм того, появi CASE-технологiї сприяли i такi фактори, як:

· пiдготовка аналiтикiв i програмiстiв, сприйнятливих до концепцiй модульного i структурного програмування;

· широке впровадження i постiйний рiст продуктивностi комп'ютерiв, що дозволили використовувати ефективнi графiчнi засоби й автоматизувати бiльшiсть етапiв проектування;

· упровадження мережної технологiї, що надала можливiсть об'єднання зусиль окремих виконавцiв у єдиний процес проектування шляхом використання подiлюваної бази даних, що мiстить необхiдну iнформацiю про проект.

CASE-технологiя являє собою методологiю проектування ІС, а також набiр iнструментальних засобiв, що дозволяють у наочнiй формi моделювати предметну область, аналiзувати цю модель на всiх етапах розробки i супроводу ІС i розробляти додатка вiдповiдно до iнформацiйних потреб користувачiв. Бiльшiсть iснуючих CASE-засобiв засновано на методологiях структурного (в основному) чи об'єктно-орiєнтованого аналiзу i проектування, що використовують специфiкацiї у видi чи дiаграм текстiв для опису зовнiшнiх вимог, зв'язкiв мiж моделями системи, динамiки поводження системи й архiтектури програмних засобiв.

При використаннi методологiй структурного аналiзу з'явився ряд обмежень (складнiсть розумiння, велика трудомiсткiсть i вартiсть використання, незручнiсть внесення змiн у проектнi специфiкацiї i т. д.) Із самого початку CASE-технологiї i розвивалися з метою подолання цих обмежень шляхом автоматизацiї процесiв аналiзу й iнтеграцiї пiдтримуючих засобiв. Вони мають достоїнства i можливостями, перерахованими нижче.

Єдина графiчна мова. CASE-технологiї забезпечують всiх учасникiв проекту, включаючи замовникiв, єдиною строгою, наочною i iнтуїтивно зрозумiлою графiчною мовою, що дозволяє одержувати доступнi для огляду компоненти з простiй i ясну структуру. При цьому програми представляються двовимiрними схемами (якi простiше використовувати, нiж багато сторiнок текстового опису), що дозволяють замовнику брати участь у процесi розробки, а розроблювачам - спiлкуватися з експертами предметної областi, роздiляти дiяльнiсть системних аналiтикiв, проектувальникiв i програмiстiв, полегшуючи їм захист проекту перед керiвництвом, а також забезпечуючи легкiсть супроводу i внесення змiн у систему.

Єдина БД проекту. Основа CASE-технологiї - використання бази даних проекту (репозиторiю) для збереження всiєї iнформацiї про проект, що може роздiлятися мiж розроблювачами вiдповiдно до їхнiх прав доступу.. Умiст репозиторiю включає не тiльки iнформацiйнi об'єкти рiзних типiв, але i вiдносини мiж їх компонентами, а також правила чи використання обробки цих компонентiв.. Репозиторiй може зберiгати понад 100 типiв об'єктiв: структурнi дiаграми, визначення екранiв i меню, проекти звiтiв, опису даних, логiка обробки, моделi даних, їхнi органiзацiї й обробки, вихiднi коди, елементи даних i т. п..

Інтеграцiя засобiв. На основi репозиторiю здiйснюється iнтеграцiя CASE-засобiв i подiл системної iнформацiї мiж розроблювачами.. При цьому можливостi репозиторiю забезпечують кiлька рiвнiв iнтеграцiї: спiльний користувальницький iнтерфейс по всiх засобах, передачу даних мiж засобами, iнтеграцiю етапiв розробки через єдину систему представлення фаз життєвого циклу, передачу данихх и средств между различными платформами.

Пiдтримка колективної розробки й управлiння проектом. CASE-технологiя пiдтримує групову роботу над проектом, забезпечуючи можливiсть роботи в мережi, експорт-iмпорт будь-яких фрагментiв проекту для їхнього розвитку i/чи модифiкацiї, а також планування, контроль, адмiнiстрування i взаємодiя, тобто функцiї, необхiднi в процесi розробки i супроводу проектiв. Цi функцiї також реалiзуються на основi репозиторiю. Зокрема, через репозиторiй може здiйснюватися контроль безпеки (обмеження i привiлеї доступу), контроль версiй i змiн i iн.

влаштовує його.

Генерацiя документацiї. вiдповiдає поточному стану справ, оскiльки будь-якi змiни в проектi автоматично вiдбиваються в репозиторiї (вiдомо, що при традицiйних пiдходах до розробки ПО документацiя в кращому випадку запiзнюється, а ряд модифiкацiй узагалi не знаходить у нiй вiдображення).

Верифiкацiя проекту. CASE-технологiя забезпечує автоматичну верифiкацiю i контроль проекту на повноту i переконливiсть на раннiх етапах розробки, що впливає на успiх розробки в цiлому - по статистичним даним аналiзу п'яти великих проектiв фiрми TRW (США) помилки проектування i кодування складають вiдповiдно 64% i 32% вiд спiльного числа помилок, а помилки проектування в 100 разiв сутужнiше знайти на етапi супроводу ПО, чим на етапi аналiзу вимог.

Автоматична генерацiя об'єктного коду. Генерацiя програм у машинному кодi здiйснюється на основi репозиторiю i дозволяє автоматично побудувати до 85-90% об'єктного чи коду текстiв на мовах високого рiвня.

Супровiд i реiнжинiрiнг. Супровiд системи в рамках CASE-технологiї характеризується супроводом проекту, а не програмних кодiв. Засоби реiнжинiрiнга i зворотного iнжинiринга дозволяють створювати модель системи з її кодiв i iнтегрувати отриманi моделi в проект, автоматично обновляти документацiю при змiнi кодiв, автоматично змiнювати специфiкацiї при редагуваннi кодiв i т. п.

У випадку взаємодiї розроблювачiв системи з користувачами, основною на етапi аналiзу є проблема, пов'язана з взаємодiєю з замовником, тому що вони розмовляють "на рiзних мовах", що мають надто багато подробиць, що є несуттєвими для iншої сторони. У цьому вiдношеннi неоцiненною перевагою CASE-пiдходу є надання "унiверсальної" графiчної мови рiзного роду дiаграм, що пiдпорядкованi певним нотацiям. Застосування стандартних нотацiй забезпечує читабельнiсть програм, а також можливiсть переносу частин (чи всього проекту) в iншi CASE-засоби. Таким чином, кiнцевому користувачу продукту (замовнику) зовсiм не обов'язково володiти всiма премудростями розроблювача, за допомогою CASE-пiдходу i замовник i розроблювач будуть розумiти один одного однозначно.

У структурному аналiзi використовуються в основному три групи засобiв, що iлюструють функцiї, виконуванi системою i вiдносини мiж даними. Кожнiй групi засобiв вiдповiдають певнi види моделей (дiаграм), найбiльш розповсюдженими серед який є наступнi:

· DFD (Data Flow Diagrams) дiаграми потокiв даних;

· STD (State Transition Diagrams) дiаграми переходiв станiв;

· ERD (Entity-Relationship Diagrams) дiаграми "сутнiсть-зв'язок".

У залежностi вiд спрямованостi CASE-продукту, вiн може пiдтримувати рiзного роду дiаграми.

На стадiї проектування ІС моделi розширюються, уточнюються i доповнюються дiаграмами, що вiдбивають структуру програмного забезпечення: архiтектуру ПЗ, структурнi схеми програм i дiаграми екранних форм.

DFD - показують зовнiшнi джерела i стоки даних, визначають процеси обробки i потоки даних, iдентифiкують сховища даних (накопичувачi). Структура потокiв даних зберiгається в Словнику даних. Будь-яка DFD може бути деталiзована DFD нижнього рiвня i т. д. поки доцiльна деталiзацiя.

(наприклад, сховища даних є прообразами файлiв чи баз даних).

2) Наявнiсть мiнi-специфiкацiй DFD-процесiв нижнього рiвня дозволяє перебороти логiчну незавершенiсть SADT (а саме обрив моделi на деякому досить низькому рiвнi, коли подальша її деталiзацiя стає безглуздою) i побудувати повну функцiональну специфiкацiю розроблювальної системи.

в сукупностi з мiнi-специфiкацiями є завершеним завданням для програмiста.

Нарештi, у частинi автоматизованої пiдтримки моделей приблизно 85-90% iснуючих CASE-пакетiв пiдтримують DFD i лише 2-3% - SADT.

Традицiйний пiдхiд до моделювання аспектiв поведiнки системи ґрунтується на розширеннi дiаграм потокiв даних за рахунок введення керуючих потокiв (сигналiв) i керуючих процесiв, що фактично є iнтерфейсом мiж DFD i специфiкацiями управлiння, власне моделююче поводження. Найбiльше часто специфiкацiї управлiння формалiзуються за допомогою дiаграм переходiв станiв (STD - state transition diagrams), що дозволяють задавати стану рiзних об'єктiв системи (наприклад, особовий рахунок може мати стану ВІДКРИТИЙ, ЗАКРИТИЙ, ЗАБЛОКОВАНИЙ i т. п.), умови переходiв з одного стану в iнше (як зовнiшнi стосовно системи, так i внутрiшнi, виникаючi в самiй системi), а також чиненi при переходах дiї.

Для цiлей iнформацiйного моделювання на сьогоднiшнiй день не iснує альтернативи дiаграмам "сутнiсть-зв'язок" (ERD - entity-relationship diagrams).

Вмiст накопичувача даних зберiгається в Словнику даних i розкривається за допомогою ERD (даної дiаграми в основному використовуються при проектуваннi БД, зокрема продуктом Logic Works - ERWin- засобом для розробки моделей даних). У випадку наявностi реального часу DFD доповнюються STD.

Сучаснi CASE-засоби охоплюють велику галузь пiдтримки численних технологiй проектування ІС: вiд простих засобiв аналiзу i документування до повномасштабних засобiв автоматизацiї, що покривають весь життєвий цикл ПЗ.

У разряд CASE-засобiв попадають як вiдносно дешевi системи для персональних комп'ютерiв з дуже обмеженими можливостями, так i дорогi системи для неоднорiдних обчислювальних платформ i операцiйних середовищ. Так, сучасний ринок програмних засобiв нараховує близько 300 рiзних CASE-засобiв, найбiльш могутнi з який так чи iнакше використовуються практично усiма ведучими захiдними фiрмами.

Звичайно до CASE-засобiв вiдносять будь-який програмний засiб, що автоматизує ту чи iншу сукупнiсть процесiв життєвого циклу ПЗ та мають наступнi основнi характернi риси:

· могутнi графiчнi засоби для опису i документування ІС, що забезпечують зручний iнтерфейс iз розроблювачем i розвиваючi його творчi можливостi;

· iнтеграцiя окремих компонентiв CASE-засобiв, що забезпечує керованiсть процесом розробки ІС;

· використання спецiальним образом органiзованого сховища проектних метаданих (репозиторiю).

Інтегрований CASE-засiб (чи комплекс засобiв, що пiдтримують повний ЖЦ ПЗ) мiстить наступнi компоненти;

· репозиторiй, що є основою CASE-засобу. Вiн повинен забезпечувати збереження версiй проекту i його окремих компонентiв, синхронiзацiю надходження iнформацiї вiд рiзних розроблювачiв при груповiй розробцi, контроль метаданих на повноту i несуперечнiсть;

· графiчнi засоби аналiзу i проектування, що забезпечують створення i редагування iєрархiчно зв'язаних дiаграм (DFD, ERD i iн.), що утворять моделi ІС;

· засоби розробки додаткiв, включаючи мови 4GL i генератори кодiв;

· засоби конфiгурацiйного управлiння;

· засоби документування;

· засоби тестування;

· засоби управлiння проектом;

визначає ступiнь iнтегрованостi по виконуваних функцiях i включає окремi локальнi засоби, що вирiшують невеликi автономнi задачi (tools), набiр частково iнтегрованих засобiв, що охоплюють бiльшiсть етапiв життєвого циклу ІС (toolkit) i цiлком iнтегрованi засоби, що пiдтримують весь ЖЦ ІС i пов'язанi спiльним репозиторiєм. Крiм цього, CASE-засоби можна класифiкувати за наступними ознаками:

· застосовуваним методологiям i моделям систем i БД;

· ступенем iнтегрованостi iз СУБД;

Класифiкацiя по типах в основному збiгається з компонентним складом CASE-засобiв i включає наступнi основнi типи:

· засоби аналiзу (Upper CASE), призначенi для побудови й аналiзу моделей предметної галузi (Design/IDEF, BPwin);

· засоби аналiзу i проектування (Middle CASE), що пiдтримують найбiльш розповсюдженi методологiї проектування i, що використовуються для створення проектних специфiкацiй (Vantage Team Builder, Designer/2000, Silverrun, PRO-IV, CASE. Аналiтик). Виходом таких засобiв є специфiкацiї компонентiв i iнтерфейсiв системи, архiтектури системи, алгоритмiв i структур даних;

· засоби проектування баз даних, що забезпечують моделювання даних i генерацiю схем баз даних (як правило, мовою SQL) для найбiльш розповсюджених СУБД. До них вiдносяться ERwin, S-Designor i DataBase Designer (ORACLE). Засобу проектування баз даних маються також у складi CASE-засобiв Vantage Team Builder, Designer/2000, Silverrun i PRO-IV;

· засоби розробки додаткiв. До них вiдносяться засоби 4GL (Uniface, JAM, PowerBuilder, Developer/2000, New Era, SQLWindows, Delphi i iн.) i генератори кодiв, що входять до складу Vantage Team Builder, PRO-IV i частково - у Silverrun;

· засоби реiнжинiрiнга, що забезпечують аналiз програмних кодiв i схем баз даних i формування на їхнiй основi рiзних моделей i проектних специфiкацiй. Засобу аналiзу схем БД i формування ERD входять до складу Vantage Team Builder, PRO-IV, Silverrun, Designer/2000, ERwin i S-Designor. У галузi аналiзу програмних кодiв найбiльше поширення одержують об'єктно-орiєнтованi CASE-засоби, що забезпечують реiнжинiрiнг програм мовою C++ (Rational Rose, Object Team).

Допомiжнi типи включають:

· засоби планування й управлiння проектом (SE Companion, Microsoft Project i iн.);

· засоби тестування (Quality Works i iн.).

На сьогоднiшнiй день ринок програмного забезпечення має у своєму розпорядженнi наступними найбiльш розвиненi CASE-засоби:

· Vantage Team Builder (Westmount I-CASE);

· ERwin+BPwin;

· S-Designor;

· CASE. Аналiтик;

· Rational Rose.


Лiтература

1. Ананьєв, О. М. Інформацiйнi системи i технологiї в комерцiйнiй дiяльностi / Навчальний посiбник / О. М. Ананьєв, В. М. Бiлик, Я. А. Гончарук. - Львiв: Новий Свiт-2000, 2006. - 584 с. 2. Антонов, В. М. Фiнансовий менеджмент: сучаснi iнформацiйнi технологiї: навчальний посiбник / В. М. Антонов, Г. К. Яловий; ред. В. М. Антонов; Мiн-во освiти i науки України, КНУ iм. Т. Г. Шевченка. - К.: ЦНЛ, 2005. - 432 с. 3. Олiйник, А. В. Інформацiйнi системи i технологiї у фiнансових установах: навчальний посiбник / А. В. Олiйник, В. М. Шацька. - Львiв: Новий Свiт-2000, 2006. - 436 с. 4. Черняк, О.І. Системи обробки економiчної iнформацiї: пiдручник / О. І. Черняк, А. В. Ставицький, Г. О. Чорноус. - К.: Знання, 2006. - 447 с. 5. Бiлик В. М.,. – К.: Центр навчальноїлiтератури, 2006. – 232 с.