Інформаційні технології та моделювання бізнес-процесів - Томашевський О. М. - 17.2. Моделі життєвого циклу програмного забезпечення ІС
Одним з ключових понять проектування інформаційних систем є життєвий цикл проекту - Project Life Cycle Management (PLCM). В загальному випадку, життєвий цикл визначається моделлю й описується у формі методології (методу). Модель або парадигма життєвого циклу визначає загальну організацію ЖЦ і, як правило, основні його фази та принципи переходу між ними. Методологія (метод) визначає комплекс робіт, їх детальний зміст і рольову відповідальність спеціалістів на всіх етапах вибраної моделі ЖЦ; рекомендує практики (best practices), які дозволяють максимально ефективно використовувати відповідну методологію та її модель.
Наведемо означення моделі життєвого циклу програмної системи:
Модель життєвого циклу - структура, що складається із процесів, робіт та задач, які включають в себе розробку, експлуатацію і супровід програмного продукту; охоплює життя системи від визначення вимог до неї до припинення її використання
З другого боку, автор концепцій та практик гнучкого моделювання (Agile Modeling), Скот Амблер (Scott W. Ambler), пропонує наступні рівні ЖЦ, що визначаються відповідним вмістом робіт:
O програмне забезпечення - проектна діяльність з розробки і розгортання програмних систем;
O програмна система - включає розробку, розгортання, підтримку і супровід;
O інформаційні технології - вся діяльність ІТ-відділу;
O організація/бізнес - охоплює діяльність організації в цілому.
Архітектура життєвого циклу. У стандарті ISO/IEC 12207 визначено область застосування ІС, дано ряд важливих визначень (таких, як замовник, розробник, договір, оцінка, випуск - реліз, програмний продукт, атестація і т. п.), процеси життєвого циклу і включено ряд приміток щодо процесу і питанням адаптації стандарту. Стандарт описує 17 процесів ЖЦ, розподілених за групами процесів:
Основні процеси життєвого циклу - Primary Processes
O замовлення - Acqusition;
O поставка - Supply;
O розробка - Development;
O експлуатація - Operation;
O супровід - Maintenance.
S Допоміжні процеси життєвого циклу - Supporting Processes
O документування - Documentation;
O управління конфігурацією - Configuration Management;
O верифікація - Verification;
O атестація - Validation;
O сумісний аналіз - Joint Review;
O рішення проблем - Problem Resolution.
^ Організаційні процеси життєвого циклу - Organizational Processes
O управління - Management;
O створення інфраструктури - Infrastructure;
O вдосконалення - Improvement;
O навчання - Training.
Стандарт визначає високорівневу архітектуру життєвого циклу. Архітектура будується як набір процесів і взаємних зв'язків між ними. Наприклад, основні процеси життєвого циклу звертаються до допоміжних процесів, в той час, як організаційні процеси діють впродовж цілого ЖЦ і пов'язані з основними процесами.
Дерево процесів життєвого циклу є структурою декомпозиції життєвого циклу на відповідні процеси (групи процесів). Декомпозиція процесів будується на двох найважливіших принципах, що визначають правила розбиття (partitioning) ЖЦ на складові процеси:
Принцип модульності
O задачі в процесі є функціонально зв'язаними;
O зв' язок між процесами - мінімальний;
O якщо функція використовується більше, ніж одним процесом, вона сама є процесом;
O якщо процес Y використовується процесом X і лише ним, то процес Y належить (є його частиною або його задачею) процесу X, за винятком випадків потенційного використання процесу Y іншими процесами в майбутньому;
Принцип відповідальності
O за кожний процес несе відповідальність особа (що керує і/або контролює його), визначена для заданого життєвого циклу, наприклад, у вигляді ролі в проектній команді;
O функція, частини якої знаходяться в компетенції різних осіб, не може розглядатися як самостійний процес.
Загальна ієрархія (декомпозиція) складових елементів життєвого циклу представлена на рис.17.2.
В загальному випадку, розбиття процесу базується на поширеному PDCA-циклі:
O "P" (Plan) - планування;
O "D" (Do) - виконання;
O "C" (Check) - перевірка;
O "A" (Act) - реакція (дія).
Рис.17.2. Структурна схема загальної ієрархії складових елементів ЖЦ
Найбільш часто використовують наступні моделі життєвого циклу:
Каскадна (або послідовна) модель. Передбачає строго послідовне в часі і однократне виконання всіх фаз проекту з детальним попереднім плануванням і визначеними вимогами (рис.17.3).
Основною особливістю цієї моделі є розбиття всієї розробки на етапи. Перехід від одного етапу до іншого відбувається лише при умові повного завершення робіт на попередньому етапі. Кожен етап завершується випуском документації, достатньої для того, щоб обробка могла бути продовжена іншою командою розробників.
Каскадна модель добре себе зарекомендувала при розробці систем, для яких можна повністю сформулювати всі необхідні вимоги і критерії. Серед недоліків цієї моделі можна назвати: істотну затримку в отриманні кінцевих результатів, виявлення помилок, як правило на останньому етапі розробки, високий ступінь ризику. Послідовна модель характеризується жорсткою структурою, що ускладнює її застосування на практиці. Проте, більшість ІТ-розробників використовують саме каскадну модель.
Рис.17.3. Каскадна модель життєвого циклу
Еволюційна (ітераційна) модель. Дозволяє знизити ступень невизначеності із завершенням кожної ітерації циклу. Тестування продукту можна починати вже на ранніх стадіях життєвого циклу.
Спіральна модель. На відміну від каскадної, передбачає ітераційний процес розробки інформаційної системи. Кожна ітерація є завершеним циклом розробки кінцевого продукту. На кожному витку (ітерації) спіралі створюється фрагмент або версія програмного продукту, уточнюється кінцева ціль і характеристики проекту, визначається його якість, плануються роботи для наступного витка. Особливу увагу приділяється аналізу ризиків, що впливають на організацію ЖЦ - аспектам взаємодії спеціалістів в проектній команді.
Використання спіральної моделі дозволяє здійснювати перехід на наступний етап виконання проекту, не дочекавшись повного завершення робіт на попередньому - недороблену роботу можна буде завершити на наступній ітерації. Головна мета кожної ітерації - якнайшвидше створити працездатний продукт, який можна показати замовнику.
Серед переваг спіральної моделі слід відмітити спрощення внесення змін в проект при зміні вимог замовника, елементи системи інтегруються один в одного поступово. Основна проблема спіральної моделі - визначення моменту переходу на наступний етап.
Схожі статті
-
Дані представляють собою спосіб представлення, збереження та елементарних операцій обробки інформації. Дані - це основа інформації. Поняття "дані" -...
-
Життєвий цикл (ЖЦ) фіксує найбільш істотні, характерні для певного об'єкту стани, визначає їх основні характеристики та значення в даних станах, а також...
-
3.1. Етапи розвитку інформаційних технологій Інформаційні технології посідають чільне місце в нашому житті, тому це поняття є багатофункціональним та...
-
17.1. Етапи створення інформаційних систем Автоматизована інформаційна система, як правило, створюється для певного підприємства чи організації. Проте, є...
-
17.1. Етапи створення інформаційних систем Автоматизована інформаційна система, як правило, створюється для певного підприємства чи організації. Проте, є...
-
3.1. Етапи розвитку інформаційних технологій Інформаційні технології посідають чільне місце в нашому житті, тому це поняття є багатофункціональним та...
-
1.1. Визначення поняття технології Словник іншомовних слів визначає технологію як сукупність способів переробки матеріалів, виготовлення виробів і...
-
7.1. Роль інформаційних технологій в системі організаційного управління Система (від грецького systema - ціле, складене з частин, з'єднання) - це...
-
7.1. Роль інформаційних технологій в системі організаційного управління Система (від грецького systema - ціле, складене з частин, з'єднання) - це...
-
1.1. Визначення поняття технології Словник іншомовних слів визначає технологію як сукупність способів переробки матеріалів, виготовлення виробів і...
-
Електронний банкінг (E-banking, internet banking, online banking) входить до складу засобів електронної комерції, таких як: цифрова готівка, обмін...
-
В даний час питанням безпеки даних у розподілених комп'ютерних системах приділяється значна увага. Розроблено ряд засобів для забезпечення інформаційної...
-
1.1. Визначення поняття технології Словник іншомовних слів визначає технологію як сукупність способів переробки матеріалів, виготовлення виробів і...
-
16.1. Складові безпеки. Поняття загрози і атаки За даними європейських Узгоджених Критеріїв Оцінки Безпеки Інформаційних Технологій (Information...
-
15.1. Законодавство і кіберзлочинці Насамперед розглянемо історичні підвалини появи програмного продукту. Спочатку комп'ютерні програми будь-якої...
-
Інформаційні процеси та інформаційні технології, що їх обслуговують, поділяють на наступні компоненти: Інформаційно-технологічна система Це...
-
Комплексна автоматизація інформаційних потоків підприємства, організації, відомства, галузі вимагає створення єдиного інформаційного простору для...
-
Різноманітність сфер і форм застосування сучасних інформаційних технологій породжує різноманітність способів їх класифікації. За масштабністю...
-
OLAP (On-Line Analytical Processing) є ключовим компонентом організації сховищ даних. Ця технологія заснована на побудові і візуалізації багатовимірних...
-
Інформаційні технології та моделювання бізнес-процесів - Томашевський О. М. - Технологічні модулі
Інформаційні процеси та інформаційні технології, що їх обслуговують, поділяють на наступні компоненти: Інформаційно-технологічна система Це...
-
За означенням, доступність - це властивість інформації при її обробці технічними засобами, що забезпечує безперешкодний доступ до неї для проведення...
-
Інформаційні процеси та інформаційні технології, що їх обслуговують, поділяють на наступні компоненти: Інформаційно-технологічна система Це...
-
Інформаційні технології та моделювання бізнес-процесів - Томашевський О. М. - Замінники
Ці програмні шпигуни збирають усі дані, що вводяться користувачем з клавіатури. Найпримітивніші фільтри записують все перехоплене в один файл на ЖД або в...
-
Інформаційні технології та моделювання бізнес-процесів - Томашевський О. М. - Фільтри
Ці програмні шпигуни збирають усі дані, що вводяться користувачем з клавіатури. Найпримітивніші фільтри записують все перехоплене в один файл на ЖД або в...
-
Інформаційні процеси та інформаційні технології, що їх обслуговують, поділяють на наступні компоненти: Інформаційно-технологічна система Це...
-
Інформаційні процеси та інформаційні технології, що їх обслуговують, поділяють на наступні компоненти: Інформаційно-технологічна система Це...
-
Комп'ютерні мережі будуються за багаторівневим принципом. Для організації зв'язку між комп'ютерами, необхідно спочатку розробити набір правил їх...
-
8.1. Задачі динамічного програмування Розглянемо так звані задачі динамічного програмування і метод їх розв'язування (метод динамічного програмування)....
-
8.1. Задачі динамічного програмування Розглянемо так звані задачі динамічного програмування і метод їх розв'язування (метод динамічного програмування)....
-
Пакет бізнес-додатків Oracle Applications - це 55 інтегрованих програмних модулів, кожний з яких представляє повністю функціональні рішення в області...
Інформаційні технології та моделювання бізнес-процесів - Томашевський О. М. - 17.2. Моделі життєвого циклу програмного забезпечення ІС