
- •Введення в розробку програмного забезпечення
- •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. Короткий звіт
5. Середовище реалізації
Середовище процедурних мов
Це традиційне середовище реалізації. Процеси і модулі можуть бути представлені цілими програмами. Групи процедур і функцій відповідають системним функціям. Пам'ять і контейнери в проекті відповідають структурам мови.
Процедурні мови не забезпечують достатні механізми для контролю доступу до даним. Доступ до структур легкий. Є інші мови, наприклад, Ada, Modula 2, які мають досконаліші механізми.
Об'єктно-орієнтовані середовища
Середовища, що застосовують об'єктно-орієнтований підхід, корисні, оскільки відображення між проектною моделлю і моделлю реалізації просте.
Проте, вони недостатні у разі великих проектів і вимагають складної обробки даних і використання баз даних.
Більшість об'єктно-орієнтованих мов - це гібридні мови, які були розроблені, грунтуючись на процедурних мовах, з додаванням до них об'єктної орієнтації. Одна з таких мов - C++. Їх перевага полягає в пластичності, що не завжди відповідає теоремами про "узгодженість", "сумісність", "переносимість".
Такі мови, як Java, Eiffel, Visual Age, і Smalltalk показують, що гібридні мови стають все менш популярними.
Середовища реляційних бази даних
Найрозвиненіші середовища зараз використовують реляційні бази даних.
Їх переваги:
множинний доступ;
автоматична перевірка цілісності;
користувачеві привласнюються права доступу;
висока надійність;
розширюваність (обмежена);
високий рівень доступу (SQL, ODBC, JDBC).
Також є і недоліки:
ускладнені відображення абстрактної моделі;
низька ефективність для деяких завдань;
обмежена типізація;
недолік механізмів інкапсуляції і інших об'єктно-орієнтованих механізмів;
збільшена довжина програми.
Об'єктно-орієнтована база даних
Перевага об'єктно-орієнтованої бази даних - вищий рівень абстракції. Це полегшує проектування і реалізацію одного і того ж застосування в ефективнішій, сумісній і однорідній формі.
Досягнуте спрощення і систематичний підхід до розробки проекту, зменшення відстані між фазою аналізу, дизайну і програмування, мінімальні поняття ввели вищий рівень абстракції. Також введений людськия чинник.
Об'єктно-орієнтований підхід вводить більше понять, через що реляційна модель розширює мозкову функцію.
Об'ектно-орієнтовані бази даних (ObjectStore, O2, Versant, Gemstone, Poet, Objectivity/DB, Jasmine, Jade і т.д.) вже зрілі, але все ще ведуть боротьбу за клієнтів.
Об'єктно-орієнтовано-реляційні середовища баз даних
Завдяки успіху об'єктно-орієнтованого підходу безліч понять були введені в реляційні середовища.
Підхід називається "гібридним" або "об'єктно-орієнтовано-реляційним". Сервер під назвою "Універсальний сервер" також стає популярним, що означає можливість зберігання і обробки об'єктів, відносин, мультимедійних даних і т.п. Концептуальна ідея полягає в тому, щоб застосувати відомі реляційні технології (наприклад, SQL) і ввести об'єктну орієнтацію "вищого рівня".
Об'єктно-орієнтовано-реляційні системи (Oracle-8, Informix Dynamic Server і т.п.) розвиваються з повільно.
Середовище програм користувача
Приклад середовища програми користувача - Microsoft Office, документи якого можуть бути оброблені багатьма програмами.
Наприклад, найважливішими особливостями Microsoft Excel є: повністю процедурна мова Visual Basic для програм, добре розроблена об'єктна бібліотека, яка надає майже всі пакети, дозволяє реєстрацію макроозначень, можливість створення інтерфейсного діалогу, розміщуючи поля у листах, оснащена відладчиком, має вдосконалений метод роботи з DLL, DDE, OLE, ODBC.
Перераховані методи роблять MS Office середовищем, яке може використовуватися для розробки програм з складним логічним і швидким прикладним розвитком.
Інструментарій CASE на етапі реалізації
Прогрес інструментів CASE за останній час полегшив життя програмістів. Вони можуть застосовувати інструменти CASE безпосередньо для проглядання діаграм і словника баз даних. Деякі системи CASE генерують коди, які створюють діаграми і шаблони.
Типовими кодовими елементами є:
скрипти, що створюють відношення в базі даних;
визначення структури даних;
заголовки процедур і функцій;
визначення класів;
заголовки методів.
Код завершує багато коментарів, заснованих на словнику баз даних. Деякі з інструментів CASE мають інтерфейс для RAD.