私たちの開発プロセスは次のとおりです
タスクのコーディング->他の誰かのQAコードとドキュメント->タスクはトランクにマージされます。
最近、インデントと空白の問題のために、同僚がコードQAの合格を拒否しています。
これらの問題の例を次に示します(構文はSAS)。
追加の空白:
%if &syserr gt 0 %then %goto err; /*last line of code*/
/* Footer area*/
余白の余分な行、およびproc sort内でインデントされていない:
/* End Of header * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
proc sort data = %dataset ;
by id;
run;
%if &syserr gt 0 %then %goto err;
proc sort data = &second_dataset.;
by id;
run;
%if &syserr gt 0 %then %goto err;
ステップ間の余分な空白:
/*join all details on for each record*/
proc sort data = &data out = data_srt ;
by &conditions;
run;
%if &syserr gt 0 %then %goto err;
proc sort data = &data2.;
by &conditions.;
run;
%if &syserr gt 0 %then %goto err;
/*cartesian join*/
data new_data;
join data
&data2. ;
by &conditions;
run;
問題は、優れたプログラマーであるあなたのコードを見て、このようなことをすべて修正することが正しいことなのか、それともとんでもないことなのでしょうか。
さらに複雑な点があります。継続的な統合や自動テストがないため、QAerがこれらの問題をすばやく修正してコードをコミットすることができず、セミコロンなどを誤って削除してしまう危険があります。(公平を期すために、リスクは最初の開発者がこれらの変更を行う際に適用されるため、このミスが発生した場合は、修正して先に進む必要があります)。