ТИПІЗАЦІЯ ПРОЕКТНОЇ ДІЯЛЬНОСТІ В ГАЛУЗІ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ
Завантажити презентаціюПрезентація по слайдам:
ТИПІЗАЦІЯ ПРОЕКТНОЇ ДІЯЛЬНОСТІ В ГАЛУЗІ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ Говорущенко Тетяна Олександрівна, кандидат технічних наук, старший науковий співробітник, доцент Хмельницький національний університет
ПЕРЕДІСТОРІЯ грант: TEMPUS SAFEGUARD «National Safeware Engineering Network of Centres of Innovative Academia-Industry Handshaking»
ПЕРЕДІСТОРІЯ нейромережна модель та метод оцінювання якості проекту та прогнозування розроблюваного за проектом програмного забезпечення (ПЗ) на основі опрацювання значень метрик якості на етапі проектування інтелектуальна система опрацювання результатів метричного аналізу на етапі проектування (надає оцінку якості проекту та прогноз якості розроблюваного за проектом ПЗ) ОПРАЦЮВАННЯ РЕЗУЛЬТАТІВ МЕТРИЧНОГО АНАЛІЗУ:
ПЕРЕДІСТОРІЯ монографія: Мищенко В.О., Поморова О.В., Говорущенко Т.А. CASE-оценка критических программных систем. В 3-х томах. Том 1. Качество - Харьков: НАУ "ХАИ", 2012. - 201 с
АКТУАЛЬНІСТЬ ДОСЛІДЖЕННЯ Проекти різних категорій вимагають застосування різних методів управління Проекти ПЗ різних типів з різним призначенням та галуззю застосування вимагають кардинально різних оцінок якості (кардинально різного набору метрик) Перед оцінюванням якості ПЗ на етапі проектування слід визначити, до якого типу належить проект
АКТУАЛЬНІСТЬ ДОСЛІДЖЕННЯ Потрібна чітка класифікація (типізація) проектів з інформацією про характеристики кожного типу проектів, яка наразі відсутня Класифікація проектів ПЗ дасть змогу надавати експертні оцінки впливу типу та області застосування проекту на вибір метрик програмного забезпечення на етапі проектування, спрогнозувати життєвий цикл проекту ПЗ та проаналізувати сильні та слабкі сторони проектів такого типу
ОЗНАКИ ТИПІЗАЦІЇ ПРОЕКТІВ ПЗ розмір (кількість рядків програмного коду) за моделлю COCOMO методи проектування; функціональність; нефункціональні вимоги; засоби розроблення; сфера використання; ступінь новизни; рівень складності; спосіб застосування; характер стосунків із замовником/споживачем
Типи проектів ПЗ за розміром: органічні (organic) - 2-50 тисяч рядків програмного коду (програми, призначені для проміжних розрахунків, для потреб програміста, для наукових обчислень); розділені (semi-detached) - 50-300 тисяч рядків програмного коду (прикладні системи, компілятори); вбудовані (embedded) - більше 300 тисяч рядків коду (системи контролю повітряного руху, мережі ATM, військові системи).
Типи проектів ПЗ за методами проектування: функціонально-орієнтовані або структурні (function-oriented – structured) - ідентифікація основних функцій, а потім детальне розроблення цих функцій "згори-донизу"; об'єктно-орієнтовані (оbject-оriented) - базуються на концепції об'єктів, методів та атрибутів з використанням поліморфізму та інкапсуляції; проекти на основі структур даних (data-structure-centered) - сконцентровані в більшому ступені на структурах даних, ніж на функціях системи; компонентні (component-based) - сукупність програмних компонент, які мають однозначно визначені інтерфейси, залежності, зв'язки та можуть збиратись і розгортатись незалежно один від одного; сервіс-орієнтовані (service-oriented) - розроблення одиночних компонентів та груп компонентів, об'єднаних в більш крупні блоки, які забезпечують надання відповідної сервісної функціональності
Типи проектів ПЗ за функціональністю: базові (системні) - проекти операційних систем, сервісних програм, трансляторів мов програмування, програм технічного обслуговування прикладні - проекти прикладних програм різноманітного призначення: універсальні - проекти програм загального призначення; метод-орієнтовані - проекти ПЗ, що реалізує певний економічний або математичний метод розв'язку; проблемно-орієнтовані - проекти ПЗ, призначеного для розв'язку певної задачі в конкретній функціональній області; проекти ПЗ глобальних мереж - проекти ПЗ для забезпечення доступу користувача до територіально розподілених ресурсів, баз даних і т.і.; проекти ПЗ організації (адміністрування) обчислювального процесу - проекти ПЗ, яке керує адмініструванням даних, комутаторами, концентраторами, маршрутизаторами, трафіком і т.і.
Типи проектів ПЗ за нефункціональними вимогами: за атрибутами якості (quality attributes): за обмеженнями ресурсів (onstraints): бездефектні - проекти із надзвичайно високими вимогами до якості модульні - підвищені вимоги до якості в межах конкретного модуля та дотримання відповідності нормам якості інших об'єктів проекту стандартні - проекти із стандартними вимогами до якості монопроекти - окремі проекти певного типу мультипроекти - комплексні проекти, які складаються з низки монопроектів мегапроекти - включають як монопроекти, так і мультипроекти; вартість більше 1 млрд. доларів і тривалість 5-7 і більше років
Типи проектів ПЗ за засобами розроблення: проекти програм, які створюватимуться мовами програмування низького рівня; проекти програм, які створюватимуться мовами програмування високого рівня; проекти програм, які створюватимуться мовами програмування надвисокого рівня або:
Типи проектів ПЗ за засобами розроблення: проекти програм, які створюватимуться імперативними (процедурними) мовами програмування; проекти програм, які створюватимуться декларативними (функціональними або логічними) мовами програмування; проекти програм, які створюватимуться об'єктно-орієнтованими мовами програмування; проекти програм, які створюватимуться сценарними (скриптовими) мовами програмування; проекти програм, які створюватимуться мовами паралельних обчислень
Типи проектів ПЗ за сферою використання: виробничі - проекти ПЗ, яке забезпечуватиме роботу виробничих підрозділів, устаткування технологічні - проекти ПЗ, яке підтримує технологічні процеси фінансові - проекти ПЗ, яке забезпечує роботу із фінансовими операціями та документацією маркетингові - проекти ПЗ для маркетингових досліджень дослідницькі - проекти ПЗ для здійснення різногалузевих досліджень науковцями проекти критичного застосування - проекти ПЗ для систем критичного застосування (авіаційних та ракето-космічних комплексів, атомних електростанцій, нафтогазових комунікацій, залізничного транспорту, медичних систем і т.і.)
Типи проектів ПЗ за ступенем новизни: рутинні - проекти програм, які розробляються й модифікуються з дня у день новаторські - принципово нові проекти, для яких відсутня можливість порівняння з попередніми проектами
Типи проектів ПЗ за рівнем складності: проекти по розробленню/модифікації "відповідального" ПЗ (система управління атомним реактором) - проекти, які висувають підвищені вимоги до якості процесу розроблення, кваліфікації персоналу та якості продукту; проекти, пов'язані із складними багатофункціональними системами (система підприємства) - складність полягає у керуванні вимогами та координації зусиль великого колективу виконавців; малі проекти (Інтернет-магазини, сайти, стандартні додатки) - критичною для таких проектів є швидкість та вартість розробки; "наукомісткі" проекти (численні розрахунки, розробка нових спеціальних алгоритмів) - складність полягає у творчому характері процесу розробки; проекти по супроводу або модифікації великих успадкованих додатків, систем або баз даних (системи продажу авіа- або залізничних квитків) - основними труднощами для них є: великий обсяг погано документованого коду, над яким працювало кілька поколінь розробників; відсутність проектної документації; необхідність роботи із застарілими технологіями та платформами; недоступність відповідних фахівців
Типи проектів ПЗ за способом застосування: проекти по розробленню невідчужуваного ПЗ - ПЗ для власних потреб, «для себе»; проекти по розробленню «внутрішнього» ПЗ - ПЗ для наперед відомого, не широкого, кола користувачів без подальшого тиражування; проект по розробленню або модифікації ПЗ для конкретного замовника; проект по розробленню "коробкового" продукту
Типи проектів ПЗ за характером стосунків із замовником: аутсорсингові проекти - постановка цілей і частково керування проектом ведуться на боці замовника; на боці виконавця ведеться, в основному, реалізація та кодування; проекти на замовлення - постановка цілей частково відбувається на боці замовника, але все керування проектом ведеться на боці виконавця; проекти модифікації або супроводу ПЗ третьої сторони; проекти ініціативного розроблення - всі аспекти проекту (постановка цілей, планування, керування, розробка і супровід) ведуться на боці виконавця
Проведена типізація проектів ПЗ забезпечує: побудову моделей та діаграм життєвого циклу проекту, які дозволять проаналізувати сильні та слабкі сторони проектів такого типу; прогнозування життєвого циклу проектів за побудованими моделями та діаграмами; визначення та застосування найкращих практичних методик для вибору проектів та визначення пріоритетів; вибір та застосування методик для планування, реалізації і контролю проектів; вибір та застосування методів управління ризиками у проекті; визначення та застосування стандартів і процедур управління проектами; розроблення спеціалізованих знань по управлінню проектами; відбір та навчання менеджерів проектів та фахівців з управління проектами; надання експертних оцінок впливу типу та області застосування проекту на вибір метрик складності та якості програмного забезпечення на етапі проектування; покращення якості, зменшення складності, зниження витрат на реалізацію та підвищення ефективності розроблюваного за обраним проектом ПЗ. Невирішеною наразі залишається задача оцінювання ефективності та інформативності метрик якості для проектів різних типів
КОНТАКТИ: 29016, Україна, м.Хмельницький, вул.Інститутська, 11 Хмельницький національний університет Кафедра системного програмування Говорущенко Тетяна Олександрівна - доцент кафедри системного програмування tat_yana@ukr.net
Схожі презентації
Категорії