cms report

116
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, 2 nd 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.Virendra Swarup Institute Of Computer Studies,Kanpur

Upload: mehtabali1990

Post on 27-Mar-2015

1.977 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Cms Report

A Project Report on

“COLLEGE INFORMATION SYSTEM”(Sub module: STAFF)

Submitted

In partial fulfillment of the requirement of degree ofMaster of Computer Applications

(Session 2006 – 2009)

Undertaken atCETPA 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

Page 2: Cms Report

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

Page 3: Cms Report

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

Page 4: Cms Report

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

Page 5: Cms Report

Table of Contents

1. Overview of the Organization………………………………………….2. Profile of problem assigned………………………..…………………..3. Study of existing system……………………………………………….4. System Requirements………………………………………………….

4.1 Problem Statement4.2 Functions to be Provided4.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 specification8. 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 project12.2 Technical and Managerial lessons learnt12.3 Future Recommendations

13. Bibliography

5

Page 6: Cms Report

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

Page 7: Cms Report

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.

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

Page 8: Cms Report

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 ManagementAccount ManagementAdmin Module to manage and support all the above modulesAlumni ManagementModule 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 Staff time table Exam schedule Staffs leave application Staff mail

8

Page 9: Cms Report

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 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

9

Page 10: Cms Report

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 programo Facility to add, update their employee statuso 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

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

10

Page 11: Cms Report

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 CONSULTATIONTo 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.5. Flexibility: Variability, Sensitivity.6. Efficiency: Performance ratios.

ADVANTAGES OF THE PROPOSED SYSTEM

11

Page 12: Cms Report

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:

1. 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.

2. 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.

3. 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.

4. 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.

5. 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.

6. 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.

7. REDUCED CHANCES OF ERRORS

12

Page 13: Cms Report

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.

8. 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

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:

13

Page 14: Cms Report

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 branch3) Branch wise list of registered students.4) Registration status report for any training program.5) List of all students enrolled in a specific training program6) Payment details report for each student7) Payment details report for training program8) 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

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

Software Requirements

Windows 98/XP

14

Page 15: Cms Report

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

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

15

Page 16: Cms Report

The .NET Framework Design Goals

1. Component Development for the Internet

2. "Cross-Language Development”

3. Inheritance, Debugging, Exception handling

4. Reliability and Security

5. Simple Development and Deployment

6. Device-agnostic

4.4 ACCEPTANCE CRIETERIA

16

Page 17: Cms Report

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

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

17

Page 18: Cms Report

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. 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.

18

Page 19: Cms Report

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. 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

19

Page 20: Cms Report

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.

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.

20

Page 21: Cms Report

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 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.

21

Page 22: Cms Report

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 projectWe 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 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

22

Page 23: Cms Report

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.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

23

Page 24: Cms Report

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 branch3) Branch wise list of registered students.4) Registration status report for any training program.5) List of all students enrolled in a specific training program6) Payment details report for each student7) Payment details report for training program8) 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 were selected, due to the fact that technologies and tools poses certain restrictions of how development can be done.

The .NET Framework is…

24

Page 25: Cms Report

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.

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

25

Page 26: Cms Report

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.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.

26

Page 27: Cms Report

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

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.

27

Page 28: Cms Report

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 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

28

Page 29: Cms Report

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.

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.

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

29

Page 30: Cms Report

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 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

30

Page 31: Cms Report

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 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

31

Page 32: Cms Report

smallest/most trivial requirements also. That would help in validating the system during testing.

No. Requirement Essential/ Desirable

Description of the Requirement

Remarks

RS1

The system should have a login

Essential A login box should appear when the system is invoked.

The logins are assigned by the mail-admin

RS2

The system should have help screens

Essential Help about the various features of the system should be provided in sufficient detail in a Q&A format.

The campaign policy should also be part of the help.

RS3

The system should ‘lock’ the login id if wrong password is entered 3 times in a row

Desirable This feature will improve the robustness of the application

Since the application is going to be used only by the employees, this feature is not essential. However, if time is there, this will be implemented.

RS4

The system should have formulas on the client side

Essential These features will not make unnecessary calls to back end and will reduce the network traffic.

Formulae can be changed easily since it is an intranet application

7.2 DFD and Data Dictionary

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

32

Page 33: Cms Report

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

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.

33

Page 34: Cms Report

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

Data Flow Diagrams Of College Information System:-

34

Page 35: Cms Report

Access deny

Login

AcceptLogin

Access deny Student/StaffProfile

Login

Access deny

FLOWCHART OF COLLEGE INFORMATION SYSTEM

Data Flow Diagrams Of Staff Management:-

Login Accept

Staff List

Access deny

0- Level

Login database

35

College InformationSystem

Staff

AdministratorStudents

Administrator

Staff Management

Staff Administrator

Staff

Staff Login 1

Staff Profile 3

Attendance 4

Page 36: Cms Report

Invalid Accept/Reject Login DetailsLogin

New Staff

Registered

Staff login detail

Staff dataStaff Record

Staff Database

Attendance Details

Attendance DB

Salary detail Salary DB

Assignment DB Assignment list

1 st level DFD of Staff Management

DFD’s

LOGIN FORM

36

Registration 2

Salary 5

Assignment6

Administrator

Page 37: Cms Report

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.

LEAVE APPLICATION

37

Page 38: Cms Report

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.

FEEDBACK

38

Page 39: Cms Report

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.

ASSIGNMENT

39

Page 40: Cms Report

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.

ADMIN LOGIN

40

Page 41: Cms Report

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

41

Page 42: Cms Report

42

Page 43: Cms Report

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

Page 44: Cms Report

DATA DICTIONARY

Table Name Table CommentSubject Area Sub-area

Student _tableThis table contains the details of all students of all courses. Technical Projects

Staff_tableThis table contains the information of staff members Technical Projects

Timetable_table

This table contains the information of various field which 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

Page 45: Cms Report

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

Page 46: Cms Report

FROM ANALYSIS

DEVELOPMENT STEPS IN SYSTEM DESIGN

46

Input Design

Output Design

File Design

Process Design

Detailed System Documentation

Design Submitted

Desi

gn

Agre

ed

Abando

n

Project

Test

Program

Page 47: Cms Report

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

Page 48: Cms Report

FRONT-END DESIGN

Form 1:

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

48

Page 49: Cms Report

Form 2:

Login Form for Staff:

49

Page 50: Cms Report

FORM 3

Staff Profile: This form is used to show staff information

Continue…

50

Page 51: Cms Report

FORM 4:

Staff Qualification:

51

Page 52: Cms Report

FORM 5:

Message: Inbox

52

Page 53: Cms Report

FORM 6:

Message: Compose

53

Page 54: Cms Report

FORM 7:

Message: Sent

54

Page 55: Cms Report

FORM 8:

Assignment:

55

Page 56: Cms Report

FORM 9:

Leave Application:

56

Page 57: Cms Report

FORM 10:

Staff Past Leave:

57

Page 58: Cms Report

FORM 11:

Feedback:

58

Page 59: Cms Report

FORM 12 :

Bus Details:

59

Page 60: Cms Report

FORM 13:

Library Books:

60

Page 61: Cms Report

FORM 14:

Staff Health Record:

61

Page 62: Cms Report

FORM 15:

Add new Staff:

8.2 DATABASE DESIGN

STAFF MODULE TABLES

62

Page 63: Cms Report

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

Page 64: Cms Report

Staff Qualification:

DESCRIPTION: This table stores the information about qualification of staff

Message Table:

DESCRIPTION: This table stores the information about message

64

Page 65: Cms Report

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

Page 66: Cms Report

Assignment:

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

Bus :

DESCRIPTION: This table stores the information of bus

DATA STRUCTURES

66

Page 67: Cms Report

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:

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

67

Page 68: Cms Report

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.

No. Field Name Range of valid values for the field

Remarks

1 Employee Number Numeric up to 5 digits in length

The Employee Number is the key field of the database so it should be a numeric unique key.

2 Name Up to 20 characters in length

Special characters like underscore are not allowed.

3 Project Code Up to 15 characters in length

Only the Super User will have all the powers to add/change the project code of any employee.

4 Location Up to 15 characters in length

Only the Super User will have all the powers to add/change the location of any employee.

5 IBU Up to 15 characters in length

Only the Super User will have all the powers to add/change the IBU of any employee.

6 Permanent Address

Up to 50 characters in length

Special characters like underscore are not allowed.

7 Local Address Up to 50 characters in length

Special characters like underscore are not allowed.

8 Passport Number Up to 15 characters in length

Should be a unique field.

9 Issue Date Date field and Up to 10 characters in length

Should be a valid issue date

10 Expiry Date Date field and Up to 10 characters in length

Should be a valid expiry date greater than the issue date

11 Issuing Office Up to 20 characters in length

Special characters like underscore are not allowed.

12 Telephone Number

Numeric up to 8 digits in length

Must be a numeric field

13 Qualifications Up to 200 characters in length

All the educational qualifications must be entered in short with respective percentages.

14 Years of Experience

Numeric up to 2 digits in length

Must be a numeric field. It gives the number of years of work experience.

15 Organization Up to 30 characters in Gives the name of the

68

Page 69: Cms Report

Name length organization, if the employee has a work ex, else Nil.

16 Duration Numeric up to 2 digits in length

Gives the no. of years of work Ex, if any, else zero.

17 Job Designation Up to 25 characters in length

Gives the designation of the employee, if he has a work experience.

18 Description Up to 50 characters in length

Description, in brief, of the job, if having work ex. else Nil.

9. CODING

Code for Staff profile:

Imports System.IOImports System.Data.SqlClientPartial 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

69

Page 70: Cms Report

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

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.ConnectionStrings("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)

70

Page 71: Cms Report

End If

If DReader.IsDBNull(6) Then

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 SubEnd 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,@TypeOfMessage,@_Status)", ObjNewTemp) 'msgbox(Serial) _INSERT.Parameters.AddWithValue("@_SerialNo", Serial) _INSERT.Parameters.AddWithValue("@_SourceID", SourceName) _INSERT.Parameters.AddWithValue("@_DestinationID", DestinationName) _INSERT.Parameters.AddWithValue("@_Subject", Subject)

71

Page 72: Cms Report

_INSERT.Parameters.AddWithValue("@_Message", Message) _INSERT.Parameters.AddWithValue("@_DateAndTime", Now) _INSERT.Parameters.AddWithValue("@TypeOfMessage", "MSG1003") _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 SubEnd Class

Code for Staff Assignment:

Imports System.Data.SqlClientPartial 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,

72

Page 73: Cms Report

Me.TextBox1.Text, Me.BDPLite1.SelectedDate, str + Me.FileUpload1.FileName, "Assignment")

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 SubEnd Class

A Class common for insert data into data base:

Imports Microsoft.VisualBasicImports 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.ConnectionStrings("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

73

Page 74: Cms Report

con.Close()

End Function

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.ConnectionStrings("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.ConnectionStrings("cisConnectionString").ConnectionString) con.Open()

Dim dr As Data.SqlClient.SqlDataReader Dim combine As String

74

Page 75: Cms Report

combine = preFix1.Substring(0, 4) + preFix2.Substring(0, 4) Dim command As New Data.SqlClient.SqlCommand("select * from " + RelationName + " where RoomID LIKE " + combine + "'%'", con) 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 ClassPublic Class opencon Dim con As Data.SqlClient.SqlConnection

Public Sub opencon() con = New Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings("cisConnectionString").ConnectionString) con.Open() End SubEnd 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.ConnectionStrings("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)

75

Page 76: Cms Report

com.ExecuteNonQuery()

con.Close()

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.ConnectionStrings("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.ConnectionStrings("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)

76

Page 77: Cms Report

con = New Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings("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 String, ByVal tableName As String)

con = New Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings("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.ConnectionStrings("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)

77

Page 78: Cms Report

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 tableName As String)

con = New Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings("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.ConnectionStrings("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()

78

Page 79: Cms Report

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 tableName As String)

con = New Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings("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.ConnectionStrings("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()

79

Page 80: Cms Report

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 tableName As String)

con = New Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings("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.ConnectionStrings("cisConnectionString").ConnectionString) con.Open()

Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName + " values (@field1,@field2,@field3,@field4,@field5,@field6,@field7,@field8,@field9,@field10,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)

80

Page 81: Cms Report

com.Parameters.AddWithValue("@field8", str8) com.Parameters.AddWithValue("@field9", str9) com.Parameters.AddWithValue("@field10", str10)

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.ConnectionStrings("cisConnectionString").ConnectionString) con.Open()

Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName + " values (@field1,@field2,@field3,@field4,@field5,@field6,@field7,@field8,@field9,@field10,@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.ConnectionStrings("cisConnectionString").ConnectionString) con.Open()

81

Page 82: Cms Report

Dim com As New Data.SqlClient.SqlCommand("insert into " + tableName + " values (@field1,@field2,@field3,@field4,@field5,@field6,@field7,@field8,@field9,@field10,@field11,@field12,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.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 Title

Description Expected Outcome

The requirement in RS that is

Result

82

Page 83: Cms Report

being tested

1 Successful User Verification

The login to the system should be tried with the login assigned by the admin and the correct password

Login should be successful and the user should enter in to the system

RS1 Passed

2 Unsuccessful User Verification due to wrong password

Login to the system with a wrong password

Login should fail with an error ‘Invalid Password’

RS1 Passed

3 Unsuccessful User Verification due to invalid login id

Login to the system with a invalid login id

Login should fail with an error ‘Invalid user id’

RS1 Passed

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

83

Page 84: Cms Report

End users are recognized by their User IDs and Passwords in order to prevent any unauthorized access to the system

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 PHASE

ERRORS INTRODUCED

ERROROBSERVED

Requirements Analysis 55% 5%Design 30% 10%Construction & System Test 15% 40%Acceptance Test & Operation / Maintenance

NA 45%

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.

84

Page 85: Cms Report

o A successful test is one that uncovers an as-yet-undiscovered error.

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.

85

Page 86: Cms Report

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.

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 .

86

OLD SYSTEM NEW SYSTEM

Page 87: Cms Report

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 .

Phased Conversion. Users start using the new system , component by component . This option works only for systems that can be compartmentalized .

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

OLD SYSTEM

NEW SYSTEM

Page 88: Cms Report

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

88

Page 89: Cms Report

legitimate user and is navigating from starting from starting of system. This was done by 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

89

Page 90: Cms Report

2. Modularity

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

Page 91: Cms Report

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