Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конструювання програмного забезпечення.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
139 Кб
Скачать
☆

3.3 Кодування (Coding)

Практика конструювання програмного забезпечення показує активне застосування таких міркувань і технік:

• техніки створення легко розуміється вихідного коду на основі використання угод про іменуванні, форматування і структурування коду;

• використання класів, що перераховуються типів, змінних, іменованих констант та інших виразних сутностей;

• організація вихідного тексту (у вирази, шаблони, класи, пакети / модулі та інші структури)

• використання структур управління;

• обробка помилкових умов і виняткових ситуацій

• запобігання можливих проломів в безпеці (наприклад, переповнення буфера або вихід за межі індексу в масиві)

• використання ресурсів на основі застосування механізмів виключення (з розгляду) та порядку доступу до паралельно використовуваних ресурсів (наприклад, на основі блокування даних, використання потоків і їх синхронізації і т.п.)

• документування коду

• тонка "настройка" коду

• рефакторинг (не згадується SWEBOK)

3.4 Тестування в конструюванні (Construction Testing)

При конструюванні використовуються дві форми тестування, проведеного інженерами, безпосередньо створюють вихідний код:

• модульне тестування (unit testing)

• інтеграційне тестування (integration testing)

Головна мета тестування в конструюванні зменшити часовий розрив між моментом прояви помилок, що є в коді, і моментом їх виявлення. У багатьох випадках, тестування в конструюванні проводиться після того, як код написаний. У ряді випадків, тести (що зазначалося раніше, на прикладі XP) пишуться до того, як створюється код.

Тестуванні в конструюванні зазвичай включає підмножина видів тестування, описаних в галузі знань "Тестування програмного забезпечення" (Software Testing). Наприклад, тестування в конструюванні зазвичай не включає системного тестування, тестування навантаження, usability-тестування (оцінки прозорості використання) та інших видів тестової діяльності.

IEEE опублікував два стандарти, присвячених даній темі:

• IEEE Std 829-1998: "IEEE Standard for Software Test Documentation"

• IEEE Std 1008-1987: "IEEE Standard for Software Unit Testing"

Напряму з цією темою пов'язані під-теми SWEBOK 2.1.1 "Unit Testing" та 2.1.2 "Integration Testing".

3.5 Повторне використання (Reuse)

У вступі в стандарт IEEE Std. 1517-99 "IEEE Standard for Information Technology - Software Lifecycle Process - Reuse Processes" дається таке розуміння повторному використанню в програмному забезпеченні: "Реалізація повторного використання програмного забезпечення передбачає і тягне за собою щось більше, ніж просто створення і використання бібліотек активів. Воно вимагає формалізації практики повторного використання на основі інтеграції процесів і діяльності з повторного використання в сам життєвий цикл програмного забезпечення. "В той же час, повторне використання досить важливо і безпосередньо при конструюванні програмних систем, що підкреслюється включенням цієї теми в обговорювану область знань конструювання ПЗ . Завдання, пов'язані з повторним використанням у процесі конструювання та тестування, включають:

• вибір одиниць (units), баз даних тестових процедур, даних <отриманих в результаті> тестів і самих тестів, які підлягають повторному використанню

• оцінку потенціалу повторного використання коду і тестів

• відстеження інформації та створення звітності з повторного використання в новому коді, тестових процедурах і даних, отриманих в результаті тестів.