Definindo um book de padrões de desenvolvimento de software

[fusion_builder_container admin_label=”Intro” hundred_percent=”no” hundred_percent_height=”no” hundred_percent_height_scroll=”no” hundred_percent_height_center_content=”yes” equal_height_columns=”yes” menu_anchor=”” hide_on_mobile=”no” class=”” id=”” background_color=”” background_image=”” background_position=”left top” background_repeat=”no-repeat” fade=”no” background_parallax=”none” enable_mobile=”no” parallax_speed=”0.3″ video_mp4=”” video_webm=”” video_ogv=”” video_url=”” video_aspect_ratio=”16:9″ video_loop=”yes” video_mute=”yes” video_preview_image=”” border_color=”” border_style=”solid” margin_top=”” margin_bottom=”” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” type=”legacy” flex_align_items=”stretch” border_sizes_top=”0px” border_sizes_bottom=”0px” border_sizes_left=”0px” border_sizes_right=”0px”][fusion_builder_row][fusion_builder_column type=”1_1″ layout=”1_1″ link=”” target=”_self” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” background_image_id=”” spacing=”” center_content=”no” min_height=”none” class=”” id=”” hover_type=”none” border_color=”” border_style=”solid” border_position=”all” border_radius_top_left=”” border_radius_top_right=”” border_radius_bottom_right=”” border_radius_bottom_left=”” box_shadow=”no” box_shadow_vertical=”” box_shadow_horizontal=”” box_shadow_blur=”0″ box_shadow_spread=”0″ box_shadow_color=”” box_shadow_style=”” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” margin_top=”” margin_bottom=”” background_type=”single” gradient_start_color=”” gradient_end_color=”” gradient_start_position=”0″ gradient_end_position=”100″ gradient_type=”linear” radial_direction=”center center” linear_angle=”180″ background_color=”” background_image=”” background_position=”left top” background_repeat=”no-repeat” background_blend_mode=”none” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” filter_type=”regular” filter_hue=”0″ filter_saturation=”100″ filter_brightness=”100″ filter_contrast=”100″ filter_invert=”0″ filter_sepia=”0″ filter_opacity=”100″ filter_blur=”0″ filter_hue_hover=”0″ filter_saturation_hover=”100″ filter_brightness_hover=”100″ filter_contrast_hover=”100″ filter_invert_hover=”0″ filter_sepia_hover=”0″ filter_opacity_hover=”100″ filter_blur_hover=”0″ last=”true” align_self=”flex-start” border_sizes_top=”0″ border_sizes_bottom=”0″ border_sizes_left=”0″ border_sizes_right=”0″ first=”true”][fusion_text columns=”” column_min_width=”” column_spacing=”” rule_style=”default” rule_size=”” rule_color=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=””]

Definindo um book de padrões de desenvolvimento de software

[/fusion_text][/fusion_builder_column][fusion_builder_column type=”2_3″ layout=”2_3″ spacing=”yes” center_content=”no” hover_type=”none” link=”” min_height=”” hide_on_mobile=”no” class=”” id=”” background_color=”” background_image=”” background_position=”left top” undefined=”” background_repeat=”no-repeat” border_color=”” border_style=”solid” border_position=”all” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” margin_top=”” margin_bottom=”” animation_type=”” animation_direction=”down” animation_speed=”0.1″ animation_offset=”” last=”false” border_sizes_top=”0″ border_sizes_bottom=”0″ border_sizes_left=”0″ border_sizes_right=”0″ first=”true” spacing_right=”2.6666666666666665%”][fusion_separator style_type=”single solid” top_margin=”0″ bottom_margin=”30px” sep_color=”#213d65″ border_size=”1px” width=”70px” alignment=”left” /][fusion_text columns=”” column_min_width=”” column_spacing=”” rule_style=”default” rule_size=”” rule_color=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=””]

A definição de um book é de extrema importância para empresas que possuem customizações e desenvolvimentos específicos na plataforma SAP, pois garante a disseminação do conhecimento de forma unitária, para todas as pessoas que atuarem junto às frentes de desenvolvimento, sejam funcionários ou terceiros.

Você pode elaborar o book de desenvolvimento da sua empresa levando em conta diferentes aspectos do ciclo de desenvolvimento, como padronização, performance e até processos de desenvolvimento e seus pontos de checagem.

Neste post trataremos as definições dos padrões de nomenclatura do ciclo de desenvolvimento.

Por que devemos nos preocupar em padronizar o desenvolvimento?

Dentre os principais benefícios da padronização dos desenvolvimentos ABAP podemos destacar:

1.Facilidade de treinamento da equipe:

Com materiais de treinamentos, processos padronizados e práticas de desenvolvimento definidas a integração dos novos membros à equipe fica mais ágil e fácil;

2.Agilidade nos desenvolvimentos de novos projetos:

A utilização de padrões de nomenclaturas e performance possibilita que desenvolvedores tenham foco no atendimento a resolução do problema;

3.Facilidade de manutenção dos códigos legados:

A padronização do código possibilita que todo código siga uma única estrutura onde o entendimento da codificação realizada se torna mais fácil e rápida;

4.Redução de tempos e custos de projetos e manutenções:

Uma vez definidos critérios de desenvolvimento, estes passam a ser aplicados a todos os projetos da empresa e não há mais reuniões de definições que não sejam atreladas a execução do projeto.

Por onde começo meu book de padrões de desenvolvimento?

Um book deve tomar como base uma mínima abrangência de objetos que devem ser padronizados. Para facilitar a compreensão dos padrões, dividiremos o repositório de objetos no ambiente de desenvolvimento em quatro categorias:

  • Objetos em geral: programa, request, include, grupo de função, módulo de função, classe;
  • Dicionário de dados: tabela, estrutura, view, categoria de tabela, elemento de dados, domínio, search help;
  • Código fonte: variáveis locais, variáveis globais, performs, mensagens, textos;
  • Outros objetos: transações, BADI, enhancement.

Esta visualização facilita o agrupamento dos diferentes tipos de elementos que nos deparamos no momento de um desenvolvimento de projeto ou manutenção. Como podemos verificar na lista acima, o ambiente SAP possui diversos objetos nos quais devemos nos preocupar no momento de desenvolvimento.

Vamos exemplificar as técnicas para definição de um book que entendemos serem as mais eficazes na assimilação e disseminação deste conhecimento.

Objetos em geral:

  • Programas: Os programas deverão seguir um padrão que possibilite claramente identificá-lo. É necessário saber qual seu tipo e módulo funcional.
  • Request: Toda Request deve dispor de uma descrição clara e objetiva que permita identificar pelo seu texto, todos os detalhes necessários para a manutenção da governança do ambiente SAP.
    Dicionário de dados:

Para objetos do dicionário de dados seguirão a mesma lógica adotada na definição dos objetos anteriores.

TB = Tabela

DE = Elemento de dados

Código fonte:

  • Variáveis: As variáveis devem seguir os padrões de nomenclatura e também cada desenvolvedor deverá tomar o devido cuidado com o uso das variáveis globais e locais;
  • Forms: Todos os forms deverão seguir o padrão de seu nome ser iniciado em todos os casos com o prefixo ZF_*.

Outros objetos:

  • Badi’s: É importante que quando se crie uma implementação de uma BADI utilize-se o padrão de nomenclatura para que seja rastreável e permaneça no controle da TI. Sugerimos uma constante que identifique que o objeto não pertence ao standard, também uma identificação do objeto, o módulo funcional e uma identificação do objetivo do projeto. Ex: Z” _”B _” MM _ ID
  • Enhancement: Para os projetos de enhancement a mesma lógica aplicada as BADI’s será a lógica aplicada para este objeto.

E como começo a aplicar o book?

A boa aplicação dos padrões começa antes mesmo do desenvolvimento. Inicialmente é necessário divulgar estes padrões a todos os envolvidos com o ciclo de desenvolvimento de software. A estruturação de uma interação é de suma importância para disseminação do conhecimento dentro do departamento de tecnologia da empresa.

Após superada esta etapa é necessário revisitar este conhecimento. Workshops para debater o assunto facilitam as práticas de aprendizagem e adoção do book. Após todos estarem cientes dos processos e padrões dentro da empresa, temos de monitorar se as práticas estão sendo seguidas pelos colaboradores. É importante estabelecermos uma responsável por auditar se os desenvolvimentos estão seguindo as práticas definidas pela empresa. Em todas as etapas (passagem do conhecimento e monitoria) não esqueça de incluir os terceiros que trabalham no seu ambiente de desenvolvimento!

Conclusão

Neste artigo buscamos apresentar a você os passos e as técnicas utilizadas para definição de padrões. Como podemos observar definir um book é uma tarefa bastante trabalhosa e que consome bastante energia dentro da empresa para que se chegue a um consenso.

Buscando dar agilidade a seu trabalho de definição, disponibilizamos um kit que contém o book de padrões da QAMetrik e ainda um template de apresentação para você preparar um treinamento para sua equipe! Esperamos ter contribuído com a governança de seu ambiente SAP.

[/fusion_text][fusion_separator style_type=”none” top_margin=”30px” alignment=”center” /][fusion_imageframe image_id=”1304|full” max_width=”” style_type=”” blur=”” stylecolor=”” hover_type=”none” bordersize=”20″ bordercolor=”#ffffff” borderradius=”” align=”center” lightbox=”no” gallery_id=”” lightbox_image=”” lightbox_image_id=”” alt=”” link=”http://qametrik-1.rds.land/qametrik_blog-glossrio_de_termos_abap_2016_rev2017″ linktarget=”_self” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” filter_hue=”0″ filter_saturation=”100″ filter_brightness=”100″ filter_contrast=”100″ filter_invert=”0″ filter_sepia=”0″ filter_opacity=”100″ filter_blur=”0″ filter_hue_hover=”0″ filter_saturation_hover=”100″ filter_brightness_hover=”100″ filter_contrast_hover=”100″ filter_invert_hover=”0″ filter_sepia_hover=”0″ filter_opacity_hover=”100″ filter_blur_hover=”0″ class=”” id=””]http://qametrik.com/wp-content/uploads/2020/06/Call-to-action-Glossario-abap.png[/fusion_imageframe][fusion_imageframe image_id=”1303|full” max_width=”” style_type=”” blur=”” stylecolor=”” hover_type=”none” bordersize=”20″ bordercolor=”#ffffff” borderradius=”” align=”center” lightbox=”no” gallery_id=”” lightbox_image=”” lightbox_image_id=”” alt=”” link=”http://qametrik-1.rds.land/qametrik-kit-book-de-padroes-treinamento” linktarget=”_self” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” filter_hue=”0″ filter_saturation=”100″ filter_brightness=”100″ filter_contrast=”100″ filter_invert=”0″ filter_sepia=”0″ filter_opacity=”100″ filter_blur=”0″ filter_hue_hover=”0″ filter_saturation_hover=”100″ filter_brightness_hover=”100″ filter_contrast_hover=”100″ filter_invert_hover=”0″ filter_sepia_hover=”0″ filter_opacity_hover=”100″ filter_blur_hover=”0″ class=”” id=””]http://qametrik.com/wp-content/uploads/2020/06/CTA_KIT.png[/fusion_imageframe][/fusion_builder_column][fusion_builder_column type=”1_3″ layout=”1_3″ link=”” target=”_self” hide_on_mobile=”medium-visibility,large-visibility” background_image_id=”” spacing=”yes” center_content=”no” min_height=”” class=”” id=”” hover_type=”none” border_color=”” border_style=”solid” border_position=”all” border_radius_top_left=”” border_radius_top_right=”” border_radius_bottom_right=”” border_radius_bottom_left=”” box_shadow=”no” box_shadow_vertical=”” box_shadow_horizontal=”” box_shadow_blur=”0″ box_shadow_spread=”0″ box_shadow_color=”” box_shadow_style=”” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” margin_top=”” margin_bottom=”” background_type=”single” gradient_start_color=”” gradient_end_color=”” gradient_start_position=”0″ gradient_end_position=”100″ gradient_type=”linear” radial_direction=”center center” linear_angle=”180″ background_color=”” background_image=”” background_position=”left top” background_repeat=”no-repeat” background_blend_mode=”none” animation_type=”” animation_direction=”down” animation_speed=”0.1″ animation_offset=”” filter_type=”regular” filter_hue=”0″ filter_saturation=”100″ filter_brightness=”100″ filter_contrast=”100″ filter_invert=”0″ filter_sepia=”0″ filter_opacity=”100″ filter_blur=”0″ filter_hue_hover=”0″ filter_saturation_hover=”100″ filter_brightness_hover=”100″ filter_contrast_hover=”100″ filter_invert_hover=”0″ filter_sepia_hover=”0″ filter_opacity_hover=”100″ filter_blur_hover=”0″ last=”true” border_sizes_top=”0″ border_sizes_bottom=”0″ border_sizes_left=”0″ border_sizes_right=”0″ first=”false” spacing_left=”1.3333333333333333%”][fusion_widget_area name=”avada-blog-sidebar” title_size=”” title_color=”” background_color=”” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” /][/fusion_builder_column][/fusion_builder_row][/fusion_builder_container]