Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
[THESIS TITLE] by [Names & Roll Number of Students] A thesis submitted in partial fulfillment of the requirements for the degree of Master of Computer Science MCS to Department of Information Technology University of Haripur Khyber Pkahtunkhwa, PAKISTAN (August 2010) FINAL APPROVAL This is certify that we have read the thesis submitted by Javed Khan, Atiq ur Rehman and Waseem Akram. It is our judgement that this thesis is of sufficient standard to warrant its acceptance by the Department of Information Technology Hazara University, Mansehra for MCS (Computer Science). COMMITTEE 1. External Examiner 2. Internal Examiner 3. Supervisor 4. Head of Department Date ii [DEDICATION] To my father iii DECLARATION We hereby declare that this software, neither as a whole nor as a part there of has been copied out from any source. It is further declared that we developed this software and this report entirely on the basis of our personal efforts made under the sincere guidance of our project supervisor. If any part of this software is proved to be copied or found to be a report of some other, we shall standby the consequences. No portion of the work presented in this report has been submitted in support any application from any other degree of qualification of his or any other university or institute of learning. We further declare that this software and all associated documents, reports and records are submitted as partial requirement for the degree of BCS (Computer Science). We understand and transfer copyrights for these materials to University of Haripur. We shall not sale this software and documents not get any financial gains from these. Javed Khan (25403): Atiq ur Rehman (25397): Waseem Akram (25429): iv ACKNOWLEDGMENT With the great name of ALLAH, the most gracious and merciful, who gifted us blessings, strength and mental powers, without which we could not complete this project. Before we get into thick of the things we would like to add a few heart felt words for the people who were part of this project in numerous ways. People who gave unending support right from the stage project idea were conceived. In particular we are extremely indebted our teacher and supervisor Sir Noor ul Amin of this project, and also we are thankful to our class fellows and juniors for their support. Vivacious and exuberant approach always put us on right track. We are extremely thankful to our beloved Parents and family whose prayers and continuous encouragement made the successful completion of this project possible. Javed Khan Atiq ur Rehman Waseem Akram v Project in Brief Project Title: Virtual Tour of Pakistan Developed By: [Name of Students] Supervised By: [Supervisor Name] Tools Used: ASP.Net with C#, HTML, CSS and SQL Server 2008 System Used: Pentium 4 Operation System: Microsoft Windows 7 vi Table of Contents CHAPTER 1 1.1 1.2 1.3 Introduction ..................................................................................................................... 2 Problem Definition.......................................................................................................... 2 Nature of Problem ........................................................................................................... 2 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.4 1.5 1.6 1.7 CHAPTER 3 FEASIBILITY ..................................................................... 11 Review of Documents ..................................................................................................................... 11 Conducting Interviews .................................................................................................................... 12 Feasibility Techniques .................................................................................................. 12 3.5.1 3.5.2 3.5.3 3.6 3.7 Redundancy of Data ..........................................................................................................................7 Time Consuming ...............................................................................................................................7 Inaccurate data .................................................................................................................................8 Inflexible Data ..................................................................................................................................8 Difficult to Modify ............................................................................................................................8 Excessive Use of Stationary ..............................................................................................................8 Chances of Inaccurate Calculations ..................................................................................................8 Inconsistency of Data ........................................................................................................................8 Lack of Standards..............................................................................................................................8 Tedious Information Access .........................................................................................................9 Delayed Information ....................................................................................................................9 Security ........................................................................................................................................9 Integrity ........................................................................................................................................9 Project Definition .......................................................................................................... 11 Preliminary Investigation .............................................................................................. 11 Conducting the Investigation ........................................................................................ 11 3.4.1 3.4.2 3.5 EXISTING SYSTEM.............................................................. 7 Existing System ................................................................................................................. 7 Drawbacks and Limitation of the Existing System......................................................... 7 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.2.7 2.2.8 2.2.9 2.2.10 2.2.11 2.2.12 2.2.13 3.1 3.3 3.4 Response time factor .........................................................................................................................3 Redundancy of Data ..........................................................................................................................3 Time Wastage ...................................................................................................................................3 Work load..........................................................................................................................................3 Inaccurate Data .................................................................................................................................3 Inflexible Data ..................................................................................................................................3 Lack of Data Security .......................................................................................................................3 Space Consumption...........................................................................................................................4 Objectives of the project ................................................................................................. 4 Project Organization ....................................................................................................... 4 Gant Chart for Project Development .............................................................................. 5 Outputs from the Project ................................................................................................. 5 CHAPTER 2 2.1 2.2 INTRODUCTION.................................................................. 2 Economical Feasibility .................................................................................................................... 12 Technical Feasibility ....................................................................................................................... 13 Operational Feasibility .................................................................................................................... 14 Feasibility of the Report................................................................................................ 14 Process Model ............................................................................................................... 15 3.7.1 Spiral model .................................................................................................................................... 15 vii CHAPTER 4 4.1 4.2 4.3 4.4 4.5 4.6 4.7 PROPOSED SYSTEM ......................................................... 17 Proposed System ........................................................................................................... 18 Purpose of this Document ............................................................................................. 19 Scope of project ............................................................................................................ 19 Objective ....................................................................................................................... 20 System Proposal ............................................................................................................ 20 Management by Local Server ....................................................................................... 20 Features of the Proposed System .................................................................................. 21 4.7.1 4.7.2 4.7.3 4.7.4 4.7.5 4.7.6 4.7.7 4.8 4.9 Security ........................................................................................................................................... 21 User-Friendly .................................................................................................................................. 21 Less time consuming ....................................................................................................................... 21 Error free ......................................................................................................................................... 21 Generation of Reports ..................................................................................................................... 21 Usability .......................................................................................................................................... 21 Understand ability ........................................................................................................................... 22 Problems Addressed by the Solution ............................................................................ 23 Advantages of the Proposed System ............................................................................. 23 CHAPTER 5 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 SYSTEM DESIGN ............................................................... 25 System Design .............................................................................................................. 25 Developing a logical data model................................................................................... 25 ER (Entity-Relationship) diagram ................................................................................ 25 Choosing a development tool........................................................................................ 25 Implementing the functionality in stages ...................................................................... 26 Using a configuration management tool ....................................................................... 26 Database management System (DBMS) ....................................................................... 26 Database Management System Models ........................................................................ 27 5.8.1 5.8.2 5.8.3 5.8.4 5.9 Network .......................................................................................................................................... 27 Hierarchical ..................................................................................................................................... 27 Relational ........................................................................................................................................ 27 Object –Oriented ............................................................................................................................. 27 Data base Design........................................................................................................... 27 5.9.1 5.9.2 5.9.1.1 Logical Database Design ................................................................................................................ 29 Physical Database Design .............................................................................................................. 30 Data Flow Diagram ................................................................................................... 31 Level 0 DFD .................................................................................................................................................. 32 Level 1 DFD .................................................................................................................................................. 32 Level 2 DFD .................................................................................................................................................. 33 5.9.1.2 Entity Relationship Diagram..................................................................................... 34 5.10 Database Diagram ......................................................................................................... 40 5.11 Physical Design ............................................................................................................. 41 5.12 Data Dictionary ............................................................................................................. 41 5.12.1 Input Design ............................................................................................................. 41 CHAPTER 6 6.1 6.2 USER MANUAL .................................................................. 48 Home Page .................................................................................................................... 48 Login form .................................................................................................................... 49 viii 6.3 6.4 6.5 6.6 6.7 6.8 6.9 6.10 6.11 6.12 6.13 About............................................................................................................................. 50 Place Information .......................................................................................................... 51 Travel Agency............................................................................................................... 52 Police Information ........................................................................................................ 53 Hospital ......................................................................................................................... 54 Emergency Services ...................................................................................................... 55 Add Emergency Information ........................................................................................ 56 Add Hospitals................................................................................................................ 57 Add Local Government................................................................................................. 58 Add Place Information .................................................................................................. 59 Add Travel Agency ....................................................................................................... 60 CHAPTER 7 7.1 7.2 7.3 7.4 SYSTEM TESTING & IMPLEMENTATION ...................... 62 Evaluation ..................................................................................................................... 62 Testing Objective .......................................................................................................... 62 System Testing .............................................................................................................. 62 Stepwise Testing or Verification Testing ..................................................................... 63 7.5 7.6 7.7 7.7.1 7.7.2 7.7.3 7.7.4 7.7.5 7.7.5.1 7.7.6 7.7.7 7.7.8 7.7.9 7.8 7.9 7.10 7.11 7.11.1: 7.12 7.13 CHAPTER 8 Computer program testing .............................................................................................................. 63 The place of Testing in SDLC ........................................................................................................ 63 Testing Strategies ............................................................................................................................ 64 Assertion Testing ............................................................................................................................ 64 Functional Testing........................................................................................................................... 64 Stress Testing .................................................................................................................................. 64 Black-Box Testing .......................................................................................................................... 64 White- Box testing .......................................................................................................................... 65 Benefit of White Box Testing ................................................................................................... 65 Unit Testing .................................................................................................................................... 66 Beta Testing .................................................................................................................................... 66 Regression Testing .......................................................................................................................... 66 Integration Testing .......................................................................................................................... 66 Testing Specification Plan .............................................................................................................. 66 Testing Metrics ............................................................................................................................... 67 Software Bug .................................................................................................................................. 68 Project Testing Report .................................................................................................................... 68 Trace-ability Matrix for This Project ......................................................................................... 69 Conclusions ..................................................................................................................................... 69 The software at its best .................................................................................................................... 70 REFERENCES .................................................................... 72 ix CHAPTER 1 INTRODUCTION 1 Chapter 1 1.1 Introduction Introduction A virtual tour is a collection of an existing location, usually composed of a sequence of video or still images. They also may use other multimedia elements such as sound effects, music, narration, and text. The phrase "virtual tour" is often used to describe a variety of video and photographic-based media. Panorama indicates an unbroken view, since a panorama can be either a series of photographs or panning video footage. However, the phrases "panoramic tour" and "virtual tour" have mostly been associated with virtual tours created using still cameras. Such virtual tours are made up of a number of shots taken from a single vantage point. The camera and lens are rotated around what is referred to as a no parallax point (the exact point at the back of the lens where the light converges). Virtual tours are used extensively for universities and in the real estate industry. Virtual Tours can allow a user to view an environment whilst on-line. Currently a variety of industries use such technology to help market their services and product. Over the last few years the quality, usability and accessibility of virtual tours has improved considerably, with some websites allowing the user to navigate the tours by clicking on maps or integrated floor plans. 1.2 Problem Definition Tourism has been transformed over the course of the last decades, from a privilege of the few to a massive phenomenon, which contributes considerably to the local and national economy. Besides budget airlines and organized tourism resorts, the Internet has played a major role in the transformation of the tourism industry. The new marketing opportunities the Internet has given travel agents and tourism professionals, have brought massive changes on vacation promotion and planning. 1.3 Nature of Problem During the analysis following problem discovered. 2 1.3.1 Response time factor In file system if the record of the student required, it consumed hours. 1.3.2 Redundancy of Data While analyzing current system, it has been found that current system has excessive amount of data redundancy as same information is stored in different registers. 1.3.3 Time Wastage The most important factor for measuring the efficiency of any system is time. Delay information and time wastage both are consequence of manual processing of data because these activities take too much time, which must be spent in other useful activities. It take days to prepare result and admission merit list. 1.3.4 Work load With increasing number of employees the work load on the concerned staff’s becoming more and heavier. Making it more difficult for the preparation of large data. 1.3.5 Inaccurate Data Manual system cannot enforce the data validation in meaningful manner because there is a chance of invalid entry by manual system. User may not enter all the fields in the registers so the data can be inaccurate and can cause damage. 1.3.6 Inflexible Data Data is stored in current manual system in such a way that it is not in a useful form and thus cannot be used for generation any reports easily. 1.3.7 Lack of Data Security Due to paper work, it is quite possible for unauthorized person to disturb the accounts and other records from the register. So it can result any false entry, which causes the harm to the institution, as there is no backup and security checks. 3 1.3.8 Space Consumption The space used in file systems has increased over the course of our study, as the department has lots of files so the data is redundant which consume the space, the problem can be solved by the use of the computerized system. 1.4 Objectives of the project To solve the problems it is suggested that a computer-based system will be the best choice and by replacing the existing system to computer-base system, the system will be more efficient, fast, reliable and user friendly. Updating of record is much important in proposed system. If any change is made in student’s record then record will be easily update at one place. 1.5 Project Organization The communication and co-ordination issued will be solved by informal interpersonal procedure. Members Most Concerned tasks Javed Khan Analysis, Design, Coding, Testing & Documentation Atiq ur Rehman Waseem Akram 4 1.6 Gant Chart for Project Development Following grant chart shows the sequence of phases and progress of project graphically. Finish Line Installation &Training Progress Implementation Design Analysis Time 1.7 Outputs from the Project Software Empty Database Project Documentation 5 CHAPTER 2 EXISTING SYSTEM ANALYSIS 6 Chapter 2 Existing System 2.1 Existing System The study of the existing system is necessary because in this way, we become familiar with the existing system and we come to know how it works and what modifications do we want to make in the existing system. Keeping this in mind we used different tools and techniques of information gathering. These techniques which we used for our analysis are as follow Review of the literature, procedure and forms On site observation Interviewing Questionnaires Our existing system is as follows: 2.2 Drawbacks and Limitation of the Existing System Manual system is beneficial to the individual, if their requirements are simple and amount of data to be processed is limited but data volume is increased, then it is difficult to manage data. Manual system is quite inexpensive at lower volume but as for such as the department with huge amount of data, the following drawbacks are to be encountered: 2.2.1 Redundancy of Data While analyzing the current system, it has been found that the current system has as excessive amount of data redundancy. It is exhibited by the common set of records across several manually kept documents. The records are maintained at several places and it causes redundancy of data that are stored at more than one place which not only wastes the man hours but also the stationary. 2.2.2 Time Consuming Because of manual data handling and processing, activities take too much time. Therefore, a lot of time is wasted which must be spent in doing other useful work. It requires much time for its data processing activities. It requires a lot of time to manage a system. 7 2.2.3 Inaccurate data The more writing work is involved in maintaining the record of different entities in the departments. Therefore, there are more chances of man-oriented errors and mistakes, which result in an inaccurate and unreliable source of information. 2.2.4 Inflexible Data Data which stored in the current system in such a way that it is not in a very useful form and thus cannot be used in many different ways easily. 2.2.5 Difficult to Modify The data stored in any file can be required to be modified at any time, but in manual system, the data cannot be easily modified. 2.2.6 Excessive Use of Stationary During the manipulation of records, the maintenance of record consumes a lot of stationary for the storage, retrieval, printing and processing purpose. 2.2.7 Chances of Inaccurate Calculations As the records are maintained manually, so there is a big chance of inaccurate calculations and can result in a loss. 2.2.8 Inconsistency of Data As the records are maintained in different levels/registers, therefore a small change in the record at one level can lead to inconsistency because there is no way to update the specific record to maintain in other level/register. 2.2.9 Lack of Standards Current system does not define any standards for working with data. The same column in one register with the same meaning has another name in another register, which creates confusion and can also lead to inconsistency. 8 2.2.10 Tedious Information Access In the existing form of system it is very difficult to access information quickly. If we want to retrieve any record of an employee, it is tedious and difficult. 2.2.11 Delayed Information As data is stored manually, if reports or other sorts of information is needed, it takes a long period of time to process the data and find the desired information. 2.2.12 Security The security of the manual system is very poor because the registers can be lost or stolen at any time, it’s may possible that any miss-haps occur such as the department building get fire then the entire important information can lost. 2.2.13 Integrity The integrity of the manual system is also suspicious because anyone can alter the data in the registers intentionally or by mistake. 9 CHAPTER 3 FEASIBILITY STUDY 10 Chapter 3 3.1 Feasibility Project Definition Tourism has been transformed over the course of the last decades, from a privilege of the few to a massive phenomenon, which contributes considerably to the local and national economy. Besides budget airlines and organized tourism resorts, the Internet has played a major role in the transformation of the tourism industry. The new marketing opportunities the Internet has given travel agents and tourism professionals, have brought massive changes on vacation promotion and planning. 3.2 Scope of the Project The Online Information System software can be used in any Tourism Department with little bit changes. Following are the purposes of the software the project being carried out to fulfil the need and requirement of the users. This project will help the user that has the problem regarding their departments’ records. 3.3 Provides the facilities of graphical user interface (GUI). Preliminary Investigation In preliminary investigation, we carried out evaluation of the project request being proposed. Information was collected that just permits to evaluate the merit of the project request and make an informal judgment about the feasibility of the proposed project in order to carry out a preliminary investigation. 3.4 Conducting the Investigation The data collected during preliminary investigation was gathered through the following two methods. 3.4.1 Review of Documents First of all brief information was obtained about the Virtual Tour by studying different documents. During this process the following information was obtained. 11 How it operates? How information comes and how is processed? And where the information is transferred after processing? These details were gathered and studied by examining the Organizational charts and written operating procedures. The operating procedures describe how the data collecting process should operate and identify the most important steps involved in receiving, managing and dispatching the data. 3.4.2 Conducting Interviews Written Documents of Virtual Tour show how the system should operate? But still they don’t include enough details to decide about the merits of the proposed system. Also they did not present user views about current system. To learn these details, interviews were conducted carefully. Interviews were made only with the Head of department, administrator, teacher, student and the lower staff related to the system. In the interviews, system features were discussed to learn more facts about the nature of project. Details were collected that explained the nature of project request. 3.5 Feasibility Techniques During the process collected information examines the project feasibility and answers the question whether the system will be beneficial to the department? For this purpose the following three tests of feasibility were studied. Economical Feasibility Technical Feasibility Operational feasibility 3.5.1 Economical Feasibility The bottom line in many projects is economic feasibility. Economical feasible solution means that is this solution is cost effective for the business? It means that if the expanses on the project are less than the benefits produced by the project or not? Before selection of an alternative solution to the system costs can’t evaluate the practical cost of the system. As soon as the requirements of new system are defined and a solution to problem is selected, cost-benefit analysis of each alternative can be evaluated and feasible solution can be selected. Software is economically feasible and it is cheap. 12 Since the system is developed as a database project for almost for all departments, so no development expenditure will be charged for the whole development and the system will be free to use for the department. The tools being used for the development at the Front-End is ASP.NET, and at the back end tool is Microsoft SQL. No other expensive tools, software, hardware or consultancy is required, so the project is very much feasible economically i.e. financial benefits must equal or exceed the financial costs. In order to do so the following steps can be considered: Estimate of hardware and software can be made and must have alternate solution for providing economical feasibility. The evaluation of benefits will be higher than the estimated total cost. Since project proposal for Virtual Tour passes all these feasibility tests, therefore, it is considered as an economically feasible system. 3.5.2 Technical Feasibility As ASP.NET and MS SQL are database based applications and most of the users now-a-days are well familiar with the use of these, so there is no need of any special skills required by the users or making them aware of the system. On the other hand the system does not have any extra ordinary technical requirements. So the project is technical feasible too. Software is easy to operate on and user can easily understand the operations of the software and proper help is also provided for the user. Technical feasibility concerns around the current system technology i.e. Software & Hardware and to what extent it can support the proposed system. It also involves the financial consideration to accommodate the technical enhancements. The necessary technology requirements are PC (P3) along 256 RAM with a laser printer, Key board, CD drive and a mouse. The proposed equipment has the technical capability to hold the required data to be used in the new system. System can be expanded whenever required. There are technical guarantees of accuracy, reliability, ease of access and high data security. 13 3.5.3 Operational Feasibility Proposed system is operationally feasible in Virtual Tour because it fulfils the requirements, as it is more efficient, accurate and reliable. ASP.NET and MS SQL will be operationally feasible because it will be efficient, accurate, and reliable and provides more facilities any other available system. The proposed system will be user friendly and easy to understand, so users would be able to understand and use this system easily, no high computer knowledge would be required for it. This project is operationally feasible for the following reasons: This project will fulfil end-user’s requirements. The project is functionally acceptable to end-user. This system will work successfully whenever developed and installed. The system is integrated with other system that is already in use. There is sufficient support for the new system from management point of view. The current methods are not acceptable to the users. So they may welcome a change that will bring about more operational and useful system. 3.6 The proposed system will not cause any poor result in any section. The accessibility of records will not be lost. Performance will not be slow in any section. Feasibility of the Report The present manual information system cannot provide necessary information required by the department annually. It also lacks the capability of calculating some value in the light of existing values. Therefore the present manual system of Virtual Tour should be computerized. All the functions cannot be performed in time because there is a lot of workload. To provide reliable and efficient information system only computerized system can meet the needs. The computerization of the present manual system is feasible in all aspects i.e. technically, behaviourally and economically or financially, because: 14 The record will be online through web so it is humanly feasible. The manual system requires much hard work and money to perform this job. So it is economically feasible to adopt a computerized system because much work is done at high speed and the results are obtained very fast. More than one computer laboratory available so that any one can retrieve information easily. Due to availability of these resources, the information retrieval system becomes technically feasible. The present manual system fails to meet the requirements of the Virtual Tour instead of utilizing a lot of the resources i.e. a lot of paper work and many Staffs. The new proposed system will thus improve the efficiency of the Department because it will bring more benefits than the cost. The present manual system is not a standard one. This results complexity within the department. The new computerized system will have necessary checks to avoid this expensive and time-consuming struggle. The new computerized system will make the Virtual Tour able to maintain all the information about the Students, Teachers, Admission etc. and all the information will be stored in a mannered procedure, which is efficient and reliable. 3.7 Process Model 3.7.1 Spiral model The spiral model is a software development process combining elements of both design and prototyping-in-stages, in an effort to combine advantages of top-down and bottom-up concepts. Also known as the spiral lifecycle model (spiral development), it is a systems development method (SDM) used in information technology (IT). This model of development combines the features of the prototyping model and the waterfall model. The spiral model is intended for large, expensive and complicated projects. 15 Fig# 3.1 Spiral Model 16 CHAPTER 4 PROPOSED SYSTEM Chapter 4 Proposed System 17 4.1 Proposed System The proposed system is designed / developed by taking in view all the drawbacks and limitations of the existing system and thus we hope that it will be user-friendly system to fulfil all the objectives of the existing system in a sound way. Independence Before the Internet usage became widespread, travel agents and hotel or resort owners, depended on the advertising space of mainstream media, such as newspapers, magazines and television. To reach an international audience, they had to turn to government agencies and official tourism boards. With the Internet, each party has the opportunity to create its own website, add as much information they like and include text descriptions, photos and videos of their offers to potential visitors. Tailored Information In the past, tourists had to choose from the packages offered by travel agents, or those mentioned in the media. Now, Internet users can roam through endless choices of accommodation, transportation and leisure and tailor their trips according to their needs. For this purpose, online tourism marketing has taken a turn for a more personalized approach to customers, offering choices according to age group, gender and purpose of travel, as well as the ability for tourists to create a package of their own. Global Appeal The Internet's global appeal has changed the marketing strategy of everyone involved in the tourism industry. From the local population, now the target audience is the whole world, or at least the citizens of developed countries, who are the most likely to embark on international travel. Every website is localized, aiming to reach as many potential customers as possible worldwide. Instant Booking The ability of users to book an offer that has impressed them with just a click, has given travel marketing a new challenge. Websites have to use the latest technology, including high-definition videos and interactive applications to attract users. Professional writers are hired to produce 18 compelling descriptions of the offer and convince users why it is important to book on the spot. Special offers are presented to customers who arrange their vacations through the Internet. 4.2 Purpose of this Document This document will capture all the needs and requirements present in the existing annual system of Virtual Tour and also the solution and constraints. Before working on the project we should clearly define the scope of project, which facilitates the working because in this way we can bind efficient and simple work within the defined boundaries. 4.3 Scope of project Administrator Registered Users Place Information (View) o Geographical Information (View) o Topographical Information (View) o History (View) o Foods & Culture (View) o Important Places (View) Galleries o Picture Gallery o Video Gallery Hotels & Accommodation (View) Travel & Tourism Agencies (View) Departments Information (View) o Police (View) o Local Government(View) o Hospitals(View) o Emergency Services(View) As we have stepped in the millennium of computerized life and the whole world has computerized its life style and working procedure of almost everything, then why should we leave ourselves behind? 19 4.4 Objective The aim of proposed system is to develop a system of improved facilities. The leading role of this project is to recognize the whole system with the help of computer. The whole system depends on manual paper work, which is very unreliable, inconsistent and inefficient. Maintaining data within the department and outside of the department is easy to maintain with the help of computer and database e.g., deletion, insertion and updating is not difficult. With one click, we can access, retrieve, modify, update or delete any record of Tourism. We can get easily the desired result, but in the manual system, a lot of effort is required for these tasks. Security is an important issue in the computer based system and it is a basic requirement. We can protect our data by giving checks on the data or granting privileges to the persons whom we want to make authorized. It is the first priority of the project to save the time and utilize the time that has been wasted before. 4.5 System Proposal The proposed system is specifically designed to overcome all the drawbacks of previous manual system. Pre-existing manual system faced a lot of problems, which are as follows: The manual system is inefficient and not user-friendly. Less accuracy of the data is caused by manual system. Modification of data or updating is tedious and time-consuming job. Security is required which can’t be gained through the manual system. Stationary is required to store data. Changes and alteration in the data is difficult. Inconsistent Data. Space consumption is another problem in manual system. It is difficult to retrieve and access the record quickly because the data is scattered in different files. 4.6 Management by Local Server The Proposed system can also be managed from the local server by two methods. 20 1. By creating a Desktop Application on Local Server which will be connected to the database. The entry made in local server will automatically saved on web server. 2. By providing the Web Interface for the Admin. 4.7 Features of the Proposed System 4.7.1 Security The proposed system is secure and reliable. Different levels are developed for end user and they can only access or edit data according to their privileges. So no unauthorized person can access the information that he is not supposed to access. 4.7.2 User-Friendly Proposed system is very user-friendly as the data inputs (through forms) and generation of reports is very easy which the administration and users of the system frequently require. 4.7.3 Less time consuming It is less time-consuming, as software itself performs all the tasks. All the data of Students, Teachers are available which is accessed faster as compared to manual system. 4.7.4 Error free The proposed system is less error prone. Human mistakes occurred during day to day jobs are minimized due to minimum data entry. 4.7.5 Generation of Reports This system provides facility to generate reports of projects, students, teachers records, Attendance, contacts etc. 4.7.6 Usability Usability is the degree to which the software is easy to use as indicated by the following substitutes: understand ability, learn ability and operability. Usability minimizes the efforts required to learn, operate, prepare, input and interpret output of a program. It is the combination of fitness for the purpose, ease of use and ease of learning that makes a product effective. It 21 focuses on determining if the product is easy to learn, satisfying to use and contains functionality that the users desire. Our proposed is system has a high degree of usability. 4.7.7 Understand ability Understand ability means to make the software or the product in order to minimize the efforts required to learn, operate, prepare and interpret the output of a program. The users to use it will mainly focus understand ability during the development of the software. It will be very easy to understand requiring fewer efforts. The interface design will be made keeping in mind easy understand ability of the software by the end users. Keeping in view the current problems faced by this system, finally a computerized user-friendly system is decided for the Virtual Tour. The system will facilitate easy updating of records. System will be secure, reliable and helpful for its users. Insertion of new records and deletion of unnecessary records will also be easy. The user will also be free of all the agitation of entering or changing the records in various numbers of files. Proposed system will be so elastic and flexible that a new user will understand it easily and save the time that was the main problem with the old system. Database for retrieving and storing the data at back end used for this project is MS SQL 2008. For accessing the database and processing the data, ASP.NET is recommended. Both soft ware’s are recommended according to the user requirement, to meet the data processing needs of the system and to remove all the static problems as faced previously. After running through enigmas of thundering clouds, wildness of deserts and solitude of dark nights, finally we managed to propose sophisticated computerized software. The chief objectives of our software are as under: Development of proficient software that provides comfort to the users. To innovate and facilitate the user, our software fulfils the requirements of the users. Advance and flexible computer technology is utilizing in circulation to maintain the online records of the Tourism. We presumptuously admit to provide software that provides them convenience in searching the required record. To prompt feasible software, ASP.NET is used at the front end and MS SQL 2008 at the back end. 22 Our enthusiasm for developing this software is to transform the manual system into computerized software to provide the facility to the user. 4.8 4.9 Problems Addressed by the Solution Removal of data redundancy Elimination of inconsistency of data Preventing users from entering incorrect data, i.e., ensuring integrity of data Speeding up of data processing Enforcement of data storage standards Enforcement of data security Automatic report generation Minimum time needed for the various processing. Advantages of the Proposed System Speedy and accurate information is available. Time consumption is decreased. Labour or workload is decreased. The latest technology awareness and adoption leads to new and successful world. Strong security is provided. Software will allow the user to minimize chance of errors. It will be efficient and effective. Proper control of the higher officials. 23 CHAPTER 5 SYSTEM DESIGN 24 Chapter 5 5.1 System Design System Design The designing is the basic building block of any software. The design depends upon the study and understanding of the present system and the vision and approach of the software designer for the proposed system. The design can be divided into three parts: Database Design Input Design Output Design In the designing phase of Virtual Tour the activities included many important designing aspects, such as follows. 5.2 Developing a logical data model This is probably the most important part of the designing phase. No matter how small the project, an entity-relationship diagram should be created using a tool such as the Entity-relationship diagrammed in Designer/2000 or Logic Work’s Erwin. These tools can help creating he logical model generate the database and document the data being stored in the database. 5.3 ER (Entity-Relationship) diagram A diagram that provides a logical model of the database. It shows the various database entities and how they relate to each other. 5.4 Choosing a development tool Usually considering the various client machines and platforms share the system will be used does this .Access is ideally suited for my project. 25 5.5 Implementing the functionality in stages It is important to have various “releases” of the product so users can have a preview of it, and as well as make suggestions about whether it has the features that hey were expecting. The designing phase should consider this sequential development and identify the core objects. 5.6 Using a configuration management tool A configuration management tool should be used to perform various version controls and a backup/recovery strategy should be decided on: Identifying users and the Choosing a consistent user interface Determining a testing plan Implementing a diagnostic plan for trouble shooting the application 5.7 Database management System (DBMS) Often the terms database and DBMS are used interchangeably, however, a database management system is a software product that manages database. The DBMS tool used in the development of “Virtual Tour” is Accesses, which follows the relational database model. Several important features are desired from a DBMS and most modern databases provide some mechanisms for these features: It should be say easy to store and retrieve data It should provide security for the data stored It should provide some method for concurrent access to the database and control of his concurrency There should be some method to recover the database in case of a database crash. Data consistency and integrity should be retained 26 5.8 Database Management System Models Several database models have been commonly used but they all satisfy, in one way or another, the requirements to be a DBMS. The various database models are not even real databases because they store the data in flat files. Storing data in this model is very cumbersome and makes the data difficult to access. 5.8.1 Network This model stores data in a network structure. An example of this database model is IDMS. 5.8.2 Hierarchical This model stores data in a hierarchical structure. An example of his database model is IMS. Many legacy databases used in minicomputers and mainframes still make use of the network and hierarchical database models. 5.8.3 Relational A data model that represents data in the form of relations or tables. A relation is a named, two dimensional table of data. Each relation consists of a set of named columns and an arbitrary number of unnamed rows. Different DBMS are currently available in market which follow relational model i.e. Access, SQL Server, Oracle and My SQL etc. 5.8.4 Object –Oriented This model has become popular recently due to the limitations of traditional relational DBMS in handling complex data in non-transactional manner. In addition, these databases have found a niche in application such as CAD/CAM and multimedia. 5.9 Data base Design It means the design of a data base model that will support the Virtual Tour operations and objectives. The major aims of data base design are: 27 To represent the data and the relationships between data required by all major application areas and user groups. To provide a data model that support any transactions required on the data. To specify a design that will achieve the stated performance requirements for the system such as response time. Unfortunately these aims are not always easy to achieve and sometimes require compromises to be made, particularly to achieve acceptable system performance. The two main approaches to the design of a data base system are referred to as the top down and bottom up approaches. 1. Bottom up approach The bottom up approach begins at the fundamental level of attributes, which are grouped into entities and relationships. As the process continues we identify and add new relationships between entities. The process of normalization also represents a bottom up approach to design. This approach is suitable for simple databases having a small no. of attributes. Normalization involves the identification of the required attributes and their subsequent decomposition into normalized tables. 2. Top-down approach It is suitable for designing complex databases. It stars with the development of data models that contain a few high level entities & then identify lower level entities, attributes & their relationships. It uses ER model, which shows the entities & their relationships, which are of interest to the department. In our project we have used the top down approach. The Top down database design approach is composed of two major phases: i. Logical database design. ii. Physical database design. 28 5.9.1 Logical Database Design The steps involved in this design are: Step 1: Build Local Conceptual Data Modal from user view Build a local conceptual data model of an enterprise for a specific user view. 1. Identify entity types Identify the main entity types in the user view of the enterprise. Document entity types. 2. Identify relationship types Identify the important relationships that exist between the entity types that we have identified. Determine the cardinality. Document relationship types. Use entity relationship (ER) modelling when necessary. 3. Associate attributes with entity or relationship types Associate attributes with the appropriate entity or relationship types. Identify simple/composite attributes, single-valued/multi-valued attributes and derived attributes. Document attributes. 4. Determine attribute domains Determine domains for the attributes in the local conceptual model. Documents attribute domains. 5. Determine candidate and primary key attributes Identify the candidate key (S) for each entity and if there is more than one candidate key, choose one to be the primary key. Document primary and candidate keys for each strong entity. 6. Specialize/generalize entity types (optional step) Identify super class and subclass entity types, where appropriate. 7. Draw entity –relationship diagram Draw an entity – relationship diagram that is a conceptual representation of a user view of the enterprise. 29 8. Review local conceptual data model with user Review the local conceptual data modal with the user to ensure that the modal is a true representation of the user view of the enterprise. 5.9.2 Physical Database Design The steps involved in this design are: Step 2: Design and Implement Physical representation Determine the file Office and access methods that will be used to store the base relations i.e. the way in which relations and tuples will be held on secondary storage. 1. Choose file organizations Determine the efficient file organization for each base relation. 2. Choose secondary indexes Determine whether adding secondary indexes will improve the performance of the system. 3. Consider the introduction of controlled redundancy Determine whether introducing redundancy in a controlled manner by relaxing The normalization rules will improve the performance of the system. Consider introducing derived data and duplicating attributes or joining relation together. 4. Estimate disk space Estimate the amount of disk space that will be required by the database. Step 3: Design and implement security mechanisms Design the security measures for the data base implementation as specified by the users. 1. Design and implement user views 30 Design the user view that was identified in step 1 of the logical data base design methodology. 2. Design and implement access rules Design the access rule to the base relation and user view. Document the design of the security measures and user views. Step 4: Monitor & Tune the operational system We should continue to monitor the operational database to ensure that the performance is optimal, and to correct inappropriate design decisions or reflect changing requirements. 5.9.1.1 Data Flow Diagram Data Flow Diagrams (DFDs) graphically characterize data process and flows in a business system. Here data flow diagrams have been used to depict the broadest possible overview of system inputs, process and outputs. Also a series of layered data flow diagrams have been used to represent and analyze detailed procedures within this large system. Therefore by using combinations of only four symbols, we have created a pictorial depiction of process that will eventually provide solid system concepts and documentation. The four basic symbols used in the data flow diagram are as under: Entity Flow of Data Process 31 Data Store Level 0 DFD Online User Virtual Tour Virtual Tour Database Figure 5.1: Level 0 DFD Level 1 DFD Delete Recor d Save Recor d Admin Searc h Recor d Updat e Recor d Figure 5.2: Level 1 DFD 32 Virtual tour Database Level 2 DFD City Record Police Station Fee Save Recor d Hotel Record Fee Picture Galleries Delete Recor d Travel Agency Admin Searc h Recor Hospital Record Emergency Service Updat e Recor Local Government Place Information Figure 5.3: Level 2 DFD 33 5.9.1.2 Entity Relationship Diagram The object relationship pair is the cornerstone of the data model. These pairs can be represented graphically using the entity relationship diagram (ERD). Peter Chen originally proposed the entity relationship diagram for the design of the relational database system. The primary purpose of the entity relationship diagram is to represent the data objects in the form of relationships. Data objects, attributes, relationships and various type indicators are the primary components of entity relationship diagram. It has following features. i. Data objects are represented by a labelled rectangle. ii. Relationships are indicated with a labelled line connecting objects. In some variations of entity relationship diagram relationships are represented by special diamond symbol, mostly for junctions. Admin Admin id Password ADMIN Figure 5.4: ADMIN City City name CITY Figure 5.5: City 34 Emergency services Service id Address Title Contact Emergency contact City name Emergency services Figure 5.6: Emergency Services Hospital Hospital Id Address Title Contact Emergency contact City name Hospital Figure 5.7: Hospital 35 Hotel Info Hotel id Type Title Stars Floors City name Contact Email Cell no Description Hotel Information Figure 5.8: Hotel Information 36 Local Government Local agency Address Title Contact Emergency contact City name Local Government Figure 5.9: Local Government Picture Gallery Image id City name Image title Image path Picture Gallery Figure 5.10: Picture Gallery 37 Place Information Place id Latitude Title Longitude Height City name Geographical info History Topographical information Food culture Place Information Figure 5.11: Place Information 38 Police Station Station Id Address Title Contact Emergency contact City name Police Station Figure 5.12: Police Station Travel Agency Agency id Agency title Manager contact Type Contact Email Cell City name Topographical information Description Travel Agency Figure 5.13: Travel Agency 39 5.10 Database Diagram place_information travel_agency placeid agency_ id title agency_ title city_ name type latitute contact longitute cell height manager_ contact geographical_ info email description address hotel_info hotel_ id emergency_services hotel_ title service_ id type city_ name stars title floors address contact cell manager_ contact cities_list email city_name hospital hospital_ id city_ name title pic_gallery address img_ id contact city_ name local_government police local_ agency station_ id city_ name city_ name title title address address contact emergency_ contact Figure 5.14: Data Base Diagram 40 5.11 Physical Design The purpose of physical database design is to translate the logical description of data into technical specification for storing and retrieving data. Its goal is to create such a design, which will store data and will provide adequate performance and insure database integrity, security, consistency and recoverability. Designing physical files and databases, certain information is required that should have been collected and produced during prior development phases. The information needed for physical file and database design include the following requirements: Normalized relations, including volume estimates. Definition of each attribute. Description of data that where and when it will be used, entered, retrieved, deleted and updated? Expectations or requirements for response time, data security, backup, recovery, retention and integrity. Description of technologies (Database Management System) used for the development and implementation of the database. The Automation of Silk Road Handicrafts Swat consists of the following physical files / relations. 5.12 Data Dictionary The purpose of this section is to explain all the data elements used in different data base files. The dictionary of the files used in the program will make the reader to understand what data name means and where it is used. All their field names, their data types, sizes and their Full Names are described below 5.12.1 Input Design Input design is the second category, which prescribes the manner in which data is to be entered or fed into the computer and then to be processed to produce the desired outputs. If the data entered is accurate and in correct format then desired outputs may be obtained otherwise there would be the problem of black hole, black hole means that the system has inputs but no outputs have been returned by the system. It means that the inputs entered to the system are not accurate or valid which gives no output. Input design is very important so that no wrong data is to be entered to the system and so no false or unexpected outputs will be faced. In the input design following things must be followed carefully to achieve integrity of the system. 41 What are the inputs? Types of inputs. Length of input data item. Source of input data item. Input means data items entered to the system for processing. After reviewing and discussing thoroughly we collected the whole data items that has to be used in different database files. Keyboard will be used as main input device however a mouse can also be used because the software which is going to be developed is in visual language so mouse can also be the hottest input device. It is very important to define or declare the maximum length of data items in first attempt because one data item may be used in different places so its length must be specified before it is used. By output design we mean the design produced by the system and the form in which it is to be produced. That is whether printed displayed or spoken. Output design is in important factor as the system success and failure largely depends on the output design therefore more attention is given to this output design. It is through these outputs that the system becomes useful to the user. Presently computer can produce two types of outputs i.e. Output on Screen Output on Paper Admin Field Name Data Type / Size Description Key admin_id varchar(50) Admin ID PK password varchar(50) Table 5.1: Admin 42 City Field Name Data Type / Size Description Key city_name varchar(100) City Name PK Table 5.2: City Emergency services Field Name Data Type / Size Description Key service_id uniqueidentifier Service ID PK city_name varchar(100) City Name title varchar(100) Title address varchar(250) Address contact varchar(15) Contact emergency_contact varchar(15) Emergency Contact Table 5.3: Emergency services Hospital Field Name Data Type / Size Description Key hospital_id uniqueidentifier Hospital ID PK city_name varchar(100) City name title varchar(100) Title address varchar(250) Address contact varchar(15) Contact emergency_contact varchar(15) Emergency contact Table 5.4: Hospital 43 Hotel Info Field Name Data Type / Size Description Key hotel_id uniqueidentifier Hotel id PK hotel_title varchar(150) Hotel title type varchar(100) Type stars varchar(20) Stars floors varchar(20) Floors contact varchar(15) Contact cell varchar(15) Cell manager_contact varchar(15) Manager contact email varchar(50) Email description varchar(500) Description address varchar(250) Address city_name varchar(100) City name Table 5.5: Hotel Info Local Government Field Name Data Type / Size Description Key local_agency uniqueidentifier Local agency PK city_name varchar(100) City name title varchar(100) Title address varchar(250) Address contact varchar(15) Contact emergency_contact varchar(15) Emergency contact Table 5.6: Local Government 44 Picture Gallery Field Name Data Type / Size Description Key img_id uniqueidentifier Image id PK city_name varchar(100) City name img_title varchar(100) Image title img_path varchar(250) Image path Table 5.7: Picture Gallery Place Information Field Name Data Type / Size Description Key placeid uniqueidentifier Placeid PK title varchar(100) Title city_name varchar(100) City name latitute varchar(15) Latitude longitute varchar(15) Longitude height varchar(15) Height geographical_info varchar(500) Geographical info Topographical_Information varchar(500) Topographical information History varchar(500) History food_culture varchar(500) Food culture important_places varchar(500) Important places Table 5.8: Place Information 45 Police Station Field Name Data Type / Size Description Key station_id uniqueidentifier Station id PK city_name varchar(100) City name title varchar(100) Title address varchar(250) Address contact varchar(15) Contact emergency_contact varchar(15) Emergency contact Table 5.9: Police Station Travel Agency Field Name Data Type / Size Description Key agency_id uniqueidentifier Agency id PK agency_title varchar(150) Agency title type varchar(100) Type contact varchar(15) Contact cell varchar(15) Cell manager_contact varchar(15) Manager contact email varchar(50) Email description varchar(500) Description address varchar(250) Address city_name varchar(100) City name agency_id uniqueidentifier Agency id Table 5.10: Travel Agency 46 CHAPTER 6 USER MANUAL 47 Chapter 6 6.1 User Manual Home Page Figure 6.1: Home Page 48 6.2 Login form Figure 6.2: Login Form 49 6.3 About Figure 6.3: About 50 6.4 Place Information Figure 6.4: Place Information 51 6.5 Travel Agency Figure 6.5: Travel Agency 52 6.6 Police Information Figure 6.6: Police Information 53 6.7 Hospital Figure 6.7: Hospital 54 6.8 Emergency Services Figure 6.8: Emergency Services 55 6.9 Add Emergency Information Figure 6.9: Add Emergency Information 56 6.10 Add Hospitals Figure 6.10: Add Hospitals 57 6.11 Add Local Government Figure 6.11: Add Local Government 58 6.12 Add Place Information Figure 6.12: Add Place Information 59 6.13 Add Travel Agency Figure 6.13: Add Travel Agency 60 CHAPTER 7 EVALUATION AND SYSTEM TESTING 61 Chapter 7 7.1 System Testing & Implementation Evaluation The development of software system involves a series of production activities where opportunities for injection of human fallibilities are enormous. Error may begin to occur. At the very inception of the process where the objectives imperfectly specified, as well as in later design and developments stages. The increasing visibility of software as a system element and the attendant” costs” associated with software failure are motivating forces for well for planned, though testing. It is not unusual for software development organization to expend between 30 to 40 percent of total project of testing. 7.2 Testing Objective Testing is a process of executing a program with the intent of finding an error. A good test case is one that has high probability of finding an as-yet undiscovered error. A successful testing is one that uncovers an as-yet undiscovered error. The above objectives are simply a dramatic change in viewpoint. They move counter to he commonly help view that successful test is one systematically uncover different classed of errors and do so with minimum amount of time and effort. If testing conducted successfully (according to the object stated above), it will uncover error in the software. As a secondary benefit, testing demonstrates that software functions appear to be working according to specification and that performance requirement appears to have been met. There is one thing that testing show the absence of errors, it can only show that software errors are present. 7.3 System Testing While developing software, there is tendency to push the end product “out the door “as soon as possible .Most of the time, software projects are not estimated properly and tend to run behind schedule. When it comes to meeting the deadline, people seem to ignore a very important phase in the whole process testing. But our project has been thoroughly tested by us. 62 System testing is an essential step for the development of a reliable and error-free system. Testing is a process of executing a program with the explicit intension of finding errors but this does not mean to embarrass the programmer or fail the product but the positive intention to remove as many problems room the system. A test case is a set of data items that the system processes as normal input. Good testing involves much more than just running the program a few times to see whether it works. A successful test is the one that finds error. 7.4 Stepwise Testing or Verification Testing In stepwise testing modules were tested with some dummy as well original data at the time of its creation to ensure that system is free of errors. 7.5 Computer program testing On completion of the whole program, each module was again run from the main menu and was again tested by applying pretends data to it, for this purpose heavy data was applied to it to ensure that system is working still accurately. A large number of data is given to this project and it was tested with that data, which could not produce any errors in the project so the new system is fully tested and debugged, thus it may be implemented. 7.6 The place of Testing in SDLC Testing has an important place is SDLC (Software Development Life Cycle). The SQA (Software Quality Assurance) team should be involved in the early phases of his project. This will make them the aware of the requirements and techniques that are going followed enabling them to develop an appropriate test strategy. The marketing group will bring the customer requirement. The engineering group will access the feasibility. The engineering and SQA groups will work together during the design phase and generate the product specification. The developers will start implementing while the SQA team is developing the test plans and so on. 63 While the developers are ready with the code, the SQA team will be ready for testing. The testing phase is no longer bottleneck for product delivery because the SQA team has been involved since the start of the project. 7.7 Testing Strategies A well –organized testing strategy should include following types of testing: 7.7.1 Assertion Testing This is also referred to as black box testing. It involves testing at the API level and the goal is to make sure that the code performs as specified. 7.7.2 Functional Testing This is also referred to as white box testing. It is some at high level and takes individually tested features and places them together in small applications and test cases to test whether they work together in small application. 7.7.3 Stress Testing This is the type of testing that is dreaded by developers because the kinds of bugs it reveals are difficult for them to simulate and fix. It involves the running of feature and methods randomly to simulate real world scenarios and determine whether they can sustain real world usage. Stress testing is useful in identifying memory leaks, garbage collection, thread, execution, scalability and other issues that are not easy to reproduce. 7.7.4 Black-Box Testing A strategy in which a software component is treated like an opaque box. This tests designers’ focus on determining how well the component conforms to the published requirements for the component, instead of worrying about the implementation details. Black box testing focuses on the functional requirement of the software. This testing strategy enables us to derive sets of input conditions that wilfully exercise all functional requirements for a program. Black box testing is not an alternative to white box testing. Rather, it is a complementary approach that is likely to uncover a different class of errors than white box testing method. 64 Black box testing used to find following errors: Incorrect or missing functions. Interface errors. Initializing and termination errors. Performance errors. 7.7.5 White- Box testing A strategy in which software component is treated as a transparent box. Test designer can peek into the box and gain knowledge about the implementation. They can use this knowledge to build test cases cover different parts of the code and also follow different execution paths. White box testing is a test case design method that uses the control structure of the procedure design to derive test cases. White box testing enables to derive test case that: Guarantee that all independent paths within a module have exercised at least once. Execute the all loops at their boundaries and with in their operational bounds. Exercise all logical conditions on their true and false paths. 7.7.5.1 Benefit of White Box Testing Logic errors and incorrect assumptions are inversely proportional to the probability that a program path will be execute. Errors tend to creep into our work when we design and implement functions, Condition or controls that are out of mainstream. Every day processing tends to be well understood, while “special cases” tends to fall into the cracks. We in fact believe that a logical path is not likely to be executed when; in fact it may be executed on regular bases. The logical flow of a program is sometime counterintuitive. Meaning that our unconscious assumption about flow of control and data may lead us to make design error that is uncovered only once path testing commences. Typographical errors are random. When a program is translated into programming language source code. It is likely that some typing error will occur. Many will be uncovered by syntax checking mechanism, but will go undetected until testing 65 begins. It is a likely that a typo will exist on an obscure logical path as on a mainstream path. 7.7.6 Unit Testing The testing of individual units of the application in isolation for example, a single class. Unit testing focuses verification efforts on the smallest unit of software design, the module. Important control paths are tested to uncover errors within the boundary of the module. All he slides of child Educator are tested separately to find error easily with the range of single slide. Every slide is tested to make sure that slides are working within the specifications. 7.7.7 Beta Testing The process of distribution a pre-release version of a product to a subset of its intended audience for the purpose of obtaining feedback. 7.7.8 Regression Testing The process of testing him entire system to uncover defects. It tends to finds problems due to resources, security, and so on. 7.7.9 Integration Testing The process of testing the integration and communication between the components that form the application. 7.8 Testing Specification Plan For quality control to be effective, one must test time same things he same way every time one test. When you change your tests, your results become inconsistent. You need a test plan. A test plan is simply a high-level summary of the areas (functionality , elements, regions ,etc) one will test , how frequently one will them , and where in the development or publication process one will test them. A test plan also needs an estimate of the duration of testing, and statement of any required resources. The major phases of software need test plans, because the focus and emphasis of testing will change over time. Testing new software in development is very different from testing software 66 that has been running for some time. Furthermore, any changes to the software code, incremental or major, require regression test plans. Clearly, one needs to decide what will be test, understand the software-the software should have a concrete explanation of the “vision” behind its creation and the hoped-for “path “for its success. If the software has no such explicit statement of direction, then the codifying of such a statement should be first goal. To help define what one should test, ask yourself if these types of questions. Why did I make this software? What is the software’s purpose? What are the business goals, if any, behind this software? What has to work for this software to be effective? What has to work for his to even function as software? Who are the end-users for this software? Can they use this software with ease? What is core functionality offered by this software? Can all users at least access this core functionality? Use the answers to these questions to decide what needs to be tested, and then develop your test cases. 7.9 Testing Metrics Most bugs are the result of poor design. It is important to realize that when you develop software, bugs will appear. Instead of trying to create a bug free product, your goal should be to achieve software of good quality. A handy rule of thumb is to expect 20 bugs for every 1,000 lines of code generated. Keeping such a realistic expectancy will enable you to focus on finding those bugs and fixing them. It also enables you to have a quantifiable sense of software quality. The easiest bugs are found in the early stages of testing whereas the difficult ones are found at the later stages under obscure situations. It is important to track the number of bugs found over time. In general, such a chart should rapidly rise during the early stage and the eventually level off. The levelling off indicates that the software quality is becoming stable. If the curve just keeps rising, this indicates that either the design is very poor or new bugs are being introduced as he old ones are being fixed. Another metric to determine your software quality is the bug discovery trend. This technique is commonly used at sun Microsystems it involves determining the ratio of the number of hours it 67 takes to find the next bug. In order word you keep track of the number of bugs found in say a day. The logic is that as the software quality gets better it should become more and more difficult to find new bugs. As a result the ratio obtained as the number of hours spent to find a new bug should keep rising all the time. Code-coverage analyzers are important tools that can provide code-coverage metrics. The way these work is that you compile your software and then run all your test cases. The code-coverage analyzer will capture all the methods statements and so percentage of your code was used. The remaining portion of your code was used. The remaining portion of your code is considered to be dead code because it indicates this code was not really tested. Let’s say that during the testing, we found 50 percent of target number of bugs. This means that we might have about 50 percent of the bugs in the untested 30 percent of the code. As you can see, we need a more rigorous testing strategy. 7.10 Software Bug A piece of software code that is not working as expected. No matter what metrics you use for testing your software, it is important to realize that robustness you expect from the software is dependent on his development phase of the software. In other words the robustness expected from a final product is more than that from a beta release, which in turn is more than an alpha release. 7.11 Project Testing Report The testing of “Online Information System” is under gone through all stages of black box testing and white box testing. In the evaluation phase the system is reviewed to see whether the objectives of the system are accomplished or not. A major factor during system evaluation is to evaluate the system with the perspective of the user because he/she is eventually being the one who use it. The testing of “Online Information System” is as follows. Trace-ability Test matrix Test Case Description GUI Test Plan 68 7.11.1: Trace-ability Matrix for This Project Test Case ID Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test Result Verify that user can access all Pages of the Software Verify that user can Access all modules Verify that user get error messages on wrong entry Verify that user gets error message on entering wrong password Verify that all links are linked with the desired forms Verify that user can submit the records in desired fields of each form. Verify that user can perform all database operations. Test has passed successfully. Test has passed successfully. Test has passed successfully. Test has passed successfully. Test has passed successfully. Test has passed successfully. Test has passed successfully. 7.12 Conclusions The software developed is hypothetical idea, which of course can be implemented as well. The software is flexible enough to be modified easily for further needs. This software will be serving as a product for information system. Therefore it will be customized for every change in the policy. Due to the time constraints to the submission of his project the system could not be fully evaluated but generally it produces information that posses the properties of accuracy, completeness, timeliness and conciseness. Some of the measurable human factors that are central in evaluation are ease of use, speed of performance and rate of errors. 69 All the factors mentioned above do not guarantee a unique interface and every software no matter how carefully designed and implemented has got its respective pros and cons. The ones associated with our software are mentioned bellow: 7.13 The software at its best The pro of our software is as below: The software is reliable because it produces accurate results and there is no probability of loss of data. The software is user friendly because its design is made as user friendly as possible, keeping in mind the diversity of its users. The software has all of the helping aspects that are covered while developing this software, so it comes with a complete helping text. The software also generates proper error messages for his convenience of the user. This enables the users to interact more easily with this software. A regular schedule for the database backup should be followed to avoid problems causing from software breakdown. The system is secure, fault tolerant and efficient. 70 CHAPTER 8 REFERENCES 71 Chapter 8 References Jeffery a Hoofer, Mary B Prescott & Fred R McFadden - Modern Database Management (Eighth Edition). Kenneth E Kendall & Julie - System Analysis and Design. Rojer Pressman - Software Engineering Wrox - Beginning Visual Basic .NET Database Programming. Addison Wesley - Developing Applications with Visual Studio. Sams - Teach Yourself Visual Studio .NET 2010. MSDN (Microsoft Developer Network) Library 2010. Beginning ASP.NET 4.0 in C# 2010 by Matthew MacDonald Microsoft Sql Server 2008 by Petkovic. 72 73