[go: up one dir, main page]

0% found this document useful (0 votes)
19 views11 pages

WSC2022SE TP09 S1 Actual en

Download as pdf or txt
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 11

Test Project

IT Software Solution for Business


Session 1

Submitted by: Independent Test Project Design Team

WSC2022SE_TP09_S1_actual_en
Introduction
Seoul Stay is the first and only platform that allows international travelers from around the world to rent the best
homes, estates, or condominiums in Seoul.
The project designers have analyzed the results of a survey of the population in Seoul and in order to provide
some of its services to all sectors of the home owners, they have created a call center and need an interface for
the people operating the phones.
In this session the project designers are asking for a desktop application and will provide you with the schematics
and the initial required data.

Contents
This Test Project proposal consists of the following documentation/files:
1. WSC2022_TP09_S1_EN.pdf (Session 1 instructions)
2. Terms.txt (Terms and Conditions)
3. Session1-MySQL.sql (SQL Script to create tables with data for MySQL)
4. Session1-MsSQL.sql (SQL Script to create tables with data for Microsoft SQL)

Description of Project and Tasks


While developing the test project, please make sure the deliverables conform to the basic guidelines drawn out
by the project designers:
• There should be consistency in using the provided style guide throughout development.
• All required software modules must have applicable and useful validation and error messages as expected by
the industry.
• Offer a scrollbar if the number of records on a list or a table that do not fit in the form area comfortably.
Hide scrollbars if all content can all be displayed in the designated area.
• The de-facto standard, ISO compliant date format is YYYY-MM-DD which will be used in this task where
applicable.
• Where applicable, use comments in code to have the code more programmer-readable.
• The use of valid and proper naming conventions is expected in all material submitted.
• Any form or report once created should be displayed in the centre of the screen.
• When a form or a dialogue is in focus, operations on other forms need to be suspended.
• The caption of Delete and Cancel buttons need to be in Seoul red to help with accidental mishaps and be in
line with the brand style.
• When using colours to differentiate between rows or records, there needs to be visible clarification on the
screen as to what they stand for.
• The wireframe diagrams provided as part of this document are only suggestions and the solution produced
does not have to in any way, mirror what has been presented
• Time management is critical to the success of any project and so it is expected of all deliverables to be
complete and operational upon delivery.

Date: 30.08.22 Version: 1.0


2 of 11
WSC2022SE_TP09_S1_actual_en © WorldSkills International
Instructions to the Competitor
1.1 CREATING THE DATABASE
Create a database by the name of “Session1” in your desired RDBMS Platform (MySQL or Microsoft SQL Server).
This will be the main and only database you will use in this session.

1.2 IMPORTING DATABASE STRUCTURE


Depending on your preferred RDBMS platform, a SQL scripts is made available. The said scripts consist of the
database structure and data required to complete the required tasks. The data needs to be imported to the
database created for this session named “Session1”.
As instructed by the designers, the database structure provided for the purpose of this section cannot be altered.
This applies to removal of tables, adding or deleting any fields on the tables or of change in their data types.

Amenities
ItemAmenities
UserTypes
PK ID
PK ID Areas
PK ID
GUID PK ID
GUID Name
GUID
FK2 ItemID IconName GUID
Name
FK1 AmenityID Name

Items

PK ID Attractions

PK ID
Users GUID
FK3 UserID
PK ID GUID
FK2 ItemTypeID
FK1 AreaID
FK1 AreaID
GUID Name
Title
FK1 UserTypeID Address
Capacity
Username NumberOfBeds
Password NumberOfBedrooms
FullName NumberOfBathrooms
Gender ExactAddress
BirthDate ApproximateAddress ItemAttractions
FamilyCount Description
PK ID
HostRules
MinimumNights
ItemTypes GUID
MaximumNights
FK2 ItemID
PK ID FK1 AttractionID
Distance
GUID DurationOnFoot
Name DurationByCar

To help further perceive the thinking behind the structure of the database, the database designers provide an
Entity-Relationship Diagram (ERD). The included diagram explains the conceptual and representational model of
data used in the database.

Date: 30.08.22 Version: 1.0


3 of 11
WSC2022SE_TP09_S1_actual_en © WorldSkills International
Since this is the first time you are working with the dataset, the designers have chosen to provide a short
description of some of the entities used in the database:
TYPE TITLE DESCRIPTION

Items Where information about the property or listing is stored.


Table

Includes key w ords about the location and helps w ith the SEO and
ApproximateAddress
search of the listing w here one can look for a certain place close by
Field

ItemTypes Where the ty pe of property is stored.


Table

Where information on the different suburbs, districts, region,


Areas
neighbourhoods or areas in the city are stored.
Table

Users Where information on clients using the sy stem is stored.


Table

The number of family and friends associated w ith the account (for
FamilyCount
reserv ation purpose) is stored.
Field

UserTypes Where the ty pes of clients using the sy stem are stored.
Table

Where information on amenities av ailable to be assigned to the


Amenities
properties are stored.
Table

ItemAmenities Where amenities prov ided by the listing or property are stored.
Table

Attractions Where data on landmarks and attractions in the city are stored.
Table

Where details of the relation betw een each property or listing to


ItemAttractions
the landmark or attraction is stored.
Table

Date: 30.08.22 Version: 1.0


4 of 11
WSC2022SE_TP09_S1_actual_en © WorldSkills International
1.3 Create login form
This is the initial form when opening the software. Call center employees need to gain access to the system
using a form as pictured above. There are two ways one can access as a property owner:
• Employee (optional): If the username of the employee is filled in, then the password field is checked against
the password of the employee, yet the client can gain access to the panel and listings of the user that is
entered in the user field.
• User: If the field of employee is left empty, then the password field is checked against the user’s password
and the user panel for the entered user will be shown to the client.
The employees on the system cannot act as a user either a traveler or an owner/manager.
Here are some of the other functionalities for the form:
• Place an input on the form with the caption of “Show Password” that when selected, displays the obscured
contents of the password field.
• Place an input on the form called “Keep me signed in” or similar that when selected makes it so that after
the client logs in successfully, on consecutive visits they will be directed to the management form as
documented on section 1.5.
• The client may choose an option on the form marked “Create One” or similar to sign up to the system and
create an account as documented on form 1.4.
• After a successful login the user will be directed to the management form as documented on section 1.5.

Date: 30.08.22 Version: 1.0


5 of 11
WSC2022SE_TP09_S1_actual_en © WorldSkills International
1.4 Create Account form
This form is meant for new users of the system to sign up and register their credentials. Here are some of the
functionalities required in the form:
• All fields in the form need to be filled out or checked before the client can submit it. The client may not
register their account unless they agree to the terms and conditions using the designated checkbox.
• Place an option on the form called “View Terms and Conditions”, where the client can view the file
“Terms.txt”. They client can only agree to the terms after they view it at least once.
• The password and retype password fields need to be checked to have an identical value before they can be
submitted. The length of the password needs to be at least five characters.
• When the client chooses the option named “Register and login”, the system will check the database and if
there are no duplicates, they will be registered and logged onto the system and directed to management
form documented in section 1.5.

Date: 30.08.22 Version: 1.0


6 of 11
WSC2022SE_TP09_S1_actual_en © WorldSkills International
1.5 Management form
This is the main form the client will work with. In this section you will find a short description of the main form
functionalities followed by description of the services each tab will provide:
• The “Log out” button will log the user out of the system and direct them back to the login form as
documented on section 1.3.
• The “Exit” button closes the application.
• The text on the status bar is controlled by each of the tabs.
The client may take the role of an owner/manager, or a traveler. They may choose to access the tools available
using the two tabs on the top of the form. Here’s a short description of what each of the two segments provide:
• Traveler: This is where the client may look for and reserve (rent) a property for their stay
• Owner / manager: This is where the landlords or managers can offer their properties for rental.
Below you will find detailed description of the functionalities each of these segments provide:

Date: 30.08.22 Version: 1.0


7 of 11
WSC2022SE_TP09_S1_actual_en © WorldSkills International
• Traveler tab: This is the default tab shown when opening the form. Here are some of the functionalities of
this segment:
• A search box will help the client look for their preferred listing by using the title of the property or the
area (suburbs or zones) in the city where they reside in or their proximity to an attraction (within one
kilometer of an attraction).
• The results of the search box will be displayed in a blank grid list or similar for the fields “Title,
“Capacity”, “Area”, and “Type” where the client can sort their results based on each of the fields listed
one at a time.
• The number of the items displayed should be visible at the status bar of the main form.
• The searching mechanism is online that is to say that the list will constantly refresh as the characters are
added to or removed from the search box.

• Owner / Manager tab: This is the tab where the client is able to manage their listings. The following is a list
of some of the functionalities required for this segment:
• The “Add Listing” button will direct the client to the proper form as documented on section 1.6
• A grid list or similar is included in the segment that will display the fields of “Title”, “Capacity”, “Area”,
and “Type” of all the registered properties or listings of the user. The client should be able to sort the list
based on one of the fields on the list at a time.
• Using the “Edit Details” option available for each listing, the client will be directed to form 1.6 where they
can view and edit the specifics of each listing.
• The number of the items displayed should be visible on the status bar of the main form.

Date: 30.08.22 Version: 1.0


8 of 11
WSC2022SE_TP09_S1_actual_en © WorldSkills International
1.6 Add/Edit Listing form
Using this form, the client is able to perform two modes of operations in the system. In this section you will find
a short description of the characteristics of the form followed by description of the utility each tab provides:
• Title of the form will show “Add Listing” if it has been opened to add a new listing and “Edit Listing”
followed by the title of the listing, if it has been called to edit details of a listing.
• The navigation bar is at the bottom and operates differently in the two modes:
• When editing a listing, only one button is available at the bottom labeled “Close” that saves all changes
on the form to the database and closes the window. The client may switch between different tabs as
needed.
• When adding a new listing, place a button at the bottom of the form labeled “Next” while the client is on
the first tab and the second tabs from left. When all the fields of the active tab have been completely
filled out, the button directs them to the next tab to their right. Place a second button that reads
“Cancel” on the first and second tabs and closes the form. The third tab from the left has a button
labeled “Finish” on the bottom of the form that stores all the filled out information on the form as a new
entry in the database. The client may not switch back to any of the previous tabs to the left of the active
tab.

Date: 30.08.22 Version: 1.0


9 of 11
WSC2022SE_TP09_S1_actual_en © WorldSkills International
• Listing Details: This tab is the first on the left and the initial tab available to the client. It covers the main
information on a listing as described:
• The field “Type” is a drop-down populated from the table “ServiceTypes”.
• The fields “Capacity”, “Number of Beds”, “Number of Bedrooms”, and “Number of Bathrooms” need to
have a value of more than zero.
• The reservation time “Minimum” needs to be a non-zero number, smaller than or equal to the value of
“Maximum”.

• Amenities: This tab will list all the available aminities from the database for the client to choose and
associate with the listing.

Date: 30.08.22 Version: 1.0


10 of 11
WSC2022SE_TP09_S1_actual_en © WorldSkills International
• Distance to Attraction: In this segment the client will have the option to specify the distance of the
property or listing from each of the attractions or the time it takes for renters to get to them. The following is
some of the characteristics of this tab:
• Every attraction from the database as well as the area they reside in is listed for the client.
• The client needs to enter the distance from at least two attractions before this segment can be considered
as complete.
• Entering the time it takes both on foot and by car is optional.

1.7 Write unit test


Unit Testing is a crucial step in software design and implementation. It not only improves the efficiency and
effectiveness of the code, but it also makes the code more robust and reduces the regressions in future
development and maintenance .
Unit Testing is a methodology of testing source code for its fitment of use in production. We start out writing
unit tests by creating various test cases to verify the behaviors of an individual unit of source code.
In this segment, the project designers are asking for a unit test for the user registration method in the produced
application. If a record for a user is added as a result of the test, it should be removed immediately.
Develop the unit test using the built-in testing feature in your IDE.

Date: 30.08.22 Version: 1.0


11 of 11
WSC2022SE_TP09_S1_actual_en © WorldSkills International

You might also like