Computer Project Class 12
Computer Project Class 12
“ School
Introduction
The School Management System is a computerized solution
designed to help educational institutions manage day-to-day
administrative tasks efficiently. By integrating Python with
SQL, the system offers a user-friendly interface to handle
student information, class assignments, and overall school
management.
Objectives
The objective of this project is to let the students apply
the programming knowledge into a real-world
situation/problem and exposed the students ow
programming skills helps in developing a good
software.
1. To develop a system that allows easy management of
student data through Python and MySQL .
2. To implement CRUD (Create, Read, Update, Delete)
operations for managing school data effectively.
3. To ensure data security and improve the
efficiency of school management processes.
4. Apply object oriented programming principles
effectively when developing small to medium sized
projects.
1
Proposed System
The proposed School Management System automates
school administrative tasks such as managing student
and class records. It provides a user-friendly
interface for adding, viewing, updating, and deleting
student and class information.
2
System Development
Life Cycle (SDLC)
The System Development Life Cycle (SDLC) for the
School Management System involves several key
phases. First, requirements were gathered to
understand the need for managing student and class
data. Next, the system was designed using Python for
the interface and MySQL for the backend. During
implementation, CRUD operations were integrated,
allowing the system to add, view, update, and delete
records. The system was then thoroughly tested to
ensure functionality. After deployment on school
computers, the system is maintained for updates or
bug fixes as needed, ensuring long-term reliability and
efficiency.
3
Phases Of System Development
Life Cycle Initiation Phase
The Initiation Phase begins when a business sponsor identifies
a need or an opportunity.
Planning Phase
The planning phase is the most critical step in completing development,
acquisition, and maintenance projects. Careful planning, particularly in the early
stages of a project, is necessary to coordinate activities and manage project risks
effectively. The depth and formality of project plans should be commensurate
with the characteristics and risks of a given project. Project plans refine the
information gathered during the initiation phase by further identifying the specific
activities
and resources required to complete a project.
9
Implementation Phase
This phase is initiated after the system has been tested and
accepted by the user. In this phase, the system is installed
to support the intended business functions. System
performance is compared to performance objectives
established during the planning phase. Implementation
includes user notification, user training, installation of
hardware, installation of software onto production
computers, and integration of the system into daily work
processes. This phase continues until the system is
operating in production in accordance with the defined
user requirements
Operations And Maintenance Phase
The system operation is on-going. The system is monitored for
continued performance in accordance with user requirements and
needed system modifications are incorporated. Operations continue as
long as the system can be effectively adapted to respond to the
organization’s needs. When modifications or changes are identified,
the system may re-enter the planning phase.
11
12
Output Screens
13
14
Testing
Software Testing is an empirical investigation conducted to provide stakeholders
with information about the quality of the product or service under test[1] , with
respect to the context in which it is intended to operate. Software Testing also
provides an objective, independent view of the software to allow the business to
appreciate and understand the risks at implementation of the software. Test
techniques include, but are not limited to, the process of executing a program or
application with the intent of finding software bugs.
It can also be stated as the process of validating and verifying that a software
program/application/product meets the business and technical requirements
that guided its design and development, so that it works as expected and can be
implemented with the same characteristics. Software Testing, depending on the
testing method employed, can be implemented at any time in the development
process, however the most test effort is employed after the requirements have
been defined and coding process has been completed.
Testing Methods
Software testing methods are traditionally divided into black box
testing and white box testing. These two approaches are used to
describe the point of view that a test engineer takes when designing
test cases.
Black Box Testing
Black box testing treats the software as a "black box," without any
knowledge of internal implementation. Black box testing methods
include: equivalence partitioning, boundary value analysis, all-pairs
testing, fuzz testing, model-based testing, traceability matrix,
exploratory testing and specification-based testing.
Specification-Based Testing
Specification-based testing aims to test the functionality of software
according to the applicable requirements.[16] Thus, the tester inputs data
into, and only sees the output from, the test object. This level of testing
usually requires thorough test cases to be provided to the tester, who then
can simply verify that for a given input, the output value (or behaviour),
either "is" or "is not" the same as the expected value specified in the test
case. Specification-based testing is necessary, but it is insufficient to guard
against certain risks 15
Advantage And Disadvantages
The black box tester has no "bonds" with the code, and a tester's
perception is very simple: a code must have bugs. Using the
principle, "Ask and you shall receive," black box testers find bugs
where programmers don't. But, on the other hand, black box
testing has been said to be "like a walk in a dark labyrinth without
a flashlight," because the tester doesn't know how the software
being tested was actually constructed.
That's why there are situations when
1.a black box tester writes many test cases to check something that can be
tested by only one test case.
2. some parts of the back end are not tested at all. Therefore, black box
testing has the advantage of "an unaffiliated opinion," on the one hand,
and the disadvantage of "blind exploring," on the other.
White Box Testing
White box testing, by contrast to black box testing, is when the tester
has access to the internal data structures and algorithms (and the code
that implement these)
16
Hardware And Software
Requirements
HARDWARE
I. OPERATING
WINDOWS 7 AND ABOVE
SYSTEM
PENTIUM(ANY) OR AMD
II .PROCESSOR ATHALON(3800+-
4200+DUALCORE
1.8495 OR 915,995 FOR PENTIUM
OR MSI
III. MOTHERBOARD K9MM-V VIAK8M800+8237R
PLUS CHIPSET FOR AMD
ATHALON
IV. RAM 512MB+
SOFTWARE
i. Windows OS
ii. Python
17
18