Vous êtes sur la page 1sur 52

CHAPTER # 01 Introduction 1.

1 Thesis Organization
The thesis is organized into five broad sections. They are sorted as follows: Section 1 gives an introduction to the background of the institute and why this web based system has been developed. This section has been written to give the reader a brief sight of the present systems and their drawbacks and than the most important part of this section, the project design discussing the remedies of the drawbacks of the current systems. Section 2 shows the requirements and explanation of project. It is important to know the basic background of any project prior to understanding the project. Section 3 discusses analysis modeling of the system. ERD and DFDs are explained in this section. Section 4 explains architectural and database design of the system. User interface has also been shown here. Section 5 In this section we discussed the basic programming idea of our system, the applications of our systems and then the conclusion & references

1.2 Introduction to the organization Profile

Peshawar is not only the provincial Capital but also the center of education and learning. University of Peshawar is the oldest University of the province and has attained the position of being one of the significant universities of the whole region. PBS has a unique position being the first private institution which has been honored by the University of Peshawar with affiliation in business and management studies. PBS specializes in business studies as is evident from its name and conducts classes of BBA ( Hons ) and MBA. Students who

successfully complete Peshawar.

these courses are awarded degrees by University of

Peshawar Business School (PBS) is located in the Posh area of University Town in Peshawar, the Provincial Capital of Khyber PakhtoonKhwa. Peshawar is one of the oldest living cities and stands at the world famous Khyber Pass, a gateway to Afghanistan and Central Asia in terms of trade and commerce.

The PBS Campus is located at a Prime Location on Circular Road, and is easily access able from all routes of the city. The Campus is housed in an impressive building having well furnished air conditioned class rooms equipped with latest audiovisuals, a spacious and research. Moreover the School is situated at a close proximity to University of Peshawar which enables our students to avail some of the university facilities. The town itself has a number decent hostels both for girls and boys which can be utilized by the students who need to stay in the hostels.

Mission Statement
Peshawar Business School aspires to be acknowledged as an independent business school of first choice for outstanding quality of its graduate and post graduate programs and courses offerings. Being the first institute to be affiliated with Peshawar University, Peshawar Business school is known for its quality management education. We accomplish our mission through quality education with professional spirit and excellence. We are dedicated to the following To provide highly competent and market oriented academics degree programs. To nourish and promote communication skills and computer literacy of the students. 2

To provide highly competent and talented people to the society.

To become a unique management institute that could provide diverse and supporting learning environment having regional expectations and emphasis on leadership development.

1.3 Introduction to the existing manual system

The Peshawar Business School, Peshawar has many sections as any institutes does. The main entities of the institutes are the Students and the teaching staff. This web database project is basically focusing on both the teacher and student entity, and specifically the student admissions and their results. The web database also provides job applications from the website visitors who want to get admitted, and employed in the institute for an advertise post. All of these in the current system are explained below: 1. Admission system 2. Student results 3. Students Attendance

Admissions Forms
A student interested to get the admission in the institute must have to fill an admission application form in hardcopy. This form has all the basic requirements that include name, father name, address, contact number, guardian address, guardians phone number, qualifications and other relevant and necessary information.

Student Result Cards

There are essentially three exams attended by both the Grade-i and Grade-ii that are conducted in the institute monthly, midterm and final exams. The results of these three exams are shown with names, roll numbers, father names and institute roll numbers.

Student Attendance Cards


The attendance of each students of each class are shown with names, roll numbers, father names and institute numbers so that the parents can be informed about their children attendance and absentees.

Current system problems 1. Results problems (delay, tempering or not reaching)

The institute faces a problem in the result announcement i.e. the result reaches to parents with a delay and institute attends hundred of complaints for this delay. These complaints are done normally by telephone or by the parents themselves on their visit to the institute. It was also noticed that the students has hidden the result in many cases from their parents and hence the parents were not known of their position in the institute and in the end they blame institute for their poor system. It was also noted that some students who were failed in certain subjects showed their results to their parents with a tempering or change with it, which causes to bring harm to the institute name.

2. Data Redundancy
The term redundancy of data refers to the inconsistency of that data i.e. the duplicated copies of identical data with multiple instances in the same database. This usually occurs when the same data is stored at multiple locations. The data duplication is not a very common problem but it is happening in the current system as the data is maintained manually and no software help is taken for dealing with the data. The online web database system for the institute has its own database that is built with MySQL and the data integrity is maintained in this database.

3. Data Inconsistency
Inconsistency means the inaccuracy of data. Data redundancy leads to data inconsistency. It means when there is data redundancy then inconsistency is prevalent. Basically inconsistency arises when data is stored in two or more places and is not identical.

Since all of the work and calculation is done manually, therefore the chances of errors increase and hence the probability of inaccuracy is high that results in remedying these errors.

4. No Backup System
The storage medium is another critical point to be noted. For handling the student record, several registers are used i.e. the same data is stored at different locations that result in considerable loss of materials. The record stored in file may be destroyed or misplaced. Therefore the present system is not adequate and should be replaced.

5. Searching Problem
Searching in the traditional approach to the databases, in all aspects is a very difficult and time-consuming task. For example if we want to search for the student attendance then we have to call the particular class teacher from his class and if he is absent in case then this become impossible. A user can search the applicant record just by logging to the internet. Presently these records are stored in registers; therefore retrieving these records for a particular student manually in a timely manner is a problem.

6. Lengthy Access Times

Response time plays an important role in the efficiency of any system. As the current system is run manually, the processing speed is also slower as compared to the computerized system. In order to find a particular student record, the administration staff may need to search several registers that may take some time.

7. Higher Costs
Individual student result is mailed to the respective postal/home addresses of the students which require a large amount just for the postage of the result letters and a lot of printing.

1.4 Introduction to the Web database

Computer technology is one of the most powerful and the most flexible technologies ever developed. This technology is being developed very fast and it is providing numerous benefits to the organization and individuals. Companies for the first time spent more on computing and communication gear than on industrial, mining, farm and construction machines the significance? Computing as now as vital...as we the air we breathe. Terry Bynum Computer provides an enormous and extremely powerful and flexible problem solving tool. Judicious and well planned use of computer technology gives a fill Up to the achievement of organization objectives .Recognizing the importance of computers all major institutions in the country are using these machines for accurate, efficient, and timely results.

1.5 Tools used in the system

The following tools were used in this project 1. Dream weaver 2. Adobe Photoshop 3. HTML 4. MySQL 5. PHP 6. CSS 7. Java scripts

Dream weaver
Dreamweaver is a web development tool created by Macro media. This is currently in version 8. initial version of the application served as simple WYSIWYG HTML editors but more recent versions have incorporated notable support for many other web technologies such as CSS ,Java Scripts and various others server side scripting frameworks. Dream weaver has enjoyed widespread success since late 1990s and currently holds approximately 80 % of the HTML editor marketed. The software is available for the both Mac and Window 6

platforms but can be run on Unix like platforms through the use of emulation software such as Wine. As a WYSIWYG editor Dreamweaver can hide the details of pages, HTML code from the user making it possible for non experts to easily create web pages and sites. Some web developers criticize this approach as producing HTML pages that are much larger than they should be which can cause web browsers to perform poorly. This can be particularly true because the application makes it very easily to create table based layouts. In addition some website developers have criticized Dreamweaver in the past producing code that often does not comply with W3C standards. However Macromedia has increased the support for CSS and other ways layout a page without tables in later versions of the application. Dreamweaver allows you to pick most browsers installed on your computer to preview websites. It also has some nice site management tools for the novice such as the ability to find and replace lines of text or code by whatever parameters you specify up to the entire site. The behavior panel also allows creation of basic JavaScript without any coding knowledge. With the advent of version MX Macromedia incorporated dynamic content creation tools into Dreamweaver. In the spirit of HTML WYSIWYG tools it allows users to connect databases such as MYSQL and Microsoft Access to filter and display content using scripting technologies such as PHP .Coldfusion, ASP and ASP.NET without any previous programming experience.

It started out with the intention of using the MYSQL database system to connect to our tables using our own fast low level (ISAM) routines. However after some testing we came to the conclusion that my SQL interface to our database but with almost the same API interfaces as my SQL. This API was designed to allow third party code that was written for use with my SQL to be ported easily for use with MYSQL. The derivation of the name MYSQL is not clear. Our database directory and a large number of our libraries and tools have had the prefix my for well over 10 years. However cofounder Monty Windenius daughter is also named My. Which of the two gave its name to MYSQL is still a mystery even for us. 7

The name of the MYSQL Dolphin(our logo) is Salika which was chosen by the founders of MYSQL AB from a huge list of names suggested by users in our name the Dolphin contest. The wining name was submitted by Ambrose Twebaze an open source software developer from Swaziland, Africa. According to Ambrose the feminine name Sakila has its roots in SiSwati the local language of Swaziland. Sakila is also the name of a town in Arusha, Tanzania, near Ambrose country of origin, Uganda. For our database maintenance we have used MYSQL because it has the following different main features.

Feature of MYSQL
The following list describes some of the important features of the MYSQL database Software.

a. internals and Portability

written in C and C++ Tested with a broad range of different compilers. Works on many different platforms. Use GNU Auto make, Auto conf and lib tool for portability. API for C and C TcI are available. Fully multi threaded using kernel threads. It can easily use multiple CPUs if they are available. Provides transactional and non transactional storage engines. Uses very fast B tree disk tables(MyISAM) with index compression. Relatively easy to add other storage engines. This is useful if you want to add an SQL interface to an in house database. A very fast thread based memory allocation system. Very fast joins using an optimized one sweep multi join. In memory hash tables which are used as temporary tables. ,Eiffel, Java, Perl, PHP ,Python, Ruby and

SQL functions are implemented using high optimized class library and should be as fast as possible. Usually there is no memory allocation atall after query initialization.

The MYSQL code is tested with purify (a commercial memory package detector) as well as with Valgrind a GPL tool. The server is available as a separate program for use in a client/server networked environment. It is also available as library that can be used in isolation or in environments where no network is available.

b. Data Types
Many data types are signed/unsigned integers 1, 3, 4 and 8 bytes long. Float, Double, CHAR, VARACHAR, TEXT, BLOB, DATE, TIME, DATETIME, TIMESTAMP, YEAR, SET, ENUM, and OpenGIS spatial types.

c. Security
A privileged and password system that is very flexible and secure and that allows host based verification. Passwords are secure because all password traffic is encrypted when you connect to a server.

d. Scalability and Limits

To Handle large databases We use MYSQL Server with databases that contain 50 million records. We also know of users who use MYSQL Server with 60,000 tables and about 50,000,000,000 rows. .

e. Connectivity
Clients can connect to the MYSQL server using TCP/IP sockets on any platform. On Windows system in the NT family (NT, XP, or 003) clients can connect using named pipes. On UNIX systems clients can connect using UNIX domain socket files.

In MYSQL versions 4.1 and higher Windows Server also supports shared memory connections if started with the share memory option. Clients can connect through shared memory by using the protocol memory option. The connector/ODBC (MyODBC) interface provides MYSQL support for client programs that use ODBC(Open Database Connectivity) connections. For example you can use MS Access to connect your MYSQL server. Client can be run on Windows or Unix. MyODBC source is available. All ODBC . functions are supported as many others. MYSQL Connector/NET enables developers to easily create .NET applications that require secure, high performance data connectivity with MYSQL. It implements the required. ADO.NET interfaces and integrates into ADO.NET languages. MYSQL Connector/Net is a fully managed ADO.NET driver written in 100 % pure C#.

f. Localization
The server can provide error messages to clients in many languages. Full support for several different character sets including latin (cp 15) ,German big5 , ujis and more. For example the Scandinavian character a, a and o are allowed in table and column names. Unicode support is available as of MySQL 4.1. All data is saved in the chosen character set. All comparisons for normal string columns are case insensitive.Sorting is done according to the chosen character set ( using Swedish collation by default ). It is possible to change this when the MySQL server is started. To see an example of very advanced sorting look at the Czech sorting code. MySQL server supports many different characters sets that can be specified at compile time and runtime.

g. Clients and Tools

My SQL Server has built in support for SQL statements to check, optimize and repair tables. These statements are available from the command line through the mysql check client. MYSQL also includes mismatch, a very fast command line utility for performing these operations on MyISAM tables. All MYSQL programs can be invoked with the help or? Options to obtain online assistance. 10

PHP (Hypertext Preprocessor)

PHP (recursive acronym for PHP Hypertext Preprocessor) in its early days known as Personal Homepage is a widely use Open Source general purpose scripting language that is especially suited for Web development and can be embedded into HTML.PHP is different from a script written in other languages like Perl or C instead of writing a program with lots of commands to output HTML ,you write an HTML script with some embedded code to do something (in case output some text .) The PHP code is enclosed in special start and end tags that allow to jump into and out of PHP mode.What distinguish PHP from something like client side JavaScript is that the code is executed on the server? If u were to have a script similar to the above on your server the client would receive the results of running that script with no way of determining what the underlying code may be. You can even configure your web server to process all your HTML files with PHP and then threes really no way that users can tell what you have up your sleeve. The best things in using PHP are that it is extremely simple for a newcomer but offers many advanced features for a professional programmer. Dont be afraid reading the long list of PHP features. You can jump in, in a short time and start writing simple scripts in a few hours. Although PHP development is focused on server side scripting you can do much more with it. Read on and see more in the can PHP do? Section or go right to the introductory tutorial if you are only interested in web programming.

What can PHP do?

Anything PHP is manually focusing on server side scripting so you can do anything any other CGI program can do such as collect form, data, generate dynamic page content or send and receive cookies. But PHP can do much more. There are three main areas where PHP scripts are used,

1. Server side Scripting


This is the most traditional and main target field for PHP. You need three things to make this work. The PHP parser (CGI or server module), a web server and a web browser. You need to run the web server with a connected PHP installation. You can access the PHP program output with a web browser viewing the PHP page through the server. All these can run on your home machine if you are just experimenting with PHP programming. See the installation instructions sections for more details.

2. Command line scripting

You can make a PHP script to run it without any server or browsers. You only need the PHP parser to use it in this way. This type of usage is ideal for scripts regularly executed using cron (on *nix or Linux) or Task Scheduler (on Windows). These scripts can also be used for simple text processing tasks.

3. Writing desktop scripting

PHP is probably not the very best language to create a desktop application with a graphical user interface, but if you know PHP very well and would like to use some advanced PHO features in your client side applications you can also use PHP-GTK to write such programs. You can also have the ability to write cross platform applications this way. PHP-GTK is an extension to PHP not available in the main distribution.


CHAPTER # 2 Requirements 2.1 Investigation Methods

Investigation is done keeping in view what are the problems or needs due to which new software is required to be developed. There are different investigation methods: 1. Interview 2. Questionnaire 3. Observation 4. Document Review 1. Interview Interviews are meant for getting information directly from other people (called subjects in this context). Talking to the subjects usually carries out an interview. Interview can be open or closed. An open interview is the one in which interviewees can give any answer they like while in a closed interview multiple choice answers are there for the interviewee to choose the answer from. Also interviews can be structured or unstructured. In a structured interview, only a set of questions are asked and in a fixed order, an order is selected which flows naturally and with relaxing/easy first while in an unstructured interview there may be a list of topics to cover but the order may vary and topics are allowed to flow if they are raised by the interviewee. 2. Questionnaire Questionnaire is another method of investigation in the requirements gathering phase. Questionnaire is used in case when we are developing software for an organization which is far away from us and it is not very easy to get to it and ask the employees of the organization about their problems. So at that time a questionnaire is prepared with questions and some space for extra suggestions to fill in by the concerned people. 13

Also more than one questionnaire is sometimes prepared for different types of users that going to use the software (end users, sophisticated users etc.). The questionnaire is filled in by the users and is returned to the software developers and then the task of finding out the proper requirements starts by studying those questionnaires. We did not apply this method because we can visit the organization anytime and can ask questions from the concerned people without any problem. 3. Observation In this method the software engineer visits the organization for which the software is being developed and spends some time with the end users, technical persons etc. The manual work is observed and practiced by the software engineer so that s/he can identify the problems and can provide computer based solutions for it. 4. Document Review Documents are always there for any manual system. When these documents are reviewed by the software engineers in order to gather requirements then it is called document review. Documents can be reviewed only if the organization can be visited and the concerned people allow us to study the documents. 2.2. Methods Adopted: Keeping in view the system, we adopted three of the above listed methods for requirements gathering. Interview were the first method of investigation as we can directly ask questions from the concerned staff members. We carried out an unstructured open interview and asked different questions from the chairman and documented the responses. Also we carried out the observation phase for a few days and collected as much information as possible. Because of the cooperation of the organization we were able to study some of the documents which could help us in gathering the requirements so we adopted the documents review as well.


Interview with the principal of the institute Following are the questions that were asked during the interviews we took there and the responses of the interview are: a. What do you think are the major problems associated with the existing system of the student databases of the Institute? Since the current system is manual, it has many inherent problems. It tends to be inefficient at times. For example, for searching a student record we have to ask the record keeper where the record is searched in registers, which takes a lot of time. Each time an attendance report needs to be generated, a huge amount of human effort is put, which is tedious and error prone. A lot of money is spent on registers and a lot of space is required to maintain them. b. Do you think that the general demand for a computerized system is justified? Although I believe that if people

2.3. Software Requirements Specification (SRS)

INTRODUCTION Establishment of Business School at Peshawar was the outstanding demand of Employers of the Province to produce High qualified and Skilled businessmen to meet requirements of the National and International business.

PURPOSE In PBS, there is manual work done for the students' admission and result systems. It is not only a lengthy process but at the same time a single mistake can take the shape of a serious problem and can cause great damage to the whole data and the rectification of which will upset the whole process. Doing all this lengthy process manually in registers is not only a time-consuming process but also a time will come that there will be a pile of registers to handle the records and these registers will take a large space. Keeping the importance of the problem into consideration, our software will computerize the manual work of students' admission and result systems.


INTENDED AUDIENCE AND READING STAFF: Developers: Muhammad Khalid Chhaya Tabassum Sana Salah-Ud-Din Project Manager: Muhammad Khalid Users: Students of PBS and other users Testers: Engr. Arbab Waseem Abbass Documentation Staff: Chhaya Tabbassum Sana Salah-Ud-Din

Product Scope
This product facilitates the students of PBS Peshawar. It will provide the following facilities


Basic information about the institute. Information about the courses offered, will be available. A downloadable Admission form is available. A photo gallery for the students and staff. Online annual results of the students will be available on the website. Online feedback submission to the Institute Principal Online information about the institutes and events. Manage all website contents.

Students can easily review their exam results throughout the academic year. Preparation of the exam result is far easier than the traditional result preparation, 16

hence reducing the overall waiting time for results to be displayed on the Institute notice board. Visitors of the Institute website can submit their message and comments to the Institute Principal. Students, who cannot express themselves in front of the Institute staff, can submit comments via the feedback form on the Institute website.

GOAL The main goal of this web database project is to facilitate the current and intended students to provide them every possible facility by computerizing the current manual system.

REFERENCE This SRS follows the IEEE Standards and its version is 1.0.


CHAPTER # 3 Analysis Modeling 3.1 Analysis

Analysis is the process of collecting information, facts and studies the existing system for which the analysis is carried out. Database design is based on information about the organization that is to be very served by the database. This information is gathered by the following methods. Interviewing individuals of the organization, especially those who were experts in this specific area. Observing the process in operation. Examine documents used for records of the pensioner. Use experiences of friends who are good programmers.

Economically too the system was not too feasible. The staff were spending more money on human resources and buying the stuff to maintain the records. This web system will remove all these deficiencies and flaws of manual systems. It provides strict security system searching of any record becomes very fast.

3.2 Analysis Model

Analysis model is actually a set of models, is the first technical representation of a system. Analysis modeling uses combinations of text and diagrammatic forms to depict requirements for data, function and behavior in a way that is relatively easy to understand and straight forward to review for correctness, completeness and consistency. Main entities evolved in the system 1. Manage all contents of the web site 2. Manage news 3. Students admission form downloadable 4. Courses offered. 5. Annual results of the student. 6. Job form downloadable. 18

7. Online feedback obtaining from the visitors of the website.

Proposed Web Database System

The proposed web database system has all the facilities that were required by the organization and all the errors were tried to be removed from the new system that were present in the old system. Although no human built systems can be claimed as an ideal one however, this proposed system can claim to remove much of problems faced during the functions of the previous manual system. We have tried to build the website with all techniques and thoughts to make it easier to use both by the normal user and administrator.

Functions of the Proposed System

There are many types of the users of the web database systems. They are administrator or the normal users. The normal user is not authorized to enter or change the database and on the other hand the administrator is authorized through a password to edit or change the database. The tasks/functions of the proposed web system for a normal user and the admin user are described as follows.

Function for a Normal User

The following tasks are required for a normal user who has got access to limited pages. A downloadable admission form is available on the website Availability of the annual result only for the students of the institute on the website User can download form for job whenever jobs are advertised by the institute. User can provide their comments/feedback whenever they visit the website. Current informations and events can be viewed by visitors of the website. User can view Gallery.


Admission Form Availability on the Website

The institute announced notification at the end of the year for the admission. The students from far areas have to visit the institute to get the admission form. This was the major problem faced by the students. The institute website reduces the efforts of the students and facilitates them by providing a downloadable admission form on the website. The user can download the form, print it and send it to the institute address. .

Availability of the annual result of the students

After the completion of course work and extensive practical works the institutes conduct annual exams. After the completion of exams the students have to left the institute and wait for their result. The institute website will provide the students annual result on their website. Thus students dont have to visit the institute. They can check their result by visiting the institute website.

Getting online feedback/comments from the students/users

Visitors of the institute website can submit their messages and comments to the institute principal who cannot express themselves in front of the institute staff, can submit comments via the feedback form on the institute website.

Functions for the web database Administrator

The admin first has to log on to his admin area for performing the required tasks. These are discuss below

1. Results Operation

Insert View Update Delete

2. Job Operations

Administrator should upload job form


3. Feedback operations

View Delete

4. Results Operations

Insert: The administrator should be able to insert the result of the students so that this result is viewed to all other users.

View: The administrator should be able to view the result of the whole class

Update: The administrator should be able to update the result of a student, if it is to be required.

Delete: The administrator should be able to delete the result(s) of a student(s) if it is not required

5. Web site Content Management

1. Insert: The administrator should be able to insert the contents of the

website so that this information is viewed to all other users.

2. View: The administrator should be able to view the contents of the

3. Update: The administrator should be able to update the contents of a

website, if it is to be required.
4. Delete: The administrator should be able to delete the contents of the



Admission Operation
Administrator should upload admission form


News Operation

Insert View Update 21


Advantage of proposed system

The web database system has many advantages to the organization. This website will helps the institute students to save their time and money by showing the result online on the web so students cannot temper the results and the results can be shown to their parents on time, also they do not have to travel the institute. They just have to visit the institute website to obtained basic information about the institute and also to be aware of the latest updates published by the institute. 1. students can download admission form 2. students can check their annual results 3. students can check basic information about the organization 4. students can check for the fee structures of different course 5. students can provide feedback/comments about the organization and about the site 6. students can check any new updates issue by the institute 7. The web work for the purpose of publicity as well as good management of the institute system. 8. Facilitates the students to dont travel the institute for an ordinary and little information.

3.3 Methods
There are two methods for analysis modeling 1. structured Analysis 2. Object Oriented Analysis

Structured Analysis
Structured analysis is classical modeling building activity. It is categorized into the following three categories. a. Data Modeling b. Functional Analysis c. Behavioral Modeling


3.4 Data Modeling

Data modeling defines data objects, attributes and relationships. Also data modeling answer a set of specific questions that are relevant to any data processing application. To answer these questions data modeling methods make use of the Entity Relationship Diagram (ERD).

Entity Relationship Diagram

The ERD defines all data that are entered, stored, transformed and produced within an application. ERD enables a software engineer to identify data objects and their relationships using a graphical notation. The ERD consist of three interrelated pieces of information including i. the entities ii. the attributes that describes the entities iii. the relationships that connects the entities to one another.


Figure 3.1: Entity Relation-ship Diagram


3.5 Functional Modeling

Functional modeling indicates how data are transferred within a system; information or data is transferred as it flows through a system. The system accepts input in variety of forms and produces output in a variety of forms. For functional modeling Data Flow Diagram (DFDs) are used.

Data Flow Diagram

As information moves through software it is modified by a series of transformations. DFD is a graphical representation that depicts information flow and the transforms that are applied as data flow from input to output. The basic form of DFD is also known as bubble chart.

Levels of DFD
DFDs are pointed into levels that represent increasing information flow and functional detail. A level o DFD also called context level represents the entire software elements as a single bubble with the input and output data indicated by incoming and outgoing arrows, respectively. Additional processes and information flow paths are represented as the level 0 DFD is partitioned to reveal more detail. A level 1 DFD might contain five or six bubbles with interconnecting arrows. Each of the overall system depicted in the context level.

3.6 Behavioral Modeling:

Behavioral modeling is an operational principal for all requirements analysis methods; it also depicts the impact of events. Yet only extended versions of structured analysis provides a notation for this type of modeling. For behavioral modeling State Transition Diagram are used.

State Transition Diagram

The state Transition diagrams represents the behavior of a system by depicting its states and events that causes the system to change state. A state is any observable mode of behavior. A state transition diagram indicates how the system moves from state to state.


CHAPTER # 4 System Design

System design consists of the following types of design: 1. Architectural design 2. Procedural design 3. Database Design 4. Modular Design 5. Interface Design

4.1 Architectural Design

Architectural design represents the structure of data. Data and the program components that are required to build a computer based system. The architectural design process is concerned with establishing basic structural framework for a system. It involves major components of the system and communication between these components The following activities are involved in the architectural design:

a. System Structuring
The system is structured into a number of principal subsystems. A sub system is an independent software unit. Communication between subsystem is identified.

b. Control modeling
A general model of the control relationships between parts of the system is established.

c. Modular decomposition
Each identified subsystem is decomposed into modules. The architect must decide on the types of module and their interconnections.


4.2 Types of Architectural Design

Following are the types of the architectural design: Repository architecture Layered architecture Client/Server model Event driven systems Call and return model

Repository Model
Translating this to a new model will certainly be expensive; it may be difficult or even impossible. Activities such as backup, security, access control and recoveries from errors are centralized. They are the responsibility of the repository manager. Tools can focus on their principal function rather than be concerned with these issues. Different subsystems may have different requirements for security, recovery and backup policies. The repository model forces the same policy on all subsystems. It may be difficult to distribute the repository over a month of machines. Although it is possible to distribute a logically centralized repository, there may be problems with data redundancy and inconsistency.

Layered Architecture
A number of different layers are identified. Each accomplishing operations that progressively become closer to the machine instruction set. At the outer layer components service user interface operations. At the inner layer components perform operating system interfacing Intermediate layers provide utility services and application software functions. In layered approach structuring the system can be difficult


4.3 Data base Design

A database is a shared collection of logically related data designed to meet the information needs of multiple of users in an organization. The main aims of database design are to represent the data and the relationships between data required by all major application areas. To provide a data model that supports any transactions required on the data. To specify a design that will achieve the stated performance requirements for the system such as response time. A database is a complex object for sorting structured information which is organized and stored in a way that allows quick and efficient retrieval. We put a lot of efforts into designing a database so that we can retrieve the data easily. The information is broken into tables and each table stores different entities. We bring information into smaller chunks so that we can manage it easily. We can design rules to protect the database against users actions and ask the DBMS to enforce these rules. The design can be classified into two categories. 1. Logical database design 2. Physical Database design

1. Logical Database Design

This phase simplifies the approaches to designing a large relational database by reducing the number of data decencies that need to be analyzed.

2. Physical Database Design

Physical database design arises from logical design. It is based upon the relationship among the data rather than the convenience of storage structure.

About the Web Database

The database that is used at the back end of the website was built in Mysql. It has the following tables.


Table for the annual result

This table is used to store the results of students that belong to any course. The table result has the following fields and details.

Field Id Roll number Name Fname Course Marks

Type Int(6) Int(6) Varchar(30) Varchar(30) Varchar(10) Int(6)

Table 4.1: Results Feedback Table

The feedback table is used to store the feedback of the students/visitors of the site. Field Id Name Email Feedback Type Int(6) Varchar(30) Varchar(30) Varchar(200)

Table 4.2: Feedback Users Table

The user table is used to store the user name and passwords of the students of institute, so that they can check their results.

Field Id Username Password

Type Int(6) Varchar(30) Varchar(30)

Table 4.3: Users

Visiting Faculty Table

The user table is used to store the user name and passwords of the students of institute, so that they can check their results. 29

Field Id Name Designation

Type Int(6) Varchar(30) Varchar(30)

Table4.1: Visiting Faculty

4.4 Modular Design

Modular designs after data architecture and interface have been established. The modular specification required to be defined algorithmic details would be stated in a natural language such as English because it is easily understandable. There is no question that graphic tools such as flow chart or box diagrams provides the excellent pictorial patterns that readily depict modular details. However if tools is misused the wrong picture may lead to wrong software. We will demonstrate some of our basic module by using flow charts.


Figure 4.1: Admin login module


Figure 4.2: General Search module


Figure 4.3: Delete module


4.5 Interface Design

The main page This is the main page; the banner was design in the Adobe Photoshop. The site map and map summary is given below.

The process of design

The design phase focuses on the detailed implementation of the system recommended in the feasibility study. Emphasis is on the translating performance specification into design specifications. The design phase is translation from user oriented documents (system proposed) to a document oriented to the programmers or database personnel. There are two types of the designs involved in the project designs. 34

Input design
Inaccurate input data are the most common cause of errors in data processing. Errors entered by data entry operator can be controlled by the input design . input design is the process of converting user originated data into computer based format. In the system design phase the expanded data flow diagrams identify the logical data flows, data stores, sources and destinations. Input data are collected and organized in group of similar data.

Output design
Computer output is most important and direct source of information to the user. Efficient, intelligible output design should improve the systems relationship with the user and help in the decision making. A major form of output is a hard copy from a printer. Print outs should be designed around the output requirements of the user. The output devices to consider depend on factors such as compatibility of the device with system, respondent requirement, expected print quality and the number of copies needed. In on line application the information is displayed on the screen. The layout sheet for displayed output is similar to layout chart used for designing input: the areas for displaying the information are blocked out, leaving the rest of the screen blank or for systems status information. Allowing the users to review the sample screen in the extremely important because the user is the ultimate judge of the quality of the output and in turn the success or failure of the system. The following are the input and the output forms used the website input forms 1. 2. 3. 4. 5. Output forms 1. 2. 3. View/Delete CV form View/Delete admission form View/Delete feedback form 35 Online admission form Online job application form Online feedback form Result entry form Result update form

4. 5.

View Result form Result Search Form

Online Feedback Form

Search engine for the website


Administrator Login Page


The Administrator Menu Page


The Feedback View Page


File Upload of PBS



Chapter # 5 Coding 5.1 Coding

The design must be translated into a machine readable form. The code generation step performs this task. If design is performed in a detailed manner, code generation can be accomplished easily. The goal of coding or design is to translate the design of the system produced during design phase into code in a given programming language which can be executed by a computer and which performs computations specified by the design. For a given design the aim is to implement the design in the best possible manner. The coding phase affects both testing and maintenance profoundly. So it should be that goal during coding should not be reduce the implementation cost but to reduce the cost of later phases. Although the coding phase does not affect the structure of the system, it has great impact on the internal structure of modules, which affect the testability and understandability of the system. The goal of coding phase is to produce simpler or clear programs. The aim is not to reduce the coding effort but to program in a manner such that the testing and maintenance costs are reduced. Programs should not be constructed so that they are easy to write, they should be easy to read and understand. Reading programs by people other than programmers is a much more common activity than writing programs. Hence the goal of the coding phase is to produce simple programs that are easy and clear to understand and to be modified.


5.2 Coding Reviews

The review process was started with the purpose of detecting defects in the code. Though design reviews substantially reduce effects in the code, reviews are still very useful and can considerably enhance reliability and reduce effort during testing. Code reviews are designed to detect defects that originated during the coding process, although they can detect defects in detailed design also, however it is unlikely that code reviews will reveal errors in system design or requirements. Code reviews are usually held after code has been successfully completed but before any testing performed. Therefore activity like code reading, symbolic execution and static analysis should be performed and defects found by these techniques corrected before code reviews are held. The main motivation for this is o save human time and effort that would other wise be spent in detecting errors that a compiler can detect. The aim of review is to detect defects in the code. An obvious coding defect is that the code fails to implement the design. In addition there are quality issues which the review also addresses.


Online Feedback coding

<?php include("connection.php"); if($_REQUEST['action']=="insert") { $name=$_POST['name']; $email=$_POST['email']; $desc=$_POST['desc']; mysql_query("insert into values('$name','$email','$desc')"); } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <link href="Stylesheet.css" rel="stylesheet" type="text/css"> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Peshawar Busniess School</title> <script> function validate() { var name=document.getElementById('name').value; var email=document.getElementById('email').value; var desc=document.getElementById('desc').value; var num=/^([A-Za-z ]{3,21})$/; var reg = /^([A-Za-z0-9_\-\.3])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/; if(name=="" || num.test(name)==false|| email=="" || reg.test(email)==false || desc=="") { if(name=="") { alert("plz fill name field"); return false; } if(num.test(name)==false) { `feedback`(`name`,`email`,`feedback`)


alert("plz fill name field correctly as number is not allowed in name field"); return false; } if(email=="") { alert("please fill email field"); return false; } if(reg.test(email)==false) { alert("please fill email nameetc9238_klfjd@dfmsldk.com"); return false; } if(desc=="") { alert("please fill Feedback field"); return false; } } else { document.form1.submit(); } } </script> </head> <body background="images/blue-background.jpg"> <table bgcolor="#FFFFFF" width="1028" height="700"border="0" align="center" cellpadding="0" cellspacing="0"class="imgborder"> <tr> <td width="850" height="102" ><img src="images/LogoPBSRed_01.gif" width="676" height="98" alt="" /></td> <td width="297"><!-- Use of this code assumes agreement with the Google Custom Search Terms of Service. --> <!-- The terms of service are available at http://www.google.com/cse/docs/tos.html --> <?php include"form.html" ?> <script type="text/javascript" src="http://www.google.com/cse/tools/onthefly? form=searchbox_demo&amp;lang="></script></td> </tr> <tr> <td height="18" colspan="2" valign="top"><img src="images/LogoPBSRed_03.gif" width="1147" height="17" alt="" /> <tr>




<td height="21" colspan="5" align="left" valign="top"><?php require_once('ddtabdemos.php'); ?></td> </tr></td> <td height="2"></tr> <tr> <td height="514" colspan="2" valign="top"><table width="1075" border="0" bgcolor="#FFFFFF"> <tr> <td width="206" height="239" valign="top"><table width="206" height="341" border="0"> <tr> <td width="200" height="337" valign="top"><table width="200" height="384" border="0"> <tr> <td height="156" valign="top"> <?php include "sidemenu.php" ?></td> </tr> <tr> <td height="222" valign="top"><?php include "inde.html" ?></td> </tr> </table></td> </tr> </table> </td> <td width="786" height="239" valign="top"><table width="786" height="290" border="0"> <tr> <td height="37" align="center" valign="middle" class="TopicHeadings">Add Your Comments and Feedback Here </td> </tr> <tr> <td height="147" align="center" valign="middle"><form id="form1" name="form1" method="post" action="?action=insert"> <p class="Admin_Panle_Heading">Name : <label> <input type="text" name="name" id="name"> </label> </p> <p class="Admin_Panle_Heading">Email : <label> <input type="text" name="email" id="email" /> </label> </p> <p class="Admin_Panle_Heading">Feedback : <label> <textarea name="desc" id="desc"></textarea> </label> </p> <p> <span class="Admin_Panle_Heading"> <label class="Admin_Panle_Heading">


<input name="button" type="button" id="button" value="send" onclick="validate()" /> </label> </span></p> </form></td> </tr> </table></td> <td width="69" height="239" align="right" valign="top">&nbsp;</td> </tr> <tr> <td height="61" colspan="3" align="left" valign="top"><table width="895" height="40" border="0" align="center"> <tr> <td width="724" height="15" align="center"><a href="copyright.php" class="textbold">All Copy Rights Protection 2011@Khalid| Development Team</a></td> </tr> <tr> <td height="15" align="center" class="textbold"><a href="index.php" class="textbold">Home</a> | <a href="AboutUs.php" class="textbold">About us</a> |<a href="team.php" class="textbold"> Contact us</a></td> </tr> </table> <a href="#" class="textbold"></a></td> </tr> </table></td> </tr> </table> </body> </html>


Coding For Admin login

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <link href="Stylesheet.css" rel="stylesheet" type="text/css"> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Peshawar Busniess School</title> <style type="text/css"> <!-.style1 {color: #FFFFFF} --> </style> <script language="javascript"> function validate() { var document.form1.username.value; var document.form1.password.value; if (user == "" || pass == "") { alert ("Please Enter User Name"); document.form1.username.value = " User Name "; return false; } } </script> </head> <body background="../images/blue-background.jpg"> <table width="900" height="551"border="0" align="center" cellpadding="0" cellspacing="0"class="imgborder" bgcolor="#FFFFFF"> <tr> <td width="683" height="102" ><img src="images/LogoPBSRed_01.gif" width="676" height="98" alt="" /></td> <td width="224"><img src="images/LogoPBSRed_02.gif" width="224" height="98" alt="" /></td> </tr> 48 pass = user =

<tr> <td height="18" colspan="2" valign="top"><img src="images/LogoPBSRed_03.gif" width="905" height="16" alt="" /> <tr> <td height="21" colspan="5" align="left" valign="top"></td> </tr></td> <td height="2"></tr> <tr> <td colspan="2" valign="top"><table width="888" height="256" border="0"> <tr> <td width="877" height="35" align="center" valign="top" class="TopicHeadings">ADMINISTRATOR AREA </td> <td width="10" rowspan="2" align="left" valign="top">&nbsp;</td> </tr> <tr> <td height="168" align="center" valign="top"><table width="450" height="164" border="0"> <tr> <td width="444" height="21" align="center" bgcolor="#1E639E"><span class="TopicSubHeadings style1">ADMINISTRATOR LOGIN</span></td> </tr> <tr> <td align="center" valign="top"><form name="form1" method="post" onSubmit= "return validate();" action="verify.php"> <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" class="imgborder"> <tr> <td width="35%" height="26" align="left" class="TopicHeadings"><div align="right" class="pt10_red"><span class="TopicHeadings">UserName:</span>&nbsp; </div></td> <td width="65%" height="26" align="left" class="TopicHeadings"> <div align="left"> <input name="username" type="text" class="TopicSubHeadings" id="username" maxlength="15"> </div></td></tr> <tr> <td height="26" class="TopicHeadings"><div align="right" class="pt10_red"><span class="tblbluetd">Password:</span>&nbsp;</div></td> <td height="26" align="left" class="TopicHeadings"> 49

<div align="left"> <input name="password" type="password" class="TopicSubHeadings" id="password" maxlength="15"> </div></td> </tr> <tr> <td height="26">&nbsp;</td> <td height="28"><div align="left" class="tblbluetd"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input name="signin" type="submit" class="TopicSubHeadings" id="signin" value="Sign In"> &nbsp;&nbsp;</div></td> </tr> </table> <div align="center"></div> </form></td> </tr> </table></td> </tr> </table></td> </tr> <tr> <td colspan="2"><table bgcolor="#FFFFFF" width="890" border="0"> <tr> <td width="900" align="center" valign="top" class="ReadMore"><a href="#" class="textbold">All Copy Rights Protection 2011@ khalid| Development Team</a></td> </tr> <tr> <td height="19" align="center" valign="top" class="textbold">Home | About us | Contact us </td> </tr> </table> </body> </html>


This web based system is a full online application for a normal user and specially for the students of Peshawar business School. Users can easily check out news and events which takes place in Peshawar Business School, they can view their results, download items and the courses announced by the Peshawar Business School,

More manageable
Web based systems need only be installed on the server placing minimal requirements on the end user workstation. This makes maintaining and updating the system much simpler as usually it can all be done on the server. Any client updates can be deployed via the web server with relative ease

Highly deployable
Due to the manageability and cross platform support deploying this web based application for the end user is far easier. They are also ideal where bandwidth is limited and the system and data is remote to the user.

Reduced costs
This Web based System can dramatically lower costs due to reduced support and maintenance, lower requirements on the end user system and simplified architecture. By further streamlining your business operations as a result of your web based application additional savings can often be found. Finally this is a good web based system through which students can check their attendance and results record, and they can find out every time of information about the institute.


References Books:

Roger R. Pressman , Software Engineering: A Practitioner's Approach , 7th Edition, January 2009. Larry E. Ullman, Effortless E-Commerce with PHP and MySQL, October 2010. Larry E.Ullman, PHP and My SQL for dynamic websites, 2 nd Edition, June 2005. Jeffery Hoffer, February 2008. Modern Database Management, 9th Edition ,

Websites http://www.php.net http://www.zend.com http://www.apache.com http://www.mysql.com http://ww.pageresource.com http://www.codeguru.com http://www.functionx.com http://www.thesitewizard.com http://www.javascript.com http://www.dynamicdrive.com