MIS507A Project Presentation1 Survey Builder Team 10 Brian Ong Egan Park Harry Wang Xin Wang Alan Yip.
Post on 23-Dec-2015
217 Views
Preview:
Transcript
MIS507A Project Presentation 1
Survey Builder
Team 10 Brian Ong Egan Park Harry Wang Xin Wang Alan Yip
MIS507A Project Presentation 2
Problems with “Traditional” Surveys
Costs Paper Scantron machine
Time wasted Passing out and filling out surveys/scantr
ons Must use class time
MIS507A Project Presentation 3
Problems with “Traditional” Surveys
Lack of convenience If student misses class or employee misses work Less time to think about questions Administrative tasks (collecting surveys, taking to
office, manually (or use of scantron) check results Limited use of statistics
Paper surveys lack statistics (ex. average, standard deviation, median, etc.)
MIS507A Project Presentation 4
Web-based Survey
Eliminates paper costs No class or work time wasted Can be taken from anywhere where there is
an Internet connection Administrative tasks done by application Convenient
Allows people to take the survey at their convenience
Allows computation of survey results (stats)
MIS507A Project Presentation 5
Problems with Web-based Survey
Person making the survey may not be computer-savvy
Time consuming to make Web-based survey
Time consuming to make an application to compute mathematical statistics
MIS507A Project Presentation 6
Solution: Our Survey Builder
Using our survey builder is easy, convenient, fast and FREE!!!
Non-savvy computer users can easily build a survey with our survey builder
Mathematical computations done automatically through our application
MIS507A Project Presentation 7
Flexibility
Our survey builder can be used for a wide range School surveys Work surveys Voting Consumer feedback
MIS507A Project Presentation 8
Example
Go!
MIS507A Project Presentation 9
System Architecture
User Interface
MVC Controller
Middleware
Database
MIS507A Project Presentation 10
Elements of Good Webpage Design
Good Contents Clear Navigation Aids No Dead-end Pages Simple and Consistent
MIS507A Project Presentation 11
“Inheritance”
Template Page
Different Page has different contents
MIS507A Project Presentation 12
CSS Pattern
We use CSS to separate the appearance of web pages from the content of web pages.
An efficient way to design, modify and update website.
MIS507A Project Presentation 13
A Big Abstract Class
We separate the static web pages from dynamic pages.
Pure HTML + ? = Dynamic Web Page? = JSP, ASP, CGI, Perl…
MIS507A Project Presentation 14
Web Application Framework
Model 1 approach Page centric
Model 2 approach MVC Struts
Design issue Decouple view from business logic
MIS507A Project Presentation 15
Model View Controller (MVC)
ModelController
View
Client request
Result page
Request
Result
Result
MIS507A Project Presentation 16
Template Method PatternController
-eventHandlers:Hashtable
+init:void+doGet:void+doPost:void#validateEvent:String#getEventHandler:EventHandlerBase+destroy:void
EventHandlerBase
#writer:Debug
+init:void+process:void+forward:void+getURL:String
LoginEventHandler
+process:void+getURL:String
AboutEventHandler
+getURL:String
MIS507A Project Presentation 17
Middleware
Design Goals Extensibility Implementation Independence
Functions Get and Insert Survey Information for Data
Layer Pass and Receive information to the User
Interface
MIS507A Project Presentation 18
Survey Builder Packages
MIS507A Project Presentation 19
QandR Package
MIS507A Project Presentation 20
Datalayer Package
MIS507A Project Presentation 21
Middleware Design Issue
Middleware needs to retrieve all Questions for a single survey
Questions are of different types, and need to exhibit different behavior
Solution: Factory and Strategy patterns
MIS507A Project Presentation 22
getSurvey() createSurvey()
MIS507A Project Presentation 23
ER Model
MIS507A Project Presentation 24
Relational Schema
Survey (Survey #, Survey Name, Active)
Question (Survey #, Question #, Question, Type, Possible Answers)
Response (Auto #, Survey #, Question #, Numeric Response, Textual Response)
User (User ID, Name, Login Name, Password, User Level)
MIS507A Project Presentation 25
Lessons Learned
Lesson 1
We initially sought to do a project related to web services.
Lesson learned: Use technologies to solve problem, not vice versa
Lesson 2:
The Survey Builder is extensible and easy to maintain.
Lesson learned: The extra time spent in the beginning to create a proper design is definitely worth it.
MIS507A Project Presentation 26
Conclusion
Our design philosophy is to maximize the extensibility of the system. Apply design patterns is key to a good design Use abstract coupling
Establishing an effective way for the team to communicate is proven to be productive
The project is a success!
MIS507A Project Presentation 27
Questions?
MIS507A Project Presentation 28
Homepage
MIS507A Project Presentation 29
Login
MIS507A Project Presentation 30
Question Type
MIS507A Project Presentation 31
Build question
MIS507A Project Presentation 32
Anonymous Setup
MIS507A Project Presentation 33
Link
MIS507A Project Presentation 34
Confidential
Back
top related