220 likes | 231 Views
This update highlights the current state of the Student Companion Project, including achievements, member contributions, design changes, source code structure, modularity, communication, synchronization, and user interface developments.
E N D
Student Companion-Project Current State – Achievements Members in Croatia: Ante Radman Bruno Samardžić Gabrijel Smoljkić Members in Sweden: Andreas Drake Asad Saleem Muhammad Usman Ghani Robert Lundquist Vasilis Odontidis
Agenda • Milestones fulfilled • Current project phase • Workload and cost • Roles for development • Design changes • Detailed design • Source code structure • Modularity demo • Communication • Synchronization • GUI
Milestones DONE DONE DONE ALMOST ON TRACK LATER ON TRACK LATER LATER LATER
Current project phase • First version of all initial documents done – continue revising through entire project • Defined structure for the CVS • Some problems with WinCVS • TortoiseCVS works great • Defined structure for the development solution • Made a prototype for modularity • The implementation phase started • Everyone working on their ”own” component • Had some problems with the Bluetooth connection • Solved with another method • Have presented some GUI proposals for the customer • The latest approved
Roles • For the implementation we have defined some new responsibilities • Almanac (Usman) • Backup (Robert) • ConnectionHandler (Gabrijel, Ante) • Courses (Asad) • FileHandler (Andreas) • InformationHandler (Bruno) • Installer (Robert) • Language (Andreas) • Search (Vasilis) • Sync (Gabrijel, Ante) • Integration - Andreas and Robert
Design changes • Decided to skip the SQL Server Express • Will use XML instead • Makes it possible to reuse code on both PC and PDA • ConnectionHandler – new component • Will abstract the connection with other devices • Divided some components • One core part, several GUI parts
Source code structureand modularity prototype • Time for some demo…
File Courses.xml <courses> <course ID="" name=""> <note ID="" datetime=""> here goes text </note> <description> here goes description </description> <file ID="" location=""> here goes file comment </file> </course> </courses> File events.xml <events> <event ID="" date="" time="" courseID="" reccurence="yes/no"> <activity ID="" /> </event> </events> File activities.xml <activities> <activity ID="" courseID="" grade="" updated=""> <note ID="" datetime=""> here goes text <file ID=""> here goes pageComment </file> </activity> </activities> File notes.xml <notes> <note ID="" datetime=""> here goes text </note> </notes> File structure - xml
Communication • Primary task: connecting to PDAs • Successfully started Bluetooth connectivity • Supporting both one-to-one and one-to-many topology • ConnectionHandler component
Communication - continued • Underlying protocol: TCP/IP (WindowsSockets) • working on a familiar and reliable technology • made the system easy to expand • Special testing version for simulating PC-PDA communication
Synchronization • Exchanging XML messages • Three synchronization steps: • devices send their data to master • master synchronizes it’s database and sends necessary data to others • exchanging files where necessary • Made a separate component for synchronizing — SyncComponent
User Interface • We started with a research in user interaction principles, mainly within: • User Experience Guide from Microsoft • Human Interface Guidelines from Apple • Principles of Interaction Designfrom Nielsen-Norman Group • The main resource: • Our own Requirements definition
User interface • Main issue: information architecture • What is displayed to the user • How it is displayed and how it works • The initial UI draft was very large and complex • What we did: • Removed all elements and actions that weren’t needed • Bring information that is important to user to the first plane • Conformed all elements and behaviours to most common practices • Made the system as simple and efficient as possible
User interface • The blueprints
User interface • The blueprints
References • Microsoft User Experience Guidelineshttp://msdn.microsoft.com/library/en-us/dnanchor/html/anch_UIDesignDev.asp • Apple Human Interface Guidelineshttp://developer.apple.com/documentation/UserExperience/Conceptual/OSXHIGuidelines/ • NN/g First Principles of Interaction Designhttp://www.asktog.com/basics/firstPrinciples.html
Thank you Now your questions, please.