Email:   
Home
In This Issue
EasyPrint
Click here for the RSS feed's XML code. This is not a browser URL.
PROGRAMMING POWER
Building a Content Management System using Lotus Domino: software architecture and system requirements
By Andrew Stuart

About this series
Andrew Stuart's previous articles have dealt with little bits of code designed to get tiny tasks done and to add small features to your systems. He's now going to start at the other end and examine the process of building a full software application from the start. This is the second in a series of articles in which he will relate the story of how he went about designing and developing an XML-based CMS (Content Management System) for Lotus Domino. In this segment, he goes into the designing of the software architecture and specifying the system requirements. Future articles will get down to the nuts and bolts of putting it all together.

If you haven't already read the article, "Building a Content Management System using Lotus Domino: the rise of XML," elsewhere in this issue of DominoPower, you should do so now. It will provide some valuable background on the rise of XML and the need of a generic Content Management System.

For the rest of you, let's move on!

First things first: functional requirements specification
You may have gathered from the previous article that the first task in designing this system was to think up the architecture. This isn't quite true.

Strictly speaking, the first step in software design is actually to understand and document the software functional requirements. How can you know what your software architecture is meant to be if you don't know what the requirements are? You can't.

In fact, I did the architecture and the functional requirements in a loose parallel. I was able to do this partly because I had already built several major custom built Content Management Systems and knew what I was trying to build. The software functional requirements came together with the architecture.

"Hey you! Stop nodding off! This is important stuff."

I'm also not going to pretend that the functional requirements specification was as well defined and complete as the one in this article. It wasn't. What you see here is the end result, finalized, and cleaned up for publishing. During the development, it was a growing and changing list of features and functions with new stuff being added and other stuff being deleted all the time. I seem to remember using Microsoft Excel as the requirements management tool. The important thing is that there was a functional requirements specification, and it was actually used to drive development.

The software functional requirements specification is an effective way of describing everything your software is meant to do. If you can tick off every requirement and verify that your software meets that requirement, then your software is complete (in theory anyway).





[ Next ]

ZATZ Home  ·  News  ·  Back Issues  ·  Credits/Trademarks ·  Link To Us
-- Advertisement --

AUTOMATE LOTUS NOTES USER ID MANAGEMENT
ID Manager 4.5 from HELP Software provides a new level of automaton for managing Lotus Notes IDs. ID Manager lets Lotus Notes administrators get out of the business of creating and managing user IDs. Use our ROI calculator to see how quickly ID Manager will pay for itself.

Learn more about HELP Software products
-- Advertisement --

Six Great Tools for IBM Lotus Sametime
  • Encrypted and secure, browser-based, persistent chat rooms
  • Complete chat logging and auditing
  • Easy-to-define IM help desk queues
  • Manage buddy lists across any organization
  • Integrate awareness into Microsoft Outlook
  • High powered, rapid bot development tools


Visit Instant Tech for free trials and more information.
Copyright © 1998-2008, ZATZ Publishing. All rights reserved worldwide.
Editor's Login