Mathieu Tozer's Dev Blog

Cocoa, the development of Words, and other software projects (including those dang assessment tasks).




Starting the Spec - a Brainstorm


E-mail this post



Remember me (?)



All personal information that you provide here will be governed by the Privacy Policy of Blogger.com. More...



Things to write for the specification.

--

The document should be concerned with how the software will work, down to each minute detail. I propose that the spec should be written with guidelines given by Joel on Software, and with also any information I can get from the guys at Delicious Library.

Each section will describe a part of the software in detail.

The general technique for writing will be to note down the functionality, then describe in more detail how that should be implemented.

Remember that there is a FINITE number of things at the end of the day that the software will do, so it's not a futile, endless task. While extra functions might be dreamed up and should absolutely be written down, they must also be critically thought about and then decided whether they should be added to the 'extra functions' list.

TIME LINE
There must be a time line for this project. It is as important as the spec.
Perhaps use the mythical man month as a reference.
The deadline is the submission date for the 2006 WWDC student developer division application contest.
Find out when that is, and try and aim for completion a month before that so that the application can be rolled out and be being used before then. This means that extra bugs can be ironed out, and also that the application has time to get moving.
There must be time to make a web-site for the app as well, and it has to be uploaded to a server where it can be downloaded by users.
Time to perfect and test the installation of the software needs to be carried out.

Time needs allocated to the beta testing in the field, and for the feedback to be accounted for.

--

The software specification should also be written for an audience (naturally), that being yourself, the implementer, but also someone who you might find and trust enough to look at the document, so that they can give you advice for what it is meant to do. If not this document, then future revisions of the product proposal should be shared.

Isn't it true that as you use RCS, you get an idea of how many hours you have been working on a document also? You just have to make sure that you check out and check in each document when you start and finish working on something, and try to only be working on one thing at a time.

--

Graphical User Interface
Colours, lists and fonts, sizes, layout, resize settings.
The minimised and maximised screens
Including Mock-ups.
Menus


Initial Settings and appearances.
The Key-Chord
Preferences pane
Services offered (In the services menu)

How the user interacts with the user dictionary..
How the user Adding adds a text to be parsed.
How the user trains the computer up to their level.
This could be changed as the implementation possibilities are considered.
How the user should interact with the application.
Word lists
Adding
Deleting
System defined
The behaviour of the word library


Taking quizes
Starting a quiz
selecting a quiz to take

Learning assistant tools
These use the words input into the program and help you learn them.

Periodic reminders
What they are for
How the wording should appear.
What the alerts look like and how they are shown to the user.
The options for the user to select from once the reminder has been given

Statistics
What statistics are available
How the stats should be shown to the user
What options are available for monitoring progress.
Graphical depiction of progress. How are they accessed?

Internet word search.
What the button looks like for this function.
Should this be set automatically to happen for all words.
Can this be a preference in the preference pane.
How does it happen in the background.
What happens when nothing is found.

Viewing Texts.

Work Sheet printing

--

The document should not be concerned with implementation limitations, but I should be aware of what is available and possible at the same time.

--

Mum and Dad were talking tonight after dinner about the future, and about how they can't go on supporting us kids forever. It's nothing that I don't know really, but yeah, I just want to note it down for motivation towards my own goals. I can do this.


0 Responses to “Starting the Spec - a Brainstorm”

Leave a Reply

      Convert to boldConvert to italicConvert to link

 


+RSS | dev blog | Portfolio

About me

My status

Previous posts

  • my del.icio.us
  • my flickr