Upload
vinod-malik
View
216
Download
0
Embed Size (px)
Citation preview
8/8/2019 School Soft
1/60
SUBMITTED TOPUNJAB TECHNICAL UNIVERSITY, JALANDHAR
IN THE PARTIAL FULLFILLMENT OF THE REQUIREMENT FOR THE AWARDOF PGDCA (SEMESTER-II)
SUBMITTED TO: SUBMITTED BY:
1
PROJECT REPORT ON
SCHOOL MANAGEMENT SYSTEM
8/8/2019 School Soft
2/60
ACKNOWLEDGEMENT
We feel a great honor and dept of gratitude for the invaluable help and
guidance given to us by our revered teacher , Lecturer of the Computer
Depatment, GNE INFOTECH centre, in execution of this work
We wish to express sincere thanks to our instructor ..for his
willingness, valuable guidance, suggestions and advice which were
responsible for the successful completion of this study.
We also express our gratitude and appreciation for our parents, whose love,
inspiration and encouragement has made it possible for us to accomplish this
work.
Above all, we thank Almighty God for his blessings to complete this work.
2
8/8/2019 School Soft
3/60
CERTIFICATE
This is to certify that Pooja and Ranjit Kaur haveworked under my direct supervision and guidance on
the project titled School Management System. Thework done and data included in this project have beenundertaken by them and are genuine. The Candidatesthemselves have carried out the entire work in thisproject.
Submitted To: Submitted By:
3
8/8/2019 School Soft
4/60
DECLARATION
We hereby declare that work being submitted by
our entitled School Management System in
fulfillment of PGDCA Sem-II to the Department
of Computer Science, GNE INFOTECH, is an
authentic work carried by them in the Sem-II
4
8/8/2019 School Soft
5/60
INDEX
SERIAL
NO.
CHAPTER NAME
PAGE
NO.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
INTRODUCTION
INTRODUCTION TO PROJECT
INTRODUCTIONTO LANGUAGE
SYNOPSIS
SYSTEM STUDY AND ANALISYS
SYSTEM DESIGN
TABLES STRUCTURE
SYSTEM DEVELOPEMENT
CODING
SYSTEM IMPLEMENTATION AND
TESTING
SCREEN SHOTS
FUTURE DEVELOPMENT OF
PROJECT
BIBLIOGRAPHY
67
1011
15
19
22
26
46
5058
59
5
8/8/2019 School Soft
6/60
INTRODUCTION
School Management System is a comprehensive Desktop-based School
Management
Software. It is designed for better interaction between students, teachers,
parents & management. This management software very gracefully handles all the
requirements for easy school management.
SMS - School Management System is a large database system which
can be used for managing your school's day to day business. SMS
allows users to store almost all of their school's information
electronically, including information on students, employees,
properties, teaching materials etc. Most importantly, this information
can be easily shared with authorized users, records can be easily
searched, and reports can be easily generated. SMS is configurable and
can be configured to meet most individual school's needs. It is a multi-user
system and can be used by hundreds or even thousands users at same time.
6
8/8/2019 School Soft
7/60
Introduction to Language
Visual Basic: Visual Basic is a flexible, high level, structured
programming language.
Visual Basic includes certain low levelfeatures that are normally available only in
assembly or machine language.
Visual Basic is widely available,commercial interpreter are available for most
personal computer, mini computers and main
frames.
Visual Basic is largely machinedindependent. Programs written in visual basic
are easily ported from one computer to
another.
Your programs interface may include the
familiar controls that window users already
know how to operate-such as command
buttons, option list, text boxes and scroll bars.
7
8/8/2019 School Soft
8/60
With just a few mouse actions, youcan add any combination of these controls to a
program.
As a result design tasks that used torequire many hours of detailed programming
efforts can how be completed in minutes.
In Visual Basic you can quickly design thevisual elements of any new programming
project.
Visual basic includes a special helpers system
called a debugger that the programmer can
use to help locate bugs that appear during
testing. The debugger is an interactive
monitoring system that you turn on and off
inside Visual Basic that helps you locate
statements that may contain bugs.
Programming MaintenanceApart from the bugs, the programmer has to
maintain the program he /she has created.
Program Maintainance is a term used for the
8
8/8/2019 School Soft
9/60
updating of a program after the program after
the program is put into use. This updating may
be a result of the users request or a change in
the way the program needs to operate.
Project
A project is a collection of files that make up
your application. A single Application might
consist of several files and the projects is the
collection of those files.
Multiple Documents Interface (MDI)
It allows the application to contain multiple
documents windows. In effect, this interface
lets your work with several sets of data in
multiple window within the program. Eachdocument window is called a child window.
9
8/8/2019 School Soft
10/60
Single Document Interface (SDI)
It limits the application take on a window
Explorer- like interface with topic summaries in
the left window an details for a selected topic
in the right pane.
SYNOPSIS
AIM
In the existing system the records are done only manually but inproposed system we have to computerize all the School related information using thesoftware School Management system
They are:Administrative Module
ADMINISTRATIVE MODULE
This module is the main module which performs all the main operations inthe system. The major operations in the system are:
Admin login
Add/Delete/Update student
Add/Delete/Update Teacher
Searching Student information
Searching Teacher information
Report generation
Settings
10
8/8/2019 School Soft
11/60
8/8/2019 School Soft
12/60
EXISTING SYSTEMIn the existing system the transactions are done only manually but in proposed
system we have to computerize all the school transaction using the software financialmanagement system.
2. 1.1 PROBLEMS WITH EXISTING SYSTEM
Lack of security of data.
More man power.
Time consuming.
Consumes large volume of pare work.
Needs manual calculations.
No direct role for the higher officials.
Damage of machines due to lack of attention.
To avoid all these limitations and make the working more accurately the system needs to
be computerized.
PROPOSED SYSTEM
The aim of proposed system is to develop a system of improved facilities. Theproposed system can overcome all the limitations of the existing system. The systemprovides proper security and reduces the manual work.
2. 2. 1 ADVANTAGES OF THE PROPOSED SYSTEM
The system is very simple in design and to implement. The system requires very low
system resources and the system will work in almost all configurations. It has gotfollowing features
Security of data.
Ensure data accuracys.
Proper control of the higher officials.
Reduce the damages of the machines.
Minimize manual data entry.
Minimum time needed for the various processing.
Greater efficiency.
Better service. User friendliness and interactive.
Minimum time required.
2.3. FEASIBILITY STUDY
Feasibility study is made to see if the project on completion will serve the purpose ofthe organization for the amount of work, effort and the time that spend on it. Feasibility
12
8/8/2019 School Soft
13/60
study lets the developer foresee the future of the project and the usefulness. A feasibilitystudy of a system proposal is according to its workability, which is the impact on theorganization, ability to meet their user needs and effective use of resources. Thus when anew application is proposed it normally goes through a feasibility study before it isapproved for development.
The document provide the feasibility of the project that is being designed and lists
various areas that were considered very carefully during the feasibility study of thisproject such as Technical, Economic and Operational feasibilities. The following are itsfeatures:
2.3.1. TECHNICAL FEASIBILITY
The system must be evaluated from the technical point of view first. The assessmentof this feasibility must be based on an outline design of the system requirement in theterms of input, output, programs and procedures. Having identified an outline system, theinvestigation must go on to suggest the type of equipment, required method developingthe system, of running the system once it has been designed.
Technical issues raised during the investigation are:
Does the existing technology sufficient for the suggested one?Can the system expand if developed?
The project should be developed such that the necessary functions and performanceare achieved within the constraints. The project is developed within latest technology.Through the technology may become obsolete after some period of time, due to the factthat never version of same software supports older versions, the system may still be used.So there are minimal constraints involved with this project. The system has beendeveloped using Java the project is technically feasible for development.
2.3.2. ECONOMIC FEASIBILITY
The developing system must be justified by cost and benefit. Criteria to ensure thateffort is concentrated on project, which will give best, return at the earliest. One of thefactors, which affect the development of a new system, is the cost it would require.
The following are some of the important financial questions asked during preliminaryinvestigation:
The costs conduct a full system investigation.
13
8/8/2019 School Soft
14/60
The cost of the hardware and software.
The benefits in the form of reduced costs or fewer costly errors.
Since the system is developed as part of project work, there is no manual cost to spendfor the proposed system. Also all the resources are already available, it give an indicationof the system is economically possible for development.
2.3.3. BEHAVIORAL FEASIBILITY
This includes the following questions:
Is there sufficient support for the users?
Will the proposed system cause harm?
The project would be beneficial because it satisfies the objectives when developed andinstalled. All behavioral aspects are considered carefully and conclude that the project isbehaviorally feasible.
SYSTEM DESIGN
3.1 INTRODUCTION
Design is the first step into the development phase for any engineered product orsystem. Design is a creative process. A good design is the key to effective system. Theterm design is defined as the process of applying various techniques and principles forthe purpose of defining a process or a system in sufficient detail to permit its physicalrealization. It may be defined as a process of applying various techniques and principlesfor the purpose of defining a device, a process or a system in sufficient detail to permit its physical realization. Software design sits at the technical kernel of the software
engineering process and is applied regardless of the development paradigm that is used.The system design develops the architectural detail required to build a system or product.As in the case of any systematic approach, this software too has undergone the bestpossible design phase fine tuning all efficiency, performance and accuracy levels. Thedesign phase is a transition from a user oriented document to a document to the programmers or database personnel. System design goes through two phases ofdevelopment: Logical and Physical Design.
LOGICAL DESIGN:
The logical flow of a system and define the boundaries of a system. It includes thefollowing steps:
Reviews the current physical system its data flows, file content, volumes ,frequencies etc.
Prepares output specifications that is, determines the format, content andfrequency of reports.
Prepares input specifications format, content and most of the input functions.
Prepares edit, security and control specifications.
Specifies the implementation plan.
14
8/8/2019 School Soft
15/60
Prepares a logical design walk through of the information flow, output, input,controls and implementation plan.
Reviews benefits, costs, target dates and system constraints.
PHYSICAL DESIGN:
Physical system produces the working systems by define the design specifications thattell the programmers exactly what the candidate system must do. It includes the
following steps. Design the physical system.
Specify input and output media.
Design the database and specify backup procedures.
Design physical information flow through the system and a physical design Walkthrough.
Plan system implementation.
Prepare a conversion schedule and target date.
Determine training procedures, courses and timetable.
Devise a test and implementation plan and specify any new hardware/software.
Update benefits , costs , conversion date and system constraints
Design/Specification activities:
Concept formulation.
Problem understanding.
High level requirements proposals.
Feasibility study.
Requirements engineering.
Architectural design.
MODULE DESIGN
Admin
The Administrator logs in using the admin login. In this administrator has thefull authority over the software. In this System ,the administrator has the power to add orupdate or delete all the details.
User
The User logs in using the User login. In this module the user can successfullyenter into the software if it is a authenticated user.
INPUT DESIGN
15
8/8/2019 School Soft
16/60
The design of input focuses on controlling the amount of input required, controllingthe errors, avoiding delay, avoiding extra steps and keeping the process simple. The inputis designed in such a way so that it provides security and ease of use with retaining theprivacy. Input Design considered the following things:
o What data should be given as input?
o How the data should be arranged or coded?
o The dialog to guide the operating personnel in providing input.o Methods for preparing input validations and steps to follow when error
occur.
OBJECTIVES
Input Design is the process of converting a user-oriented description of the input into acomputer-based system. This design is important to avoid errors in the data input processand show the correct direction to the management for getting correct information fromthe computerized system.
It is achieved by creating user-friendly screens for the data entry to handle large volumeof data. The goal of designing input is to make data entry easier and to be free fromerrors. The data entry screen is designed in such a way that all the data manipulates canbe performed. It also provides record viewing facilities.When the data is entered it will check for its validity. Data can be entered with the helpof screens. Appropriate messages are provided as when needed so that the user will notbe in a maize of instant. Thus the objective of input design is to create an input layoutthat is easy to follow
OUTPUT DESIGN
A quality output is one, which meets the requirements of the end user and presents theinformation clearly. In output design it is determined how the information is to bedisplaced for immediate need and also the hard copy output. It is the most important anddirect source information to the user. Efficient and intelligent output design improves thesystems relationship to help user decision-making.
Designing computer output should proceed in an organized, well thought out manner;the right output must be developed while ensuring that each output element is designedso that people will find the system can use easily and effectively. When analysis designcomputer output, they should :
Identify the specific output that is needed to meet the requirements. Select methods for presenting information.
Create document, report, or other formats that contain information produced bythe system.
3.3 DATABASE DESIGN
16
8/8/2019 School Soft
17/60
A database is an organized mechanism that has the capability of storing informationthrough which a user can retrieve stored information in an effective and efficient manner.The data is the purpose of any database and must be protected.
The database design is a two level process. In the first step, user requirements aregathered together and a database is designed which will meet these requirements asclearly as possible. This step is called Information Level Design and it is taken
independent of any individual DBMS.
In the second step, this Information level design is transferred into a design for thespecific DBMS that will be used to implement the system in question. This step is calledPhysical Level Design, concerned with the characteristics of the specific DBMS that willbe used. A database design runs parallel with the system design. The organization of thedata in the database is aimed to achieve the following two major objectives.
Data Integrity
Data independence
Normalization is the process of decomposing the attributes in an application, which
results in a set of tables with very simple structure. The purpose of normalization is tomake tables as simple as possible. Normalization is carried out in this system for thefollowing reasons.
To structure the data so that there is no repetition of data , this helps in saving.
To permit simple retrieval of data in response to query and report request.
To simplify the maintenance of the data through updates, insertions, deletions.
To reduce the need to restructure or reorganize data which new applicationrequirements arise.
RELATIONAL DATABASE MANAGEMENT SYSTEM (RDBMS):
A relational model represents the database as a collection of relations. Each relationresembles a table of values or file of records. In formal relational model terminology, arow is called a tuple, a column header is called an attribute and the table is called arelation. A relational database consists of a collection of tables, each of which is assigneda unique name. A row in a tale represents a set of related values.
RELATIONS, DOMAINS & ATTRIBUTES:
A table is a relation. The rows in a table are called tuples. A tuple is an ordered set of
n elements. Columns are referred to as attributes. Relationships have been set betweenevery table in the database. This ensures both Referential and Entity RelationshipIntegrity. A domain D is a set of atomic values. A common method of specifying adomain is to specify a data type from which the data values forming the domain aredrawn. It is also useful to specify a name for the domain to help in interpreting its values.Every value in a relation is atomic, that is not decomposable.
RELATIONSHIPS:
17
8/8/2019 School Soft
18/60
Table relationships are established using Key. The two main keys of primeimportance are Primary Key & Foreign Key. Entity Integrity and Referential IntegrityRelationships can be established with these keys.Entity Integrity enforces that no PrimaryKey can have null values.Referential Integrity enforces that no Primary Key can havenull values.Referential Integrity for each distinct Foreign Key value, there must exist a matching
Primary Key value in the same domain. Other key are Super Key and Candidate Keys.Relationships have been set between every table in the database. This ensures bothReferential and Entity Relationship Integrity.
NORMALIZATION:
As the name implies, it denoted putting things in the normal form. The applicationdeveloper via normalization tries to achieve a sensible organization of data into propertables and columns and where names can be easily correlated to the data by the user.Normalization eliminates repeating groups at data and thereby avoids data redundancy
which proves to be a great burden on the computer resources. These includes:
Normalize the data.
Choose proper names for the tables and columns.
Choose the proper name for the data.
First Normal Form:
The First Normal Form states that the domain of an attribute must include only atomicvalues and that the value of any attribute in a tuple must be a single value from thedomain of that attribute. In other words 1NF disallows relations within relations or
relations as attribute values within tuples. The only attribute values permitted by 1NFare single atomic or indivisible values.
The first step is to put the data into First Normal Form. This can be donor by movingdata into separate tables where the data is of similar type in each table. Each table isgiven a Primary Key or Foreign Key as per requirement of the project. In this we formnew relations for each nonatomic attribute or nested relation. This eliminated repeatinggroups of data.
A relation is said to be in first normal form if only if it satisfies the constraints thatcontain the primary key only.
Second Normal Form:
According to Second Normal Form, For relations where primary key containsmultiple attributes, no nonkey attribute should be functionally dependent on a part of theprimary key.
18
8/8/2019 School Soft
19/60
8/8/2019 School Soft
20/60
8/8/2019 School Soft
21/60
Table: TeacherPrimary Key: Personcode
Field Data
Type
Constraints Descrip
Personcode Text Primary key
Personname Text
Sex Text
Dob Date\time
Address Text
Phoneno Text
Appointment-as Text Permanent/temporary/adhoc/honorary/part timeCategory Text Whether/belong to o.g./sc/st/obc/ex-sericeman/others
Doj Date\time
Payscale Text
Dept-no Text
Job-type Text
Snap-path Text
Fname Text
Mname Text
Oual Text
YOP Date\time
Percentage TextRemarks Text
Uni Text Board/university
Appointment-as1 Text
Organization Text Where appointed
Date-of-joining Text Date of joining
Experience Text In year and months
21
8/8/2019 School Soft
22/60
Areafiat Text
SYSTEM DEVELOPEMENT
SYSTEM SPECIFICATION
HARDWARE REQUIREMENTS
Processor : X86 Compatible processor with 1.7 GHz Clock speed
RAM : 512 MB or more
Hard disk : 20 GB or more
Monitor : VGA/SVGA
Keyboard : 104 Keys
Mouse : 2 buttons/ 3 buttons
SOFTWARE REQUIREMENTS
Operating System : Windows 2000/XPFront end : Visual Basic 6.0Back end : MS Access
SOFTWARE ENVIRONMENT
The Control Properties
22
8/8/2019 School Soft
23/60
Before writing an event procedure for the control to response to a user's input, you haveto set certain properties for the control to determine its appearance and how it will workwith the event procedure. You can set the properties of the controls in the propertieswindow or at runtime.Handling some of the common controls
1 The Text BoxThe text box is the standard control for accepting input from the user as well as to displaythe output. It can handle string (text) and numeric data but not images or pictures. Stringin a text box can be converted to a numeric data by using the function Val(text). Thefollowing example illustrates a simple program that processes the input from the user.Example 3.1
In this program, two text boxes are inserted into the form together with a few labels. Thetwo text boxes are used to accept inputs from the user and one of the labels will be usedto display the sum of two numbers that are entered into the two text boxes. Besides, acommand button is also programmed to calculate the sum of the two numbers using theplus operator. The program use creates a variable sum to accept the summation of values
from text box 1 and text box 2.The procedure to calculate and to display the output on thelabel is shown below. The output is shown in Figure 3.2Private Sub Command1_Click()To add the values in text box 1 and text box 2Sum = Val(Text1.Text) + Val(Text2.Text)To display the answer on label 1Label1.Caption = SumEnd Sub
Figure 3.2
3.2.2 The Label
The label is a very useful control for Visual Basic, as it is not only used to provideinstructions and guides to the users, it can also be used to display outputs. One of its mostimportant properties is Caption. Using the syntax label.Caption, it can display text and
23
8/8/2019 School Soft
24/60
numeric data . You can change its caption in the properties window and also at runtime.Please refer to Example 3.1 and Figure 3.1 for the usage of label.
3.2.3 The Command ButtonThe command button is one of the most important controls as it is used to executecommands. It displays an illusion that the button is pressed when the user click on it. The
most common event associated with the command button is the Click event, and thesyntax for the procedure isPrivate Sub Command1_Click ()StatementsEnd Sub
3.2.4 The Picture Box
The Picture Box is one of the controls that is used to handle graphics. You can load apicture at design phase by clicking on the picture item in the properties window andselect the picture from the selected folder. You can also load the picture at runtime using
the LoadPicture method. For example, the statement will load the picture grape.gif intothe picture box.Picture1.Picture=LoadPicture ("C:\VB program\Images\grape.gif")You will learn more about the picture box in future lessons. The image in the picture boxis not resizable.
3.2.5 The Image Box
The Image Box is another control that handles images and pictures. It functions almostidentically to the picture box. However, there is one major difference, the image in an
Image Box is stretchable, which means it can be resized. This feature is not available inthe Picture Box. Similar to the Picture Box, it can also use the LoadPicture method toload the picture. For example, the statement loads the picture grape.gif into the imagebox.Image1.Picture=LoadPicture ("C:\VB program\Images\grape.gif")
3.2.6 The List BoxThe function of the List Box is to present a list of items where the user can click andselect the items from the list. In order to add items to the list, we can use the AddItemmethod. For example, if you wish to add a number of items to list box 1, you can key inthe following statements
Example 3.2Private Sub Form_Load ( )List1.AddItem Lesson1List1.AddItem Lesson2List1.AddItem Lesson3List1.AddItem Lesson4
24
8/8/2019 School Soft
25/60
End SubThe items in the list box can be identified by the ListIndex property, the value of theListIndex for the first item is 0, the second item has a ListIndex 1, and the second itemhas a ListIndex 2 and so on
3.2.7 The Combo Box
The function of the Combo Box is also to present a list of items where the user can clickand select the items from the list. However, the user needs to click on the smallarrowhead on the right of the combo box to see the items which are presented in a drop-down list. In order to add items to the list, you can also use the AddItem method. Forexample, if you wish to add a number of items to Combo box 1, you can key in thefollowing statementsExample 3.3
Private Sub Form_Load ( )Combo1.AddItem Item1Combo1.AddItem Item2Combo1.AddItem Item3
Combo1.AddItem Item4End Sub
3.2.8 The Check Box
The Check Box control lets the user selects or unselects an option. When the Check Boxis checked, its value is set to 1 and when it is unchecked, the value is set to 0. You caninclude the statements Check1.Value=1 to mark the Check Box and Check1.Value=0 tounmark the Check Box, as well as use them to initiate certain actions. For example, theprogram will change the background color of the form to red when the check box is
unchecked and it will change to blue when the check box is checked. You will learnabout the conditional statement If.Then.Elesif in later lesson. VbRed and vbBlue arecolor constants and BackColor is the background color property of the form.
3.2.9 The Option Box
The Option Box control also lets the user selects one of the choices. However, two ormore Option Boxes must work together because as one of the Option Boxes is selected,the other Option Boxes will be unselected. In fact, only one Option Box can be selectedat one time. When an option box is selected, its value is set to True and when it isunselected; its value is set to False. In the following example, the shape control is
placed in the form together with six Option Boxes. When the user clicks on differentoption boxes, different shapes will appear. The values of the shape control are 0, 1, and2,3,4,5 which will make it appear as a rectangle, a square, an oval shape, a roundedrectangle and a rounded square respectively.Example 3.4
Private Sub Option1_Click ( )Shape1.Shape = 0End Sub
25
8/8/2019 School Soft
26/60
Private Sub Option2_Click()Shape1.Shape = 1End SubPrivate Sub Option3_Click()Shape1.Shape = 2End SubPrivate Sub Option4_Click()
Shape1.Shape = 3End SubPrivate Sub Option5_Click()Shape1.Shape = 4End SubPrivate Sub Option6_Click()Shape1.Shape = 5End Sub
3.2.10 The Drive List Box
The Drive ListBox is for displaying a list of drives available in your computer. When youplace this control into the form and run the program, you will be able to select differentdrives from your computer as shown in Figure 3.3
3.2.11 The Directory List Box
The Directory List Box is for displaying the list of directories or folders in a selected
drive. When you place this control into the form and run the program, you will be able toselect different directories from a selected drive in your computer as shown in Figure 3.4
3.2.12 The File List Box
The File List Box is for displaying the list of files in a selected directory or folder. Whenyou place this control into the form and run the program, you will be able to shown thelist of files in a selected directory as shown in Figure 3.5You can coordinate the Drive List Box, the Directory List Box and the File List Box tosearch for the files you want. The procedure will be discussed in later lessons.
26
8/8/2019 School Soft
27/60
CODING
Login Form CodingOption ExplicitDim adocon As ADODB.ConnectionDim adorec As ADODB.RecordsetDim adoconstr As StringDim user As StringDim passw As String
Private Sub Command2_Click()user = UCase(Trim(Text1.Text))passw = Trim(Text2.Text)
adorec.Open "select * from login where uname='" & user & "' and pass='" & passw & "'and utype 'A' ", adocon, adOpenDynamic, adLockOptimistic, adCmdTextIf (adorec.BOF = True And adorec.EOF = True) Then
MsgBox ("Login denied")Text1.Text = ""Text2.Text = ""
Text1.SetFocusadorec.CloseExit Sub
Elsegutype = adorec.Fields("utype").Valueadorec.CloseText1.Text = ""Text2.Text = ""
27
8/8/2019 School Soft
28/60
frmmenu1.Show
End If
End Sub
Private Sub Form_Load()
Call connect
End SubPrivate Sub Command1_Click()Dim LOGIN As New ADODB.Recordset
If LOGIN.State = adStateOpen Then LOGIN.CloseLOGIN.Open "select * from login", con, adOpenKeyset, adLockBatchOptimistic
'LOGIN.Open
LOGIN.MoveFirstWhile Not (LOGIN.Fields(0).Value = UCase$(Text1.Text) And LOGIN.Fields(1).Value= UCase$(Text2.Text))
LOGIN.MoveNextIf LOGIN.EOF = True Then
GoTo AALOGIN.MoveFirst
End IfWend
frmSplash.Show
Me.HideExit Sub
AA:MsgBox ("Access Denied"), vbOKOnly, "Error"Text1.Text = ""Text2.Text = ""Text1.SetFocus
End Sub
Private Sub Command3_Click()Unload MeEnd Sub
28
8/8/2019 School Soft
29/60
Student Form CodingOption ExplicitDim i As IntegerDim adocon As New ADODB.ConnectionDim adorec As New ADODB.RecordsetDim rs As New ADODB.RecordsetDim adostr As StringDim resp As Variant
Private Sub Command1_Click()
If rs.State = adStateOpen Then rs.Closers.Open "select * from student", con, adOpenKeyset, adLockBatchOptimisticrs.AddNewWith rs
.Fields("formno") = Trim(UCase(Text0(3).Text))
.Fields("sex") = Combo3.Text
.Fields("cate") = Combo4.Text
.Fields("class") = Text0(2).Text
.Fields("sbtake") = Text0(0).Text
.Fields("Medium") = Combo2.Text
.Fields("name") = Text0(6).Text
.Fields("miguni") = Text0(10).Text
.Fields("migyear") = Text0(43).Text.Fields("migclass") = Text0(11).Text'.Fields("code10") = subject(9)'.Fields("code11") = subject(10)'.Fields("code12") = subject(11)'.Fields("code13") = subject(12)'.Fields("code14") = subject(13)'.Fields("code15") = subject(14)'.Fields("code16") = subject(15).Fields("rollno") = Text0(42).Text.Fields("fname") = Trim(UCase(Text0(7).Text))
29
8/8/2019 School Soft
30/60
.Fields("mname") = Trim(UCase(Text0(8).Text)).Fields("dob") = Trim(Format(Text0(9).Text, "dd-mmm-yy")).Fields("foccup") = Trim(UCase(Text0(12).Text)).Fields("regdno") = Trim(UCase(Text0(5).Text))
' .Fields("preuniv") = Trim(UCase(Text0(43).Text))' .Fields("games") = Trim(UCase(Text0(12).Text))
.Fields("cclass") = Text0(47).Text
.Fields("cyear") = Text0(46).Text.Fields("bs") = Combo1.Text
.Fields("bsclass") = Trim(UCase(Text0(1).Text))
.Fields("bsrno") = Trim(UCase(Text0(4).Text))
.Fields("lastyr") = Trim(UCase(Text0(13).Text))
.Fields("lclass") = Trim(UCase(Text0(14).Text))
.Fields("luniv") = Trim(UCase(Text0(15).Text))
.Fields("lrno") = Trim(UCase(Text0(16).Text))
.Fields("flresult") = Trim(UCase(Text0(17).Text))
.Fields("marks") = Trim(UCase(Text0(45).Text))
.Fields("marksobt") = Trim(UCase(Text0(18).Text))
.Fields("percent") = Round(Text1.Text, 2).Fields("lsub") = Trim(UCase(Text0(19).Text)).Fields("linst") = Trim(UCase(Text0(20).Text)).Fields("remarks") = Trim(UCase(Text0(44).Text)).Fields("add1") = Trim(UCase(Text0(21).Text)).Fields("add2") = Trim(UCase(Text0(22).Text))
.Fields("pincode") = Text0(23).Text & Text0(24).Text & Text0(25).Text &Text0(26).Text & Text0(27).Text & Text0(28).Text
.Fields("phcode") = Text0(29).Text
.Fields("phno") = Text0(30).Text
.Fields("cadd1") = Text0(32).Text
.Fields("cadd2") = Text0(33).Text.Fields("cpincode") = Text0(34).Text & Text0(35).Text & Text0(36).Text &
Text0(37).Text & Text0(38).Text & Text0(39).Text.Fields("cphcode") = Text0(40).Text.Fields("cphno") = Text0(41).Text.Fields("email") = Text0(31).Text.UpdateBatch adAffectAllChaptersMsgBox "records are saved", vbInformation
End Withrs.Close
Command1.Enabled = False
GoTo localend:
localerr:
30
8/8/2019 School Soft
31/60
MsgBox "Either " & Err.Description & " or data is incomplete for some record."localend:End Sub
Private Sub Command2_Click()
Text0(1).Text = ""Text0(3).Text = ""Text0(4).Text = ""For i = 0 To 47
Text0(i).Text = ""NextText0(43).Text = ""Text0(44).Text = ""Text0(42).SetFocusCommand1.Enabled = True
End Sub
Private Sub Command3_Click()Command1.Enabled = TrueUnload Mefrmmenu1.Show
End Sub
Private Sub Command4_Click()On Error GoTo localerr
For i = 0 To 49If (Text0(i).Text = "") Then
Text0(i).Text = "EMPTY"End If
NextIf Not IsDate(Text0(9).Text) Then
MsgBox "Fill only correct Date Of Birth "Text0(9).SetFocusExit Sub
End If
Text0(47).Text = "EMPTY"Text0(48).Text = "EMPTY"GoTo localend:
localerr:
31
8/8/2019 School Soft
32/60
8/8/2019 School Soft
33/60
If (resp = vbYes) ThenFor i = 21 To 30
Text0(i + 11).Text = Text0(i).TextNext
ElseFor i = 32 To 41
Text0(i).Text = ""
NextEnd IfEnd IfEnd Sub
Public Sub revert()Text0(3).Text = 0Text0(4).Text = 0Text0(16).Text = 0For i = 23 To 30
Text0(i).Text = 0NextFor i = 34 To 41
Text0(i).Text = 0NextEnd Sub
Private Sub Text0_KeyPress(Index As Integer, KeyAscii As Integer)'If KeyAscii = 13 Then
' SendKeys "{tab}"'End IfEnd Sub
Private Sub Text1_Click()
Text1.Text = (Val(Text0(18).Text) / Val(Text0(45).Text)) * 100Text1.Text = Round(Text1.Text, 2)Text1.Enabled = FalseEnd Sub
33
8/8/2019 School Soft
34/60
Teacher Form Coding
Dim i As Integer
Dim ch As String
Dim rs As New ADODB.RecordsetDim rs1 As New ADODB.RecordsetDim RS2 As New ADODB.Recordset
Dim strPicPath As StringOption ExplicitPrivate Sub CLEAR()For i = 0 To 13Text0(i).Text = ""
Next
Text17.Text = ""Text13.Text = ""
End Sub
Private Sub cmdSnap_Click()CDSNAP.DialogTitle = "Please Select Snap Path"
34
8/8/2019 School Soft
35/60
CDSNAP.Filter = "*.jpg"CDSNAP.ShowOpenstrPicPath = CDSNAP.FileNameIMGSNAP = LoadPicture(strPicPath)snap.Text = strPicPathIMGSNAP.Visible = TrueEnd Sub
Public Function empt()End Sub
Private Sub Command2_Click()CLEAREnd Sub
Private Sub Command3_Click()
Unload Mefrmmenu1.Show
End Sub
Private Sub Command1_Click()On Error GoTo localerr
For i = 0 To 16If (Text0(i).Text = "") Then
Text0(i).Text = "EMPTY"
End IfNextGoTo localend:
localerr:
MsgBox "Either " & Err.Description & " or data is incomplete for some record."localend:SSTab1.Tab = 1
End Sub
Private Sub Command4_Click()
35
8/8/2019 School Soft
36/60
IMGSNAP.Visible = FalseEnd Sub
Private Sub Command5_Click()CLEAREnd Sub
Private Sub Command51_Click()Dim resp As IntegerDim resp1 As Integer
On Error GoTo localerr
For i = 0 To 6If (Text0(i).Text = "EMPTY") Then
resp = MsgBox("Are you sure you want to fill empty record?", vbCritical +vbYesNo)
If (resp = vbYes) ThenSSTab1.Tab = 0Text0(i).SetFocus
Exit SubElseGoTo p:
End If
End IfNextp:
For i = 7 To 10If (Text0(i).Text = "EMPTY") Then
resp1 = MsgBox("Are you sure you want to fill the record?", vbCritical +vbYesNo)
If (resp1 = vbYes) Then
SSTab1.Tab = 1Text0(i).SetFocus
Exit SubElse
36
8/8/2019 School Soft
37/60
GoTo l:End IfEnd If
Next
l:
GoTo localend:
localerr:MsgBox "Either " & Err.Description & " or data is incomplete for some record."localend:SSTab1.Tab = 1
End Sub
Private Sub Command6_Click()If rs.State = adStateOpen Then rs.Close
rs.Open "select * from TEACHINFM where PERSON_CODE='" & Text0(0).Text& "' ", con, adOpenKeyset, adLockBatchOptimisticIf rs.EOF = False And rs.BOF = False ThenMsgBox "RECORD ALREADY EXISTS", vbExclamationElse
rs.AddNew
rs.Fields("PERSON_CODE") = Trim(Text0(0).Text)rs.Fields("FNAME") = Trim(UCase(Text0(2).Text))rs.Fields("MNAME") = Trim(UCase(Text0(3).Text))rs.Fields("DEPT_NO") = Combo5.Textrs.Fields("PERSON_NAME") = Trim(UCase(Text0(1).Text))rs.Fields("DOB") = DTPicker4.Valuers.Fields("SEX") = Combo1.Textrs.Fields("ADDRESS") = Trim(UCase(Text0(4).Text))rs.Fields("PHONE_NO") = Text0(5).Text
rs.Fields("APPOINTMENT_as") = Combo2.Textrs.Fields("CATEGORY") = Combo4.Textrs.Fields("DOJ") = DTPicker1.Valuers.Fields("PAY_SCALE") = Text0(6).Textrs.Fields("JOB_TYPE") = chrs.Fields("snap_path") = snap.Textrs.Fields("QUAL") = Trim(UCase(Text0(7).Text))rs.Fields("YOP") = DTPicker2.Value
37
8/8/2019 School Soft
38/60
8/8/2019 School Soft
39/60
8/8/2019 School Soft
40/60
Private Sub Text13_GotFocus()Text13.Text = Text0(0).Text
End Sub
Private Sub Text17_GotFocus()
Text17.Text = Text0(0).TextEnd Sub
Teacher Search Information Form
Dim lis As ListItemDim rs As New ADODB.Recordset
Private Sub Command1_Click()If rs.State = adStateOpen Then rs.Closers.Open "select * from TEACHINFM where PERSON_CODE='" & Text1.Text &"' ", con, adOpenKeyset, adLockBatchOptimistic
lv.ListItems.CLEARIf (rs.BOF = True And rs.EOF = True) Then
MsgBox "No Record is there."
rs.CloseExit Sub
End If
Do While Not rs.EOFSet lis = lv.ListItems.Add(, , rs.Fields("PERSON_CODE").Value)With lis
40
8/8/2019 School Soft
41/60
.SubItems(1) = rs.Fields("PERSON_NAME").Value
.SubItems(2) = rs.Fields("SEX").Value
.SubItems(4) = rs.Fields("ADDRESS").Value
.SubItems(5) = rs.Fields("PHONE_NO").ValueEnd With
rs.MoveNext
Looprs.Close
End Sub
Private Sub Command2_Click()If rs.State = adStateOpen Then rs.Closers.Open "select * from TEACHINFM ", con, adOpenKeyset,adLockBatchOptimistic
lv.ListItems.CLEAR
If (rs.BOF = True And rs.EOF = True) ThenMsgBox "No Record is there."rs.CloseExit Sub
End If
Do While Not rs.EOFSet lis = lv.ListItems.Add(, , rs.Fields("PERSON_CODE").Value)With lis
.SubItems(1) = rs.Fields("PERSON_NAME").Value
.SubItems(2) = rs.Fields("SEX").Value
.SubItems(3) = rs.Fields("FNAME").Value
.SubItems(4) = rs.Fields("DOB").Value
.SubItems(5) = rs.Fields("DEPT_NO").Value.SubItems(6) = rs.Fields("CATEGORY")
.SubItems(7) = rs.Fields("ADDRESS").SubItems(8) = rs.Fields("PHONE_NO").SubItems(9) = rs.Fields("APPOINTMENT_AS").SubItems(10) = rs.Fields("DOJ")
.SubItems(11) = rs.Fields("PAY_SCALE").SubItems(12) = rs.Fields("QUAL").SubItems(13) = rs.Fields("YOP").SubItems(14) = rs.Fields("PERCENTAGE").SubItems(15) = rs.Fields("UNI").SubItems(16) = rs.Fields("DATE_OF_JOINING").SubItems(17) = rs.Fields("EXEPERIENCE")
41
8/8/2019 School Soft
42/60
.SubItems(18) = rs.Fields("Appointment_as1")
.SubItems(19) = rs.Fields("Organisation")
End With
rs.MoveNext
Looprs.Close
End Sub
Private Sub Command3_Click()Unload Mefrmmenu1.Show
End Sub
Private Sub Form_Load()Call connect
Set rs = New ADODB.Recordset
End Sub
Student Search Form Coding
Private Sub Command1_Click()
Dim rs As New ADODB.Recordset
If rs.State = adStateOpen Then rs.Closers.Open "select * from STUDENT where ROLLNO='" &Text0(42).Text & "' ", con, adOpenKeyset,adLockBatchOptimistic
If rs.EOF = True Or rs.BOF = True ThenMsgBox "RECORD NOT found for this person code",vbExclamation, "COLLEGE MGT"ElseWith rs
Text0(3).Text = .Fields("formno")
42
8/8/2019 School Soft
43/60
Combo3.Text = .Fields("sex")Combo4.Text = .Fields("cate")Text0(6).Text = .Fields("NAME")
Text0(2).Text = .Fields("class")
Text0(0).Text = .Fields("sbtake")
Combo2.Text = .Fields("Medium")
.Fields("name") = Text0(6).TextText0(48).Text = .Fields("cclass")
Text0(47).Text = .Fields("cyear")Text0(10).Text = .Fields("miguni")
Text0(43).Text = .Fields("migyear")Text0(11).Text = .Fields("migclass")'.Fields("code10") = subject(9)'.Fields("code11") = subject(10)'.Fields("code12") = subject(11)'.Fields("code13") = subject(12)'.Fields("code14") = subject(13)'.Fields("code15") = subject(14)
'.Fields("code16") = subject(15)Text0(42).Text = .Fields("rollno")Text0(7).Text = .Fields("fname")Text0(8).Text = .Fields("mname")Text0(9).Text = .Fields("dob")Text0(12).Text = .Fields("foccup")Text0(5).Text = .Fields("regdno")
' .Fields("preuniv") = ))Trim(UCase(Text0(43).Text))
' .Fields("games") = Trim(UCase(Text0(12).Text))
Combo1.Text = .Fields("bs").Value
43
8/8/2019 School Soft
44/60
Text0(1).Text = .Fields("bsclass").ValueText0(4).Text = .Fields("bsrno").ValueText0(13).Text = .Fields("lastyr").ValueText0(14).Text = .Fields("lclass").ValueText0(15).Text = .Fields("luniv").Value
Text0(16).Text = .Fields("lrno").ValueText0(17).Text = .Fields("flresult").ValueText0(18).Text = .Fields("marksobt").ValueText0(45).Text = .Fields("marks").ValueText0(46).Text = .Fields("percent").ValueText0(19).Text = .Fields("lsub").ValueText0(20).Text = .Fields("linst").ValueText0(44).Text = .Fields("remarks").Value
Text0(21).Text = .Fields("add1").ValueText0(22).Text = .Fields("add2").Valuepincode = .Fields("pincode").Valueface = 28Do While (pincode > 0)
Text0(face).Text = pincode Mod 10face = face - 1pincode = Int(pincode / 10)
LoopText0(29).Text = .Fields("phcode").ValueText0(30).Text = .Fields("phno").ValueText0(32).Text = .Fields("cadd1").ValueText0(33).Text = .Fields("cadd2").Valueface = 39pincode = .Fields("cpincode").Value
Do While (pincode > 0)Text0(face).Text = pincode Mod 10face = face - 1pincode = Int(pincode / 10)
LoopText0(40).Text = .Fields("cphcode").Value
44
8/8/2019 School Soft
45/60
Text0(41).Text = .Fields("cphno").ValueText0(31).Text = .Fields("email").Value
.UpdateBatch adAffectAllChaptersMsgBox "records are saved", vbInformation
End Withrs.CloseEnd If
Command1.Enabled = False'Command2.Enabled = False
GoTo localend:
localerr:MsgBox "Either " & Err.Description & " or data is incomplete forsome record."localend:
End Sub
Private Sub Command2_Click()
Text0(1).Text = ""Text0(3).Text = ""Text0(4).Text = ""For i = 0 To 48
Text0(i).Text = ""
NextText0(43).Text = ""Text0(44).Text = ""
Command1.Enabled = True
45
8/8/2019 School Soft
46/60
End Sub
Private Sub Command3_Click()Unload Mefrmmenu1.Show
End Sub
Private Sub Form_Load()Call connect
End Sub
SYSTEM IMPLEMENTATION AND TESTING
Implementation is the stage of the project where the theoretical design is turned into a
working system. It can be considered to be the most crucial stage in achieving asuccessful new system gaining the users confidence that the new system will work andwill be effective and accurate. It is primarily concerned with user training anddocumentation. Conversion usually takes place about the same time the user is beingtrained or later. Implementation simply means convening a new system design intooperation, which is the process of converting a new revised system design into anoperational one.
. SYSTEM TESTING
Software Testing is the process of executing software in a controlled manner, in orderto answer the question - Does the software behave as specified?. Software testing is often
used in association with the terms verification and validation. Validation is the checkingor testing of items, includes software, for conformance and consistency with anassociated specification. Software testing is just one kind of verification, which also usestechniques such as reviews, analysis, inspections, and walkthroughs. Validation is theprocess of checking that what has been specified is what the user actually wanted.
Validation : Are we doing the right job?Verification : Are we doing the job right?
46
8/8/2019 School Soft
47/60
Software testing should not be confused with debugging. Debugging is the process ofanalyzing and localizing bugs when software does not behave as expected. Although theidentification of some bugs will be obvious from playing with the software, a methodicalapproach to software testing is a much more thorough means for identifying bugs.Debugging is therefore an activity which supports testing, but cannot replace testing.Other activities which are often associated with software testing are static analysis and
dynamic analysis. Static analysis investigates the source code of software, looking forproblems and gathering metrics without actually executing the code. Dynamic analysis
looks at the behavior of software while it is executing, to provide information such asexecution traces, timing profiles, and test coverage information.
Testing is a set of activity that can be planned in advanced and conductedsystematically. Testing begins at the module level and work towards the integration ofentire computers based system. Nothing is complete without testing, as it vital success ofthe system testing objectives, there are several rules that can serve as testing objectives.They are
Testing is a process of executing a program with the intend of finding an error.A goodtest case is one that has high possibility of finding an undiscovered error.A successful testis one that uncovers an undiscovered error.
If a testing is conducted successfully according to the objectives as stated above, itwould uncovered errors in the software also testing demonstrate that the softwarefunction appear to be working according to the specification, that performancerequirement appear to have been met.There are three ways to test program.
For correctness For implementation efficiency
For computational complexity
Test for correctness are supposed to verify that a program does exactly what it wasdesigned to do. This is much more difficult than it may at first appear, especially forlarge programs.
TEST PLAN
A test plan implies a series of desired course of action to be followed inaccomplishing various testing methods. The Test Plan acts as a blue print for the actionthat is to be followed. The software engineers create a computer program, itsdocumentation and related data structures. The software developers is always responsiblefor testing the individual units of the programs, ensuring that each performs the functionfor which it was designed. There is an independent test group (ITG) which is to removethe inherent problems associated with letting the builder to test the thing that has beenbuilt. The specific objectives of testing should be stated in measurable terms. So that the
47
8/8/2019 School Soft
48/60
mean time to failure, the cost to find and fix the defects, remaining defect density orfrequency of occurrence and test work-hours per regression test all should be statedwithin the test plan.
The levels of testing include:
Unit testing
Integration Testing Data validation Testing
Output Testing
UNIT TESTING
Unit testing focuses verification effort on the smallest unit of software design thesoftware component or module. Using the component level design description as a guide,important control paths are tested to uncover errors within the boundary of the module.The relative complexity of tests and uncovered scope established for unit testing. Theunit testing is white-box oriented, and step can be conducted in parallel for multiple
components. The modular interface is tested to ensure that information properly flowsinto and out of the program unit under test. The local data structure is examined to ensurethat data stored temporarily maintains its integrity during all steps in an algorithmsexecution. Boundary conditions are tested to ensure that all statements in a module havebeen executed at least once. Finally, all error handling paths are tested.
Tests of data flow across a module interface are required before any other test isinitiated. If data do not enter and exit properly, all other tests are moot. Selective testingof execution paths is an essential task during the unit test. Good design dictates that errorconditions be anticipated and error handling paths set up to reroute or cleanly terminateprocessing when an error does occur. Boundary testing is the last task of unit testing step.
Software often fails at its boundaries.
Unit testing was done in Sell-Soft System by treating each module as separate entityand testing each one of them with a wide spectrum of test inputs. Some flaws in theinternal logic of the modules were found and were rectified.
INTEGRATION TESTING
Integration testing is systematic technique for constructing the program structurewhile at the same time conducting tests to uncover errors associated with interfacing. Theobjective is to take unit tested components and build a program structure that has been
dictated by design. The entire program is tested as whole. Correction is difficult becauseisolation of causes is complicated by vast expanse of entire program. Once these errorsare corrected, new ones appear and the process continues in a seemingly endless loop.
After unit testing in Sell-Soft System all the modules were integrated to test for anyinconsistencies in the interfaces. Moreover differences in program structures wereremoved and a unique program structure was evolved.
48
8/8/2019 School Soft
49/60
VALIDATION TESTING OR SYSTEM TESTING
This is the final step in testing. In this the entire system was tested as a whole with allforms, code, modules and class modules. This form of testing is popularly known asBlack Box testing or System testing.
Black Box testing method focuses on the functional requirements of the software.
That is, Black Box testing enables the software engineer to derive sets of input conditionsthat will fully exercise all functional requirements for a program.
Black Box testing attempts to find errors in the following categories; incorrect ormissing functions, interface errors, errors in data structures or external data access,performance errors and initialization errors and termination errors.
OUTPUT TESTING OR USER ACCEPTANCE TESTING
The system considered is tested for user acceptance; here it should satisfy the firmsneed. The software should keep in touch with perspective system; user at the time of
developing and making changes whenever required. This done with respect to thefollowing points
Input Screen Designs,
Output Screen Designs,
Online message to guide the user and the like.
The above testing is done taking various kinds of test data. Preparation of test data playsa vital role in the system testing. After preparing the test data, the system under study istested using that test data. While testing the system by which test data errors are againuncovered and corrected by using above testing steps and corrections are also noted for
future use.
TRAINING
Once the system is successfully developed the next important step is to ensure that theadministrators are well trained to handle the system. This is because the success of asystem invariably depends on how they are operated and used. The implementationdepends upon the right people being at the right place at the right time. Educationinvolves creating the right atmosphere and motivating the user. The administrators arefamiliarized with the run procedures of the system, working through the sequence ofactivities on an ongoing basis.
Implementation is the state in the project where the theoretical design is turned into aworking system. By this, the users get the confidence that the system will workeffectively. The system can be implemented only after through testing.
The systems personnel check the feasibility of the system. The actual data wereinputted to the system and the working of the system was closely monitored. The masteroption was selected from the main menu and the actual data were input through the
49
8/8/2019 School Soft
50/60
8/8/2019 School Soft
51/60
MAIN FORM
51
8/8/2019 School Soft
52/60
Add Student
52
8/8/2019 School Soft
53/60
ADD TEACHER INFORMATION
53
8/8/2019 School Soft
54/60
8/8/2019 School Soft
55/60
ADD TEACHER EXPERIENCE
55
8/8/2019 School Soft
56/60
Teacher search Information
56
8/8/2019 School Soft
57/60
Student search Information
57
8/8/2019 School Soft
58/60
8/8/2019 School Soft
59/60
AS PER USERS REQUIREMENT OUR WHOLE
PROGRAM IS DESIGNED. WE CAN ADD AN ADDITIONAL
CONSTRAINT TO OUR PROJECT. WE ARE ALSO TRYING
TO MAKE THIS PROJECT FOR ONLINE USE, SO THAT
SCHOOL CAN MAKE ENTRIES DIRECTLY THROUGH THE
INTERNET.
7. BIBLIOGRAPHY
59
8/8/2019 School Soft
60/60
This section gives you the name of the books required for thedevelopment of the project.
NAME OF THE BOOK AUTHOR NAME
1. Visual Studio complete reference 6.0 Noel Jecke
2. Programming in Visual Basic Julie Case Bradley
3. Visual Basic 6.0 Wright Brothers