Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
До іспиту КПЗ.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
343.04 Кб
Скачать

8. Розвиток інкрементального підходу. Xp-процессы.

- екстремальне програмування XP (Кент Бек, 1999). Воно орієнтоване на дуже малі прирости функціональності.

- модель швидкої розробки додатків RAD (Rapid Application Development). RAD-модель забезпечує естремально короткий цикл розробки. Швидка розробка досягається за рахунок використання компонентно орієнтованого конструювання. Якщо вимоги повністю визначені, а проектна область обмежена, RAD- процес дозволяє групі створити повністю функціональну систему за 60-90 днів.

Виділяють наступні етапи:

- бізнес-моделювання. Моделюються інформаційні потоки між бзнесм-функциями.

- моделювання даних. Інформаційний потік відображається в набір об'єктів даних.

- моделювання обробки. Визначаються перетворення об'єктів даних, що забезпечують реалізацію бізнес-функцій.

- генерація додатку. Використовуються мови програмування 4-го покоління, готові компоненти, для конструювання утиліти автоматизації.

- тестування і об'єднання. Застосування повторно використовуваних компонентів зменшує час тестування.

Кожна головна функція розробляється окремою групою розробників паралельно не більше 3 місяців, а потім вони інтегруються в цілу систему.

Недоліки застосування RAD:

1. Для великих проектів потрібні значні людські ресурси для створення груп.

2. Модель застосовна тільки для тих систем, які можуть декомпозіроваться на окремі модулі і в яких продуктивність не є критичною величиною.

3. Не застосовна в умовах високих технічних рисок, тобто при використанні нової технології.

У сучасній програмній інженерії виділяють два сімейства процесів розробки:

- прогнозуючі (predictive) або ваговиті (heavyweight) процеси - прогнозується весь об'єм робіт, великий об'єм документації, строгий порядок розробки, фіксовані вимоги і численна група розробників різної кваліфікації.

- подвижные (agile) или облегченные (lightweight) процессы- учитывают особенности современного заказчика, т.е. частые изменения его требований, привлекательны отсутствием бюрократизма. Необходима малочисленная группа высоко квалифицированных разработчиков и грамотный заказчик, согласный участвовать в разработке.

Екстремальне програмування - це полегшений процес (Кент Бек, 1999). Він орієнтований на групи малого і середнього розміру, що працюють в умовах невизначених і таких, що швидко змінюються вимог. До групи входить до 10 співробітників, що працюють в одному приміщенні.

На всьому протязі ітераційного циклу вимоги постійно міняються, причому цикл складається з дуже коротких ітерацій.

Базові дії на кожній ітерації: кодування, тестування, вислухування замовника, проектування.

Динамізм забезпечується наступними характеристиками:

- безперервний зв'язок із замовником;

- простота (завжди вибирається мінімальне рішення)

- швидкий зворотний зв'язок (модульне і функціональне тестування)

- сміливість в проведенні профілактики можливих проблем.

Базис XP утворюють 12 методів:

1. Гра планування - Локальний замовник забезпечує набір "історії", які описують необхідну функціональність. До кожної нової версії до поточного набору "історій" вносяться найбільш важливі історії.

2. Часта зміна версій нові версії кожні 2 тижні.

3. Метафора -вся розробка проводиться на основі простої загальнодоступної історії про те як працює система. Історії забезпечують замовники.

4. Просте проектування

5. Тестування - безперервне написання тестів для модулів. Вхідним критерієм для написання коди є тестовий варіант, що відмовив. Замовники беруть участь в тестуванні.

6. Реорганізація - система реструктуризується, але її поведінка не міняється. Мета спростити систему, поліпшити взаємодію або додати в неї гнучкість.

7. Парне програмування -весь код пишеться двома програмістами, що працюють на одному комп'ютері.. Воно приводить до підвищення якості і зменшення часу циклу на 40-50%, при збільшенні витрат на ресурси на 15%

8. колективне володіння кодом-любой розробник може змінити будь-який фрагмент коди у будь-який час. Безперервна інтеграція, тестування і парне програмування забезпечує захист від проблем, що виникають при цьому.

9. Безперервна інтеграція -інтегрірованіє системи кілька разів в день у міру завершення кожного завдання.

10. 40-годинний тиждень -нельзя працювати наднормово.

11. Локальний замовник - в групі весь час повинен знаходитися представник замовника, готовий відповідати на всі питання.

12. Стандарти кодування - правила, що забезпечують однакове представлення програмної коди.