System Analysis and Design Documentation For
System Analysis and Design Documentation For
5,Mohammedzen Sultan…………………….NSR/1198/14
SUBMITTEDTO:Mrs.Birhanu
1
Part One: Introduction
1.6 Methodology
2.3 techniques
Functional requirements
2
4.3 identifying, attribute, relationship degrees and names/types among entities.
4.4 ER modeling
3
within the allotted time frame, and submit their
responses electronically.
4
efficient and secure platform for educational institutions,
certification bodies, and organizations to conduct exams online.
1. User Interface:
The user interface provides an intuitive and user-friendly
platform for , instructors, and students to interact with the
system. It offers various screens and functionalities tailored to
each user role, enabling easy navigation and access to relevant
features.
2. Exam Management:
The exam management component enables instructors to
create exams, assign questions, and set grading schemes. It
provides a centralized interface to manage the entire exam
lifecycle, from creation to evaluation.
3. User Management:
The user management component handles user registration,
authentication It allows individuals to create accounts, log in
securely, Different user roles, such as administrators, instructors,
and students, are defined to ensure appropriate access and
permissions.
5
4. Question Bank:
The question bank serves as a repository for storing and
organizing a variety of exam questions. It allows instructors to
create, delete categorize, and manage a pool of questions that
can be used in multiple exams. This component ensures a
diverse and reliable set of questions for different assessments.
5. Result Generation:
The result generation component handles the automatic
grading of objective questions and provides a platform for
instructors to manually evaluate subjective questions. It
calculates exam scores, generates result This component
enables efficient and accurate assessment of exam performance.
6
serving as a foundation for its successful development
and implementation.
7
efficiency, enhanced learning experience, reduced costs, and
the ability to adapt to changing educational needs.
1. Technical Feasibility:
8
- Compatibility: The proposed online examination system must
be compatible with various devices and operating systems to
ensure seamless access for users.
- Scalability: The system should be able to handle a large
number of concurrent users during peak times without
compromising performance.
- Security: Robust security measures, such as encryption,
authentication, and access controls, must be implemented to
protect sensitive exam data and prevent unauthorized access.
- Resources: Assess the availability of necessary hardware,
software, and technical expertise required for the development,
implementation, and maintenance of the online examination
system.
2.Economic Feasibility:
- Cost-Benefit Analysis: Conduct a thorough cost-benefit
analysis to determine the financial viability of implementing the
online examination system. Consider factors such as initial
development costs, ongoing maintenance expenses, potential
savings from paperless exams, and revenue generation
opportunities through online exam services.
- Return on Investment (ROI): Calculate the expected ROI
from the implementation of the online examination system to
assess whether the benefits outweigh the costs over time.
3. Operational Feasibility:
9
- User Acceptance: Evaluate the readiness and willingness of
students, teachers, and administrators to adopt and use the
online examination system. Provide training and support to
ensure smooth transition and user acceptance.
- Workflow Integration: Assess how the online
examination system will integrate with existing processes and
workflows within the educational institution. Minimize
disruptions and optimize efficiency by streamlining exam
administration tasks.
5.Schedule Feasibility:
1. Identify Stakeholders:
- List all stakeholders involved in the implementation of
the online examination system, including students,
teachers, administrators, IT staff, and other relevant parties.
2. Define Objectives:
- Clearly outline the objectives of the communication plan, such
as informing stakeholders about the new system, addressing
concerns, providing training, and ensuring a smooth transition.
11
3. Communication Channels:
- Determine the most effective communication channels to reach
each stakeholder group, such as email, newsletters, website
announcements, social media, staff meetings, training sessions,
and helpdesk support.
4. Key Messages:
- Develop key messages that highlight the benefits of the online
examination system, address potential concerns, provide
instructions for accessing and using the system, and emphasize
the importance of the transition.
5. Timeline:
- Create a timeline for communication activities, including pr-
launch announcements, training sessions, system roll-out
updates, and ongoing support.
7. Feedback Mechanisms:
- Establish feedback mechanisms, such as surveys, focus groups,
or help desk support, to gather input from stakeholders about
12
their experiences with the online examination system and
address any concerns or suggestions for improvement.
8. Change Management:
- Implement change management strategies to help stakeholders
adapt to the new system, address resistance to change, and
promote a positive attitude towards the online examination
system.
1. User Requirements:
13
- Number of concurrent users: How many users
are expected to access the system
simultaneously?
- User roles: What are the different user roles,
such as administrators, instructors, and students?
- User authentication: How will users be
authenticated, e.g., username/password, single
sign-on (SSO), or identity providers (Google,
Facebook, etc.)?
2. Exam Features:
- Question types: , various question types
can be supported. Here are some commonly
used question types:
1. Multiple-Choice Questions (MCQs): These
questions present a question or statement with
multiple answer options, where the student selects
one or more correct answers from the given
choices.
14
3. Fill in the Blanks: These questions have a
sentence or paragraph with one or more missing
words or phrases, and the student must fill in the
missing parts.
15
8. Diagram-based Questions: These
questions may include images, graphs, or
diagrams, and the student must analyze and
answer questions based on the provided visual
information.
16
- Grading and scoring can be done manually by
instructors or automatically by the system,
depending on the question types and settings.
- The system may allow instructors to define
grading rubrics or scoring guidelines to ensure
consistency.
- Some online examination systems may offer
automated grading for specific question types,
such as coding questions, using predefined test
cases or algorithms.
Result publication:
17
depending on the online examination system
being used. Different systems may offer additional
capabilities or customization options in line with
the organization's requirements.
5. System Integration:
- Integration with other systems: Will the
online examination system need to integrate
with existing systems, such as student
information systems or learning management
systems?
- APIs and standards: Are there any specific APIs
or standards that the system needs to support for
data exchange or integration?
18
6. Scalability and Performance:
- Expected growth: Are there any anticipated
future growth plans for the system, such as
increasing the number of users or adding new
features?
- Performance requirements: What are the
expected response times, page load times, and
system availability?
7. Technical Infrastructure:
- Hosting environment: Will the system be hosted
on-premises or in the cloud? What are the
preferred hosting platforms?
- Hardware and software requirements: What are
the minimum hardware and software
specifications for the servers and client devices?
- Browser compatibility: Which browsers
and versions need to be supported?
19
2.2 Detail overview of the
existing system using
Requirement gathering
techniques
20
exam details, add questions from a question
bank, and assign the exam to specific students or
groups.
21
3. Surveys/Questionnaires: Distribute surveys or
questionnaires to gather feedback and opinions
from a larger user base. Include questions like:
- How satisfied are you with the current
exam creation and management process?
- Do you find the grading and scoring
methods effective and accurate?
- Are the exam results easily accessible
and understandable?
22
the system's features, limitations, and common
issues reported by users.
- What functionalities and features are
documented for the exam creation and
management process?
- Have there been any reported issues
related to grading accuracy or result
publication?
23
2.3 Problems encountered by the
existing system
24
4. Limited automated grading capabilities: The
system may lack automated grading capabilities
for certain question types, such as coding
questions or subjective essays. This can lead to
increased manual grading efforts for instructors,
which can be time-consuming and prone to
inconsistencies.
26
- lectures should be able to create exams with customizable
parameters
- The system should allow lectures to assign questions from
the question bank to specific exams.
- The system should support the ability to update, and delete
exams as needed.
3. User Enrollment:
- The system should ensure that only enrolled students
can access the assigned exams.
4. Exam Taking:
- Students should be able to access assigned exams and
view the instructions and time limit.
- The system should present questions to students one at a time,
with options for navigation (previous, next, skip) within the
exam.
- The system should provide functionality for students
to submit their answers within the specified time frame.
5. Question Types and Formats:
- The system should support various question types, such as
multiple-choice, true/false, fill-in-the-blank
- For subjective questions, the system should provide a text
editor or file upload option for students to provide their answers.
6. Exam Evaluation and Grading:
- The system should automatically grade objective questions
based on predefined answer keys and grading schemes.
27
- Instructors should be able to manually evaluate and grade
subjective questions.
8. Time Management:
- The system should enforce time limits for each exam and
ensure that students are automatically submitted upon expiration.
- The system should allow administrators to set time
extensions or accommodations for specific students if needed.
9. Security and Integrity:
- The system should implement secure protocols for
data transmission and storage to protect exam content and
user information.
- The system should prevent unauthorized access and
ensure that users can only access exams they are enrolled in.
- The system should have mechanisms in place to detect and
prevent cheating or fraudulent activities during the exam.
These functional requirements define the core functionalities
and behaviors expected from the online examination system.
They provide a clear understanding of the system's capabilities
and guide the development and implementation process to
ensure that the system meets the needs of all stakeholders.
2.3.2 Non-Functional Requirements:
In addition to the functional requirements, the online
examination system also has non-functional requirements that
specify the qualities, constraints, and characteristics of the
system. These requirements focus on aspects such as
performance, security, usability, reliability, and scalability. Here
are some non-functional requirements for the online
examination system:
28
1. Performance:
- The system should be capable of handling a large number of
concurrent users during peak usage periods without significant
performance degradation.
- The response time for loading exam pages and submitting
answers should be fast to minimize user frustration.
2. Security:
- The system implement strong security measures to protect
user data, exam content, and system integrity.
- User authentication and authorization mechanisms be robust
to prevent unauthorized access.
- The system encrypt sensitive data, such as passwords and
student responses, during transmission and storage.
- Measures in place to detect and prevent cheating, including
monitoring for suspicious activities and plagiarism detection.
3. Usability:
- The user interface intuitive, user-friendly, and easy to
navigate for administrators, instructors, and students.
- The system should provide clear instructions and guidance
throughout the exam-taking process to ensure a seamless
experience.
- The layout and design of the system visually appealing
and accessible, with appropriate font sizes, color contrasts,
and readability.
29
4. Reliability:
- The system highly available, with minimal downtime and
disruptions.
- It should have robust error handling and recovery
mechanisms to handle system failures and unexpected errors
gracefully.
- The system regularly back up data to prevent data loss
and provide mechanisms for data restoration.
5. Scalability:
- The system able to accommodate a growing number of users,
exams, and questions without significant performance
degradation.
- The system should be able to handle concurrent exam
sessions and multiple exam instances without
compromising performance.
6. Compatibility:
- The system should be compatible with different web
browsers and operating systems to ensure broad accessibility
for users.
- It should adhere to industry standards and guidelines for web
application development and compatibility.
7. Accessibility:
30
- The system comply with accessibility standards, such as the
Web Content Accessibility Guidelines (WCAG), to ensure that
users with disabilities can access and use the system effectively.
- It provide options for assistive technologies, such as screen
readers and keyboard navigation, to support users with visual or
motor impairments.
8. Data Privacy:
- The system comply with relevant data protection regulations,
such as GDPR or HIPAA, to ensure the privacy and
confidentiality of user data.
- It should provide mechanisms for users to manage their
data and control their privacy settings.
These non-functional requirements define the qualities and
characteristics that the online examination system should
possess to ensure optimal performance, security, usability, and
reliability. They play a critical role in shaping the system's
design, development, and implementation process.
Level 0 DFD:
Level 1 DFD:
32
- This level provides a more detailed view of the major
processes identified in the Level 0 DFD.
- For example, the Exam Creation process may involve sub-processes
such as Exam Details Entry, Question Selection, and Instructions Input.
Level 2 DFD:
- This level delves further into the sub-processes identified in the Level 1
DFD.
33
A data dictionary provides a detailed description of the data
elements used in the system. Here's an example data dictionary for
the online examination system:
- Exam Title:
- Exam Duration:
- Question Types:
- Instructions:
- Assign to:
34
3.2 Logic Modeling of the New System:
1.Structured English:
Structured English is a technique for describing the system's
logic and processes using a natural language that follows a
predefined structure. It helps in specifying the sequence of
steps and conditions for various system functionalities.
Structured English uses standard control structures such as
sequence, selection (if-else), and iteration (loops) to define the
system's logic flow.
For example, a structured English representation of an
exam submission process might include steps such as:
1. Read user's submitted answers.
2. Validate the answers for correctness and completeness.
3. Calculate the score based on the grading algorithm.
4. Store the score and feedback in the database.
5. Notify the user about the result.
35
Decision Tree:
A decision tree is a visual representation of the system's
decision-making process. It helps in capturing the logic flow
based on different conditions or choices. Decision nodes
represent conditions, and branches represent possible outcomes
based on those conditions.
Decision Table:
A decision table provides a tabular representation of the
system's rules and conditions. It helps in defining the system's
logic flow based on different combinations of inputs and
conditions. Each row in the table represents a unique
combination of conditions, and the corresponding columns
define the actions or outcomes based on those conditions.
A decision table is useful when there are multiple conditions and
possible combinations of inputs that affect the system's behavior.
It helps in capturing all possible scenarios and ensures that the
system behaves consistently.
3.3 Generating and Selecting the Best
Alternative Design Strategy:
To generate and select the best design strategy for the Online
Examination System, the following steps can be followed:
Identify Design Alternatives:
Explore different design alternatives that meet the system
requirements. Consider different architectural patterns,
technologies, frameworks, and implementation approaches.
This may involve brainstorming sessions, research, and
evaluating existing solutions in the market.
Evaluate Design Alternatives:
36
Assess the pros and cons of each design alternative based on
factors such as feasibility, scalability, maintainability, cost, and
alignment with the system's objectives. Consider aspects such as
performance, security, user experience, and integration
capabilities. Perform a thorough analysis of each alternative to
understand its implications on the system.
37
Conceptual Data Modeling of the New System:
Conceptual data modeling involves identifying the entity
types, attributes, and relationships within the system. This
helps in understanding the structure and organization of the
data in the Online Examination System. The following steps
are typically followed:
Example:
In our online examination system, we have three main entities:
Student, Exam, and Result.
4.2 Entities:
1. Student:
- student_id (Primary Key): A unique identifier for each student.
- name: The name of the student.
- email: The email address of the student.
- password: The password associated with the student's account.
2. Instructor:
- instructor_id (Primary Key): A unique identifier for each
instructor.
- name: The name of the instructor.
- email: The email address of the instructor.
- password: The password associated with the instructor's
account.
3. Exam:
- exam_id (Primary Key): A unique identifier for each exam.
38
- title: The title or name of the exam.
- duration: The duration of the exam.
- instructions: Any special instructions or guidelines for
the exam.
4. Question:
- question_id (Primary Key): A unique identifier for each
question.
- text: The text of the question.
- type: The type of question (e.g., multiple choice,
true/false, essay).
- options: The available options for multiple-choice questions.
5. Result:
- result_id (Primary Key): A unique identifier for each result.
- student_id (Foreign Key): A reference to the student who took
the exam.
- exam_id (Foreign Key): A reference to the exam for which the
result is recorded.
- score: The score or grade achieved by the student in the exam.
Relationships:
1. Takes:
39
- Many-to-Many relationship between Student and
Exam entities.
- Represents the fact that a student can take multiple exams,
and an exam can be taken by multiple students.
2. Creates:
- One-to-Many relationship between Instructor and Exam
entities.
- Represents the association between an instructor who creates
exams and the exams themselves.
3. Contains:
- Many-to-Many relationship between Exam and Question
entities.
- Denotes that an exam can contain multiple questions, and a
question can be part of multiple exams.
4. Scores:
- Many-to-One relationship between Student, Exam, and Result
entities.
- Signifies that a student's result is associated with a specific
exam.
4.3 E-R Modeling:
Based on the above entities and relationships, the ER diagram
for the online examination system would look like this:
40
In this ER model, the rectangles represent entities, the lines
represent relationships, and the diamonds represent the
relationship degrees (e.g., 1:M, M:N). The attributes for
each entity are listed within the rectangles.
This ER modeling provides a clear representation of the
entities, their attributes, and the relationships between them in
the online examination system. It serves as a foundation for
further database design and implementation.
4. 4 Structural Design:
For an online examination system, the structural design
typically involves a client-server architecture. The clients,
which are the users accessing the system, interact with a central
server that manages the system's functionality and data storage.
41
In this architecture, the web browser acts as the client,
interacting with the web server (application
server) that handles the requests and responses. The web server
communicates with the database server to retrieve and store data.
4.4 Database Design:
4.4.1 Logical Database Design:
Based on the entities identified earlier, here's an example of
a logical database design for an online examination system:
42
Here's an example of the physical database design for the online
examination system, using the Entity-Relationship (ER) model:
Recommendation:
When developing an online examination system, consider the
following recommendations:
44
3. Security Measures: Implement robust security measures to
protect user data, prevent unauthorized access, and ensure the
integrity of the examination process. Use encryption techniques,
secure authentication mechanisms, and secure data storage
practices.
45
By considering these recommendations, you can create a robust
and user-friendly online examination system that provides a
seamless experience for both students and instructors.
46