- •I. Введення в розробку програмного забезпечення
- •1. Складність інформаційних систем
- •2. Розробка програмного забезпечення
- •4.Концептуальне моделювання
- •2. Модель водоспаду із зворотнім зв'язком
- •7.Модель спіралі
- •III. Етапи розробки програмного забезпечення
- •1. Стратегічний етап
- •2.2. Нефункціональні вимоги
- •4. Етап проектування
- •5. Етап реалізації
- •6. Етап тестування
- •7. Етап установки
- •8. Етап підтримки
- •IV. Стратегічний етап
- •1. Дії на стратегічному етапі
- •2. Співпраця з клієнтом
- •3. Область дії і контекст проекту
- •4. Стратегічні рішення
- •5. Оцінка різних варіантів рішеннь
- •6. Оцінка вартості рішень
- •7. Чинники успіху
- •8. Результати стратегічного етапу
- •9. Короткий звіт
- •V. Розпізнавання вимог і документація
- •1. Складнощі у формулюванні вимог
- •2. Методи ідентифікації вимог
- •3. Методи опису вимог
- •4. Типи вимог
- •5. Перевірка вимог
- •6. Документ з вимогами
- •7. Чинники успіху
- •8. Короткий звіт
- •VI. Розробка моделі
- •1. Потреба в розробці моделі
- •2. Аналітична модель
- •3. Дії на етапі аналізу
- •4. Функціональна декомпозиція
- •5. Методологія, що використовується в створенні аналітичної моделі
- •6. Документація вимог
- •7. Аналіз чинників успіху
- •8. Короткий звіт
- •VII. Етап проектування
- •1. Цілі проектування
- •Малюнок 7.2.1. Етап проектування.
- •2. Специфікація результатів аналізу
- •3. Дизайн інтерфейсу
- •4. Структуровані схеми/діаграми
- •5. Складова організації даних
- •6. Оптимізація проекту
- •7. Фізична структура системи
- •8. Правильність і якість проекту
- •9. Нефункціональні вимоги на етапі проектування
- •10. Результати етапу проектування
- •11. Детальний документ проекту
- •2. Стандарти, правила і порядок здійснення дій проекту:
- •12. Короткий звіт
- •VIII. Розробка інтернет-програм
- •1. Специфікація інтернет-програми
- •2. Методи розробки інтернет-програм
- •3. Об'єктно-орієнтована гіперсередовищна модель розробки (oohdm)
- •4. Метод розробки веб-сторінок (wsdm)
- •5. Мова веб-моделювання (WebMl)
- •6. Короткий звіт
- •IX. Бдб і бдс системи
- •1. Електронний бізнес
- •2. Інтернет-бізнес і електронний ринок.
- •3. Інтернет-магазин
- •4. Модель електронного бізнесу
- •1.Модель брокера
- •2.Модель, яка задовольняє індивідуальним потребам
- •3.Модель контактів
- •5. Платежі
- •6. Безпека
- •8. Моделювання систем бдб і бдс
- •9. Багатошарова архітектура програм
- •9. Cервіс-орієнтована архітектура (соа)
- •10. Короткий звіт
- •X. Реалізація
- •1. Характеристики етапу реалізації
- •2. Надійність програмного забезпечення
- •3. Похибка
- •4. Транзакції
- •5. Середовище реалізації
- •6. Чинники успіху і результати етапу реалізації
- •7. Короткий звіт
- •XI. Тестування
- •1. Етап тестування
- •2. Перевірка
- •Малюнок 11.3.1. Модель V-тестування.
- •3. Перегляди
- •4. Аудит
- •5. Інспекції
- •6. Види тестів
- •7. Процес тестування
- •8. Тестування надійності
- •9. Типи тестів на знаходження помилок
- •10. Програми-інструменти
- •11. Статичні тести
- •12. Підрахунок кількості помилок
- •13. Чинники успіху, успіх тестування
- •14. Короткий звіт
- •XII. Оцінка програмного забезпечення
- •1. Простановка розмірів проекту
- •2. Оцінка складності в проектах
- •3. Ефекти масштабування
- •4. Оцінка вартості програмного забезпечення
- •5. Конструктивна вартісна модель (cocomo)
- •6. Балова функціональна оцінка
- •7. Метод випадкового використання
- •8. Короткий звіт
- •XIII. Управління конфігурацією пз і версіями
- •1. Управління конфігурацією пз
- •2. Елементи конфігурації пз
- •3. Угода позначень
- •4. Зберігання елементів конфігурації
- •5. Перегляди
- •7. План управління конфігурації пз
- •I Вступ
- •II Управління
- •III Визначення конфігурації
- •IV Управління конфігурацією
- •V Реєстрація статусу конфігурації
- •4. Модель якості iso-9126
- •5. Управління якістю
- •6. Стандарти якості
- •7. Незрілість і зрілість виробництва
- •8. План гарантії якості пз (sqap)
- •9. Короткий звіт
- •XV. Управління проектом програмного забезпечення
- •1. Завдання управління проектом
- •2. Працівники виробництва програмного забезпечення
- •3. Характеристика хорошого розробника програмного забезпечення
- •4. Робота в команді
- •5. Управління підприємством по виробництву програмного забезпечення
- •6. Розвиток компанії по розробці програмного забезпечення
- •7. Документація проекту
- •8. Визначення продуктивності
- •9. Складання графіків проекту
- •10. Завдання управління проектом
- •11. Інтерфейс проекту
- •12. Планування проекту
- •13. Управління ризиком
- •14. Вимірювання процесів і продуктів
- •15. Короткий звіт
Технологія створення програмних продуктів
Міністерство
освіти і науки України Національний
університет “Львівська
політехніка”
Кафедра
автоматизованих систем управління
Ковівчак Я. В., Пелешко Д.Д., Кінаш Ю.Є.
Технологія створення програмних продуктів
конспект ЛЕКЦІЙ
Для студентів Інституту комп’ютерних наук та інформаційних технологій бакалаврського рівня підготовки по спеціальності
«Комп’ютерні науки» (шифр - 0927)
Затверджено на засіданні кафедри автоматизованих систем управління.
Протокол № 8-03/08 від “06” березня 2008 р.
Львів-2008
Ковівчак Я. В., Пелешко Д. Д., Кінаш Ю. Є. Технологія створення програмних продуктів : Конспект лекцій з дисципліни «Технологія створення програмних продуктів» для студентів бакалаврського рівня підготовки зі спеціальності 0927 «Видавничо-поліграфічна справа– Львів: Національний університет «Львівська політехніка», 2008. – 122 с.
Відповідальний за випуск Шпак З.Я., к. т. н., доц.
Рецензенти Медиковський М. О., д. т. н., проф.
Зміст
I. Введення в розробку програмного забезпечення
Складність інформаційних систем
Що називається розробкою програмного забезпечення
Криза програмного забезпечення
Концептуальне моделювання
Короткий звіт
Вправи
II. Життєві цикли програмного забезпечення
Модель водоспаду
Модель водоспаду із зворотнім зв'язком
Виконання по документації
Моделювання
Покрокова розробка
Збірка готових елементів
Спіральна модель
Короткий звіт
Вправи
III. Етапи розробки програмного забезпечення
Введення
Стратегічний етап
Етап визначення вимог
4.1 Функціональні вимоги
4.2 Нефункціональні вимоги
5. Аналіз
6. Етап проектування
7. Етап реалізації
8. Етап тестування
9. Етап установки
10. Етап підтримки
11. Короткий звіт
Вправи
IV. Початок - стратегічний етап
Дії стратегічного етапу
Співпраця з клієнтом
Можливості і контекст проекту
Стратегічні рішення
Вивчення доступності
Оцінка рішення
Оцінка вартості
Чинники успіху
Ефекти стратегічного етапу
Короткий звіт
Вправи
V. Розпізнавання вимог і документація
Труднощі у формулюванні вимог
Методи ототожнення вимог
Методи опису вимог
Види вимог
Вимоги перевірки
Документ вимог
Чинники успіху
Короткий звіт
Вправи
VI. Побудова моделі
Вимоги для конструкції моделі
Аналітична модель
Дії на етапі аналізу
Функціональне розкладання
Методологія, що використовується при створенні аналітичної моделі
Документація вимог
Чинники успіху аналізу
Короткий звіт
Вправи
VII. Етап проектування
Цілі проектування
Специфікація аналізу результатів
Проектування інтерфейсу
Структуровані чарти/діаграми
Складова організації даних
Оптимізація проекту
Фізична струтура системи
Коректність і якість проекту
Нефункціональні вимоги на етапі проектування
Ефекти етапу проектування
Детальний документ проекту
Короткий звіт
Вправи
VIII. Розробка інтернет-програм
Специфікація інтернет-програми
Методи розробки інтернет-програм
Об'єктно-орієнтована гіперсрсередовищна модель розробки (OOHDM)
Метод розробки веб-сторінок
Мова веб-моделювання
Короткий звіт
Вправи
IX. БдБ і БдС системи
Електронний бізнес
Що таке інтернет-бізнес і електронний ринок?
Інтернет-магазин
Модель електронного бізнесу
Платежі
Безпечність
Моделювання систем БдБ та БдС
Архітектура багаторівневих програм
Сервіс-орієнтована архітектура (SOA)
Короткий звіт
Вправи
X. Реалізація
Характеристики етапу реалізації
Надійність програмного забезпечення
Погрішність
Транзакції
Середовище реалізації
Чинники успіху і результати етапу реалізації
Короткий звіт
Вправи
XI. Тестування
Етап тестування
Перевірка
Перегляди
Аудит
Інспекції
Види тестів
Процес тестування
Тестування надійності
Типи тестів на знаходження помилок
Програми-інструменти
Статичні тести
Оцінка кількості помилок
Чинники успіху, успіх тестування
Короткий звіт
Вправи
XII. Оцінка програмного забезпечення
Оцінка програмного забезпечення
Оцінка складності в проектах
Ефекти масштабування
Оцінка вартості програмного забезпечення
Конструктивна вартісна модель (COCOMO)
Балова функціональна оцінка
Метод випадків використання
Короткий звіт.
Вправи
XIII. Управління конфігурацією ПЗ і версіями
Управління конфігурацією ПЗ
Елементи конфігурації ПЗ
Угода позначень
Зберігання елементів конфігурації
Перегляди
Реліз
План управління конфігурації ПЗ
Короткий звіт
Вправи
XIV. Якість програмного забезпечення
Що таке якість програмного забезпечення?
TQM – управління за якістю
Якість у ISO
Модель якості ISO-9126
Управління якістю
Стандарти якості
Незрілість і зрілість виробництва
План гарантії якості ПЗ (SQAP)
Короткий звіт
Вправи
XV. Управління проектом програмного забезпечення
Завдання управління проектом
Особи виробників програмного забезпечення
Характеристики хорошого розробника ПЗ
Робота в команді
Управління підприємством по виробництву ПЗ
Розвиток компанії по виробництву ПЗ
Документація проекту
Вимірювання производительности
Складання графіків проекту
Завдання управління проектом
Інтерфейс проекту
Планування проекту
Управління ризиком
Вимірювання процесів і продуктів
Короткий звіт
Вправи
Вступ
Введення в розробку програмного забезпечення
Непрофесійний розробник програмного забезпечення завжди у пошуках магії, якого-небудь сенсаційного методу або інструмента, що обіцяє зробити розробку програмного забезпечення тривіальною. Характерна риса професійного розробника програмного забезпечення - знати, що ніякого універсального засобу не існує.
Сучасне програмне забезпечення (ПЗ) стає складним, великим і залежить від капітальних витрат. Програмне забезпечення створюється великими командами професіоналів і представляє різні сфери інтересів, часто далекі від комп'ютерної науки.
Питання, які виникли в процесі розробки ПЗ:
Що робити зі складністю програмного забезпечення?
Як організувати командну роботу?
Як розумно спілкуватися в групі професіоналів різних дисциплін?
Які методи можуть бути використані належним чином, щоб приготувати якісний і не дуже дорогий продукт в зазначений термін?
Прогрмісти повинні дати відповіді на всі ці питання для успішної розробки ПЗ.