on writing Functional Specifications

26 11 2007

If anyone has worked on preparing such documents (usually Business Analyst, System Analyst or Software Architect’s job), or needs to work on them then the following resources and tools could be very handy.

jigsaw.jpg

Resources

Although there are a scant few sites out there that deal with Functional Specification Documents directly, there are many resources you can use for various aspects of spec writing. The following sites are just a handful of the really good informational sources out there relating to (in one way or another) the discipline of creating Functional Specs: usability, visual design, architecting information, web design, etc..

Sample Functional Spec -View a chapter from a spec I wrote
xblog -visual thinking weblog
elegant hack -information architecture reading list
peterme -interface design reading list
metagrrl -design process in online Environments
Usable Web -links to web usability articles
Webword -usability
Use It -usability
Joel on Software -good look at writing functional specs
Webmonkey IA Tutorial -information architecture
Photoshop Workshop -Photoshop tutorials
Boxes and Arrows -The definitive source for the complex task of bringing architecture and design to the digital landscape
STC Reference Documents
-This collection of reference documents and templates is housed by the Society for Technical Communication
TECHWR-L Document Types
-Similar to the above STC, here you can find many tools and examples for the functional spec writer (although not always aimed squarely for functional specs)
Extending the Benefits of Prototyping
-Good article about software prototyping
Chart and Diagram Tutorial
-Very interesting tutorial on creating charts and diagrams
Software Usability Research Lab -You can find some very good articles about web usability and designing a strong web experience
Seven Pitfalls to Avoid in IA -Interesting and relevant article highlighting the common things to avoid when structuring your information
How Non-Programmers Use Documentation -This article points to the ways non-programmer type people use documentation and how you can use that information. A useful perspective since at least some of your readers will undoubtedly be non-programmers
Strategies of Influence in Interaction Design -Funny thing is, is that the scenario described in this article pretty much happened to me as well. Read this and learn how to manage the other part of your spec: the office politics
Representations and Perceived Information Architecture -This article discusses two key ideas. First, it briefly outlines four ways to represent the same information. Second, it provides a high level overview of Perceived Information Architecture.

software_lifecycle.jpg

Tools

DocBook -DocBook is a widely used DTD for creating technical documents in XML and SGML. Be prepared to learn about open-source tools if you go this direction

OASIS -OASIS maintains the most current version of DocBook, and also has a lot of other useful information for the DocBook user

XML Pro -If you’re using DocBook then you’ll probably want some sort of XML editor (of course, you can always use your own favorite text editor if you wish). XML Pro is a pretty good one

FrameMaker -Depending on what you’re working on, FrameMaker might be an overkill. FrameMaker is more designed for 500+ page documents, but again: it’s a personal preference

PageMaker -PageMaker can also be used by your average spec writer. The advantage here is the ability to manage multiple documents and assemble them into books

PhotoShop -Useful picture editor tool

Word -This is the primary tool for writing

Visio -Visio is another very useful tool. This is the program you use to create diagrams, flowcharts, models, etc

visio_crime_scene_sm.gif

Acrobat -This is what you use to convert your specs into PDFs. Having your spec in a pdf format is useful because it is the format of choice for sharing and protecting your documents. Read the rest of this entry »





Get Berkeley degree from home?

11 10 2007

From recently on YouTube Online Berkeley Uiniversity courses – http://www.youtube.com/ucberkeley.

I am wondering if one day CBTs (computer-based trainings), expectedly to be more effective and interactive in near future, replace the classical courseroom lessons with teachers/instructors. Isn’t it the typical cycle, anyway? Computers replacing humans on repetitive daily tasks. It has been already widely applied on simple introductory courses in many universities anyway for a long time (just thinking back we took such courses in 1999).

Also, providing video tutorials rather than text tutorials are getting popular as well. Though online degree programs should really improve a lot in terms of interactivity, flexibility, content richness in order to replace classical approach. Just simple slides with audio commentary and some video illustrations and some FAQ sections will not solve it. Video records of the classroom courses is one approach, with teleconferencing/interactive chat integrated into it. Such attendance from your computer gives you immediate access to other resources like Google (and think about that Google is digitizing all the books from the libraries of the biggest universities!), and VoIP and messaging applications are getting more and more advanced to provide flowless communication. And what a relief it would give to all those people who wants to study in good (foreign) universities but have difficulty in finding resources, scholarships, time for university degrees!

Anyway, this was just some messy thoughts about online education.

If you find this post useful then please consider subscribing to our RSS Feed. You can also subscribe by Email to get new posts delivered directly into your inbox.