centercenter _Toc514248720 h 211.3.1Introduction PAGEREF _Toc514248721 h 211.3.2Initial

centercenter 2018NCC: COMPUTER PROJECTMauSafari ParkLutchmanen Harassen 9500095000 2018NCC: COMPUTER PROJECTMauSafari ParkLutchmanen Harassen Table of Contents TOC o “1-3” h z u Abstract PAGEREF _Toc514248703 h 4Synopsis of the project PAGEREF _Toc514248704 h 4Introduction PAGEREF _Toc514248705 h 5Scope of the project PAGEREF _Toc514248706 h 5System developed PAGEREF _Toc514248707 h 5Methodology Used PAGEREF _Toc514248708 h 6Solution that emerged PAGEREF _Toc514248709 h 7The main aim and objective of the project PAGEREF _Toc514248710 h 8A brief overview of the remaining section PAGEREF _Toc514248711 h 91.0 Analysis PAGEREF _Toc514248712 h 101.1Requirements PAGEREF _Toc514248713 h 101.

1.1List of functional requirements and non-functional requirements PAGEREF _Toc514248714 h 101.1.2Feasibility Study PAGEREF _Toc514248715 h 121.1.3Cost and benefits feasibility PAGEREF _Toc514248716 h 121.1.

We Will Write a Custom Essay Specifically
For You For Only $13.90/page!


order now

4Schedule feasibility PAGEREF _Toc514248717 h 141.1.5Choice of Programming language PAGEREF _Toc514248718 h 151.2Use Case Diagrams PAGEREF _Toc514248719 h 181.3System Architecture PAGEREF _Toc514248720 h 211.3.1Introduction PAGEREF _Toc514248721 h 211.3.

2Initial Class Diagram PAGEREF _Toc514248722 h 222.0 Design PAGEREF _Toc514248723 h 242.1 Introduction PAGEREF _Toc514248724 h 242.2 UML Diagram PAGEREF _Toc514248725 h 252.3 Database Design PAGEREF _Toc514248726 h 252.

3.1 Entity Relationship Diagram PAGEREF _Toc514248727 h 262.3.2 Project Entities PAGEREF _Toc514248728 h 262.3.3 Project Entity Relationship PAGEREF _Toc514248729 h 272.

3.4 Entity Relationship Model: Class Diagram PAGEREF _Toc514248730 h 312.3.5 Data Dictionary PAGEREF _Toc514248731 h 322.3.6 Website Design PAGEREF _Toc514248732 h 366)Below is the design for the gallery page of the website. PAGEREF _Toc514248733 h 40 PAGEREF _Toc514248734 h 40 PAGEREF _Toc514248735 h 40 PAGEREF _Toc514248736 h 412.4 Sequence Diagrams PAGEREF _Toc514248737 h 412.

4.1 Sequence Diagram for Registration PAGEREF _Toc514248738 h 412.4.2 Sequence Diagram for Login PAGEREF _Toc514248739 h 423.0 Testing PAGEREF _Toc514248740 h 433.1 What is testing? PAGEREF _Toc514248741 h 433.2 Types of testing PAGEREF _Toc514248742 h 433.

2.1 BlackBox Testing Introduction PAGEREF _Toc514248743 h 433.2.2 WhiteBox Testing Introduction PAGEREF _Toc514248744 h 443.

2.3 Unit Testing Introduction PAGEREF _Toc514248745 h 443.2.4 Integration Testing Introduction PAGEREF _Toc514248746 h 453.2 Unit Testing PAGEREF _Toc514248747 h 454.0 Implementation PAGEREF _Toc514248748 h 514.

1 What is Implementation? PAGEREF _Toc514248749 h 514.2 Installation of WAMP Server PAGEREF _Toc514248750 h 524.3 MySQL DATABASE PAGEREF _Toc514248751 h 544.

3.1 Installation of HeidiSQL PAGEREF _Toc514248752 h 544.3.2 Create the Database PAGEREF _Toc514248753 h 564.4 Installation of IDE PAGEREF _Toc514248754 h 574.4.1 Installation of Java Developer Kit (JDK) PAGEREF _Toc514248755 h 584.4.

2 Installation of NetBeans PAGEREF _Toc514248756 h 615.0 Other Project Matters PAGEREF _Toc514248757 h 635.1 System Security PAGEREF _Toc514248758 h 635.2 Security threats PAGEREF _Toc514248759 h 63AbstractSynopsis of the projectMauSafari Park is small wildlife park situated on an island called Mauritius in the Indian Ocean. This park was built in the 90s so as to keep animals that were in danger of extinction. During the past 10 years, the management wants to make the park a Safari Park to attract not only tourists but also Mauritians also to come to see those beautiful creatures and many more activities.To make the project more attractive and productive, they decided to create a website for the park.

This system will allow customer to purchase their tickets directly on the website and choose the activity they want to do. This new project will help them in doing publicity for the opening of the safari park.A new aspect of the Safari Park is about donation for the animals.

This new feature will allow people from different country to contribute to the feeding of the different animals we have in the park. Not only contribute but they will also be able to donate money for the feeding of an animal of their choice.The project will involve the development of both the front-end and the back-end of the web-based system. The company’s staff will use the back-end in order to manage tickets that have been booked by customers. The front-end will be used by the customers as they will book their tickets and choose the activity they want to do on it.IntroductionScope of the project The scope of the project is to develop a platform for an online booking system for a safari park in Mauritius. This website is going to be a dynamic website.

The project will cover in detail the analysis, the design, the implementation and the testing of the website. It will also include the technique of project management and of configuration management that has been used in the project.System developedAs mentioned before, the system would be a dynamic website with additional features such as online booking with a donation function system. This will facilitate the works of the staff of the safari park and the clients that is not to wait for hours to get a ticket. It will also attract more customer to use the website for booking tickets. The website will be design and developed by taking into consideration that it should be responsive, i.e. it should fit on different screen of the user and it will be user friendly.

Methodology UsedThe methodology that will be used to develop the website is the same to the Software Development Life Cycle (SDLC). It provides a systematic process for building the website.102870078232000SDLC has many methodologies, but the one that is going to be used in this project is the waterfall model.

The Waterfall Model was the first Process Model to be introduced. It is also referred to as a linear-sequential life cycle model. It is very simple to understand and use. In a waterfall model, each phase must be completed before the next phase can begin and there is no overlapping in the phases.49999902070735Maintenance00Maintenance470979518065750039954201649095Testing00Testing371919513493750025761951162685Implementation00Implementation2290445858520001471295696595Design00Design11950704013200061595173990Requirements analysis0Requirements analysisSolution that emergedThe solution that emerged for this project is to develop a dynamic website in order to facilitate the customers of the safari park to buy a ticket to visit the park i.e. waiting for hours in a queue before getting a ticket. The website will include some features such as registration and login of users, booking of tickets online, pay bill online, etc.

Nowadays, for the development of a website, it does not require the purchase of expensive software or hardware. There are lot of freeware that are available online that can be use for the development of the website.Below are some examples of freeware and open source software that can be used:HeidiSQLWAMPNetbeansMySQLBoostrapGIMPThe main aim and objective of the projectThe Aims of the project are:Replace the old system of booking table in a restaurant by new system.The system should be fast and accessible via Internet.

The website should be displayed and accessible on different screen resolution.It should contain a method for payment.Menu and others features should be available on the website. The Objectives of the Project are:The developed system should be computerized.

The system should be secure using the SSL.It should provide information such as promotion, events, etc.It should also contain a billing system.

The project should be efficient and robust.A brief overview of the remaining sectionChapter 1 – AnalysisThis chapter explains the business requirements that are gathered in this phase. It is analyzing the needs of the client and ensure that the project meet their expectations. This phase includes use case diagram to describe different scenario of the system process.

Architecture is discussed at the end of this phase showing the system architecture and the class diagram.Chapter 2 – DesignThe design phase is discussed in this chapter after a good understanding of the requirement and analysis from the previous chapter. This chapter will includes the design of the database and the website by defining the Entity Relationship Model (ERM), the website structure, Structural Model and Behavioral Model.Chapter 3 – ImplementationThis chapter show the implementation of the website. Procedure to install the require software is detailed in this phase.

It is the main focus of the developer to produce the website from coding.Chapter 4 – TestingAfter the coding, this chapter describes the testing done on the developed website. Testing will includes unit testing, integrated testing and system testing.

Chapter 5 – Other Project IssueThis chapter discussed about the project management and configuration management that has been used throughout the development of the project. Chapter 6 – ConclusionConclusion is detailed in this chapter about how the whole project has been a success in developing the website. 1.0 AnalysisThis is the first phase of the software development life cycle and also the most important phase during which all requirements are gathered. This is to ensure that the website provide the expected requirement of an audience target.RequirementsAt this phase it is important to document all requirements to the desired software.

You should dedicate sufficient time to this phase, conducting extensive interviews with stakeholders. It is better to structure all incoming data, analyze them, consider all technical limitations that may arise on the client’s side, and come out with a ready-to-follow specification to meet the client’s needs. Another thing to consider is any constraints that may hinder the development process, such as client’s time and budget constraints.

List of functional requirements and non-functional requirementsFunctional Requirements Non-functional requirementsProduct Features Product propertyDescribe the actions with which the user work is concerned Describe the experience of the user while doing the workA function that can be captured in use cases Non-functional requirements are global constraints on a software systems that results in development cost, operational costs A behavior that can be analyzed by drawing sequence diagrams, state charts, etc. Often known as software qualitiesCan be traced to individual set of a program Usually cannot be implemented in a single module of a programIn order to categorize the requirements, I have been using the MoSCoW prioritization method.Functional requirements:Customers must be able to register themselves on the siteCustomers must be able to loginCustomers must be allow to book their ticket for the activities they want to doCustomers must be able to pay their tickets onlineCustomers must be also allow to cancel their tickets Non-functional requirements:The system must be user friendlyThe system must fit on every screenIt must be robust and securedInteraction between users and servers must be within secondsFeasibility StudyFeasibility study is an important step and it is used to analyses the requirements, scope, costs, and benefits of the proposed project.

The below will be carried out for feasibility study.Existing situationThis part will describes the actual situation and the associated issues.Proposed & Recommended solutionsProposed solutions and recommendation to reduce or eliminate the issues.Cost and benefits feasibilityProfit over time will be illustrated by a graphSchedule feasibilityGantt chart will be used to show the progression of the system throughout project lifecycle.Cost and benefits feasibilityAs the system will be developed using the freeware and open source software, the cost for development will be less than compared to the development of website on some expensive licensed software.The website can be hosted on a web server or can be hosted with a hosting company where the cost is less than hosting the same on its own web server.

Below is an example of the costing of hosting a website on https://www.godaddy.com/GoDaddyHosting GoDaddy Deluxe package – Rs 247/monthDomain name GoDaddy – Rs 564 / yearChoice of hardwareFor the development of this project, the choice of the hardware that will be used to host the server is important. Thus, I have choose to use In the table below, are the specifications of the PC that have been chosen to use as host and it meets the requirement needed.Dell OptiPlex 3010 Desktop PCHardware Device SpecificationsMemory 4GBCPU Windows 7 Operating System Core i3 – 3.3 GHzHard Disk Capacity 500GBSchedule feasibilityChoice of Programming languageThe programming language are classified into 2 parts such as front-end and back-end. In the front-end, we usually have HTML, CSS, JQuery and JavaScript whereas in the back-end we have language such as PHP, and MySQL, which are run on the server side.During the development of this project, both front-end and back-end are needed in order to be successful.

Below are the languages that have been used during the development of the project.Front-end:HTML: HTML (HYPER TEXT MARKUP LANGUAGE) is used to build up web pages, which are connected together. Those websites are known as Hypertext also it is commonly acquainted with internet that is format with the aid of various tags.

It tells a web browser how to structure it to display. It was develop to define the structure of documents like heading, paragraph, and lists to facilitate the scientific information between researchers. CSS: Cascading Style Sheet is a style sheet language used for describing the presentation of a document written in a markup language. CSS is supposed to allow the separation of document content from document presentation, including aspects such as the layout, colors, and fonts. This separation can improve content accessibility, provide more flexibility and control within the specification of presentation characteristics, allow multiple HTML pages to share formatting by specifying the right CSS in a separate .

css file, and minimize complexity and repetition in the structural content.JavaScript: JavaScript is a lightweight, interpreted programming language. It is made for creating applications being network-centric. It is complimentary to and integrated with Java. JavaScript is very simple to implement because it is incorporated with HTML. It is an open and a cross-platform. JavaScript is a high-level, dynamic, and interpreted programming language.

Alongside HTML and CSS, it is among the three core technologies of the World Wide Web; the majority of websites employ it and all modern Web browsers without plug-ins support it.Back-end: PHP: The PHP Hypertext Preprocessor (PHP) is a program written language, which allows web developers to build dynamic content that interacts with databases. PHP is in fact useful for developing web based software applications. PHP is just a server side scripting language that is embedded in HTML. It is used to manage dynamic content, databases, session tracking, and also build entire e-commerce sites. It is incorporated with a range of popular databases, including MySQL, Postgre SQL, Oracle, Sybase, Informix, and Microsoft SQL Server. PHP is pleasingly zippy in its execution, particularly if compiled as an Apache module within the UNIX part. The MySQL server, once started, executes even very complex queries with complex outcome sets in record-setting time.

PHP supports a large number of major protocols such as POP3, IMAP, and LDAP. PHP4 added support for Java and distributed object architectures (COM and CORBA), making n-tier development an opportunity for the first time.MySQL: In this project, MySQL is used as the backend database. MySQL is an open source database management system. It is fast, reliable and easy to utilize. It based on Structured Query Language (SQL).

MySQL runs on virtually all platforms, including Linux, UNIX, and Windows. Even though it can be used in several applications, MySQL is most often associated with web-based applications and online publishing.Use Case DiagramsA use case diagram at its simplest is a representation of a user’s interaction with the system that shows the relationship between the user and the different use cases in which the user is involved.

The different use case diagrams for MauSafari Park are displayed below:Guest User45720048069500Registered User2286003511550022860068770500Admin1System Architecture Introduction A system architecture or systems architecture is the conceptual model that defines the structure, behavior, and more views of a system. An architecture description is a formal description and representation of a system, organized in a way that supports reasoning about the structures and behaviors of the system.Initial Class Diagram Class Diagram for Clients:The clients class diagram has been designed to store client details such as First Name (first_name), Surname (last_name), Address (address), Email address (email), Password (password) and Group (client_group). The registered data of the user will be stored in this class and it will also be used for authentication of user.Clientsclient_idemailaddressdate_of_birthgenderfirst_namelast_namepasswordclient_groupregister loginClass Diagram for Users:The class diagram below will be used for verification of login using email address and password.UseremailpasswordverifyLoginClass Diagram for Users:The class diagram below will be used for verification of login using email address and password.AdminemailpasswordverifyLoginClass Diagram for booking:The class diagram below will contain the client name (client_id), visit (visit_id), ticket (ticket_id) and booking date (book_date).

Bookingbooking_id clientIDvisit_idticket_idbook_datebookClass diagram for tickets:The class diagram below will contain the ticket name (ticket_name) and ticket (ticket_id).Ticketsticket_id ticket_nameticketClass diagram for visits:The class diagram below will contain the visit (visti_id), visit name (visit_name) and visit description (visit_desc).Visitsvisit_id visit_namevisit_descvisit2.

0 Design2.1 Introduction System Design is the most crucial phase in the development of a system. The logical system design arrived at as a result of system analysis and is converted into physical system design.2.

2 UML DiagramThe Unified Modeling Language (UML) is a general-purpose, developmental, modeling language in the field of software engineering, that is intended to provide a standard way to visualize the design of a system.There are two types of UML diagram, such as:Structure diagrams : A structure diagram is a conceptual modeling tool used to document the different structures that make up a system such as a database or an application. It shows the hierarchy or structure of the different components or modules of the system and shows how they connect and interact with each other.Behavior diagrams : A behaviour diagram displays the dynamic interaction between objects with each other in a system. It represents the functionality of the software system and emphasizes on what should take place in the system that is being modeled.

0221615002.3 Database Design For the development of the database, the WAMP software has been used and the database was named mausafari_park.2.3.1 Entity Relationship DiagramAn entity relationship diagram (ERD), also known as an entity relationship model, is a graphical representation of an information system that depicts the relationships among people, objects, places, concepts or events within that system.2.

3.2 Project Entities Below is a list of the entities that will be involved is the system of MauSafari_Park. These entities will be used to produce the ERD of the system.Admin Entities:LoginBookingFeedbackPhotosActivitiesClient Entities:RegisterLoginBookingFeedback2.3.

3 Project Entity RelationshipClient entities relationshipOne client can register one account only.027876500An account is for one client only.One client can have only 1 login.028575000A login account is for 1 client only.028956000A client can book many activities.

A client can write many feedbacks.05334000Admin entities relationshipAn admin can have one login only.A login is for 1 admin only.06794500An admin can view and delete many feedbacks.

028575000An admin can view, modify and delete many bookings.0000An admin can view and delete many photos.028575000An admin can add and delete many activities.

0289560002.3.4 Entity Relationship Model: Class Diagram2.3.5 Data DictionaryWhat is Data Dictionary? A data dictionary contains a list of all files in a database, the number of records in each file, and the names and types of each field.Field Name Datatypeclient_idINTemailVARCHARtelephone__numberVARCHARaddressVARCHARdate_of_birthDATEfirst_nameVARCHARlast_nameVARCHARgenderVARCHARpasswordVARCHARclient_groupVARCHARTable name: ClientsField Name Datatypebooking_idINTclientIDINTvisit_idINTticket_idINTbook_dateDATETable name BookingsTable name: PhotosField Name Datatypephoto_idINTpath_nameVARCHARTable name: TicketsField Name Datatypeticket_idINTticket_nameVARCHARField Name Datatypevisit_idINTvisit_nameVARCHARvisit_descVARCHARTable name: VisitsTable name: OpeningsField Name Datatypeopening_idINTdayVARCHARtime_fromVARCHARtime_toVARCHARTable name: FeedbacksField Name Datatypefeedback_idINTcommentsVARCHARclient_idINT2.3.

6 Website DesignThe website has been designed using free open source tools such as Netbeans.In this section, the user interface designs have been displayed.1) Below is the design for the home page of the website.20574003131820FooterFooter3429003017520019431001645920ContentContent34290010744201943100274320BannerBanner342900160020800100731520Navigation bar0Navigation bar2514600617220Login/Register0Login/Register3429006172200342900160020002) Below is the design for the registration form of the website.57150028575002057400285750Title0Title57150028575032004003943985RegisterRegister8001003943985BackBack16002003143885Repeat passwordRepeat password16002002800985PasswordPassword16002002458085Last NameLast Name16002002115185First NameFirst Name16002001772285GenderGender16002001429385Date of birthDate of birth16002001086485AddressAddress1600200743585Telphone NumberTelphone Number1600200400685EmailEmail6858003943985029718003943985011430003143885114300028009851143000245808511430002115185114300017722851143000142938511430001086485114300074358511430004006853) Below is the design for the login of the website.1028700476252400300171450TitleTitle10287005715001485900172085EmailEmail148590017208514859001720851485900172085PasswordPassword148590017208501485900172085Remember meRemember me3238500229870003419475239395LoginLogin108585022987001152525286385BackBackBelow is the design for feedbacks of the website.114300060134501152525508000Navigation BarNavigation Bar1143000116205002514600116205TltleTltle11430001162051476375584201600200116205Enter feedbacksEnter feedbacks31242001263653143250126365SubmitSubmit13906501358901419225173990CancelCancelBelow is the design for the booking form of the website.

914400171450Navigation BarNavigation Bar80010057150800100571501143000172085Booking formBooking form10287005778513335003454401009650863601000125162560Book ticketBook ticket147637512065Payment0Payment809625584200202882586995FooterFooterBelow is the design for the gallery page of the website.8001001663700914400167005Navigation barNavigation bar80010016700511620505080001409700441325ContentContent2057400845820FooterFooter8001008591552.4 Sequence DiagramsSequence diagrams are sometimes called event diagrams or event scenarios.

A sequence diagram shows, as parallel vertical lines (lifelines), different processes or objects that live simultaneously, and, as horizontal arrows, the messages exchanged between them, in the order in which they occur.0509270002.4.1 Sequence Diagram for RegistrationDescription:Upon registration for a first time user, he will be asked to fill the registration with all its details. Once the user has put all the details required and click on the submit button, a validation process will take place for the details that have been put. But also if some or one of the details that have been entered is incorrect, the user will be asked to fill the form once again. This process will be repeated until all the required data is correctly entered.

After the validation process, all the data that have been entered will be stored in the database of the system and the user will be redirected to the home page of the website.0479425002.4.2 Sequence Diagram for Login Description:The login process includes only of 2 inputs such as ’email address’ and ‘password’. The user must put the email address that he has used to register on the website in order to be granted access to the website and full access to the system. When the user clicks on the login button, a validation process will be performed within the database. If the email address and the password do not match the ones in the database, the user will be told to do the inputs again. If the email address is well entered and the validation process is correct, the user will gain access to the services of the website.

3.0 Testing3.1 What is testing?The testing Phase of the Software Development Lifecycle (SDLC), is very important phases where bugs and errors are to be discovered if exist. The testing phase of the SDLC is where you focus on investigation and discovery. During this phase, developers find out whether their code and programming are work according to customer requirements.3.

2 Types of testing3.2.1 BlackBox Testing IntroductionBlackBox testing is a software testing method in which the one who is testing it does not know the internal structure/design/implementation of the item being tested. These tests can be functional or non-functional, though usually functional.183832513970003.2.2 WhiteBox Testing IntroductionWhiteBox testing is a software testing method in which the one who is testing it knows the internal structure/design/implementation of the item being tested.

148590013335003.2.3 Unit Testing IntroductionUnit testing is a level of software testing where individual units/ components of a software are tested. The purpose is to validate that each unit of the software performs as designed.

A unit is the smallest testable part of any software. It usually has one or a few inputs and usually a single output.2152650128270003.

2.4 Integration Testing IntroductionIntegration testing is the phase in which individual software modules are combined and tested as a group. It always occurs after unit testing2152650130810003.

2 Unit TestingIn this table below, is the unit testing for registration of a client.Unit Test 1 Test Class: Client Designed By: Lutchmanen HarassenData Source: Client Entry Objective: User Registration Tester: Lutchmanen HarassenTest Case Description Task Expected Result Actual Result1.1 Test for empty fields All fields will be empty and register button will be clicked Registration Failed pop-up will appear and user will be ask to fill the fields again Registration failed.1.2 Test for empty fields All fields will be kept empty except email and register button will be clicked Registration Failed pop-up will appear and user will be ask to fill the fields again Registration failed.1.3 Test for empty fields All fields will be kept empty except email and telephone number and register button will be clicked Registration Failed pop-up will appear and user will be ask to fill the fields again Registration failed.1.

4Test for empty fields All fields will be kept empty except email, telephone number and address and register button will be clicked Registration Failed pop-up will appear and user will be ask to fill the fields again Registration failed.1.5 Test for empty fields All fields will be kept empty except email, telephone number, address and date of birth and register button will be clicked Registration Failed pop-up will appear and user will be ask to fill the fields again Registration failed.1.6 Test for empty fields All fields will be kept empty except email, telephone number, address, date of birth and gender and register button will be clicked Registration Failed pop-up will appear and user will be ask to fill the fields again Registration failed.1.7 Test for empty fields All fields will be kept empty except email, telephone number, address, date of birth, gender and first name and register button will be clicked Registration Failed pop-up will appear and user will be ask to fill the fields again Registration failed.

1.8 Test for empty fields All fields will be kept empty except email, telephone number, address, date of birth, gender, first name and last name and register button will be clicked Registration Failed pop-up will appear and user will be ask to fill the fields again Registration failed.1.

9 Test for empty fields All fields will be kept empty except email, telephone number, address, date of birth, gender, first name, last name and password and register button will be clicked Registration Failed pop-up will appear and user will be ask to fill the fields again Registration failed.1.10 Test for registration successful All fields will be filled up with the required data and register button will be clicked Registration Success pop-up will appear and user will be prompt to home page Registration Successful.In this table below, is the unit testing for login of a client.

Unit Test 2 Test Class: Client Designed By:Lutchmanen HarassenData Source: Client Entry Objective: Login Tester: Lutchmanen HarassenTest Case Description Task Expected Result Actual Result2.1 Test for empty fields All fields will be empty and login button will be clicked Login Failed pop-up will appear and user will be ask to fill the fields again Login failed2.2 Test for empty fields All fields will be empty except email and login button will be clicked Login Failed pop-up will appear and user will be ask to fill the fields again Login failed2.3 Test for incorrect password The fields will be filled up with the correct email address but an incorrect password and the login button will be clicked Login Failed pop-up will appear and user will be ask to fill the fields again Login failed2.4 Test for incorrect email The fields will be filled up with the correct password but an incorrect email address and the login button will be clicked Login Failed pop-up will appear and user will be ask to fill the fields again Login failed2.

5 Test for login with all correct data All fields will be filled up with the required data and login button will be clicked Login Success pop-up will appear and user will be prompt to home page Login Successful.In this table below, is the unit testing for a booking of a client.Unit Test 3 Test Class: Client Designed By:Lutchmanen HarassenData Source: Client Entry Objective: Booking Tester: Lutchmanen HarassenTest Case Description Task Expected Result Actual Result3.1 Test for Booking The user will choose any visits he wants and click on pay button Booking and payment successful Booking and Payment SuccessfulIn this table below, is the unit testing for logout of a client.Unit Test 4 Test Class: Client Designed By:Lutchmanen HarassenData Source: Client Entry Objective: Logout Tester: Lutchmanen HarassenTest Case Description Task Expected Result Actual Result4.

1 Test for Logout Logout button will be tested when the client click on the logout button Logout Successful Logout SuccessfulIn this table below, is the unit testing for login of an admin.Unit Test 5 Test Class: Admin Designed By:Lutchmanen HarassenData Source: Admin Entry Objective: Login Tester: Lutchmanen HarassenTest Case Description Task Expected Result Actual Result5.1 Test for empty fields All fields will be empty and login button will be clicked Login Failed pop-up will appear and admin will be ask to fill the fields again Login failed5.2 Test for empty fields All fields will be empty except email and login button will be clicked Login Failed pop-up will appear and admin will be ask to fill the fields again Login failed5.3 Test for incorrect password The fields will be filled up with the correct email address but an incorrect password and the login button will be clicked Login Failed pop-up will appear and admin will be ask to fill the fields again Login failed5.

4 Test for incorrect email The fields will be filled up with the correct password but an incorrect email address and the login button will be clicked Login Failed pop-up will appear and admin will be ask to fill the fields again Login failed5.5 Test for login with all correct data All fields will be filled up with the required data and login button will be clicked Login Success pop-up will appear and admin will be prompt to home page Login Successful.In this table below, is the unit testing for addition of a visit by an admin.Unit Test 6 Test Class: Admin Designed By:Lutchmanen HarassenData Source: Admin Entry Objective: Adding a visit Tester: Lutchmanen HarassenTest Case Description Task Expected Result Actual Result6.1 Test for the addition of a visit Admin will field the required field and click on add visit Visit added successfully Visit added successfullyIn this this table below, is the unit testing for the addition of a ticket by an admin.Unit Test 7 Test Class: Admin Designed By:Lutchmanen HarassenData Source: Admin Entry Objective: Adding a ticket Tester: Lutchmanen HarassenTest Case Description Task Expected Result Actual Result7.

1 Test for the addition of a ticket Admin will field the required field and click on add ticket Ticket added successfully Ticket added successfullyIn this this table below, is the unit testing for the addition of a ticket by an admin.Unit Test 8 Test Class: Admin Designed By:Lutchmanen HarassenData Source: Admin Entry Objective: Uploading photos Tester: Lutchmanen HarassenTest Case Description Task Expected Result Actual Result8.1 Test for the addition of photo Admin will field the required field and click on add photo Photo added successfully Photo added successfullyIn this table below, is the unit testing for logout of an admin.Unit Test 9 Test Class: Admin Designed By:Lutchmanen HarassenData Source: Admin Entry Objective: Logout Tester: Lutchmanen HarassenTest Case Description Task Expected Result Actual Result9.

1 Test for Logout Logout button will be tested when the client click on the logout button Logout Successful Logout Successful3.3 System TestingIn this table below, is the system testing for client entry.System Testing 1 Test Class: Client Designed By: Lutchmanen HarassenData Source: Client Entry Objective: Testing Functional requirements Tester: Lutchmanen HarassenTest Case Description Task Expected Result Actual Result1.1 Registration of user User fill all required data on registration form User account created Registration Successful1.2 Client Login Client login into system by email and password Client will be logged in the system Login Successful.

1.3 Booking of service Client choose which activity he wants Client ticket booked and paid Booking and Payment successful.In this table below, is the system testing for admin entry.System Testing 2 Test Class: Admin Designed By: Lutchmanen HarassenData Source: Admin Entry Objective: Testing Functional requirements Tester: Lutchmanen HarassenTest Case Description Task Expected Result Actual Result2.1 Admin Login Admin login into system by email and password Admin will be logged in the system Login Successful.2.2 Adding a ticket Admin adds new ticket through admin panel Ticket must be added and saved into database Ticket added successfully2.3 Adding a visit Admin adds new visit through admin panel Visit must added and saved into database Visit added successfully4.

0 Implementation4.1 What is Implementation?Implementation involves the installation of the new system. This phase involves enabling operations and the deployment of the new system in the targeted environment.In order to run the new system, MYSQL, PHP and Apache Server will have to be installed. It is a tiresome and very difficult task for some average developers and beginners. Luckily, WAMP is a combination of all three.

The name WAMP itself stands for Windows, Apache, MySQL and PHP. It is mostly used in web development. In the table, the tools that have been used for the development of the project is displayed:NamePurposeHTML5 To define the structure of contents on the web-based systemCSS To define how HTML elements will be displayed on the web-based system.JavaScript To make the web-based system more interactivePhpTo develop and handle the application layer of the on the web-based systemAjax To make web pages more responsive and avoid the need to reload them.JQueryTo ease the use of JavaScript languageMySQL To be used as database for the systemNetbeansTo be used as IDE for HTML, PHP, CSS, JavaScript, Ajax and JQuery.HeidiSqlTo be used as Database Management System for MySQL databaseApache To be used as Web ServerWAMP To install Apache Web server, PHP and MySQL server on Microsoft Windows Operating SystemBootstrap To be used to build the user interface of the web-based systemStarUMLTo develop UML diagramsGIMP To create graphics, logos and icons and to edit images which are going to be used in the web-based system.Microsoft Windows 7 Operating System Operating System on which the booking system will be developed and tested4.2 Installation of WAMP Server The WAMP server has been downloaded from http://www.

wampserver.com/en/Step 1Click on WAMP SERVER 64BITS to download the WAMP 3.0.6Step 2Click on next button to proceed with the installationStep 3Leave the default folder to c:wamp64 and follow the instruction by clicking on next until the setup finish the installation.4.3 MySQL DATABASEWAMP has been installed successfully on the system. Now we have to create the database and then create the appropriate tables within the database.First we will have to create the MySQL database via the WAMP server.

There is a software called HeidiSQL which can be used to create and access the data much easier.HeidiSQL is freely available on the internet on below URLhttps://www.heidisql.

com/4.3.1 Installation of HeidiSQLWe will install HeidiSQL on the system, which is a freeware, and it is freely available for download.Step 1Run the installer and proceed with the installationStep 2 Click on next and click on installStep 3Click on Finish 4.

3.2 Create the DatabaseHeidiSQL has been installed successfully, now we are going to create the database.Step 1: Double-click on the HeidiSQL icon to launch the softwareStep2: A new session should be created before creating the database. Click on new then select “Session in root folder”.4.4 Installation of IDEWe will need to install an integrated development environment (IDE).

IDE is a software use to write the code. We will choose to install NetBeans because it is a well-known and mostly use IDE amongst website developers. Coding Language such as JAVA, HTML5, PHP, C, C++ and Javascript can be written and executed in NetBeans.NetBeans is an open source software and freely available online to download.Below are the different type of NetBeans bundle that can be downloadedBefore installing NetBeans, Java Developer Kit (JDK) is required. JDK is a program environment use to write Java code and applications. 4.

4.1 Installation of Java Developer Kit (JDK)The Java Developer Kit can be downloaded on Oracle Website at the below URLhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htmlStep 1Go to the above URL and download JAVA SE Development Kit 8u162 which is the latest version available online.Step 2 Select the Accept License Agreement and download the version for Windows x64 as we are using a PC having Windows 64 bit.Step 3Lunch the executable file and follow the instruction.

Step 4Click on next button to start the installation.Step 5Click on Close button to close the setup4.4.2 Installation of NetBeansNetBeans is a freeware that can be downloaded on the below URLhttps://netbeans.org/downloads/Below are the steps to install NetBeansStep 1Click on the executable file once it has finished downloaded Step 2Click on Next button and follow the instructionStep 3Once the installation finished, now we can launch the software from the desktop iconWe have installed WAMP, HeidiSQL and Netbeans successfully and now we can start the coding.

5.0 Other Project Matters5.1 System SecuritySecurity is a very important matter nowadays. Thus, maintaining and ensuring security is really vital.

The protection of the data, software and hardware from threats within the system is primordial. Suitable measures should be taken and put in place in order to detect, supervise and prevent security holes throughout the system.5.2 Security threatsComputer security threats are relentlessly inventive. Masters of disguise and manipulation, these threats constantly evolve to find new ways to annoy, steal and harm. Arm yourself with information and resources to safeguard against complex and growing computer security threats and stay safe online.The cause of these threats can be intentional like hacking or it can occur by an accidental cause like computer malfunctioning or natural disaster.In the table below, the internal threats have been identified with security measures:Internal threats examples Security preventivesNatural Disasters Use of Cloud services for storage of dataUse of redundant hardwareUse of disaster resistant devicesStaff theft or data leakage There should be control for accessing every files and foldersAll activities that are being performed should be observedIllegal activitiesEncryption or authentication should be used to secure the Wi-FiThere should be restrictions on downloadsNetwork failure Use of UPS is necessaryBackups should be done regularlyUnauthorized access to information Use of data encryption is importantAccess to files and folders should be controlledClose observance on activities being performedStrong password should be usedIn the table below, the external threats have been identified with its security measures:External threats examples Security preventivesSQL Injection Data encryption must be useEavesdropping Messages must be encrypted to prevent itMalware Use of anti-malware is neededPassword cracking Implement password timeout and lock-outUse password complexityAuthenticationPhishing A web filter should be implementedUsers should be well trainedUpdated firewall and antivirus software should be usedHacking and virus attack Use of powerful and updated antivirus softwareUse updated firewall softwareUse of pirated software should be avoid In the table below, threats concerning the system have been identified with its security measures:System Security preventivesHardware failure Use of cloud services is available and can be useInspection and maintenance of hardware should be done on a regular basisUse of redundant services is necessaryDisasters Use of cloud services is available and can be useUse of redundant services is necessaryRegular backups must be doneNetwork failure Use of UPSRegular backups must be doneRegular backups for server also must be done5.

2 Evaluation of the systemThis section is the comparison of the objectives of the project listed at the beginning of the system to those that have been accomplished. In the table, are the objectives which have been and not.No. Project Objectives StatusTo allow new users to register To allow clients login To allow clients to book a visit To allow the clients with the facility to book a visit anytime as the website will be available 24/7. To allow clients to connect to the website via their PCs, laptops or any mobile devices. To allow clients to rate and comment on the website about the services that they have made use of. To allow the clients with payment facilities such as online payment. To allow clients to give their feedback on a particular cleaner.

In the table above, we can clearly see that out of 8 objectives, six of them have been successfully achieved but two were not met. This is mainly due to lack of time and knowledge. Also, like stated in the beginning, the methodology used is the Waterfall model, thus changes is not acceptable. Therefore, these objectives could not be met.6.

0 MaintenanceMaintenance is the last step in the methodology used to develop the project. This step occurs after the implementation and testing of the system, and involves making modifications to the system or an individual component to alter attributes or improve performance. Usually, these modifications occur either due to change requests by the director, or bugs during use of the system. Client is provided with regular maintenance and support for the developed software.There are four types of maintenance:1. Corrective, this one is mainly concerned with the removal of errors and bugs from the software.2.

Adaptive, this one is concerned with the enhancement of the system by adding new features, competencies and functions as a result of new technologies.3. Perfective, this one is concerned with the improvement of the features of the system usually done as per request by the users of the system.

4. Preventative, this one is concerned with the prevention of problems and correcting them before they happen.This phase can be significantly affected by each previous step in the model, for example, mistakes made during analysis and design can seriously hinder the success of the new system. Maintenance is then seen as a reactive step in which any errors are addressed so the system can operate effectively.

x

Hi!
I'm Mary!

Would you like to get a custom essay? How about receiving a customized one?

Check it out