- •Базові поняття swebok
- •4. Назвати цілі і завдання програмної інженерії.
- •5. Назвати базові поняттями еr-моделі даних, з якою метою її будують?
- •Дати визначення життєвого циклу розробки програмного забезпечення . Які основсі процеси включають це поняття ?
- •Описати використання методу покрокової деталізації при розробці алгоритміів і структури програмного забезпечення. У чому , по вашому, полягає основка складність даного методу?
- •10 . Назвати міжнародний стандарт, який визначає перелік і зміст процесів жц програмного продукту та описати його зміст?
- •13. Дати визначення процесу життєвого циклу пз та описати склад процесів життєвого циклу, який регламентується міжнародним стандартом.
- •Обгрунтувати потребу в передпроектних дослідженнях для формування вимог до програмного забезпечення.
- •17. Обгрунтувати суть об'єктної декомпозиції?
- •19 Назвати основні етапи розробки програмного забезпечення. Які основні завдання вирішуються на цих етапах?
- •20 Обгрунтувати, для чого використовують мову uml? Чому її називають мовою моделювання? Чим обумовлений вибір саме цієї мови як стандарту опису об'єктних розробок?
- •21 Назвати основні моделі життєвого циклу програмного забезпечення. З чим пов'язана поява нових моделей?
- •23. Обгрунтуйте появу case-технологій.
- •28. Обгрунтувати, які відносини між основними поняттями наочної області відображають концептуальні моделі?
- •30.Описати, які діаграми uml застосовують для опису поведінки програмного забезпечення, що проектуємо?
- •31. Перерахувати дев’ять найкращих навиків, рекомендованих методикою spmn.
- •32. Обгрунтувати поняття «системні події» і « системні операції»? Що необхідно для побудови діаграми послідовностей системи?
- •33. Пояснити п’ять рівнів технологічної зрілості моделі смм.
- •35. Перерахувати основні положення технології rad? Які програмні системи не можна розробляти з використанням цієї технології?
- •Пояснити моделі якості процесів розробки програмного забезпечення? Для чого вони розроблені? Що гарантує сертифікація якості процесів? Чому?
- •39. Назвати дійових осіб процесу формування вимог.
- •40. Обгрунтувати, які стереотипи класів введені і чому?
- •41. Обгрунтувати, чому ми говоримо, що сучасний етап розвитку технології програмування характеризується переходом від ремісничого до промислового виробництва програмного забезпечення?
- •42.Пояснити, яку діаграму використовують при уточненні взаємодії об'єктів?
- •43.Пояснити, як називається фаза життєвого циклу розробки програмного забезпечення, на якій формується контракт між замовником і виконавцем розробки?
- •44.Перерахувати основні компоненти класів. Як описують ці компоненти?
- •45.Обгрунтувати, що повинно міститися в звіті щодо аналізу здійсненності створення пз.
- •46.Пояснити, у яких випадках використовують діаграми станів об'єкту?
- •47.Описати процес формування і аналізу вимог.
- •Описати підхід з використанням різних опорних точок зору для побудови і організації як процесу формування вимог, так і безпосередньо самих вимог.
- •Пояснити, яку інформацію містить діаграма розміщення? у яких випадках доцільно використовувати ці діаграми?
- •Виділити типи програмних продуктів?
- •Обгрунтувати. Метод uml пропонує різні нотації (графічні діаграми) для різних аспектів опису проблеми. Чому не єдину?
- •Назвати основні експлуатаційні вимоги до програмних продуктів. Якими засобами і прийомами забезпечується кожен з них? Для яких типів програмних систем доцільно вказувати кожен з них?
- •Пояснити, які значення можуть мати атрибути видимості класів та що вони означають?
- •55. Обгрунтувати, у яких ситуаціях необхідні передпроектні дослідження? Які питання при цьому вирішують? Що отримують в результаті таких досліджень?
- •56. Назвати, які відношення позначаються в діаграмі класів uml спеціальними графічними символами?
- •57. Назвати, який розділ технічного завдання можна вважати основним і чому? Яку інформацію повинна містити решта розділів? у чому основна складність розробки технічного завдання?
- •58. Обґрунтувати, які діаграми uml доцільно застосовувати для аналізу вимог? з якої діаграми доцільно починати?
- •59. Обґрунтуйте, які принципові рішення повинні бути прийняті на початкових етапах процесу проектування і чому?
- •60. Обгрунтувати, які діаграми відображають обмін повідомленнями як єдиний засіб взаємодії об’єктів?
- •61. Визначити суть структурного підходу до програмування? Які етапи охоплює даний підхід?
- •62. Обгрунтувати, чи можна застосувати ті самі діаграми для кількох стадій розроблення пз?
- •Пояснити, яка роль стереотипів у нотаціях uml?
- •65. Обгрунтуйте, у яких випадках доцільно використовувати діаграми переходів станів? Які умовні позначення використовуються для побудови цієї діаграми?
- •66. Пояснити, що таке прототип у спіральній моделі?
- •67. Обгрунтувати, у чому полягає основна відмінність між функціональними діаграмами і діаграмами потоків даних? у яких випадках використання діаграм потоків даних є домінуючим?
- •68. Пояснити термін «модель життєвого циклу пз».
- •71 Описати побудову sadt-моделі.
- •Вказати, який міжнародний стандарт визначає перелік і зміст процесів життєвого циклу програмного продукту?
33. Пояснити п’ять рівнів технологічної зрілості моделі смм.
П’ять рівнів технологічної зрілості СММ
Початковий. Найпримітивніший статус організації. Організація здатна розробляти ПЗ. Організація не має явно усвідомленого процесу, і якість продукту цілком визначається індивідуальними здібностями розробників. Один проявляє ініціативу і команда слід його вказівкам. Успіх одного проекту не гарантує успіх іншого. При завершенні проекту не фіксуються дані про трудовитратах, розклад і якості.
Повторюваний. В деякій мірі відстежується процес. Робляться записи по трудових витратах і планах. Функціональність кожного проекту описана в письмовій формі. У середині 99-го лише 20% організацій мали 2-й рівень або вище.
Встановлений. Мають певний, документований і встановлений процес роботи, що не залежить від окремих особистостей. Тобто вводяться узгоджені проф. стандарти, а розробники їх виконують. Такі організації в змозі достатньо надійно передбачати витрати на проекти, аналогічні виконаним раніше.
Керований. Можуть точно передбачити терміни і вартість робіт. Є база даних накопичених вимірів. Але немає змін при появі нових технологій і парадигм.
Оптимізований. Є постійно діюча процедура пошуку і освоєння нових і поліпшених методів та інструментів.
34 Показати, як описують операції для діаграми послідовностей?
На діаграмах послідовностей буде показано обмін повідомленнями (тобто виклик методів) між декількома об’єктами у окремій обмеженій часом ситуації. Об’єкти є екземплярами класів. Основний наголос на діаграмах послідовностей робиться на порядок і моментах часу, у які повідомлення надсилаються об’єктам.
На діаграмах послідовностей об’єкти буде показано вертикальними штриховими лініями з назвою об’єкта над ними. Вісь часу також має вертикальний напрямок, її спрямовано вниз, повідомлення, які надсилаються від одного об’єкта до іншого, буде позначено стрілками з назвами операції і параметрів.
Основні операції :
Стрілка від одного життя до іншого. Показує взаємодія об'єктів.
Синхронне повідомлення позначається зафарбованою стрілкою, асинхронне - незакрашенним. У нотації до 2.0, асинхронні повідомлення позначалися "спиляним" знизу наконечником стрілки. Повернення показується пунктирною стрілкою, у зворотному напрямку.
35. Перерахувати основні положення технології rad? Які програмні системи не можна розробляти з використанням цієї технології?
Основні положення RAD можна сформулювати наступним чином: - Робота ведеться групами. Типовий склад групи - керівник, аналітик, два програміста, технічний письменник. Розробка проекту виконується в умовах тісної взаємодії між розробниками і Замовником. - Розробка базується на моделях. Моделювання дозволяє оцінити проект і виконати його декомпозицію на складові частини, кожна з яких може розроблятися окремої RAD-групою. - Ітераційне прототипування. Розробка системи і пред'явлення її замовнику здійснюється у вигляді послідовності розвиваються прототипів. Будь-який з прототипів реалізує певну частину функціональності, необхідної від кінцевого продукту.
- RAD група завжди працює тільки над одним прототипом. Це забезпечує єдність цілей, кращу наблюдаемость і керованість процесом розробки, що в підсумку підвищує якість кінцевого продукту. Відповідно використовувані інструментальні засоби повинні забезпечувати групову розробку і конфігураційне управління проектом. - Якщо проект складний, то для нього може бути виділено декілька RAD груп. Великі системи розбиваються на підсистеми.Кожна підсистема розробляється незалежною групою. Ключ успіху - правильне розбиття системи на підсистеми. Команди повинні використовувати загальні стандарти. Обов'язково фінальне тестування повної системи. - Обов'язкове використання інструментальних засобів, що автоматизують процес розробки, і методик їхнього використання, наслідком чого є скорочення термінів розробки і підвищення якості кінцевого продукту. Принципи RAD застосовуються не тільки при реалізації, але й поширюються на всі етапи життєвого циклу, зокрема на етап обстеження організації, побудови вимог, аналіз і дизайн.
Програмні проети неможна розробляти наприклад, в проектах, де вимоги до програмного продукту чітко визначені і не повинні змінюватися, залучення замовника впроцес розробки не потрібно і більш ефективною може бути ієрархічна розробка (каскадний метод). Те ж стосується проекті ПО, складність яких визначається необхідністю реалізації складних алгоритмів, а роль і обсяг користувацького інтерфейсу невеликий.
