Online Hotel Room Booking System

44,434 views
44,041 views

Published on

In this system, we can book rooms online and can view all the status.

Published in: Education
7 Comments
33 Likes
Statistics
Notes
No Downloads
Views
Total views
44,434
On SlideShare
0
From Embeds
0
Number of Embeds
44
Actions
Shares
0
Downloads
2,969
Comments
7
Likes
33
Embeds 0
No embeds

No notes for slide

Online Hotel Room Booking System

  1. 1. Principles & Practices of Software Production Group Assignment Page 1 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 Table of Contents 1.0 Introduction....................................................................................................................................3 1.1 Task Involved ..............................................................................................................................3 1.2 Scope...........................................................................................................................................4 1.3 Objectives ...................................................................................................................................4 2.0 Problem Background ......................................................................................................................5 3.0 Proposed Solution...........................................................................................................................6 4.0 Project Planning & Control .............................................................................................................7 4.1 Software Quality Assurance Plan:...............................................................................................8 4.2 Documentation Standards:.........................................................................................................8 4.3 Programming Standards: ............................................................................................................9 5.0 Project Management:.....................................................................................................................9 6.0 Schedule Planning:........................................................................................................................11 6.1 Milestone and Deliverable:.......................................................................................................11 6.2 Gantt Chart: ..............................................................................................................................11 6.3 Workload Matrix:......................................................................................................................13 6.4 Work Break Down Structure (WBS)..........................................................................................14 6.5 Organization Chart:...................................................................................................................15 7.0 Selection of Methodology.............................................................................................................15 8.0 Risk Management .........................................................................................................................18 8.1 Risk Assessment........................................................................................................................18 8.2 Risk Control...............................................................................................................................18 8.3 Risk Identification .....................................................................................................................19 8.4 Risk Analysis..............................................................................................................................19 8.5 Risk Prioritization......................................................................................................................20 9.0 Requirement Analysis...................................................................................................................20 9.1 Requirement Elicitation & Analysis...........................................................................................21 9.2 Requirement Validation............................................................................................................22 10.0 Process Modeling........................................................................................................................23 10.1 Logical Process Model: ...........................................................................................................23 10.1.1 Context Diagram..............................................................................................................23 10.1.2 Level 0 DFD ......................................................................................................................24 11.0 Data Modeling ............................................................................................................................25
  2. 2. Principles & Practices of Software Production Group Assignment Page 2 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 11.1 Entity Relationship Diagram ...................................................................................................25 11.1.1 ERD of Admin...................................................................................................................26 11.1.2 ERD of Executive ..............................................................................................................27 11.1.3 ERD of Customer..............................................................................................................27 11.2 Entity Life History Diagram .....................................................................................................28 11.2.1 ELH of Admin ...................................................................................................................28 11.2.2 ELH of Executive...............................................................................................................28 11.2.3 ELH of Customer ..............................................................................................................28 12.0 Data Dictionary ..........................................................................................................................29 12.1 Data flows...............................................................................................................................29 12.2 Data Stores: - ..........................................................................................................................29 12.3 Processes: ...............................................................................................................................29 12.4 Source and Sink:......................................................................................................................29 13.0 Interactive Screen Design ...........................................................................................................30 14.0 Programming Environment ........................................................................................................59 15.0 Testing.........................................................................................................................................60 15.1 UNIT TESTING..........................................................................................................................60 15.2 INTEGRATION TESTING...........................................................................................................63 15.3 SYSTEM TESTING.....................................................................................................................64 16.0 References ..................................................................................................................................64
  3. 3. Principles & Practices of Software Production Group Assignment Page 3 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 1.0 Introduction For the module Principles and Practices of Software Production, the task given for In Course Assessment was to successfully develop fully-functional software to automate the Online Hotel Room Booking System at “Asia pacific institute of information technology”(APIIT SD India) which is established with the objective of overcoming the critical worldwide demand for skilled Engineering and Management Professionals. Today, APIIT is an established leader in the Asia Pacific region for providing the very best in Engineering and Management education. Its vision is to cherish students through its center of excellence which are governed by best practices in Quality Education. 1.1 Task Involved The task assigned to the group is to create computerized software titled “Online Hotel Room Booking System” is management software for smooth running and management of Royal Central Park hotel. The system was developed using .Net technology for application language. This system will help the hotel management and the esteemed staff members to manage and guide the hotel’s functionality and transactions to realize its maximum potential in addition to its competence in the hotel business field. The two months provided by the university enabled the system analyst recognize and define the problem in the current manual system at the hotel. After an information gathering process from several hotels managed by manual and computerized systems, the system analyst saw that the hotel indeed needed a computerized management system. After a close analysis of samples collected during the problem definition stage, the analyst found that all the hardware and software requirements needed for implementation and maintenance of the system are readily available in the market and cheaply affordable by the hotel. The main objective of the application is to automate the existing system which manually manages the system to make the system faster. The system was carefully designed to ensure maximum efficiency of the system at the hotel. The system was skillfully and carefully coded to seal any possible loopholes in the system.
  4. 4. Principles & Practices of Software Production Group Assignment Page 4 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 1.2 Scope There are several motivations to order new computer-based Hotel Management System:  The proposed system will remove the hectic task of customers and executive for searching and booking rooms in hotel.  The system will help the administrative staff i.e. executive of the hotel to keep the daily and the history record details of the customers in proper Database.  Will generate proper reports for customers at the time of check-out.  Every novice user can easily interact with the system.  The HMS will allow remote access to hotel database only for customer after the authorization procedures. The customer could search, book rooms and give feedback. 1.3 Objectives  To provide a fully functional automated Hotel Management System that will be an offline system but some work can be done online also.  To provide a complete organizational and reliable system with least possibility of any errors.  To taking the feedback from the customer so that the hotel can be proved to be useful for their customers.  Customer can easily register at any point of time sitting in their homes and login for their purpose.  To view the information regarding room’s availability, executive should login with their unique ID.  A central database has been designed which will help in removing the issues/flaws  associated with the existing manual system and also will keep the records safely.
  5. 5. Principles & Practices of Software Production Group Assignment Page 5 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 2.0 Problem Background In our existing system all the booking of rooms in a hotel are done manually, so it was more time taking for an executive and customer to book, search rooms and collect payment in hotel. Another major disadvantage is that to preparing the list of all the rooms available in the hotel will take more time, currently it is doing as a one day process for verifying all records. After conducting the feasibility study we decided to make the manual Hotel room booking management system to be computerized. We had analyzed different hotel room booking management system and after that we had find the given problems in their system that are mentioned below.  Manual record keeping is not consistent as some errors can creep in while writing manually.  It is difficult to keep record of room availability and large number of customers.  More labor and time is required in this current system.  Managing room availability in order is bit difficult, so it’s not possible for executive to search the particular room.  Collecting payment is difficult.  Inaccuracy of records.  No central database can be created as information is not available in database.  More funds and paper is wasted to keep the manual record of available rooms and customers. Enhanced system i.e. Online Hotel Room Booking Management System in this system developer had tried to remove all the problems that has been faced while using manual hotel room booking system. In manual system executive and customers feeling problem to find the rooms that are available in the hotel but in current system they can easily find the details on a single click in this system. Calculating payment is easy in this system and most important thing is that a single person (Executive) can handle whole system without any facing problems through this system labor cost has been reduced. This system is time efficient, and full of accuracy, through this system executive has not to think about any error that was facing during the manual system.
  6. 6. Principles & Practices of Software Production Group Assignment Page 6 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 3.0 Proposed Solution The aim of this project is to develop a system that can handle and manage the activities involved in a hotel in an efficient and reliable way. It will help the executive to do their work in simple way without any trouble. On the basis of the drawbacks and shortcomings identified in the present and existing Hotel Room booking Management system, the solutions have been provided for the better management. Following are the proposed solutions that are listed below as: S. No. SOLUTIONS DESCRIPTION 1. Computerizing the system The basic problem of existing system was that the system was not computerized. In the newly made system we have removed this problem and we are providing a fully automated system in which the users will be having lots of advantages.  Better management of data.  Highly accessible for customers.  No funds or money is wasted in paper works neither we have to use so much man power though it is a web- based application all the data goes directly to database and we can retrieve data according to our choice.  Security  All details will be available at one click  To avoid chaos in registration of a new customer can directly get their login details on to their e-mail id. 2. 24*7 accessible The computerized system will accessible from anywhere and at any time. So the customers can reach the system very easily. 3. Records of available rooms and customer report The customer’s and room’s details will be managed through the computerized based system thus making it highly reliable for the hotel. 4. Collection of payment Payment will be collected online while booking rooms, but if some due is there then it can be collected either by cash or card at the time of check-out of customer and also invoice is provided. 5. Proper controlling system Executive can view each and every report of the customer just by going through the system which will save his time as the database is centralized now.
  7. 7. Principles & Practices of Software Production Group Assignment Page 7 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 6. Centralized database The computer database maintains customers and rooms records which will be highly beneficial for the executive. If executive updates any particular field it would notify at other places as all data is fetched through a centralized server only. This will add to the reliability and access of the data. 4.0 Project Planning & Control A project plan is a model of the process that the project team intends to follow to realize the project objectives. The project plan can be viewed as a type of “contract” between the project team members and other stakeholders. It defines the process by which the objectives will be achieved, and the responsibilities in carrying out this process. The project planning and control have been used to provide an opportunity for the customer to practice managing a project using a specific project management tool. There are some important aspects to be considered in project planning and control:- – User involvement: The users of Online hotel room booking management system either it be executive or the customer must be able to interact with the system in order to perform self-related operations. – Resources: The resources are the important part without which the progress of the project is impossible. So, any resource related to the development of the system, if available, is to be considered prior to the development stage. – Project Phases: Deciding project phases is a very important task as we can move forward only if we have the total estimates of the number of phases to be made. – Risk Management: Each and every type of risk like hardware, information, technology, person etc has to be identified through the risk assessment tools. – Requirement Analysis: In the requirement analysis we have to identify different methods, techniques and resources and different tools that can be helpful and beneficial for the project management. – Project Management: It involves the planning and control of the people, process and events that occur as software evolves from a beginning concept to an operational implementation.
  8. 8. Principles & Practices of Software Production Group Assignment Page 8 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 The Task involved in Project Planning & Control: 4.1 Software Quality Assurance Plan: Quality assurance is defined as a framework for achieving software quality. It involves defining or selecting standards which is applied for the software development process or software product. These standards provide a framework by which the quality assurance process may be implemented. In this, the work is carried out by one person and continued by another. Software quality management can be structured into three principal activities:  Quality assurance: The establishment of a framework of organizational procedures and standards which lead to high-quality software.  Quality planning: The selection of appropriate procedures and standards from this framework and the adaptation of these for a specific software project.  Quality control: The definition and performance of processes which ensure that the project quality procedures and standards are followed by the software development team. 4.2 Documentation Standards: Documentation standards are important in a software project because documents are the only tangible way of representing the software and software process. They are used to produce the documents and also involved in document development. They are used to ensure that a high-quality document must be produced. Standardized documents have a consistent appearance, structure and quality and should be therefore easier to read and understand. Documentation standards are of three types which are as follows:  Documentation process standards: This defines the process which should be followed for the document production. This standard is flexible and able to cope with all types of documents.  Document standards: This process governs the structure and presentation of documents. Documents should have a consistent style and appearance. The documentation provided along with this HMS carries a consistent style and consistent appearance throughout.  Document interchange standards: This standard ensures that all electronic copies of documents are very user friendly. This allows the documents of HMS to be easily transferred electronically and re-created in their original form.
  9. 9. Principles & Practices of Software Production Group Assignment Page 9 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 4.3 Programming Standards: The term programming standards is sometimes reserved for environments containing language specific editors and source level debugging facilities; here, the term will be used in its broader sense to refer to all of the hardware and software in the environment used by the programmer. All programming can therefore be properly described as taking place in a programming environment. Programming standards may vary considerably in complexity. 5.0 Project Management Project management includes developing a project plan, which includes defining project goals and objectives, specifying tasks or how goals will be achieved, what resources are need, and associating budgets and timelines for completion. Project Planning and The Planning Process Effective management of a software project depends on thoroughly planning the progress of the project. The project manager must anticipate problems which might arise and prepare tentative solutions to those problems. TASKS UNDERTAKEN AS PER PROJECT PLANNING Types of plan PLAN DESCRIPTION QUALITY PLAN Describes about the quality of the system VALIDATION PLAN Refers to the validation and verification of the system as per standards CONFIGURATION MANAGEMENT PLAN The system can be configured in case of any damage MAINTENANCE PLAN The system’s consistency is to be maintained STAFF DEVELOPMENT PLAN Divides the tasks equally among the members of the group
  10. 10. Principles & Practices of Software Production Group Assignment Page 10 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 RESOURCES NEEDED FOR PROJECT DEVELOPMENT AND RESOURCE ALLOCATION RESOURCE PARTICIPATION HOW MANY AVAILABLE HOW MANY ALLOCATED MANPOWER 3 3 3 MATERIAL 5 3 3 SERVICES 2 2 2 EQUIPMENT 4 3 3 TIME(in days) 70 30 15 MONEY NOT REQUIRED NOT REQUIRED NOT REQUIRED LOCATION NOT REQUIRED NOT REQUIRED NOT REQUIRED RESOURCE DESCRIPTION  The manpower required for the system development was fulfilled by the 3 group members and no external interferences were entertained.  The materials required were CDs, hardware and software requirements like Visual Studio 2008 are essentially required. Also, a certain amount of memory is required for the system to execute things properly.  Services include the internet facility used for the research process and feedback from the user’s side.  Equipments for the project include the hardware equipments that were used while the system development and the documentation creation process. The documentation prepared is presented in form of hard copy using computer and printers, the system has been developed using:  Hardware Interface: P4 processor  Software Interface: ASP.NET (Visual Studio 2008)  Communications Interface: Screen, Keyboard, Mouse  Memory Constraints: 128 MB at least.  Time constraints made the project development very critical but with the efficient work by the team members enabled us to get the task completed within the given time limit.
  11. 11. Principles & Practices of Software Production Group Assignment Page 11 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 6.0 Schedule Planning: 6.1 Milestone and Deliverable: We have divided our HMS into parts. They have some milestone and deliverable. TASKS DURATION MILESTONES & DELIVERABLES 1. Requirement Analysis 6 days SRS Doc. (Milestone) 2. Planning HMS 20 days HMS Executing Doc. (Milestone) 3. Designing HMS Software 10 days HMS Software (Deliverable) 4. Documentation 8 days User Manual (Deliverable) 6.2 Gantt Chart:
  12. 12. Principles & Practices of Software Production Group Assignment Page 12 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013
  13. 13. Principles & Practices of Software Production Group Assignment Page 13 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 6.3 Workload Matrix: Group Components (75%) Component Name Member 1 Member 2 Member 3 Introduction 50% 50% 0%Problem Background Proposed Solution Schedule Planning 50% 50% 0% Selection of Methodology 50% 50% 0% Project Planning Control 50% 50% 0% Logical Design 50% 50% 0%Process Design Entity Design Data Dictionary 50% 50% 0% Screen Design 50% 50% 0% Implementation 50% 50% 0% Testing 50% 50% 0% Individual Components (25%) Member 1 Student Name Risk Management Kumar Abhishek (PT1181106)Entity Modeling Presentation Member 2 Process Modeling Abhishek Anand (PT1181133)Data Modeling Presentation Member 3 Design Principles and Concepts Tanweer Ahmad (PT0981106)Architectural Design Presentation
  14. 14. Principles & Practices of Software Production Group Assignment Page 14 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 6.4 Work Break Down Structure (WBS) Online Hotel Room Booking System ADMIN EXECUTIVE CUSTOMER Register for Executive Manage Records Manage Reports Create Rooms & Offers Provide rules & Regulations Book Rooms Take Payment, if payment is cash Monitoring Rooms & Customers Add Customer details and also update View reports of customer & booked rooms Login Customer Check Availability of Room Book Room Make Payment Fill Feedback form Login Admin Login Executive Register Customer
  15. 15. Principles & Practices of Software Production Group Assignment Page 15 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 6.5 Organization Chart: Project Manager “Abhishek Anand” Interface Design “Kumar Abhishek” Testing & Maintenance “Tanweer Ahmad” Programming & Database Management “Abhishek Anand” 7.0 Selection of Methodology As per the project management there should be a proper selection of the methodology so on that contrast we have to select the methodology for our project i.e. Hotel Management System. The method being used in developing the system is the System Development Life Cycle (SDLC). The SDLC process includes project identification and selection, project introduction and planning, analysis, design, implementation and maintenance. Purpose of Methodology:-  It provides us with a framework for planning the project.  The quality of a software development effort is improved by using selected process techniques.  It helps in software development with less errors and therefore, provides shorter delivery times and better value.
  16. 16. Principles & Practices of Software Production Group Assignment Page 16 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 Structure of a methodology:- General structure of Life Cycle Model Each phase produces deliverables required by the next phase in the life cycle. Some phases are also inter-related with other phase. Planning is done in the first and analysis of the system is continued after that. Analysis of the system is being translated into design. Code is produced during implementation that is driven by the design. Testing verifies the deliverable of the implementation phase. Planning It is the very first phase of the system, in which we decide what the task is for and what all things we have to do for completion of the project in an easier and healthy way. Analysis It is second and also considered as an important phase of the life cycle model. In this phase, the existing system is studied by collecting the information through the Internet and analyzed the information to get alternatives for the use of proposed system. Design This is where the details on how the system will work are produced. Architecture, including hardware and software, communication are all part of the deliverables of a design phase. Implementation This is the longest phase of the software development life cycle as the code is produced from the deliverables of the design phase during implementation. Testing During testing of the system, the implementation code is tested to make sure that the product is actually solving the needs addressed and gathering the other information. Unit testing and system testing are done during this phase. PLANNING ANALYSIS DESIGN IMPLEMENTATION (Coding) TESTING
  17. 17. Principles & Practices of Software Production Group Assignment Page 17 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 Scope of a methodology:- Methodology helps in giving direction, it saves time and it improves the quality of deliverables. By using a methodology we can: – Create roadmap of a project. – Monitor quality and time. – Minimize risks and issues. – Manage staff and suppliers. Some of the common existing methodologies are:- » Waterfall Model » Spiral model » Hybrid Model Structured Systems Analysis and Design Method: SSADM is a method which deals with the information of system design. It is comparatively old system designed for large scale projects. SSADM has been traditionally used for the development of medium or large system. SSADM uses a combination of text and diagrams throughout the whole life cycle of a system design, from the initial design idea to the actual physical design of the application. These are followed by requirements analysis, requirements specification, logical system specification and a final physical system design. Reasons of using SSADM in our system are as follows:  Earlier all activities in hotel were performed manually and records of various activities were maintained manually on paper register.  SSADM reduces the error rate and risk by checking the system.  SSADM is less expensive and time-consuming as compared to other methodology.  SSADM separates the logical and the physical systems design. So the system does not have to be implemented again with new hard -or software.  SSADM does not require very special skills and can easily be taught to the staff.  The system model is developed and a comprehensive demand analysis is carried out by the help of SSADM.  SSADM improves the overall productivity of the specific project and the company.
  18. 18. Principles & Practices of Software Production Group Assignment Page 18 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 8.0 Risk Management Risk analysis and management are actions that help a software team to understand and manage uncertainty. Many problems can affect a software project. Risk is considered as a probability that some adverse circumstances will actually occurs. Software is a difficult undertaking and is also a key of good software project management. Risk analysis is done by everyone who is involved in the process of project. Risks can be categorized as: » Financial Risk » Health Risk » Security Risk » Environmental Risk Finally, a plan is developed to manage those risks that have high probability and high impact. Risk management involves several stages, they are: 8.1 Risk Assessment Risk Assessment is an important step in protecting the project and helps to focus on the risks that really matter. It is considered as a first step in risk management procedure. It helps in identifying the risk and does analysis of the same. It helps in the problems regarding existing Hotel Management Systems, and also similar type of applications under development. It also plays an important role in business applications. 8.2 Risk Control Risk control is a technique that utilizes findings from risk assessments and implementing changes to reduce risk in these areas. It takes actions which are possible in advance to reduce the effect of Risk. Spending money on mitigation is considered as best than to include contingency in the plan. There should be an emergency plan before taking any risk which may help in the development of the project. It also helps in tracking the effects of the risks identified and also manages them at the time of successful conclusion.
  19. 19. Principles & Practices of Software Production Group Assignment Page 19 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 8.3 Risk Identification Risk identification refers to the process of identifying dangerous or hazardous situations and trying to characterize it. It is a procedure to analyze, review and anticipate possible risks. There are many types of risk identification which helps in the project: S. No. RISK DESCRIPTION 1. Technology risks If the platform requirement is not fulfilled then may be the system fail to execute. 2. User Risk Users cannot use this Hotel Management System if they are unknown and don’t have any idea regarding the same. 3. Organizational risk Poor communication always leads to the problems between the workers within the organization. 4. Estimation Risk The cost estimated for developing the system may exceed the expectations resulting in budget imbalance. 5. Used Tools risk The HMS will operate only on Visual Studio 2008 and hence if the platform is not present in other organizations, this system fails to operate. 8.4 Risk Analysis Risk analysis should be performed as part of the risk management process for each project. The probability and the seriousness of the risk in Hotel Management System might be assessed as low or high. The effect of the risk might be assessed as serious, tolerable or not so important. The risk analysis is done according to the seriousness in the risk: RISK PROBABILITY (HIGH/LOW) EFFECTS Technology risks HIGH System crash/ failure. User risk LOW Lack of user knowledge to use the system. Organizational risk LOW Mental and health problems & communication failure among workers in the organization. Estimation risk HIGH Budget imbalance. User Tools risk LOW System failure in execution
  20. 20. Principles & Practices of Software Production Group Assignment Page 20 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 8.5 Risk Prioritization Risk Prioritization is done according to seriousness of the risk and once the risk have been analyzed and ranked, a judgment must be made that which are the most important risks that must be considered during the project development. The risks are prioritized according to the value of the Risk Exposure. Risk Marking Scheme: Low: 0-3 | Medium: 4-6 | High: 7-10 Risk Exposures: S. no. RISK RISK EXPOSURE 1 Software corruption 7 2 Inexperienced instructor 6.5 3 Design & implementation risks 4.75 4 Application and complexity 2.8 5 High work load risk 2.15 6 High project size 1.75 7 Maintenance problems 1.8 9.0 Requirement Analysis Requirement Analysis also called Requirement Engineering is the process of determining user expectations for a new or modified product. It involves frequent communication with system users. It is a process that involves all the activities required to create and maintain system requirements documentation. The essentials principles for requirement engineering activities are:-  Understand the problem-The problems that user of HMS may face are to be found out and should be solved. This can be done by performing the data gathering techniques like questionnaire, interviews, observation, etc.  Modeling and analyzing the problem- Structured analysis is used as the modeling technique which helps in analyzing the problems found in HMS.  Requirement validation- Requirement conflict, negotiations etc can be solved, because users of the HMS may be of different background.
  21. 21. Principles & Practices of Software Production Group Assignment Page 21 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013  Requirement management- In the early phases of requirement analysis, requirements continues to evolve software development phase. So there is a need to manage the changes as the problem evolves.  Communication problem- The project managers of HMS are required to establish information between the customer and the developer which is achieved through project specification, documentation and review meetings of the developer’s team. 9.1 Requirement Elicitation & Analysis Requirements elicitation is the practice of collecting the requirements of a system from users, customers and other stakeholders. Requirement elicitation and analysis is an iterative process with continual feedback from each activity to other activities. The process cycle starts with domain understanding and ends with requirements checking. The techniques used for requirement elicitation and requirement analysis process: 1. Domain Understanding: This states that the developers of the Hotel Management System should understand the domain and find out exactly how such systems are working in other organizations so that this system can be designed accordingly. 2. Requirement Collection: The users of the HMS are the executive, customers and their requirements are to be known prior to the system design process. 3. Classification: This activity takes the unstructured collection of requirements and organizes them into logical group. 4. Conflict Resolution: Since this Hotel Management System is to be used by different user groups so the possible conflicts of HMS are to be found and resolved. 5. Prioritization: This technique enables the HMS designers to arrange the requirements according to their priorities as per the customers. 6. Requirement Checking: The requirements are checked in accordance with what customers really want from the system to discover if they are complete and reliable.
  22. 22. Principles & Practices of Software Production Group Assignment Page 22 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 9.2 Requirement Validation Validation checks that the product design satisfies or fits the intended usage (high-level checking), i.e. the software meets the user requirement. The process of evaluating software during or at the end of the development process to determine whether it satisfies specified requirements of the customer. Requirement Validation is considered to be important: – It proves to be very useful in reducing the errors in the system. Errors in the document will create much problem which will directly affect in software development. – The cost of making a system differs due to customer’s requirement problem which is much higher than repairing design or coding errors. There are various Requirement Validation techniques which are used in the document: 1) Requirement reviews: It is a manual process which involves multiple readers for checking the requirements of document. The reviewers may also check for:  Verification: Is the requirement stated is testable?  Comprehensibility: Is the requirement understood properly by the users of the system?  Traceability: Is the origin of the requirement clearly understood?  Flexibility: Is the requirement flexible? 2) Prototyping: In this, the system’s executable model is to be demonstrated by the end- users and customers of the system. The prototyping techniques include:  Use of high level languages  Application assembly  Database programming 3) Testing: Requirements should ideally be testable. It allows the business to appreciate and understand the risks of software implementation. It also improves the quality of the software development. 4) Consistency analysis: To check the consistency, the CASE tool must be built to check all the requirements in this database for the record of all the information.
  23. 23. Principles & Practices of Software Production Group Assignment Page 23 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 10.0 Process Modeling 10.1 Logical Process Model: Logical Process Modeling is the representation of a business process, detailing all the activities in the process from gathering the initial data to reaching the desired outcome. It is used to model the detailed requirements of an application system. 10.1.1 Context Diagram  Context diagram is a top-level view of the information system.  Context diagram has one process symbol representing the entire information system. ADMIN Login to the System Registration of Executive Makes Rules & Regulations Check All the Availability Provide User ID & Password Generate Reports 0. Online Hotel Room Booking System Executive Login as Executive Checking how many Requests are available Successfully Logout Checking the mode of payment Update the record of Customers Request for Logout Customer Search the Rooms and availability Fill the registration form Provide User ID & Password Request for Booking rooms Makes the Payment Provide Feedback Context Diagram of System
  24. 24. Principles & Practices of Software Production Group Assignment Page 24 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 10.1.2 Level 0 DFD CUSTOMER 1.0 Registration ADMIN 3.0 Room Info Management Room Details 2.0 Login 4.0 Customer Info Management Customer Info Request for Registration Request for Registration As Executive Booking Room Room Database Availability of Rooms Provide User ID & Password Room Details Provide User ID & Password Sign in as CustomerCheck Room Availability Sign in as Admin 5.0 Account Management Make Payment Customer Database Update Customer Details Executive Database EXECUTIVE Executive Details Check Card Validity Confirms card is valid or not Payment Successfully Sign in as Executive Given User ID & Password Updated Customer Info Provide Booking ID & Room No. Registration for New Room
  25. 25. Principles & Practices of Software Production Group Assignment Page 25 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 11.0 Data Modeling 11.1 Entity Relationship Diagram There are basically 4 things which we consider while making ERD. ENTITY An entity is something, real or abstract, about which we store information. For our system there are basically these three entities: 1. Admin 2. Executive 3. Customer RELATIONSHIP A relationship is an association that exists among entities. For our system we have following relationships among 3 specified entities: – One Admin can register many Executive (0:N) – One Admin can add many Rooms (0:N) – One Admin can view many Reports of Executive, Customer & Rooms (0:N) – One Admin can delete many Executive (0:N) – One Admin can edit information of many Executive (0:N) – One Executive can check payment of Customer(1:N) – One Executive can view many Reports of Rooms (1:N) – One Executive can edit information of many booked Rooms (1:N) – One Customer can search many rooms (2:N) – One Customer can book many rooms (2:N)
  26. 26. Principles & Practices of Software Production Group Assignment Page 26 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 ATTRIBUTES Attributes is a property of an entity or a relationship type. For our system we have following attributes of 3 specified entities: Customer- Id of Customer, Name of Customer, Room Type, No. of Room booked, Check- in date, Check-out date and payment Admin/Executive/Customer- Username and password. Room- Room no, Room type, No of rooms, room status, room price. 11.1.1 ERD of Admin AdminDetails PK user_name VARCHAR(10) password VARCHAR(10) Rooms PK RoomNo VARCHAR(10) TypeofRoom VARCHAR(10) occupacy VARCHAR(10) rate INTEGER Record PK BillNo. NUMERIC(4,2) CustomerID(FK) CHAR(10) PaymentDate DATETIME PaymentMode CHAR(10) Add New Rooms Add, Delete, Update the record Executive PK user_name VARCHAR(10) name VARCHAR(10) dob VARCHAR(10) gender VARCHAR(10) mobile no NUMERIC(10,2) id no VARCHAR(10) Registration for Executive Monitoring for Executive Executive Monitoring PK user_name VARCHAR(10) name VARCHAR(10) dob VARCHAR(10) gender VARCHAR(10) mobile no NUMERIC(10,2) id no VARCHAR(10)
  27. 27. Principles & Practices of Software Production Group Assignment Page 27 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 11.1.2 ERD of Executive ExecutiveDetails PK ExecutivertId CHAR(10) ExecutiveName CHAR(10) ExecutiveAddress LONGCHAR ExecutiveMob NUMERIC(10,2) Email CHAR(10) Age NUMERIC(3,2) Gender CHAR(6) ExecutiveAccntNo. NUMERIC(11,10) Payment PK BillNo. NUMERIC(4,2) CustomerID(FK) CHAR(10) PaymentDate DATETIME PaymentMode CHAR(10) Checking Rooms Take Payment Booking PK BookingId CHAR(10) Date NUMERIC(10,2) Period NUMERIC(10,2) Type CHAR(10) Booking rooms for Customer Rooms PK RoomNo VARCHAR(10) TypeofRoom VARCHAR(10) occupacy VARCHAR(10) rate INTEGER 11.1.3 ERD of Customer CustomerDetails PK CustomerId CHAR(10) CustomerName CHAR(10) CustomerAddress LONGCHAR CustomerMob NUMERIC(10,2) Email CHAR(10) Age NUMERIC(3,2) Gender CHAR(6) Payment PK BillNo. NUMERIC(4,2) CustomerID(FK) CHAR(10) PaymentDate DATETIME PaymentMode CHAR(10) Checking Rooms Request for Payment Feedback/Grievances PK FeedbackId CHAR(10) GrievancesId(FK) CHAR(10) Yes TEXT(10) NO TEXT(10) Date NUMERIC(10,2) Give the Feedback Booking PK BookingId CHAR(10) Date NUMERIC(10,2) Period NUMERIC(10,2) Type CHAR(10) Request for Booking Rooms PK RoomNo VARCHAR(10) TypeofRoom VARCHAR(10) occupacy VARCHAR(10) rate INTEGER
  28. 28. Principles & Practices of Software Production Group Assignment Page 28 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 11.2 Entity Life History Diagram 11.2.1 ELH of Admin Admin Admin life Registration of Executive Monitoring Executive Add new Room View Report of Executive, Customer & Rooms * ** * Login Admin * 11.2.2 ELH of Executive Executive Executive life Login Executive Monitoring Customer & Room Check Payment Status Check Room Reports ** ** * 11.2.3 ELH of Customer Customer Birth Customer life Death Login Customer Check Availabilty * ** Book Room *Register Customer Delete ** Make Payment *
  29. 29. Principles & Practices of Software Production Group Assignment Page 29 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 12.0 Data Dictionary 12.1 Data flows: - Every computer based system has an information transformation. Data flows through a system, beginning as input and be changed into output. In hotel management system, the data will flow the executive to database. In this system, the customer will enter the information while creating their profile and the data will be stored to the database and when executive will show the room details at that moment data will flow from database to output screen. 12.2 Data Stores: - In computer based system, data has been stored in the database to use that data in future. In hotel management system, admin will store data in database about the room and then the data of customer, booked room are saved at the time of booking. This information will be stored in database on the basis of this information executive will get the information about any customer, that how many room that customer had booked, the date of check-in and payment details. 12.3 Processes: - It is a data transformer where data must always be processed in some way to achieve system function. In hotel management system developer had also provided the process system. While calculating the payment, process will do all the functions. Process will take the date of check-in of the room and take the date of check-out of the room and then process will calculate the payment of that customer that how much price that user have to pay according to the rule. 12.4 Source and Sink: - An external agent is a source if it is an origin of data coming into the system. In hotel management system source is customer who is entering the data in the system and the data is coming from the customer to the system. An external agent is sinking, if it is a destination of data leaving the system. In Hotel management system customer and executive both are sink because destination of the data to showing the details of rooms is for the customer and the destination of the data to showing the details of customer is for the executive.
  30. 30. Principles & Practices of Software Production Group Assignment Page 30 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 13.0 Interactive Screen Design Admin Login Screen Ladmin Table using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.SqlClient; public partial class Ladmin : System.Web.UI.Page { string s1; string s2; protected void Page_Load(object sender, EventArgs e) { } protected void btnLogin_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); if (txtuser.Text != "" && txtPass.Text != "") This is the admin login page to login the administrator. if user_name and password are matched from the Ladmin table , login successfully otherwise login unsuccessful.
  31. 31. Principles & Practices of Software Production Group Assignment Page 31 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 { using (SqlCommand command = new SqlCommand("SELECT user_name,pass FROM admin where user_name='" + txtuser.Text + "'", conn)) using (SqlDataReader reader = command.ExecuteReader()) { while (reader.Read()) { s1 = reader.GetValue(0).ToString().Trim(); s2 = reader.GetValue(1).ToString().Trim(); } if (s1 == txtuser.Text && s2 == txtPass.Text) { Response.Write("<script language='javascript'>alert('Login Successfully!');document.location='" + ResolveClientUrl("~/executive.aspx") + "';</script>"); Response.Redirect("~/Admin.aspx"); } else { Response.Write(@"<script language='javascript'>alert('User Name and Password are not matched!');</script>"); } } } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } conn.Close(); } }
  32. 32. Principles & Practices of Software Production Group Assignment Page 32 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 Login Screen for Customer C_login Table using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.SqlClient; public partial class customer : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void btnReset_Click(object sender, EventArgs e) { } protected void btnSubmit_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); SqlCommand cmd1 = new SqlCommand(" insert into C_login values('" + txtuser.Text + "','" + txtPass.Text + "')", conn); cmd1.ExecuteNonQuery(); Response.Write(@"<script language='javascript'>alert('You have registered successfully!');</script>"); txtuser.Text = ""; txtPass.Text = ""; txtCpass.Text = ""; conn.Close(); } } This is customer login screen . if customer enters the correct user name and password which provides at the time of registration which is available in C_login database table , login successfully otherwise login unsuccessful.
  33. 33. Principles & Practices of Software Production Group Assignment Page 33 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 E_login Table using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.SqlClient; public partial class executive : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void btnSubmit_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); SqlCommand cmd1 = new SqlCommand(" insert into E_login values('" + txtuser.Text + "','" + txtPass.Text + "')", conn); cmd1.ExecuteNonQuery(); Response.Write(@"<script language='javascript'>alert('You have registered successfully!');</script>"); txtuser.Text = ""; txtPass.Text = ""; txtCpass.Text = ""; conn.Close(); } } This is Executive login screen . if executive enters the correct user name and password which provides at the time of registration which is available in E_login database table , login successfully otherwise login unsuccessful.
  34. 34. Principles & Practices of Software Production Group Assignment Page 34 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 home table using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.SqlClient; public partial class home : System.Web.UI.Page { string s1; // s1 is the string to store the user name....................... string s2; // s2 is the string to store the password........................ protected void Page_Load(object sender, EventArgs e)// this is the page load event.......... { This is the homepage of our system. it provides the facilities to login for customers , check availability of room .
  35. 35. Principles & Practices of Software Production Group Assignment Page 35 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 lblnpass.Text = ""; txtnpass.Visible = false; lblCPass.Text = ""; txtCpass.Visible = false; lblSques.Text = ""; Sques.Visible = false; lblAns.Text = ""; txtAns.Visible = false; btnSubmit.Visible = false; btnClear.Visible = false; } protected void btnFpass_Click(object sender, EventArgs e)//Click event of the forget password button....... { lblnpass.Text ="New Password*"; txtnpass.Visible = true ; lblCPass.Text = "Confirm Password*"; txtCpass.Visible = true; lblSques.Text = "Security question*"; Sques.Visible = true; lblAns.Text = "Security Answer*"; txtAns.Visible = true ; btnSubmit.Visible = true ; btnClear.Visible = true; } protected void btnClear_Click(object sender, EventArgs e) { txtnpass.Text = ""; txtCpass.Text = ""; txtAns.Text = ""; } protected void btnLogin_Click(object sender, EventArgs e) { // creating an object of the sqlconnection class................................... SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); // Openning the connection............................................ if (txtuser.Text != "" && txtPass.Text != "") { // creating an object of SqlCommand class....................................... using (SqlCommand command = new SqlCommand("SELECT uname,pass FROM C_login where uname='" + txtuser.Text + "'", conn)) using (SqlDataReader reader = command.ExecuteReader()) { while (reader.Read()) { s1 = reader.GetValue(0).ToString().Trim(); s2 = reader.GetValue(1).ToString().Trim(); } if (s1 == txtuser.Text && s2 == txtPass.Text) { Response.Write("<script language='javascript'>alert('Login Successfully!');document.location='" + ResolveClientUrl("~/feedback.aspx") + "';</script>"); Response.Redirect("~/feedback.aspx"); } else
  36. 36. Principles & Practices of Software Production Group Assignment Page 36 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 { Response.Write(@"<script language='javascript'>alert('User Name and Password are not matched!');</script>"); } } } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } conn.Close(); } protected void btnNew_Click(object sender, EventArgs e) { Response.Redirect("customer.aspx"); } protected void btnSubmit_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); if (txtuser.Text != "") { SqlCommand cmd = new SqlCommand("update C_login set pass='" + txtnpass .Text + "' where uname ='" + txtuser.Text + "'", conn); cmd.ExecuteNonQuery(); conn.Close(); Response.Write(@"<script language='javascript'>alert('Password Changed successfully!');</script>"); txtnpass.Text = ""; txtCpass.Text = ""; } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } } protected void btnCheck_Click(object sender, EventArgs e) { Response.Redirect("booking.aspx"); } }
  37. 37. Principles & Practices of Software Production Group Assignment Page 37 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 cust Table using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.SqlClient; public partial class customer : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void btnReset_Click(object sender, EventArgs e) { } protected void btnSubmit_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); if (txtfName.Text != "" && txtlName.Text != "" && txtAdd.Text != This is the customer registration screen to register the new customer. when customer fill the mandatory fields and click on the submit button , the customer information is stored in the cust database table.
  38. 38. Principles & Practices of Software Production Group Assignment Page 38 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 "" && txtMob.Text != "" && txtTel.Text != "" && txtIno.Text != "" && txtuser.Text != "" && txtPass.Text != "" && txtCpass.Text != "" && txtAns.Text != "") { SqlCommand cmd = new SqlCommand(" insert into cust values('" + txtfName.Text + "','" + txtlName.Text + "', '" + datepicker .Text+ "', '" + gender.SelectedItem + "', '" + txtAdd.Text + "','" + txtMob.Text + "','" + txtTel.Text + "','" + Itype.SelectedItem + "','" + txtIno.Text + "','" + txtuser.Text + "','" + txtPass.Text + "','" + txtCpass.Text + "','" + Sques.SelectedItem + "','" + txtAns.Text + "')", conn); cmd.ExecuteNonQuery(); } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } conn.Close(); } }
  39. 39. Principles & Practices of Software Production Group Assignment Page 39 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 executive Table using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.SqlClient; public partial class executive : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void btnSubmit_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); if (txtfName .Text!= "" && txtlName .Text != ""&& txtAdd .Text !="" && txtMob .Text !="" && txtTel .Text !="" && txtIno.Text !="" && txtuser .Text !="" && txtPass .Text !="" && txtCpass.Text !="" && txtAns .Text !="") This is the Executive registration screen to register the new customer. when admin fill the mandatory fields and click on the submit button , the Executive information is stored in the executive database table.
  40. 40. Principles & Practices of Software Production Group Assignment Page 40 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 { SqlCommand cmd = new SqlCommand(" insert into executive values('" + txtfName.Text + "','" + txtlName.Text + "', '" + datepicker.Text + "', '" + gender.SelectedItem + "', '" + txtAdd.Text + "','" + txtMob.Text + "','" + txtTel.Text + "','" + Itype.SelectedItem + "','" + txtIno.Text + "','" + txtuser.Text + "','" + txtPass.Text + "','" + txtCpass.Text + "','" + Sques.SelectedItem + "','" + txtAns.Text + "')", conn); cmd.ExecuteNonQuery(); } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } conn.Close(); } } booking Table using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.SqlClient; public partial class booking : System.Web.UI.Page This is the booking screen . this screen is comeup when customer has completed the check availability and also click on the reservation menu which is given in the menubar
  41. 41. Principles & Practices of Software Production Group Assignment Page 41 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 { protected void Page_Load(object sender, EventArgs e) { } protected void btnPayment_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); if (txtfName.Text != "" && txtid .Text !="" && datepicker1 .Text !="" && datepicker2 .Text !="") { SqlCommand cmd = new SqlCommand(" insert into booking values('" + txtfName.Text + "','" + DropDownList3 .SelectedItem + "', '" + DropDownList1 .SelectedItem + "', '"+DropDownList2 .SelectedItem +"', '"+datepicker1.Text+"','"+datepicker2 .Text+"','"+txtid.Text+"')", conn); cmd.ExecuteNonQuery(); Response.Redirect("make_payment.aspx"); //Response.Write(@"<script language='javascript'>alert('You have booked the room successfully!');</script>"); } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } conn.Close(); } } make_payment using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; This is the payment mode screen. In the above screen when customer will have click on the make payment button , this screen is come up.
  42. 42. Principles & Practices of Software Production Group Assignment Page 42 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 using System.Data; using System.Data.SqlClient; public partial class make_payment : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void btnSubmit_Click(object sender, EventArgs e) { if (txtcno.Text != "" && txtname.Text != "" && txtcvv.Text != "") { Response.Write(@"<script language='javascript'>alert('You have booked the room successfully!');</script>"); Response.Redirect("book_report.aspx"); } } } m_room Table using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data.SqlClient; This is the room monitoring screen. when click on the room submenu which is given in the monitoring then the executive login screen is come up. when login is successful then that screen will be come up.
  43. 43. Principles & Practices of Software Production Group Assignment Page 43 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 using System.Data; public partial class m_room : System.Web.UI.Page { SqlDataReader dr = null; protected void Page_Load(object sender, EventArgs e) { btnGo.Visible = false; btnRelease.Visible = false; } protected void btnSearch_Click(object sender, EventArgs e) { if (txtNo.Text != "") { lblHno.Text = ""; btnGo.Visible = true; btnRelease.Visible = true; btnSearch.Visible = false; btnUpdate.Enabled = false; btnDelete.Enabled = false; btnCancel.Enabled = false; ddlType.Enabled = false; ddlOccu.Enabled = false; txtRate.Enabled = false; } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } } protected void btnRelease_Click(object sender, EventArgs e) { btnGo.Visible =false; btnRelease.Visible =false; btnSearch.Visible =true ; btnUpdate.Enabled = true ; btnDelete.Enabled = true ; btnCancel.Enabled = true ; ddlType.Enabled = true ; ddlOccu.Enabled = true ; txtRate.Enabled = true; } protected void btnGo_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); if (txtNo.Text != "") { SqlCommand cmd = new SqlCommand(" select * from room where rno='" + txtNo.Text + "'", conn); //cmd.ExecuteNonQuery(); dr = cmd.ExecuteReader(); object[] obj = new object[4]; while (dr.Read()) { dr.GetValues(obj); txtNo.Text = obj[0].ToString(); //ddlType.SelectedItem = obj[1].GetString(); txtRate.Text = obj[3].ToString(); }
  44. 44. Principles & Practices of Software Production Group Assignment Page 44 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 Response.Write(@"<script language='javascript'>alert('Room Search successfully!');</script>"); //txtNo.Text = ""; //txtRate.Text = ""; btnGo.Visible = false; btnRelease.Visible = false; btnSearch.Visible = true; btnUpdate.Enabled = true; btnDelete.Enabled = true; btnCancel.Enabled = true; ddlType.Enabled = true; ddlOccu.Enabled = true; txtRate.Enabled = true; } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } conn.Close(); } protected void btnUpdate_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); if (txtNo.Text != "") { SqlCommand cmd = new SqlCommand("update room set rtype='" + ddlType.SelectedItem + "',occu='" + ddlOccu.SelectedItem + "',rate='" + txtRate.Text + "' where rno ='" + txtNo.Text + "'", conn); cmd.ExecuteNonQuery(); conn.Close(); Response.Write(@"<script language='javascript'>alert('Room updated successfully!');</script>"); txtNo.Text = ""; txtRate.Text = ""; } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } } protected void btnDelete_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); if (txtNo.Text != "") { SqlCommand cmd = new SqlCommand("delete from room where rno ='" + txtNo.Text + "'", conn); cmd.ExecuteNonQuery(); conn.Close(); Response.Write(@"<script language='javascript'>alert('Room deleted successfully!');</script>"); txtNo.Text = ""; txtRate.Text = ""; } else {
  45. 45. Principles & Practices of Software Production Group Assignment Page 45 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } } protected void txtNo_TextChanged(object sender, EventArgs e) { } } m_cust table using System; using System.Collections.Generic; using System.Linq; This is the customer monitoring screen. when click on the customer submenu which is given in the monitoring then the executive login screen is come up. when login is successful then that screen will be come up.
  46. 46. Principles & Practices of Software Production Group Assignment Page 46 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.SqlClient; public partial class m_cust : System.Web.UI.Page { SqlDataReader dr = null; protected void Page_Load(object sender, EventArgs e) { btnGo.Visible = false; btnRelease.Visible = false; btnSearch.Visible = true; btnUpdate.Enabled = true; btnDelete.Enabled = true; btnCancel.Enabled = true; txt_false(); } protected void btnSearch_Click(object sender, EventArgs e) { if (txtuser.Text != "") { btnGo.Visible = true; btnRelease.Visible = true; btnSearch.Visible = false; btnUpdate.Enabled = false; btnDelete.Enabled = false; btnCancel.Enabled = false; txt_false(); } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } } protected void btnGo_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); if (txtuser.Text != "") { SqlCommand cmd = new SqlCommand(" select * from cust where uname='" + txtuser.Text + "'", conn); //cmd.ExecuteNonQuery(); dr = cmd.ExecuteReader(); object[] obj = new object[14]; while (dr.Read()) { dr.GetValues(obj); txtfName .Text = obj[0].ToString(); txtlName.Text = obj[1].ToString(); datepicker.Text = obj[2].ToString(); txtAdd.Text = obj[4].ToString(); txtMob.Text = obj[5].ToString(); txtTel.Text = obj[6].ToString(); txtIno.Text = obj[8].ToString(); txtuser.Text = obj[9].ToString(); txtPass.Text = obj[10].ToString(); txtCpass.Text = obj[11].ToString(); txtAns.Text = obj[13].ToString();
  47. 47. Principles & Practices of Software Production Group Assignment Page 47 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 } Response.Write(@"<script language='javascript'>alert('Customer record Search successfully!');</script>"); btnGo.Visible = false; btnRelease.Visible = true; btnSearch.Enabled = false; btnUpdate.Enabled = false; btnDelete.Enabled = false; btnCancel.Enabled = false; } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } conn.Close(); } protected void btnRelease_Click(object sender, EventArgs e) { txt_true(); btnSearch.Enabled = false; btnUpdate.Enabled = true; btnDelete.Enabled = true; btnCancel.Enabled = true; } protected void btnUpdate_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); if (txtuser.Text != "") { SqlCommand cmd = new SqlCommand("update cust set fname='" + txtfName.Text + "',lname='" + txtlName .Text + "',dob='" + datepicker .Text + "', gender='"+gender .SelectedItem+"',address='"+txtAdd.Text +"',mob='"+txtMob.Text +"',tel='"+txtTel.Text+"', itype='"+Itype .SelectedItem+"',ino='"+txtIno.Text +"', pass='"+txtPass.Text+"', cpass='"+txtCpass.Text+"',sq='"+Sques .SelectedItem+"',sa='"+txtAns.Text+"'where uname ='" + txtuser.Text + "'", conn); cmd.ExecuteNonQuery(); conn.Close(); Response.Write(@"<script language='javascript'>alert('Customer record updated successfully!');</script>"); txtuser.Text = ""; btnSearch.Enabled = true; txt_clear(); } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } } protected void btnDelete_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); if (txtuser.Text != "") { SqlCommand cmd = new SqlCommand("delete from cust where uname ='" + txtuser.Text + "'", conn); cmd.ExecuteNonQuery();
  48. 48. Principles & Practices of Software Production Group Assignment Page 48 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 conn.Close(); Response.Write(@"<script language='javascript'>alert('customer record deleted successfully!');</script>"); txtuser.Text = ""; btnSearch.Enabled = true; txt_clear(); } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } } public void txt_clear() { txtfName.Text = "" ; txtlName.Text = ""; datepicker.Text = ""; txtAdd.Text = ""; txtMob.Text = ""; txtTel.Text = ""; txtIno.Text = ""; txtuser.Text = ""; txtPass.Text = ""; txtCpass.Text = ""; txtAns.Text = ""; } public void txt_true() { txtfName.Enabled = true; txtlName.Enabled = true; datepicker.Enabled = true; gender.Enabled = true; txtAdd.Enabled = true; txtMob.Enabled = true; txtTel.Enabled = true; Itype.Enabled = true; txtIno.Enabled = true; txtPass.Enabled = true; txtCpass.Enabled = true; Sques.Enabled = true; txtAns.Enabled = true; } public void txt_false() { txtfName.Enabled = false; txtlName.Enabled = false; datepicker.Enabled = false; gender.Enabled = false; txtAdd.Enabled = false; txtMob.Enabled = false; txtTel.Enabled = false; Itype.Enabled = false; txtIno.Enabled = false; txtPass.Enabled = false; txtCpass.Enabled = false; Sques.Enabled = false; txtAns.Enabled = false; } }
  49. 49. Principles & Practices of Software Production Group Assignment Page 49 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 m_executive Table using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.SqlClient; public partial class m_executive : System.Web.UI.Page { SqlDataReader dr = null; protected void Page_Load(object sender, EventArgs e) { btnGo.Visible = false; btnRelease.Visible = false; btnSearch.Visible = true; btnUpdate.Enabled = true; btnDelete.Enabled = true; btnCancel.Enabled = true; This is the executive monitoring screen. when click on the executive submenu which is given in the monitoring then the admin login screen is come up. when login is successful then that screen will be come up.
  50. 50. Principles & Practices of Software Production Group Assignment Page 50 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 txt_false(); } protected void btnSearch_Click(object sender, EventArgs e) { if (txtuser.Text != "") { btnGo.Visible = true; btnRelease.Visible = true; btnSearch.Visible = false; btnUpdate.Enabled = false; btnDelete.Enabled = false; btnCancel.Enabled = false; txt_false(); } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } } protected void btnGo_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); if (txtuser.Text != "" ) { SqlCommand cmd = new SqlCommand(" select * from executive where uname='" + txtuser.Text + "'", conn); //cmd.ExecuteNonQuery(); dr = cmd.ExecuteReader(); object[] obj = new object[14]; while (dr.Read()) { dr.GetValues(obj); txtfName.Text = obj[0].ToString(); txtlName.Text = obj[1].ToString(); datepicker.Text = obj[2].ToString(); txtAdd.Text = obj[4].ToString(); txtMob.Text = obj[5].ToString(); txtTel.Text = obj[6].ToString(); txtIno.Text = obj[8].ToString(); txtuser.Text = obj[9].ToString(); txtPass.Text = obj[10].ToString(); txtCpass.Text = obj[11].ToString(); txtAns.Text = obj[13].ToString(); } Response.Write(@"<script language='javascript'>alert('Executive record Search successfully!');</script>"); btnGo.Visible = false; btnRelease.Visible = true; btnSearch.Enabled = false; btnUpdate.Enabled = false; btnDelete.Enabled = false; btnCancel.Enabled = false; } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); }
  51. 51. Principles & Practices of Software Production Group Assignment Page 51 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 conn.Close(); } protected void btnRelease_Click(object sender, EventArgs e) { txt_true(); btnSearch.Enabled = false; btnUpdate.Enabled = true; btnDelete.Enabled = true; btnCancel.Enabled = true; } protected void btnUpdate_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); if (txtuser.Text != "") { SqlCommand cmd = new SqlCommand("update executive set fn='" + txtfName.Text + "',ln='" + txtlName.Text + "',dob='" + datepicker.Text + "', gender='" + gender.SelectedItem + "',address='" + txtAdd.Text + "',mob='" + txtMob.Text + "',tel='" + txtTel.Text + "', itype='" + Itype.SelectedItem + "',ino='" + txtIno.Text + "', pass='" + txtPass.Text + "', cpass='" + txtCpass.Text + "',sq='" + Sques.SelectedItem + "',sa='" + txtAns.Text + "'where uname ='" + txtuser.Text + "'", conn); cmd.ExecuteNonQuery(); conn.Close(); Response.Write(@"<script language='javascript'>alert('Executive record updated successfully!');</script>"); txtuser.Text = ""; btnSearch.Enabled = true; txt_clear(); } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } } protected void btnDelete_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); if (txtuser.Text != "") { SqlCommand cmd = new SqlCommand("delete from executive where uname ='" + txtuser.Text + "'", conn); cmd.ExecuteNonQuery(); conn.Close(); Response.Write(@"<script language='javascript'>alert('customer record deleted successfully!');</script>"); txtuser.Text = ""; btnSearch.Enabled = true; txt_clear(); } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } } public void txt_clear() {
  52. 52. Principles & Practices of Software Production Group Assignment Page 52 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 txtfName.Text = ""; txtlName.Text = ""; datepicker.Text = ""; txtAdd.Text = ""; txtMob.Text = ""; txtTel.Text = ""; txtIno.Text = ""; txtuser.Text = ""; txtPass.Text = ""; txtCpass.Text = ""; txtAns.Text = ""; } public void txt_true() { txtfName.Enabled = true; txtlName.Enabled = true; datepicker.Enabled = true; gender.Enabled = true; txtAdd.Enabled = true; txtMob.Enabled = true; txtTel.Enabled = true; Itype.Enabled = true; txtIno.Enabled = true; txtPass.Enabled = true; txtCpass.Enabled = true; Sques.Enabled = true; txtAns.Enabled = true; } public void txt_false() { txtfName.Enabled = false; txtlName.Enabled = false; datepicker.Enabled = false; gender.Enabled = false; txtAdd.Enabled = false; txtMob.Enabled = false; txtTel.Enabled = false; Itype.Enabled = false; txtIno.Enabled = false; txtPass.Enabled = false; txtCpass.Enabled = false; Sques.Enabled = false; txtAns.Enabled = false; } protected void btnCancel_Click(object sender, EventArgs e) { Response.Redirect("home.aspx"); } }
  53. 53. Principles & Practices of Software Production Group Assignment Page 53 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 new_room Table using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data.SqlClient; using System.Data; public partial class room : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void btnSubmit_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); This is the room registration screen. when click on the add new room submenu which is given in the records menu then the admin login screen is come up. when login is successful then that screen will be come up.
  54. 54. Principles & Practices of Software Production Group Assignment Page 54 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 if (txtNo.Text != ""&& txtRate.Text != "") { SqlCommand cmd = new SqlCommand(" insert into room values('" + txtNo.Text + "', '" + ddlType.SelectedItem + "', '" + ddlOccu.SelectedItem + "', '" + txtRate.Text + "')", conn); cmd.ExecuteNonQuery(); Response.Write(@"<script language='javascript'>alert('Room added successfully!');</script>"); txtNo.Text = ""; txtRate.Text = ""; } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } conn.Close(); } } cust_list Table This is the customer list report screen. when click on the customer list report submenu which is given in the records menu then the executive login screen is come up. when login is successful then that screen will be come up.
  55. 55. Principles & Practices of Software Production Group Assignment Page 55 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 </asp:GridView> <asp:SqlDataSource ID="c_report" runat="server" ConnectionString="<%$ ConnectionStrings:systemConnectionString %>" SelectCommand="SELECT * FROM [cust]"></asp:SqlDataSource> </div> <div style="float:left;"> <center ><h2> Report of the Executive</h2></center> <asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False" DataKeyNames="uname" DataSourceID="SqlDataSource2"> room_report Table <div> <center ><h2> Report of the Rooms</h2></center> <center> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="rno" DataSourceID="SqlDataSource1"> <Columns> <asp:BoundField DataField="rno" HeaderText="rno" ReadOnly="True" SortExpression="rno" /> <asp:BoundField DataField="rtype" HeaderText="rtype" SortExpression="rtype" /> <asp:BoundField DataField="occu" HeaderText="occu" SortExpression="occu" /> <asp:BoundField DataField="rate" HeaderText="rate" SortExpression="rate" /> </Columns> </asp:GridView> This is the room history report screen. when click on the room history report submenu which is given in the records menu then the admin login screen is come up. when login is successful then that screen will be come up.
  56. 56. Principles & Practices of Software Production Group Assignment Page 56 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:systemConnectionString %>" SelectCommand="SELECT * FROM [room]"></asp:SqlDataSource> </center> </div> feedback Table using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.SqlClient; public partial class feedback : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { This is the feedback screen . this screen is come up when customer is clicked on the feedback menu and then logged in.
  57. 57. Principles & Practices of Software Production Group Assignment Page 57 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 } protected void btnSubmit_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connect.connection()); conn.Open(); if (txtName.Text != "" && txtEmail.Text != "") { SqlCommand cmd = new SqlCommand(" insert into feed values('" + txtName.Text + "', '" + txtEmail.Text + "', '" + txtQuery.Text + "')", conn); cmd.ExecuteNonQuery(); Response.Write(@"<script language='javascript'>alert('feedback successfully!');</script>"); txtName.Text = ""; txtEmail.Text = ""; txtQuery.Text = ""; } else { Response.Write(@"<script language='javascript'>alert('Please enter the correct information!');</script>"); } conn.Close(); } }
  58. 58. Principles & Practices of Software Production Group Assignment Page 58 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 This is the contact us screen . this screen is come up when clicking on the contact us menu which is given in the menu bar
  59. 59. Principles & Practices of Software Production Group Assignment Page 59 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 14.0 Programming Environment In computer program and software product development, the development environment is the set of processes and programming tools used to create the program or software product. The term may sometimes also imply the physical environment. FRONT END ASP .NET (C#) is an object-oriented computer programming language that can be viewed as an evolution of the classic ASP, which is implemented on the .NET Framework. REASONS FOR SELECTING MICROSOFT VISUAL STUDIO 2008  All of .NET is truly revolutionary and gives programmers a much more capable, efficient and flexible way to write computer software. ASP .NET is a key part of this revolution.  At the same time, ASP .NET is clearly more difficult to learn and use. The vastly improved capability does come at a fairly high cost of technical complexity. Microsoft helps to make up for this increased technical difficulty by providing even more software tools in .NET to help programmers. Most programmers agree that ASP.NET is such a huge leap forward that it's worth it.  It is an object oriented programming language. It contains a systematic collection of classes and objects. DEVELOPMENT TOOL - Microsoft Visual Studio 2008 REASONS FOR SELECTING MICROSOFT VISUAL STUDIO 2008  It has an inbuilt IDE which helps the developer while developing the code. ASP.NET simplifies debugging with support for Runtime diagnostics.  An event driven programming which enables an easy restructuring of program as requirement changes and thus provided flexibility. ASP.NET can also handle the details of maintaining the state of the controls, such as contents in a textbox, between calls to the same ASP.NET form.  The platform provides easy debugging of errors. So, the probability of errors occurrence is automatically reduced. BACK-END The term back-end database is most widely used among developers using small database programming systems which can contain the end-user application programming within the database as a single item. SQL database is the back-end for the system.
  60. 60. Principles & Practices of Software Production Group Assignment Page 60 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 DEVELOPMENT TOOL – SQL Server 2008 REASONS FOR SELECTING SQL SERVER 2008 AS BACK END  Create multiple reports with different views of the same information  Create tables quickly without worrying about database complexity  Enables Information workers to access data across multiple heterogeneous system  Provides a wide range of connection options, including connectivity to 3rd-party products  Enables you to use data feeds as data sources  Enables portability because data configuration information is stored in the workbook. DOCUMENTATION TOOLS – Microsoft Word 2007: for writing the whole documentation including tables & screen-shots. – Microsoft Project 2007: For making Gantt chart. – Microsoft Visio 2007: For making Context diagram, DFDs, Entity Life History, ER Diagram 15.0 Testing Testing is to check, verify and evaluate the product that comes up after going through the demanding processes. Since the designed system is having both Online/Offline features so the type of testing that should be implemented for the system are Alpha testing, Beta testing, Unit testing, Integration tests and System testing. Following are the test cases we have designed to check the integrity of the system: 15.1 UNIT TESTING A unit is the smallest testable part of an application. The primary goal of unit testing is to take the smallest piece of testable software in the application, and isolate it from the remainder of the code, and determine whether it behaves exactly as expectations of the developer. Each unit is tested separately before integrating them into modules to test the interfaces between modules.
  61. 61. Principles & Practices of Software Production Group Assignment Page 61 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 LOGIN MODULE Test Case Name Login Module Testing Test Case No. HMS -01 Purpose of Test Check the correctness & Integrity of Login Module. Test Attribute  By default cursor will be in User Name text field.  After entering User Name, cursor should switch to password field by using Tab Key or by clicking on the password textbox.  Sign in option is there to log into the system after fulfilling mandatory details. Test Focus Function Feature Process Interface Validation Verification × × Whether the complete Login module is working properly or not. × Proper validation for User ID, Password and other fields are given or not. At last complete Login module is verified. Test Type Beta Testing Test Process Initiation Starting Condition Input Specification Outputs Expected Assumptions Made User starts the system from the computer. Screen shows login module i.e. admin login form  User ID, password are entered.  Submit button clicked.  Successful Login.  Failed login due to incorrect field entry.  Failed login due to fields not filled  Password has minimum 4 characters. Test Results Criteria Expected Result Actual Result Error Description State User ID As per database entry As per database entry - Error Free State Password As per database entry & both the attribute should match. In some cases both the attributes doesn’t match. Errorless State Action In case of any error, user has option to click on the forgot password and retrieve the password by filling in the mandatory details.
  62. 62. Principles & Practices of Software Production Group Assignment Page 62 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 REGISTRATION MODULE Test Case Name Registration Module Testing Test Case ID HMS-02 Purpose of Test To check the validity & performance of Registration process of a executive done by the admin Test Attribute  By default cursor will be in First Name  Then the admin should click on the email id field, the security question and finally the answer field.  Submit option is there to make the specific student a user of the system after fulfilling mandatory details of the same. Test Focus Function Feature Process Interface Validation Verification Whether admin can register the executive or not × Whether the whole Registration module is working properly or not. × × At last whole Registration module is verified Test Type Beta Testing Test Process Initiation Starting Condition Input Specification Outputs Expected Assumptions Made User starts the system from the computer. Screen shows register executive form.  Required fields have been filled.  Register is clicked.  Successful registration.  Unsuccessful registration due to incorrect field entry or empty field.  All fields are mandatory to fill Test Results Criteria Expected Result Actual Result Error Description State All Fields Should be filled properly As per the validation given by admin As per the validation given by admin Errorless state Action In case of non comprehensible error the admin has the option of going back to the previous home screen and start the registration of the executive again.
  63. 63. Principles & Practices of Software Production Group Assignment Page 63 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 15.2 INTEGRATION TESTING Integration testing is a logical extension of unit testing. In this testing strategy, different units that have already been tested are combined into a component and the interface between them is tested. Integration testing identifies problems that occur when units are combined. Thus Integration testing is the phase of software testing where individual software modules are combined and tested as a group. INTEGRATION TESTING FOR LOGIN, REGISTER A EXECUTIVE & ROOM book Testing for library management system Test Strategy Integration Test Testing Modules login, Register, room book, register a executive S. No Condition Tested Expected Result Actual Result Remarks 1 After providing user id and password in login module. Whether user go to next page. After providing all necessary fields for issue and register whether the task is fulfilled. If user enters correct data than he proceeds As per Expected Result Pass 2 Data is transferred properly between the pages Data should transfer from one page to another without any hindrance As per Expected Result Pass
  64. 64. Principles & Practices of Software Production Group Assignment Page 64 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 15.3 SYSTEM TESTING The system test will focus on the behavior of the system as a whole. User scenarios will be executed against the system as well as error messages and navigation will be tested. Methodology: Overall it will test the integrity of the system and verify if it meets the specifications in the requirement specifications. Testing for library management system Test Strategy System Test Testing Modules Complete system testing includes login, Register, room book, payment accounts, customer accounts etc. S.No Condition Tested Expected Result Actual Result Remarks 1 Getting the reports of executive accounts, room book accounts, customer accounts, payment account If user enters correct data than he proceeds As per Expected Result Pass 2 Data is transferred properly between the pages Data should transfer from one page to another without any hindrance As per Expected Result Pass 3 admin is able to view any report whenever he wants to get If user enters correct data than he proceeds As per Expected Result Pass
  65. 65. Principles & Practices of Software Production Group Assignment Page 65 of 65 LEVEL 2 ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY 2013 16.0 References Websites: 1. scribd (2010), Available :- http://www.scribd.com/doc/19244137/Online-Hotel-Management- System .Accessed on :- 17/11/2013. 2. Anonymous.(2011). Asp tutorial. Available: http://asp.net-tutorials.com/. [Last accessed 19th September 2013]. 3. Anonymous. (2011). Sql . Available: http://www.1keydata.com/sql/sql.html [Last accessed 4th October 2013.] 4. Anonymous. (2011). .net Basics. Available: http://www.aspnetbook.com/basics/aspnet_basics.php. [Last accessed 23th October 2013.] 5. vclcomponents (2010) Available:- http://www.vclcomponents.com/s/0__/hotel_reservation_project_documentation/[Last accessed 14th October 2013.]

×