Які різні етапи життєвого циклу розробки системи?
Життєвий цикл розвитку системи

Стаття
розмови
Читати
Едіт
Переглянути історію

інструменти
Вікіпедія, вільна енциклопедія
Ця стаття про життєвий цикл розробки систем. Для протоколу комп'ютерної комунікації IBM див. розділ Synchronous Data Link Control.

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

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

Методології SDLC вписуються в спектр гнучкості, що варіюється від гнучкої до ітеративної до послідовної. Агільні методології, такі як XP і Scrum, зосереджуються на легких процесах, які дозволяють здійснювати швидкі зміни. Ітеративні методології, такі як раціональний уніфікований процес і метод розвитку динамічних систем, зосереджуються на стабілізації масштабу проекту та ітеративному розширенні або вдосконаленні продуктів. Сучасні моделі, такі як водоспад, зосереджуються на повному і правильному плануванні, щоб керувати великими проектами і обмежувати ризики до успішних і передбачуваних результатів. Аноморфний розвиток керується масштабами проектів та адаптивними ітераціями.

У управлінні проектом проект може включати як життєвий цикл проекту (PLC), так і SDLC, під час якого відбуваються дещо різні дії. Згідно з Тейлором (2004), «життєвий цикл проекту охоплює всю діяльність проекту, в той час як життєвий цикл розвитку систем зосереджується на реалізації вимог продукту».

SDLC не є методологією сама по собі, а описом фаз, які повинна вирішувати методологія. Список етапів не є остаточним, але зазвичай включає планування, аналіз, проектування, будівництво, тестування, впровадження та обслуговування / підтримку. У рамках Scrum, наприклад, можна сказати, що одна історія користувача проходить через всі фази SDLC протягом двох тижнів. На відміну від методології водоспаду, де кожна бізнес-вимога перекладається на характеристики / функціональні описи, які потім всі реалізуються, як правило, протягом місяців або довше. [Коли потрібна цитата]

Історія
Згідно з Elliott & Strachan & Radford (2004), SDLC "виникла в 1960-х роках, щоб розробити широкомасштабні функціональні бізнес-системи в епоху великих масштабних бізнес-конгломератів. Діяльність інформаційних систем оберталася навколо важкої обробки даних і рутинних чисел».

Метод структурованого аналізу та проектування систем (SSADM) був розроблений для Уряду Великобританії в 1980-х роках. З тих пір, згідно з Elliott (2004), «традиційні підходи до розробки систем протягом життєвого циклу все частіше замінюються альтернативними підходами та рамками, які намагалися подолати деякі властиві недоліки традиційного SDLC».

Моделі

Десятифазна версія життєвого циклу розробки систем
SDLC надає набір фаз / кроків / заходів для системних дизайнерів та розробників. Кожен етап будується на результатах попереднього. Не кожен проект вимагає, щоб етапи були послідовними. Для менших, простіших проектів, фази можуть бути об'єднані / перекриті.

Водоспад
Найстарішим і найвідомішим є модель водоспаду, яка використовує лінійну послідовність кроків. Водоспад має різні різновиди. Одна з варіантів наступна:

Попередній аналіз
Провести попередній аналіз, розглянути альтернативні рішення, оцінити витрати і вигоди, а також подати попередній план з рекомендаціями.

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

Збір фактів: Отримати вимоги кінцевого користувача за допомогою огляду документів, інтерв'ю з клієнтами, спостереження та анкет.
Перевірте існуючу систему (системи): Визначте плюси і мінуси.
Аналізуйте запропоновану систему: знайдіть рішення проблем і підготуйте специфікації, включивши відповідні пропозиції користувачів.
Дизайн систем
На цьому етапі потрібні функції та операції детально описуються, включаючи оформлення екрану, бізнес-правила, діаграми процесів, псевдокод та інші поставки.

Розвиток
Напишіть цей код.

Інтеграція та тестування
Складіть модулі в тестовому середовищі. Перевірте помилки, помилки та сумісність.

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

Підтримка
Моніторинг системи для оцінки її постійної придатності. Зробіть скромні зміни і виправлення за необхідністю.

Оцінка
Система і процес переглядаються. Відповідні питання включають, чи відповідає нововведена система вимогам і досягає цілей проекту, чи є система придатною для використання, надійною/доступною, належним чином масштабованою та толерантною до помилок. Процесові перевірки включають перегляд термінів і витрат, а також прийняття користувача.

Розпорядження
Наприкінці життя розробляються плани для припинення роботи системи і переходу до її заміни. Зв'язана інформація та інфраструктура повинні бути переоцінені, архівовані, викинуті або знищені, при цьому належним чином захищаючи безпеку.

У наступній схемі ці етапи поділяються на десять етапів, від визначення до створення та модифікації продуктів ІТ-роботи:

Системний аналіз та дизайн
Системний аналіз і дизайн (SAD) можна вважати мета-розробною діяльністю, яка служить для встановлення етапу і зв'язування проблеми. SAD може допомогти збалансувати конкурентні вимоги високого рівня. SAD взаємодіє з розподіленою корпоративною архітектурою, корпоративним ІТ. Архітектура, і бізнес-архітектура, і сильно покладається на такі поняття, як розділення, інтерфейси, персонажів і ролей, і розгортання / оперативне моделювання, щоб дістатися до опису системи на високому рівні. Потім цей опис високого рівня розбивається на компоненти і модулі, які можна аналізувати, проектувати і будувати окремо і інтегрувати для досягнення бізнес-цілі. SDLC і SAD є наріжними каменем повного життєвого циклу продукту та планування систем.

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

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

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

Деякі типові вхідні артефакти для OOAD:

Концептуальна модель - це результат об'єктно-орієнтованого аналізу. Вона охоплює поняття в проблемній області. Концептуальна модель явно незалежна від деталей реалізації.
Використання випадків: Використання випадків - це опис послідовності подій, які, взяті разом, завершують необхідне завдання. Кожен випадок використання надає сценарії, які передають, як система повинна взаємодіяти з акторами (користувачами). Актори можуть бути кінцевими користувачами або іншими системами. Використання випадків може бути додатково розроблено за допомогою діаграм. Такі діаграми ідентифікують актора і процеси, які вони виконують.
Системні діаграми послідовності (SSD) - це зображення, яке показує, для конкретного випадку використання, події, які генерують актори, їх порядок, включаючи міжсистемні події.
Документ інтерфейсу користувача: документ, який відображає і описує інтерфейс користувача.
Модель даних: Модель даних описує, як елементи даних відносяться один до одного. Модель даних створюється перед фазою проектування. Об'єктно-орієнтовані конструкції карти безпосередньо з моделі даних. Більш зацікавленими є реляційні дизайни.
Система життєвого циклу
Життєвий цикл системи - це погляд на систему або запропоновану систему, який охоплює всі етапи її існування, включаючи концепцію системи, проектування та розробку, виробництво та/або будівництво, розподіл, експлуатацію, технічне обслуговування та підтримку, вихід на пенсію, фазування та утилізацію.

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

Ключові кроки на етапі концептуального проектування включають:

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

Ключовими етапами в рамках попереднього етапу проектування є:

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

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

Ключові кроки на етапі детального проектування та розробки включають:

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

Основними етапами на етапі розробки продукту є:

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

Ключові кроки на етапі використання та підтримки включають:

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

Фази

Цей розділ включає в себе список посилань, пов'язаних з читанням або зовнішніх посилань, але його джерела залишаються незрозумілими, тому що в ньому відсутні цитати. Будь ласка, допоможіть покращити цей розділ, ввівши більш точні цитати. (жовтень 2023) (Дізнайтеся, як і коли видалити це повідомлення шаблону)
Система розслідування
Під час цього кроку розглядаються поточні пріоритети, які будуть зачіпані, і як з ними слід справлятися. Дослідження можливості визначає, чи придатне створення нової або поліпшеної системи. Це допомагає оцінити витрати, вигоди, вимоги до ресурсів та конкретні потреби користувачів.

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

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

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

Етап проектування приймає як свій вхід вже визначені вимоги. Для кожної вимоги виробляється набір елементів дизайну.

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

Тестування
Код тестується на різних рівнях у тестуванні програмного забезпечення. Зазвичай проводяться тестування прийому, системи та прийняття користувача. Було прийнято багато підходів до тестування.

Наступні типи тестів можуть бути актуальними:

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

Після навчання, системні інженери і розробники переходять систему до свого виробничого середовища.

Операції та обслуговування
Підтримка включає зміни, виправлення та вдосконалення.

Оцінка
Останній етап SDLC полягає в оцінці ефективності системи та оцінці потенційних поліпшень.

Життєвий цикл
Управління та контроль

Фази SDLC, пов'язані з контролем управління
Цілі фази SDLC описані в цьому розділі з ключовими досягненнями, описом рекомендованих завдань та резюме пов'язаних цілей контролю для ефективного управління. Для менеджера проекту важливо встановлювати і контролювати цілі контролю під час виконання проектів. Цілі контролю - це чіткі заяви про бажаний результат або мету і повинні бути визначені і моніторизовані протягом усього проекту. Об'єкти управління можуть бути згруповані в основні категорії (домени) і відносяться до фаз SDLC, як показано на малюнку.

Для управління та контролю суттєвої ініціативи SDLC, структура розщеплення роботи (WBS) захоплює і розраховує роботу. WBS і весь програмний матеріал слід зберігати в розділі «Опис проекту» ноутбука проекту. [пояснення потрібно] Керівник проекту вибирає формат WBS, який найкраще описує проект.

Діаграма показує, що охоплення охоплює численні фази SDLC, але пов'язаний MCD [потрібно уточнення] показує мапірування фаз SDLC. Наприклад, аналіз і дизайн в першу чергу виконуються як частина домену придбання та впровадження, а система побудови та прототипування в першу чергу виконуються як частина доставки та підтримки.

Робочий розлад Структурна організація

Структура розпаду роботи
Верхній розділ WBS надає огляд масштабу та терміну реалізації проекту. Він також повинен підсумувати основні етапи та етапи. Середній розділ заснований на фазах SDLC. Елементи WBS складаються з етапів і завдань, які повинні бути завершені, а не діяльності, які повинні бути здійснені і мають термін. Кожне завдання має вимірюваний результат (наприклад, аналітичний документ). Задача WBS може залежати від однієї або декількох дій (наприклад, кодування ) Частини проекту, які потребують підтримки від підрядників, повинні мати заяву про роботу (SOW). Розробка SOW не відбувається під час конкретної фази SDLC, але розробляється, щоб включати роботу з процесу SDLC, яку можуть проводити підрядники.

Базеліни
Базові лінії встановлюються після чотирьох з п'яти фаз SDLC і є критичними для ітеративного характеру моделі. Базеліни стають наріжними.

Функціональна базова лінія: встановлена після концептуальної фази проектування.
Присвоєна базова лінія: встановлена після попереднього етапу проектування.
База продукту: встановлена після фази детального проектування та розробки.
Оновлена база продукту: встановлена після фази будівництва виробництва.
Існує 7 етапів життєвого циклу розвитку системи. Це системні дослідження, аналіз, проектування, тестування, навчання та перехід, операції та технічне обслуговування та оцінка