Oracle Stored Procedures / schema maintenace but still keep service online, how? I got a service running on a classic 3 tier model: 2 web servers and 2 application servers connecting to a single Oracle database instance.  Most of the business logic are written as stored procedures in the Oracle DB.  The problem I am facing is that the service has to be taken down to update the stored proc each time bugs need to be fixed or new features have to be introduced.  

I'm just wondering if there is any way to keep the service running while we are updating the stored proc.  Approaches involving getting new hardware / software are also welcome.
Why does the service need to be taken down when you fix a bug?

You can deploy a new PL/SQL package without shutting anything down.  If you are changing the interface between packages or to the middle tier this may be complicated by needing to keep a backwards compatible version of some procedures or functions around.

If someone is running the existing PL/SQL package then your install of a new package will block until the user exits as it needs to obtain a lock at the package level.