Team Development with PL/SQL Developer

Hi Folks,

I work in a team together with 2 colleagues on a PL/SQL project that was started about 5 year ago by a small German company. Meanwhile the end customer had some bigger differences with that company, cancelled the contract with them and hired one of us to continue the project. Since the amount of work increased, the customer hired two additional developers including me.

And now we have a problem. In the past, only one person worked on the project, and tere was no proble in concurrent editing of e.g. a package body. But now the situation has changed, and we should take care that no team member can concurrently work on the same package as a colleague, which could possibly cause the loss of some work :(

Unfortunately, no one of us has any experience in team development with PL/SQL; we just worked alone on projects in the past. Does anyone of you have a good tip where I can find some hints or how-to-dos related to team development with PL/SQL developer?

Any help is higlhy welcome.

Greetings from Germany
Rainer Koenigs
 
For team development I would suggest introducing a version control system (e.g. Merant PVCS Version Manager, Microsoft SourceSafe, ...). This not only controls concurrent access, but also allows you to track who has done what, when and why. It will even allow parallel development on the same source.

The VCS Plug-In allows you to integrate the version control system in PL/SQL Developer, and you can always integrate PL/SQL Developer with the version control system (launch PL/SQL Developer when editing a source that is under version control).
 
We use CS-RCS from Component Software (www.componentsoftware.com) for managing our Oracle (and PowerBuilder) code. We switched about 4 months ago and the fact that all 5 of our programmers are actively using it should tell you how we like it.

You can access your CS-RCS repository and files using their client software, a web browser or directly from PL/SQL Developer , UltraEdit (a favorite code editor when we're not in Developer), and even from Windows Explorer's context menu.

We use it mostly for our custom PL/SQL code, which is fairly extensive.

Licenses are $200 each or $175 per seat if you buy a 5-pack, which is TONS cheaper than anything else I've ever seen. You can try it out among your team for free for the usual 30 days.

Documentation is a little scarce, but their support is terrific, so I heartily recommend it.

Don't forget that the most important part about implementing VCS is the discipline to all use it and use it consistently. Don't shirk that part if you want to get results.

Bet of luck,
 
I recommend a cvs or a newer one - subversion which is MEGATONS ;) cheaper than anything else I've ever seen, just it is for free !
Cvs for many years is the most popular version controling system in a open source community, so it has more users (are better tested) than any other commecial software.

You can also access your cvs (or svn) repository and files using client software, a web browser or directly from PL/SQL Developer, and even from Windows Explorer's context menu.

Joachim Rupik
 
Hi all,

first I'd like to thank you for your anwers. But I'm afraid there was some misunderstanding. I am familiar with versioning control systems since many years (Visual Source Safe, CVS, Clear Case), that wasn't the core of my question. We already use Micro$oft VSS for other parts of our project, that are not directly related to PL/SQL.

What we really do not know is, how to set up a project in PL/SQL Developer, so that it can be controlled with any VCS. All of our sources reside only in the Orcale database at the moment, but not in a file system that is under version control. And we should know what to do now to reach that goal.

Sorry that I did not express my first posting clearly enough, and thanks again in advance for any tips and answers.

Greetings from Germany
Rainer Koenigs
 
oooh.. Looks like you have your work cut out for you.. First things first though,

pick a source code control system and install it on a server.

Install the client software on your respective machines.

Begin adding source files to the appropriate directories.

There is no way to simply export all of the source code automagically. You'll have to do some clerical type footwork to get all of it in there.

.....do you have any interns? :) Put them to work.
 
You need to get into the habit of working with the package creation scripts instead of directly editing the stored source code. I generally switch off the "Allow editing of database source" preference so I actually can't edit stored code.

It is also useful to embed version strings within the code. For example this is our standard package header template (defined in a PL/SQL Developer template on a shared drive, so it's what you get when you select File > New > Program Window > package Specification):

Code:
CREATE OR REPLACE PACKAGE demo
AUTHID DEFINER
------------------------------------------------------------------------------------------------
-- RCSfile:           $RCSfile$
-- Full source path:  $Source$
-- Author:            WROBERTSON
-- Last modified by:  $Author$
-- Last modified:     $Date$
-- Revision number:   $Revision$
-- ID:                @(#)$Id$
-- Description:
-- Copyright:         http://www.2helix.com
------------------------------------------------------------------------------------------------
AS
	k_spec_version CONSTANT VARCHAR2(100) := FORMAT_VERSION_STRING('$RCSfile$ $Revision$');

	k_error_code CONSTANT PLS_INTEGER := -20001;

	FUNCTION version
		( p_component VARCHAR2 DEFAULT 'BOTH' )
		RETURN VARCHAR2
		DETERMINISTIC;

	PROCEDURE version
		( p_component VARCHAR2 DEFAULT 'BOTH' );
END demo;
There's a package body template that goes with that, and the FORMAT_VERSION_STRING function just tidies up the output from CVS (which is what we use, though it's not an ideal tool for IT development IMHO).
 
Originally posted by Rainer Koenigs:
Does anyone of you have a good tip where I can find some hints or how-to-dos related to team development with PL/SQL developer?
Here is some of the info I gave to my developers:

The following PLSQL Developer preferences (Tools | Preferences) are required for proper collaboration in our environment:
 
Another curious newbie question:

How do you get your PL/SQL scripts loaded into the database and compiled and debugged?

Brian Baker wrote:
> The following PLSQL Developer preferences
> (Tools | Preferences) are required for proper
> collaboration in our environment:
>
 
Originally posted by Joachim Rupik:
I recommend a cvs or a newer one - subversion which is MEGATONS ;) cheaper than anything else I've ever seen, just it is for free !

You can also access your cvs (or svn) repository and files using client software, a web browser or directly from PL/SQL Developer, and even from Windows Explorer's context menu.

Joachim Rupik
How have you managed to access subversion directly from PL/SQL Developer? I've been trying to find a working SCC proxy, but failed so far!
 
Back
Top