170 likes | 323 Views
The Collaborative Dynamic Art Project. Lifecycle Architecture CSE 403 A Spring 2006. Features. Processing Compiler Art Node Display Tagging/Search Message Board Server Platform User Info Bug Reporting System Test Infrastructure Documentation. Server Modules.
E N D
The Collaborative Dynamic Art Project Lifecycle Architecture CSE 403 A Spring 2006
Features Processing Compiler Art Node Display Tagging/Search Message Board Server Platform User Info Bug Reporting System Test Infrastructure Documentation Server Modules Database (SQL Server) Processing Compiler Search/Tagging System Message Board Generator Art Node Display Generator Message Board Bug Reports Node Edit Page Custom Node Displays (from user search criteria or the tree descending of a selected node) User Authentication (login) Home Page (Initial Art Node Display) Client Modules
User Flow Diagram Home Page Initial Art Node Display Custom Node Displays (from user search criteria or the tree descending of a selected node) User Authentication (login) Bug Reports Message Board Node Edit Page Processing Compiler Note: Search Functions and Links to other pages will be embedded in the masthead of all reachable pages
System Architecture View Server Machine (Windows Server) Processing Compiler Server Applications (ASP.NET/Pearl) Art Node Display Generator Search/Tagging System Message Board Generator Database (SQL Server) Web Server (IIS or Apache) Web Clients (JavaScript, Java Applets, and HTML) Bug Reporting System Input Message Board Display Art Node Display
Processing Compiler • Given a source file and location for a jar file, it preprocesses and compiles the source and outputs a jar at the specified location ready to be embedded in a webpage. • We are taking the processing source code and redesigning it with everything unnecessary ripped out.
Server Platform • Create an ASP.NET interface capable of catching calls from HTML/JavaScript. • Create a database capable of conducting data transactions with the SQL Server
Art Node Display • Provide an easy way for users to create sample images (integrate into client) • Display them in the directed graph in the constrained space of a browser window
Tagging/Search • Create a way to attach and search project metadata
Message Board • Develop a locally (our server) managed message board
User Information user user manager usernamepasswordprivilegenamestreet city state zipcode emailcareerhomepagedescription add_user(username, password) get_user(username, password) user_exists(username) verify_user(username, password) update_user(user_info, old_password) remove_user(username, password) • Keep track of users, their activity, passwords, bug reporting etc
Bug Reporting System bug bug manager number section description status discussion priority user add_bug(section, description, username, priority) update_bug(bug_info) find_num(bug_number) find_section(section) find_topic(keyword) • A way to aggregate, search, and respond to bug reports/feature requests
Test Infrastructure • Create a test infrastructure capable of supporting the interface of all of the project features • Conduct regular integration testing (when necessary) • Note: all groups are expected to do independent unit testing of their features
Documentation • Create deployment and client user manuals • Develop requisite class documentation
Team Roles/Responsibilities • Cy K - Team Lead/Architecture • Alex Z - Documentation • Brian H - Processing Client • Aaron G - Processing Client • Van P - Server Platform • Arina R - Test Infrastructure • David V - User Info and Bug Reporting System • David R Art Node Display, Tagging/Search, and Message Board
Project Schedule Week 3 • All teams complete/confirm architecture, specification, and risk analysis • Complete in house specification (Cy) • Complete LCA (Cy/Alex) Week 4 – LCA Due • All teams develop Betas (feature complete) of individual releases Week 5 • Integrate Betas (Core Release should be complete) Week 6 • Test Integration/Work out Integration Errors Week 7 – Beta Release Due (May 9) • Add any additional optional features (feature freeze this week) Week 8 • Test/Write Documentation' Week 9 • Release Engineering (deployment, packaging etc) Week 10 – Final Release (May 30)
Project Risk Assessment • Processing Compiler Server Mount • Compatibility • Module Integration • Module Communications • Consistent APIs • Usability • Organization • Ease of Use • Aesthetic Qualities • Node Display • Fits on the screen • Creates palatable displays for large trees • Documentation • Readability • Instructive