Lotus Notes Environments--One-Tier, Two-Tier, Three-Tiers and More!
I've been exposed to a variety of Notes environments. Like John Coolidge (see his recent post Application development in production anyone?), I have also seen everything from single tiered environments--yes development in production--to severely tiered environments, which in my opinion is anything above four. In most of the multi-tiered environments there is typically a user centric testing environment. It is this tier, in most Notes shops, that development teams appear to have issues managing. The following are some examples of the issues I've encountered:
And, here are some examples of some solutions I have seen to some of these issues:
As I stated above, these are some of the examples of issues and solutions. If I were to record all of the issues and potential solutions in this entry, you'd be really bored ;). So with this in mind I am moving forward with an effort to create some general guidelines for setting up a usable test environment with all of the feedback I currently have and any future feedback I will collect from my on site visits as well as any feedback I receive from this vehicle, so bring it on!
Hopefully, we can produce something somewhat valuable for the Notes development community. I'll keep you posted.
- How do we manage mail send functions in the UAT environment so that I am not mailing everyone in the company?
- How do I get the users to stop using the test database after the design changes have been moved to production?
- How do I get the test data into the production environment after testing is complete?
- How do I get users to test?
And, here are some examples of some solutions I have seen to some of these issues:
- Set the router on the test server to route to itself and only to one mail file then set up a view in that mail file that shows mail by user so each tester can go look at the mail pertinent to them.
- Set up a splash page in the database so that when it is on the test server it launches a page that says "THIS IS A TEST DATABASE". When in production it launches normally.
- Make the test database a replica of production.
- Refuse to move any new enhancements into their production databases until the users have tested old enhancements that are currently untested in the UAT environment.
As I stated above, these are some of the examples of issues and solutions. If I were to record all of the issues and potential solutions in this entry, you'd be really bored ;). So with this in mind I am moving forward with an effort to create some general guidelines for setting up a usable test environment with all of the feedback I currently have and any future feedback I will collect from my on site visits as well as any feedback I receive from this vehicle, so bring it on!
Hopefully, we can produce something somewhat valuable for the Notes development community. I'll keep you posted.
Category Application Development Build Process
Comments
Thanks!
Posted by Dave At 03:50:24 PM On 10/02/2007 | - Website - |
{ Link }
Posted by Mike Wetherbee At 09:06:40 PM On 10/02/2007 | - Website - |
@Dave - there's not that much to it, it's just a logic hack. You set a forwarding address for every user, pointing to the same mail-in database. Hopefully, you're user accounts in the test environment are created automatically. But if not, a simple agent in the NAB could update any new Person Docs with that one change.
Posted by Rob McDonagh At 04:13:40 PM On 10/23/2007 | - Website - |
[1] Dev ...duh! For development and initial System Test
[2] Testing ...for 'real' testing /UAT
[3] Staging ...pre-deployment - UAT is complete. No changes are made in this environment, but it could perhaps be used to recreate reported production issues. This is the ONLY environment from which changes would be moved to production.
[4] Production. Developers would have nothing higher than Editor access to databases.
Ideally, there would be separate IDs for each domain. This is easy to deal with from a developer/user standpoint by simply using Location documents (that's how I switch among IDs currently, and it makes it VERY easy to tell which ID I'm using by just looking at the bottom right of my Notes window :) ...Even in a SMALL shop - with a single Notes professional handling all dev and admin - it makes sense to have at LEAST a couple of environments, and definitely to have different IDs for each environment.
Posted by Joe Litton At 12:31:16 PM On 10/24/2007 | - Website - |
Posted by Steve At 11:16:31 AM On 05/13/2009 | - Website - |
Even if you don't have a separate physical environment for your training server, this should at least be a separate logical environment. You have already cited some reasons why you would want to do this. This will also provide you with the opportunity to promote new versions of your applications to the training server when appropriate. Changing the training environment when a new version is pushed out to the UAT or Production server may be premature. You may provide training on several versions of the application. You will need to change the data as part of the training, and then refresh it to a known state when you are finished.
It would be interesting to hear how others are addressing this issue. But I hope my perspective on this helps.
Scott
Posted by Scott Johnsen At 07:09:37 AM On 05/14/2009 | - Website - |