4. Документування системних вимог
Документ, що містить вимоги, також називаний специфікацією системних вимог ‒ це офіційне приписання для розробників програмної системи. Він містить користувацькі вимоги і деталізований опис системних вимог. У деяких випадках користувацькі і системні вимоги можуть не різнитися, виступаючи спільно у вигляді однорідного опису системи. В інших випадках користувацькі вимоги приводяться у введенні документа-специфікації. Якщо загальна кількість вимог велика, деталізовані системні вимоги можуть бути представлені у вигляді окремого документа.
Системну специфікацію читає безліч різних людей, починаючи від вищого керівництва компанії ‒ замовника системи і закінчуючи рядовим розробником системи. На рис. 3.3, показані категорії читачів специфікації.
Рис. 3.3. Читачі системної специфікації
Хенінгер (Heninger) сформулював шість умов, яким повинна відповідати специфікація програмної системи.
Описувати тільки зовнішню поведінка системи.
Указувати обмеження, що накладаються на процес реалізації системи.
Передбачати можливість внесення змін у специфікацію.
Служити довідковим засобом у процесі супроводу системи.
Відображати весь життєвий цикл системи.
Передбачати реакцію системи і групи супроводу на непередбачені (позаштатні) ситуації.
Хоча із часу написання цих умов пройшло більш 20 років, вони не втратили своєї актуальності і є гарною підмогою при розробці специфікацій. Разом з тим часом складно або навіть неможливо описати систему тільки в термінах зовнішньої поведінки, тобто тільки за допомогою функцій, які вона повинна виконувати, оскільки в специфікації також повинні бути відбиті обмеження, що накладаються оточенням уже існуючих систем. Інша умова ‒ охват усього життєвого циклу системи ‒ приймається всіма розробниками, але рідко виконується на практиці.
Багато організацій, такі, як Міністерство оборони США і Інститут інженерів по електротехніці і радіоелектроніці IEEE, розробили власні стандарти документування специфікацій. Найбільш відомий стандарт розроблений IEEE і називається IEEE/ANSI 830-1993 [IEEE, 1993]. Даний стандарт передбачає наступну структуру специфікації.
Введення
Мети документа
Призначення програмного продукту
Визначення, акроніми і абревіатури
Список літератури і інших джерел
Огляд специфікації
2. Загальний опис
Опис програмного продукту
Функції програмного продукту
Користувацькі характеристики
Загальні обмеження
Обґрунтування, припущення і допущення
3. Специфікація вимог охоплює функціональні, нефункціональні і інтерфейсні вимоги. Це найбільш значима частина документа, але внаслідок украй широкого діапазону можливих вимог, пропонованих програмним системам, у стандарті не визначена структура цього розділу. Тут можуть бути документовані зовнішні інтерфейси, описані функціональні можливості системи, наведені вимоги, що визначають логічну структуру баз даних, обмеження, що накладаються на структуру системи, описані інтеграційні властивості системи або її якісні характеристики.
- Технологія проектування програмних систем
- 1.Опис навчальної дисципліни
- 2. Тематика і зміст лекцій
- 3. Практичні заняття по дисципліні "Технологія проектування програмних систем"
- 4. Шкала оцінювання
- 5. Оцінка успішності в балах при повному виконанні умов і графіку навчального процесу
- Лабораторна робота № 1
- 2. Ітераційні моделі розробки пз
- 3. Специфікація програмного забезпечення
- 4. Проектування і реалізація пз
- 6. Еволюція програмних систем
- 7. Автоматизовані засоби розробки пз
- Лабораторна робота № 2
- 2. Користувацькі вимоги
- 3. Системні вимоги
- 4. Документування системних вимог
- 4. Додатки
- 5. Покажчики
- Лабораторна робота № 3
- 1. Прототипування в процесі розробки пз
- 2. Технології швидкого прототипування
- 3. Прототипування користувацьких інтерфейсів
- Лабораторна робота № 4
- 1. Формальні специфікації в процесі розробки пз
- 2. Специфицирование інтерфейсів
- 3. Специфікація поведінки систем
- Лабораторна робота № 5
- 1. Проектування систем
- 2. Керуючі програми
- 3. Системи спостереження і керування
- 4. Системи збору даних