Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "An Internet Voting System Manager Yonghua Li Kansas State University October 14, 2002 MSE Project - Phase 3."— Presentation transcript:

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

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 Project Overview: Data Flow Graph IVSM Query Processing Database Connection Manager Query Processing Server Client ConClient Server DBM MailSender Query Processing

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 nameidemailpwdvoted Yonghua Li1 yli3568@cis.ksu.edu ****no namecommitteenumvotes Carol PeakCITY OFFICES MANHATTAN 30 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 ClassFunctionalityPerformanepass DBPoolTask for getting and freeing connection to max connections Works wellyes DBConnectionMan ager Task for getting and freeing connectionWorks wellyes DBWrapperTask for conn. requiring, different queriesWorks wellYes IVSManagerTask for Init DB, input voters, input candidates, set start and end time, set mailsender, statistic result, send result Works wellyes IVSServer task for connection managementWorks wellyes ConClientTask for message receiving, sendingWorks wellyes IVSClienttask pwdRequest, enterVoter, sendRequest, SendConfirm, Voting, SendingBallot Works wellyes MailSenderTask for singleMailSend, batchMailSendWorks wellyes

21 Test Result: Performance Testing typefunctionalityPerformancepass BoundarySystemWorks wellyes StressSystemWorks wellyes Error injectionsystemCatch allyes StampsystemWorks wellyes Error handlingsystemWorks wellyes

22 Error Handling Testing Test itemsresult IVSManager can check if the db.properties is correctly filepass IVSManager can check if the voter.dat file is correctly filePass IVSManager can check if the candidate.properties is correctly filepass IVSManager can check if the election start time is correct Pass IVSManager can check if the end time is correct Pass IVSManager can check if the server port is ok pass IVSManager can check if the mail sender server is right pass IVSClient can check if the pwd request input boxes are filledpass IVSClient can check if the confirm input boxes are filledpass IVSClient can check if the ballot cast number is rightpass IVSClient can check if the new candidate is clicked and filledpass

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 Test ItemPerformancepass case for voting twiceWorks wellyes case for log on multi placeWorks wellyes case for losing ballotWorks wellyes

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 – 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!


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

Similar presentations


Ads by Google