Students Develop Real-World Web and Pervasive Computing Systems Charles C. Tappert School of Computer Science and Information Systems Pace University Real World Projects 2001-2 Total of 18 Projects with 64 Students Two courses in M.S. Computer Science Program Average of 3.6 students per project Software Eng 2-Sem Capstone: 12 Projects/45 Students Pervasive Computing elective: 6 Projects/19 Students Students Build Systems for Real Customers Within university – various departments Local community Student Team Make-up Architect-Designer One or two Implementers Quality Officer Coordinator-Liaison (usually team leader) (Note: several team member functions can be combined for small teams ) Team Responsibilities Meet once a week in addition to independent project work Work as a unit – for example, communication (including e-mail) between team and customer, or team and instructor, should be done as a group or through the team leader Team Member Changes Team members usually stay together for the duration of the course Teams sometimes reconstituted due to problems with student class schedules, personality conflicts, unforeseen changes in the needs of the project, etc. We might experiment with planned team rotation on projects Customer Affiliations 2001-2 Pace University School of Computer Science and Information Systems Lubin School of Business Lienhard School of Nursing Department of Information Technology Doctor of Professional Studies in Computing Program Office of Planning, Assessment, Research, and Academic Support Outside Organizations Northern Westchester Hospital Psychology Department at SUNY New Paltz IBM T.J. Watson Research Center Types of Systems 2001-2 10 Web interface to backend database client/server systems 4 Medical application systems 3 VoiceXML and InkXML systems 1 Cluster/grid computing system Web Interface to Backend DB Client/Server Systems Online Course Survey System Project Group Assignment System Test Item Reliability Analyzer Genealogy Web Application Dean’s Communication System Web Interface to Backend DB Client/Server Systems (cont) PC Maintenance/Tracking System Doctor of Professional Studies Website Handwriting Forgery Quiz System Rare Coin Grading System User Verification System Medical Application Systems Nurse Information System (NIS) A physical assessment application on a proprietary device running an obsolete OS was ported to J2ME on the Palm OS handhelds A C++ conduit allowed transfer of data to a PC NIS Wireless Extension Allowed the handheld to wirelessly e-mail a data attachment via Java servlets to a specified address Medical Application Sys (cont) Emergency Pre-Hospital Care Communication System Preliminary investigation of currently available and on-the-horizon wireless technologies Recommended three alternative approaches to Northern Westchester Hospital Medical Vital Sign Wearable Computer Designed and built circuitry Monitors pulse, blood pressure, temperature, oxygen saturation of blood Product – VivoMetrics LifeShirt Cluster/Grid Computers Cluster computer first semester 1 master, 4 slave Pentium PCs running Linux Networked with a Linksys 10/100 switch Benchmarked on ray tracing graphics program adapted for parallel execution Result – significant decrease in computation time Grid computer second semester Tested on room of student computer lab PCs Compute intensive molecular simulation (NAMD) Result – the more nodes attached to the simulator, the less intrusive was the job to the PC users VoiceXML and InkXML Systems VoiceXML Application Development Facility VoiceXML Applications IBM WebSphere Voice server Web server, LAN, PSTN Cisco 2600 router Absentee system Other applications – e.g., student grade system Multimodal Voice/InkXML System Created an architecture for developing applications using the voice and ink modalities Example Systems Web Interface to Absentee System (voice enabled using VoiceXML) Project Group Assignment System Online Course Survey System Handwriting Forgery Quiz System Rare Coin Grading System Web-based Genealogy System Benefits of Real World Projects Stellar real-world learning experience for students Customers receive valuable systems Promotes interdisciplinary collaboration and Pace and local community involvement Furthers student and faculty research Enhances relationships between the university and local technology companies Increases national recognition of the university Stellar Real-World Learning Experience for Students Develop individual technology skills Develop team skills Web interface to backend database systems Client/server systems Cutting edge pervasive computing skills Ability to work with others Intellectual integrity and humility Fair-mindedness Learn to be computing professionals and provide real value to customers Cost of Real-World Projects Soliciting and setting up projects Forming teams and assigning projects Managing systems development process Project development infrastructure Soliciting & Setting Up Projects Instructor solicits projects from Contacts with CSIS faculty interested in creating research-related systems, sometimes in collaboration with other universities or local research companies E-mail to various university departments Non-profit organizations in the community Instructor sets up projects Sizes and shapes projects to be appropriate educational experience for students Posts project information on course Web site Forming Teams and Assigning Projects Last year 2001-2 Students formed their own teams (usually based solely on friendship) Each teams submitted 5 project preferences Instructor assigned teams to projects (tedious, far from optimal, can be perceived as unfair) This year 2002-3 Project group assignment system automatically forms teams and assigns projects (automatic, close to optimal, unbiased and objective) Managing Systems Development Process Requirements analysis Analysis and design – tools/methodologies Through use cases and use scenarios Depend highly on type of system being developed – e.g., database requires database methodologies Construction of the system Test system to ensure It meets customer’s requirements All functions operate correctly Project Development Infrastructure Development servers Pentium II NT server (upgraded this year) Solaris Unix server (added this year) Software Database software Scripting software MySQL, Microsoft Access, Oracle (added this year) Active Server Pages, Cold Fusion, PHP Hypertext Processor Tomcat for Java servlets, etc. Software for Eleven 2001-2 Web Interface to DB Systems Database software MySQL – 4 systems Microsoft Access – 7 systems Oracle (added this year) Scripting software Active Server Pages (ASP) – 4 systems Cold Fusion – 4 systems PHP Hypertext Processor – 3 systems Perl & others (anticipated this year) Pervasive Computing Areas Pen Computing Verification/Identification Nurse Information System in Palm OS Handheld Medical Vital Sign Wearable Computer System Wireless Technology User Verification – Face, Voice, Handwriting, Fingerprint Handheld/Wearable Computers Handwriting Forgery Quiz System Nurse Information System Wireless Extension Emergency Pre-Hospital Care Wireless Communication Pervasive Computation Grid Computing System Conclusions Anticipate increased level of professionalism in project development this year Real-world projects are a stellar learning experience for students Win-win situation for all Students Customers Instructors and other involved faculty School of CSIS University