BACKGROUND
In 2012, I began an internship to create a voting system for the MPTC car show. In the past, ballots were printed on paper and the end of the car show would mean someone had to go through a massive stack of paper and manually count every vote. This is where I came in; I was asked to use Visual Basic to create a voting system that would store the votes and determine the winners automatically and without the need for stacks of paper.
There is a lot that needs to be considered in an application's design, even for smaller applications like these. However, there were certain design decisions I was particularly worried about and a few obstacles appeared throughout development.
I wanted to make sure the transition from a more traditional format to software was as easy on the client as possible. As a result, I tried to make the design of the ballot look as close to the original paper ballot as possible. Additionally, I made a "manager" application which helped users navigate and update the database without working with the database directly. I also wanted to make sure the application could be used in the distant future rather than only for 2012. To solve this, the "manager" application can reconfigure the ballots remotely and the manager only allows one year of data, with the current year being the default year, to be visible to the user at a time.
Obstacles also appeared during the development of the application. For one, I originally planned to store the data on a SQL server because that was a secure option and what I was most comfortable with. However, MPTC considered me a student at the time and refused to give me access to the SQL server. As a result, the database ended up being stored in an Access database everyone can read or write to. I still do not believe that was a good idea for security, but at least it made the database nice and portable. Additionally, the application was originally made using .NET 4.0. This created problems because MPTC laptops did not have .NET 4.0 installed at the time and they removed the installation every time they were restarted. To get around this, an earlier version of the .NET Framework was used.
The applications' code has not been modified since May 2012, with the exception of areas that referenced Crystal Reports. Crystal Reports was originally going to be used in the applications but ended up being cancelled. Code for Crystal Reports, however, was still there and the correct Crystal Reports installation was required in order to compile the application. Since Crystal Reports served no purpose, I removed any reference to it in March 2015 so that it can be compiled without Crystal Reports.
FEATURES
SPECIFICATIONS
Language: Visual Basic (Visual Studio 2010)
Framework: .NET 3.5
Developed on: Windows Vista 64-bit
Known to work on: Windows Vista 64-bit, Windows 7 64-bit, Windows 8.1 64-bit
Download size: 1.15 MB
DOWNLOAD
Source code (Visual Studio) - Here
In 2012, I began an internship to create a voting system for the MPTC car show. In the past, ballots were printed on paper and the end of the car show would mean someone had to go through a massive stack of paper and manually count every vote. This is where I came in; I was asked to use Visual Basic to create a voting system that would store the votes and determine the winners automatically and without the need for stacks of paper.
There is a lot that needs to be considered in an application's design, even for smaller applications like these. However, there were certain design decisions I was particularly worried about and a few obstacles appeared throughout development.
I wanted to make sure the transition from a more traditional format to software was as easy on the client as possible. As a result, I tried to make the design of the ballot look as close to the original paper ballot as possible. Additionally, I made a "manager" application which helped users navigate and update the database without working with the database directly. I also wanted to make sure the application could be used in the distant future rather than only for 2012. To solve this, the "manager" application can reconfigure the ballots remotely and the manager only allows one year of data, with the current year being the default year, to be visible to the user at a time.
Obstacles also appeared during the development of the application. For one, I originally planned to store the data on a SQL server because that was a secure option and what I was most comfortable with. However, MPTC considered me a student at the time and refused to give me access to the SQL server. As a result, the database ended up being stored in an Access database everyone can read or write to. I still do not believe that was a good idea for security, but at least it made the database nice and portable. Additionally, the application was originally made using .NET 4.0. This created problems because MPTC laptops did not have .NET 4.0 installed at the time and they removed the installation every time they were restarted. To get around this, an earlier version of the .NET Framework was used.
The applications' code has not been modified since May 2012, with the exception of areas that referenced Crystal Reports. Crystal Reports was originally going to be used in the applications but ended up being cancelled. Code for Crystal Reports, however, was still there and the correct Crystal Reports installation was required in order to compile the application. Since Crystal Reports served no purpose, I removed any reference to it in March 2015 so that it can be compiled without Crystal Reports.
FEATURES
- Ballot application's categories list can be updated remotely for cases where the ballot changes
- Ballot application only allows users to vote for cars that are in the correct category
- Ballot application prevents the same account from voting multiple times throughout the show
- Manager application allows user to add, modify, or remove existing ballot categories
- Manager application allows user to register voters and enable/disable their ability to vote
- Manager application allows user to register vehicles; including the vehicle's owner, category, and description
- Manager application counts all votes then creates a report organized by category and the amount of votes a car received in order to easily determine the winners of each category
- Manager application separates vehicle and voting results by years so users can review past shows and not have to worry about cleaning up the database each year
SPECIFICATIONS
Language: Visual Basic (Visual Studio 2010)
Framework: .NET 3.5
Developed on: Windows Vista 64-bit
Known to work on: Windows Vista 64-bit, Windows 7 64-bit, Windows 8.1 64-bit
Download size: 1.15 MB
DOWNLOAD
Source code (Visual Studio) - Here