# МРМ Приемка в очередной раз просим предоставить: * Документацию по Driven Framework > Документация была предоставлена сразу после того, как был обновлен Driven.framework (27 ноября 2019) и она содержится в самом Driven - Пример участка кода, который отвечате за добавлений действия по заданию: ![](https://i.imgur.com/USXDb7i.jpg) Хохлов: Это описание метода, тут нет описания полей. Также нет последовательности, в котором методы работы с заданиями нужно вызывать для каждой конкретной задачи. В итоге в методе указаны для чего он используется и какие параметры ожидаются. Хохлов: нет, не указано. Банально даже "Идентификатор товара" - что писать тут при задачх, где нет товаров? Так или иначе, ответы мы в чате позже получали, я пишу к тому, что то, что вы назвали "предоставлена документация" - это не документация по использованию фреймворка в приложении к разным задачам, это просто сгенерированное описание методов и параметров. В Driven.framework задокументированы таким образом все публичные переменные и методы. Пример одного из модулей: ![](https://i.imgur.com/CpbNsSZ.png) ![](https://i.imgur.com/6XMCPRW.png) Хохлов: Опять же. Где описание того, что такое например, Action, в приложении к задачам конкреитного МРМ? Что опять же касательно идентификатора товара? Повторюсь - это описание методов, но не описание того, как с ними работать. Примерно как дать техническую документацию на коленвал, поршни и инжектор, но не дать документацию, как из этого собрать двигатель. Кроме того, примерно с конца декабря у нас есть более подробное [описание работы Driven.framework](http://confluence.moscow.sportmaster.ru/display/MOBDEV/Driven+IOS+SDK) Только к этой странице у нас не было доступа. А ссылку на нее нам дали в феврале, сами в чати видели. В итоге доступа так и нет. Все ссылки на Driven.framework опубликованы в пространстве подрядчика: http://confluence.moscow.sportmaster.ru/display/AMBERLABS/Driven+IOS+SDK Хохлов: Ссылка на битбакет была всегда, но нас не уведомляют о том, что там публикуются новые версии. Более того, что то, что надо обновить фреймворк, мы обычно узнаем когда что-то перестается работать, тогда возникает идея "А может вы обновили Дривен?", после этого я прошу Анатолия выложить в битбакет, и после мы уже обновляем у себя. Свидительства этого процесса есть в чате. И в один из моих приездов было потрачено время на то, чтобы выяснить, что МРМ не работает из-за того, что новая версия задачника работает с новой версией фреймворка, про которюу нам никто не сказал и в битбакете ее не было. * Описание алгоритмов работы со статусами задачи и передачи результатов задачи в Задачник > эта информация была предоставлена 10 сентября 2019 (см. пункт 15 ниже) > Хохлов: это описание того, как работает с задачми МУЗ, это выдержка из документа, который описывает МУЗ. В МРМ половины этих статусов не используется, плюс, в этой схеме нет передачи результата. * Актуальную версию форматов JSON файлов, которые требуется формировать при передаче результатов задач в ваше информационную систему. > Документация по МУЗ.Приемка была предоставлена 19 июля 2019: ![](https://i.imgur.com/fYd7gUV.png) Хохлов: Это формат обмена ДИС и МУЗ. В какие поля что класть при передаче МРМ - Задачник - приходилось докадываться самим. Внутри документа присутствуют ожидаемые форматы JSON: ![](https://i.imgur.com/BWqidtO.jpg) Они несколько раз потом менялись, актуальная (которая есть у нас) версия была только в сентябре. * Утверждение, что заказчик не оказывает помощь не имеет под собой оснований: Исполнителю предоставлялась вся необходимая информация по работе Driven.framework, МРМ Задачник и взаимодействии их с другими МРМ. Причем зачастую исполнитель запрашивал информацию в нерабочее время. Хохлов: По поводу нерабочего времени - насколько я видел договор, он не подразумевает аутстафф, то есть выделение ресурса в рабоее время. В какое время мы работаем - это исключительно наш внутренний вопрос. Что касается запросов на помощь - электронные средства коммуникации путем отправки сообщений как раз и сделаны, в том числе, для того, чтобы люди могли ответить когда им удобно. Мы же не звонили вам по ночам с требованиями ответить на вопросы. Если у кого-то из ваших коллеги находилась минутка ответить в нерабочее время - огромная им за это благодарность. Примеры оказания помощи: 1. 16 июня 2019 - ![](https://i.imgur.com/biPDyT2.png) Хохлов: согласен 3. 16 июня 2019 - предоставление архитектуры взаимодействия бэка и мобильных приложений ![](https://i.imgur.com/TU0As2x.png) Хохлов: согласен 3. 16 июня 2019 - Вопрос синхронизации Задачника ![](https://i.imgur.com/2DA3EIu.jpg) Хохлов: согласен, но надо отметить, что задачник - это ваш продукт. Если в нем что-то не работает, это не помощь нам, а исправлением ваших ошибок. 4. 17 июля - 8 августа 2019 - Предоставление доступа к Driven.framework ![](https://i.imgur.com/c1HgnTf.png) ![](https://i.imgur.com/MSt5n3y.png) Хохлов: писал выше, он у вас периодически обновляется, новые билды задачника, которые ставятся автоматом, работают с ним, соответственно его надо обновлять и в МРМ. Хорошо бы, еслди бы при каждом обнолвении его выкладывали хотя бы в гит. Нам можно не писать, мы можем сами каждый день проверять. 5. 10 августа 2019 - Указание, где лежит **Работа с заданиями (DIS REST API)**, подсказали какой формат, где можно проверить методы, предоставили параметры аутентификации: ![](https://i.imgur.com/Pq9NQlR.png) 6. 29 августа 2019 - Проблемы с получением заданий. В итоге выяснилось, что сами обращались не к тому ресурсу: ![](https://i.imgur.com/kRfSzeq.png) ![](https://i.imgur.com/GgMMfrm.png) ![](https://i.imgur.com/XGHU07n.png) Хохлов: по поводу пунктов выше. Артем, мы вообще не должны знать что такое REST API DIS, как к нему обращаться и по какой ссылке. Это никак не входило в скоуп работ. Мы делали это исключительно потому, что Дривен на тот момент не работал должны образом, задачи через него получить мы не могли, и, чтобы хоть как-то работать, мы искали обходные пути. Что касается ссылки - мы обращались по той ссылке, что нам давалм ранее. Почему нам мзначально дали не ту ссылку - вопрос к организации внутри вашей команды. Сами мы выдумать ссылку не могли. 7. 29 августа 2019 - Так как вопросов становилось больше, чем ответом, заказчик предложил встретиться: ![](https://i.imgur.com/NgfeWrf.png) Хохлов: верно, потому что приходилось методом тыка делать так, чтобы устройства, предоставленные нам, начали корректно работать и получать задачи. Никакой инструкции по настройке не было, все приходилось выяснять. В том числе про привязку устройств к магазинам - это не скоуп разработки МРМ, разбираться в этой информации приходилось, чтобы запустить работу. Было был здорово на тот момент, если бы вместе с устройствами была передана инструкция - какое прописать имя, как имя устройства связано с магазином, как осуществляется в завичимости от этого синхронизация. Ничего этого не было, все выясняли сами. 8. 20 августа 2019 - Обновление версий фреймворков и новая версия Задачника: ![](https://i.imgur.com/VKf2hPe.png) 9. 2 сентября 2019 - Предоставление иконки приложения: ![](https://i.imgur.com/cvE0AzX.png) ![](https://i.imgur.com/8M3nTJu.png) 10. 3 сентября 2019 - Ответ по формату идентификатора приложения ![](https://i.imgur.com/UlMLQso.png) 11. 5 сентября 2019 - Добавление заданий: ![](https://i.imgur.com/5Sceg5y.jpg) ![](https://i.imgur.com/0mjxYkq.png) 12. 6 сентября 2019 - Помощь с bundle id и AppGroup: ![](https://i.imgur.com/fE0Oayi.png) ![](https://i.imgur.com/zv8Sh8U.png) ![](https://i.imgur.com/lyPcr7e.png) ![](https://i.imgur.com/AqYHY5A.png) ![](https://i.imgur.com/5s5pRYq.png) 13. 8 сентября 2019 (**воскресенье**) - Добавление разработчика подрядчика на портале apple разработки Спортмастер ![](https://i.imgur.com/JVbixXK.png) Хохлов: все выше - нормальные рабочие моменты. Добавление заданий, чтобы нам было с чем работать - это также нормальные рабочий процесс. То, что нас не добавили сразу, чтобы мы могли заливать приложение на портал - опять же вопрос к вам. По идее, все вот эти вещи - добавить разработчика в портал, дать сертификаты, пояснить как использовать общие ресурсы в вашей инфраструктуре и прочие технические детали - одним документом нужно передавать, чтобы на это у подрядчика уходило час времени, а не требовалось по каждому пункту выяснять и ждать ответа. 14. 9 сентября 2019 - Предоставление доступа к SMHardware.framework: ![](https://i.imgur.com/OaJqq6G.png) Хохлов: Да, только в итоге он переехал в Дривен, из-за чего были конфликты, и о чем я опять случайно узнал у Анатолия. Нам никто не написал "Коллеги, работа с оборудованием теперь в Дривене, хардвейр фреймворк убейте". 15. 10 сентября 2019 - Предоставление документации по статусам заданий: ![](https://i.imgur.com/83ITg8S.png) ![](https://i.imgur.com/v8x8pay.png) Хохлов: Ответил выше. 16. 12 сентября 2019 - Ответ по работе в IDE Xcode и взаимодействии со сканером ШК: ![](https://i.imgur.com/LEyNuGu.png) 17. 12 сентября 2019 - Предоставление документации по SMHardware: ![](https://i.imgur.com/CxrYxkU.png) Хохлов: Да, спасибо 18. 10-12 сентября 2019 - Ответ по изменению статуса задания с полным примером рабочего кода: ![](https://i.imgur.com/M0msRQa.png) ![](https://i.imgur.com/awGhTQ8.png) ![](https://i.imgur.com/6H7HlBE.png) ![](https://i.imgur.com/FCUzS3k.png) > 20 сентября 2019 - и еще много вопросов по тому, на что ранее уже был дан ответ. > > Складывалось впечатление, что исполнитель не хочет читать код и вникать в то, что там выполняется. По сути в указанном пример нужно было подправить первый кусок кода, который был направлен, и работать с задачами/менять их статус: ![](https://i.imgur.com/3VHXiVk.png) ![](https://i.imgur.com/4opymjr.png) ![](https://i.imgur.com/ABHQCx8.png) ![](https://i.imgur.com/Ixtv19T.png) Хохлов: Этот кусок кода из другого МРМ, в нем нет отправки результатов задания, на конкретные вопросы как приложить этот кусок к нашему МРМ ответы были расплывчатые. Какие методы использовать - не сказано, и на вашем же скрине я еще раз указал, что на тот момент у нас нет документации по фреймворку и что в неи есть разные методы, которые, возможно, подходят по смыслу, и предложил их обсудить. Кусок кода, присланный Анатолием - это просто копипаст класса из его продукта, заточенный под другие задачи. В нем есть последовательность действий некоторая работы с задачами, мы ее оттуда взяли. В итоге все это до конца не заработало. и т.д., в чате "МРМ Приемка" в телеграм очень много вопросов и ответов, в том числе и повторяющихся вопросов. 19. 8 октября 2019 - После перехода на новую версию Driven.framework предоставлена документация по внедрению новой версии Driven.framework, использованию методов авторизации и настройке Keychain : ![](https://i.imgur.com/6NpWrPE.png) Хохлов: Да, верно, я приезжал, все с Анатолием сделали. Вопрос после которого возникает к компетенциям в части iOS разработки: * 16 июля - любой разработчик с месячным опытом разработки под iOS знает сервис Fabric и как он работает. Амберлабсу для этого действительно нужна инструкция? ![](https://i.imgur.com/TUMQXRQ.png) ![](https://i.imgur.com/njReRmo.png) ![](https://i.imgur.com/Yqw8qPc.png) Хохлов: Этот вопрос никак не связан с компетеницями в iOS разработке. Сервис Fabric служит для распространения билдов и сбора логов. Разработчик, который пишет тот или иной код, может про него не знать. но, естественно, что есть такой сервис, у нас все знают. Вопрос в том - что никто не сказал, что он есть, и до этого момента билды задачника нам кидали в чат. Письма "Коллеги, мы используем для распространения новых билдов Fabric", не было. Приглашалки в почте потом нашлись в папке спама, к сожалению. Нормальный путь в управлении проектами - ставить в известность подрядчиков относительно путей получения билдов смежных продуктов, тем более, если это этого просто в чат кидали сборки. Проблемы коммуникации: 1. Находились проблемы там, где их не было - 19-30 июля 2019: ![](https://i.imgur.com/08tHahb.png) ![](https://i.imgur.com/7SYqUlJ.png) ![](https://i.imgur.com/fehmbvG.png) * Просьбы о помощи в нерабочее время: ![](https://i.imgur.com/to6gjdF.png) > как выяснилось дальше проще не стало * В том числе в выходные: ![](https://i.imgur.com/SAN9hl6.png) Хохлов: Да, если мы не можем завести ваш же продукт и у нас не работает выданный нам для этого продукта доступ, это проблема на вашей стороне. * По любой проблеме подрядчик обращался к нам (получалось не подрядчик занимается написанием приложения, а мы его обслуживаем и на любую сложность он обращается к нам). К определенному моменту это стало сильно напрягать, так как мы выполняли в том числе свою непосредственную работу в Спортмастере: ![](https://i.imgur.com/hrN9R02.png) > И в итоге опять же выяснялось, что проблемы были на стороне исполнителя: ![](https://i.imgur.com/PyNO6IU.png) * В дальнейшем в процессе работы выяснилось, что исполнитель не читает высланную по МРМ документацию, где все эти моменты описаны: ![](https://i.imgur.com/spCIn8a.png) ![](https://i.imgur.com/uaPuwOZ.png) Хохлов: Артем, нет! Все эти проблемы были связаны с тем, чтобы в переданном нам задачнике, который делает ваша сторона, на переданных нам устройствах, были задачи, с которыми мы можем работать. Странно, что вы обвиняете в этом нас. Нас совершенно тоже это не устраивало, что большое количество времени ушло на то, чтобы запустить ваш софт, который не в нашей компетенции. То, что код Дривена не видел задачник - это проблема опять же Дривена и Задачника была на тот момент. Что касается статусов - это опять же были догадки, которые надо было подтвердить (то, как преобразовать статусы МУЗа и статусы МРМ). * И не видимо не полностью понимает объяснения сотрудников Arcsinus, отвечающих за доработки в части Driven.framework и МРМ Задачник: ![](https://i.imgur.com/AeQbE3n.png) Хохлов: вопрос был, насколько я помню, в том, что задачник не синхронизировал справочники. Либо они не приходили. и Кастис это исправлял. То, что до задачника не доходили какие-то справочники - это не компетенция разработчиков МРМ. Плохо, что нам приходилось тратить время на то, чтобы в этом вникать. * 11 декабря 2019 - К переписке были подключены ключевые исполнители по работам с Driven.framework и МРМ Задачник сотрудники Arcsinus: ![](https://i.imgur.com/fgBSPP6.png) ![](https://i.imgur.com/aJa2Go5.png) ![](https://i.imgur.com/Iz88bJX.png) ![](https://i.imgur.com/CxKU0GE.png) ![](https://i.imgur.com/Eu7gG7y.png) > И они в дополнение к уже имеющейся информации подробно расписали как работать с методами Driven.framework Хохлов: Нет, не расписали. Сами видите, что детали обсуждаются вот сейчас, и Константин же сам писал, что местами ошибался. * Пример создания лишней работы для iOS разработчиков IT-Driven: ![](https://i.imgur.com/LRIQRNG.png) Хохлов: Потому что на тот момент мы не обсудили еще как работать с сертификкатами и были не в курсе вашего процесса девопса. Инстркуции тоже нигде не было. Потом договорились - вопрос закрыли. Это рабочий момент. * 9 октября 2019 года - не смотря на наличие документации по внедрению новой версии Driven.framework исполнитель так и не смог его установить. С моей стороны было предложено подъехать ко мне перед показом очередной версии МРМ Приемки, чтобы решить проблему: ![](https://i.imgur.com/7YlrfNL.png) На встрече я сделал все по инструкции из высланной ранее документации и Driven.framework благополучно был внедрен, а МРМ "Приемка" запущена. Хохлов: Нет, не так, мы сидели с Анатолием достаточно долго, ровно по инструкции ничего не заработало, на ходу мы смотрели почему не так, и после этого как раз инстркуция была обновлена. Прошу не переворачивать факты, потому что то, что написано выше вами, реально не соответствует действительности. Мы с Анатолием долго разбирались, почему не работает. Хохлов: Артем, честно не понимаю смысл этого текста. Общая агента простая - на момент, когда мы начали работать, с вашей стороны также велась (и ведется сейчас) активная разработка смежных продуктов, поэтому возникают вот эти моменты. С вашей стороны этот документ был подготовлен с точки зрения "мы вам все дали, вы глупые, ничего не сделали", но это не соответствует действительности. У меня нет претезний, но странно с вашей стороны видеть голословные обвинения в нашу сторону, при том, что вы прекрасно видите, что происходит на проекте и как ведется работа.