Проектування та реалізація ПО
Реалізація ПЗ - це процес перекладу системної специфікації в працездатну систему. Етап реалізації завжди включає процеси проектування і програмування, але якщо для розробки ПЗ застосовується еволюційний підхід, етап реалізації також може включати процес внесення змін в системну специфікацію.
На етапі проектування ПЗ визначається його структура, дані, які є частиною системи, інтерфейси взаємодії системних компонентів і іноді використовувані алгоритми. Проектувальники відразу ніколи не отримують закінчений результат - процес проектування зазвичай проходить через розробку кількох проміжних версій ПЗ. Проектування передбачає послідовну формалізацію і деталізацію створюваного ПЗ з можливістю внесення змін до рішення, прийняті на більш ранніх стадіях проектування.
Процес проектування може включати розробку кількох моделей системи різних рівнів узагальнення. Оскільки проектування - це процес декомпозиції, такі моделі допомагають виявити помилки, допущені на ранніх стадіях проектування, а отже, дозволяють внести зміни в раніше створені моделі. На рис. 1 показана схема процесу проектування ПЗ із зазначенням результату кожного етапу проектування. Ця схема побудована у припущенні, що всі етапи процесу проектування виконуються послідовно. На практиці ці етапи перекриваються внаслідок неминучих зворотних зв'язків від одного етапу до попереднього і повторного виконання деяких проектних робіт.
Результатом кожного етапу проектування є специфікація, необхідна для виконання наступного етапу. Ця специфікація може бути абстрактною і формальною, тобто такою, яка необхідна для деталізації системних вимог; але вона може бути і частиною розроблюваної системи. Так як процес проектування безперервний, специфікації поступово стають все більш деталізованими. Кінцевими результатами процесу проектування є точні специфікації на алгоритми і структури даних, які будуть реалізовані на наступному етапі створення ПЗ.
Нижче перераховані окремі етапи процесу проектування.
1. Архітектурне проектування. Визначаються і документуються підсистеми та взаємозв'язки між ними.
2. Узагальнена специфікація. Для кожної підсистеми розробляється узагальнена специфікація на її сервіси та обмеження.
3. Проектування інтерфейсів. Для кожної підсистеми визначається і документується її інтерфейс. Специфікації на ці інтерфейси повинні бути точно вираженими і однозначними, щоб використання підсистем не вимагало знань про те, як вони реалізують свої функції. На цьому етапі можна застосувати методи формальних специфікацій, розглянуті в главі 9.
4. Компонентне проектування. Проводиться розподіл системних функцій (сервісів) по різних компонентах і їх інтерфейсів.
5. Проектування структур даних. Детально розробляються структури даних, необхідні для реалізації програмної системи.
6. Проектування алгоритмів. Детально розробляються алгоритми, призначені для реалізації системних сервісів.
Дата добавления: 2016-02-16; просмотров: 893;