Записуйтеся на новий онлайн-курс від Mail.Ru Group на Stepic

image

Ми продовжуємо запускати в партнерстві з Stepic безкоштовні онлайн-курси з дисциплін з Технопарку, Техносфери і Технотрека. Сьогодні ми хочемо представити наш новий курс «Основи постановки завдання на розробку програм».

Крім того, ми перезапускаємо три курси: «Web-технології», «Багатопотокове програмування», «Hadoop» — і знову відкриваємо на них запис.

Основи постановки завдання на розробку програм

Курс формує основні навички підготовки та документування вимог до програмного забезпечення. За підсумками курсу ви навчитеся:

— працювати з вимогами та зацікавленими сторонами;
— аналізувати проблему і формулювати вимоги;
— проектувати взаємодію користувачів з системою;
— забезпечувати необхідні якості системи на етапі постановки завдання.

Програма курсу складається з шести модулів.

1. Постановка завдання на розробку (навіщо потрібні вимоги?)

  • Вступний урок курсу
  • Введення в проектування вимог
  • Визначення контексту і меж системи
  • Аналіз зацікавлених сторін
2. Бізнес-вимоги і бізнес-аналіз

  • Вступ у бізнес-аналіз
  • Огляд технік збору вимог
  • Інтерв'ю для збору потреб
  • Формування глосарію
  • Аналіз проблеми
  • Формулювання проблеми
  • Визначення можливостей вирішення
  • Документування бізнес-вимог
3. Визначення поведінки системи (функціональні вимоги)

  • Модель використання системи
  • Оптимізація моделі використання системи
  • Документування сценарію варіанту використання системи
4. Вимоги до якості (нефункціональні вимоги)

  • Якість програмних продуктів
  • Категорії нефункціональних вимог
  • Сценарії атрибутів якості
5. Управління вимогами

  • Система управління вимогами
  • Простежуваність вимог
  • Підтримка вимог
  • Управління змінами
6. Підведення підсумків

  • Що далі?
  • Заключний урок
Реєстрація IT.Mail.Ru.
Постановка задачі — це перший крок до успішної реалізації будь-якого завдання. І часто саме на цьому етапі виникає перше непорозуміння між замовниками та виконавцями, що виливається в подальші конфлікти і призводить до зриву термінів. Щоб цього уникнути, постановник завдання повинен оволодіти «розмовником розробника», щоб розуміти, як мислить розробник і як донести до нього цінність завдання.

В нашому підрозділі існує ціла методологія постановки завдань, ми називаємо їх специфікаціями. Новий менеджер повинен ознайомитися з цією методологією, щоб говорити з командою на одній мові. Оволодіти цим мистецтвом досить легко навіть для людини без технічної освіти. Перший етап у нашій методології — викласти суть завдання, як ніби ти розповідаєш її семирічного школяра. Я вважаю, що це наріжний камінь у постановці завдання: вміти пояснити суть завдання простою мовою, щоб вона була зрозуміла людині з будь-яким рівнем підготовки. Крім цього, на даному етапі важливо зафіксувати мета завдання — яка метрика зміниться і чому це станеться. Такий підхід дозволяє ліквідувати взаємне нерозуміння в команді і створити загальну мотивацію на досягнення мети.

Одна з головних помилок, яку здійснюють менеджери, — не пояснюють цінності завдання. Це прийшло до нас з менеджменту XX століття, де завдання, по суті, є наказ, який не обговорюється і обов'язковий до виконання. З-за цього розробники втрачають мотивацію, починають вважати менеджерів самодурами і ставляться до виконання завдання формально. Саме формальне ставлення до завданню — наш головний ворог. Ми намагаємося не допускати ситуацій, коли розробник використовує відмовку «до ґудзиків претензій немає». Основний принцип, який сповідують у нашій команді, — передача максимальної відповідальності виконавців. Для цього важливо залучити розробників ще на етапі розробки специфікації, щоб вони відчули причетність до спільної мети, а також вказали на можливі технічні обмеження.

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

Роман Новіков, керівник проекту Мій Світ

Перезапуск курсів

Крім нового курсу, ми доопрацювали запущені раніше програми і знову відкрили запис на них. Реєстрація через портал IT.Mail.Ru:

  1. 30 квітня почнеться курс web-технологій.
  2. 20 травня — «Багатопотокове програмування на C/C++».
  3. 23 травня — «Hadoop. Система для обробки великих обсягів даних».


Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.