Rahul Mittal
Last Updated: March 3, 2003
Disclaimer
This is a working draft specification for the upgrade to Rahul Mittal's website, http://www.rasteroid.com/ (i.e. this website). This specification is incomplete.
This specification does not discuss algorithms or other implementation details. It simply outlines the user experience when they interact with http://www.rasteroid.com/.
Scenarios
This website is meant primarily for me to disseminate my work and my ideas to the internet audience. It is meant both as a tool for me to log my ideas as well as a means for users to retrieve documents and knowledge that I share.
Scenario 1: Browsing
- Incomplete -
Non-Goals
This version will not implement the following features:
- Discussion forums of any kind
- Guest books
- Ability to change website passwords
- Multiple browser compatibility. It is assumed that IE 6.0 is being used to view the website
- Search capability
- Web-based backup system
- SQL Server database connectivity
- Cookies
Requirements
- General/All pages
- Must be easy to maintain. This means that a very *minimal* amount of coding should be required once the basic site is operational
- New pages, files and resources must be manageable without having to resort to source code
- Must be reasonably efficient and fast
- Must conform to the XHTML1.0 standard
- Must have clear separation of code and data
- Welcome page
- Displays the most recent news
- Link to a page with older news
- Contact page
- Email form for people to send me email
- Email encryption
- Save a copy of the mail sent to me on the server
- Separate link to download my public key
- Alternative contact information (MSN, Yahoo!, etc. but NOT my real address or phone number)
- News management page
- Add news (date, time, author, title, message)
- Automatic archival of older news
- Content management page
- Add new pages
- Edit/Rename/Modify existing pages
- Delete existing pages
- Query database page
- Page to handle uploads and downloads of data files, images, etc
- Directory of all pages (nodes) on the website
- Menu system
- Present on the left side of every page
- Fully hierarchical and tree based, like at MSDN
- Data to be read from an XML file. Later, make it readable from the Access database
- Traffic logging system
- Store IP information for each session, and all the pages browsed during that session
- Page to reconstruct browsing history for each user on a session by session basis
- My IP logging system
- Save the last known IP address that I (only the author) used to access the website
- Password management page
- Password controls the Content and News management pages
- Passwords need to be transmitted securely, rather than in plaintext