You are on page 1of 20

2010-2011

Department Of Computer science & Engineering

CERTIFICATE
This is certify that wahid ahmed Student of VI semester B. E. Computer Science of this institute has worked on the Minor Project Student DataBase under the guidance of Mr. Sandeep Singh Chauhan of Department of Computer Science . His work is anticipated in well-disciplined attitude.
1

Mr. Sandeep Singh Chauhan [Guided By]

Mr. M.U. Reddy [HOD of CSE department]

ACKNOWLEDGEMENT
I take this opportunity to put on record, our acknowledgement for all those who help us in developing our project. I am profoundly grateful to our HOD Mr. M.U. Reddy for their expert guidance & continuous encouragement. I would like to thank Head of Department Mr. M.U. Reddy Computer Science Department who gave so generously of their precious time and knowledge and given conductive environment to conceive the idea of this project and to make it with great success. I also take opportunity to that all the staff members of our department for all their generous

support and cooperation who came forward and help me in success completion of this project. Last but not the least we would like to thank all our friend for their cooperation in project
Thanking You

Shubham Ojha(0158CS081097) Sourabh Rai(0158CS081101) Vishnu Soni(0158CS081116) Wahid Ahmed(0158CS081118)

CONTENTS
1.Introduction

2.

Literature Survey
Modeling
3

Product Perspective Objectives Scope Constraints Software Requirements Specification

Data Flow Diagram

3.Design
Algorithm Object Oriented Design

4.Coding
Platform Used The Source Code

5.Testing
Testing specification

6.Screen Layouts
Login Home Student Course Marks

7.UserManual(Admin)
Instruction & Guidelines

8.Conclusion
Conclusion Future scope

9.Reference

Software Requirement
OS: Window XP, Windows Vista & Windows 7 Java Runtime Environment: jdk1.6.0_01 iii. Netbeans IDE 6.5
i. ii.

Hardware Requirement
i. Ram: 256 Mb ii. 10 MB of free space iii. Input Device: Keyboard,Mouse iv. Output Device: Computer Monitor The project will take few minutes to install JDK and Netbeans. After the installation process the project will run in less than 5 minutes.

1. INTRODUCTION
1.1 Product Perspective: There are a number of database software that is available in the market and internet with free of cost and does not have GUI (Graphical User Interface) support. To use such software the user must have a good knowledge of SQL-Queries[1] even if he wants to perform basic data manipulation such as insert, delete or update a record. This software is mainly designed to provide GUI for database software with a feature of basic Query implementation, so that user can easily interact with database without having much knowledge of 'SQL-Queries' used in that database. 1.2 Objectives: Using this software with MySQL database software[2], user can create a new database, and also can delete an existing database. User can create tables in the database or delete an existing table from the database. The user can view data of a table and also can manipulate that data. The user can insert data in a table, delete data from a table and also update the existing data very easily by just pressing the few buttons in the software. If the user has a good knowledge of SQL, he can run any valid SQL-Query. 1.3 Scope: The project is an effort to create software that provides functionalities to manipulate simple data in database and allow the user save data to the permanent storage (database). The software only deals with the simple data in databases and does not support relational databases. The software is platform independent as being developed using java. 1.4 Constraints: The software is a simple graphical interface for database build in Java, providing some of the most basic features for database. The software uses the built in classes and interfaces of Java[3] (i.e. Java APIs) to serve the various facilities, for example JFrame and JPanel classes are used to create Graphical User Interface, and Connection and Statement interfaces are used to support Database Connectivity[3]. The limitations of the software are that relational database cannot be created by Graphical Interface but one can write SQL-Queries for that.

2. LITERATURE SURVEY
2.1 Software Requirements Specification (SRS): [An SRS[4] is basically an organization's understanding (in writing) of a customer or potential client's system requirements and dependencies] A project for such a problem must fulfill following requirements: Easy to use User Interface. Being as self-explanatory as possible. Easy to maintain and easy to use. Security of users information. Portable and reusability. Platform independent. 2.2 Functional Model: This is the most common and classic of life cycle models, also referred to as a linear-sequential life cycle model. It is very simple to understand and use. In a waterfall model[4], each phase must be completed in its entirety before the next phase can begin. At the end of each phase, a review takes place to determine if the project is on the right path and whether or not to continue or discard the project. These phases can be described as follows:RequirementsBusiness requirements are gathered in this phase. This phase is the main focus of the project managers and stake holders. Meetings with managers, stake holders and users are held in order to determine the requirements. This produces a nice big list of functionality that the system should provide, which describes functions the system should perform, business logic that processes data, what data is stored and used by the system, and how the user interface should work. The overall result is the system as a whole and how it performs, not how it is actually going to do it.
7

DesignThe software system design is produced from the results of the requirements phase. This is where the details on how the system will work are produced. Architecture, including hardware and software, communication, software design are all part of the deliverables of a design phase.

ImplementationCode is produced from the deliverables of the design phase during implementation, and this is the longest phase of the software development life cycle. For a developer, this is the main focus of the life cycle because this is where the code is produced. Many tools exist to actually automate the production of code using information gathered and produced during the design phase. TestingDuring testing, the implementation is tested against the requirements to make sure that the product is actually solving the needs addressed and gathered during the requirements phase. Unit tests and system/acceptance tests are done during this phase. Unit tests act on a specific component of the system, while system tests act on the system as a whole. Advantages Simple and easy to use. Easy to manage due to the rigidity of the model each phase has specific deliverables and a review process. Phases are processed and completed one at a time. Works well for smaller projects where requirements are very well understood.

Disadvantages Adjusting scope during the life cycle can kill a project No working software is produced until late during the life cycle. High amounts of risk and uncertainty. Poor model for complex and object-oriented projects. Poor model for long and ongoing projects. Poor model where requirements are at a moderate to high risk of changing
8

2.3 Modeling:
2.3.1 Flowchart:

Flowchart[5] shows the flow of control during the execution of program. Flowchart is basically a graphical representation of program and help to understand various modules and working of program. The flowchart of this project is given below. The diagram showa as soon as the the program starts executing, it asks the user to provide Username an Password as input. Using this information, the progam try to connect to the database, if the input provided is correct, the program connect to the database and provides access to that database to the user, but if the input is incorrect, the program asks the user to re enter details(Username and Password).

2.3.2 Data Flow Diagram:

The Data Flow Diagram[6] for this project(or program) is given below:

User Enter username and password

Open

Databas e Close s

Software 10 Context Level

Creat es User or open existi ng Changes in Tables

Open Databa ses 1.0 Modify Tables

Fetch Tables

Database

Save modifications in Database

Level0

User

Selects a Table from Database

Fetch the table from Databas e Read the contents Show table Level1

Open the table

Database

11

2.3.3 Class Hierarchy:

Class Hierarchy[5] shows the is a and has a relationship among the various classes used and created to develop this software. In the figure given below, the class hierarchy of this software is shown having a diamond shape to represent the is a relationship and arrow shape is used to represent the is a relationship.

12

3. DESIGN
3.1 Algorithm: Algorithm GUI: a) Read Username & Password. b) Try to connect to database using the Input: If Connection successful Go to step c). Else Go to step (a). c) Connect to database using Username and Password provided and open it so that user can access its data: i. Show all the databases available. ii. Show all the tables corresponding to the database. iii. Show an input field to read SQL-Queries. iv. Show controls that have to perform special task if user provides input to them. d) While true Wait for user to provide an input: If user provides an input to any control Go to step e). e) Check the input type and perform action accordingly If input is accessing database I. Process the requested task. II. Show its result to user. III. Go to step d). Else if input is closing the program Go to step f). Else Go to step d). f) Save the database changes. g) Close all the Connections opened. h) Exit the program. 3.2 Object Oriented Design: This Software is designed using Object Oriented Design[7] approach. All the concepts of Object Oriented Programming such as Object, Class, Abstraction, Encapsulation, Inheritance and Polymorphism are used to develop various modules. Separate class modules are created for different purposes and are used by creating Objects of these classes. Different packages of java API has been imported to inherit java classes,
13

implements interfaces in the project classes which compel the concept of reusability. Public and private access controls are used for data hiding and security.

4.

CODING

4.1 Platform Used:


Java is used as Front end[8]. MySQL is used as Back end[2]. Windows Platform is used to develop project.

4.1.1. Why Used:

We have used java because it provides many features discussed below and it is platform independent. MySQL as Back end because it is also open-source software[2] and connectivity drivers[2] are easily available for different operating systems.
4.1.2 Features:

Easily manipulated screens called (appropriately) windows. Platform-independent Portable. Object-Oriented. Robust and Secure. Distributed. Multithreaded and interactive. Java supports Inheritance, which is one of the best features of java. By which one can reuse code written once. For Example: We have made a customized Button, Frame, ProgressBar, SplashPanel, Window, Text Field, Labels[9]. We have written code For These Components and used many places. We dont need to write code for these components again. So we Used Java as a Front End. Windows is the worlds most popular operating system and one reason for this is its Graphical User Interface (GUI). Windows lets users issue commands by clicking icons and work with programs within easily manipulated screens called (appropriately) windows.

14

6.

SCREEN LAYOUTS

Screen Layout and Description:

LoginPage
This login is only for ADMIN. NO new user or unauthorized access is prohibited.

HomePage
links to every pages are provided.so that it is easier to maintain the Database.

15

Student Details
Admin can fill all the information regarding student.

Course Details
Here ADMIN can fill the information about the Course taken by the student for his Major.

16

Subject Details
This is where ADMIN can fill the information about the corses offered by institutions.

17

Marks Details
Marks gained by the particular student can be stored here,with the subject and student ID.

USER MANUAL(ADMINISTRATOR)
Introduction and guidelines:

7.

The software has very simple interface and can be used by a person who has got very little knowledge of computers and he can perform basic operation of database without knowing the query language. Through this software you can create a new database. You can create tables in that database. You can manipulate tables in database, insert data in table, and delete data from table very easily by just pressing the few buttons on the software. Create a new Student Details 1. From any web page after accessing admin account,click on Student link provided on every page.
18

2. Fill all the details of student. 3. click on Save button now the details are saved on database.
Delete an existing Student Details

1. If ADMIN want to delete an existing Student Details. The one can delete just by checking the box. 2. click on delete button. Now the Student details would be deleted from the Database. Filling the Course details of Student 1. From any web page after accessing admin account,click on Courses link on template provided on every page. 2. Fill all the details of course of student. Filling the Marks details of Student 1. From any web page after accessing admin account,click on Marks link on template provided on every page. 2. Fill Details of marks scored by student. 3. Now click on Save Button. After clicking save button information would be saved in Database.
Logout the ADMIN account 1. After filling all the information ADMIN can logout from the account. 2. Now,no one access the admin account without username & Pasword.

8.
8.1 Conclusion:

CONCLUSION

This webapplication is a new type of Frontend for Databases, which is made in java servlet. Because this project is made on java servlet, it is platform independent. Being a platform independent editor this can be run on any type of operating system like Microsoft, Macintosh and Linux etc. and we have used MySQL as Database which is a open Source software and easily available and its connection driver is also available easily for different databases. This makes software compatible in most of operating systems.

19

8.2 Future scope:


This webapplication can be modified for relational databases. It

means we can create relation between two tables by simply dragging a line from one table to another table.
This webapplication can be modified for dynamically change the size

(row, column) of table.


This webapplication can be modified for create connection between

different types of databases.

References:
[1]

Database Management System by H. Korth [2] http://www.mysql.com [3] Java 6 programming Black Book (Published by Dreamtech Press). [4] Software Engineering by Pressman [5] A core book for SCJP (Sun Certification Java Programming)by Khalid Mughal. [6] http://en.wikipedia.org/wiki/Data_flow_diagramObject. [7] Oriented Programming by E.Balaguruswami.
[8] [9]

http://java.sun.com/docs/books/tutorial/

The Complete reference java (Seventh Edition) by Herbert Schildt.

20

You might also like