SlideShare una empresa de Scribd logo
1 de 19
Введення в програмну
     інженерію
Зміст

Основні поняття
Відмінності програмної інженерії від інших галузей
Еволюція підходів до управління програмними
проектами
Моделі процесу розробки ПЗ
Вибір моделі процесу
Що треба робити для успіху програмного проекту
Висновки
Основні поняття

Програмна інженерія -- це застосування певного
систематичного вимірного підходу при розробці,
експлуатації та підтримці програмного
забезпечення
Термін software engineering (програмна інженерія)
вперше з'явився в назві конференції НАТО, що
відбулася в Німеччині в 1968 році і присвяченій так
званій кризі програмного забезпечення.
Основні поняття

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

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

                             Розгортання
                 Впроваджен        Впроваджен
                 ня версії 1.0     ня версії 2.0



                                                   Супровід


                                   Час
Основні поняття

Процес розробки ПЗ - сукупність процесів, що
забезпечують створення і розвиток програмного
забезпечення.
Модель процесу розробки ПЗ - формалізоване
представлення процесу розробки ПЗ. Часто при описі
процесів замість слова модель вживається термін
методологія, що призводить до невиправданого
розширення даного поняття.
Згідно SWEBOK 2004, програмна інженерія включає в
себе 10 основних і 7 додаткових галузей знань, на яких
базуються процеси розробки ПЗ.
Відмінності програмної інженерії
       від інших галузей

 Програмування - не мистецтво і не наука - це
 ремесло. Сьогодні ми так само далекі від
 індустріальної розробки програм, як і 50 років
 тому.
Еволюція підходів до управління
   програмними проектами

 «Як вийде»
 «Водоспад» або каскадна модель
 «Гнучке управління»
 «Метод частих поставок»

 Класичні методи управління перестають
 працювати у випадках, коли структура і
 властивості керованого об'єкта нам не відомі і/або
 змінюються з часом
Моделі процесу розробки ПЗ

 ГОСТ 19 «Єдина система програмної документації»
 ГОСТ 34 «Стандарти на розробку та супровід
 автоматизованих систем»

 Строге проходження цим гостами не тільки
 призводить до водоспадного підходу, але і
 вимагає дуже високого ступеня формалізованості
 розробки
Моделі процесу розробки ПЗ
          (SW-CMM)

Створений за замовленням військових Інститутів
програмної інженерії США
Дана модель визначає п'ять рівнів зрілості процесу
розробки ПЗ:
  Початковий
  Повторюваний
  Визначений
  Керований
  Оптимізуючий
Моделі процесу розробки ПЗ
          (RUP)

Розроблений співробітниками компанії «Rational
Software»
Доповнення до мови моделювання UML
Модель RUP описує абстрактний загальний процес,
на основі якого організація або проектна команда
повинна створити конкретний спеціалізований
процес, орієнтований на її потреби
Моделі процесу розробки ПЗ
          (MSF)
Microsoft Solutions Framework (MSF) - це гнучка і
досить легковага модель, побудована на основі
ітеративної розробки.
Привабливою особливістю MSF є велика увага до
створення ефективної і небюрократизованої
проектної команди.
Для досягнення цієї мети MSF пропонує досить
нестандартні підходи до організаційної структури,
розподілу відповідальності і принципам взаємодії
всередині команди.
Моделі процесу розробки ПЗ
        (PSP / TSP)

Одна з останніх розробок Інституту програмної
інженерії Personal Software Process / Team Software
Process
Personal Software Process визначає вимоги до
компетенцій розробника
Послідовне застосування моделі PSP / TSP дозволяє
зробити нормою в організації п'ятий рівень CMM
Моделі процесу розробки ПЗ
          (Agile)

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

У кожного проекту повинна бути своя модель
процесу розробки
У кожної моделі - свій час
Ефективність розробки ПЗ не залежить від моделі
процесу
Вибір моделі процесу

    Персонал



Професіоналізм                  Процес                   Продукт
Спрацьованість                  проекту
Стабільність
Мотивація
Ефективність                              Технічна складність:
комунікацій                               новий продукт, нові
                                          технології, інновації

                 Великий (240 чол.)       Критичність для
      Проект     Середній (36-240 чол.)   замовника:
                 Малий (6-36 чол.)        загроза для життя,
                                          великі грошові втрати
Що треба робити для успіху
   програмного проекту

Чітко ставити цілі
Визначати спосіб досягнення цілей
Контролювати і управляти реалізацією
Аналізувати загрози і протидіяти їм
Створювати команду
Висновки

У силу унікальності галузі досвід, накопичений в галузях
матеріального виробництва, мало сприяє успіху в
управлінні програмним проектом. Прямі аналогії з цими
галузями не працюють.
Не існує єдиного правильного процесу розробки ПЗ.
Ефективний виробничий процес повинен грунтуватися
на ітеративності, інкрементальності, самоврядності
команди і адаптивності. Головний принцип: не люди
повинні будуватися під обрану модель процесу, а
модель процесу повинна підлаштовуватися під
конкретну команду, щоб забезпечити її найвищу
продуктивність.

Más contenido relacionado

La actualidad más candente

реалізація проекту
реалізація проектуреалізація проекту
реалізація проекту
Oleg Nazarevych
 
2 життєвий цикл інформаційних систем
2 життєвий цикл інформаційних систем2 життєвий цикл інформаційних систем
2 життєвий цикл інформаційних систем
Volodymyr Ushenko
 
Керування Часом у Тестуванні ПЗ
Керування Часом у Тестуванні ПЗКерування Часом у Тестуванні ПЗ
Керування Часом у Тестуванні ПЗ
QualityAssuranceGroup
 

La actualidad más candente (13)

Планування та менеджмент проектів в М1
Планування та менеджмент проектів в М1Планування та менеджмент проектів в М1
Планування та менеджмент проектів в М1
 
тема 9 мм
тема 9 ммтема 9 мм
тема 9 мм
 
Управління проектами. визначення та концепції
Управління проектами. визначення та концепціїУправління проектами. визначення та концепції
Управління проектами. визначення та концепції
 
реалізація проекту
реалізація проектуреалізація проекту
реалізація проекту
 
Oleksiy Prosnitskyy: Без ТЗ, результат не ХЗ
Oleksiy Prosnitskyy: Без ТЗ, результат не ХЗOleksiy Prosnitskyy: Без ТЗ, результат не ХЗ
Oleksiy Prosnitskyy: Без ТЗ, результат не ХЗ
 
Фокус на процесах. Використання наукового мислення для створення системи безп...
Фокус на процесах. Використання наукового мислення для створення системи безп...Фокус на процесах. Використання наукового мислення для створення системи безп...
Фокус на процесах. Використання наукового мислення для створення системи безп...
 
Test Planning & Test Strategy
Test Planning & Test StrategyTest Planning & Test Strategy
Test Planning & Test Strategy
 
2 життєвий цикл інформаційних систем
2 життєвий цикл інформаційних систем2 життєвий цикл інформаційних систем
2 життєвий цикл інформаційних систем
 
Керування Часом у Тестуванні ПЗ
Керування Часом у Тестуванні ПЗКерування Часом у Тестуванні ПЗ
Керування Часом у Тестуванні ПЗ
 
LeanForum 2021 - GEBERIT
LeanForum 2021 - GEBERITLeanForum 2021 - GEBERIT
LeanForum 2021 - GEBERIT
 
Любов Самойлова “Про Project Scope і не тільки” - Lviv PMDay
Любов Самойлова “Про Project Scope і не тільки” - Lviv PMDayЛюбов Самойлова “Про Project Scope і не тільки” - Lviv PMDay
Любов Самойлова “Про Project Scope і не тільки” - Lviv PMDay
 
Тестування ПЗ
Тестування ПЗТестування ПЗ
Тестування ПЗ
 
Lviv Pm Club Любов Самойлова "РМCDF як орієнтир компетенцій РМ"
Lviv Pm Club Любов Самойлова  "РМCDF як орієнтир компетенцій РМ"Lviv Pm Club Любов Самойлова  "РМCDF як орієнтир компетенцій РМ"
Lviv Pm Club Любов Самойлова "РМCDF як орієнтир компетенцій РМ"
 

Similar a Введення в програмну інженерію

Similar a Введення в програмну інженерію (20)

Проекти в ІТ.pptx
Проекти в ІТ.pptxПроекти в ІТ.pptx
Проекти в ІТ.pptx
 
Hryhorets
HryhoretsHryhorets
Hryhorets
 
Місце юзабіліті в процесі розробки. Артем Костенко. Sigma Software
Місце юзабіліті в процесі розробки. Артем Костенко. Sigma SoftwareМісце юзабіліті в процесі розробки. Артем Костенко. Sigma Software
Місце юзабіліті в процесі розробки. Артем Костенко. Sigma Software
 
Презентація.pdf Особливості застосування об’єктно-орієнтованого програмування...
Презентація.pdf Особливості застосування об’єктно-орієнтованого програмування...Презентація.pdf Особливості застосування об’єктно-орієнтованого програмування...
Презентація.pdf Особливості застосування об’єктно-орієнтованого програмування...
 
Nikita Zahurdaiev: Найдієвіші методології для PMO (UA)
Nikita Zahurdaiev: Найдієвіші методології для PMO (UA)Nikita Zahurdaiev: Найдієвіші методології для PMO (UA)
Nikita Zahurdaiev: Найдієвіші методології для PMO (UA)
 
Нікіта Загурдаєв - Найдієвіші методології для PMO
Нікіта Загурдаєв - Найдієвіші методології для PMOНікіта Загурдаєв - Найдієвіші методології для PMO
Нікіта Загурдаєв - Найдієвіші методології для PMO
 
Case технології
Case технології Case технології
Case технології
 
СВІТЛАНА ПРИШЛЯК «Тестування управління процесами на різних рівнях в компанія...
СВІТЛАНА ПРИШЛЯК «Тестування управління процесами на різних рівнях в компанія...СВІТЛАНА ПРИШЛЯК «Тестування управління процесами на різних рівнях в компанія...
СВІТЛАНА ПРИШЛЯК «Тестування управління процесами на різних рівнях в компанія...
 
ОКСАНА ТРОЯН «Щоб рейки зійшлись в одній точці: від кількості до якості. Як к...
ОКСАНА ТРОЯН «Щоб рейки зійшлись в одній точці: від кількості до якості. Як к...ОКСАНА ТРОЯН «Щоб рейки зійшлись в одній точці: від кількості до якості. Як к...
ОКСАНА ТРОЯН «Щоб рейки зійшлись в одній точці: від кількості до якості. Як к...
 
Реінжиніринг, «що запускається технологією» і реінжиніринг «з чистого аркуша»
Реінжиніринг, «що запускається технологією» і реінжиніринг «з чистого аркуша»Реінжиніринг, «що запускається технологією» і реінжиніринг «з чистого аркуша»
Реінжиніринг, «що запускається технологією» і реінжиніринг «з чистого аркуша»
 
помилки інноваторів 4.0
помилки інноваторів 4.0помилки інноваторів 4.0
помилки інноваторів 4.0
 
Agile (IF PM Group) v2
Agile (IF PM Group) v2Agile (IF PM Group) v2
Agile (IF PM Group) v2
 
Корнілов Андрій
Корнілов АндрійКорнілов Андрій
Корнілов Андрій
 
Skliarova
SkliarovaSkliarova
Skliarova
 
Alice Averina: Launching a Successful Growth Team: Everything You Need to Kno...
Alice Averina: Launching a Successful Growth Team: Everything You Need to Kno...Alice Averina: Launching a Successful Growth Team: Everything You Need to Kno...
Alice Averina: Launching a Successful Growth Team: Everything You Need to Kno...
 
m-9-10.pptx
m-9-10.pptxm-9-10.pptx
m-9-10.pptx
 
Ініціація проекту
Ініціація проектуІніціація проекту
Ініціація проекту
 
Dmytro Khudenko: Challenges of implementing task managers in the corporate an...
Dmytro Khudenko: Challenges of implementing task managers in the corporate an...Dmytro Khudenko: Challenges of implementing task managers in the corporate an...
Dmytro Khudenko: Challenges of implementing task managers in the corporate an...
 
опер менедж (1)
опер менедж (1)опер менедж (1)
опер менедж (1)
 
Як найняти 
cкрам команду
Як найняти 
cкрам командуЯк найняти 
cкрам команду
Як найняти 
cкрам команду
 

Más de Oleg Nazarevych

Más de Oleg Nazarevych (20)

Етикет службового листування
Етикет службового листуванняЕтикет службового листування
Етикет службового листування
 
5 Управління ризиками (2016)
5 Управління ризиками (2016)5 Управління ризиками (2016)
5 Управління ризиками (2016)
 
4 Планування проекту (2018)
4 Планування проекту (2018)4 Планування проекту (2018)
4 Планування проекту (2018)
 
Відеоскрайбінг
ВідеоскрайбінгВідеоскрайбінг
Відеоскрайбінг
 
3D графіка
3D графіка3D графіка
3D графіка
 
Основи графічного дизайну
Основи графічного дизайнуОснови графічного дизайну
Основи графічного дизайну
 
Тема 1 Основні терміни і поняття
Тема 1 Основні терміни і поняттяТема 1 Основні терміни і поняття
Тема 1 Основні терміни і поняття
 
Дебетові системи електронних платежів
Дебетові системи електронних платежівДебетові системи електронних платежів
Дебетові системи електронних платежів
 
Тема 15 Банерна реклама
Тема 15 Банерна рекламаТема 15 Банерна реклама
Тема 15 Банерна реклама
 
Тема 3 (2) Основні принципи функціонування та роботи систем електронної комерції
Тема 3 (2) Основні принципи функціонування та роботи систем електронної комерціїТема 3 (2) Основні принципи функціонування та роботи систем електронної комерції
Тема 3 (2) Основні принципи функціонування та роботи систем електронної комерції
 
Тема 14 Пошукова оптимізація. SEO оптимізація
Тема 14 Пошукова оптимізація. SEO оптимізаціяТема 14 Пошукова оптимізація. SEO оптимізація
Тема 14 Пошукова оптимізація. SEO оптимізація
 
Тема № 12. Дебетові системи електронних платежів
Тема № 12. Дебетові системи електронних платежівТема № 12. Дебетові системи електронних платежів
Тема № 12. Дебетові системи електронних платежів
 
Тема 5 Системи електронної комерції B2C
Тема 5 Системи електронної комерції B2CТема 5 Системи електронної комерції B2C
Тема 5 Системи електронної комерції B2C
 
Тема 7 (2) Послуги в електронній комерції
Тема 7 (2) Послуги в електронній комерціїТема 7 (2) Послуги в електронній комерції
Тема 7 (2) Послуги в електронній комерції
 
Тема 18 Методи аналізу ефективності інтернет реклами
Тема 18 Методи аналізу ефективності інтернет рекламиТема 18 Методи аналізу ефективності інтернет реклами
Тема 18 Методи аналізу ефективності інтернет реклами
 
Тема 16 E-mail реклама
Тема 16 E-mail рекламаТема 16 E-mail реклама
Тема 16 E-mail реклама
 
Тема 14 SEO оптимізація
Тема 14 SEO оптимізаціяТема 14 SEO оптимізація
Тема 14 SEO оптимізація
 
Тема 10 Електронні платіжні системи
Тема 10 Електронні платіжні системиТема 10 Електронні платіжні системи
Тема 10 Електронні платіжні системи
 
Тема №4 Сектор B2B
Тема №4 Сектор B2BТема №4 Сектор B2B
Тема №4 Сектор B2B
 
Тема №9 (2) Системи електронної комерції g2 c та g2b
Тема №9 (2) Системи електронної комерції g2 c та g2bТема №9 (2) Системи електронної комерції g2 c та g2b
Тема №9 (2) Системи електронної комерції g2 c та g2b
 

Último

ЛЕКЦІЯ Засоби масової інформації –важливий інструмент ПР.ppt
ЛЕКЦІЯ Засоби масової інформації –важливий інструмент ПР.pptЛЕКЦІЯ Засоби масової інформації –важливий інструмент ПР.ppt
ЛЕКЦІЯ Засоби масової інформації –важливий інструмент ПР.ppt
ssuser59e649
 
Презентациія для сайта Група «Незабудка».pptx
Презентациія для сайта Група «Незабудка».pptxПрезентациія для сайта Група «Незабудка».pptx
Презентациія для сайта Група «Незабудка».pptx
OlgaDidenko6
 
Принципові відмінності досконалої (повної) конкуренції від інших форм організ...
Принципові відмінності досконалої (повної) конкуренції від інших форм організ...Принципові відмінності досконалої (повної) конкуренції від інших форм організ...
Принципові відмінності досконалої (повної) конкуренції від інших форм організ...
JurgenstiX
 
аналептики та антидепресанти.шгшгпшгп.ppt
аналептики та антидепресанти.шгшгпшгп.pptаналептики та антидепресанти.шгшгпшгп.ppt
аналептики та антидепресанти.шгшгпшгп.ppt
JurgenstiX
 

Último (19)

psychologistpresentation-230215175859-50bdd6ed.ppt
psychologistpresentation-230215175859-50bdd6ed.pptpsychologistpresentation-230215175859-50bdd6ed.ppt
psychologistpresentation-230215175859-50bdd6ed.ppt
 
Відкрита лекція на тему «Контроль бур'янів в посівах соняшника»
Відкрита лекція на тему «Контроль бур'янів в посівах соняшника»Відкрита лекція на тему «Контроль бур'янів в посівах соняшника»
Відкрита лекція на тему «Контроль бур'янів в посівах соняшника»
 
оцінювання дітей з особливими освітніми потребами у ЗЗСО.pptx
оцінювання дітей з особливими освітніми потребами у ЗЗСО.pptxоцінювання дітей з особливими освітніми потребами у ЗЗСО.pptx
оцінювання дітей з особливими освітніми потребами у ЗЗСО.pptx
 
ЛЕКЦІЯ Засоби масової інформації –важливий інструмент ПР.ppt
ЛЕКЦІЯ Засоби масової інформації –важливий інструмент ПР.pptЛЕКЦІЯ Засоби масової інформації –важливий інструмент ПР.ppt
ЛЕКЦІЯ Засоби масової інформації –важливий інструмент ПР.ppt
 
Застосування Гайду безбар’єрності в роботі закладів культури громад Одещини.pdf
Застосування Гайду безбар’єрності в роботі закладів культури громад Одещини.pdfЗастосування Гайду безбар’єрності в роботі закладів культури громад Одещини.pdf
Застосування Гайду безбар’єрності в роботі закладів культури громад Одещини.pdf
 
Проблеми захисту лісу в Україні та шляхи вирішення
Проблеми захисту лісу в Україні та шляхи вирішенняПроблеми захисту лісу в Україні та шляхи вирішення
Проблеми захисту лісу в Україні та шляхи вирішення
 
Хімічні елементи в літературних творах 8 клас
Хімічні елементи в літературних творах 8 класХімічні елементи в літературних творах 8 клас
Хімічні елементи в літературних творах 8 клас
 
атестація 2023-2024 Kewmrbq wtynh GNJ.pdf
атестація 2023-2024 Kewmrbq wtynh GNJ.pdfатестація 2023-2024 Kewmrbq wtynh GNJ.pdf
атестація 2023-2024 Kewmrbq wtynh GNJ.pdf
 
Презентациія для сайта Група «Незабудка».pptx
Презентациія для сайта Група «Незабудка».pptxПрезентациія для сайта Група «Незабудка».pptx
Презентациія для сайта Група «Незабудка».pptx
 
Бомбочки для ванни своїми руками презентація
Бомбочки для ванни своїми руками презентаціяБомбочки для ванни своїми руками презентація
Бомбочки для ванни своїми руками презентація
 
Принципові відмінності досконалої (повної) конкуренції від інших форм організ...
Принципові відмінності досконалої (повної) конкуренції від інших форм організ...Принципові відмінності досконалої (повної) конкуренції від інших форм організ...
Принципові відмінності досконалої (повної) конкуренції від інших форм організ...
 
матеріал для 10 класу урок історія України
матеріал для 10 класу урок історія Україниматеріал для 10 класу урок історія України
матеріал для 10 класу урок історія України
 
Горбонос 2024_presentation_for_website.pptx
Горбонос 2024_presentation_for_website.pptxГорбонос 2024_presentation_for_website.pptx
Горбонос 2024_presentation_for_website.pptx
 
Defectolog_presentation_for_website.pptx
Defectolog_presentation_for_website.pptxDefectolog_presentation_for_website.pptx
Defectolog_presentation_for_website.pptx
 
Бібліотека – розвиток дитячої творчості та дозвілля для дітейpptx
Бібліотека – розвиток дитячої творчості  та дозвілля для дітейpptxБібліотека – розвиток дитячої творчості  та дозвілля для дітейpptx
Бібліотека – розвиток дитячої творчості та дозвілля для дітейpptx
 
аналептики та антидепресанти.шгшгпшгп.ppt
аналептики та антидепресанти.шгшгпшгп.pptаналептики та антидепресанти.шгшгпшгп.ppt
аналептики та антидепресанти.шгшгпшгп.ppt
 
Супрун презентація_presentation_for_website.pptx
Супрун презентація_presentation_for_website.pptxСупрун презентація_presentation_for_website.pptx
Супрун презентація_presentation_for_website.pptx
 
Іваніщук Надія Вікторівна атестація .pdf
Іваніщук Надія Вікторівна атестація  .pdfІваніщук Надія Вікторівна атестація  .pdf
Іваніщук Надія Вікторівна атестація .pdf
 
Супрун презентація_presentation_for_website.pptx
Супрун презентація_presentation_for_website.pptxСупрун презентація_presentation_for_website.pptx
Супрун презентація_presentation_for_website.pptx
 

Введення в програмну інженерію

  • 2. Зміст Основні поняття Відмінності програмної інженерії від інших галузей Еволюція підходів до управління програмними проектами Моделі процесу розробки ПЗ Вибір моделі процесу Що треба робити для успіху програмного проекту Висновки
  • 3. Основні поняття Програмна інженерія -- це застосування певного систематичного вимірного підходу при розробці, експлуатації та підтримці програмного забезпечення Термін software engineering (програмна інженерія) вперше з'явився в назві конференції НАТО, що відбулася в Німеччині в 1968 році і присвяченій так званій кризі програмного забезпечення.
  • 4. Основні поняття Програмування - процес відображення певної множини цілей на множину машинних команд і даних, інтерпретація яких на комп'ютері або обчислювальному комплексі забезпечує досягнення поставлених цілей Професійне програмування (синонім виробництво програм) - діяльність, спрямована на отримання доходів за допомогою програмування. Принциповою відмінністю від просто програмування є те, що мається або, принаймні, передбачається деякий споживач, який готовий платити за використання програмного продукту.
  • 5. Основні поняття Професійний програміст - людина, яка займається професійним програмуванням Програмний продукт - сукупність програм і супровідної документації по їх установці, налаштуванні, використанню та доопрацюванні.
  • 6. Життєвий цикл програмного продукту Розробка і підтримка Розробка Розробка Розробка версії 1.0 версії 2.0 версії 2.0 Розгортання Впроваджен Впроваджен ня версії 1.0 ня версії 2.0 Супровід Час
  • 7. Основні поняття Процес розробки ПЗ - сукупність процесів, що забезпечують створення і розвиток програмного забезпечення. Модель процесу розробки ПЗ - формалізоване представлення процесу розробки ПЗ. Часто при описі процесів замість слова модель вживається термін методологія, що призводить до невиправданого розширення даного поняття. Згідно SWEBOK 2004, програмна інженерія включає в себе 10 основних і 7 додаткових галузей знань, на яких базуються процеси розробки ПЗ.
  • 8. Відмінності програмної інженерії від інших галузей Програмування - не мистецтво і не наука - це ремесло. Сьогодні ми так само далекі від індустріальної розробки програм, як і 50 років тому.
  • 9. Еволюція підходів до управління програмними проектами «Як вийде» «Водоспад» або каскадна модель «Гнучке управління» «Метод частих поставок» Класичні методи управління перестають працювати у випадках, коли структура і властивості керованого об'єкта нам не відомі і/або змінюються з часом
  • 10. Моделі процесу розробки ПЗ ГОСТ 19 «Єдина система програмної документації» ГОСТ 34 «Стандарти на розробку та супровід автоматизованих систем» Строге проходження цим гостами не тільки призводить до водоспадного підходу, але і вимагає дуже високого ступеня формалізованості розробки
  • 11. Моделі процесу розробки ПЗ (SW-CMM) Створений за замовленням військових Інститутів програмної інженерії США Дана модель визначає п'ять рівнів зрілості процесу розробки ПЗ: Початковий Повторюваний Визначений Керований Оптимізуючий
  • 12. Моделі процесу розробки ПЗ (RUP) Розроблений співробітниками компанії «Rational Software» Доповнення до мови моделювання UML Модель RUP описує абстрактний загальний процес, на основі якого організація або проектна команда повинна створити конкретний спеціалізований процес, орієнтований на її потреби
  • 13. Моделі процесу розробки ПЗ (MSF) Microsoft Solutions Framework (MSF) - це гнучка і досить легковага модель, побудована на основі ітеративної розробки. Привабливою особливістю MSF є велика увага до створення ефективної і небюрократизованої проектної команди. Для досягнення цієї мети MSF пропонує досить нестандартні підходи до організаційної структури, розподілу відповідальності і принципам взаємодії всередині команди.
  • 14. Моделі процесу розробки ПЗ (PSP / TSP) Одна з останніх розробок Інституту програмної інженерії Personal Software Process / Team Software Process Personal Software Process визначає вимоги до компетенцій розробника Послідовне застосування моделі PSP / TSP дозволяє зробити нормою в організації п'ятий рівень CMM
  • 15. Моделі процесу розробки ПЗ (Agile) Основна ідея всіх гнучких моделей полягає в тому, що застосовуваний у розробці ПЗ процес повинен бути адаптивним. Вони декларують своєю вищою цінністю орієнтованість на людей і їх взаємодію, а не на процеси і засоби. По суті, так звані, гнучкі методології це не методології, а набір практик, які можуть дозволити (а можуть і ні) досягнути ефективної розробки ПЗ, грунтуючись на ітеративності, інкрементальності, самоврядності команди і адаптивності процесу.
  • 16. Вибір моделі процесу У кожного проекту повинна бути своя модель процесу розробки У кожної моделі - свій час Ефективність розробки ПЗ не залежить від моделі процесу
  • 17. Вибір моделі процесу Персонал Професіоналізм Процес Продукт Спрацьованість проекту Стабільність Мотивація Ефективність Технічна складність: комунікацій новий продукт, нові технології, інновації Великий (240 чол.) Критичність для Проект Середній (36-240 чол.) замовника: Малий (6-36 чол.) загроза для життя, великі грошові втрати
  • 18. Що треба робити для успіху програмного проекту Чітко ставити цілі Визначати спосіб досягнення цілей Контролювати і управляти реалізацією Аналізувати загрози і протидіяти їм Створювати команду
  • 19. Висновки У силу унікальності галузі досвід, накопичений в галузях матеріального виробництва, мало сприяє успіху в управлінні програмним проектом. Прямі аналогії з цими галузями не працюють. Не існує єдиного правильного процесу розробки ПЗ. Ефективний виробничий процес повинен грунтуватися на ітеративності, інкрементальності, самоврядності команди і адаптивності. Головний принцип: не люди повинні будуватися під обрану модель процесу, а модель процесу повинна підлаштовуватися під конкретну команду, щоб забезпечити її найвищу продуктивність.