1 / 32

An Internet Voting System Manager

An Internet Voting System Manager. MSE Project - Phase 3. Yonghua Li Kansas State University October 14, 2002. Give my thanks to:. Dr. Maria Zamfir-Bleyberg Dr. William Hsu Dr. David Gustafson. Presentation Overview. Project Overview Project Requirement

Download Presentation

An Internet Voting System Manager

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. An Internet Voting System Manager MSE Project - Phase 3 Yonghua Li Kansas State University October 14, 2002

  2. Give my thanks to: Dr. Maria Zamfir-Bleyberg Dr. William Hsu Dr. David Gustafson

  3. Presentation Overview Project Overview Project Requirement Object Model Design (revised) Sources Code Module Walk-Through Test Evaluation Project Evaluation Demo

  4. Project Overview • Internet voting system: poll site, kiosk and remote • Design a system which manages the voting and makes ballot cast through the internet • Also to improve the integrity and fairness of voting • Easy and reliable to use

  5. MailSender Query Processing ConClient Query Processing Database ConnectionManager Server Query Processing ConClient Server Client DBM Project Overview: Data Flow Graph IVSM

  6. Project Requirements • Develop component server side IVS Manager • Develop component database connection and query manager • Develop component IVS server and connection of client • Develop component mailSender • Develop component client

  7. Project Requirements (cont’d) • Follow all the procedures required by software engineering • Develop API for the codes • Create report for the testing • Create User Manual for the project • Evaluate the project

  8. Simple Database Voters table Candidates table

  9. Object Model Design: IVS Manager

  10. Object Model Design: Client

  11. Walkthrough: IVSManager • When starting the system, the first thing to do is to set the administrator. The system will block until user inputs the admin id and password • The system will use the administrator id as seeds to generate the encryption keys – public and private key.

  12. Walkthrough: IVSManager (cont’d) • After the system has been launched, before the server can start, the administrator should configure the following • Make the keys and init the DB • Import Voters • Import Candidates • Set the Election Start Time • Set the End Time • Start the Server • Initiate the mail sender server • Start the backup server.

  13. Walkthrough: client • The client can be run as an application or as an applet; in this project the client will be a kiosk client. • The first interface the voter sees has two buttons and one text screen. • If the voter press the Enter to Voter button, the conformation interface will appear • The confirmation GUI has three text boxes and two button

  14. Walkthrough: client (cont’d) • After filling the text box and pressing the vote button, there will be a confirmed GUI to show the result. If the server confirms the voter identification, then voter can press button vote to cast the ballot. • In the ballot GUI, the voter casts the ballot according to the instruction • After casting the ballot, the voter press the send button to send out the ballot. • If it goes well, the system will return back to initial state.

  15. Test Overview • Unit testing • Purpose: To test the all components’ major functions • Methodology: Functional Testing White box testing, path-based domain, boundary testing technologies black box testing, random and regression testing Testing Item: DBConnectionPool, DBConnectionManager, QueryWrapper, IVSManager, IVSServer, ConClient, MailSender and IVSClient.

  16. Test Overview (cont’d) • Integration Testing • Purpose: tests the program structure the program has been built with unit-tested modules. • Methodology: Functional Testing (black box) --- regression and random testing • Testing Items: Dbpool-dbmanager, dbwrapper-dbmanager, ivsmanager-dbmanager-ivsserver, ivsserver-conclient, ivsclient-ivsserver-conclient

  17. Testing Overview (cont’d) • System Testing/Performance Testing • Stress testing • Boundary testing • Error injection testing • Stamp testing • Testing the system log file and error handling

  18. Test GUI

  19. Test Overview • Pass/Fail Criteria The percentage of test result will be sued to decide to if the software passes or fails pass >90% fail <70% 70%~90% ?

  20. Test Result: unit and integration

  21. Test Result: Performance

  22. Error Handling Testing

  23. Fairness Testing • 6 candidates, generating 10000 ballots, each candidate appear in the first position for: Candidate 1: 1662 Candidate 2: 1656 Candidate 3: 1673 Candidate 4: 1666 Candidate 5: 1671 Candidate 6: 1670

  24. Integrity Testing

  25. Project Evalutation • Cost-Estimation Evaluation • Product Evaluation • Process Evaluation • Tools and Technologies Evaluation

  26. Project Evaluation – Cost Estimation • Size of project • Estimated: 5160 LOC • Actual: 3912 LOC (19 classes, 1 interfaces) • Evaluation: The actual LOC doesn’t include the third party software • Cost effort • Estimated: 7.0 months • Actual: 7.0 months • Evaluation: match • Schedule • Phase I and Phase II was finished in time • Phase III was postponed for four months

  27. Product Evaluation • Product Evaluation • meets all requirements • successful through the test cases • stable: can run on windows, UNIX, Linux system • performance result is same as expected • Improve the fairness and integrity for ballot cast • Problem exist • Write-in candidates: Bill Hsu and William Hsu

  28. Project Evaluation - Process • Process Evaluation • Whole software development life cycle • Learned to design a project in all details • Excellent experience to learn the Software Engineering Process • Challenging project since no any background on the politics knowledge

  29. Project Evaluation - tools • Evaluation of Tools and Techniques used • Rational Rose • USE-2.0.0 • Java • Java Mail • Oracle DBMS

  30. Compare to System Used in Campus • Generating the voting students data from the enrolling data base – this system will build its own voters database to ensure that each voter will cast the ballot only one time. • Each candidate will appear on the same ballot position with almost same probability • Fairness: This system doesn’t not solve the write-in candidates name problem too

  31. Demo • Start the IVSManager Server • Java –cp classes111.zip;. IVMSManager • Set up the Administrator • Build the key and init the DB • Import the Voters, candidates data • Import the election time and start the server • Set the mailsender server address • Start the IVSClient • Java IVMSClient • See http://www.cis.ksu.edu/~yli3568/mse/mse.html

  32. Thank!

More Related