
- •Введення в розробку програмного забезпечення
- •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. Документ з вимогами
- •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)
- •Формулювання вимог
- •Проект структури даних
- •Гіпертекстовий проект
- •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 Управління конфігурацією
- •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 с.
Висвітлено основні підходи до побудови електронних видань. Зокрема, поняття гіпертексту та вимоги до організації гіпертекстових документів. Приведено основні властивості та структуру графічних файлів націлених на використання в Web-документах. Розглянуто способи створення та обробки текстових, графічних, анімаційних, аудіо й відеокомпонентів електронних видань. Приведено основні програмні середовища створення компонентів мультимедійних видань. Детально висвітлено підходи до класифікації сучасних електронних видань.
Відповідальний за випуск Шпак З.Я., к. т. н., доц.
Рецензенти Медиковський М. О., д. т. н., проф.
Лотошинська Н. Д., к. т. н, доц.
Зміст
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. Управління проектом програмного забезпечення
Завдання управління проектом
Особи виробників програмного забезпечення
Характеристики хорошого розробника ПЗ
Робота в команді
Управління підприємством по виробництву ПЗ
Розвиток компанії по виробництву ПЗ
Документація проекту
Вимірювання производительности
Складання графіків проекту
Завдання управління проектом
Інтерфейс проекту
Планування проекту
Управління ризиком
Вимірювання процесів і продуктів
Короткий звіт
Вправи
Вступ
Введення в розробку програмного забезпечення
Непрофесійний розробник програмного забезпечення завжди у пошуках магії, якого-небудь сенсаційного методу або інструмента, що обіцяє зробити розробку програмного забезпечення тривіальною. Характерна риса професійного розробника програмного забезпечення - знати, що ніякого універсального засобу не існує.
Сучасне програмне забезпечення (ПЗ) стає складним, великим і залежить від капітальних витрат. Програмне забезпечення створюється великими командами професіоналів і представляє різні сфери інтересів, часто далекі від комп'ютерної науки.
Питання, які виникли в процесі розробки ПЗ:
Що робити зі складністю програмного забезпечення?
Як організувати командну роботу?
Як розумно спілкуватися в групі професіоналів різних дисциплін?
Які методи можуть бути використані належним чином, щоб приготувати якісний і не дуже дорогий продукт в зазначений термін?
Прогрмісти повинні дати відповіді на всі ці питання для успішної розробки ПЗ.
1. Складність інформаційних систем
Сучасні інформаційні системи складні, їх розробка вимагає багато часу і великих капіталовкладень. Нажаль, вельми часто результати є не задовільними. Аналіз показує, що зі всіх проектів програмного забезпечення, що розробляються, тільки кожний третій завершується успіхом.
Малюнок 1.2. Успіхи і невдачі розробки програмного забезпечення
Причини складності програмного забезпечення численні і різні. Наприклад:
проблема великої кількості напрямків в інформаційних технологіях
складнощі спілкування членів команд різних професій
динамічні зміни в технологіях і доступних технічних інструментах
зміна вимог користувачів і невпевненість в розробці вимог
Малюнок 1.2.2. Причини Складності ІТ-проекту.
2. Розробка програмного забезпечення
Розробка ПЗ є нелегке заняття і воно часто завершується невдачею. Тому виникають такі питання:
1.Що потрібно зробити, щоб збільшити шанс успіху проекту ПЗ?
2.Як бути впевненим, що результат роботи задовольнить користувача?
3.Як перевірити безпомилковість програмного продукту?
4.Як визначити вимоги до продукту, щоб він був зрозумілий людям без досвіду роботи з комп'ютером, але в той же час зробити вимоги достатніми для можливості моделювання і програмування?
Програмотехніка намагається відповісти на ці та інші питання. Програмотехніка - це практична дисципліна, яка пов'язана зі всіма етапами великої розробки інформаційних систем.
Можливості програмотехніки досить широкі.Виділимо декілька аспектів:
Методи управління в розробці ПЗ
Технології планування, ціни, розклад і моніторинг розробки ПЗ
Аналіз і методи проектування
Технології підвищення надійності програмного забезпечення
Методи підготовки технічної і призначеної для користувача документації
Процедури контролю якості
Методи зменшення витрат на підтримку, усунення помилок, модифікації і розширення можливостей ПЗ
Технології командної роботи і філософські чинники, які впливають на роботу