
- •Введення в розробку програмного забезпечення
- •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. Короткий звіт
9. Cервіс-орієнтована архітектура (соа)
Для того, щоб будувати сучасні і гнучкі розподілені програми, слід задовільняти наступні вимоги:
інтеграція ресурсів ПЗ вимагає початкової слабкої зв'язаності;
зв'язок повинен грунтуватися на широко відомих стандартах інтернету;
інтерфейси послуг повинні бути добре описані і загальнодоступні.
Вимоги не повинні бути пріоритетом, але їх застосування буде корисним:
ми можемо використовувати інші засоби для розробки програм;
ми можемо використовувати функціональність компаній третьої сторони, що зменшить вартість і збільшить продуктивність;
ми можемо продавати або ділитися сервісним ПЗ. Наприклад, ми можемо створити компонент про аукціон і продати його як сервісне ПЗ, а не програму.
Архітектура під назвою "сервіс-орієнтованная архітектура" задовольняє ці вимоги. Це дозволяє створювати динамічні, слабо зв'язані розподілені програми.
Зараз більшість систем будуються, грунтуючись на технологіях, які вимагають інтеграцію компонентів і середовища. Оскільки будь-яка невдача вимагає необхідність в змінах підсистем або компонентів, таке рішення проблеми збільшує витрати. Також існують обмеження на універсальну застосованість.
СОА має три головні ролі:
Постачальник послуг - це вузол (у інтернеті або інтранеті), який дає доступ до даного бізнес-компоненту з потрібною функціональністю.
Споживач послуг - використовує видалений компонент для створення власних програм. У СОА клієнт і споживач - вузли.
Оцінювач послуг - вузол мережі є сховищем описів послуг, на зразок жовтих сторінок. Творець компонентів розміщує інформацію разом з оцінювачем послуг, і клієнт може знайти ці послуги.
Малюнок 9.10.1. Архітектура СОА.
Взаємозв'язки між вузлами:
Розміщення. Постачальник послуг розміщує інформацію про його послуги, їх визначення, документацію і т.д.
Знаходження. Клієнти знаходять послуги, що знаходяться в сховищі.
Скріплення. Клієнти встановлюють зв'язок з послугою. Це вимагає авторизація.
Знаходження і скріплення може відбуватися автоматично. Наприклад, якщо програма дуже довго очікує відповіді одного провайдера, воно може переключитися на іншого провайдера.
Мережеві послуги, як реалізація СОА
Середовищем для СОА є інтернет. Там може бути знайдений кожен вузол. Зв'язок відбувається по протоколах TCP/IP, або HTTP - у вищих рівнях взаємодії відкритих систем.
Реалізація - XML веб-сервер-сервіс. Приклад реалізації СОА зображений на малюнку.
Малюнок 9.10.2. Реалізація СОА з використанням веб-сервісів.
Оцінювач послуг як веб-сервіс. Оцінювач послуг - вузловий сервер - UDDI (Universal Description, Discovery and Integration, універсальний опис, пошук і взаємодія). UDDI - це каталоги бізнес-компонентов, готових до використання.
Постачальник послуг - вузол, що надає мережеві XML веб-сервіси. Мережеві послуги надаються www-сервером (Apache або інформаційні інтернет-послуги).
Споживач послуг як веб-сервер-сервіс - вузол, який може бути зв'язаний через HTTP або SOAP, розуміє інтерфейс послуги, яку хоче використовувати, надає інструменти авторизації.
Як працюють інтернет-послуги?
Опис XML веб-сервісов.
Послідовність дій, викладених нижче, схожа у всій техніці програмістів.
Клієнти знаходять потрібну послугу в UDDI. Якщо відома адреса, файл WSDL з технічною специфікацією може бути завантажений. Всі платформи дозволяють створювати Proxy, заснований на WDL. Ідея полягає в тому, щоб заховати складність WDL і показати простий інтерфейс. Клас проксі містить список методів, які повертаються разом з своїми параметрами і типами.
Малюнок 9.10.3. Крок 1. Створення класу проксі, заснованого на WSDL.
Тепер у нас є вся інформація, потрібна для використання даного інтернет-сервісу. Мова програмування не має значення. Клас проксі дозволяє викликати видалені сервіси. Клас транслює повідомлення в повідомлення SOAP, яке зрозуміле для мережевої служби. Остання повертає відповідь у форматі SOAP і посилає її назад клієнтові. Все робиться за допомогою HTTP без потреби в постійному з'єднанні (запит/відповідь).
Малюнок 9.10.4. Крок 2. Зв'язок з мережевою службою через SOAP.