Sie sind auf Seite 1von 91

A Project Report on

“COLLEGE INFORMATION SYSTEM”


(Sub module: STAFF)

Submitted
In partial fulfillment of the requirement of degree of
Master of Computer Applications
(Session 2006 – 2009)

Undertaken at
CETPA INFOTECH PVT LTD
#30, 2nd Floor, Parsavnath Bibhab Plaza,
C-2, ALPHA Ist,
GREATER NOIDA

Submitted By:

UDAYAN MAITI
0604714056
Under the supervision of

Internal Supervisor: External Supervisor:


Mr. Rekh Nath Singh Mr. Anil Singh
Deptt. Of Computer Application Director, Cetpa Infotech

Dr. VSICS , Kanpur

Dr.Virendra Swarup Institute Of Computer


Studies,Kanpur
CERTIFICATE

This is to certify that the project report entitled “COLLEGE INFORMATION

SYSTEM” submitted by Mr.Udayan Maiti is a bonafide piece of work conducted

under my guidance. No part of this work has been submitted for any other degree

of any other university. The data sources have been acknowledged. It may be

considered for evaluation in partial fulfillment of the requirement for the award of

degree of Master of Computer Applications.

(Signature)

2
PREFACE

This report deals with “COLLEGE INFORMATION SYSTEM” project and by


using this, I tried my best to computerize the work of college, which make it easier less
error prone. This report includes existing system study and its limitations. The proposed
system eliminates limitations of existing system and it has its own features. The report
also includes the screens, tables and reports.

The invention of the computer is regarded as a significant step towards the progress of
the mankind. Computer is highly sophisticated electronic device used for accurate and
speedy manipulation based on certain steps of possible that computer perform most of
the human brain. To support life as fast as today, computer is a necessary rather than a
facility. The work which early computers are used to do was mainly to solve
mathematical problems. However, today computers are used in almost every field.

The communication between computer and its user is through some language. There
are number of programming language available to the programmer.

3
ACKNOWLEDGEMENT

The accomplishment of this project would have not been possible individually without
the encouragement, assistance and valuable support from various sources. Thus my
whole hearted thanks to “Almighty”. Knowledge and Co-operation are essential for
success in any project field.

No creative work is possible in isolation. I need guidance, motivation at every step of


my progress. I would like to add a few heartfelt words for the people who were the part
of this project in numerous ways.

My heartfelt gratitude to Mr. Rekh Nath Singh , Head of Department of MCA,Dr.


VSICS ,Kanpur who gave me the opportunity to emerge as professionals in the fields of
computers.

I extend my heartfelt thanks to CETPA INFOTECH PVT. LTD, GREATER NOIDA for
giving me an opportunity to work in such good professional environment and have a
good experience of creating Website.

I would like to extend my profound thanks to Mr. Anil Singh, Director of CETPA
Infotech for providing all the support in the lifetime of the project and her valuable
motivation and time to time discussions which kept a constant vigil on the progress of
the project.

In the end I would like to thanks my parents who help me directly or indirectly in the
completion of this project.

4
Table of Contents

1. Overview of the Organization………………………………………….


2. Profile of problem assigned………………………..…………………..
3. Study of existing system……………………………………………….
4. System Requirements………………………………………………….
4.1 Problem Statement
4.2 Functions to be Provided
4.3 Processing environment-H/W, S/ W
4.4 Acceptance Criteria
5. Feasibility Study
6. Project Plan
6.1 Team Structure
6.2 Development Schedule
7. System Requirement Specification (SRS)………………………….
7.1 External Interface and Data Flow
7.2 DFD and Data Dictionary
7.3 Functional and Performance specification
8. Design……………………………………………………………….….
8.1 Detailed DFD and Structure Design
8.2 Data Structures, Database and File Specification
9. Coding (Specimen pages)
10. Test Plan………………………………………………………….…....
10.1 Test Cases Design
10.2 Test Results
11. Implementation………………………………………………..…….…
12. Project Legacy………………………………………………….……...
12.1 Current status of the project
12.2 Technical and Managerial lessons learnt
12.3 Future Recommendations
13. Bibliography

5
1. BRIEF OVERVIEW OF THE ORGANIZATION
CETPA Profile

CETPA is the mission, which is working for the promotion of computer education and
technology in India and abroad. We are the Professionals who are united together and
working for the promotion of technology. To achieve our goal, we have made
collaboration with a number of institutions and firms. CETPA provide open platform for
the development of the various computer software. We are the part of Linux Promotion
Organization. CETPA has named as OPEN PLATFORM MASTERS by Open Platform
Organization (OPO).

The acronym of A CETPA is COMPUTER EDUCATION AND TECHNOLOGY


PROMOTION ASSOCIATION. CETPA Group includes three main concerns viz. A
CETPA Education, A CETPA Development and A CETPA Consultancy Services. They
conduct Course Programs for professionals and engineering students in various latest
technologies such as .NET, VHDL, Embedded System, CATIA, MATLAB, Linux, Java,
J2EE, J2ME, PRO-E, AutoCAD, Linux, Unix . A CETPA InfoTech is also working
towards the development of software, high level applications and embedded system
products in conjunction with our premier goal, which is promotion of technology.

The main concerns of the organization are following-

A CETPA EDUCATION: A CETPA is always dedicated to provide quality course to


students in latest technologies of duration like 4 weeks, 6 weeks, 6 months etc. A
COLLEGE also conducts on campus course programs to give course to students in
their college campus itself.

A CETPA DEVELOPMENT: A CETPA is also working towards the development of


software, high level applications and embedded system products also.

A CETPA CONSULTANCY SERVICES: A CETPA is one of the leading agencies in the


field of Placement Services from Supervisory Level to Top Management Level. They
have distinguished themselves by providing excellent and most reliable services to
various industries / establishments/ organizations/ institutions. They provide end to end
human resource services right from recruitment of personnel to development and
alignment of their capabilities to organizational vision.

A CETPA needs an automated system for managing database of these course


programs, for management of their employees’ record, for handling accounts and
placement services. They need an interactive application that they can access from all
of their branches and also a platform from where any student can register him/herself
for the course programs, placement services and can get updates for the same.

CETPA Objectives

6
• Promote Computer Education & Technology.
• Open platform for the development jobs
• Provide World Class Computer Education
• Organize Paper Presentation & Quizzes.
• Organize Conference & Seminars.
• Collaboration with Other Institutions.
• Launch Research Paper & Projects of the Members.
• Research for Advance Technology.
• Honor Outstanding Personalities.

CIPL: Cetpa Infotech Pvt. Ltd. is a well known company mainly deals in software
development, web development, web hosting & embedded products development, like
moving message display, token display system etc.

10000 2007
2002
8000 2006
6000
2005 2003
4000
2004
2000
2003 2004
0
2002
STUDENT
2005
2006
2007

CETPA InfoTech Pvt. Ltd. is an organization, which was established in the year 2002
and since last six years it has become the leading Training Program Provider in the
Northern India. And also since last six years CETPA InfoTech has captured many areas
outside India.

2. PROFILE OF PROBLEMS ASSIGNED

7
COLLEGE INFORMATION SYSTEM is used to maintain the database of entire
college infrastructure including staff, student, library, administration, hostel, parents,
sports etc. The registration process of course is consuming lots of time and man efforts.
Managing details of such large number of students’ data using manual system is very
difficult. Also managing payment details needs to be computerized for better
maintenance and performance. Placement services, students enrolled for these
services and managing record of visiting college, placed students etc also becomes
unmanageable manually as it consumes lots of time and for small task it takes more
number of people to handle the task. Also to produce any management information
details report is very difficult, these reports are very necessary for management of
organization for their decision making.

Thus there is need of system which can be used resolve all the above mentioned
problems for the organization and hence improve performance and efficiency. Also
reduces the cost and man effort in organization.

2.1Modules involved in the project:


Student Registration Module for Course
Training and Placement
Staff Management
Account Management
Admin Module to manage and support all the above modules
Alumni Management
Module to generate MIS reports for all above modules

2.2 MODULES OF STAFF MANAGEMENT

• Staff profile

• Staff leave report

• Staff feedback

• Staff assignment

• Staff salary

• Staff progress report

8
• Staff time table

• Exam schedule

• Staffs leave application

• Staff mail

• Staff attendance

• Library

The project provides following information:

• Information of all course programs to be conducted at different branches of a


college to the students.

• Detailed information of all course contents, faculty profile etc to the students.

• Platform to provide a complete registration process for the course programs.


o There should be facility on the web site from where student can fill the
registration form. After filling form a registration slip should be generated
that will be send to student to their email id also. Student need to send this
slip to college information system office along with their DD. After
receiving the registration slip and Demand Draft of student should be
confirm from web site admin. The confirmation slip should be
automatically sent to students on their email ID. That they need to show
on the time of course.

• To provide facility to manage their employee.


o Facility to add, update the employee profile should be present on the web
admin. Employee profile should contain their photo, date of joining and
other necessary details also.

• To manage the placement services of the organization.


o For placement many companies used to come in organization. Facility to
add these companies, set the test date of these companies, profile of
students enrolled for the companies. Admin should be able to set, update
and view details of these.

• Provide platform from where student register themselves for placement activity
conducted at college information system. Students should have facility to upload

9
their resume, update their profile, photo and choose the companies they wish to
appear for the placement test.

• Bulk email sending facility to send emails for college information system students
for giving some information, updates on course programs and to be in contact of
their registered students.

• Web application should have admin facility that can be accessed to only
authorized users with different role and responsibility.

• Admin should have facility for


o Confirmation of students after receiving their DD.
o Facility to send confirmation slip on the email ID of student.
o Facility to manage/ monitor details the payments made by students.
o Facility to provide different MIS reports based on different criteria.
o Facility to add, update and delete course program
o Facility to add, update their employee status
o Facility to manage placement services.
o Facility to add, update students of course programs.
o Facility to view student profile.

3. STUDY OF EXISTING SYSTEM

INTRODUCTION TO EXISTING SYSTEM

At present the job of making reports, entries and calculations are done manually,
which is tedious job and care has to be taken of each and every transaction with the
clients.

Presently, all the entries are maintained on paper/register, which increases the
additional job of maintaining the paper work. At present registers are maintained of
various activities such as staff, student, accounts etc. A report is later prepared
manually on pre-defined format printed on paper.

The details of various entries are recorded in the various registers or books
maintained. The requirements are looked in and status of each client is seen from
various reports generated.

DRAWBACKS OF EXISTING SYSTEM

10
The existing system has a lot of drawbacks and limitations. Some of these are
mentioned below:

1. TIME CONSUMING
The existing system leads to lot of time wastage. The accounts clerk, for
instance, has to check whether all the students have cleared their dues. The
delays also occur in calculating the total amount of a balance using a pocket
calculator. A lot of time is wasted in preparing reports of customers, pending
balances.

2. PAPER WASTAGE
Maintaining separate books for students, staff, reports result in lot of paper
wastage. Also extra copies of ST number and Tran No issued to the member for
record of registration have large demand for paper material.

3. DATA MAINTENANCE
The brain storming data maintenance of existing system is it’s another drawback.
It is cumbersome to update all database books separately after registration and
departure of clients.

4. TOO MUCH BOOK CONSULTATION


To prepare a report department wise, one has to go through all the information in
a specified period of time. Similarly, one has to consult to too many books for
preparing various other reports, which requires lot of human effort from the
agent’s end.

5. ERRONEOUS RESULTS
Many times, the system leads to inaccurate results. The correction of these errors
becomes even more difficult. As an example, continuous feeding of data into a
calculating device for each receipt issued may result into wrong input at any time
thus leading to errors in total amount receivable from the client. These errors may
lead to dispute in this case. In the same way, errors in reports may hinder the
decision making process, thus leading to losses.

3.3 PROPOSED SYSTEM

Proposed system is expected to improve the existing system and provide value-added
solution to the problem. The proposed system must be presented to the organization
with some indication performance keeping in view the following factors:

1. Time: Response, Access, Process.


2. Accuracy: Frequency, Significance and error correction.
3. Reliability: Stability, Durability.
4. Security: Legal access.

11
5. Flexibility: Variability, Sensitivity.
6. Efficiency: Performance ratios.

ADVANTAGES OF THE PROPOSED SYSTEM

The proposed system overcomes the limitations of the existing system. In addition it
has some additional advantages. The proposed system is advantageous in the
following ways:

EASY TO USE

The proposed system, much alike now-a-days software applications, is a user-


friendly and menu driven system. The names of menu items explain their purpose.
The user has to enter less data records than existing system and receives more
satisfied output. User manuals are provided in case user still needs any type of help
about the project working.

1. TIME SAVING
Most of the manual work in existing system is now automatically carried out by the
proposed system. Automatic calculation of the balance amount and no consultation
to the books for preparing the reports saves a lot of time which can be utilized more
effectively.

2. AUTOMATIC DATABASE UPDATION


The database of clients and agents is automatically updated. Rather than waiting for
some duration, these databases are continuously updated after each entry of client
or agent.

3. REPORT PRESENTATION
Reports are displayed in fixed proper format on the screen as well as on the paper
with negligible user efforts. The user displays these reports with just a click.

4. EASY INSERTION OR DELETION


It is simple to add new record by just specifying the initial information about the
client. This new client’s information can be retrieved in the same way as existing
client’s information. After the settlement with the client, his information is thereafter
deleted.

12
5. AWARE USERS
This system displays various warning messages for the users. The system will not
allow violating various key constraints and invalid data entry while adding or
removing client’s or agent’s information and displays appropriate messages. The
user is comparatively more aware then existing system as he doesn’t has to wait for
end of days to check out these conditions. This side-by-side awareness helps to
maintain a better database.

6. REDUCED CHANCES OF ERRORS


The input/output errors are reduced in this proposed system. There is no chance of
error while generating various reports as it is done automatically by the system.
Even in registration process, the chances of errors due to garbage in, garbage out
are reduced to great extent.

7. ABILITY TO ANALYZE THE RESULTS QUICKLY


The working of the system and report presentation is quite fast and reliable enough
which help in great deal in analysis the results quickly.

4. SYSTEM REQUIREMENTS

4.1 PROBLEM STATEMENT

The client requires the services of CETPA resources in supporting the client’s online
application development team.

The project is categorized in following modules:


• Student Registration Module for Course
• Placement services management
• Staff Management
• Account Management
• Admin Module to manage and support all the above modules

4.2 FUNCTIONS TO BE PROVIDED

13
The overall objective of the team was to ensure use of integrated best practices;
leverages scarce and expensive technical resources (people) across the enterprise
promote operational excellence and provide best services to the police station.

With mature global delivery model, was able to put together an onsite-offshore team,
which provided end-to-end standardized and automate scripting services to colleges in
which it provide information to all the students, staff members and also to the alumnus

Some functions are:

1) Date by list of students that are enrolled for training programs in specific
branch.
2) Training course wise list of enrolled students in specific branch
3) Branch wise list of registered students.
4) Registration status report for any training program.
5) List of all students enrolled in a specific training program
6) Payment details report for each student
7) Payment details report for training program
8) Report of working status of the employee of the college

4.3 PROCESSING ENVIROMENT

Here, the basic question is, “Is it possible to build this application?” first we must
investigate the technologies to be used on the project. The problem with technology is
that everything works perfectly on marketing slides, but when you get the technology in
house, it is often a very different story. This is a fundamental task of the elaboration
phase and may take several weeks or months, but will pay for itself when it verifies how
your technology choices work will.

• The system should be a web application.


• The database should be centralized as all the branches should have
synchronized data.
• The website should run on all operating systems.
• The website should run all browsers like internet explorer 5.0 and above,
Netscape navigator, Mozilla fire fox etc.
• Admin should be secure from unauthorized access.

Hardware Requirements

14
• PC with 5 GB hard-disk (for installation)
• 256 MB RAM (minimum)

Software Requirements

• Windows 98/XP
• MS-SQL server 2005
• Microsoft Visual Studio 2005
• IIS for MS

Platform Used / Data Base

Front End: ASP.net


Back End: SQL Server

Why .NET?

• Interoperability between languages and execution environments


• Uniformity in schema or formats for Data Exchange using XML, XSL
• Extend or use existing code that is valid
• Programming complexity of environment is reduced

The .NET Framework is…

1. A component model for the internet

2. The new approach to building large scale distributed systems for the Internet

3. Provides the capability to integrate multiple devices

4. Built around the tools and protocols (XML, WSDL, SOAP, HTTP) that are

becoming standard on the Internet

15
The .NET in ASP.NET stands for the .NET Framework, a set of objects and
blueprints from Microsoft for building applications. All applications developed
under the .NET Framework; including ASP.NET applications, have certain key
features that ensure compatibility, security, and stability.

Fig:- .NET Framework Architecture

The .NET Framework Design Goals

1. Component Development for the Internet


2. "Cross-Language Development”
3. Inheritance, Debugging, Exception handling
4. Reliability and Security

16
5. Simple Development and Deployment
6. Device-agnostic

4.4 ACCEPTANCE CRIETERIA


The target end users of the application after testing are:

• A qualified manufactures installation engineer for the initial parameter set


creation and customization.
• A qualified tester at the client’s site to ensure the acceptance testing of the user
by making him aware about the testing criteria.
• An assurance about maintenance of the application and perform regression
testing i.e. testing the updations in the application whenever necessary or
required.

The user of the system is provided with the sample parameter set projects defining
alternative system configurations and a context sensitive help system that enables a
user to navigate through the system. The other website information as manuals that
describe applications functionality.

5. FEASIBILITY ANALYSIS

A feasibility study investigates the practicality of the proposed solution. It asks the
question “is it suitable?” A designer or engineer will normally answer the question from a
design or engineering point of view (“is it possible to design\build\test it?”).
But the feasibility study must answer the question from the user’s point of view.
Systems designed to solve problems must involve the people who will be using,
managing and paying for them.
An important outcome of the preliminary investigation is to determine that whether the
system requested is feasible. Depending on the results of the preliminary investigation
is to determine that whether the system requested is feasible. Depending on the results
of the preliminary investigation the survey was expanded to a more detailed feasibility
study.

Feasibility Study is a test of a

17
• System proposal according to its workability
• Impact on the organization
• Ability to meet user needs and
• Effective use of resources.

It is a test of system proposal according to its workability, impact on the organization,


ability to meet user needs and affective user resources. The objective of feasibility study
is not to solve the problem but to acquire a sense of its scope. During the study, the
problems definition is crystallized and aspects of the problem to be included in the
system are determined. Consequently, cost and benefits are estimated with greater
accuracy at this stage.

If the feasibility study is to serve as a decision document it must answer three key
questions:

• Is there any new better way to do the jobs that will benefit the user?
• What are the costs and savings of the alternatives?
• What is recommended?

Almost every project is feasible. Unfortunately, the testing of a computer based


system/website is more likely to be plugged by a scarcity of resources and difficult
delivery dates. It is both necessary and prudent to evaluate the feasibility of the project
at the earliest possible time. Feasibility entails an identification description, an
evaluation of the candidate system, and selection of the best system for the job.

The most successful system projects are not necessarily the biggest or most visible in
business rather those that truly meet user expectations. Most projects fail because of
inflated expectations than for any reason.

In any feasibility study, three main factors play the lead role. They are technical
factor, the economical factor. Thus to do feasibility study, the technical and economical
factors in a system testing are considered. The key considerations are as follows:

5.1 TECHNICAL FEASIBILITY

It is a measure of the practicality of the specific technical solution and the availability
of the technical expertise. It centers the arena of the technological constraints.
Technical feasibility, as the name suggests centers on the existing computer software
(hardware, software etc) and to what extent the existing software can support the
proposed solution. For example, if the current computer is operating at 80% capacity an
arbitrary ceiling-then running another application could overload the system or requires
additional hardware.

18
The candidate system is evaluated under certain aspects, in points considered are:
• Whether the existing testing technology is suitable for the system or the
new testing technology is required, and if the new testing technology is
required, then, whether it is feasible to test with that technology in the
particular span of time.

Technical feasibility is asking –do the existing staffs have the experience or technical
know-how to use the proposed solution? Will the technology be readily available.
According to the project, feasibility analysis is done about whether to do manual
testing are automated testing. And if automated testing is to be done then which tool is
to be used.
After resizing the need for the project, and project manager’s approval at hand,
technical feasibility was carried out at the company. As the testing tool needed for it
already exists, moreover the technical skills required to complete the project were also
present in the form of competent software professionals it passed the technical
feasibility test.

5.2 ECONOMIC FEASIBILITY

It is a measure of the cost effectiveness of the project or solution (often called cost
benefit analysis).
It is most frequently used method for evaluating the effectiveness of the candidate
system. The candidate system is evaluated against the various economic constraints to
know the feasibility of the project. Moreover, the cost benefit analysis of the system is
made, the procedure is to determine the benefits and savings that are expected from
system and these are compared with the cost of the system development. And if the
benefits outweigh the costs, then only the decision to design and implement the system
is taken.

Economic feasibility is asking-can the users afford the proposed solution? This is
more than just the cost of purchasing and installing a system, but must include its
running cost and its effect on other projects that use the same resources.
As in the project cost of buying the software is considered and accordingly the testing
tool was chosen for performance testing load runner tool was required which is very
costly so the clients approval was taken for using this tool as it leads to hike in the cost
of software.
The economic feasibility of the desktop application was done mainly at client side
which raised several questions that is
• Whether there are any economic benefits for testing the system?

5.3 OPERATIONAL FEASIBILITY

It is a measure of how well the solution will work in the organization. It is also a
measure of how people feel about the project.

19
The application was measured against the market adaptability i.e. what would be the
user reaction regarding the launch of website. The requirements were analyzed before
developing and testing the application, as it would be accepted or not.

5.4 SCHEDULE FEASIBILITY

Schedule feasibility is asking- can the proposed solution be operating within the time
available i.e. the testing can be performed within the remaining time after the
development. The planning has been done so that the project can be finished on time
and testing team did not lag behind the schedule.
It is a measure of how reasonable the project timetable is. In our project, the schedule
allotted is 4 months, which is sufficient for the project and the documentation to be
completed.

5.5 OTHER FEASIBILITY DIMENSIONS

Feasibility analysis involves various steps:


• Form a testing team.
• Prepare test plan.
• Enumerate potential security system.
• Viewed the various characteristics of the security system.
• Determine and evaluate a performance and cost effectiveness.
• Select the appropriate testing tool.
• Prepare and report final documents.

6. PROJECT PLAN

6.1 TEAM STRUCTURE

Team is basically consisting of six members and two mentors that guide us
throughout the project from time to time.
Member: The persons involved in gathering the information about the various aspects
of the project under taken, responsible for testing the project and reporting the Bugs
occurred in the Bugs reporting format he/she releases the working in the form of
document which are in turn reviewed by mentors.
They are required to jot down the specifications bring told by the mentors and
generate the corresponding changes for the same.
And I played the role of member of the designing team.

20
Mentor: The person responsible for generating the requirement, in turn called as client
of the product, any action taken is undergone only with the permission of
the mentor. The mentor conducts all reviews.

6.2 DEVELOPMENT SCHEDULE

The following steps were followed in developing the application:


1. Study, Analysis and Requirement Specifications
As College Information System was not having any website so I understand the system
by the documentation provided to me.

2. Design of the proposed system


The next step was to design the screen, windows and reports for the inputs and outputs.
The concerned authorities consulted during the design phase to ensure user acceptances
and not to miss out on any vital information. In the same phase, the project was broken
down into various modules.

3. Coding of the design system


A modular approach was followed, where, in each module, a well-defined procedure was
developed independently. These modules were developed to use the same database file
structure to ensure integrity.

4. System documentations

21
This stage consists of documenting the layout of entire system. It indicated the purpose
of interlinking of different modules along with the integration of the entire system.

5. Testing and Debugging


Preliminary test were done with the self-generating dummy data. After identifying and
removing errors, it was tested for all activities together.

Given below is a tentative project plan for the development of website. The actual
project plan will be prepared and published based on the scope and deliverables of the
agreement where the duration of the project may change.

6.2.1 Modules involved in the project


We can categories project in following main modules
• Student Registration Module for Course
• Placement services management
• Staff Management
• Account Management
• Admin Module to manage and support all the above modules

Module 1: Students Management

This module is used to automate the registration process. There are two ways by
which students can register themselves for course programs.
• By submitting registration form online.
• By direct Registration at college office.

For submitting registration form online following points need to develop in system.
• Provide Course program information on the web site
• Student can fill registration form online.
• After filling the form this information should be saved and a unique registration
number should be generated.
• Student should get registration done acknowledgement by a registration slip that
will have the registration number
• Facilities to send this registration slip to student’s email id for further reference.
• Then the student needs to send the registration slip along with their registration
fee demand draft to college office.
• After receiving the demand draft there should be facility to confirm the student for
the course.

For direct Registration at COLLEGE office

22
The system should have facility to enter details of direct registration also in the
system. For this a course user can computerized all these students record to the
system. This is necessary for generating the correct analysis reports that need
information of all enrolled students etc. Also the details of students in the system are
also necessary for all further communication.

Module 2: Placement services management


COLLEGE used to provide placement to its students. They conduct placement test,
students can enrolled for these test and see their results on website. This module will be
responsible for all admin task related task related to placement activities
Admin Part
From admin part will have facility for following
• To add, update the list of college
• To update the result of college test
• To view the list of enrolled students for the placement test
• To view profile of any enrolled student

Module 3: Staff Management


Using this module staff can enrolled them in college database. After enrolling they will
receive an email on their email id which contains a user name and password by which
they can login to access their account details. Email also has links for the login form
from where they can login do the following tasks
• To add, update the profile of staff
• Facility to upload resume
• Facility to upload photograph
• Facility to change password

Using this module admin department of COLLEGE can update the details of all of
their employees. From here employee admin can do the following task
• Add new employee
• Update employee details
• Upload photo of employee
• If employee is not associated with the organization facility to make him/her status
as inactive.
• Generate all employee details report
• Other Staff related facilities such as Leave, Library, Search student etc

Module 4: Admin Module to manage and support all the above


modules
Using this module administrator and other authorized user should be able to do their
respective task.

23
Tasks that will be handled by admin are
• To add new course programs
• To update the existing course programs details
• To update details of registered students
• To confirm a student registration
• To modify batch date
• To add, modify fee payment details of students
• To send confirmation or registration slip on demand to the students
• To manage employee status of organization

Module 5: Module to generate MIS reports for all above modules


Management Information System reports are necessary for the college to analyze
various things like how a branch is performing, which course is having maximum
number of registration, during which period students enrolled for course are maximum,
to note down the number of students from a particular college, or location. Payment
details during a year etc.
Managing and viewing all these reports are part of this module.

List of reports
1) Date by list of students that are enrolled for training programs in specific
branch.
2) Training course wise list of enrolled students in specific branch
3) Branch wise list of registered students.
4) Registration status report for any training program.
5) List of all students enrolled in a specific training program
6) Payment details report for each student
7) Payment details report for training program
8) Report of working status of the employee of the college

PROGRAMMING LANGUAGE AND DEVELOPMENT TOOLS

Introduction

Technologies and tools are strongly related to the approach of software development.
What the tools can or cannot do significantly impact what principles that can be used, as
well as what objectives that can be fulfilled. While selection of a particular methodology
may imply use of certain tools, the tools themselves often leave significant room for
developers to choose how to use them. The selection has therefore been based mainly
on the objectives of the project, while the methodologies were selected after the tools

24
were selected, due to the fact that technologies and tools poses certain restrictions of
how development can be done.

The .NET Framework is…

The .NET Framework is a new computing platform that simplifies application


development in the highly distributed environment of the Internet. The .NET Framework
is designed to fulfill the following objectives:
• To provide a consistent object-oriented programming environment whether object
code is stored and executed locally, executed locally but Internet-distributed, or
executed remotely.
• To provide a code-execution environment that minimizes software deployment
and versioning conflicts.
• To provide a code-execution environment that guarantees safe execution of
code, including code created by an unknown or semi-trusted third party.
• To provide a code-execution environment that eliminates the performance
problems of scripted or interpreted environments.
• To make the developer experience consistent across widely varying types of
applications, such as Windows-based applications and Web-based applications.

25
• To build all communication on industry standards to ensure that code based on
the .NET Framework can integrate with any other code.
The .NET Framework has two main components: the common language runtime and
the .NET Framework class library. The common language runtime is the foundation of
the .NET Framework. You can think of the runtime as an agent that manages code at
execution time, providing core services such as memory management, thread
management, and remoting, while also enforcing strict type safety and other forms of
code accuracy that ensure security and robustness. In fact, the concept of code
management is a fundamental principle of the runtime. Code that targets the runtime is
known as managed code, while code that does not target the runtime is known as
unmanaged code. The class library, the other main component of the .NET Framework,
is a comprehensive, object-oriented collection of reusable types that you can use to
develop applications ranging from traditional command-line or graphical user interface
(GUI) applications to applications based on the latest innovations provided by
ASP.NET, such as Web Forms and XML Web services.

The .NET Framework can be hosted by unmanaged components that load the
common language runtime into their processes and initiate the execution of managed
code, thereby creating a software environment that can exploit both managed and
unmanaged features. The .NET Framework not only provides several runtime hosts, but
also supports the development of third-party runtime hosts.
For example, ASP.NET hosts the runtime to provide a scalable, server-side
environment for managed code. ASP.NET works directly with the runtime to enable
Web Forms applications and XML Web services, both of which are discussed later in
this topic.
Internet Explorer is an example of an unmanaged application that hosts the runtime
(in the form of a MIME type extension). Using Internet Explorer to host the runtime
enables you to embed managed components or Windows Forms controls in HTML
documents. Hosting the runtime in this way makes managed mobile code (similar to
Microsoft® ActiveX® controls) possible, but with significant improvements that only
managed code can offer, such as semi-trusted execution and secure isolated file
storage.
The following illustration shows the relationship of the common language runtime and
the class library to your applications and to the overall system. The illustration also
shows how managed code operates within a larger architecture.

The main components and features of the .NET Framework in greater detail:

Features of the Common Language Runtime

The common language runtime manages memory, thread execution, code execution,
code safety verification, compilation, and other system services. These features are
intrinsic to the managed code that runs on the common language runtime.

26
With regards to security, managed components are awarded varying degrees of trust,
depending on a number of factors that include their origin (such as the Internet,
enterprise network, or local computer). This means that a managed component might or
might not be able to perform file-access operations, registry-access operations, or other
sensitive functions, even if it is being used in the same active application.
The runtime enforces code access security. For example, users can trust that an
executable embedded in a Web page can play an animation on screen or sing a song,
but cannot access their personal data, file system, or network. The security features of
the runtime thus enable legitimate Internet-deployed software to be exceptionally
feature rich.
The runtime also enforces code robustness by implementing a strict type- and code-
verification infrastructure called the common type system (CTS). The CTS ensures that
all managed code is self-describing. The various Microsoft and third-party language
compilers generate managed code that conforms to the CTS. This means that managed
code can consume other managed types and instances, while strictly enforcing type
fidelity and type safety.
In addition, the managed environment of the runtime eliminates many common
software issues. For example, the runtime automatically handles object layout and
manages references to objects, releasing them when they are no longer being used.
This automatic memory management resolves the two most common application errors,
memory leaks and invalid memory references.
The runtime also accelerates developer productivity. For example, programmers can
write applications in their development language of choice, yet take full advantage of the
runtime, the class library, and components written in other languages by other
developers. Any compiler vendor who chooses to target the runtime can do so.
Language compilers that target the .NET Framework make the features of the .NET
Framework available to existing code written in that language, greatly easing the
migration process for existing applications.
While the runtime is designed for the software of the future, it also supports software
of today and yesterday. Interoperability between managed and unmanaged code
enables developers to continue to use necessary COM components and DLLs.
The runtime is designed to enhance performance. Although the common language
runtime provides many standard runtime services, managed code is never interpreted.
A feature called just-in-time (JIT) compiling enables all managed code to run in the
native machine language of the system on which it is executing. Meanwhile, the
memory manager removes the possibilities of fragmented memory and increases
memory locality-of-reference to further increase performance.

Finally, the runtime can be hosted by high-performance, server-side applications, such


as Microsoft® SQL Server™ and Internet Information Services (IIS). This infrastructure
enables you to use managed code to write your business logic, while still enjoying the
superior performance of the industry's best enterprise servers that support runtime
hosting.

. NET Framework Class Library

27
The .NET Framework class library is a collection of reusable types that tightly
integrate with the common language runtime. The class library is object oriented,
providing types from which your own managed code can derive functionality. This not
only makes the .NET Framework types easy to use, but also reduces the time
associated with learning new features of the .NET Framework. In addition, third-party
components can integrate seamlessly with classes in the .NET Framework.
For example, the .NET Framework collection classes implement a set of interfaces
that you can use to develop your own collection classes. Your collection classes will
blend seamlessly with the classes in the .NET Framework.
As you would expect from an object-oriented class library, the .NET Framework types
enable you to accomplish a range of common programming tasks, including tasks such
as string management, data collection, database connectivity, and file access. In
addition to these common tasks, the class library includes types that support a variety of
specialized development scenarios. For example, you can use the .NET Framework to
develop the following types of applications and services:

• Console applications.
• Scripted or hosted applications.
• Windows GUI applications (Windows Forms).
• ASP.NET applications.
• XML Web services.
• Windows services.

For example, the Windows Forms classes are a comprehensive set of reusable types
that vastly simplify Windows GUI development. If you write an ASP.NET Web Form
application, you can use the Web Forms classes.

ASP.NET

ASP.NET stands for Active Server Pages, and it is Microsoft's implementation of


server-side scripting. In short, this server-site scripting basically means that a script is
parsed and executed by the server. When a user requests a web-page containing
ASP.NET, the web-server will parse code and send the result to the user, so the
ASP.NET code will never reach the user's browser. This is the exact opposite of
JavaScript.
You don't need to be a programmer to understand ASP.NET, but you should have
some HTML knowledge, as the actual design of the web page will require it.
To use ASP.NET scripts, you must have installed Microsoft's IIS (Internet Information
Services), which is a web-server included in Windows 2000 and Windows XP
Professional. It is also a part of the Windows NT 4.0 Option Pack, which can be
downloaded from Microsoft's web-site. If IIS is not already installed on your computer,
you can install it using the Add/Remove Programs section within the Windows Control
Panel. The ASP.NET engine is included within IIS, so you won't have to download it and
install it separately. You must have Windows NT 4.0 or later to run IIS, so if you use

28
Windows 98 you should install PWS (Personal Web Server), which is the smaller
brother of IIS.
You can use ASP.NET code to do a lot of things: dynamically edit, change or add any
content to a web-page, access and query databases, read or write files, connect to
remote computers, create images - the only limit is your imagination. The most obvious
difference from HTML files is that ASP.NET files have the extension ".ASP.NET", but
this doesn't mean that you need to separate the ASP.NET code from the HTML code in
different files; you can use one file which will include both HTML and ASP.NET code.
The web-server won't mind at all, it will parse the ASP.NET code and forget about the
HTML code. Depending on your ASP.NET code, the web-server will output some HTML
instead of the ASP.NET code, so the web-browser will only see HTML.
This provides a higher level of security, because nobody will be able to view your
ASP.NET code, and copy it and use it on their own web-page. Furthermore, you don't
need any extra components for your web-browser, because the ASP.NET files are
returned in plain HTML, so they can be viewed in any web-browser.

ARCHITECTURE OF ASP.NET

Web Server ASP.net Runtime Env

(.aspx)
HTTP Aspnet_isapi.dll
Machine.config
REQUEST
(.asp)
Asp.dll
Web.config

App Domain

HTTP HTTP Handlers


RESPONSE

Process Req

inet_info.exe Aspnet_wp.exe

In case you don't have Windows, you should know that some companies also didn't
like the fact the ASP.NET was only available for Windows platforms, so they decided to
adapt ASP.NET to other operating systems. So they created technologies like Chili
ASP.NET and iASP.NET, which allow you to take advantage of the ASP.NET
technology while using other web-servers, not just IIS. And because other web-servers
run on many operating systems - like Apache web-server - this extends the ASP.NET
technology too, so it can run on other operating systems.

29
Active Server Pages or ASP.NET, as it is more commonly known, is a technology that
enables you to make dynamic and interactive web pages. ASP.NET uses server-side
scripting to dynamically produce web pages that are not affected by the type of browser
the web site visitor is using. The default scripting language used for writing ASP.NET is
VBScript, although you can use other scripting languages like JScript (Microsoft's
version of JavaScript). ASP.NET pages have the extension .ASP.NET instead of .htm,
when a page with the extension .ASP.NET is requested by a browser the web server
knows to interpret any ASP.NET contained within the web page before sending the
HTML produced to the browser. This way all the ASP.NET is run on the web server and
no ASP.NET will ever be passed to the web browser. Just simply just simply opening
the page in a web browser cannot run any web pages containing ASP.NET. The page
must be requested through a web server that supports ASP.NET, this is why ASP.NET
stands for Active Server Pages, no server, and no active pages. As ASP.NET was first
introduced by Microsoft on its web server, Internet Information Services (IIS) that runs
on Windows 2000/XP Pro/NT4, it is this web server that ASP.NET pages usually run
best on. For those of you running Windows and wish to play around with ASP.NET on
your own system you will need to install Microsoft's Internet Information Services (IIS).
Lucky IIS or its micro version Personal Web Server (PWS) comes free with Windows.
For Windows users you can find Internet Information Services (IIS) or Personal Web
Server (PWS) in the following places: -
 Windows 2000/XP Pro - IIS can be found in 'Add/Remove Programs' in the
'Control Panel'.
 Windows 98 - PWS can be found under 'add-ons' on the Windows 98 CD.
 Windows ME - IIS and PWS are not supported on this operating system.
 Windows XP Home Edition - IIS and PWS are not supported on this

ASP.NET Programming
Active Server Pages (ASP.NET) programming is writing code to facilitate ASP.NET
functionality on websites. Such functionality includes the delivery of dynamic, database-
driven content to website viewers without taxing the server-side system. ASP.NET
programming involves writing ASP.NET files and HTML files. The ASP.NET code is
placed within the HTML pages, enclosed in special tags. When you need to make
changes in the ASP.NET programming code, you need change only the ASP.NET files;
the HTML files, which do nothing but go and get the ASP.NET files' coding, need not be
changed.
ASP.NET files have a file extension of .aspx, much like HTML files have file
extensions of either .htm or .html. The HTML files that contain the ASP.NET instructions
enclose those instructions within tags that look like this: Notice that unlike HTML, the
ASP.NET ending tag does not include a slash.
ASP.NET programming involves scripting in Visual Basic Script, Jscript, Perl, Python,
or other languages. Certain modifications are necessary, but the programmer who has
written code in these other languages will find ASP.NET programming to be familiar

30
indeed. The languages that work the best for ASP.NET programming are VBScript and
Jscript.
One common use of ASP.NET programming is to gather data from the user and
display it at another time. For example, you can use ASP.NET programming to query
the user to type in his or her name and then display that name on subsequent pages
during the user's visit. Once the name is input, the ASP.NET programming protocols
transfer that data to the requisite database, from which it can be accessed by other
HTML pages that contain the coding guiding such requests. Such data requests and
displays can be as complex as you want to make them.
Written data isn’t the only thing that can be uploaded to your website using ASP.NET
programming. You can design forms that allow users to upload image files to your site
as well. Real estate websites are perfect examples of sites that can take advantage of
this functionality.
ASP.NET programming also comes in handy when your HTML pages and what they
display involve accessing large databases containing tons of data. In this case, you will
really appreciate the benefits of not having to change HTML files when you update the
parameters of your databases. ASP.NET programming makes this process simple.
Connecting to a Database
One of the major features of ASP.NET is database connectivity. ASP.NET can be
used to connect primarily to Microsoft Access or SQL Server database. an ASP.NET
script can contain Structured query language (SQL) statements to insert, delete and
update records within a database (to name just a few) For example:
SELECT * FROM myTable WHERE myValue = 'myValue'

INSERT INTO myTable (value1) VALUES ("myValue")

7. SYSTEM REQUIREMENTS SPECIFICATION (SRS)

The software requirement specification is produced at the culmination of the analysis


task. The function and performance allocated to software as part of system engineering
are refined by establishing a complete information description, a detailed functional
description, a representation of system behavior, an indication of performance
requirement and design constraints appropriate validation criteria, and other information
pertinent to requirement.

The introduction to software requirements specification states the goals and


objectives of the software, describing it in the context of the computer based system.
The Information Description provides a detailed description of the problem that the
software must solve. Information content, flow and structure are documented. A

31
description of each function required to solve the problem is presented in the Functional
Description. Validation Criteria is probably the most important and ironically the most
often neglected section of the software requirement specification

7.1 External interface and data flows

Following is a template for the RS document. Some example requirements are


entered in to it to show how to use the template. Make sure that you enter even the
smallest/most trivial requirements also. That would help in validating the system during
testing.

No. Requirement Essentia Description of Remarks


l/ the Requirement
Desirabl
e
RS The system Essential A login box should The logins are
1 should have a appear when the assigned by the mail-
login system is invoked. admin
RS The system Essential Help about the The campaign policy
2 should have help various features of should also be part of
screens the system should the help.
be provided in
sufficient detail in
a Q&A format.
RS The system Desirable This feature will Since the application is
3 should ‘lock’ the improve the going to be used only
login id if wrong robustness of the by the employees, this
password is application feature is not essential.
entered 3 times in However, if time is
a row there, this will be
implemented.
RS The system Essential These features will Formulae can be
4 should have not make changed easily since it
formulas on the unnecessary calls is an intranet
client side to back end and application
will reduce the
network traffic.

7.2 DFD and Data Dictionary

32
7.2.1 DFD - Data Flow Diagrams

A data flow diagram (DFD) is a design tool to represent the flow of data through an
information system.

A "context level" DFD can be used to show the interaction between a system and
outside entities; it can also show the internal data flows within a system. This version is
also called a context diagram. It often shows the information system as a single circular
shape with no details of its inner workings: what it shows is its relationships with the
external entities.

For a diagram to be called a DFD, it needs to show the inner workings of an


information system. The different levels of a DFD indicate how detailed it is, e.g. a Level
0 DFD is a broad overview of a system, showing hardly any detail within the system. A
level 2 DFD explodes more summarized processes and shows another level of
complexity within them. A level 3 or 4 DFD shows even more components opened up to
show their inner details.

With a dataflow diagram, developers can map how a system will operate, what the
system will accomplish and how the system will be implemented. It's important to have a
clear idea of where and how data is processed in a system to avoid double-handling
and bottlenecks. A DFD also helps management organize and prioritize data handling
procedures and staffing requirements.

Components

A data flow diagram graphically represents:

• Processes - jobs that are done with the data. A process transforms incoming
data flow into outgoing data flow.
• Data stores - files, databases, archives. They can be manual, digital or
temporary.
• External entities/terminators in a business or other system - other systems or
people beyond the control of the current system. These are the places which
provide the organization with data, or have data sent to them by the organization
(e.g. customers, partners, government bodies). External entities are sources and
destinations of the system's inputs and outputs.
• Connecting data flows - arrows show how data flows from one place to
another. Flows that cross the system boundary are known as Input Output
Descriptions. Label the arrows with the name of the data that moves through it.

DFD Principles

33
• The general principle in Data Flow Diagramming is that a system can be
decomposed into subsystems, and subsystems can be decomposed into lower
level subsystems, and so on.
• Each subsystem represents a process or activity in which data is processed. At
the lowest level, processes can no longer be decomposed.
• Each 'process' (and from now on, by 'process' we mean subsystem and activity)
in a DFD has the characteristics of a system.
• Just as a system must have input and output (if it is not dead), so a process must
have input and output.
• Data enters the system from the environment; data flows between processes
within the system; and data is produced as output from the system.

• Do not allow a single page of a DFD to get too complex - it should have no more
than 10 components. If it has more than this, combine some components into a
single self-contained unit and create a new DFD for that unit.
• Each component and subcomponent should be numbered. e.g. a top level DFD
has components 1 2 3 4 5. The subcomponent DFD of component 3 would have
components 3.1, 3.2, 3.3, and 3.4; and the subcomponent DFD of component 3.2
would have components 3.2.1, 3.2.2, and 3.2.3. This enables a developer to plan
in a top-down manner: starting with representing large concepts, and then
repeatedly breaking these objects into their components.
• All processes must have at least one data flow in and one data flow out.
• All processes should modify the incoming data, producing new forms of outgoing
data.

As you explore DFDs you will find two 'flavors’ out there: the Yourdon and Coad style,
and the gane and sarson style. They have slight differences in the way components are
shaped and where their numbering goes, for example:

Gane and Sarson data store notation

Yourdon and Coad data store notation

34
Data Flow Diagrams Of College Information System:-

Access deny

Staff Login

Accept
College
Students Login Administrator
Informatio
n
Access deny Student/Staff
System
Profile
Administrator Login

Access deny

FLOWCHART OF COLLEGE INFORMATION SYSTEM

Data Flow Diagrams Of Staff Management:-

Login Accept
Staff
Staff Administrator
Managem
ent Staff List

35
Access deny

0- Level

Staff Login database

Invalid Accept/Reject Login Details


Login
Staff
Login New Staff
1
Registratio
Registered
n
Staff login 2
detail
Staff Staff data
Profile Staff Record
3

Staff Database

Attenda
nce Attendance Details
4
Attendance DB

Salary Salary detail Salary DB


5

Assignm
Assignment DB
ent
Assignment list
6

Administrator

36
1st level DFD of Staff Management

DFD’s
LOGIN FORM

DESCRIPTION: The DFD shows the login flow of user whose account has been
created by the administrator of the system. The login process includes username and
password entry. Then the entered data with be send to the database “staff information”.
The database will respond as valid or invalid information. If it is valid, then the profile of
that particular staff member will be displayed. In case of invalid entry, the administrator
will ask for re-login.

37
LEAVE APPLICATION

DESCRIPTION: The above DFD depicts the leave account of staff members. User
requests for a leave to the administrator and admin will check his leave status from
“leave record”. If the leave status is positive i.e. leaves are left in balance, then admin
will be granted and updating will be made in the database. If no leave is left in balance,
then request for leave will be rejected. In both cases, user will be sent a response
message.

38
FEEDBACK

DESCRIPTION: The above DFD shows the feedback account of the students which is
given by the staff to their students according to the particular subject. This DFD also
update the student feedback record. This show about the performance of the student
according to the subject and teacher give comments according to that subject.

39
ASSIGNMENT

DESCRIPTION: The above DFD shows the assignment of the students which is given
by the staff to their students according to the particular subject. This DFD also update
the student assignment record. This shows the assignment of the student according to
the subject.

40
ADMIN LOGIN

DESCRIPTION: This DFD shows the employee’s new account and retrieval of
employee data from the database.

41
42
7.2.2 DATA DICTIONARY

A data dictionary is a structured repository of data about data. It is a set of rigorous of


all DFD data elements and data structure. A data dictionary has many advantages, the
most obvious is documentation. It is a valuable reference in any organization. Another
advantage is improving user communication by establishing consistent definitions of
various elements, terms and procedures. During implementation, it serves as a common
base against which programmers who are working on the system, compare their data
descriptions. Also control information maintained for each data element is cross-
referenced in a data dictionary, which makes it easy to identify them and make any
necessary changes. Finally, Data dictionary is an important step in building and
database.

Data Dictionary consists of following items:


• Data elements
• Data structures
• Data flows and data stores

Data elements
The smallest unit of data that provides no further decompositions. Data consists of
data, month, year, all these are the elements. Controls information such as the source
data of a region, can be included while describing data.

Data Structure
A group of data elements handled as a unit. For example,” phone “ is a data structure
consisting of four elements: Area, code-exchange-number-extension. A data structure
consists of a number of data elements.

Data flows and data stores


Data flows are data structures in motion, whereas data stores are data structure at
rest. A data store is a location where data structures are temporarily located.

The three levels that make up the hierarchy of data are shown below

43
DATA DICTIONARY

Subject
Table Name Table Comment Area Sub-area
This table contains the details of
Student _table all students of all courses. Technical Projects
This table contains the
Staff_table information of staff members Technical Projects
This table contains the
information of various field which
Timetable_table helps to generate the time table Technical Projects
Account_table This table contains the details of
all other modules Technical Projects
TPO_table This table contains the details
related to TPO Technical Projects

Data dictionaries do not contain any actual data from the database, only book-keeping
information for managing it. Without a data dictionary, however, a database
management system cannot access data from the database.
Most database management systems keep the data dictionary hidden from users to
prevent them from accidentally destroying its contents.

44
8. DESIGN
The most creative and challenging phase of SDLC is System Design. The
design of the system will produce the details that state how a system will meet
requirements identified during the system analysis. It describes the final systems
and the process by which it is developed .It refers to the technical specifications
that will be applied in implementing the candidate system . It also includes
construction of programs and program testing. Thus , the logical design of the
system is developed in this phase . An estimate of the impact of the candidate
system on user / organization are documented and evaluated by management.

The three main objectives which the designer has to bear in mind are
• How fast the design will be able to do the user’s work given a particular
hardware resource .
• The extent to which the design is secure against the human errors and
machine malfunction .
• The ease with which the design allows the system to be changed .
• To meet these objectives analyst and programmers use a combination of
top - down and bottom – up design.

Top – Down Design : It starts with large picture and move to the details .The
analyst and team members look at major functions that the system must provide
and break these down into smaller and smaller activities .

Bottom – Up Design : It starts with details and then moves to the big picture
.This approach is appropriate when users have specific requirements for output.

Many tools which help through the steps of system design include working
models called prototypes , to explore the look and feel of screens with the users
, and software applications , for creating these prototypes as well as for building
diagrams , writing code , and managing the development effort . These applications
fall into the category of computer - aided software engineering (CASE) tools .

45
FROM ANALYSIS
Detailed System
Input Design Documentatio
n

Design
Output Design Submitted

Desi
Abando
gn
File Design n
Agre

ed Project

Test
Process
Program
Design

DEVELOPMENT STEPS IN SYSTEM DESIGN

46
8.1 DETAILED DFD AND STRUCTURE DESIGN

The System has been designed and developed for various field offices to capture the
information about human resources. Various details about the Employee is entered in
the system with all details like Employee name, Designation, Date of birth, Station,
Region, seniority, etc. There are some major activities which is taking care by the
Employee Management System.

• Employee Management System

All of the Employee record such as his name, designation, Region of posting, station
of posting, his salary detail, seniority level, date of joining, qualification etc., is entered
into the computerized system by the Employees at various Regional Offices.

• Vacancy Position Information


This file contains the information regarding Vacancy Position at various regional
offices. Such as station, sanctioned strength, number of permanent filled posts, number
of temporary filled posts etc,

• Employee detail

This file stores multiple information of Employee. Each employee has a separate
record regarding his basic information such as his designation, region of posting ,basic
salary, seniority level, DOB, date of joining, date of retirement, qualification etc.

47
FRONT-END DESIGN

Form 1:

Existing user: This form contains the login screen for the existing user

48
Form 2:

Login Form for Staff:

49
FORM 3

Staff Profile: This form is used to show staff information

Continue…

50
FORM 4:

Staff Qualification:

51
FORM 5:

Message: Inbox

52
FORM 6:

Message: Compose

53
FORM 7:

Message: Sent

54
FORM 8:
Assignment:

55
FORM 9:

Leave Application:

56
FORM 10:

Staff Past Leave:

57
FORM 11:

Feedback:

58
FORM 12 :

Bus Details:

59
FORM 13:

Library Books:

60
FORM 14:

Staff Health Record:

61
FORM 15:

Add new Staff:

8.2 DATABASE DESIGN


STAFF MODULE TABLES

62
STAFF PROFILE TABLE

DESCRIPTION: This table stores the personal details of every staff member. The data
inside this table is not altered and thus, details are stored permanently.

STAFF ADDRESS TABLE

DESCRIPTION: This table stores the information about address of staff members. It
contains all the corresponding temporary addresses of each staff member. This will help
in preserving the old as well as new address of the member.

63
Staff Qualification:

DESCRIPTION: This table stores the information about qualification of staff

Message Table:

DESCRIPTION: This table stores the information about message

64
BOOK MASTER

DESCRIPTION: This table stores the complete book information on the basis
of which one can make a desired search

Leave Table:

DESCRIPTION: This table stores the leave application submit by staff

65
Assignment:

DESCRIPTION: This table stores the information of assignment given by staff

Bus :

DESCRIPTION: This table stores the information of bus

DATA STRUCTURES
The Database contains the tables that contain the information related to system and the
data needed to run the software. The tables are discussed in detail:

66
A college Information System
1. Profile
This Table contains the personal information of the college members
2. Admission
Table contains information of new members of the college
3. Qualification Details
Table contains education information
4. Staff Address
It contains the Address of all Employees
5. Student Address
It contains the Address of all students
6. Leave Status
Table contains information about leave status
7. Time table
Table shows the student and staff time table
8. Mail/feedback
Table contains the student and staff feedback.
9. Leave Application
Table contains record of the application applied for leave
10. Account
Table contains accounting information
11. Attendance
Table contains the attendance records
12. Library
Table contains library information
13. Exam Schedule
Table contains information of exam schedule
14. TPO
Table contains information of training and placement section
DATABASE SPECIFICATION

Employee Number is the Key of the database. The range of valid values entered below
as examples need not be taken as such. They can be modified by the team.

67
No. Field Name Range of valid Remarks
values for the field
1 Employee Number Numeric up to 5 digits The Employee Number is
in length the key field of the database
so it should be a numeric
unique key.
2 Name Up to 20 characters in Special characters like
length underscore are not allowed.
3 Project Code Up to 15 characters in Only the Super User will
length have all the powers to
add/change the project
code of any employee.
4 Location Up to 15 characters in Only the Super User will
length have all the powers to
add/change the location of
any employee.
5 IBU Up to 15 characters in Only the Super User will
length have all the powers to
add/change the IBU of any
employee.
6 Permanent Up to 50 characters in Special characters like
Address length underscore are not allowed.
7 Local Address Up to 50 characters in Special characters like
length underscore are not allowed.
8 Passport Number Up to 15 characters in Should be a unique field.
length
9 Issue Date Date field and Up to 10 Should be a valid issue date
characters in length
10 Expiry Date Date field and Up to 10 Should be a valid expiry
characters in length date greater than the issue
date
11 Issuing Office Up to 20 characters in Special characters like
length underscore are not allowed.
12 Telephone Numeric up to 8 digits Must be a numeric field
Number in length
13 Qualifications Up to 200 characters in All the educational
length qualifications must be
entered in short with
respective percentages.
14 Years of Numeric up to 2 digits Must be a numeric field. It
Experience in length gives the number of years
of work experience.
15 Organization Up to 30 characters in Gives the name of the
Name length organization, if the
employee has a work ex,

68
else Nil.
16 Duration Numeric up to 2 digits Gives the no. of years of
in length work Ex, if any, else zero.
17 Job Designation Up to 25 characters in Gives the designation of the
length employee, if he has a work
experience.
18 Description Up to 50 characters in Description, in brief, of the
length job, if having work ex. else
Nil.

9. CODING

Code for Staff profile:


Imports System.IO
Imports System.Data.SqlClient
Partial Class StaffProfile
Inherits System.Web.UI.Page

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As


System.EventArgs) Handles Button1.Click

If (Me.Button1.Text = "Update Photo") Then

Me.FileUpload1.Visible = False
Me.Button1.Text = "Change Photo"
Me.Button1.Visible = False

Me.Button1.Visible = True

Dim strsorc As String


Dim name As String
Dim dname As String
strsorc = FileUpload1.PostedFile.FileName
name = FileUpload1.FileName
dname = "c:/website/photo/" + Me.TextBox1.Text + ".jpg"

Dim destfile As New FileInfo(dname)

Dim sourcefile As New FileInfo(strsorc)

Try
If destfile.Exists Then
destfile.Delete()
End If
If sourcefile.Exists Then

69
sourcefile.CopyTo(dname, True)
End If

Catch ex As Exception

End Try
Image1.ImageUrl = "c:/website/photo/" + Me.TextBox1.Text + ".jpg"
Dim filePath As String
filePath = Image1.ImageUrl
Dim obj As New GeneralClasses

obj.updatePhotoPath(filePath, Me.TextBox1.Text)

ElseIf (Me.Button1.Text = "Change Photo") Then

Me.FileUpload1.Visible = True
Me.Button1.Text = "Update Photo"
End If

End Sub

Protected Sub Page_Load(ByVal sender As Object, ByVal e As


System.EventArgs) Handles Me.Load

Me.TextBox1.Text = Request.Cookies("Login").Value

Dim con = New


Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

Dim com As New SqlCommand("select * from member where memberID = " +


"'" + Me.TextBox1.Text + "'", con)

Dim DReader As SqlDataReader


DReader = com.ExecuteReader

DReader.Read()

Me.TextBox2.Text = DReader.GetString(1)
Me.TextBox3.Text = DReader.GetString(2)
Me.TextBox4.Text = DReader.GetString(3)

Me.TextBox5.Text = DReader.GetDateTime(4)

If DReader.IsDBNull(5) Then
Else
Me.TextBox6.Text = DReader.GetString(5)
End If

If DReader.IsDBNull(6) Then

70
Else
Me.TextBox7.Text = DReader.GetString(6)
End If

If DReader.IsDBNull(9) Then
Me.Image1.ImageUrl = "~/website/photo/missing.jpg"

Else
Me.Image1.ImageUrl = DReader.GetString(9)
End If

If DReader.IsDBNull(5) Then

Else

End If
con.Close()

End Sub
End Class
Code for mail compose:

Partial Class StaffMailCompose


Inherits System.Web.UI.Page

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As


System.EventArgs) Handles Button1.Click
Dim ObjNewTemp As New Data.SqlClient.SqlConnection
Dim Serial As String
Serial = New Generate().GenerateSerial("Msg", "Message")

Dim _ObjSelect As New _Connection


ObjNewTemp = _ObjSelect.Connect()
Dim Subject As String
Dim Message As String
Subject = Me.TextBox3.Text
Message = Me.TextBox4.Text
Dim SourceName As String
Dim DestinationName As String
SourceName = Request.Cookies("Login").Value
DestinationName = TextBox1.Text

Dim _INSERT As New System.Data.SqlClient.SqlCommand("insert into


Message values
(@_SerialNo,@_SourceID,@_DestinationID,@_Subject,@_Message,@_DateAndTime,@Typ
eOfMessage,@_Status)", ObjNewTemp)
'msgbox(Serial)
_INSERT.Parameters.AddWithValue("@_SerialNo", Serial)
_INSERT.Parameters.AddWithValue("@_SourceID", SourceName)
_INSERT.Parameters.AddWithValue("@_DestinationID", DestinationName)
_INSERT.Parameters.AddWithValue("@_Subject", Subject)
_INSERT.Parameters.AddWithValue("@_Message", Message)
_INSERT.Parameters.AddWithValue("@_DateAndTime", Now)
_INSERT.Parameters.AddWithValue("@TypeOfMessage", "MSG1003")

71
_INSERT.Parameters.AddWithValue("@_Status", "True")

_INSERT.ExecuteNonQuery()
_ObjSelect.Disconnect()

End Sub

Protected Sub Page_Load(ByVal sender As Object, ByVal e As


System.EventArgs) Handles Me.Load
Response.Cookies("Message").Value = "Message"

Dim ObjNewTemp As New Data.SqlClient.SqlConnection


Dim _reader As Data.SqlClient.SqlDataReader

Dim _ObjSelect As New _Connection


ObjNewTemp = _ObjSelect.Connect()

Dim Com As New Data.SqlClient.SqlCommand("Select


FirstName,MiddleName,LastName from Member where MemberID=@_Name", ObjNewTemp)

Com.Parameters.AddWithValue("@_Name", Request.Cookies("Login").Value)
_reader = Com.ExecuteReader()

If (_reader.Read) Then
Me.TextBox2.Text = _reader.GetString(0) + " " +
_reader.GetString(1) + " " + _reader.GetString(2)
End If
_reader.Close()

_ObjSelect.Disconnect()
End Sub
End Class

Code for Staff Assignment:

Imports System.Data.SqlClient
Partial Class StaffAssignment
Inherits System.Web.UI.Page

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As


System.EventArgs) Handles Button1.Click
Dim obj As New addnew
Dim sobj As New Generate
' Dim i As String = sobj.GenerateSerial("assign", "Assignment")
Dim str As String
str = New Generate().GenerateSerial("assign", "Assignment")
obj.AddNew(str, Me.Request.Cookies("Login").Value, Now.Date,
Me.DropDownList3.SelectedValue, Me.DropDownList4.SelectedValue,
Me.TextBox1.Text, Me.BDPLite1.SelectedDate, str + Me.FileUpload1.FileName,
"Assignment")

72
Dim strsorc As String
Dim name As String
strsorc = FileUpload1.PostedFile.FileName
name = FileUpload1.FileName
Dim sourcefile As New System.IO.FileInfo(strsorc)
If sourcefile.Exists Then
sourcefile.CopyTo("\website\files\" + str + name, True)
End If

End Sub
End Class

A Class common for insert data into data base:

Imports Microsoft.VisualBasic
Imports system

Public Class Generate


Dim con As Data.SqlClient.SqlConnection
Public Function GenerateSerial(ByVal preFix As String, ByVal RelationName
As String) As String
Dim record As Integer = 1001

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()
Dim dr As Data.SqlClient.SqlDataReader

Dim command As New Data.SqlClient.SqlCommand("select * from " +


RelationName, con)

dr = command.ExecuteReader

If (dr.Read) Then

While (dr.Read())

record = record + 1

End While
record = record + 1

Else

Return preFix.ToUpper + record.ToString


End If
Return preFix.ToUpper + record.ToString

con.Close()

End Function

73
Public Function GenerateSerial(ByVal preFix As String, ByVal _HostelId As
String, ByVal RelationName As String) As String
Dim record As Integer = 1001

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

Dim dr As Data.SqlClient.SqlDataReader

Dim _command As New Data.SqlClient.SqlCommand("select * from " +


RelationName, con)
_command.Parameters.AddWithValue("@_RelationName", RelationName)

_command.Parameters.AddWithValue("@_HostelId", _HostelId)
dr = _command.ExecuteReader

If (dr.HasRows) Then

While (dr.Read())
If (dr.GetString(2).Equals(_HostelId)) Then

record = record + 1
End If

End While

Else

Return preFix + record.ToString

End If
Return preFix + record.ToString

con.Close()

End Function

Public Function GenerateSerialForHostelRoom(ByVal preFix1 As String, ByVal


preFix2 As String, ByVal RelationName As String) As String
Dim record As Integer = 1001

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

Dim dr As Data.SqlClient.SqlDataReader
Dim combine As String
combine = preFix1.Substring(0, 4) + preFix2.Substring(0, 4)

Dim command As New Data.SqlClient.SqlCommand("select * from " +


RelationName + " where RoomID LIKE " + combine + "'%'", con)

74
dr = command.ExecuteReader

If (dr.Read) Then

While (dr.Read())

record = record + 1

End While
record = record + 1

Else

Return combine + record.ToString

End If
Return combine + record.ToString

con.Close()

End Function

End Class
Public Class opencon
Dim con As Data.SqlClient.SqlConnection

Public Sub opencon()


con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()
End Sub
End Class

Public Class addnew


Dim con As Data.SqlClient.SqlConnection

Public Sub AddNew3(ByVal str1 As String, ByVal str2 As String, ByVal str3
As String, ByVal tableName As String)

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName +


" values (@id,@type,@name,1)", con)
com.Parameters.AddWithValue("@id", str1)
com.Parameters.AddWithValue("@type", str2)
com.Parameters.AddWithValue("@name", str3)

com.ExecuteNonQuery()

con.Close()

75
End Sub

Public Sub AddNew3(ByVal str1 As String, ByVal str2 As String, ByVal


tableName As String)

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName +


" values (@field1,@field2,1)", con)

com.Parameters.AddWithValue("@field1", str1)
com.Parameters.AddWithValue("@field2", str2)

com.ExecuteNonQuery()

con.Close()

End Sub

Public Sub AddNew(ByVal str1 As String, ByVal str2 As String, ByVal str3
As Integer, ByVal str4 As String, ByVal tableName As String)

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName +


" values (@field1,@field2,@field3,@field4,1)", con)

com.Parameters.AddWithValue("@field1", str1)
com.Parameters.AddWithValue("@field2", str2)
com.Parameters.AddWithValue("@field3", str3)
com.Parameters.AddWithValue("@field4", str4)

com.ExecuteNonQuery()

con.Close()

End Sub

Public Sub AddNew(ByVal str1 As String, ByVal str2 As String, ByVal


tableName As String)

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

76
Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName +
" values (@field1,@field2,1)", con)

com.Parameters.AddWithValue("@field1", str1)
com.Parameters.AddWithValue("@field2", str2)

com.ExecuteNonQuery()

con.Close()

End Sub

Public Sub AddNew(ByVal str1 As String, ByVal str2 As String, ByVal str3
As String, ByVal tableName As String)

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName +


" values (@field1,@field2,@field3,1)", con)

com.Parameters.AddWithValue("@field1", str1)
com.Parameters.AddWithValue("@field2", str2)
com.Parameters.AddWithValue("@field3", str3)

com.ExecuteNonQuery()

con.Close()

End Sub

Public Sub AddNew(ByVal str1 As String, ByVal str2 As String, ByVal str3
As String, ByVal str4 As String, ByVal tableName As String)

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName +


" values (@field1,@field2,@field3,@field4,1)", con)

com.Parameters.AddWithValue("@field1", str1)
com.Parameters.AddWithValue("@field2", str2)
com.Parameters.AddWithValue("@field3", str3)
com.Parameters.AddWithValue("@field4", str4)

com.ExecuteNonQuery()

con.Close()

77
End Sub

Public Sub AddNew(ByVal str1 As String, ByVal str2 As String, ByVal str3
As String, ByVal str4 As String, ByVal str5 As String, ByVal tableName As
String)

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName +


" values (@field1,@field2,@field3,@field4,@field5,1)", con)

com.Parameters.AddWithValue("@field1", str1)
com.Parameters.AddWithValue("@field2", str2)
com.Parameters.AddWithValue("@field3", str3)
com.Parameters.AddWithValue("@field4", str4)
com.Parameters.AddWithValue("@field5", str5)

com.ExecuteNonQuery()

con.Close()

End Sub

Public Sub AddNew(ByVal str1 As String, ByVal str2 As String, ByVal str3
As String, ByVal str4 As String, ByVal str5 As String, ByVal str6 As String,
ByVal tableName As String)

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName +


" values (@field1,@field2,@field3,@field4,@field5,@field6,1)", con)

com.Parameters.AddWithValue("@field1", str1)
com.Parameters.AddWithValue("@field2", str2)
com.Parameters.AddWithValue("@field3", str3)
com.Parameters.AddWithValue("@field4", str4)
com.Parameters.AddWithValue("@field5", str5)
com.Parameters.AddWithValue("@field6", str6)

com.ExecuteNonQuery()

con.Close()

End Sub

78
Public Sub AddNew(ByVal str1 As String, ByVal str2 As String, ByVal str3
As String, ByVal str4 As String, ByVal str5 As String, ByVal str6 As String,
ByVal str7 As String, ByVal tableName As String)

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName +


" values (@field1,@field2,@field3,@field4,@field5,@field6,@field7,1)", con)

com.Parameters.AddWithValue("@field1", str1)
com.Parameters.AddWithValue("@field2", str2)
com.Parameters.AddWithValue("@field3", str3)
com.Parameters.AddWithValue("@field4", str4)
com.Parameters.AddWithValue("@field5", str5)
com.Parameters.AddWithValue("@field6", str6)
com.Parameters.AddWithValue("@field7", str7)

com.ExecuteNonQuery()
con.Close()

End Sub

Public Sub AddNew(ByVal str1 As String, ByVal str2 As String, ByVal str3
As String, ByVal str4 As String, ByVal str5 As String, ByVal str6 As String,
ByVal str7 As String, ByVal str8 As String, ByVal tableName As String)

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName +


" values
(@field1,@field2,@field3,@field4,@field5,@field6,@field7,@field8,1)", con)

com.Parameters.AddWithValue("@field1", str1)
com.Parameters.AddWithValue("@field2", str2)
com.Parameters.AddWithValue("@field3", str3)
com.Parameters.AddWithValue("@field4", str4)
com.Parameters.AddWithValue("@field5", str5)
com.Parameters.AddWithValue("@field6", str6)
com.Parameters.AddWithValue("@field7", str7)
com.Parameters.AddWithValue("@field8", str8)

com.ExecuteNonQuery()

con.Close()

End Sub

Public Sub AddNew(ByVal str1 As String, ByVal str2 As String, ByVal str3
As String, ByVal str4 As String, ByVal str5 As String, ByVal str6 As String,

79
ByVal str7 As String, ByVal str8 As String, ByVal str9 As String, ByVal
tableName As String)

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName +


" values
(@field1,@field2,@field3,@field4,@field5,@field6,@field7,@field8,@field9,1)",
con)

com.Parameters.AddWithValue("@field1", str1)
com.Parameters.AddWithValue("@field2", str2)
com.Parameters.AddWithValue("@field3", str3)
com.Parameters.AddWithValue("@field4", str4)
com.Parameters.AddWithValue("@field5", str5)
com.Parameters.AddWithValue("@field6", str6)
com.Parameters.AddWithValue("@field7", str7)
com.Parameters.AddWithValue("@field8", str8)
com.Parameters.AddWithValue("@field9", str9)

com.ExecuteNonQuery()

con.Close()

End Sub

Public Sub AddNew(ByVal str1 As String, ByVal str2 As String, ByVal str3
As String, ByVal str4 As String, ByVal str5 As String, ByVal str6 As String,
ByVal str7 As String, ByVal str8 As String, ByVal str9 As String, ByVal str10
As String, ByVal tableName As String)

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName +


" values
(@field1,@field2,@field3,@field4,@field5,@field6,@field7,@field8,@field9,@fie
ld10,1)", con)

com.Parameters.AddWithValue("@field1", str1)
com.Parameters.AddWithValue("@field2", str2)
com.Parameters.AddWithValue("@field3", str3)
com.Parameters.AddWithValue("@field4", str4)
com.Parameters.AddWithValue("@field5", str5)
com.Parameters.AddWithValue("@field6", str6)
com.Parameters.AddWithValue("@field7", str7)
com.Parameters.AddWithValue("@field8", str8)
com.Parameters.AddWithValue("@field9", str9)
com.Parameters.AddWithValue("@field10", str10)

80
com.ExecuteNonQuery()

con.Close()

End Sub

Public Sub AddNew(ByVal str1 As String, ByVal str2 As String, ByVal str3
As String, ByVal str4 As String, ByVal str5 As String, ByVal str6 As String,
ByVal str7 As String, ByVal str8 As String, ByVal str9 As String, ByVal str10
As String, ByVal str11 As String, ByVal tableName As String)

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName +


" values
(@field1,@field2,@field3,@field4,@field5,@field6,@field7,@field8,@field9,@fie
ld10,@field11,1)", con)

com.Parameters.AddWithValue("@field1", str1)
com.Parameters.AddWithValue("@field2", str2)
com.Parameters.AddWithValue("@field3", str3)
com.Parameters.AddWithValue("@field4", str4)
com.Parameters.AddWithValue("@field5", str5)
com.Parameters.AddWithValue("@field6", str6)
com.Parameters.AddWithValue("@field7", str7)
com.Parameters.AddWithValue("@field8", str8)
com.Parameters.AddWithValue("@field9", str9)
com.Parameters.AddWithValue("@field10", str10)
com.Parameters.AddWithValue("@field11", str11)

com.ExecuteNonQuery()

con.Close()

End Sub

Public Sub AddNew(ByVal str1 As String, ByVal str2 As String, ByVal str3
As String, ByVal str4 As String, ByVal str5 As String, ByVal str6 As String,
ByVal str7 As String, ByVal str8 As String, ByVal str9 As String, ByVal str10
As String, ByVal str11 As String, ByVal str12 As String, ByVal tableName As
String)

con = New
Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.Connec
tionStrings("cisConnectionString").ConnectionString)
con.Open()

Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName +


" values
(@field1,@field2,@field3,@field4,@field5,@field6,@field7,@field8,@field9,@fie
ld10,@field11,@field12,1)", con)

81
com.Parameters.AddWithValue("@field1", str1)
com.Parameters.AddWithValue("@field2", str2)
com.Parameters.AddWithValue("@field3", str3)
com.Parameters.AddWithValue("@field4", str4)
com.Parameters.AddWithValue("@field5", str5)
com.Parameters.AddWithValue("@field6", str6)
com.Parameters.AddWithValue("@field7", str7)
com.Parameters.AddWithValue("@field8", str8)
com.Parameters.AddWithValue("@field9", str9)
com.Parameters.AddWithValue("@field10", str10)
com.Parameters.AddWithValue("@field11", str11)
com.Parameters.AddWithValue("@field12", str12)

com.ExecuteNonQuery()

con.Close()

End Sub

End Class

10. TEST-PLAN (TP)


The test-plan is basically a list of test cases that need to be run on the system. Some
of the test cases can be run independently for some components (report generation
from the database, for example, can be tested independently) and some of the test
cases require the whole system to be ready for their execution. It is better to test each
component as and when it is ready before integrating the components.

10.1 TEST CASES DESIGN

It is important to note that the test cases cover all the aspects of the system (ie, all the
requirements stated in the RS document).

No. Test case Description Expected The Result


Title Outcome requireme
nt in RS
that is
being
tested
1 Successful The login to the Login RS1 Passed

82
User system should be should be
Verification tried with the login successful
assigned by the and the
admin and the user
correct password should
enter in to
the system
2 Unsuccessful Login to the Login RS1 Passed
User system with a should fail
Verification wrong password with an
due to wrong error
password ‘Invalid
Password’
3 Unsuccessful Login to the Login RS1 Passed
User system with a should fail
Verification invalid login id with an
due to invalid error
login id ‘Invalid
user id’

Once the code has been written, program testing begins. The testing process focuses
on the logical internals of the software, ensuring that all statements have been tested,
and on the functional externals; that is, conducting tests to uncover errors end to ensure
that the defined input will produce the desired output. The project has been tested on
dummy as well as lives data.
10.2 TEST RESULTS

Following steps were carried out during testing

1. Online response – Our project is such that it requires optimum response time and it
does not cause any hardship to the user. We have tested it in the peak hours and time
to establish a true performance level.
2. Volume – We created as many records as are normally produced to verify that the
hardware and software function correctly. The users were asked to provide test data for
the test.

3. Stress testing – In this test, the system was subjected to high volume of data over a
short time period.

4. Recovery and Security – A forced system failure was induced to test a backup
recovery produce for file integrity. Inaccurate data were entered to see how the system
responds in terms of error detection and protection. The Administrator, Key users and
End users are recognized by their User IDs and Passwords in order to prevent any
unauthorized access to the system

83
5. Usability Documentation and Procedure – This test was carried out to verify the
user-friendly nature of the system. This included normal operating and error handling
procedures.

6. Testing - is a critical element of quality assurance and representations the ultimate


review of specification, design and code generation. This stage is the validation of the
program. It ensures that the program performs correctly the required tasks

Once code has been generated, project must be tested to uncover as many errors as
possible before delivery to the customer. The testing process focuses on the logical
internals of the software, ensuring that all statements have been tested, and on the
functional externals; that is conducting test to uncover errors and ensures that defined
input will produce actual results that agree with required results.

The great difficulty one can have in describing what a system should do is illustrated
by the facts found in table shown below. The table shows, that more than half the errors
one can have in a system are introduced during requirements analysis.

On the other hand, one only discovers a minority (5%) of the errors in a system during
requirement analysis. Another point to be noted is that 55% of the faults are introduced
in the first phase of the software development project.

SOFTWARE DEVELOPMENT ERRORS ERROR


PHASE INTRODUCED OBSERVED
Requirements Analysis 55% 5%
Design 30% 10%
Construction & System Test 15% 40%
Acceptance Test & Operation NA 45%
/ Maintenance

After observing the above table, one can easily understand the importance of careful
testing at the right time.

TESTING OBJECTIVES

o Testing is a process of executing a program with the intent of finding an


error.
o A good test is one that has a high probability of finding an as-yet-
undiscovered error.
o A successful test is one that uncovers an as-yet-undiscovered error.

84
If testing is conducted successfully, it will uncover errors in the software or in your
project. As a secondary benefit, testing demonstrates that software functions appear to
be working according to specification, that behavioral and performs requirements
appear to have been met. But testing can’t show the absence of errors and defects, it
can show only that software errors and defects are present.

Levels of Testing:
The basic levels of testing are:-
1 Unit Testing: In this individual modules are tested together. By the following strategy all
the errors are identified in the coding. This method was applied in collaboration with the
white and black box testing techniques.

2 Integration Testing: Integration testing is a systematic technique for constructing the


program structure while at the same time conducting tests to uncover errors associated
with the interface.

3 System Testing: System testing in which all the modules are tested together as a
system to uncover the errors.

4 Acceptance Testing: Acceptance testing is performed at the client side to ensure the
user (police station) has accepted the system.

The levels of resting attempt to detect different types of faults. The relation of faults
introduces in different phases and the different levels of testing are shown.

Employee Needs Acceptance Testing

Requirements System Testing

Design Integration Testing

Code Unit Testing

TESTING PRINCIPLES

• All tests should be traceable to the customer requirements.

Here the main objective is to detect the errors. It follows that the most severe
defects are those that cause the program to fail to meet its requirements.

85
• Test should be plant long before testing begins.

Test planning should begin as soon as the requirement model is complete. The
detailed definition of test cases should be defined as soon as design model has been
solidified.

• The Pareto Principle

The principle states that 80% of all errors uncovered during testing will likely be
traceable to 20% of all program components. Therefore the major concern is to isolate
these suspect components and thoroughly test them.

• Testing should begin “in the small” and progress toward testing “in the
large”.

The first test plan and execution generally focus on individual components. As
testing proceeds focus shift in an attempt to find errors in integrated clusters of
components and ultimately in the entire system.

• Exhaustive testing is not possible.

The number of path permutations for even a moderately sized program is


exceptionally large. For this reason, it is impossible to execute every combination of
paths during testing. It is possible, however, to adequately cover program logic and to
ensure that all conditions in the component level design have been exercised.

• To be most effective, testing should be conducted by an independent


third party.
10. IMPLEMENTATION / CONVERSION PLAN
In this phase, the project team finishes buying any necessary hardware for the
system and then installs the hardware and software in the user environment
. The user starts using the system to perform work. This stage involves the
process of moving from the old to the new system through several
conversion techniques including.

Direct Conversion. All users stop using old system at the same time and then
begin using the new .

OLD SYSTEM NEW SYSTEM

86
Parallel Conversion. Users continue use the old system while an increasing
amount of data is processed through the new system .The outs from the two
systems are compared , if they agree , the switch is made .

OLD SYSTEM

Phased Conversion. Users start using the new system , component by


component .
This option works only for systems that can be compartmentalized .

NEW SYSTEM

Pilot Conversion. Personnel in a single pilot site use the new system , and then
the entire organization makes the switch. Thus, implementation phase is primarily
concerned with user training , site preparation and file conversion .

USER TRAINING

When we implement a system, user training is must in order to minimize the resistance
to change and to give the new system a chance to prove it worth. The training aids used
by us are Demonstration
An important training element is training demonstration. Live demonstration with
personal contacts is extremely effective for training users. In a demonstration a new
concept is quickly learned. More information is conveyed and discussed verbally than
through reading and writing during the same time. Finally during the training
demonstration, the user receives encouragement and attention, which prompts him/her to
perform.
We have demonstrated MAISMS system several times so that the user can become
familiar either the system. Live demonstrations are given to the head and data entry
operator.

USER DOCUMENTATION

87
The user documentation comprises of user manual. The User manual explains the
working of MAISMS in an effective manner. It explains the working of each and every
screen.
Thus it becomes easy to be acquainted to the system. If any problem occurs, the user
can consult the manual to sort the problem.

CONVERSION PLAN

As soon as the first phase of implementation- file set-up-starts, all system


documentation should be available, viz., user manuals, procedures manuals, computer
operating instructions and security procedures. The system then passes from the
development staff to the computer operations personnel and once the system is live, strict
procedures should be enforced governing programmer’s access to programs and files.

There are both technical & people oriented activities during this stage:

1. Technical Conversion Activities: Depending on the size of the organization that


will be involved in using the application and the risk associated with its use, system
developers may choose only to pilot the operation in one area of the firm, say, in one
department or with just one or two persons. In some situations developers will stop use
of the old system one day and begin use of the new one the next.

2. People-Oriented Activities: Since work tasks are often changed when a new
system is installed, user oriented, training, & support are a very important of system
implementation. It is not unusual to find a full time system training department in large
organizations; since systems are continuously being installed somewhere. Even with so
much attention, users usually consider training to be very poor. There are 4 reasons for
this:
• There is usually a staggering of information for users to absorb in a short
period of time.
• Users may think they have inadequate skills for using computers.
• Users are often very nervous and apprehensive of computer and are afraid of
looking stupid.
• Training materials are very complicated, difficult to organize, and difficult to
present clearly.

Due to lack of communication between user and developer, the main problem that
arises is that developer is unable to recognize each and every requirement. Same was
the case here, when the project was finally to be implemented in the organization, the
sponsors asked for another requirement.

They wanted that the project should provide a provision of manipulation of database,
i.e. administrator is only to manipulate. No user should be able to do that; user has only
authority of browsing the reports. They also wanted that if any user by mistake knows
the name of any page or file then he may not be able to do this until he or she is a
legitimate user and is navigating from starting from starting of system. This was done by

88
making a function Auto Check which used to check for authorized users before opening
any page.

Maintenance

The last part is maintenance. It is a Post Implementation stage. This stage is the
updating & correcting of the program to account for changing conditions or field
experience. Proper testing & documentation should significant reduce the frequency
and extent of the required maintenance representative from the user department,
internal audit and data processing. Its basic purpose is to see if the system has met the
objectives set for it. This will comprise a comparison of actual costs and benefits against
the original estimates, a review of requests for changes and an examination of
documentation, control and security procedures and back-up arrangements.

Corrective Maintenance: Its means repairing processing or performance failure or


making changes because of previously uncorrected problems or false assumptions.

Adaptive Maintenance: Its means changing the problem function.

Perfective Maintenance: Its means enhancing the performance or modifying the


program(s) to respond to the user’s additional or changing needs.

Of these types, more time and money are spent on perfective than on corrective and
adaptive maintenance together. Maintenance covers a wide range of activities, including
correct coding and design errors, updating, documentation and test data and upgrading
user support. Many activities classified as maintenance are actually enhancements.
Maintenance means restoring something to its original condition.

12. PROJECT LEGACY


Our project has been accomplished on a stand-alone server. The project runs
irrespective of the other servers i.e. Production, Application and Development in the
company on its own and has no links. In a nutshell, our project is complete in itself.

12.1 Current status of the Project

The projects complete with no of master tables as well as transaction tables and a
number of screens and reports. Enhancements can be done if required but the project is
yet to be implemented. Documentation has being prepared. Data has been uploaded.
The project has accomplished all the stipulations, which a competent and proficient
project intents to fulfill. Following acceptance criteria has fulfilled.

1. User friendly
2. Modularity

89
3. Transparency
4. Security

12.2 Areas of Concern

TECHNICAL AND MANAGERIAL LESSONS LEARNT

Working in this professional environment was a totally unique experience. Besides


learning about Open Source and Progress covering technical side, we appraised of various
managerial skills. We apprehended how to behave and express ourselves in an industrial
environment.

1. Technical Lessons Learnt


• Extensive knowledge of .NET technology.
• Progress Proprietary language Open Source.
• Introduction and exposure to Open Source.

2. Managerial Lessons Learnt


• Development of management thoughts
• Ethical and Environmental Foundation
• Decision making
• Planning and Strategic management
• Leadership
• Communication skills

12.3 Further Recommendations

In order to make a success and to realize the benefits of the product, it becomes
necessary to provide it the necessary inputs. The only inputs required are the data that
is collected about the Books and complaints etc. So the more authentic and exhaustive
this information is, the more reliable becomes the scope of the system. And this is
something that is out of scope of I.T. So it is recommended that at every agent site we
have a reliable means of collecting the data and feeding it into the system. The data
should be as accurate as possible and should be updated timely. These efforts have to

90
be made at the level of the top Management to constantly monitor the regularity and
authenticity of the data collection and data entry processes.

11. BIBLIOGRAPHY

ELECTRONIC REFERENCES

• wikipedia.org
• www.msdn.com
• MSDN Tool
• http://i-netsolution/products/icm.com

• http://google.com

REFERENCES BY BOOKS

• Software Engineering by Roger Pressman

• System Analysis and Design by Elias W. Awad

• Cetpa Infotech tutorials

• Asp.net Black book

• Vb.net Black book

• Unleashed (ASP.net)

91

Das könnte Ihnen auch gefallen