Professional Documents
Culture Documents
: 084627482
1.2 Objectives
objective of developing such a computerization system is to reduce the paper work and safe of time in school management. There by increasing the efficiency and decreasing the workload. Specific Objectives In order to attain the general objective, the following list of specific objectives is set: To develop an offline registration system. To facilitate attendance record keeping. To facilitate various report generation. To allow teachers, parents, school community and Education bureau officials to view reports on students. To produce a timetable. Purpose Of Sms
language is to handle a complex software design in a very easy, simple and efficient manner. Redesigning and maintaining the source code costs much more than the reusability of the source code. The turnover time and software cost are drastically brought down. The main aim of designing the C++ language is to support both a procedure oriented style and an object oriented programming paradigm. In that sense, C++ is a hybrid language which support both the procedural as well as object oriented programming styles. Softwares designed using object oriented technology can meet up the challenges of large real systems by enhancing the ability to produce reliable and maintainable code. Through object oriented programming and design, such software can naturally evolve to meet changing needs. Object Oriented programming, or OOP, is a software development philosophy based on the following central ideas : Encapsulation Inheritance Information hiding Data abstraction and Polymorphism
Functions that operate in the data of object are tied together in the data structure . Data is hidden and cannot accessed by external functions. Objects may communicate with each other through functions.
8
Object Oriented Programming provides major advantages in the creation and maintenance of software. These include shorter development time and a high degree of code sharing and flexibility. These advantages make object oriented programming an important technology for building complex software system now and in the future.
Classes Inheritance Data abstraction and encapsulation Polymorphism Dynamic Binding Message Passing
Classes: By using classes we can create user defined data types. In other words the class is the collection of set of data and code. The class allows us to do some things which are polymorphism, inheritance, abstraction, encapsulation which are our next features. The objects are the instances of classes. The syntax for class is : Class <class-name> {
10
11
Management System Automation of School Office Administration. Connects all Education Stakeholders Administrator, Teachers, Students and Parents. Student information management system with SMS integration for sending various SMS alerts. Fully fledged Library Management System. Fees Management Printing fee receipts, generating reports, sms parents for fees dues. Time Table Management. Student feedback system (Feedback of the students about the subject, teaching, etc). Attendance Management. Student Attendance. Staff Attendance. Customized Report Generation . Staff / Student ID card Management System. Preparation of Annual Confidential Report. Exam result, student performance, fees due dates to parents.
13
4.2 Advantages of the System 1. Manual effort is reduced and speedy and accurate reports are generated. 2. Data security is maintained on a departmental level. 3. High degree of security and safety according to international standards. 4. High degree of transparency of the institution through the Web. 5. Better co-ordination between departments. 6. Student conveniences extended beyond the classroom. 7. Overall reduction of operating costs; and savings on time and efforts. 8. Easy to learn, use and implement. 9. A good marketing tool.
10.
reduced.
12.
Over time a knowledge base will be built-up which will be extremely useful for the management in future.
14
rights will not be able to access the system, thereby increasing the security.
18. Single Point School Management Software. 19. Zero redundancy in managing the entire institutions records. 20.
Complete online and offline functionality leaving nothing unturned to bring it as an effective management system.
21. Achieve global outlook and exposure for the institute and its constituents. 22. Save man hrs and money in lots of communication aspects. 23. Save man hrs in managing information with automation. 24. Get connected to parents and alumni in an effective manner. 25. Single software handing everything saves a lots of investment in different
the internet. 4.2.1 Advantage for Students 1. Students can view all there results through internet as soon as it is
announced. 2. They can get the intimation about special events like sports, Holiday,
cultural events & excursion as soon as it is announced. 3. All the queries regarding certificates, Marks Card can be given
through mail and a copy will be sent to him instantly through internet.
4.2.2 Advantage for Parents 1. The parent will get to know about there child's absence to the class with in 10 minutes from the time of commencement of the class.
16
17
personnel this helps us to know how the existing system is functioning and what difficulties they are facing with the present system. The overall performance is gathered by conducting the interviews, filling the questionnaires and by review of manuals.
19
1.2 Scope :
On the basis of the initial investigation the solution approach was adopted and the working strategy in the form of SRS ( software requirement specification ) was submitted to the training in charge. After thoroughly studying our solution appproach the SRS was approved. The working strategy followed is Linear/Waterfall model which is based on linear approach wheare the design processes is dividing into three stsges, starting from analysis where feasibility is studied to designing of the process then to its implementation and finally the testing stage where the software is tested to find and remove bugs in any. The scope of this section of report shall remain thoughout the life cycle of the software. Any change in the requirement leads to change in the subsequent phases of the life cycle. School Management System is comprehensive web-based School
20
22
Robust Scalable
User friendly
Inter-operable
23
24
25
26
27
29
30
Use cases of the system are identified to be ,RecordAttendance, GenerateTranscript, GenerateReportCard, ViewReport and
31
32
33
5.3.2 Class Diagram The class diagram is a static diagram. It represents the static view of an application. Class diagram is not only used for visualizing, describing and documenting different aspects of a system but also for constructing executable code of the software application.
34
35
5.3.4 Sequence Diagram Sequence diagrams show the interaction between participating objects in a given use case. They are helpful to identify the missing objects that are not
36
37
38
39
40
41
42
Figure 5.12 : Sequence Diagram for viewing student status by the parents
43
CHAPTER 6
44
SYSTEM DESIGN
System Design
Based on the user requirements and the detailed analysis of the existing system, the new system must be designed. This is the phase of system designing. It is the most crucial phase in the developments of a system. The logical system design arrived at as a result of systems analysis is converted into physical system design. Normally, the design proceeds in two stages: 1. Preliminary or General Design 2. Structured or Detailed Design 1. Preliminary or General Design: In the preliminary or general design, the features of the new system are specified. The costs of implementing these features and the benefits to be derived are estimated. If the project is still considered to be feasible, we move to the detailed design stage. 2. Structured or Detailed Design: In the detailed design stage, computer oriented work begins in earnest. At this stage, the design of the system becomes more structured. Structure design is a blue print of a computer system solution to a given problem having the same components and inter-relationships among the same components as the original problem. Input, output, databases, forms, codification schemes and processing
45
46
SNO. 1
DESCRIPTION Student ID
2. ATTENDANCE S.NO 1 2 3 4 FIELD NAME STUDENT_ID STATUS REMARKS ATTEN_DATE DESCRIPTION Student Id Status Of Student Remarks Of Student Date Of Attendance
3. STAFF
49
4. LIBRARY SNO. 1 S.NO 2 1 3 2 4 5 3 6 4 7 8 9 10 FIELD NAME EMP_ID FIELD NAME EMP_NAME BOOK_ID ADDRESS BOOK_TITLE MOBILE EMAIL BOOK_AUTHOR M_STATUS ISSUE_TO DOB DEPT NATURE _OF_JOB BASIC_PAY DESCRIPTION Employee ID DESCRIPTION Employee Name C ode Of Book Employee Address Title Of Mobile Employee Book Number Employee Email ID Author Of Book Employee Martial Status Book Is Date To Student Employee IssuedOf Birth Employee Department Name Employee Job Employee Basic Pay
5. FEE
SNO. 1 2 3 4 5 6 6. EXAM
S.NO 1
DESCRIPTION Student Registration Number Student Roll Number Student Class Fee Deposit By Student Date Of Deposition Fine Paid By Student
DESCRIPTION Student ID
50
7. RESULT
SNO 1 2 3 4 5 FIELD NAME REG_NO SUBJECT_NAME MAX_MARKS PASS_MARKS MARKS_OBT DESCRIPTION Student Registration Number Subject Name Of Student Maximum Marks Obtained Maximum Pass Marks Marks Obtained By Student
51
Systems Development Life Cycle (SDLC) is a process used by a systems analyst to develop an information system, including requirements, validation, training, and user (stakeholder) ownership. Any SDLC should result in a high quality system that meets or exceeds customer expectations, reaches completion within time and cost estimates, works effectively and efficiently in the current and planned Information Technology infrastructure, and is inexpensive to maintain and cost-effective to enhance. The System Development Life Cycle (SDLC) is a conceptual model used in project management that describes the stages involved in an information system
52
53
Following are the different phases of system development life cycle: 1. Preliminary study 2. Feasibility study 3. Detailed system study
54
6. Coding 7. Testing 8. Implementation 9. Maintenance The image below is the classic Waterfall model methodology, which is the first SDLC method and it describes the various phases involved in
55
56
Enrolment no.: 084627482 Different Phases of Software Development Life Cycle are:
7.1 Preliminary System Study Preliminary system study is the first stage of system development life cycle. This is a brief investigation of the system under consideration and gives a clear picture of what actually the physical system is? In practice, the initial system study involves the preparation of a System Proposal which lists the Problem Definition, Objectives of the Study, Terms of reference for Study, Constraints, Expected benefits of the new system, etc. in the light of the user requirements. The system proposal is prepared by the System Analyst (who studies the system) and places it before the user management. The management may accept the proposal and the cycle proceeds to the next stage. The management may also reject the proposal or request some modifications in the proposal. In summary, we would say that system study phase passes through the following steps: problem identification and project initiation background analysis inference or findings (system proposal)
7.2 Feasibility
57
58
7.6 Testing
59
60
The School Management System consists of many modules. Each module can be accessed by a restricted group of users. Modules of School Management System are : ADMISSION The module manages the registration and admission process of both new and the old students. Fully integrated with the accounts section, this module allows admission and registration manageable and removes complications arising from human errors. Old and new students are automatically treated differently based on the pre provided information. STUDENT RECORDS The Student Records Management module enables effective management of comprehensive records on each student such as student personal particulars along with Photograph, attendance, co-curriculum activities, achievement, discipline, previous school information, school leaving information and parent/guardian. The system will eliminate duplicate effort on numerous manual processes and paperwork. ATTENDENCE Attendance section plays different roles for Students and Employees. Students
61
FEE MANAGEMENT The Fee Module of is the one of the most automated fee calculation module available in the market. Apart from being automated it is, at the same time, flexible enough to accommodate the varying nature of fee payments that most of the institutions come across. Fee calculation is done on the basis of Category selected for the student. The module automatically calculates the pending fees, previous fee payment details, deductions and concessions if any applicable to the selected student. In addition to the above, the user is also provided the option to allow payment of more than one month/fee-cycle fee whichever applicable. The module enables effective management of Fee records of each student. User-defined fee structure and category can be maintained. Automated bill generation option enhances the system dependability. Fee Receipt can be accepted by the system with few mouse clicks. At any point of time user can
62
64
Student Details: The student report displays the report regarding students. This section has the following reports:
o o o o o o
Admission Wise Age Wise Gender Wise Class Wise Complete Student Details Roll Number Wise
Class Details: The class details reports displays the report regarding class details. This section includes the following reports:
o o o
Administration Report: The administration report displays the reports regarding institution administration. This section has the following reports:
65
Donation Occurrence
Library Details: The library report displays the reports regarding institution's library. This section has the following reports:
o o o o o
Books in Library Issued Books Overdue Books Fine Details Stock Details
Fee Details Report: The fee details report displays the reports regarding fee. This section of report includes the following reports.
o o o o
Admission Fee Receipt Monthly Fee Receipt Fee Due Fee Collection Report
o
Fee Report
Employee Details: The transportation report displays the institution's transportation details. This section includes the following reports:
66
Time Table Report The time table report displays the reports regarding time table. This section includes the following reports:
o o
Mark Sheet Report: The mark sheet report displays the report regarding class wise mark sheet. This section includes the following reports:
o o o o o
Single Student Class Wise Consolidated Sheet Class Wise Subject Topper Student Card
Attendance Report: The attendance report displays the attendance report for students as well employees. This section includes the following reports:
o
67
CHAPTER - 9 CODING
/* SCHOOL MANAGEMENT SYSTEM */ #include<iostream.h> #include<graphics.h> #include <stdlib.h>
68
void clear(); void input_criteria(); void read_criteria(); void read_student1(); void create_eligible_sc(); void create_eligible_com(); void create_eligible_arts(); void read_eligible_sc(); void read_eligible_com(); void read_eligible_arts(); char * stream_name(int strm); void select_list( char *in_file, char *out_file); student1 s; void School_Management_System::Admission_Management() { clrscr(); fstream fin, fout; fstream fsc, fcom, farts; int opt=1, ch; while(opt!=8) { clrscr(); clear(); cout<<"\n\t=========== MENU OF ADMISSION MANAGEMENT ==========\n"; cout<<"\n\t[1] CREATE ADMISSION CRITERIA"; cout<<"\n\n\t[2] ENTER STUDENT'S DATA "; cout<<"\n\n\t[3] ALLOTMENT OF STREAM"; cout<<"\n\n\t[4] DISPLAY CRITERIA FOR SELECTION"; cout<<"\n\n\t[5] DISPLAY ALLOTMENT OF STUDENT'S STREAM"; cout<<"\n\n\t[6] DISPLAY ALL STUDENT'S REGISTERED"; cout<<"\n\n\t[7] CREATE / DISPLAY MERIT LIST"; cout<<"\n\n\t[8] BACK TO MAIN MENU";
70
case
case
case
case
/******************************************* // STUDENT MANAGEMENT *******************************************/ int menu(int,int,int,char a[25],char b[25],char c[25],char d[25],char e[25],char sl1[2],char sl2[2],char title[40],char under[2]); void menu1(); void student_menu(); void man(); void mark_menu(); int records=0; void message(int x,int y,int lines,char a[50],char b[50],char c[50], char d[50],char e[50],char f[10],int back) { int l,i,j; char f1[10]; l=strlen(a); if(l<strlen(b)) l=strlen(b); if(l<strlen(c)) l=strlen(c); if(l<strlen(d)) l=strlen(d); if(l<strlen(e)) l=strlen(e); if(l<strlen(f)) l=strlen(f); l+=4; textbackground(back); for(i=1;i<l+2;i++) for(j=1;j<lines+4;j++) { gotoxy(i+x,j+y); cputs(" "); } gotoxy(x,y); cputs(""); for(i=x+1;i<l+x+1;i++) { gotoxy(i,y); 80
//UP
90
92
: "<<grade;
}; lass typist : public staff { float speed; public: void gettypist(void) { getstaff(); cout<<"Enter speed (wpm): "; cin>>speed; } void disptypist(void) { dispstaff(); cout<<"\nSPEED : "<<speed; } }; class casual : public typist { float dailywages; public: void create(void) { gettypist(); cout<<"Enter Daily Wages : "; cin>>dailywages; } void display(void) { disptypist(); cout<<"\nDAILY WAGES: "<<dailywages; } }; void School_Management_System::Staff_Management() 100
cout<<"\t"<<admno<<setw(20)<<name<<setw(10)<<token<<endl; } }; //class ends here // global declaration for stream object, object fstream fp,fp1; book bk; student st; // function to write in file void write_book() { char ch; fp.open("book.dat",ios::out|ios::app); do{ clrscr(); bk.create_book(); fp.write((char*)&bk,sizeof(book)); cout<<"\n\nDo you want to add more record..(y/n?)"; cin>>ch; }while(ch=='y'||ch=='Y'); fp.close(); } void write_student() { char ch; fp.open("student.dat",ios::out|ios::app); do{ st.create_student(); fp.write((char*)&st,sizeof(student)); cout<<"\n\ndo you want to add more record..(y/n?)"; cin>>ch; 107
111
/************************************************ // EXAMINATION MANAGEMENT ************************************************/ int s_menu1(); int ss_menu1(int u); struct pass { char username[15]; char password[8]; }str; class student5 { struct data { char name[30]; int roll; int class1; int marks[5]; float total; float percent; char branch[5]; }d1; public: void mark_entry(); void plist1(); void plist2(); void plist3(); void plist4(); void plist5(); void plist6(); void moddata1(); void moddata2(); void moddata3(); void moddata4(); void moddata5(); void moddata6(); void displaydata(); void deldata1(); void deldata2(); 134
}s1; int s_menu(); int ss_menu(int u); int s_menu1() { int ch1; cleardevice(); outtextxy(10,20,"1. UNIT TEST.\n"); outtextxy(10,40,"2. HALF YEARLY.\n"); outtextxy(10,60,"3. ANNUALS.\n"); outtextxy(10,80," ENTER YOUR CHOICE:"); gotoxy(30,6); cin>>ch1; return(ch1); } int ss_menu1(int u) { cleardevice(); int ch2,san; switch(u) { case 1: outtextxy(10,10," 011--> 1st UNIT TEST.\n"); outtextxy(10,30," 022--> 2nd UNIT TEST.\n"); outtextxy(10,50," 033--> 3rd UNIT TEST.\n"); outtextxy(10,70," 044--> 4th UNIT TEST.\n"); 135
171
cout<<"\n\n====================================\n"; getch(); } fp.close(); getch(); } // function to read specific record from file void display_sp(int n) { int flag=0; fp.open("student4.dat",ios::in); while(fp.read((char*)&st4,sizeof(student4))) { if(st4.retrollno()==n) { clrscr(); st4.showdata(); flag=1; } } fp.close(); if(flag==0) cout<<"\n\nrecord not exist"; getch(); } // function to modify record of file void modify_student4() { int no,found=0; clrscr(); cout<<"\n\n\tTo Modify "; cout<<"\n\n\tPlease Enter The roll number of student"; cin>>no; fp.open("student2.dat",ios::in|ios::out); while(fp.read((char*)&st4,sizeof(student4)) && found==0) { if(st4.retrollno()==no) { st4.showdata();
172
void class_result() { clrscr(); fp.open("student4.dat",ios::in); if(!fp) { cout<<"ERROR!!! FILE COULD NOT BE OPEN\n\n\n Go To Entry Menu to create File"; cout<<"\n\n\n Program is closing ...."; getch(); exit(0); } cout<<"\n\n\t\tALL STUDENTS RESULT \n\n"; cout<<"========================================= ===========\n"; cout<<"Roll No. Name P C M E CS %age Grade\n"; cout<<"========================================= ===========\n"; while(fp.read((char*)&st4,sizeof(student4))) { st4.show_tabular(); } fp.close(); getch(); } // function to display result menu void result() { int ans,rno; char ch; clrscr(); cout<<"\n\n RESULT MENU"; cout<<"\n\n 1. Class Result "; cout<<"\n\n 2. Student Report Card "; cout<<"\n\n 3.Back to Main Menu "; cout<<"\n\n\nEnter Choice (1/2)? "; cin>>ans; switch(ans) 174
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
CHAPTERR 11 TESTING
11.1 TESTING STRATEGIES
System testing is the expensive and time consuming process. There are two strategies for testing software that we use for testing our system. They are: 1. Code Testing 2. Specification Testing In Code testing, we developed those cases to execute every instructions and path in the program. In Specification testing, we examined the program specification and the wrote test data to determine how the program operates under specified condition. The basic levels are unit testing, integration testing, system testing, and acceptance testing. Before actually implementing the new system into operation, a test run of the system is done for removing the bugs, if any. It is an important phase of a successful system. After codifying the whole programs of the system, a test plan should be developed and run on a given set of test data. The output of the
197
198
199
Simplifies integration
Unit testing may reduce uncertainty in the units themselves and can be used in a bottom-up testing style approach. By testing the parts of a program first and then testing the sum of its parts, integration testing becomes much easier. Unit testing limitations Testing cannot be expected to catch every error in the program: it is impossible to evaluate every execution path in all but the most trivial programs. The same is true for unit testing. Additionally, unit testing by definition only tests the functionality of the units themselves. Therefore, it will not catch integration errors or broader system-level errors (such as functions performed across multiple units, or nonfunctional test areas such as performance). Unit testing should be done in conjunction with other software testing activities. Like all forms of software testing, unit tests can only show the presence of errors; they cannot show the absence of errors.
200
Bottom-up integration testing begins with unit testing, followed by tests of of progressively higher-level combinations of units called modules or builds.
In top-down integration testing, the highest-level modules are tested first and progressively lower-level modules are tested after that. In a comprehensive software development environment, bottom-up testing is usually done first, followed by top-down testing.
201
Use one or more Assert statements to validate specific outcomes. Verify that no exception was thrown. It is still advisable to use one or more Assert statements.
11.4 DEBUGGING The compiler can detect syntax errors but it is unable to detect run time errors, which result in incorrect output. To trace these types of errors in the program the debugging has to be done by the programmer. Debugging is a cycle of detection, location, repair and test. Debugging is a hypothesis testing process. When bug is detected, the tester must form a hypothesis about the cause and location of the bug. Future examination of the
202
13.1 VALIDATION
The only validation in this project is that the registration number of the each student is unique i.e, it should not be same.
13.2 IMPLEMENTATION
204
205
13.3 MAINTENANCE
Once the software is delivered and deployed, then maintenance phase starts. Software requires maintenance because there are some residual errors remaining in the system that must be removed as they discovered. Maintenance involves understanding the existing software (code and related documents ), understanding the effects of change, making the changes, testing the new changes, and retesting the old parts that were not changed. The complexity of the maintenance task makes maintenance a most costly activity in the life of the software product. It is believed that almost all the software yhat is developed has residual errors, or bugs, in them. These errors needs to be removed when discovered that leads to the software change. This is called corrective maintenance. Corrective maintenance means repairing, processing or performance failures or making alterations because of previously ill defined problems. Software undergoes change frequently even without bugs because the software must be ugraded and enhanced to include more features and provide more services. This also requires modification of the software.
206
CHAPTER 14 LIMITATIONS
Education system forms the backbone of every nation. The success of this system lies in correct knowledge dissemination process blended with smooth and efficient functioning of management system. Technology at schools can play a very crucial role in streamlining the whole system of education. Major Limitations And Challenges In Front Of The Schools to implement a School Management Software. 1. Mental blocks 2. Schools are doing well without IT
207
15.2 Scope
208
CONCLUSION
School Management Systems are being identified as an appropriate method for managing information in schools. In this project, we developed an automated school management system that facilitates the various activities taking place at schools. A package can be only developed successfuly if the developer has a widespread undertaking about the nature of the existing problems. Obviosly, developer should try to tackle each and every problem encountered regarding implementation of the new system. It is envident that most of the time it is not possible to make such package that can solve the entire problems some bugs may always be there. This is because of the nature of the problem and designed of the package.
209
210