Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: PL/SQL Code Reviews
redrobot5050_at_gmail.com wrote:
> Hello all
>
> Has anyone here ever participated or lead an group in a PL/SQL code
> review? My project manager and I believe that our we need to
> incorporation a code review/inspection into our process and I am trying
> to assemble a list of resources that should help us in accomplishing
> this task.
>
> Most importantly, I'm looking for sites/white papers that deal with
> either Code Review (the general approach) or specific documents
> pertaining to the process (defect checklists specific to PL/SQL)
>
> CW
Many including teaching classes on how to do them.
Any code that is not reviewed, quite simply, does not belong in test ... much less production.
The biggest issues around code reviews are: 1. Management must have the background to mandate them and stand
behind the reviewers.
2. Everybodies code must be reviewed ... that includes UNIX sys
admins and their shell scripts as well as the code executed by DBAs as part of their "maintenance" function. It can not just be a "beat up on the developers" fest. 3. The person or persons doing the reivew must actually be
competent ... not just have an important title. I have seen DBAs that couldn't write a decent PL/SQL package criticizing code they quite frankly couldn't understand. 4. The persons reviewing the code should include (1) A subject
matter expert, (2) the person that wrote the code, (3) at least a few members of the development team. This is done so that lessons are learned and spread through the group. 5. The "subject matter expert" is not the "expert" because they
have been using Oracle since version 5, or 6, or whatever but
is actually an expert on the version being used. I have seen
Oraclasours (Oracle dinosaurs) who had never seen bulk collection
pass as good code with cursors that was horrible just out of
pure ignorance.
6. Make sure that the review is done as an educational event not
as a lets make the coder feel like they are being personally taken to task event.
<RANT>
A major cellular phone company in this area just sent me a requirement
for a new DBA. They specifically asked for someone that DID NOT know
Oracle 6, or 7, or 8.0.x.
Why you may ask? Why not go for someone with many years of experience.
Because they are tired of dealing with dinosaurs that are trying to manage 9i and 10g databases the way they managed older versions. They'd rather train someone on what to do then untrain them on ingrained bad habits.
This is not the first time I've heard this from a DBA lead about his co-workers but it is the first time it has been reflected in a corporate hiring policy.
If you aren't keeping your skills up ... you might as well know COBOL. </RANT>
-- Daniel A. Morgan http://www.psoug.org damorgan_at_x.washington.edu (replace x with u to respond)Received on Thu Sep 15 2005 - 09:52:32 CDT