История одного проекта обновления

Публикация № 1149421

Разработка - Групповая разработка - Хранилище

История одного проекта обновления хранилище групповая разработка

17
История одного проекта обновления, хранилище, групповая разработка.
 
 Предисловие
 
 Соглашения и определения
 
 Подготовка
 
 План перехода (рисунок)
 
 Список дважды измененных
 
 Обновление модуля (рисунок)
 
 База 2Измененных
 
 База Кандидат
 
 Проверки обновления
 
 Возможные ошибки и проблемы
 
 Приложение 1. Длительность работ по дням и часам
 
 Приложение 2. План тестирования нового релиза УТ
 
 Благодарности

 

17

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. muskul 06.11.19 10:05 Сейчас в теме
как у вас так быстро рег задания отрабатывают, обновление данных первичных документов помню покоя не давало. Бесконечно крутилось такое чувство
2. vasilev2015 1490 06.11.19 10:19 Сейчас в теме
(1) Здравствуйте !

Объем обновления данных при первом запуске изменяется от релиза к релизу.

За историю перехода от 11.4.1 до 11.4.9 два раза это время было больше 8 часов.

Обновление начиналось в 22-00 мск, Владивосток заметил.

Хорошо, что пользователи отнеслись с пониманием. Утро субботы.
3. Stim213 370 08.11.19 10:58 Сейчас в теме
Почему нельзя было сразу на последний релиз обновиться? Зачем проделывать 80% одной и той же работы на каждом релизе?
4. vasilev2015 1490 08.11.19 12:56 Сейчас в теме
(3) Здравствуйте !

Если пользователей мало - можно установить новую базу и перенести данные, доработки.

У нас более 200 пользователей, поэтому все нужно делать аккуратно, возникающие ошибки приписывать производителю конфигурации УТ - фирме 1С.

При обновлении 1С производит обработку данных, по много часов. Пропустить несколько релизов, сделать свои обработки - затруднительно.
7. Rustig 1221 09.11.19 12:40 Сейчас в теме
(4) вопрос от (3) задают все пользователи, которые платят за обновления, и интересует многих внедренцев 1с...

...Сажая промежуточный релиз , вы уже знаете заранее, что он содержит ошибки, которые уже исправлены в следующих релизах... "Почему бы не поставить последний?" - логичный вопрос...

обновление сложной системы сложно описать двумя словами, особенно когда у нас три сложные системы: типовая новая, типовая старая, своя рабочая измененная.

Когда поставил последнюю версию, измененных объектов оказалось условно говоря 1000 штук, и стало сложно управлять обновлением.
После этого поставил ближайший релиз к рабочей базе - изменений стало в разы меньше, большинство из них собственные доработки, с которыми знаком... Управлять обновлением сало легко.
И так шаг за шагом, обновляя на ближайший промежуточный релиз - доработанная база приобрела в своем составе механизмы последнего релиза....
5. maXon777 99 09.11.19 07:16 Сейчас в теме
Спасибо за статью - интересные идеи
1) как вы оцениваете оценку обновления в миллион по сравнению с затраченными ресурсами? Завышена/занижена?
2) как вы успеваете перенести все доработки за 3 дня? Изменений / пересечений не так много?
3) насколько активно используются расширения? Какие изменения решили оставлять в основной конфигурации (хотя их можно было бы делать в расширениях)
4) в процессе обновления скорей всего находились ошибки разработчиков или появлялось желание все переделать - можете поделиться ключевыми? (Про форму отчета увидел)
5) почему решили обновиться на актуальный релиз? Будете ли проводить обновления дальше с выходами релизов или будете накапливать какую-то критическую массу изменений
6. vasilev2015 1490 09.11.19 10:12 Сейчас в теме
(5) Здравствуйте !

1. Оценка ИжТиСи завышена на 20-30%. Наши затраты составили стоимость труда программиста за 4 месяца + промышленная эксплуатация + тестирование со стороны заказчика + затраты на менеджмент (администрирование). Но последние два пункта не входят в смету ИжТиСи.
2. Тексты модулей обновляем внешней программой, используя слияние в общий предок. Модуль в 10 тысяч строк обновляется 10 секунд, если нет конфликтов (участков кода, которые поменяли 1С и мы). Общие модули и модули форм обновляем за 2 дня, потом добавляем реквизиты. Количество пересечений (2Измененных модулей) можно оценить по слайду
3. У нас слишком много кода вынесено в расширение - не было плана развития программы. Расширение приходилось менять (обновлять), если изменились наименования модулей (реквизитов). Как правило, в расширение выносят только неизмененные в конфигурации объекты. Исключения - реже. Например, наш локальный объект (без модуля и форм) можно включить в расширение, чтобы он попал в интерфейс.
4. Про доработку типовой конфигурации для большого числа пользователей планирую отдельный цикл статей, первая https://infostart.ru/public/1058730/
5. Будем обновляться раз в квартал, чтобы программа не превратилась в "болотце", соответствовала законодательству и могла взаимодействовать с современными программами.

Спасибо за вопросы.
8. starjevschik 09.11.19 12:59 Сейчас в теме
Удивительно бессмысленная трата ресурсов работодателем.
9. vasilev2015 1490 09.11.19 21:43 Сейчас в теме
(8) Здравствуйте ! Отвечу стихотворением И.Бродского

Не выходи из комнаты, не совершай ошибку.
Зачем тебе Солнце, если ты куришь Шипку?
За дверью бессмысленно все, особенно -- возглас счастья.
Только в уборную -- и сразу же возвращайся.

О, не выходи из комнаты, не вызывай мотора.
Потому что пространство сделано из коридора
и кончается счетчиком. А если войдет живая
милка, пасть разевая, выгони не раздевая.

Не выходи из комнаты; считай, что тебя продуло.
Что интересней на свете стены и стула?
Зачем выходить оттуда, куда вернешься вечером
таким же, каким ты был, тем более -- изувеченным?

О, не выходи из комнаты. Танцуй, поймав, боссанову
в пальто на голое тело, в туфлях на босу ногу.
В прихожей пахнет капустой и мазью лыжной.
Ты написал много букв; еще одна будет лишней.

Не выходи из комнаты. О, пускай только комната
догадывается, как ты выглядишь. И вообще инкогнито
эрго сум, как заметила форме в сердцах субстанция.
Не выходи из комнаты! На улице, чай, не Франция.

Не будь дураком! Будь тем, чем другие не были.
Не выходи из комнаты! То есть дай волю мебели,
слейся лицом с обоями. Запрись и забаррикадируйся
шкафом от хроноса, космоса, эроса, расы, вируса.
10. Terve!R 11.11.19 17:11 Сейчас в теме
Спасибо за статью, интересно.
Хорошо, конечно, что так мало операций у пользователей, и все они внутри базы, а как быть с тестированием в копии базы функционала обмена или интеграции с внешними системами? Ведь если запускаешь обмен данными, то он должен быть непременно в рабочей базе, потому что во внешнюю систему должны уйти нужные достоверные не тестовые данные, и вернутся тоже измененные объекты. Это, например, касается всяческих систем маркировки.
11. vasilev2015 1490 11.11.19 20:04 Сейчас в теме
(10) Здравствуйте !

Мне повезло участвовать в становлении ЕГАИС в крупнейшей алкогольной компании Северо-Запада (ФПК). Использовали тестовый контур, а в рабочем - делали на аффилированные фирмы тестовые накладные, которые можно было легко вернуть. Перед отправкой сообщения можно просматривать в xml. Если посылать продажи, которых нет на остатке - ФАС вернет отказ, ничего страшного.

В общем, с внешними программами есть свои сложности, но работать можно.
12. Irina_Krasilnikova 22.11.19 11:04 Сейчас в теме
Николай, добрый день!
Меня зовут Ирина Красильникова, я руководитель отдела сервиса в компании «1С-ИжТиСи». Вы с моими коллегами уже обсудили ситуацию с оценкой вашего проекта — спасибо, что скорректировали цифры в посте для других участников сообщества. С вашего разрешения, прокомментирую и дополню материал с точки зрения компании-аутсорсера и как непосредственный участник оценки вашего проекта.

Расскажу, как мы в компании «1С-ИжТиСи» оцениваем и проводим подобные непростые обновления конфигураций.

1. Для обновляемой конфигурации (а также всех связанных с ней расширений, внешних отчетов и обработок) мы формируем список всех объектов и проводим анализ всех изменений относительно типовой конфы. Это позволяет заранее найти наиболее сложные для обновления участки, которые потребуют ручной работы и особого внимания. Например, если раньше проводилось частичное обновление.
2. На основе анализа оцениваем трудоемкость работ по нашему плану обновления. Этапы плана такие:
• Непосредственно обновление самой конфигурации с созданием промежуточных конфигураций. Целиком и полностью поддерживаем, что переход сразу же на финальный релиз, минуя промежуточные, усложнит управление обновлением и может привести к потере данных.
• Отдельный этап по адаптации расширений.
• Обязательное тестирование обновленной конфигурации на стороне «1С-ИжТиСи» — основное количество возможных ошибок мы исправляем до передачи владельцу.
• Только после этого — тестирование обновленной конфигурации на стороне заказчика.
• Адаптация интеграции с внешними системами.
• Тестовая эксплуатация с ключевыми пользователями.
В идеале лучше развернуть две базы и работать сразу в обеих, выявляя отклонения. В этот же этап закладывается время наших консультантов на обработку и решение замечаний от пользователей.
• Промышленная эксплуатация.
• Отдельно выделю этап актуализации: если вы дорабатываете систему уже во время обновления, то к началу тестовой эксплуатации вы можете передать нам эти изменения для оценки и переноса в обновлённую конфигурацию. Как правило, этот этап укладывается в 40 часов.

Если компании обновлять собственными силами — то часть работ на стороне владельца всегда будет выполняться быстрее и с меньшими трудозатратами, так как владелец знает свою базу лучше подрядчика. С другой стороны, у подрядчика есть опыт, так как подобные проекты он делал неоднократно — мы, например, можем предложить методику для решения часто возникающих вопросов. Ключевое — мы не проводим поэтапные обновления, потому что, по нашему опыту, при такой организации работ длиться они будет дольше и обойдутся дороже. В том числе, это может затормозить работу конечных пользователей и будет выглядеть для них как постоянное обновление. При нашем способе работы мы можем избежать лишней работы и возможного недовольства ваших коллег.

Еще один экономический нюанс — зачастую при обновлении собственными силами стоимость проекта оценивают только с точки зрения рабочего времени специалистов, не включая накладные расходы компании — поэтому сравнивать цифры напрямую было бы несколько лукаво =)

Надеюсь, эта информация будет интересна тем, кто планирует такие обновления, а выбор — делать переход собственными силами или привлекать стороннюю компанию, — конечно же, всегда будет на стороне заказчика.
1С-ИжТиСи; acanta; +2 Ответить
13. vasilev2015 1490 22.11.19 11:24 Сейчас в теме
(12) Здравствуйте, Ирина !

Совместный проект у нас не получился,
но осталось обоюдное хорошее впечатление.

:-))
Оставьте свое сообщение

См. также

Переход на разработку с хранением в Git, часть 1, подготовка репозитория 80

Статья Программист Нет файла v8 1cv8.cf Россия Windows Бесплатно (free) Хранилище Git (GitHub, GitLab, BitBucket)

Описываю свой опыт переноса разработки в git в малой группе. В тех статьях, которые уже есть, описывается полная цепочка. Думаю своими статьями снизить порог входа в достаточно важную часть разработки.

29.09.2019    4176    malikov_pro    0       

Программы для исполнения 54-ФЗ Промо

С 01.02.2017 контрольно-кассовая техника должна отправлять электронные версии чеков оператору фискальных данных - правила установлены в 54-ФЗ ст.2 п.2. Инфостарт предлагает подборку программ, связанных с применением 54-ФЗ, ККТ и электронных чеков.

Уверенное обновление 76

Статья Системный администратор Программист Нет файла v8 Бесплатно (free) Администрирование данных 1С

Уверенное обновление. Анализ файла ОтчетОСравнении.txt. Bash

18.07.2019    6182    vasilev2015    36       

Проверка обновления. Автоматический поиск ошибок 6

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Абонемент ($m) Сервисные утилиты Тестирование и исправление

Мы обновляем конфигурацию, и у нас более 100 пользователей. Конфигурация сильно переписана, обновление нетривиальное. Если после обновления находится критическая ошибка, приходится выгонять всех пользователей и исправлять. Поэтому перед выпуском в рабочую базу, обновление тестируют наши специалисты. Большинство ошибок находится при открытии форм. Появилась идея написать программу, которая бы автоматически открывала формы всех объектов, а найденные ошибки записывала в журнал регистрации. Получилась программа простейшего сценарного тестирования. Не требует настройки. Запускать в тестовой базе. Чтобы найти реквизиты, не добавленные на форму в процессе обновления или синтаксические ошибки, достаточно запустить тест под полными правами. Тестировали на УТ 11.4.1.271, должно работать на всех программах УФ. У нас тест работает пять минут.

1 стартмани

10.06.2019    1957    4    Mari_Kuznetzova    3