Standard Development Methodology?

Hi,

I have been using Lotus Notes as an administrator for approximately 2 years as a university job and i’ve now been set the task of developing my own application.

I have a number of books on application design, Lotus Programming Bible etc but I am unclear if there is a design methodology I should adopt? I have an understanding of SSADM, RUP, DSDM and USDP but do not know if these are relevant.

Any help would be greatly appreciated on this puzzling topic.

Thank You

Subject: Standard Development Methodology?

Nick,There are a lot of good software development life cycles (SDLC) out there. You’ve mentioned some of them.

But they all have a few things in common. Most are common sense, but are sometimes forgotten.

  1. Get buy in from your client/user before you start. Write a project charter. Ask yourself who’s going to pay for your time.

  2. Do detailed requirements.

  3. Do a detailed technical spec.

  4. Build

4a. If you’re doing recursive programming, go back to #2.

  1. Unit test

  2. System test (this should be done by a professional tester)

  3. Document your system. Build help for the user.

  4. Plan for deployment

  5. Deploy

  6. Do a lessons learned.

Subject: RE: Standard Development Methodology?

Right, I do understand this and I have covered most of the topics that you list.

I was just wondering if there was a SDLC that most Domino applications adhere to? That most programmers adopt?

Thanks

Nick

Subject: RE: Standard Development Methodology?

Nick,I’m a fan of RAD (Rapid Application Development) or Agile Software Development

Subject: RE: Standard Development Methodology?

Great,

Thanks Dan, you have been a great help

Subject: RE: Standard Development Methodology?

These are all kinda of technical recommendations regarding process and architecture. Cool.

A part I think that application developers often go light on is the details in the ‘get client buy-in’ part. I think it saves you headaches to do this as soon as you can.

I like to create non-functional or semi-functional interface designs early on, so the client can get a rough idea of how things will look and act up front.

How do the forms layout? How does the navigation work? Are there commonly collapsed sections? Tabbed tables? Shown/hidden sections?

Once you establish this ‘graphical vocabulary’, keep this consistent throughout your application. Red text ALWAYS means alert, blue is ALWAYS a link. Then do your damnedest not to use red or blue for anything else.

Often this stuff sounds like the cart before the horse, and developers think it will be easy to pretty it up after the mechanics are done, but I disagree. First, your users will understand what you are talking about MUCH more clearly with something…anything visual to hand their hat on. Second, you don’t want to have to change all the colors and margins on every table on 30 forms because you got the marketing guys input at the end. Yes, there will be changes anyway, but I think its worth it.

As for the technical niceties…

Comments, of course. I like to mimic the format from .NET with a summary, parameter description and return value description as a standard.

Be verbose, be consistent. I hate slogging through code with variables like ‘rgv’ and ‘ltsd’. Are those extra 3 letters REALLY saving us much anymore? Dim your variables at the top. Or in line. Just pick a way and more or less stick to it. Even think about how you segment blocks of code with returns and stick to it. Beautiful code is so much easier to follow.

All your LotusScript should live in the Script Libraries! Make calls to your libraries from your agents, actions and so on.