Сучасний стан виробництва програмного забезпечення і Вища освіта України Завдання Вищої школи України по підготовці фахівців з програмної інженерії



Дата конвертації08.06.2016
Розмір445 b.


Сучасний стан виробництва програмного забезпечення і Вища освіта України

  • Завдання Вищої школи України по підготовці фахівців з програмної інженерії


Мета семінарів:

  • Демографічна криза у 2009-2010 роках;

  • Невідповідність підготовки спеціалістів ВУЗАми України вимогам галузі.



Дії представників галузі:

  • Створення асоціації IT-Ukraine;

  • Вплив на ВНЗ і МОН України через асоціацію.



Розробка програмного забезпечення



Деякі типи проектів

  • Розробка нового програмного забезпечення;

  • Супровід або обслуговування програмного забезпечення (за наявності коду);

  • Портування програмного забезпечення під іншу операційну систему;

  • Тестування програмного забезпечення.



Для прийняття проекту необхідно:

  • Проаналізувати бізнес-процес, який автоматизується;

  • Створити групу розробників;

  • Розробити концепцію проекту;

  • Розробити план проекту;

  • Провести оцінку проекту;

  • Сформувати пропозицію.



Приклад групи розробників



Відповідальний виконавець (Client Executive):

  • Контролює бюджет проекту, терміни платежів та правові питання;

  • Забезпечує фінансову та юридичну верифікацію договорів;

  • Обговорює з клієнтом контрактну документацію.



Обов’язки виконавців

  • Визначає і контролює процес розробки;

  • Адекватно оцінює проект;

  • Визначає ресурси, потрібні для виконання проекту та керує ними;

  • Відповідає за належну кваліфікацію ресурсів;

  • Забезпечує вчасну та адекватну верифікацію проекту;

  • Обговорює стан проекту з представниками клієнта;

  • Забезпечує врахування зауважень клієнта;

  • Розробляє документацію проекту;

  • Формує завдання для членів групи та контролює їх виконання;

  • В разі необхідності коректує завдання для їх вчасного виконання;

  • Допомагає іншим учасникам проекту спілкуватися з представниками клієнта;

  • Інші поточні обов‘язки.



Системний аналітик (System Analyst):

  • Визначає типи вимог до продукту, розробляє та аналізує вимоги;

  • Розробляє специфікацію вимог до ПЗ;

  • Забезпечує спілкування з клієнтом та врахування його зауважень;

  • Визначає функціональні модулі продукту та їх взаємозв’язок; розробляє діаграми станів та модель поведінки продукту;

  • Розробляє інтерфейс продукту.



Системний архітектор (System Architect):

  • Розробляє високорівневу архітектуру продукту на основі аналізу вимог до ПЗ;

  • Аналізує вимоги до ПЗ та обирає найефективнішу архітектуру продукту;

  • Розробляє документацію, пов‘язану з архітектурними рішеннями;

  • Разом з системним аналітиком виявляє та мінімізує ризики;

  • Інструктує розробників стосовно архітектури компонентів продукту.

  • Бере участь у обговореннях та прийнятті рішень стосовно знайдених помилок у продукті;



Кодує компоненти продукту відповідно до інструкцій;

  • Кодує компоненти продукту відповідно до інструкцій;

  • Правильно оцінює час виконання свого завдання;

  • Узгоджує з системним архітектором структуру свого завдання та усього продукту;

  • Забезпечує вимоги до цілісності коду та відповідності вимогам клієнта до коду;

  • Тестує компоненти продукту на відповідність вимогам;

  • Тестує компоненти продукту на сумісність з іншими компонентами;

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



Визначає програму тестування ПЗ, які вимоги до продукту тестуються, які – ні.

  • Визначає програму тестування ПЗ, які вимоги до продукту тестуються, які – ні.

  • Визначає ресурси, необхідні для виконання тестування;

  • Забезпечує відповідний рівень компетенції ресурсів;

  • Визначає конкретні завдання та програму їх виконання.



Розробляє тести;

  • Розробляє тести;

  • Оцінює час, потрібний для проведення тестів;

  • Виконує тестування;

  • Розробляє звіти про виконані тести та відслідковує знайдені помилки;

  • Розробляє документацію, пов’язану з тестуванням.



Типи тестів:

  • Типи тестів:

  • Функціональний тест;

  • Тест на відповідність вимогам;

  • Тест сумісності з обладнанням та ОС;

  • Тест забезпечення безпеки даних;

  • Інсталяційний тест;

  • Тест інтерфейсу користувача;

  • Тест продуктивності;

  • Інші необхідні тести.



Документує засоби розробки, код, використані засоби субпідрядників або сторонніх організацій;

  • Документує засоби розробки, код, використані засоби субпідрядників або сторонніх організацій;

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

  • Визначає помилки, пов‘язані з конфігурацією та керує системою розробки;

  • Контролює та змінює конфігурацію.



Виробництво ПЗ



Виробництво ПЗ

  • Керування проходженням проекту;

  • Виявлення “вузьких місць” та їх усунення;

  • Запобігання запізнень у розробці;

  • Відслідковування стану розробки та її компонентів;





Інтегрується з Microsoft Project and Seapine TestTrack;

  • Інтегрується з Microsoft Project and Seapine TestTrack;

  • Багатокористувацька та багатофункціональна система;

  • Має більш зручний та зрозумілий інтерфейс.









Мета аудиту:

  • Мета аудиту:

  • Допомогти та проконсультувати розробників проекту з метою інтенсифікації та вдосконалення розробки проекту;

  • Оцінити ефективність процесу розробки та відповідність галузевим стандартам.



Типи аудиту:

  • Типи аудиту:

  • Аудит планування проекту;

  • Аудит вимог до ПЗ;

  • Аудит конфігурації;

  • Аудит конструювання та архітектури (між кодуванням та тестуванням);

  • Аудит тестування;

  • Аудит комплектації та доставки;

  • Інші типи аудиту.



Підсумком аудиту вважають:

  • Підсумком аудиту вважають:

  • Запис про результати аудиту в робочому середовищі;

  • Документація з підсумками аудиту.



Аналіз виконаного проекту:

  • Аналіз виконаного проекту:

  • Скільки часу потребувало виконання цього проекту, як цей час узгоджується із запланованим?

  • Які кошти витрачено на проект, і як вони узгоджуються з запланованим бюджетом?

  • Яка була фактична продуктивність праці виконавців? Як вона узгоджується з попередніми оцінками?

  • Які типові помилки зустрічалися під час виконання проекту? Які способи їх подолання?

  • Яким виявився фактичний рівень кваліфікації виконавців проекту? Кому з виконавців необхідно вдосконалювати свою кваліфікацію?

  • Як результати аналізу цього проекту узгоджуються з результатами аналогічних проектів?

  • Які тести найбільш та найменш ефективні?

  • Тощо.



Результати такої аналітичної роботи дуже корисні. Вони дозволяють компанії виявити свої слабкі та сильні ланки, вдосконалити внутрішній аудит, уточнити попередні оцінки та відповідність їх реальному стану речей. Наприклад, фірма Miratech визнає, що такий аналіз дозволив при попередніх оцінках трудомісткості проекту та термінів його виконання помилятися усього на ±1 день, а при оцінці бюджету - ±10%.

  • Результати такої аналітичної роботи дуже корисні. Вони дозволяють компанії виявити свої слабкі та сильні ланки, вдосконалити внутрішній аудит, уточнити попередні оцінки та відповідність їх реальному стану речей. Наприклад, фірма Miratech визнає, що такий аналіз дозволив при попередніх оцінках трудомісткості проекту та термінів його виконання помилятися усього на ±1 день, а при оцінці бюджету - ±10%.



До чого сьогодні готові наші випускники?

  • Розробник;

  • Тестер (частково)



Студенти не готові до:

  • Студенти не готові до:

  • Роботи в команді та розподілу обов‘язків у ній;

  • Аналізу вимог до програмного забезпечення з боку клієнта;

  • Аналізу бізнес-процесів, з якими доводиться працювати під час виконання проекту;

  • Визначення архітектурних рішень програмного забезпечення;

  • Конструювання ПЗ;

  • Розробки документації згідно стандартів галузі;

  • Інших активностей, потрібних працівнику



Завдання Вищої школи

  • 1. Необхідно знайомити студентів з виробничим циклом розробки ПЗ.

  • 2. Необхідно привчати студентів до колективної роботи над програмними продуктами (лабораторні, курсові та дипломні роботи);

  • 3. Необхідно змінити вимоги до курсових і дипломних робіт відповідно до галузевих стандартів;

  • 4. Необхідно привчати студентів до написання та аналізу документації;

  • 5. Необхідно розвивати бази практики – компанії, що спеціалізуються на розробці ПЗ;

  • 6. Необхідно створювати на території ВНЗ підприємства і лабораторії з залученням спеціалістів ІТ-компаній та використовувати їх для додаткової практичної підготовки студентів;

  • 7. Необхідно відновити практику написання курсових та дипломних робіт на замовлення підприємств, як це практикувалося раніше.



Дякую за увагу!

  • Дякую за увагу!

  • Будь-ласка, запитання?..




База даних захищена авторським правом ©pres.in.ua 2016
звернутися до адміністрації

    Головна сторінка