Як ми намагалися у командну роботу і що з цього вийшло

Як ми намагалися у командну роботу і що з цього вийшло

Давайте по порядку

Що означає цей малюнок трохи пізніше, а зараз дозвольте почати з вступу.

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

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

Звідси і розпочинається наша історія. Як кульки в більярді ми поскакали один від одного, поки енергія удару не розсіялася і разом зібралася група з 7 людей. Можливо для навчального проекту це занадто багато, але щоб краще розподілити ролі саме те. Почалося обговорення ідей проекту від «Давайте візьмемо готовий проект» до «Емулятор формування космічних об'єктів». Але в результаті пройшла ідея, назва якої ви прочитали на першій картинці.

Stop Procrastination - що це таке, з чим його їдять і як ми його розробляли і що з цього вийшло

Оповідання вестиметься від імені керівника проекту, яким на щастя чи на жаль призначили мене. І так яка ж ідея спала нам на думку? Надихнувшись популярним будильником «Тряси Будильник» від SupperCommon, а саме функцією повністю блокувати роботу смартфона до тих пір, поки користувач не здійснить певну дію, яка, найімовірніше змусить його прокинутися, нами було вирішено створити подібну програму, яка допоможе позбавитися телефонної залежності, за таким же принципом, що і «Тряси Будильник»

Принцип роботи

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

Будуємо команду

Для початку потрібно було визначити хто чим займатиметься і якою мовою все це писатиметься. Я думаю саме до управління проектами це мало мало відношення, бо коли збираєш команду для реального проекту ти збираєш одразу тих хто тобі потрібен. У результаті я взяв ще й на себе ношу дизайнера, вибрав одного тимлтда, який мав хороший досвід у розробці додатків, йому в підпорядкування було призначено трьох програмістів, і ще двоє стали тестувальниками. Звичайно мова програмування вибиралася за вміннями. У результаті було вирішено використати Java, оскільки з ним були знайомі всі програмісти.

Ставимо завдання

За рекомендацією викладача було створено дошку завдань на безкоштовному сервісі Trello. Планувалося працювати за системою Скрам, де кожен стрим буде деяким закінченим додатковим.
Однак насправді з цього вийшов один великий і довгий стрим, в який постійно вносилися правки, доповнення і виправлення.

Як ми намагалися у командну роботу і що з цього вийшло

Пишемо спіки

Під впливом книги Савіна «Тестування.com», я мав на думці своє уявлення про те, як усе має бути влаштоване. Все почалося з написання специфікацій, як я вважаю без чіткого опису, чого ми чекаємо, що і як має працювати, нічого працювати не буде. Програмісти запрограмують все як вони бачать, тестувальники протестують інше, керівник чекав третє, а вийде як завжди четверте.
Писати специфікації не легко, потрібно продумати усі деталі, усі нюанси. Звичайно ж з певного разу нічого не вийшло. Через війну специфікації доповнювалися, перероблялися 4 разу. Останній варіант ви можете знайти в кінці статті, в розділі посилання.

Малюємо дизайн

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

Як ми намагалися у командну роботу і що з цього вийшло

Але потім дизайн був зачесаний і приведений до нормального вигляду.
(Посилання на всі елементи дизайну наприкінці статті).

Як ми намагалися у командну роботу і що з цього вийшло

Програмуємо

Програмувати важко, але можна. Я опущу цей момент, оскільки сам особисто цим не займався. Програмістами була виконана величезна робота, без якої все було б безглуздо. Звичайно, вдалося реалізувати частину задумів. І програмі ще потрібне доопрацювання. Багато багів та фіч, які потрібно прибрати. Будь у нас більше часу ми б вилізли з глибокої альфи, а поки що ви можете протестувати додаток в кінці статті.

Ну і про тестування

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

Дякую, що прочитали. Сподіваюся ви знайшли тут хоч щось корисне, може ідею для свого стартапу, а може, хорошу пораду чи інструмент.

Посилання:

Останні специфікації.
Дизайн на Figma.
Тест-кейси и баг-репорти.

Сам додаток на HokeyApp. — Додаток бився під назвою HandsOff, навіть не питайте чому (бо Stop Procrastination занадто довгий).

Ну і наприкінці

Як ви думаєте, чи все це мало сенс?

Тільки зареєстровані користувачі можуть брати участь в опитуванні. Увійдіть, будь ласка.

Чи потрібна така практива у навчальних закладах і наскільки вона корисна та застосовна у реальному житті

  • Потрібна безцінний досвід

  • Потрібна, хоч і досвіду небагато

  • Майже марна, максимум зрозумієш загальні риси роботи в команді

  • Порожня трата часу та сил

Проголосували 2 користувача. Утриманих немає.

Джерело: habr.com

Додати коментар або відгук