Unser Entwicklungsprozess ist wie folgt
Code die Aufgabe -> jemand anderes QAs Code und Dokumentation -> Aufgabe wird in Trunk zusammengeführt.
Kürzlich hat sich ein Kollege aufgrund von Problemen mit Einrückungen und Leerzeichen geweigert, die Code-Qualitätssicherung zu übergeben.
Hier sind Beispiele für diese Probleme (Syntax ist SAS):
Zusätzliches Leerzeichen:
%if &syserr gt 0 %then %goto err; /*last line of code*/
/* Footer area*/
Zusätzliche weiße Leerzeile und nicht in der Proc-Sortierung eingerückt:
/* 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;
Zusätzlicher Leerraum zwischen den Schritten:
/*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;
Die Frage ist, ein guter Programmierer zu sein, Ihren Code zu überprüfen und all diese Dinge zu korrigieren, ist das Richtige, oder ist das einfach lächerlich?
Es gibt eine zusätzliche Komplikation: Da wir keine kontinuierliche Integration oder automatisierte Tests haben, ist es dem QAer nicht möglich, diese Probleme schnell zu beheben und den Code festzuschreiben, da das Risiko besteht, dass Semikolon oder ähnliches versehentlich gelöscht wird. (Um fair zu sein, besteht das Risiko für den Erstentwickler, der diese Änderungen vornimmt. Wenn dieser Fehler auftritt, muss er nur behoben und fortgesetzt werden.)