REUBEN KOMEN E37/0683/2020 PROBLEM ANALYSIS SYSTEM ANALYSIS AND REQUIREMENT MODDELING Description of How the Current System Works This section provides a comprehensive overview of the operation of the current election system at Kenyatta University Students Association (KUSA). The existing system is manual in nature, and its functionality is critical to understanding the context within which our project operates. To aid in understanding the current system, a simple flowchart is used. These visual aids help clarify the key processes, data flow, and interactions within the current manual system. Overview of the Manual Election System The manual election system employed by KUSA is a paper-based approach, involving several steps and interactions to facilitate the election process. It is imperative to note that this section is intended to present a general understanding of how the current system works. The processes within the system are as follows: Voter Registration: Students who wish to participate in the voting process are automatically viable for the process so long as they are bona-fide Kenyatta University Students. Nomination and Candidate Registration: Submission of Candidacy: Aspiring candidates must complete paper forms to declare their candidacy, accompanied by campaign proposals and documentation. Verification and Approval: Election officials scrutinize and verify the candidate documents, ensuring that they meet the stipulated criteria. Approved candidates move forward to the next stage. Election Day: Manual Voting: On the election day, students cast their votes using physical ballots and paperbased voting materials. Vote Counting: Following the closure of voting, election officials count the paper ballots manually, which can be a time-consuming process. Results Announcement: 1 Compilation of Results: The election results are calculated manually, and a summary of the results is prepared. The summary of results is posted on social media and on notice boards and various locations around the campus for students to view. Students who have concerns or disputes regarding the election results must submit their grievances in writing. Data Flow in the Current System The manual election system at KUSA involves extensive interactions between students, election officials, and university staff. The following interactions are notable: Aspiring candidates engage with election officials for nomination and approval processes. Election officials play a crucial role in verifying candidates’ eligibility and documents. The student body interacts with the election results, which are publicly displayed for scrutiny. Flowchart of the current system. Start Candidate registration/application Voting Votes Counting No Voting time over? Yes Results Announcement Stop 2 Data Gathering Methods and Data Synthesis This section expounds on the approaches employed to collect pertinent data for the current manual election system at Kenyatta University Students Association (KUSA). Our primary data collection methods included questionnaires, interviews, and document analysis. Additionally, we will outline a straightforward process for synthesizing the gathered data to extract insights and findings. Data Gathering Methods To gain a comprehensive understanding of the existing manual election system, we employed a blend of data collection techniques: Questionnaires: We conducted online questionnaires using platforms like Google Forms. These surveys were distributed among Kenyatta University students to solicit their perspectives, expectations, and experiences with the current election system. By gathering data from a diverse student population, we ensured the representativeness of the insights. Interviews: In-depth interviews were carried out with key stakeholders, including KUSA representatives, students, and IT experts. These interviews played a pivotal role in providing critical insights into the specific requirements and challenges the new system must address. Engaging with these stakeholders allowed us to incorporate their expertise and expectations into the system's design. Document Analysis: We conducted an analysis of relevant documents, reports, and records related to past KUSA elections. This process allowed us to delve into historical data, election procedures, and existing challenges within the current system. Data Synthesis The synthesis of collected data was carried out systematically to extract meaningful insights and findings. We compiled and organized data from surveys, interviews, and document analysis. This structured compilation ensured that all data points were readily accessible for analysis. A thematic analysis was applied to the collected data. This approach involved identifying common themes, patterns, and recurrent issues. It provided a deeper understanding 3 of the challenges and requirements associated with the current election system. The synthesized data underwent cross-validation by comparing the findings from surveys with those derived from interviews and document analysis. This validation process aimed to ensure the accuracy and consistency of the insights obtained. Incorporation into Requirement Definitions: The insights garnered from data synthesis were seamlessly integrated into the requirement definitions for the proposed web-based election system. Aligning these findings with the project's objectives ensured that the new system adequately addressed the identified challenges and met user expectations. Requirement Definitions and Specifications of the Proposed System The proposed system builds upon the insights gathered from the analysis of the current manual election system, aiming to address the identified challenges and enhance the election process at Kenyatta University Students Association (KUSA). To achieve this, we define the requirements based on the findings and needs identified and categorize them into four distinct categories, as follows: Business Requirements: 1. Increase Voter Turnout: The proposed system must significantly enhance voter turnout by providing a convenient and accessible platform for students to cast their votes. 2. Streamline Election Management: It should simplify the election management process for KUSA, making it more efficient, transparent, and less resource-intensive. 3. Promote Fairness and Inclusivity: The system must promote fairness by ensuring that all eligible voters have an equal opportunity to participate in the elections. 4. Data Accuracy and Integrity: The proposed system must ensure the accuracy and integrity of the election data, reducing the chances of errors, discrepancies, or data manipulation in the election process. This requirement is essential to maintain trust and credibility in KUSA elections. User Requirements: 1. Voter Registration: The system should enable students to easily register as voters, ensuring that only eligible students can participate in the elections. 4 2. Candidate Application: Candidates must be able to apply for positions, create profiles, and submit campaign information through the system. 3. Voting Process: Users, primarily voters, should be able to cast their votes electronically, fostering a user-friendly and seamless voting experience. 4. Access to Real-Time Results: All users, including voters, candidates, and KUSA representatives, should have access to real-time election results. Functional Requirements: 1. Voter Registration and Verification: The system should facilitate voter registration, verify the eligibility of voters, and prevent fraudulent registrations. 2. Candidate Application and Registration: It must offer a module for candidates to apply, create profiles, submit campaign information, and officially register for the elections. 3. Efficient Voting Interface: The proposed system should provide an intuitive, userfriendly voting interface that allows students to cast their votes electronically with ease and confidence. 4. Automation of Vote Calculations and Analysis: It must automate the calculation of votes to eliminate human error, ensure the accuracy of results, and offer data analysis tools for post-election analyses and trend identification. Non-Functional Requirements: 1. Availability: The system should be available 24/7, ensuring that users can access it whenever they wish. 2. Security: Security measures should be robust, protecting user data and ensuring the integrity and confidentiality of the voting process. 3. Performance: The system must perform efficiently, handling a large volume of users during peak voting periods without degradation. 4. Scalability: It should be scalable to accommodate potential growth in the number of users and elections. To visualize the proposed system's processes and data flow, a data flow diagram, a flowchart, ERD and a use case diagram will be created. This flowchart will provide a high-level understanding of the system's operations, emphasizing its role in simplifying and enhancing the election process at KUSA. 5 DFD Level 0 Administrator or Voter or Candidate Output System The above diagram is a 0-level DFD that only shows the flow of data between the various users and the system. In online voting system the Administrator is the controller of the system and all the decisions are made by him. The Administrator can handle the entire voter and their details, voting details etc. and view details of them and he can update that detail also. DFD Level 1:A Level 1 Data Flow Diagram (DFD) below provides a high-level overview of the proposed system's functionalities, emphasizing the major processes and their interactions. In this diagram, we focus on the primary components of the system, such as user roles, major processes (e.g., voter registration, candidate application, and voting), and the main data flow between these components. While a Level 1 DFD doesn't delve into the intricate details of processes, it offers a simplified visual representation of the system's core operations, forming the foundation for more detailed modeling and analysis in subsequent levels of DFDs. System Voting Database Faculty Database Design Voter Authenticati on Login Voting Process Candidate application Process Result Home Page Log Out Admin authenticati on System setup User User 6 Use Case Diagram. The User Use Case Diagram represents the interactions and functionalities available to the users of the online voting system. It illustrates the various actions and tasks that users can perform within the system. Users are typically divided into two main categories: voter {candidate} and admin. Voter Use case diagram Admin Use Case Diagram: The Admin Use Case Diagram outlines the roles and functions of system administrators within the online voting system. Admins play a crucial role in managing and overseeing the election process. This diagram highlights the different actions that administrators can perform. 7 ERD Description: Proposed System Data Model The Entity Relationship Diagram (ERD) represents the data model for the proposed online voting system, featuring entities like "Admin," "Voters," and "Candidates." The diagram showcases relationships such as "Admin manages Voters" and "Admin manages Candidates," signifying that administrators hold the authority to oversee and manage both voter and candidate data. This ERD provides a clear view of the data structure, relationships, and attributes within the system, facilitating effective database design and data management by administrators. Flowchart Description: This simplified flowchart below begins with identifying the user's role as an admin, voter, or candidate. Admins can manage voters and candidates, view results and generate report, while candidates can apply for candidacy, run campaigns, and view election results. On the other hand, voters can register vote and view results. The flowchart ends when users complete their respective actions. 8 Flowchart Description of the Proposed system model Start yes Is Candidate? No Is admin? Manage voter & candidate yes No View results Register as a voter Apply for Generate reports candidacy N o Is voter registered? Run for campaigns yes Log in View results Show error message N o Voter ID and password Vote Vote successful? N o yes Update vote count Show confirmation View results Stop 9 Show error message