lign="justify"> Оптимізація. При високих вимогах до ефективності програми за швидкістю і пам'яті на основі псевдокоду приймаються рішення з оптимізації програми: виділяються ділянки коду програми, які доцільно виділити в процедури, виділяються цикли, за якими можна оцінити найбільш повільні місця програми. За структурою даних можна оцінити потрібну пам'ять. Інакше кажучи, на даному етапі є всі необхідні дані для оцінки параметрів програми. Якщо програма не задовольняє вимогам ефективності, то слід повернутися до п. 5, 4 або навіть 2. В крайньому випадку, якщо з'ясовується неможливість задовольнити вимогам технічного завдання, доводиться повертатися до п. 1.
Підготовка налагодження. На схемі програми виділяються місця, де будуть використовуватися засоби налагодження, і приймаються рішення про те, які кошти будуть застосовані. Налагоджувальні засоби ставляться у вузлових точках схеми, на входах в процедури, на довгих лінійних ділянках ставлять проміжні друку.
Тести. Розробляються за схемою і технічним завданням на програму. Визначаючи кількість тестів, необхідно стежити, щоб перевірялися всі можливі варіанти зовнішнього ефекту алгоритму і щоб всі гілки схеми були пройдені мінімум один раз. Для кожного тесту виписуються вихідні дані, результати і ті дані, які повинні видати відлагоджувальні кошти. При складанні тестів можуть бути виявлені помилки, для коригування яких слід повернутися до п. 5 або 4, а далі повторно пройти етапи 5, 6, 7, так як зміни в схемі програми можуть призвести до іншої розстановці налагоджувальних засобів та іншого комплекту тестів.
Програмування. Переклад програми зі схеми або іншого псевдокоду на конкретну мову програмування. Якщо на даному етапі з'ясовується можливість поліпшити організацію даних, слід повернутися до п. 4.
Тестування та налагодження. Записана на мові програмування програма виконується з тестовими вихідними даними з метою виявлення помилок (тестування). Якщо результати виконання розходяться з очікуваними, то вживаються заходи до пошуку причин розбіжності (налагодження). Для виправлення помилки необхідно перепрограмувати якусь частину програми, тобто повернутися до п. 4 або 5.
Рахунок. По завершенні відладки із програми видаляються відлагоджувальні кошти, програма записується в оттранслировать вигляді на магнітні носії. Потім програма надходить в експлуатацію.
Документація. Якщо програма призначена для тривалої експлуатації, то при ній необхідно мати повну документацію. Особливо це важливо, якщо програма експлуатується не її автором.
Такі основні етапи розробки програми.
Моделі якості процесів конструювання
У сучасних умовах, умовах жорсткої конкуренції, дуже важливо гарантувати високу якість вашого процесу конструювання ПЗ. Таку гарантію дає сертифікат якості процесу, що підтверджує його відповідність прийнятим міжнародним стандартам. Кожен такий стандарт фіксує свою модель забезпечення якості. Найбільш авторитетні моделі стандартів ISO 9001: 2000, ISO/IEC 15504 і модель зрілості процесу конструювання ПЗ (Capability Maturity Model - СММ) Інституту програмної інженерії при американському університеті Карнегі-Меллон.
Модель стандарту ISO 9001: 2000 орієнтована на процеси розробки з будь-яких областей людської діяльності. Стандарт ISO/IEC 15504 спеціалізується на процесах програмної розробки і відрізняється більш високим рівнем деталізації. Досить сказати, що обсяг цього стандарту перевищує 500 сторінок. Значна частина ідей ISO/IEC 15504 взята з моделі СММ.
Базовим поняттям моделі СММ вважається зрілість компанії [61], [62]. Незрілої називають компанію, де процес конструювання ПО і прийняті рішення залежать тільки від таланту конкретних розробників. Як наслідок, тут висока ймовірність перевищення бюджету або зриву термінів закінчення проекту.
Навпаки, у зрілій компанії працюють ясні процедури управління проектами та побудови програмних продуктів. У міру необхідності ці процедури уточнюються і розвиваються. Оцінки тривалості і витрат розробки точні, грунтуються на накопиченому досвіді. Крім того, в компанії є і діють корпоративні стандарти на процеси взаємодії з замовником, процеси аналізу, проектування, програмування, тестування і впровадження програмних продуктів. Все це створює середовище, яке забезпечує якісну розробку програмного забезпечення.
Таким чином, модель СММ фіксує критерії для оцінки зрілості компанії і пропонує рецепти для поліпшення існуючих в ній процесів. Іншими словами, в ній не тільки сформульовані умови, необхідні для досягнення мінімальної організованості процесу, а й даються рекомендації щодо подальшого вдосконалення процесів.
Дуже важливо відзначити, що модел...