- •Короткий конспект для підготовки до іспиту з предмета"Конструювання програмних засобів"
- •1. Цілі і завдання конструювання пз. Особливості сучасних великих проектів іс
- •2. Основні визначення. Програмні засоби. Програмне забезпечення (пз). Програмний продукт. Проектування пз. Програмування.
- •3. Класифікація типів програмного забезпечення.
- •4. Життєвий цикл (жц) пз. Процеси жц пз.
- •5. Моделі жц пз. Каскадна модель. Зміст етапів створення пз.
- •6. Моделі жц пз. Спіральна модель. Зміст етапів створення пз.
- •7. Моделі жц пз. Інкрементальная модель. Зміст етапів створення пз.
- •8. Розвиток інкрементального підходу. Xp-процессы.
- •9. Міжнародні стандарти проектування, розробки, оформлення документації, призначеного для користувача інтерфейсу пз.
- •10. Вимірювання, заходи і метрики. Розмірно-орієнтовані метрики. Функціонально-орієнтовані метрики.
- •11. Виконання оцінки проекту на основі loc- і fp-метрик
- •12. Проект. Склад і структура колективу розробників, їх функції.
- •13. Структурний підхід до проектування іс. Суть структурного підходу
- •14. Структурний підхід до проектування іс. Case - засоби розробки пз.
- •15. Методологія функціонального моделювання sadt. Склад функціональної моделі. Ієрархія діаграм. Типи зв'язків між функціями. Приклади функціональних моделей в стандарті Idef0.
- •16. Моделювання потоків даних (процесів). Зовнішня суть. Системи і підсистеми. Процеси. Накопичувачі даних. Потоки даних. Побудова ієрархії діаграм потоків даних.
- •17. Моделювання даних. Case-метод Баркера. Методологія Idef1.
- •18. Проектування іс на основі об'єктно-орієнтованого підходу. Зіставлення і взаємозв'язок структурного і об'єктно-орієнтованого підходів.
- •20. Раціональний Уніфікований Процес. Динамічні аспекти процесів: структура жц, стадії, ітерації і контрольні крапки.
- •21. Раціональний Уніфікований Процес. Статичний зміст процесу: види діяльності (технологічні операції), робочі продукти, виконавці і дисципліни (технологічні процеси).
- •22. Якість програмного продукту. Критерії якості пз.
- •1. Зовнішні
- •2. Внутрішні
- •23. Сертифікація фірм розробників по моделі якості смм.
- •24. Документація, що створюється в процесі розробки програмних засобів. Документи управління розробкою пз. Документи, що входять до складу пз.
- •25. Призначена для користувача документація.
- •26. Документація по супроводу програмних засобів.
- •27. Людський чинник в управлінні проектами. Завдання n-личностей. Закон Брукса. Підходи до управління групами і керівництва ними.
23. Сертифікація фірм розробників по моделі якості смм.
Capability Maturity Model - комерційна сертифікація. Розроблена в університеті Карнеги-мелон "описує принципи і практичні рішення, що визначають рівень якості процесу розробки програмного забезпечення і покликана допомогти організаціям-виробникам удосконалити процеси розробки еволюційним шляхом, перетворивши їх з хаотичних процесів в процеси із строгою дисципліною" (http://www.sei.cmu.edu).
Спочатку розроблялася для урядових організацій США для якнайкращого вибору постачальників ПО.
Ключовим поняттям стандарту є зрілість організації. За незрілу вважається організація, в якій процес розробки програмного забезпечення залежить тільки від конкретних виконавців і менеджерів, а рішення часто просто імпровізуються "на ходу" - те, що на сучасній мові називається творчим підходом, або мистецтвом. В цьому випадку велика вірогідність перевищення бюджету або виходу за рамки термінів здачі проекту, тому менеджери і розробники вимушені займатися тільки дозволом актуальних проблем, стаючи тим самим заручниками власного програмного продукту. На жаль, на даному етапі розвитку знаходяться більшість компаній (по градації CMM цей рівень позначається числом 1).
У зрілій організації, навпаки, є чітко певні процедури створення програмних продуктів і відпрацьовані механізми управління проектами. Всі процедури і механізми в міру необхідності уточнюються і удосконалюються в пілотних проектах. Оцінки часу і вартості виконання робіт грунтуються на накопиченому досвіді і достатньо точні. Нарешті, в компанії існують стандарти на процеси розробки, тестування і впровадження, а також правила оформлення кінцевої програмної коди, компонентів, інтерфейсів і так далі Все це складає інфраструктуру і корпоративну культуру, що підтримує процес розробки програмного забезпечення. Технологія випуску буде лише трохи мінятися від проекту до проекту на підставі абсолютних стабільних і перевірених підходів.
CMM визначає п'ять рівнів зрілості організацій. В результаті атестації компанії привласнюється певний рівень, який надалі може підвищуватися або знижуватися. Слід зазначити, що кожен наступний рівень включає всі ключові характеристики попередні.
(1) Початковий рівень (initial level) - це основний стандарт. До даного рівня, як правило, відноситься будь-яка компанія, якою вдалося отримати замовлення, розробити і передати замовникові програмний продукт. Підприємства першого рівня не відрізняються стабільністю розробок. Як правило, успіх одного проекту не гарантує успішність наступного. Для компаній даного рівня властиві нерівномірність процесу розробки - наявність авралів в роботі. До цієї категорії можна віднести будь-яку компанію, яка хоч якось виконує узяті на себе зобов'язання.
(2) Повторюваний рівень (repeatable level). Даному рівню відповідають підприємства, що володіють певними технологіями управління проектами. Планування і управління в більшості випадків грунтується на наявному досвіді. Як правило, в компанії даного рівня вже вироблені внутрішні стандарти і організовані спеціальні групи перевірки якості.
(3) Певний рівень (defined level). Рівень характеризується наявністю формального підходу до управління (тобто описані всі типові дії, необхідні для багатократного повторення: ролі учасників, формати документів, вироблювані дії і ін.). Для створення і підтримки подібного стандарту в актуальному поляганні в організації вже підготовлена спеціальна група. Компанія постійно проводить спеціальні тренінги для підвищення професійного рівня своїх співробітників. Починаючи з цього рівня організація перестає залежати від особових якостей конкретних розробників і не має тенденції скачуватися на нижчестоячі рівні. Абстрагування від розробників обумовлене продуманим механізмом постановки завдань і контролю виконання.
(4) Керований рівень (managed level). Рівень, при якому встановлюються кількісні показники якості.
(5) Оптимізуючий рівень (optimizing level) характеризується тим, що заходи щодо вдосконалення розраховані не тільки на існуючі процеси, але і на оцінку ефективності введення нових технологій. Основним завданням всієї організації на цьому рівні є постійне вдосконалення існуючих процесів, яке в ідеалі покликане сприяти попередженню можливих помилок або дефектів. Застосовується механізм повторного використання компонентів від проекту до проекту, наприклад шаблони звітів, формати вимог.
Вивід:
Перші три рівні - це в основному технологічні вимоги.
4 і 5 - управлінські.
