Основи методології проектування ІС

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

1.1. Життєвий цикл з ІВ

Одним з базових понять методології проектування ІС є поняття життєвого циклу її програмного забезпечення (ЖЦ ПЗ). ЖЦ ПЗ - це безперервний процес, який починається з моменту прийняття рішення про необхідність його створення і закінчується в момент його повного вилучення з експлуатації.

Основним нормативним документом, що регламентує ЖЦ ПЗ, є міжнародний стандарт ISO / IEC 12207 [5] (ISO - International Organization of Standardization - Міжнародна організація по стандартизації, IEC - International Electrotechnical Commission - Міжнародна комісія по електротехніці). Він визначає структуру ЖЦ, що містить процеси, дії і завдання, які повинні бути виконані під час створення ПЗ.

Структура ЖЦ ПЗ за стандартом ISO / IEC 12207 базується на трьох групах процесів:

основні процеси ЖЦ ПЗ (придбання, постачання, розробка, експлуатація, супровід); допоміжні процеси, що забезпечують виконання основних процесів (документування, управління конфігурацією, забезпечення якості, верифікація, атестація, оцінка, аудит, рішення проблем); організаційні процеси (управління проектами, створення інфраструктури проекту, визначення, оцінка та поліпшення самого ЖЦ, навчання).

Розробка включає в себе всі роботи по створенню ПЗ і його компонент відповідно до заданих вимог, включаючи оформлення проектної та експлуатаційної документації, підготовку матеріалів, необхідних для перевірки працездатності та відповідної якості програмних продуктів, матеріалів, необхідних для організації навчання персоналу і т.д. Розробка ПЗ включає в себе, як правило, аналіз, проектування і реалізацію (програмування).

Експлуатація включає в себе роботи з впровадження компонентів ПЗ в експлуатацію, в тому числі конфігурування бази даних і робочих місць користувачів, забезпечення експлуатаційної документації, проведення навчання персоналу і т.д., і безпосередньо експлуатацію, в тому числі локалізацію проблем і усунення причин їх виникнення , модифікацію ПЗ в рамках встановленого регламенту, підготовку пропозицій щодо вдосконалення, розвитку та модернізації системи.

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

Управління конфігурацією є одним з допоміжних процесів, що підтримують основні процеси життєвого циклу ПЗ, передусім процеси розробки і супроводу ПЗ. При створенні проектів складних ІС, що складаються з багатьох компонентів, кожен з яких може мати різновиди чи версії, виникає проблема обліку їх зв'язків і функцій, створення уніфікованої структури та забезпечення розвитку всієї системи. Управління конфігурацією дозволяє організувати, систематично враховувати і контролювати внесення змін в ПЗ на всіх стадіях ЖЦ. Загальні принципи та рекомендації конфігураційного обліку, планування та управління конфігураціями ПЗ відображені в проекті стандарту ISO 12207-2 [5].

Кожен процес характеризується певними завданнями і методами їх вирішення, вихідними даними, отриманими на попередньому етапі, і результатами. Результатами аналізу, зокрема, є функціональні моделі, інформаційні моделі та відповідні їм діаграми. ЖЦ ПО носить ітераційний характер: результати чергового етапу часто викликають зміни в проектних рішеннях, вироблених на більш ранніх етапах.

Моделі життєвого циклу ПЗ

Стандарт ISO / IEC 12207 не пропонує конкретну модель ЖЦ і методи розробки ПЗ (під моделлю ЖЦ розуміється структура, що визначає послідовність виконання та взаємозв'язку процесів, дій і завдань, що виконуються протягом ЖЦ. Модель ЖЦ залежить від специфіки ІС та специфіки умов, в яких остання створюється і функціонує). Його регламенти є загальними для будь-яких моделей ЖЦ, методологій і технологій розробки. Стандарт ISO / IEC 12207 описує структуру процесів ЖЦ ПЗ, але не конкретизує в деталях, як реалізувати або виконати дії і завдання, включені в ці процеси.

До теперішнього часу найбільшого поширення набули наступні дві основні моделі ЖЦ:

каскадна модель (70-85 р.р.); спіральна модель (86-90 р.р.).

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

Позитивні сторони використання каскадного підходу полягають у наступному [2]:

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

Основи методології проектування ІС

Рис. 1.1. Каскадна схема розробки ПЗ

Каскадний підхід добре зарекомендував себе при побудові ІС, для яких на самому початку розробки можна досить точно і повно сформулювати всі вимоги, з тим щоб надати розробникам свободу реалізувати їх якомога краще з технічної точки зору. У цю категорію потрапляють складні розрахункові системи, системи реального часу та інші подібні завдання. Проте, в процесі використання цього підходу виявився ряд його недоліків, викликаних перш за все тим, що реальний процес створення ПЗ ніколи повністю не вкладався в таку жорстку схему. У процесі створення ПЗ постійно виникала потреба у поверненні до попередніх етапах і уточнення або перегляд раніше прийнятих рішень. У результаті реальний процес створення ПЗ приймав такий вигляд (рис. 1.2):

Основи методології проектування ІС

Рис. 1.2. Реальний процес розробки ПЗ за каскадної схемою

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

Для подолання перелічених проблем була запропонована спіральна модель ЖЦ [10] (рис. 1.3), що робить упор на початкові етапи ЖЦ: аналіз та проектування. На цих етапах реалізація технічних рішень перевіряється шляхом створення прототипів. Кожен виток спіралі відповідає створенню фрагмента або версії ПЗ, на ньому уточнюються цілі і характеристики проекту, визначається його якість і плануються роботи наступного витка спіралі. Таким чином поглиблюються і послідовно конкретизуються деталі проекту і в результаті вибирається обгрунтований варіант, який доводиться до реалізації.

Розробка итерациями відображає об'єктивно існуючий спіральний цикл створення системи. Неповне завершення робіт на кожному етапі дозволяє переходити на наступний етап, не чекаючи повного завершення роботи на поточному. При ітеративному способі розробки відсутню роботу можна буде виконати на наступній ітерації. Головне ж завдання - якомога швидше показати користувачам системи працездатний продукт, тим самим активізуючи процес уточнення та доповнення вимог.

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

Основи методології проектування ІС

Рис 1.3. Спіральна модель ЖЦ

Методології та технології проектування ІС 1.3.1. Загальні вимоги до методології та технології

Методології, технології та інструментальні засоби проектування (CASE-засоби) складають основу проекту будь-ІВ. Методологія реалізується через конкретні технології та підтримують їх стандарти, методики та інструментальні засоби, які забезпечують виконання процесів ЖЦ.

Технологія проектування визначається як сукупність трьох складових:

покрокової процедури, яка визначає послідовність технологічних операцій проектування (рис. 1.4); критеріїв і правил, які використовуються для оцінки результатів виконання технологічних операцій; нотацій (графічних та текстових засобів), що використовуються для опису проектованої системи.

Основи методології проектування ІС

Рис. 1.4. Представлення технологічної операції проектування

Технологічні інструкції, складають основний зміст технології, повинні складатися з опису послідовності технологічних операцій, умов, в залежності від яких виконується та чи інша операція, і описів самих операцій.

Технологія проектування, розробки і супроводу ІС повинна задовольняти наступним загальним вимогам:

технологія повинна підтримувати повний ЖЦ ПЗ; технологія повинна забезпечувати гарантоване досягнення цілей розробки ІС з заданою якістю і у встановлений час; технологія повинна забезпечувати можливість виконання великих проектів у вигляді підсистем (тобто можливість декомпозиції проекту на складові частини, що розробляються групами виконавців обмеженою чисельності з наступною інтеграцією складових частин). Досвід розробки великих ІС показує, що для підвищення ефективності робіт необхідно розбити проект на окремі слабко пов'язані з даних і функцій підсистеми. Реалізація підсистем повинна виконуватися окремими групами фахівців. При цьому необхідно забезпечити координацію ведення спільного проекту і виключити дублювання результатів робіт кожної проектної групи, що може виникнути в силу наявності загальних даних і функцій; технологія повинна забезпечувати можливість ведення робіт з проектування окремих підсистем невеликими групами (3-7 осіб). Це обумовлено принципами керованості колективу і підвищення продуктивності за рахунок мінімізації числа зовнішніх зв'язків; технологія повинна забезпечувати мінімальний час отримання працездатною ІС. Мова йде не про терміни готовності всієї ІС, а про терміни реалізації окремих підсистем. Реалізація ІС в цілому в короткі терміни може зажадати залучення великої кількості розробників, при цьому ефект може виявитися нижче, ніж при реалізації в більш короткі терміни окремих підсистем меншою кількістю розробників. Практика показує, що навіть при наявності повністю завершеного проекту, впровадження йде послідовно по окремих підсистем; технологія повинна передбачати можливість керування конфігурацією проекту, ведення версій проекту і його складових, можливість автоматичного випуску проектної документації та синхронізацію її версій з версіями проекту; технологія повинна забезпечувати незалежність виконуваних проектних рішень від засобів реалізації ІС (систем управління базами даних (СКБД), операційних систем, мов і систем програмування); технологія повинна бути підтримана комплексом узгоджених CASE-засобів, що забезпечують автоматизацію процесів, які виконуються на всіх стадіях ЖЦ. Загальний підхід до оцінки і вибору CASE-засобів описаний у розділі 4, приклади комплексів CASE-засобів - у підрозділі 5.7.

Реальне застосування будь-якої технології проектування, розробки і супроводу ІС в конкретній організації і конкретному проекті неможливо без вироблення ряду стандартів (правил, угод), які повинні дотримуватися всіма учасниками проекту. До таких стандартів належать такі:

стандарт проектування; стандарт оформлення проектної документації; стандарт для користувача інтерфейсу.

Стандарт проектування повинен встановлювати:

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

Стандарт оформлення проектної документації повинен встановлювати:

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

Стандарт інтерфейсу користувача повинен встановлювати:

правила оформлення екранів (шрифти і колірна палітра), склад і розташування вікон і елементів управління, правила використання клавіатури і миші; правила оформлення текстів допомоги; перелік стандартних повідомлень; правила обробки реакції користувача. Методологія RAD

Одним з можливих підходів до розробки ПЗ в рамках спіральної моделі ЖЦ є отримала останнім часом широкого поширення методологія швидкої розробки додатків RAD (Rapid Application Development). Під цим терміном зазвичай розуміється процес розробки ПЗ, що містить 3 елементи:

невелику команду програмістів (від 2 до 10 осіб); короткий, але ретельно пророблений виробничий графік (від 2 до 6 міс.); повторюваний цикл, при якому розробники, в міру того, як додаток починає набувати форму, запитують і реалізують у продукті вимоги , отримані через взаємодію з замовником.

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

Життєвий цикл ПЗ за методологією RAD складається з чотирьох фаз:

фаза аналізу і планування вимог; фаза проектування; фаза побудови; фаза впровадження.

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

На фазі проектування частина користувачів бере участь у технічному проектуванні системи під керівництвом фахівців-розробників. CASE-засоби використовуються для швидкого отримання працюють прототипу. Користувачі, безпосередньо взаємодіючи з ними, уточнюють і доповнюють вимоги до системи, які не були виявлені на попередній фазі. Більш докладно розглядаються процеси системи. Аналізується і, при необхідності, коригується функціональна модель. Кожен процес розглядається детально. При необхідності для кожного елементарного процесу створюється частковий прототип: екран, діалог, звіт, що усуває неясності або неоднозначності. Визначаються вимоги розмежування доступу до даних. На цьому самому етапі відбувається визначення набору необхідної документації.

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

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

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

На відміну від традиційного підходу, при якому використовувалися специфічні засоби прототипування, не призначені для побудови реальних додатків, а прототипи викидалися після того, як виконували завдання усунення неясностей у проекті, в підході RAD кожен прототип розвивається в частину майбутньої системи. Таким чином, на наступну фазу передається більш повна і корисна інформація.

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

Після закінчення робіт кожної окремої команди розробників проводиться поступова інтеграція даної частини системи з іншими, формується повний програмний код, виконується тестування спільної роботи даної частини програми з іншими, а потім тестування системи в цілому. Завершується фізичне проектування системи:

визначається необхідність розподілу даних; проводиться аналіз використання даних; виробляється фізичне проектування бази даних; визначаються вимоги до апаратних ресурсів; визначаються способи збільшення продуктивності; завершується розробка документації проекту.

Результатом фази є готова система, що задовольняє всіх узгоджених вимогам.

На фазі впровадження проводиться навчання користувачів, організаційні зміни і паралельно з впровадженням нової системи здійснюється робота з існуючою системою (до повного впровадження нової). Так як фаза побудови досить нетривала, планування та підготовка до впровадження повинні починатися заздалегідь, як правило, на етапі проектування системи. Наведена схема розробки ІС не є абсолютною. Можливі різні варіанти, які залежать, наприклад, від початкових умов, в яких ведеться розробка: розробляється зовсім нова система; вже було проведено обстеження підприємства і існує модель його діяльності; на підприємстві вже існує деяка ІС, яка може бути використана в якості початкового прототипу або повинна бути інтегрована з розробляється.

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

Методологія RAD непридатна для побудови складних розрахункових програм, операційних систем або програм управління космічними кораблями, тобто програм, що вимагають написання великого обсягу (сотні тисяч рядків) унікального коду.

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

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

<1000 функціональних елементів одна людина
1000-4000 функціональних елементів одна команда розробників
> 4000 функціональних елементів 4000 функціональних елементів на одну команду розробників

Як підсумок перерахуємо основні принципи методології RAD:

розробка додатків итерациями; необов'язковість повного завершення робіт на кожному з етапів життєвого циклу; обов'язкове залучення користувачів до процесу розробки ІС; необхідне застосування CASE-засобів, що забезпечують цілісність проекту; застосування засобів управління конфігурацією, що полегшують внесення змін у проект і супровід готової системи; необхідне використання генераторів коду; використання прототипування, що дозволяє повніше з'ясувати і задовольнити потреби кінцевого користувача; тестування і розвиток проекту, здійснювані одночасно з розробкою; ведення розробки нечисленної добре керованою командою професіоналів; грамотне керівництво розробкою системи, чітке планування та контроль виконання робіт. Література Вендров А.М. Один з підходів до вибору засобів проектування баз даних і додатків. "СУБД", 1995, № 3. Зіндер Є.З. Бізнес-реінжиніринг і технології системного проектування. Навчальний посібник. М., Центр Інформаційних Технологій, 1996 Калянов Г.М. CASE. Структурний системний аналіз (автоматизація та застосування). М., "Лорі", 1996. Марка Д.А., МакГоуен К. Методологія структурного аналізу і проектування. М., "Метатехнология", 1993. Міжнародні стандарти, що підтримують життєвий цикл програмних засобів. М., МП "Економіка", 1996 Створення інформаційної системи підприємства. "Computer Direct", 1996, N2 Шлеер С., Меллор С. Об'єктно-орієнтований аналіз: моделювання світу в станах. Київ, "Діалектика", 1993. Barker R. CASE * Method. Entity-Relationship Modelling. Copyright Oracle Corporation UK Limited, Addison-Wesley Publishing Co., 1990. Barker R. CASE * Method. Function and Process Modelling. Copyright Oracle Corporation UK Limited, Addison-Wesley Publishing Co., 1990. Boehm BW A Spiral Model of Software Development and Enhancement. ACM SIGSOFT Software Engineering Notes, Aug. 1986 Chris Gane, Trish Sarson. Structured System Analysis. Prentice-Hall, 1979. Edward Yourdon. Modern Structured Analysis. Prentice-Hall, 1989. Tom DeMarco. Structured Analysis and System Specification. Yourdon Press, New York, 1978. Westmount I-CASE User Manual. Westmount Technology BV, Netherlands, 1994. Uniface V6.1 Designers 'Guide. Uniface BV, Netherlands, 1994. IEEE Std 1348-1995. IEEE Recommended Practice for the Adoption of CASE Tools. IEEE Std 1209-1992. IEEE Recommended Practice for the Evaluation and Selection of CASE Tools. PVCS Version Manager. User's Guide. PVCS Tracker. User's Guide.
Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Реферат
50.4кб. | скачати


Схожі роботи:
Основи методології проектування ІС 2
Проектування бази даних Вивчення методології
Розробка моделі Станції переливання крові з використанням методології проектування IDEF0 DFD
Основи методології та методики комплексного економічного аналізу
Відмінність методології Д. Рікардо від методології А. Сміта
Природно-наукове пізнання структура і динаміка Основи методології природничо-наукового пізнання
Ергономічні основи проектування
Основи проектування і конструювання
Основи архітектурно-будівельного проектування
© Усі права захищені
написати до нас