- •2 Принципи тестування по 5
- •1.1Системи і системна інженерія
- •1.2Що таке системна інженерія пз?
- •SwSe і програмна інженерія
- •SwSe і управління проектом
- •1.3Функції SwSe
- •Аналіз вимог
- •Дизайн програмного забезпечення
- •Планування процесів
- •Контроль процесів
- •Верифікація, підтвердження і тестування
- •2Принципи тестування по
- •2.1Неефективність існуючих технологій тестування
- •2.2Новий підхід до процесу тестування
- •2.3Верифікація
- •2.4Перевірка на коректність
- •2.5Тестування, засноване на специфікаціях
- •2.6Результати нового підходу
- •2.7Застосовність V-модели
- •2.8Заповіді тестування
1.2Що таке системна інженерія пз?
Термін «системна інженерія програмного забезпечення» з'явився на початку 80-х років. SwSE відповідає за загальне технічне управління системою і підтвердження коректності остаточних системних продуктів. Як і системна інженерія, SwSE породжує документи, а не компоненти. В цьому вона відрізняється від програмної інженерії (software engineering — SwE), що породжує комп'ютерні програми і керівництво користувачів.
SwSE починається, коли системні вимоги розділені на апаратні і програмні підсистеми. SwSE формує основу для всієї розробки програмного забезпечення в проекті і, як і SwE, є одночасно і технічний і управлінський процес. Технічний процес SwSE — аналітична робота, необхідна для перетворення операційних вимог в:
опис програмної системи;
дизайн програмного забезпечення заданого розміру, конфігурації і якості;
документацію програмної системи у вигляді вимог і специфікацій для проектування;
процедури, необхідні для верифікації, тестування і ухвалення остаточного програмного продукту;
документацію, необхідну для його використовування і супроводу.
SwSE не є описом робіт. Це процес, який виконують багато людей і організацій: системні інженери, менеджери, програмні інженери, програмісти і, не варто забувати користувачі.
SwSe і програмна інженерія
І SwSE, і SwE — це технічні і управлінські процеси, проте SwE породжує програмні компоненти і що описує їх документацію. Більш строго, програмна інженерія включає наступне.
Практичне застосування комп'ютерних дисциплін, менеджменту і інших наук до аналізу, проектування, конструювання і обслуговування програмного забезпечення і пов'язаної з ним документації.
Наука інженерії, що застосовує методи аналізу, проектування, кодування, тестування, документування і управління з метою створення крупних, задовольняючих специфічним вимогам програм в певний час і з певними витратами.
Систематичне застосування методів, інструментів і методик, які дозволяють виконати обумовлені вимоги і добитися мети, створивши ефективну і корисну програмну систему.
Традиційна системна інженерія виконує первинний аналіз і проектування, а також інтеграцію і тестування остаточної системи.
Під час першої стадії розробки SwSE відповідає за аналіз вимог до програмного забезпечення і архітектурний дизайн. SwSE також управляє остаточним тестуванням програмних систем. Нарешті, SwE управляє тим, що системні інженери називають інженерією компонентів.
SwSe і управління проектом
Процес управління проектом включає оцінку ризиків і витрат на створення програмної системи, визначення графіка виконання, об'єднання різних фахівців і інженерних груп, конфігураційне управління і постійний аудит, що дозволяє гарантувати, що проект укладається в терміни і кошторис і відповідає технічним вимогам [6].
|
|
Мал. 2. Управлінські зв'язки між системною інженерією програмного забезпечення, програмною інженерією і проектним менеджментом |
|
Мал. 2 ілюструє управлінські зв'язки між проектним менеджментом, SwSE і SwE. Керівництво проектом включає загальне управління розподілом робіт в проекті і повноваження надання ресурсів. SwSE визначає технічний підхід, ухвалює технічні рішення, взаємодіє з технічними представниками замовника, а також схвалює і приймає кінцевий програмний продукт. SwE відповідає за розробку програмного дизайну, кодування і розробку програмних компонентів.
