Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2014 Лекції ТСПП (8-14).pdf
Скачиваний:
97
Добавлен:
12.02.2016
Размер:
2.99 Mб
Скачать

і вибору технологічного інструментарію рішення. Також ролевий кластер "Розробка" створює функціональні прототипи для перевірки правильності ухвалених рішень і зменшення ризику.

Як творці програмного рішення, розробники здійснюють низькорівневе проектування самої програми і її елементів, оцінюють трудовитрати на реалізацію, а потім здійснюють побудову самого програмного рішення. Розробники самі оцінюють власні витрати і відстежують розклад, оскільки їх повсякденна діяльність зв'язана з різними нештатними ситуаціями. Ця концепція називається оцінюванням від низу до верху (bottom-up estimation) і є фундаментальною частиною філософії MSF. Мета даної концепції полягає в досягненні більшої обґрунтованості календарного плану і збільшенні відчуття відповідальності тих, хто визначає терміни цього плану, і від чиєї продуктивності залежить його виконання.

Ролевий кластер "Розробка" містить в собі наступні області компетенції:

1.Технологічне консультування,

2.Проектування і здійснення реалізації,

3.Розробка програмних рішень,

4.Розробка інфраструктури.

Області компетенції

1. Технологічне консультування

Виконання функцій технологічних консультантів.

Оцінювання і верифікація технологій.

Активна участь в створенні і обговоренні функціональної специфікації.

Внесок в створення корпоративних стандартів розробки програмного забезпечення. Область компетенції "Технологічне консультування" (technology consulting) служить

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

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

2. Проектування і здійснення реалізації

Співвідношення архітектури вирішення з архітектурою підприємства.

Створення і реалізація логічного і фізичного дизайну рішення.

Область компетенції "Проектування і здійснення реалізації" (implementation

architecture and design) пов'язана з набором завдань, що відносяться до визначення архітектури рішення і його проектування.

Ролевий кластер "Управління програмою" відповідальний за загальну архітектуру рішення і її позиціонування в рамках архітектури підприємства. Проте ролевий кластер

33

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

MSF пропонує три-рівневий процес проектування: концептуальний дизайн (conceptual design), логічний дизайн (logical design) і фізичний дизайн (physical design). "Управління програмою" і "Управління продуктом" спільно здійснюють концептуальний дизайн. Він включає сценарії використання (user scenarios), високорівневий аналіз вимог до зручності експлуатації (usability), концептуальне моделювання даних і початковий вибір використовуваних технологій. Розробники ж займаються логічними і фізичними аспектами дизайну рішення. Дана діяльність вимагає адекватних технологічних знань і уміння визначити вплив того або іншого технологічного вибору на створюване рішення.

3. Розробка програмних рішень

Програмування складових рішення відповідно до проектної документації.

Аналіз і обговорення програмної коди (code reviews) з метою обміну знаннями і досвідом.

Здійснення тестування модулів (unit testing) відповідно до плану і в координації з ролевим кластером "Тестування".

Область компетенції "Розробка застосувань" (application development) пов'язана з

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

Розробники вносять свій внесок до вироблення стандартів і досконально слідують їм в процесі роботи над рішенням. Вони також здійснюють аналіз і обговорення програмної коди (code reviews), щоб оцінити якість виконаної роботи. Проведення такого аналізу дозволяє членам проектної групи ділитися накопиченими знаннями і досвідом, утілюючи в життя фундаментальний принцип MSF – витягання уроків на рівні команди. Від розробників вимагається проведення належного тестування модулів (unit testing) і адекватне документування цього процесу. Така робота здійснюється в тісному зв'язку з ролевим кластером "Тестування", який планує і виконує незалежну оцінку якості рішення.

4. Розробка інфраструктури

Створення складових рішення відповідно до проектної документації.

Аналіз і обговорення програмної коди з метою обміну знаннями і досвідом.

Здійснення тестування модулів відповідно до плану і в координації з ролевим кластером "Тестування".

Розробка скриптів автоматизації.

Створення документації для впровадження.

Область компетенції "Розробка інфраструктури" (infrastructure development) пов'язана

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

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

34

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]