Автоматизация контроля программного кода в ABAP с помощью SAP Code Inspector

Жизнь подкидывает мне интересные задачки. На днях мне пришлось задуматься об автоматизации контроля качества ABAP разработок. В системе есть инструмент для автоматизации контроля качества программного кода, написанного на языке ABAP. Транзакция ATC созвучна с ABAP Test Cockpit.

Тестирование программного кода в SAP

тестирование программного кода (авторство изображения не установлено)

Например, мы можем сказать системе проверять все деблокированные запросы в части разработок на контроль качества с помощью ABAP Code Inspector, где можно задать правила приемки кода. Можно попросить систему автоматизированно по расписанию проверять код, написанный программистами на заранее определенные правила и не допускать его перенос по ландшафту. Для заказчиков я бы рекомендовал включать такие требования в технические задания, чтобы хоть как-то прививать культуру разработки и тестирования кода. Не забывая, что за качество тоже нужно платить. Хотите обеспечить отсутствие бэкдоров в системе или неэффективного кода — пропишите в Code Inspector правила, которые не позволят переносить такие «сомнительные» разработки до ручного утверждения. Запретите прямые SQL выборки во избежание нарушения полномочий доступов. Разработайте политики безопасности, производительности и управляемости программным кодом — это сэкономит существенное количество денег, если вы хотите их считать. Деньги считать.

Транзакция SCI — Code Inspector — позволяет настраивать правила, перечень объектов/людей для контроля. Правила игры простые:

  1. Код должен быть «чистым» в части производительности, читабельности, безопасности. Иначе рефакторинг.
  2. Код должен быть на 100% покрыт тестами. Иначе вы получите ошибки в продуктивной среде.
  3. Пункты 1 и 2 должны быть регламентированы, документированы и обязательны. Без исключений.
  4. В случае проблем начни с пункта 3.

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

Откроем транзакцию SCI.

Читать далее


Распознавание голоса в SAP HCM

Такого вы еще в HR и в SAP не видели. Прошу зафиксировать и засвидетельствовать время и дату декларации инновационного подхода к сервисам самообслуживания по теме «распознавание голоса в SAP HCM» от Поцелуева.

Многие из вас слышали про такие вещи как Apple Siri, Amazon Echo, что-то у Гугла (не знаю что). На сегодня гугл считается самым продвинутым инструментом для распознавания речи, так как обучение построено на элементах искусственного интеллекта. Нейронные сети, нечеткая логика, комбинаторика, синтез речи и прочие непонятные слова.

Так вот. В ночи игрался я с телефоном, обновляшки обновлял. И наткнулся на гугловский переводчик оффлайновый. Нашептал ему страсти в микрофон, а он мне выдал то, что на картинке выше. Сон улетел в тар-тарары. Хабрахабр сказал, что год назад яндекс и гугл выпустили свои облачные API и оффлайновые SDK для распознавания речи.

Так вот. Прислоняется к телефону человечек, томно/грозно/нудно/быстро/страстно требует 2-НДФЛ. Его волновой импульс улетает в облачный сервис гугла или яндекса, где производится трансляция в текст. А с текстом мы тоже на нашем деревенском уровне умеем. Берем регулярные выражения (regex для программеров). По ключевым словам находим объект (2-НДФЛ) и его параметры (период). Синтезируем вопрос: «Эй, ты точно хочешь 2-НДФЛ за 2016 год»? Если абонент совсем абонент, то мы отправляем заявку в бухгалтерию.

API абап умеет. Odata тоже умеет. Regex тоже умеет. Вот нам с вами и средство замещения порталов ESS/MSS. Визуализация на UI5, взаимодействие голосом. Сюда добавляем процедуру оценки персонала, утверждение/отказ заявок и … (а тут маленький секрет)…

Любопытным предлагаю погуглить или поЯндексить: https://cloud.google.com/speech/ и https://speechkit.yandex.ru/dev

Ну так, для любопытных: https://tech.yandex.ru/speechkit/cloud/doc/dg/concepts/speechkit-dg-recogn-quick-start-docpage/