- •Навчальний посібник Київ 2005
- •Анотація
- •Тематичний план дисципліни ”Сучасні інформаційні системи і технології”
- •Розділ 1 Сучасні іст: основні визначення та проблеми
- •1.1 Інформаційні технології та процеси обробки інформації
- •1.2 Поняття інформації. Дані та знання
- •1.3 Інформація як властивість матерії
- •1.4 Логіко-семантичний підхід до інформації
- •1.5 Оцінка кількості інформації
- •1.6 Форми адекватності інформації
- •1.7 Семантична та прагматична міри інформації
- •Якість інформації
- •Висновки
- •Список літератури
- •Контрольні питання
- •Розділ 2. Інформаційні ресурси – об’єкт інформаційних систем та технологій. Інформація - один з найцінніших ресурсів суспільства
- •Кодування інформації
- •Штрихове кодування інформації
- •Інформаційні революції
- •Інформаційне суспільство
- •Інформатизація та комп’ютеризація
- •Основні етапи інформатизації суспільства:
- •Економічна інформація
- •Висновки
- •Список літератури
- •Контрольні питання
- •Розділ 3 Складові інформаційної технології
- •Математичне забезпечення
- •Апаратне забезпечення
- •Програмне забезпечення
- •Правове забезпечення
- •Висновки
- •Список літератури
- •Контрольні питання
- •Розділ 4. Програмна інженерія як сукупність технологій розробки інформаційних систем.
- •Базовi поняття програмної інженерії
- •Життєвий цикл пз
- •Інженерiя вимог
- •Тестування програм та систем
- •Аналіз якості програмного забезпечення
- •Висновки
- •Список літератури
- •Контрольні питання:
- •Розділ 5. Проблеми безпеки у відкритих інформаційних системах Інформація як об’єкт захисту
- •Основні аспекти інформаційної безпеки
- •Стандарти захисту інформації
- •Загальні рекомендації щодо інформаційної безпеки
- •Шифрування
- •Комп’ютерні злочини
- •Висновки
- •Список літератури
- •Контрольні питання
- •Розділ 6. Засоби інтелектуалізації сучасних іс Основні напрямки розвитку штучного інтелекту
- •Нейронні мережі
- •Формальні методи в системах штучного інтелекту
- •Дедуктивні міркування
- •Індуктивні міркування
- •Міркування за аналогією
- •Предикати
- •Формальні теорії
- •Нечіткі множини та нечітка логіка
- •Експертні системи
- •Класифікація ес за призначенням
- •Системи підтримки прийняття рішень
- •Основні властивості сппр
- •Список літератури
- •Контрольні питання
- •Розділ 7. Відкриті системи. Комп’ютерні мережі.
- •Компоненти комп'ютерної мережі
- •Основні вимоги до сучасних обчислювальних мереж
- •Відкриті системи
- •Рівні еталонної моделі osi
- •Список літератури
- •Контрольні питання
- •Розділ 8. Інформаційні ресурси глобальної мережі Інтернет. Подання знань про предметну область на основі онтологій. Інформаційні ресурси глобальної мережі Інтернет
- •Засоби подання текстової інформації
- •Мультимедійна інформація
- •Графічні формати Інтернет
- •Метаінформація про ресурси Інтернет
- •Онтології
- •Висновки
- •Список літератури
- •Контрольні питання
- •Розділ 9. Інтелектуальні програмні агенти. Мультиагентні системи.
- •Основні властивості програмного агента
- •Властивості інтелектуальних агентів
- •Переконання, бажання і наміри агентів
- •Мультиагентні системи
- •Список літератури
- •Контрольні питання
- •Розділ 10. Пошук інформації в Інтернет. Засоби інтелектуалізації пошуку інформації
- •Визначення контексту пошукових запитів
- •Інформаційно-пошукові агенти
- •Мультиагентні інформаційно-пошукові системи
- •Висновки
- •Список літератури
- •Контрольні питання
- •Додаток 1. Перелік скорочень
- •Додаток 2. Тести для перевірки знань з курсу «Сучасні інформаційні системи і технології»
- •Додаток 3. Глосарій
- •Алфавітно ─предметний покажчик
Тестування програм та систем
Тестування програм та систем - це спосіб семантичної перевірки програми, який полягає в опрацюванні програмою послідовності різноманітних контрольних наборів тестів з відомими результатами. Тести підбираються так, щоб вони охопили найрізноманітніші типи можливих ситуацій. Тестування становить від 30% до 50% трудомісткості робіт зі створення коду.
Історично першим різновидом тестування було налагодження - перевірка програмного об'єкта на наявність у ньому помилок для їх усунення. При цьому можуть вноситися нові помилки.
Методи тестування й верифікації цілком залежать від методів проектування та стадій, з яких починається перевірка правильності функціонування результатів проектування.
Основна мета тестування - забезпечення повноти й узгодженості реалізованих у програмних компонентах функцій та інтерфейсів між ними.
Верифікація - перевірка відповідності реалізації системи специфікаціям результатів проектування й опису компоненти.
Валидація - перевірка відповідності створеного ПЗ потребам та вимогам замовника. Це дорогий процес, що забезпечує високу якість програмного коду. Валидація дозволяє підтвердити, що програмне забезпечення є коректною реалізацією початкових умов у системі й провадиться після завершення кожного етапу розроблення цього забезпечення.
Помилка - це стан програми, при якому генеруються неправильні результати. Причиною помилок є недоліки в операторах програми або в технологічному процесі її розроблення, що призводить до неправильного перетворення вхідної інформації у вихідну. Дефект у програмі виникає внаслідок помилок розробника. Він може міститися у вхідних або проектних специфікаціях, текстах кодів програм, в експлуатаційній документації тощо. Відмова - це неможливість виконувати функції, визначені вимогами й обмеженнями.
Усі помилки, що виникають у програмах, прийнято підрозділяти на кілька класів:
логічні і функціональні помилки;
помилки обчислень і часу виконання;
помилки введення-виведення і маніпулювання даними;
помилки інтерфейсів;
помилки обсягу та інші.
Тест - це програма, призначена для перевірки працездатності іншої програми і виявлення в ній помилкових ситуацій.
Тестову перевірку можна провести також шляхом додання до програми, що перевіряється, додаткових операторів, які будуть сигналізувати про перебіг її виконання й отримання результатів.
Тестові дані слугують для перевірки роботи системи і готуються по-різному: генератором тестових даних, проектною групою на основі документів або файлів, користувачем із специфікації вимог тощо. Дуже часто розробляються спеціальні форми вхідних документів, у яких відображається процес виконання програми за допомогою тестових даних.
Багато типів тестів готує сам замовник для перевірки роботи ІС. Структура й зміст тестів залежать від виду елемента - модуль, компонента, група компонент, підсистема або система. Деякі тести пов’язані з необхідністю перевірити, чи працює ІС відповідно до проекту, чи задоволено вимоги замовника.
Для проведення тестування створюється спеціальна команда тестувачів. За функціональні тести відповідає розробник, а замовник більше впливає на складання випробувальних та інсталяційних тестів.
Як правило, команда тестувачів не залежить від штату розробників ІС. Деякі члени цієї команди є досвідченими тестувачами або навіть професіоналами в цій галузі. До них належать аналітики, програмісти, інженери-тестувачі, котрі присвячують увесь свій час проблемам тестування систем. Вони мають справу не лише зі специфікаціями, а й з методами та засобами тестування, організують створення і виконання тестів на машині. Тестувачів включають до процесу розроблень з початку створення проекту для складання тестових наборів та сценаріїв, а також графіків виконання тестів.
До складу команди тестувачів входять також користувачі. Вони оцінюють отримані результати та зручність використання, а також висловлюють свою думку щодо принципу роботи системи на початкових етапах проекту.
Представники замовника планують роботи для тих, хто буде використовувати і супроводжувати систему. При цьому вони можуть привнести деякі в проект зміни, викликані неповнотою заданих раніше вимог, та сформулювати системні вимоги для проведення верифікації системи й ухвалення рішення про її готовність та корисність.
Супроводження - це роботи з внесення змін до ІС після того, як її було передано користувачеві для експлуатації. На відміну від обладнання, яке з часом потребує ремонту, ПЗ не "зношується", тому процес супроводження націлений на підтримку передовсім еволюціонування системи, тобто на зміну її функцій та властивостей.
Як засвідчують експерти, процес внесення змін є досить дорогим - оцінки його вартості сягають 60-80 % від загальної вартості розроблення.
Види супроводження:
коригуюче - внесення коректив для усунення помилок, які було знайдено після передачі системи до експлуатації.
адаптивне - адаптація продукту до змінених обставин використання після передачі системи в експлуатацію
попереджувальне - діяльність із забезпечення адаптивного супроводження на старті розроблень.