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