Here’s the requirements document template (the “Product Definition”) I created for use when I was a project manager. Feel free to use and change as needed. It serves as a basis for functional and non-functional requirements. To check out what other documents may be needed in a project, check out my Project Documents post.
In the past as a project manager, I came across various tools to management the never-ending lists of requirements. The following tools specialize in different key areas:
- Requirements Gathering
- Protopying of Products
- Use Case Modeling
- Managing Actors & Resources
- Collaborative Work Among Stakeholders
While Microsoft Project is best for timelines and allotting resources, its a major hassle getting it fine-grained as some of these tools. Also, it does not possess some of these major functions.
I bring this up because with all the major stakeholders and moving pieces in the auctions project, and because of the unique way that it has to be project-managed, we need more order in managing various resources and artifacts.
The tools are as follows:
Check out the WikiPage for “Comparison of project management software” for a more comprehensive list of software.
These are some of the items I’ve used in my projects. Not all items apply for all projects. Also, various items can happen simultaneously and could be maintained via various methods. Terminology may change depending on your organization.
Project Definition (PD) – Maintained via Microsoft Word
The biggest document of the lot. It includes project goals, target release, deliverables, requirements, use cases, business rules, glossary, and references other project/business documents.
Project Plan – Maintained via Microsoft Project
Timeline of the entire project. It includes, planning, approval, development, testing, deployment. The project manager receives the project plan from the vendor and may work with it as-is or may need to work together with the vendor to establish points.
Content Dictionary (CD) – Maintained via Microsoft Word
Content that will be on the user interface of applications / products. Two purposes:
- It is formatted using a very primitive wire-frame layout. The wire-frame represents describes to the designer the priority of text and where on the page it should be. The design team then improves on the wire-frames to include usability then turn it into mock-ups of actual web pages.
- Text is prepared in this document so it can easily be translated into multiple languages. This document is submitted to the translator and we get a document, with this same layout, but content translated.
Release Management (RM) – Maintained via Microsoft Word / Visio
A plan that lays out how the project is to be rolled out / released.
Quality Assurance – Maintained via Microsoft Word / Visio
A plan that lays out the strategy for quality assurance.
Site Map – Maintained via Microsoft Word / Visio
Visual layout representing new tree structure of pages that will be added to our current one.
Contractual Framework (CF) – Maintained via Microsoft Word / Adobe Acrobat Professional
Legalities of the contract, relationship, payment, and deliverables. It must be agreed by the vendor before taking on any work.
Request for Proposal – Maintained via Microsoft Word / Adobe Acrobat Professional
A quick summary that explains the details requirements of the project. Brief, around 10 pages. This is the only document that the vendor can possess without an NDA. Word / PDF
Non-Disclosure Agreement (NDA) – Maintained via Microsoft Word / Adobe Acrobat Professional
A document signed by the company and the vendor that states what shall remain confidential between both parties and as well as legality behind any actions taken. Word / PDF
Vendors – Maintained via Microsoft Word / Excel
Various vendors selected based on clientele, experience (e-commerce, financial, and creative experience), portfolio, web site look-and-feel, professionalism, location, and development & management methods, size.
The software project manager will need to keep track of emails, proposals, estimates, quotes, contact information, status, etc.
Business Documents – Maintained via Microsoft Word
A collection of other documents that are part of the project in which the vendor shall use to familiarize themselves on other parts of the company – business process for departments, other projects, policies, etc.
There are actually two parts to a shopping cart application. The first consists of the actual shopping cart (where the users search and buy items from) and the other is the administrative portion where tasks such as setting price, adding/deleting items to the database are done.
An Internet shopping cart actually consists of many subparts. These are the basics:
- Session Tracking
- Search Engine
A catalog is information about goods. Customers can browse the catalog (web pages) and see what there is in stock. Each good will most likely be composed of the name, picture, and price. Rather than assigning an item to each web page, the items can be generated dynamically from a database on to one page. Instead of listing all items on one page, a customer can browse through page by page. (All the items will be browsed page by page. For example, if there are 20 items, then it’s broken down into 4 pages. If there are 100 items, it will be broken down into 25 pages, with links that say Next/Back so they can go to the next page. In a catalog, it’s preferable that items be listed in categories.
While a customer is browsing a catalog and looking for items, there has to be a way to keep track of what items he/she clicks on (so it gets sent to the customer’s shopping bag). This is done through session tracking. On check out, the check out process will tell them to register (fill in their information and pick a username and password) before checking out. The information, after they register, is saved in the database so they can login next time they enter the site and not have to reenter it again (all except credit card information).
This is closely related to the catalog. Rather than browsing and clicking links to find the item the customer wants, they can go to a search textbox and search for an item. This will be located on a visible spot on each page. After the customer submits the search, it will display the results like a catalog with Next/Back links.
This is vital when processing credit cards and keeping customer information safe. Information submitted by the customer will be encrypted and stored in the database. Also, when submitting information so credit cards get processed, it will be submitted under an SSL secure connection. A logo can be shown by whomever company handles the SSL to make it shown that there is in fact security.
Directly connected with session tracking and security. Before checking out, customers will have to submit valid information about themselves. They will be sent to a form page under SSL where they must put valid information. After they submit, the data will be validated then sent off to a gateway where the funds will be sent to a merchant account. All done securely. An automatic e-mail will be sent to the user when this process is done.
Done as secure as Payment. The customer will pick which item he wants to return, put all the necessary information from the invoice they received, and the return/exchange will be processed.
The administrative portion consists of two basic subparts:
- Content Management System (CMS)
- Data Inventory
Content Management System (CMS)
There will be pages on the web site that have significant importance. For example, the home page and the catalog pages. These are pages that will constantly be changing. (The home page can contain items on sale, popular items, “just in,” etc. It might also be a good idea to include some of this home page information on the catalog pages because they are constantly browsed.)
Instead of changing the pages manually (opening up the page, changing the source code of each page), it will be faster and safer (changing the source code has to be done carefully so no errors occur) to do it through an administrative feature. You can go into an administrative panel, and just change that portion of the page that you want to update. There would never be a need to look at any code, just a click, type, and submit. Everything will be done through options. This is what a CMS does. Manages the content of pages.
There will be a section under the administrative feature where company employees can insert/update/delete information from the database. This information can be customer, item, purchase information. They can also check out a queue of the items customers have purchased.
Shopping Cart Application Add-ons
A plan that’s executed if something fails or is performing poorly. For example, if the host goes down, there’s an error in the application, or there’s a hacker break-in.
Schedule content through the content manager. Can assign by date when something will be on sale, for example. When the date comes, it will display the new information on the page automatically.
This will create an online community.
Where people can interact in real time.
Each item can have its own rating. For example, 1 out of 5 stars.
Users can critique each item. Contains language filter.
Stats can be generated according to customer’s habits. What they click on, what the buy, etc. Reports can be generated according to this information. As an option, automated actions can be taken upon reporting information. For example, if a customer has bought purely shoes in the past from the site, then show shoes on the home page.
Search not only by item name, but by price range, date range, and any other related information.
Export information from the database as text files, XML, Access and Excel.
Send customers e-mails with news on prices, offers, new items, etc.
A page that contains links and other related information about other sites.
Gift Certificates can be bought online so it can be used in-store or online.
Will contain a list or a map of all the sections and pages of the web site for quick navigation.
Other Online Marketing Options:
- Web Rings
- Search Engine Submission
- METATAG creation