The DriverPass project concerned a client (DriverPass) who wanted a system for allowing customers to take driving lessons and study for driving exams. They wanted customers to be able to access this information online and schedule appointments online.
I think I did pretty well with the various diagrams and charts. I think I would probably like to revisit the business requirements document as I struggled a little with the distinction between functional and nonfuctional requirements.
I tried to consider the user's needs mainly by considering what they said in the interview and reading it in the context of modern web applications and what customers expect from them. This is important because users often don't have the technical knowledge to articulate exactly what the design should look like, so some interpretation is usually required.
My approach to designing software is to get working prototypes done quickly and solicit feedback from users before polishing and adding features. I think this can help clarify the initial plan and business requirements and prevent a lot of wasted development time working on features that don't fulfill user requirements.