I began by considering products that I was already familiar with. Such products included:
- Google Wave
- Google Docs
- TreePad
- Microsoft OneNote
I then began to search the internet for products that performed the same/similar functions that I was not aware of. This searching revealed a couple of products that companies had produced.
After using some of these products to get a better understanding of the way they performed certain actions that I believed may be useful in the development of my app. I began to draft an outline of the requirements I would want my app to meet. This was divided into, functional and non-functional requirements.
Functional requirements:
- Save edits to a note in real-time
- Display edits to a note in real-time when being viewed
- Display the data a tree structure with a node at the end of a branch storing the data
- Store the following properties for each note: title; creator; contributors; date created; date last modified
- Store the users log-in details
- Keep a user logged in until log out selected
- Provide a method for a user to view all of their note’s
- Allow for notes to be sorted by a property of the users choice
- Allow for the user to choose to open notes in a new window/tab or the same window
- Prompt the user to enter the notes properties when creating a new document
- Allow for the owner to view or edit the properties of a note from the main window
- Allow for notes to be viewed by selected other users
- Allow for notes to be edited by selected other users
- Handle multiple users attempting to edit a note simultaneously
- Allow for images etc. to be uploaded as part of a node to a note
- Allow for a list of links to be saved as part of a node
- Allow for links to be made between two nodes in addition to those between the node and its predecessor
- Allow for a node and its successors to be moved to another node
Non-functional requirements:
- Not store the users password in clear text
- Not allow unauthorised access to a document
- Be accessible from the web
- Be independent from: Device; Browser; Platform
The next stage of the project was is to research technologies and languages that can be used to best implement "the artefact".
No comments:
Post a Comment