Vous êtes sur la page 1sur 57

STUDENT ATTENDANCE

A Project Report Submitted for the partial fulfillment for the Award of Degree of MASTER OF COMPUTER APPLICATIONS BY SOWMIYA.D Reg No: 09/EP1841 Under the guidance of Mrs.E.B.Vithya Padmini, B.Sc., M.C.A., M.Phil,

Department of Computer Applications Ethiraj College for Women Chennai-600 008 June 2010

BONAFIDE CERTIFICATE ETHIRAJ COLLEGE FOR WOMEN (AUTONOMOUS) CHENNAI-600008

DEPARTMENT OF COMPUTER APPLICATIONS


2009-2010 This is to certify that the Project Work entitled STUDENT ATTENDANCE is carried out by Miss.SOWMIYA.D, Reg. No 09/EP1841 during June 2010

DATE: PLACE:

Signature of the HOD

Signature of the Guide

Submitted for the viva-voce examination at .. On . Examiner-1: (Signature and Name of the Examiner) Examiner-2: (Signature and Name of the Examiner)

ACKNOWLEDGEMENT

First and foremost, I Praise and thank the god almighty for his unfailing source of strength and inspiration in completion of this project. I wish to acknowledge the following with great attitude who have lent their helping hands with their valuable experience guidance for progressing my project. I take immense pleasure in expressing my sincere gratitude and heartfelt thanks to Tmt. M. Thavamani, M.Com, M.Phil., PhD., for her constant encouragement and for providing all the facilities for the completion of the project. I wish to express my deepest gratitude to Mrs. P. Sharmila., M.C.A., M.Phil. Head of Department of computer applications for her moral support for helping me out with her timely advice. I wish to record my sincere thanks to my internal guide Mrs.E.B.Vithya Padmini, M.C.A., M.Phil, and to all the staff members of the department for having provided me with their valuable advice, knowledge and their sustained encouragement in the course of completion of my project. Im also grateful to my friends and parents who have extended their support and co-operation during my project for the completion. And finally, I would like to thank all those who have been directly or indirectly involved in the successful completion of my project.

INDEX

S.NO

CONTENT

PG.NO

1.

INTRODUCTION 1.1.SYNOPSIS SYSTEM STUDY 2.1.PROBLEM DEFINTION 2.2.EXISTING SYSTEM 2.3.PROPOSED SYSTEM SYSTEM REQUIREMENTS 3.1.HARDWARE REQUIREMENT 3.2.SOFTWARE REQUIREMENT 3.3.SOFTWARE ENVIRONMENT SYSTEM DESIGN 4.1.ER DIAGRAM 4.2.DATABASE DESIGN 4.3.MODULE DESCRIPTION CODING

2.

3.

4.

5.

6. 7. 8. 9. 10.

TESTING CONCLUSION FUTURE ENHANCEMENT BIBLIOGRAPHY ANNEXURE 10.1.SCREENSHOTS 10.2 REPORTS

INTRODUCTION

1.1 SYNOPSIS

Attendance Management System is a software developed for daily student attendance in schools, collages and institutes. If facilitates to access the attendance information of a particular student in a particular class. The information is sorted by the operators, which will be provided by the teacher for a particular class. This system will also help in evaluating attendance eligibility criteria of a student. The purpose of developing student attendance is to computerized the tradition way of taking attendance. Another purpose for developing this software is to generate the report automatically at the end of the session or in the between of the session. The scope of the project is the system on which the software is installed, i.e. the project is developed as a desktop application, and it will work for a particular institute. But later on the project can be modified to operate it online.

SYSTEM STUDY

2.1 PROBLEM DEFINITION: In the present system all work is done on paper. The whole session attendance is stored in register and at the and of the session the reports are generated. We are not interested in generating report in the middle of the session or as per the requirement because it takes more time in calculation. To reduce time and cost by computerizing the attendance system. Maintaining the attendance for each and every department in notebooks is hard. This will lead to convenience to track the attendance in an easy manner.

2.2 EXISTING SYSTEM: The existing system is not user friendly because the retrieval of data is very slow and data is not maintained efficiently. We require more calculations togenerate the report so it is generated at the end of the session.And the student not get a single chance to improve their attendance. All calculations to generate report is done manually so there is greater chance of errors. Existing system requires lot of paper work. Loss of even a single register/record led to difficult situation because all the papers are needed to generate the reports. Every work is done manually so we cannot generate report in the middle of the session or as per the requirement because it is very time consuming.

2.3 PROPOSED SYSTEM:

The proposed system is user friendly because the retrieval and storing of data is fast and data is maintained efficiently. Moreover the graphical user interface is provided in the proposed system, which provides user to deal with the system very easily. Reports can be easily generated in the proposed system so user can generate the report as per the requirement (monthly) or in the middle of the session. User can give the notice to the students so he/she become regular. The proposed system requires very less paper work. All the data is feted into the computer immediately and reports can be generated through computers. Moreover work become very easy because there is no need to keep data on papers. Computer operator control will be there so no chance of errors. Moreover storing and retrieving of information is easy. So work can be done speedily and in time.

SYSTEM ANALYSIS

3.1. HARDWARE REQUIREMENT:

Main Processecor RAM Base Memory size Extended Memory Hard Disk Capacity Floppy Disk Capacity Clock Speed Monitor Keyboard

Intel Pentium 4 512MB 2.00 GHz 512 KB 80 GB 1.44 MB 1.1GHZ Samsung 15-inch 56V Logitech

3.2. SOFTWARE REQUIREMENT:

Operating systems Front End Tool Database

Windows NT/2000/XP Microsoft Visual Basic 6.0 Oracle 9i

3.3 SOFTWARE ENVIRONMENT:

ABOUT THE OPERATING SYSTEM:

Microsoft windows 2000 professional is more compatible and more powerful than any workstation you have before Easier to use Easier to manage More compatible More powerful

For all your computing needs, Windows 2000 Professional provides: Industrial-Strength reliability The highest level of security Powerful performance

ABOUT THE LANGUAGE: VISUAL BASIC:

Visual Basic, developed by Microsoft Corporation, is a leading Application Development tool in the information technology industry today. Visual Basic is an easy user interface and helps the user to be more productive by providing appropriate tools for different aspects of GUI. Visual Basic is a powerful programming system for developing sophisticated, graphical application for Microsoft Windows environment. Its productivity has been enhanced and a complete set of tools has been added to simplify rapid application development. Visual refers to the method used to create the graphical user interface that uses illustration, rather than writing numerous lines of code to describe the appearance, function and location of interface elements. Basic refers to the BASIC programming language, widely preferred language by many programmers for its simplicity. Visual Basic has evolved from the original basic language and which relate directly to the windows GUI. The Visual Basic Application Wizard that comes with all the editions of VB is a gift to programmers. It helps the programmers to develop the Visual basic application. It acts as a foundation on which the users can build codes specific to their application. This avoids the programmers reinventing the wheel. VB application wizard can be used for developing SDI or MDI applications. ORACLE:

ORACLE is a fourth generation relational database management system. In general, a database management system (DBMS) must be able to reliably manage a large amount of data in a multi-user environment so that many users can concurrently access the same data. All this must be accomplished while delivering high performance to the users of the database. A DBMS must also be secure from unauthorized access and provide efficient solutions for failure recovery. The ORACLE Server provides efficient and effective solutions for the major database features. ORACLE consists of many tools that allow you to create an application with ease and flexibility. You must determine how to implement your requirements using the features available in ORACLE, along with its tools. The features and tools that you choose to use to implement your application can significantly affect the performance of your application. Several of the more useful features available to ORACLE application developers are integrity constraints, stored procedures and packages, database triggers, cost-based optimizer, shared SQL, locking and sequences. The purpose of a database is to store and retrieve related information. A database server is the key to solving the problems of information management. In general, a server reliably manages a large amount of data in a multiuser environment so that many users can concurrently access the same data.

SYSTEM DESIGN

4.1.ENITITY RELATIONSHIP DIAGRAM:

Student name Register no

Status

Attendance date Department

Attendance

Belongs

Student

Register no Student name

Phone no Address Fathers name

4.2. DATABASE DESIGN:

Table Name: Student details Table Description: To store the student information

S.No 1. 2. 3. 4. 5. 6.

Field Name

Data type Number Text Text Text Number Text

Description Registration number Student name Fathers name Student address Phone number Department

regno name fname addr ph1 dept

Table Name: Attd

Table Description: To maintain the student attendance

S.No 1. 2. 3. 4. 5. 6. 7.

Field Name

Data type Number Text Text Text Text |Date Number

Description Register number Student name Fathers name Status Entered by Attendance date Phone number

regno name
fname Stat entby attdate ph1

4.3. MODULE DESCRIPTION:

Two main modules for proper functioning

First module is admin which has right for creating space for new batch. Any

entry of new student, Updation in student detail if necessary, and edting details.
Second module is handled by the user which can be a faulty or an operator.

User has a right of making daily attendance, generating report.

Attendance can be taken in two ways


On the basis of date.

On the basis of department.

CODING

5.1. CODINGS: Form1: Option Explicit Private Sub Form_KeyPress(KeyAscii As Integer)

Unload Me End Sub Private Sub Form_Load() lblVersion.Caption = "Version " & App.Major & "." & App.Minor & "." & App.Revision lblProductName.Caption = App.Title End Sub Private Sub Frame1_Click() Unload Me End Sub Private Sub Timer1_Timer() pb1.Max = 100 pb1.Min = 1 If pb1.Value < 100 Then pb1.Value = pb1.Value + 1 Label1.Caption = Str(pb1.Value) & "%" End If If pb1.Value = 100 Then Unload Me Form1.Show End If End Sub

Form2: Dim a As Integer Private Sub exit_Click() Unload Form1

End Sub Private Sub Form_Load() Me.WindowState = 2 End Sub Private Sub login_Click() If Text1.Text = "mailu" Then Unload Form1 Form1.Hide Load Form5 Form5.Show Else a = MsgBox("Incorrect Password!", vbOKOnly + vbCritical, "Login") Text1.Text = "" Text1.SetFocus End If End Sub Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then login.SetFocus End If End Sub

Form-3: Dim atd As New ADODB.Connection Dim rs As New ADODB.Recordset Dim a, f Dim b As Integer

Private Sub Combo1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then command1.SetFocus End If End Sub Private Sub Command2_Click() Form3.Hide Load Form5 Form5.Show Text7.Text = "" 'Text8.Text = "" 'Text9.Text = "" 'Text11.Text = "" 'Text12.Text = "" 'Text14.Text = "" End Sub Private Sub Command3_Click() Form3.Hide Form5.Show End Sub Private Sub Delete_Click() Set rs = New ADODB.Recordset rs.Open "delete from stdetail where regno=" + Text7.Text, atd MsgBox "Record deleted" Form3.Refresh Text7.Text = "" Text8.Text = "" Text9.Text = "" Text10.Text = ""

Text11.Text = "" Text12.Text = "" Text13.Text = "" Text14.Text = "" End Sub Private Sub Text1_Validate(Cancel As Boolean) a = Text1.Text f=0 rs.MoveFirst While Not rs.EOF If rs.Fields(0).Value = a Then MsgBox "Record already exist" Text1.SetFocus f=1 command1.Enabled = False End If rs.MoveNext Wend If f = 0 Then command1.Enabled = True End If End Sub Private Sub Text15_Change() If KeyAscii = 13 Then a = Text15.Text f=0 rs.MoveFirst While Not rs.EOF

If rs.Fields(0).Value = a Then disp2 f=1 End If rs.MoveNext Wend If f = 0 Then MsgBox "Record not found" Text15.SetFocus End If End If End Sub Private Sub Text15_Validate(Cancel As Boolean) a = Text15.Text f=0 rs.MoveFirst While Not rs.EOF If rs.Fields(0).Value = a Then disp2 f=1 End If rs.MoveNext Wend If f = 0 Then MsgBox "Record not found" Text15.SetFocus End If End Sub Private Sub Command1_Click()

rs.AddNew rs(0) = Text1.Text rs(1) = Text2.Text rs(2) = Text3.Text rs(3) = Text4.Text rs(4) = Text5.Text rs(6) = Combo1.Text rs.Update MsgBox "Record Updated" Form3.Refresh Text1.Text = "" Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = "" Combo1.Text = "" Form3.Refresh End Sub Private Sub exit_Click() 'Unload Form3 Form3.Hide Load Form5 Form5.Show Text1.Text = "" Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = ""

'Text6.Text = "" Combo1.Text = "" End Sub Private Sub disp2() Text15.Text = rs(0) Label25.Caption = rs(1) Label26.Caption = rs(2) Label27.Caption = rs(3) If Label28.Caption = Null Then Label28.Caption = "" Else Label28.Caption = rs(4) End If Label30.Caption = rs(6) End Sub Private Sub Form_Load() Me.WindowState = 2 atd.Open ("Provider=OraOLEDB.Oracle.1;Password=tiger;Persist Security Info=True;User ID=scott") rs.Open "stdetail", atd, adOpenDynamic, adLockOptimistic End Sub

Form-4: Private Sub att_Click() Unload Form5 Form5.Hide Load Form2

Form2.Show End Sub Private Sub Form_Load() Me.WindowState = 2 End Sub Private Sub logoff_Click() Unload Form5 Form5.Hide Load Form1 Form1.Show End Sub Private Sub madd_Click() Unload Form5 Form5.Hide Load Form3 Form3.Show End Sub Private Sub mdelete_Click() Unload Form5 Form5.Hide Load Form7 Form7.Show End Sub Private Sub madddelete_Click() Form5.Hide Form3.Show End Sub Private Sub matt_Click() Unload Form5

Form5.Show Load Form2 Form2.Show End Sub Private Sub mexit_Click() End End Sub Private Sub mreport_Click() Unload Form5 Form5.Hide Load Form8 Form8.Refresh Form8.Show End Sub Private Sub mview_Click() Unload Form5 Form5.Hide Load Form8 Form8.Show End Sub Private Sub mreport1_Click() Unload Form5 Form5.Hide Load Form11 Form11.Show End Sub Private Sub mreport2_Click() Unload Form5 Form5.Hide

Load Form8 Form8.Show End Sub Private Sub srecord_Click() Form5.Hide Unload Form5 Load Form3 Form3.Show End Sub Form-5: Dim atd As New ADODB.Connection Dim rs As New ADODB.Recordset Dim c, j, i Private Sub Command1_Click() Set rs = New ADODB.Recordset rs.Open "select * from addb where regno='" + Text3.Text + "' and attdate between '" + Text1.Text + "' and '" + Text2.Text + "'", atd disp3 End Sub Private Sub Command2_Click() Form11.Hide Form5.Show End Sub Private Sub Form_Load() Me.WindowState = 2 atd.Open ("Provider=OraOLEDB.Oracle.1;Password=tiger;Persist Security Info=True;User ID=scott")

rs.Open "addb", atd, adOpenDynamic, adLockOptimistic End Sub Private Sub disp3() MSF.Rows = MSF.Rows - (MSF.Rows - 1) MSF.Refresh MSF.Rows = 2 j=1 c=0 While Not rs.EOF c=c+1 rs.MoveNext Wend rs.MoveFirst While Not rs.EOF For i = 1 To c MSF.Row = j MSF.Col = 0 MSF.Text = j MSF.Col = 1 If rs(3).Value = "ABSENT" Then MSF.CellForeColor = vbRed MSF.Text = rs.Fields(1) Else MSF.CellForeColor = vbNormal MSF.Text = rs.Fields(1) End If MSF.Col = 2 If rs(3).Value = "ABSENT" Then MSF.CellForeColor = vbRed

MSF.Text = rs.Fields(2) Else MSF.CellForeColor = vbNormal MSF.Text = rs.Fields(2) End If MSF.Col = 3 If rs(3).Value = "ABSENT" Then MSF.CellForeColor = vbRed MSF.Text = rs.Fields(3) Else MSF.CellForeColor = vbNormal MSF.Text = rs.Fields(3) End If MSF.Col = 4 If rs(3).Value = "ABSENT" Then MSF.CellForeColor = vbRed MSF.Text = rs.Fields(5) Else MSF.CellForeColor = vbNormal MSF.Text = rs.Fields(5) End If MSF.Col = 5 If rs(3).Value = "ABSENT" Then MSF.CellForeColor = vbRed MSF.Text = rs.Fields(0) Else MSF.CellForeColor = vbNormal MSF.Text = rs.Fields(0) End If

j=j+1 MSF.Rows = MSF.Rows + 1 Form8.Refresh rs.MoveNext Next Wend End Sub Form-6: Dim con As New ADODB.Connection Dim rs As New ADODB.Recordset Dim c, j, i Private Sub Command1_Click() Set rs = New ADODB.Recordset If Combo1.Text = "MCAI" Then rs.Open "select * from addb where dept='MCAI' and attdate='" + Text1.Text + "'", con disp3 ElseIf Combo1.Text = "MCAII" Then rs.Open "select * from addb where dept='MCAII' and attdate='" + Text1.Text + "'", con disp3 ElseIf Combo1.Text = "MCAIII" Then rs.Open "select * from addb where dept='MCAIII' and attdate='" + Text1.Text + "'", con disp3 End If MSF.Rows = MSF.Rows - 1 End Sub Private Sub Command2_Click() Form8.Hide

Form5.Show End Sub Private Sub Form_Load() Me.WindowState = 2 con.Open ("Provider=OraOLEDB.Oracle.1;Password=tiger;Persist Security Info=True;User ID=scott") rs.Open "addb", con, adOpenDynamic, adLockOptimistic End Sub Private Sub disp3() MSF.Rows = MSF.Rows - (MSF.Rows - 1) MSF.Refresh MSF.Rows = 2 j=1 c=0 While Not rs.EOF c=c+1 rs.MoveNext Wend rs.MoveFirst While Not rs.EOF For i = 1 To c MSF.Row = j MSF.Col = 0 MSF.Text = j MSF.Col = 1 If rs(3).Value = "ABSENT" Then MSF.CellForeColor = vbRed MSF.Text = rs.Fields(1) Else

MSF.CellForeColor = vbNormal MSF.Text = rs.Fields(1) End If MSF.Col = 2 If rs(3).Value = "ABSENT" Then MSF.CellForeColor = vbRed MSF.Text = rs.Fields(2) Else MSF.CellForeColor = vbNormal MSF.Text = rs.Fields(2) End If MSF.Col = 3 If rs(3).Value = "ABSENT" Then MSF.CellForeColor = vbRed MSF.Text = rs.Fields(3) Else MSF.CellForeColor = vbNormal MSF.Text = rs.Fields(3) End If MSF.Col = 4 If rs(3).Value = "ABSENT" Then MSF.CellForeColor = vbRed MSF.Text = rs.Fields(5) Else MSF.CellForeColor = vbNormal MSF.Text = rs.Fields(5) End If MSF.Col = 5

If rs(3).Value = "ABSENT" Then MSF.CellForeColor = vbRed MSF.Text = rs.Fields(0) Else MSF.CellForeColor = vbNormal MSF.Text = rs.Fields(0) End If j=j+1 MSF.Rows = MSF.Rows + 1 Form8.Refresh rs.MoveNext Next Wend End Sub

TESTING

The purpose of testing is to discover errors. Testing is the process of trying to discover every conceivable fault or weakness in a work product. It provides a way to check the functionality of components, sub assemblies, assemblies and/or a finished product It is the process of exercising software with the intent of ensuring that the Software system meets its requirements and user expectations and does not

fail in an unacceptable manner. There are various types of test. Each test type addresses a specific testing requirement.

TYPES OF TESTS Unit testing Unit testing involves the design of test cases that validate that the internal program logic is functioning properly, and that program inputs produce valid outputs. All decision branches and internal code flow should be validated. It is the testing of individual software units of the application .it is done after the completion of an individual unit before integration. This is a structural testing, that relies on knowledge of its construction and is invasive. Unit tests perform basic tests at component level and test a specific business process, application, and/or system configuration. Unit tests ensure that each unique path of a business process performs accurately to the documented specifications and contains clearly defined inputs and expected results.

Integration testing Integration tests are designed to test integrated software components to determine if they actually run as one program. Testing is event driven and is more concerned with the basic outcome of screens or fields. Integration tests

demonstrate that although the components were individually satisfaction, as shown by successfully unit testing, the combination of components is correct and consistent. Integration testing is specifically aimed at exposing the problems that arise from the combination of components. Functional test Functional tests provide systematic demonstrations that functions tested are available as specified by the business and technical requirements, system documentation, and user manuals. Functional testing is centered on the following items: Valid Input Invalid Input Functions Output : identified classes of valid input must be accepted. : identified classes of invalid input must be rejected. : identified functions must be exercised. : identified classes of application outputs must be exercised.

Systems/Procedures: interfacing systems or procedures must be invoked. Organization and preparation of functional tests is focused on requirements, key functions, or special test cases. System Test System testing ensures that the entire integrated software system meets requirements. It tests a configuration to ensure known and predictable results. An example of system testing is the configuration oriented system integration test.

System testing is based on process descriptions and flows, emphasizing pre-driven process links and integration points. White Box Testing White Box Testing is a testing in which in which the software tester has knowledge of the inner workings, structure and language of the software, or at least its purpose. It is purpose. It is used to test areas that cannot be reached from a black box level. Black Box Testing Black Box Testing is testing the software without any knowledge of the inner workings, structure or language of the module being tested. Black box tests, as most other kinds of tests, must be written from a definitive source document, such as specification or requirements document, such as specification or requirements document. It is a testing in which the software under test is treated, as a black box .you cannot see into it. The test provides inputs and responds to outputs
without considering how the software works.

6.1 Unit Testing: Unit testing is usually conducted as part of a combined code and unit test phase of the software lifecycle, although it is not uncommon for coding and unit testing to be conducted as two distinct phases.

6.2 Integration Testing Software integration testing is the incremental integration testing of two or more integrated software components on a single platform to produce failures caused by interface defects. The task of the integration test is to check that components or software applications, e.g. components in a software system or one step up software applications at the company level interact without error. Test Results: All the test cases mentioned above passed successfully. No defects encountered. 6.3 Acceptance Testing User Acceptance Testing is a critical phase of any project and requires significant participation by the end user. It also ensures that the system meets the functional requirements. Test Results: All the test cases mentioned above passed successfully. No defects encountered.

CONCLUSION

The Student Attendance is developed using Visual Basic fully meets the objectives of the system which it has been developed. The system has reached a steady state where all bugs have been eliminated. The system is operated at a high level of efficiency and all the teachers and user associated with the system understands its advantage. The system solves the problem. It was intended to solve as requirement specification. The main advantage of this project is less time

consuming. The project is user friendly, where the end user may not have exposure to the system but able work without technical knowledge about the system.

BIBLIOGRAPHY

FUTURE ENCHANCEMENTS

The project is developed as a desktop application, and it will work for a particular institute. But later on the project can be modified to operate it online. We can implement this project for the whole college. We can also maintain the Faculty attendance. Such enhancements can continue to improve the quality of attendance.

ANNEXURE

10.1. SCREEN SHOTS

10.2.REPORTS:

Vous aimerez peut-être aussi