Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 60

Project Synopsis

TRAINING AND PLACEMENT MANAGEMENT


Submitted By
Student Name University Roll Number University Registration Number

Gorakh Nath Das Soumyajit Ghosh Suchandra Mandal Tushar Bhattachariya

Of Computer Application, 3rd Year


Under the Guidance of

Mr. Partha Guha DEPT: Information Technology

Narula Institute of Technology 81, Nilgunj Road, Agarpara, Kolkata 700109.

Certificate
This is to certify that the following students of Computer Science & Engineering department of Narula Institute of Technology are working on the project entitled TRAINING AND

PLACEMENT MANAGEMENT under the guidance of Mr. Partha Guha


(Lecturer: Information Technology Department).

Student Name
Gorakh Nath Das Soumyajit Ghosh Suchandra Mandal Tushar Bhattachariya

Signature .. .. .. ..

.. Mr. Partha Guha


Lecturer, Dept. Information Technology

ACKNOWLEDGEMENTS
2

LETS MAKE THINGS BETTER- I think these are some words which encourage me to draw my attention to this project. The project for the Training and Placement DEPARTMENT of a college System is a good Project which is helpful to solving the various appliation concerning to student As a result in establishing this I am project I am very obliged. It has been a long project and naturally many people got associated with it. grateful for the assistance and cooperation of all those who contributed their suggestions for the betterment of the project, during the development phase. We are very much grateful to our parents and our project guide

Mr. PARTHA GUHA who encourages me a

lot in the critical moments during the development phase. A special thanks to Mr. PARTHA GUHA(guide) for his kind help.

Table of Contents
3

0 Notation 0.1 Notation for Entity Relationship Diagram 0.2 Notation for Flow Chart 1 Introduction 1.1 Abstract of the project... 1.2 Goals andObjectives 1.3 General Requirements(functional)... 1.4 About the Project.. 2 System analysis 2.1 SOSFTWARE MODELING

Technolgy used..

4 Nature of application...

5 software requirement specification 5.1 System requirements 5.2 Hardware Requirements 5.3 Software Requirements

6 Data Modeling 6.1 Entity Relationship Diagram. 7 Code optimization

8 Data Structure 8.1 Table in the Database 9 Data structure.. Table in the database. 10. Data Base design

11. source code of data... ...

12.Testing 13 chart report of project


13.1 Gnatt chart 13.2 Pert chart

14. SCOPE FOR FUTURE APPLICATION 15. Bibilography


16.GLOSASRY

17.conclusion

Pic of e-r diagram here

1. INTRODUCTION Development of a feature rich practical online application for the training and placement cell of the institute involves the computerization of the training and placement cell(T/P cell).the work done in T/P cell involves collecting student details for the availability To the company at the time of campus selections and train the students ready to face interviews, informing students about the events going to take place through mailing ,reports. It also provides the statistics of the number of students selected in the college in the previous year.The project considerably
6

reduces the work pressure of the T/P cell staffs and helps the students concerning their careers with minimum time factor and maximum training and placement support for the students.
1.1 Abstract of the project

1.2 Goals and Objectives

The goals of our system are: A project is a central mechanism to unify and
coordinate the element of any language or package application .A project keeps track of the location of all programs ,screens, reports and so on, that an application comprise. This makes it convenient to organize programs, screens and other components in directories according to function, subsystem and other application categories. Online institutional training and placement Management Support System is an application

software that will enable the user to do all the profile submission and updation and information of eligible students name list and company name for camoussing and other services through the organisation.

The objectives of our system are:


THE APPLICATION TAKES EVERY CARE TO ENSURE THE ACCURACY OF: Student details Career development programs 7

Personality development programs Campus interviews and the interview techniques programs Arranging guest lecturers from industry for career counselling Proper details of all criteria for campussing And upcoming comanies Daily updatation 100 % placement assistance The software ensures the security and will prevent any unauthorized persons to access the software.

WHY IS THIS TOPIC CHOSEN We have chosen this particular topic because We are very much familiar to this topic. The is the training institute, which provides various courses or teaches to the students. Another reason is that I have got the opportunity to work at their place and they gave me all the support for making the software error free and demanding. This project may help me in getting job in this competitive market. PURPOSE AND SCOPE OF THE PROJECT IS

1) To ensure correct accordance with the day-to-day submission and updatation.


2) Speedy functioning of the office procedure and thereby ensuring smooth functioning to the student 3) Good maintenance of the student database. 4) Data store and retrieval as and when required. At per service with the changing environment i.e., adopting this software system for high quality of service, which is the basis and fundamental objective of this project. 8

As this project is meant for the student who enquire about the placement, availability of Training provided or not. Information of upcoming companies,As the system is designed in a generalized manner so that it can be used in modern institute .Through this system the whole management of the student transactions, details etc can also be maintained smoothly. This system will specify the process starting from the enquiry of the student or admission of the student to the transaction related to the student and the Information on the Net also

The main aim of the project is to make the query response fast. The entire work of the processing should be done with a high speed i.e.; the updating and modifications of the list of the student and their profiles etc. The system will provide different reports with information e.g. day wise updatation, student queries,elligible student details etc. This system will also provide all details information, which are necessary for the management of the system. 1.3 General Requirements (functional) 1.4 All the Id numbers, Names and other numbers cannot be empty / invalid. The Date should be given in mm/dd/yyyy format. The width of a data should not exceed the space allotted for it in the file. Only student registers theirs profiles are eligible in any type of process. A form for student and administrator login A form for help service plan. A form for querying about the student personal details. A form for querying service details of a of student of different criteria. A form for checking out about the upcoming company for campussing

About the project

The software for the training and placement cell of a college is a vital need for the students and the institute management for the purpose of proper placement and training of the aspiring students of the institute. It helps the students to provide their profiles to the training and placement cell of the institute,update their respective profiles(with their gradual approach towards course end),get to know about the companies coming for the on-campus/off campus/pool/group pool categories of 9

campus interviews. Under this system all the students of the ongoing(current) batches of various streams can register their profiles. The training and placement cell(t/p cell)remains in continuous touch with all the students of the institute time-to-time. This dedicated software for the institute's t/p cell can be expanded to the various machines in the institute and can be accessed by the students as well as by the administrator(tpo in charge).The system remains connected with the profile databases of the various students to continuously monitor the variety of scopes available for the students' placements.

2. SYSTEM ANALYSIS
The system analysis is one of the most important parts to study the activity of an organization. Without proper system study it is not only very difficult but also almost impossible to build a system, which will serve the purpose of an organization. System analysis is the most crucial phase in a software life cycle. Any mistake made at this stage can replicate the steps that will follow it and result in software, which neither serves any purpose for the organization nor it can be, implemented any further. The most important point in system analysis understands the entire system thoroughly. The current system can be a manual one or it may be a partly automated system. In any of the case, system study provides the starting point to develop software. With an eye to the users needs System study can be divided into two major parts, they are : 1) Identification of the need from the client 2) Start preliminary investigation of the system.

2.1

SOFTWARE MODELING
10

Adherence to a lifecycle model during software development is become universally accepted in all modern software development organizations. But, why is it necessary for a development team to adhere to a suitable life cycle model? The primary advantage of adhering to a life cycle model is that it encourages development of software in systematic and disciplined manner. When a program is developed by a single programmer, he has the freedom to decide the exact steps through which he will develop the program. However when a software product is developed by a team it is necessary to have a precise understanding among the team member, as to when to do what. Otherwise it may lead to chaos and project failure. A life cycle model forms a common understanding of their activities among the software engineers and help develop the software in a systematic and disciplined manner. Software development organization normally prepares an accurate documentation of the life cycle model followed by them. A documented life cycle model besides preventing the misinterpretation that occurred when the life cycle model is not adequately documented also they have seen identifying inconsistencies redundancies and omission in the development process. Other advantages of a documented life cycle model are that it enhances the understanding of the process among the developer and mandates the software development organizations to accurately define the every activity in the life cycle. a documented process model helps to identify where exactly the required tailoring should be occurred. Nowadays it is very rare to find a software organization not documenting the lifer cycle model it follows. A documented life cycle model is also a mandatory requirement of modern quality assurance technique. This means unless a software organization has a documented process it cannot be considered to be capable of developing quality software products. Thus it is important that not only should a software development organization follow a well- defined process but it should also adequately document the process it is following. Besides clearly identifying the different phases in the life cycle model of the software product a life cycle model normally defines the entry and exit criteria for every phase. A phase can begin only when the corresponding phase entry criteria is satisfying. Similarly a phase can be considered to be complete only when the corresponding exit criteria is satisfied. The phase exit criteria for the software requirement specification for example, can be that the Software Requirement Specification (SRS) document has been developed, internally reviewed and approved by the customer. If there is no clear specification of the entry and exit criteria for every phase and if no life cycle model is followed it becomes very difficult to chart the progress of the project. This usually leads to a problem that is identified as the 99% complete syndrome. This syndrome appears when there is no definite way to assess the progress of the project; the optimistic team members feel that the project is 99% complete even when the project is far from its completion. The classical waterfall model is intuitively the most obvious way to develop software. Though the classical waterfall model; is elegant and intuitively obvious, we will see that it is not a practical model in the sense that is can not be used in actual software development project. Thus we can consider this model to be a

11

theoretical way of developing software. But wee also study this model because all other life cycle models are essentially derived from the classical waterfall model. The classical waterfall model divides the life cycle into the phases shown in figure 1.

Classical waterfall Model The name of this model is justified by its diagrammatic representation, which resembles a cascade of waterfall. This model breaks down the life cycle into an intuitive set of phases. The different phases of this model are feasibility studies, requirement analysis and specifications, design coding and unit testing, integration and system testing and maintenance. The different phases starting from the feasibility study to the integration and system-testing phase are known as the development phases. The part of the life cycle model between the feasibility study and product testing and delivery is known as the development part. At the end of the development part of the life cycle the product becomes ready to the deliver to the customer. The maintenance phase commences after the completion of the development phases. And activity that spans all phases of any software development is project management. Completion of each phase typically requires relatively different amounts of effort to be put in by the development team. The relative magnitudes of effort necessary for completing the activities in different phases of a typical product are shown in figure2.

1: Requirement Analysis and Specification 2: Design 3: coding and Unit Testing 4: Integration And System Testing 5: Maintenance

Relative effort distribution among different phases of a typical product. Observed that among all the life cycle phases the maintenance part normally requires the maximum efforts. However among the development phases, the integration and system-testing phase requires the maximum effort for development of a typical product. The classical waterfall model is an idealistic one since it assumes that no development error is ever committed by the engineers during any of the life cycle phase. However in practical development environments the engineers do commit a large number of errors in almost every phase of the life cycle.

12

The source of the defect can be many: oversights, wrong assumptions, use of inappropriate technology, communication gap among the project engineer etc. these defects usually detected much later in the life cycle. For example a design defect might go unnoticed till we reached the coding or testing phase. Once a defect is detected the engineer need to go back to the phase where the defect has occurred and need some of the work done during that phase and the subsequence phases to correct the defect and its effect on the later phases. Therefore in any practical; software development works it is not possible to strictly follow the classical waterfall model. Feedback paths are needed in classical waterfall model from every phases to its preceding phase as shown in figure 3 to allow the correction of the errors committed during the phase that is detected in later phases. Iterative waterfall Model Though errors are inevitable in almost every phase of development, it is desirable to detect these errors in the same phase in which they occur. However it may not always be possible to detect all errors in the same phase in which they occur. Nevertheless the errors should be detected as early as possible. Even though a basic understanding of the waterfall model is necessary to be able to appreciate the other development processes the waterfall model suffers from many shortfalls. Some of the glaring shortcomings of the waterfall model are the following: The waterfall model cannot satisfactorily handle the different types of risks that a real life software project is subjected to. e.g. the waterfall model assumes that the requirements be completely specified before the rest of the development activity can start. Therefore it cannot be accommodate the uncertainties that exist at the beginning of moist of the project. As a result it cannot be satisfactorily used in projects where only rough requirements are available at the beginning of the project. To achieve better efficiency and higher productivity most real life projects cannot follow the rigid phase sequence imposed by the waterfall model. A rigid adherence to the waterfall model creates blocking states in the system. That is some team members would have to wait for a phase to be completed before they can start their next activity. This is clearly wastage of resources and such wastages are rarely tolerated in real projects.

3. TECHNOLOGY USED
DB : MICROSOFT SQL SERVER COMPONENTS: VB.NET 13

4. NATURE OF APPLICATION Any student of the institute is the general user of this system and administrator(tpo in charge) of the system is the super user. The general students get into the system through general log-in and the administrator(tpo in charge) does the same through the admin log-in to access their respective accounts. This system contains a available companies page
for the students . User(students/administrator) has to login to welcome page before doing anything. Login functionality should check the authenticity of the user from the database. User(students/administrator)can change their respective log-in passwords at a time of their choosing or will. The administrator can check the fulfillment of any students eligibility for a given upcoming companys campussing.Any student of the institution can update their profile(S) at a time of their will or requirement.A crystal report can be generated for the purpose of proper information of the eligible students for any particular upcoming campuss interviews.

5. SOFTWARE Requirements Specification 5.1 System Requirements


INTRODUCTION: 5.11 Purpose: - The purpose of this document is to be describing the external requirements for e TRAINING AND PLACEMENT system. It also describes the interface of the system. 5.12 Scope: - This document is the only that describes the requirements of a system. It is meant for use by the developer and will be the basis for the validating the final delivered system. Any changes made to requirements in the future will have to go through a formal change approval process. The developer is responsible for asking clarifications where necessary and will alterations without the permission of the student. 5.13 Abbreviations and Symbols Used: - Any text enclosed within << and >> represents the replicable parameters. 5.14 Developer Responsibilities Overview: - The developer is responsible for: 14 make any

a) Developing the system. b) Installing the software on the clients hardware. c) Conducting any user training that might be needed for using the system. d) Maintaining the system for a specific duration.

5.15 GENERAL DESCRIPTION: Product function overview:student is the user of the system and administrator of the TRAINING AND PLACEMENT mang. is the super use When the user types in the login page of the system, a Welcome page is shown which has a menu on the left hand side, a banner at the top and related links to other pages. This system contains an online profile for the student. User has to login to welcome page before processing anything. Login functionality should check the authenticity of the user from the database. Menu should contain following screens;

View details:

if the user is registered then registration screen should be available with the updataion facility.

This Screen will show different types of letter which can be ordered on line. Provide an image for each student details those are satisfying the eligible criteria. On selecting any one of elligible type like marks,certification,skillset,streamwise. user soon find out tose students profiles. Student can any time check out the upcoming company list which are coming for campussing.

Generate List (eligible stud list & upcoming com list ):

Generate report:

This screen contains the information about the eligible students list which is printable. . Change password: student and administrator can any time change his /her password from this menu. Help: this form is designed for students to help them for using the system for some regular queries. 15

Exit: this is the function where user can any time exit from the system

5.16 User Characteristics: The main users of this system will be computer operators who have a sound knowledge of computer fundamentals and can use programs as editors and word processors. They should know how to use a Printer and Scanner and can access internet smoothly to access their company website. 5.17 General Constraints:The workstations should at least have the following configurations: 5.18 General assumptions and dependencies:The photographs should be scanned using a scanner and then the image should be converted to JPEG format using any image converting utility like Microsoft Photo Editor.

5.19 SPECIFIC REQUIREMENTS Inputs and Outputs Files: Input File1: Contains the following information about the details of a student id, name, address, email, residenceno, userid, Password, ten, twelve, graduation, post graduation, certificateset1, skillset1, languages, experience, course, coursesession, fileupload, hobbies, 16

extracurricular Input File2: Contains the following information about the administrator userid, Password

5.2 Hardware Requirements


PROCESSOR: -Intel Pentium 4 MOTHERBOARD: -Intel Original / 845 chipset HARD DISK: -40 GB RAM: -256 MB

ADSL MODEM: -256 KBPS (BROAD BAND) MONITOR: PRINTER: -15 COLOUR SVGA Color Monitor -Desk Jet or Dot Matrix Printer or Laser

CD ROM DRIVE:-40X CACHE MEMORY:-566 KB

5.3 Software Requirements


OS : Microsoft Windows 2000 / Microsoft Windows XP DB : MICROSOFT SQL SERVER COMPONENTS: VB.NET BROWSER : Internet Explorer / Mozilla / Netscape Reporting Tool: Crystal Repor 5.4 Software Interface: To run the above proposed software in the clients hardware properly the machine should support the following interfaces i) Operating System Windows 9X, 2000, XP ii) Vb.net 17

iii)

Microsoft sql server

5.5 EXTERNAL INTERFACE REQUIREMENTS 5.5.1 User Interface : The proposed software is totally based upon GUI. Thus maximum data entry workload will be reduced by the introduction of several controls like List box, Combo box, Check box, Radio buttons etc. and it has following web based (webpage) windows listed below. Password protection window Main operational window Data entry window for administrator Browser window for student Data entry window for personal details Browser window for help Data entry window for changing password Browser window for company list

5.6 Acceptance Criteria Before accepting the system, the developer must demonstrate that the system works fine on the clients hardware on few validate data. The developer will have to show through test cases that all condition is satisfied. After demonstration, the client should pay the price of the software to the developer within a week.

6. SYSTEM DESIGN
Meaning Of Design: The term 'design' means to plan or mark out the form and method of a solution. It represents the major characteristics of the final system and determines the upper found in quality for the system. Beginning once software requirements have been analyzed and specified, software design is the first of three technical activities design, code generation and test that are required to built and verify the software.

18

Design Principles: Basic design principles enable the software engineer to navigate the design process. They are as follows The design should be traceable to the analysis model. The design should exhibit uniformity and integration. The design should be reviewed to minimize conceptual errors. The design should be structural to accommodate change.

Design Constraints: Constraints on systems design fall into two categories: Development constraints Operational constraints

Development constraints include limitations on resource consumptions, overall costs, machine time, man-hours and schedule limitations. Operational constraints are expressed in terms of maximum memory size or maximum response time for an on-line system. Structured Design: Structured design is the art of designing the components of a system and the relationship between these components in the best possible way. It is the process of deciding the way the components are to be interconnected to solve some well-specified problem. Structured design merely consolidates, formalizes and makes visible those design activities which happen inevitably and invisibly in the course of every system development project.

19

Snaps of our window form in following pages From page no:19 -28

20

21

22

23

24

25

26

27

28

2 Pic of database

29

Coding window pic from page no 2938

30

31

32

33

34

35

36

37

38

39

7. CODE OPTIMIZATION
As we all know, a compiler is a program that reads the source program in a high-level language and translates it into (typically) machine language. This is a complicated process involving a number of stages. If the compiler is an optimizing compiler, one of these stages "optimizes" the machine language code so that it either takes less time to run or occupies less memory or sometimes both. Of course, whatever optimizations the compiler does, it must not affect the logic of the program i.e. the optimization must preserve the meaning of the program. One might wonder what type of optimizations the compiler uses to produce efficient machine code? Since in no case the meaning of the program being compiled should be changed, the compiler must inspect the program very thoroughly and find out the suitable optimizations that can be applied. Some of the code optimization techniques that are commonly used are listed below. Constant Folding : Constant folding is the simplest code optimization to understand. Let us suppose that you write the statement x = 45 * 88; in your C program. A non-optimizing compiler will generate code to multiply 45 by 88 and store the value in x. An optimizing compiler will detect that both 45 and 88 are constants, so their product will also be a constant. Hence it will find 45 * 88 = 3960 and generate code that simply copies 3960 into x. This is constant folding, and means the calculation is done just once, at compile time, rather than every time the program is run. Common Subexpression Elimination: Many a times, it happens that the same expression is evaluated at different places in the same program and the values of the operands in the expression do not change in between the two evaluations of that expression. For example, the program may evaluate say a * b at the beginning and at the end. If the values of a and b do not change in between these two evaluations of a * b, then instead of evaluating a * b again at the end, we can save the result of the evaluation of a * b at the beginning in some temporary variable and use it at the end. This will help eliminate redundant computations in the program. This optimization is called as common subexpression elimination.

40

Dead Code Elimination: Dead code is the code in the program that will never be executed for any input or other conditions. A common example is an if statement. If the compiler finds out that the condition inside the if is never going to be true, then the body of the if statement will never be executed. In that case, the compiler can completely eliminate this dead code, thus saving the memory space occupied by the code. Strength Reduction using Induction Variable: One type of code optimization is strength reduction in which a "costly" operation is replaced by a less expensive one. For example, the evaluation of x2 is much more efficient if we multiply x by x rather than call the exponentiation routine. One place where this optimization can be applied is in loops. Many times in a loop, one variable changes in synchronization with the loop variable. Such a variable is called as induction variable.

8. Implementation Modeling
8.1 Flow Chart Administrator (userid,Password) Studentdetails (id,name,address,email, residenceno, userid, Password, ten, twelve, graduation, post graduation,certificateset1,skillset1,languages,experience,course,coursesession,fileupload, hobbies,extracurricular)

9. Data Structure
9.1 Table in the Database Table Name Administrator Studentdetails userid,Password id,name,address,email, residenceno, userid, Password, ten, twelve, graduation, post graduation,certificateset1,skillset1,languages,experience, course,coursesession,fileupload,hobbies,extracurricular Attributes

41

Pic of dfd diagram

42

10. Database design:


Data Dictionary / Data Structure 1. Table name : studentdetails Primary Key: userid
Data type Width Constraint Description

Column name

id name address email residenceno mobileno userid Password ten

Number varchar varchar varchar varchar varchar varchar varchar varchar

50 50 50 50 50 50 50 50 50

Unique, not null Not null Not null Allow null Not null Not null Not null Not null Not null

Identification of student Student name student address email id residence no mobile no user id password of corresponding userid % of marks scored in class 10 % of marks scored in 12

twelve graduation

varchar varchar

50 50

Allow null % of marks scored in graduation Allow null Allow null % of marks scored in p.graduation Certificate information Allow null Allow null information Allow null information Allow null information Allow null information Allow null Allow null information information information

post graduation

varchar

50

certificate set1 skillset1 languages experience course coursesession hobbies extracurricular

varchar varchar varchar varchar varchar

50 50 50 50 50

varchar 50 varchar 50

2 Table name : 43

administrator Primary Key: userid


varchar userid Password varchar 50 Not null information 50 Not null information

11. Sources of data :


a. For vb.net i. http://www.vbnethomeandlearn.co.uk/NET/vb Net.html ii. msdn.microsoft.com/vb.net/code iii. http://www.learnvisualstudio.net/default.aspx b. For sql server i. http://computer.howstuffworksinserver.com/ ii. iii. http://www.markupxservertutorials.com/ http://www.webdesignfromhomeserver.org/web/html-andcss/articles/

II. We got some inspiration form the following websites a. http://www.letshavejoby.com/walkin.htm

44

12. TESTING Testing strategies


Software testing is a critical element of software quality assurance and represents the ultimate review of specialization, design and code generation. The increasing visibility of software as a system element and the attendant costs associated with a software failure are

Techniques

and

Testing

motivating forces for well planned thorough testing. It is not unusual for a software development organization to expend between 30-40 % of the total project effort in testing. The following are the few characteristics of testing:

This is a major quality control measure, which is applied for software development.

After

coding

phase

available

computer

programmers

are

executed for testing purpose.

Testing detects and uncover the errors introduce during coding phase

Testing also detects and uncovers errors, which are occurring in the previous phases like requirement phase, design phase etc.

The following testing strategies are used for the development of the software: 45

Unit testing Integration testing Validation testing System testing

Unit testing 1. As per this testing strategy all parts of a module, e.g. individual forms, reports etc. is tested separately as per its own operation. 2. To exercise the different parts of any module and also their code to detect coding errors.

Integration Testing 1. During integration of module this testing strategy is used. For example say while testing the entire sales order generation process starting from offer Followup to sales order preparation, can be done using integrated testing method. 2. To detect design an error focusing on the interconnection between modules uses these testing strategies. Validation Testing 1. By this testing strategy validation criteria is tested form wise. 2. It provides final assurance, that the software meets all

functional, behavioral and performance requirement.

46

3. This testing strategy is performed keeping in mind the client requirements for individual functional elements of a form (UI). System Testing 1. This testing strategy is used to verify overall system function or performance is achieved or not. Apart from the above-mentioned strategies there are other testing strategies that are also available and widely used in the industry. During the development of this software I also followed the some of the strategies mentioned below:

Regression Testing Alpha and Beta Testing Security Testing Stress testing

Regression Testing: - Each time a new module is added as part of integration testing, the software changes. New data flow paths are established, new I/O may occur, and new control logic may be invoked. These changes may cause problem with functions that previously worked flawlessly. In the context of an integration test strategy, regression testing is the re-execution of some sub set of tests that have already been conducted to ensure that changes have not propagated un-intended side effects. Alpha and Beta Testing: - It is virtually impossible for a software developer how the customer will really use a program. When 47

customized software is built for customer, a series of acceptance test are conducted to enable the customer to validate all requirements. A customer conducts the alpha test at the developers site. The software is used in a natural setting. In my last stage of the project while I am performing testing I have also done the same. Alpha tests are normally conducted in a controlled environment The beta test is conducted at the customer site by the end-users of the software. It is basically a real life testing of the software with real data. Security Testing: - Security testing attempts to verify that protection mechanisms built into the system will, in fact, protect it from improper penetration. I have also performed the security testing by trying to enter in the system with wrong user id and password. Try to break into the system by changing only the case of the password.

Stress testing: - Stress testing executes a system in a manner that demands resources in abnormal quantity, frequency, or volume. To perform stress testing I have used a very low configuration machine. In that machine I opened multiple instances of the same software and fire transactions and perform query in the database using the different user front-end interface. Testing techniques used for this software development can be characterized as per the following chart: -

48

Testing Techniques

White Box

Black Box

Basic Path testing

Control structure testing

Equivalence Partitioning

Summarizing findings and verifying them

Condition Testing

Dataflow Testing

Loop Testing

White box Testing or Structural Testing

This testing technique is used in unit testing strategy only. This technique guaranties that all independent paths within a form/module have been executed at least once.

It executes all loops at their boundary and within their operational bounds.

Basis Path Testing

It enables that the test case to be designed depending on the logical complexity measure of a procedure/forms.

This measure is used as a guide for designing a basis set of execution path.

Control Structure testing can be divided into three parts: -

49

Condition Testing

This testing is basically done to check the logical conditions in a code written inside a form or module.

Measurement of test coverage of a condition is simple by using this technique. The test coverage of conditions in a program provides guidance for the generation of additional tests for that particular program.

Dataflow Testing

This testing is carried out in order to identify the flow of data within a program. The flow of data within a program some times encounter unnecessary loops or delay due to miss judgment from the part of the programmer.

This method is useful for selecting test paths of a program containing nested if and loop statements.

Loop Testing

It is a white box or code testing technique that focuses exclusively on the validity of loop constructs.

Different types of loops can be tested using this technique e.g. simple loop, concatenated loops, nested loops and unstructured loops.

After white box testing is done it is the turn of the Black box testing or functional testing. Features of the same are given below: -

50

This is not a fully complementary approach of white box testing but it uncovers a different set of errors rather than white box testing.

By applying this testing technique I can be able to derive all functional requirements i.e. all input and output conditions are fulfilled or not.

This testing technique I have performed after completing the black box testing.

Equivalence Partitioning

This testing method divides the input domain of a Programme into classes of data from which test cases can be derived.

By this partitioning the test case design will able to uncover the errors, which are occurred in this class.

Boundary Value Analysis

BVA leads to a selection of test cases that exercise boundary values.

BVA is a list of case design technique, which is complement of equivalence partitioning.

By using BVA the front end validations can be checked or put under stress. Suppose a field can handle 100 characters, what will happen if 101 characters are entered.

In the following section Test data and error listed for a given test case is shown for better understanding. These data are real data and used 51

during real life testing. For this purpose I have taken few sample forms from this project for better understanding. A Sample Test case structure Group-1 Category-1 Test Case-1 Test Case-2 . test Case-N Category-2 . . Category-N Group-2 . Group-N For Example: Group-1= User Interface Testing Category-1= Validation Testing Test Case-1=Maximum Length checking Test Case-2=Alphanumeric support checking Test Case-2=Blank Checking Category-2=Design Testing Test Case-1=Caption Checking of All components 52

Test Case-2=Size uniformity checking. Test Case-3=Positional uniformity checking.

13.1 GNATT CHART


A Gnatt chart is perhaps the simplest from of formal project management. The Gantt chart is used almost exclusively for scheduling purpose and therefore controls only the time dimension of projects.

Let us drawn Gantt chart for the tasks identified in the chart: we estimate the number of days required for each of the eight tasks as follow: preliminary investigation, 1; feasibility study,2; analysis, 2; detail design, 2; database design, 1; coding and testing, 3; validation testing, 3; preparation of project report, 1. Using these estimates, we can draw the Gantt chart for the compiler project.

Brief introduction to GNATT charts:


Gantt charts can be used for project planning show project activities and time required. The Steps to be performed are: ----1. Identified which tasks are to be performed by which date. 2. Identified tasks, which can be performed at the some time. 3. Identified tasks, which are dependent on completion of some other tasks.

chart.

Project Activity
Preliminary Investigation Feasibility Study Analysis Preparation of Synopsis Detailed Analysis Database Design System Design Coding and Unit Testing Validation Testing Building the Executable

53

01/04/2008

05/08/2007

19/08/2007

06/09/2007

08/09/2007

09/11/2008

16/02/2008

25/03/2008

04/07/2007

06/08/2007

02/08/2007

07/09/2007

06/10/2007

25/11/2007

09/18/2008

10/02/2008

08/03/2008

22/03/2008

7/10/2007

01/2/2008

1/15/2008

Plot activities on GNATT

preparation of Project

13.2

PERT CHART

The most sophisticated planning method is the Program Evaluation and Review Technique (PERT). This method, developed in 1958 by the US Navy and Booze, Allen, and Hamilton, a management consulting firm, ahs been used in many complex projects requiring careful planning and management. Information system projects must be planned carefully if they are to meet important development schedules. The time required to develop a system can be estimated by using historical records of the effort needed to develop similar projects. Sometimes experience or intuition is the basis of estimates. A third method uses a standard formula that takes into account program and personnel characteristics. Both project hour requirements, the number of personnel hours needed to develop a system, and the number of calendar days are important in estimating development time. PERT allows analysts to identify and assess the interdependence of activities in a project. Although the best approach to project management is to break the project into small, manageable pieces, there is a danger of losing sight of the overall project while supervising the smaller tasks.. The PERT chart is most valuable when a project is being planned and designed. When the network is finished, it is studied to determine the critical path over which the total time required will be greater than for any other path. If activities along this path are not completed on time, the entire project will be late. PERT also show the interdependencies of the tasks and assists in answering three common management questions: 1. What other activities must precede or be completed before the initiation of a specific activity? 2. What other activities can be performed while a specific activity is in progress?

3. What activities cannot be started until after the completion of a specific activity
Three time estimates for PERT: If the activity durations in a project are uncertain then activity scheduling calculations are done by using the expected values of the durations. Sometimes, such

54

expected duration estimations may not give an accurate answer. Thus, rather than estimating directly the expected completion time of an activity, three values are considered. From these times a single value is estimated for future consideration. This is called three-time estimates in PERT. The three time estimates are as under:

1. Optimistic time (to) : This is the shortest possible time to perform the activity , assuming
that everything goes well.

2. Pessimistic time (tp) : This is the maximum time that is required to perform the activity,
under extremely bad conditions .

3. Most likely time (tm) : This is the most often occurring duration of the activity ,
Statistically , it is the model value of duration of the activity . The three time estimates are reduced into a single expected time (t e) with the average formula:

te =(to+4tm+tp)/6
Activity 1 2 3 4 5 6 7 8 9 10 11 Preliminary Investigation Feasibility Study Analysis Preparation of Synopsis Detailed Analysis Database Design System Design Coding & Unit Testing Validation Testing Building The Executable Preparation of Project to 28 13 20 20 41 20 27 104 20 6 49 Duration (in days ) tp 30 15 22 22 43 22 29 106 22 8 50 tm 29 14 21 21 42 21 28 105 21 7 49 te 29 14 21 21 42 21 28 105 21 7 49

The corresponding Network Diagram As follows:

55

14. SCOPE FOR FUTURE APPLICATION

In my project the software has been developed in a modest way but it has a tremendous scope of future application. It is handled properly with supporting infrastructure new modules like online queries and response. Where we just have to entry the data randomize and the software will make the details information by internally with required program. And it can also handle the data of students record , can query of their status by a simple click. It can be added with this software to make its a complete management information system this will definitely true it self as a cost worthy software for every enduser.

Training and placement mang. can be made for enabling students for upcoming campus interviews and so that the students can groom themselves through the given facilities of downloading of sample aptitude papers, mock interviews, sample resumes in the system. In a word the system should be equipped with electronic grooming facility.

This system can also be extended to incorporate certification by t/p mang. Providing to best students. Though it will need some kind of embedded system to read the E.certification and update the system accordingly.

56

15.

Bibliography
Software Engineering : a Practitioners Approach Publication: McGraw Hill Publishing Company Fifth edition Writer: Roger S. Pressman Mastering Visual Basic 6 Publication: BPB Publication Writer: Evangelos Petroutsos Sams Teach Yourself JSP in 24 hours Publication : Tech Media SQL , PL/SQL :The programming language for oracle Writer : Ivan Bayross

Publication : BPB Publication Database system concepts

Fourth edition Publication : McGRAW Hill Publishing Company Writer : Silberschatz , Korth , Sudarshan

16 . GLOSSARY
DFD:( Data flow Diagram ): It is a graphical technique that depicts information flow and transforms that are applied as data move from input to output. DFD can represent any level of abstrction of a system or a software. 57

ERD: (Entity relationship Diagram): The entity relationship diagram as originally proposed by Peter Chem for the design of the relational database system and has been extended by the others . A set of primary components are identilfied for the ERD : data objects, attributes , relationships and various types of indicators. The primary purpose of ERD is to represent data objects and their relationships . Data objects are represented bya labeled triangle .Relationships are indicated with a labeled line connecting objects. In some variation of ERD the connecting line contains diamond that is labeled as relationship. Connection between data objects and relationshipar established using variety of symbols that indicates cardilnality and modality. Feasibility study: The study to find out the viability of a problem solution scheme. It includes study of Economic, Technical, Legal Feasibilities and alternative methods. First normal form: A database scheme is in first normal form if every relation scheme included in database scheme is in 1NF. Second normal form: A database scheme is in second normal form if every relation scheme included in database scheme is in 2NF. Third normal form: A database scheme is in third normal form if every relation scheme included in database scheme is in 3NF. LAN (Local Area Network): Any physical network technology designed to span short distances. Unusually LANs operate at tens of megabits per second. MS-SQLSERVER 2000: MS-SQLSERVER 2000 is an RDMS package developed by Software giant Microsoft corporation. The MS-SQLSERVER RDMS is available in configurations MS-SQLSERVER workgroup, MS-SQLSERVER server. Package: A set of PL/SQL procedures functions, cursors, and other PL/SQL variables are bundled together in a package.

58

Partitioning: Problems often too large and complex to be understood as a whole. For this reason we tend to partition such problems into parts that can easily understood and establish interfaces between parts so that the overall functions can be accomplished. Primary Key: Primary key is a key that is a single attribute or a combination of attributes of an entity set and provides the uniqueness of an entity. RDBMS(Relational Database Management System) : Relational database is an

information system that presents information in the form of rows contained in a collection of tables, each table processing a set of one or more columns and follow the rules of relational algebra. SQL (Structured Query Language): Structured query language is a nonprocedural language that is the official and defector standard language for interfacing with relational database. Trigger: Database-level triggers is a group of PL/SQL statements: (i) Statement-level (ii) Row-level Front-end triggers is one or more pl/sql statements that execute when an event occurs, such as pressing a button. A trigger can be defined at the three levels: at the form level, at the block level and at the item level. View: Any relation that is not a part of a database i.e. a virtual relationship is made available to the users as a view. WWW (World Wide Web): Large-scale information service that follows users to browse information. WWW offers a hypermedia system that can store information as a text, graphics, audio etc.

59

17. CONCLUSION
This project help a better student support and time saving factor. It also supports better students queries and would also provide better reports and information to the management for smooth running. There is no chance of human error, as the various reports will be printed without any human intervention. The various types of reports will be available quickly without any effort.

60

You might also like