Transcript
Page 1: 1 My Sweet Home Documentation

HỌC VIỆN QUỐC TẾ FPTFPT-ACADEMY INTERNATIONAL

_______________________________________________________

MySweetHomeDevelopment’s Guide

Faculty: Kieu Trong KhanhBatch No: 2005-0706 Y2Group No: 2Student:No Full Name Roll No1 Nguyen Quoc Quynh Khoi VN.033/200510/01102 Nguyen Trong Hieu VN.033/200609/04173 Huynh Tan Phuc VN.033/200511/01284 Phan Vinh Loc VN.033/200512/01515 Bui The Anh VN.033/200702/0024

Page 2: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

REVIEW 1

Project Team: 02 Prepared by: All members Page 2 of 112

Page 3: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

1 IntroductionSweetHome is a company that deals in real estate business. They started off in a city by doing lot of surveys to get the information about the local market, available properties, rates etc. and then they started publishing a magazine named “MySweetHome” in order to reach to the people.In early days of their business they used to publish the magazine on quarterly basis but growing business made them to publish the magazine monthly and also opened an office in the city. Now they have offices in different other cities of the state. Because of their services they have attracted a vast number of customers in very short duration of time. The staff answers the simple queries of the customers on phone but for details like charges, detailed procedures; they have to come down to the office. The company has tie-up with certain banks in the country with the help of these it assists customers in arranging for the loan. Each bank has its own terms and conditions about providing the loan. The company aims to break new ground by harnessing the power of technology and revolutionizing processes to buy a home for the customers a truly enjoyable and hassle-free experience. So taking into consideration the expanding business, the company planned to host the primary information via MySweetHome, where dreams come true…..

2 Positioning2.1 Problem StatementThe problem of The company deals in buying and selling the

properties also assists in providing accommodation on rental basis and as paying guests. They have large database of Residential, Commercial, Land / Plots in the country. If any customer walks into the office, he is required to fill an enquiry form. Then based on his preferences properties or house or plots are shown to him and then the further processing of buying or selling takes place.But with the growing of the business, this approach becomes not efficient.

the impact of which is The company cannot process a large of enquiry form with the efficient for both the buyer and seller.

a successful solution would be A web application allow seller to submit their on sale/for rent property, and buyer to search for their requirements.

2.2 Position StatementMySweetHome do:

- Seller to submit their own for rent/for sale property.

Project Team: 02 Prepared by: All members Page 3 of 112

Page 4: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

- Seller to update their contact information for buyer to contact.- Buyer to search property which is appropriate for their requirements- Buyer to list all property with filter.- Buyer to contact with seller via the contact form, seller will receives the message via their

contact e-mail.- Administrator to get report on various aspect of the business.- Administrator to suspend the posting when needed.- And some other enhancement for support user experience

MySweetHome don’t:- Support any online payment transaction- Guarantee on disaster recovery, a third party consultant is recommended.- Guarantee on high availability, a third party consultant is recommended.- Have any support on using the website.- Have any communication between company and users (e.g.: forum) or between users (IM)

except contact e-mail.

2.3 User SummaryName Description ResponsibilitiesBuyer These users are the ones who would

like to buy a new house or rent a room/house.

Perform a search with their requirements.

Seller These users are the ones who has the house/room, and would like to sell or allow other people rent

Submit the information of for sale/for rent property. Notify MySweetHome about the status of the property.

Administrator The SweetHome’s employee who has the responsibilities to ensure the system running smoothly.

Monitor and maintenance the MySweetHome application, to ensure the system is running smoothly. Besides that, also request application to generate the weekly/monthly report about the activities of MySweetHome application.

2.4 User EnvironmentAny user, with a modern web browser, should be able to use MySweetHome. Follow is a list of “must support” web browsers (but not limited to):

Microsoft Internet Explorer 6.0 or above. Please pay attention to version 7’s known issues compared to version 6.

Mozilla Firefox 2.x or above Apple Safari on Mac Apple Safari on Microsoft Windows Opera 9.x or above

2.5 Design constraintsThe application must have:

- An attractive GUI- Simple navigation - Well-explained error message with guide to continues

Project Team: 02 Prepared by: All members Page 4 of 112

Page 5: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

3 System feature3.1 Guest can register as Seller or Buyer

3.1.1 DescriptionThe system MUST provide a page to allow user to create their account with at least:

- E-mail- Password

User also should specify whether they wanted to create a buyer or seller account, a user cannot be both buyer and seller.E-mail is the identity of each user; e-mail cannot be same for the difference account.

3.1.2 Functional requirementsREQ-01: User must provide E-mail and Password to create accountREQ-02: User must specify the type of account: buyer or sellerREQ-03: E-mail is unique and is the identity of each account.

3.2 Guest can retrieve password when forgot

3.2.1 DescriptionThe system MUST provide method to allow user to retrieve password when they forgot (e.g.: forgotpassword page). When users can’t remember their password, they want to retrieve password without register a new account. They need to give email address has already registered before, then system will send a message content new password to their email address. By the way, users can use their email address and new password to login system. Users can also change password by edit profile (e.g.: editprofile page). System requires an e-mail address has registered in this system to send message to user.

3.2.2 Functional requirementsREQ-04: User must provide e-mail address to retrieve new passwordREQ-05: System needs an e-mail address has already registered in this system to send

message to users.

3.3 Guest can login as Seller or Buyer

3.3.1 DescriptionThe system MUST provide some methods to allow user to login (e.g.: login page), user only can access other functionality of the website once they are logged in. When the user is logged in, the system automatically redirect user to their dashboard, according to the type of that account (buyer/seller).System requires an e-mail and password for login.

3.3.2 Functional requirementsREQ-06: User must provide e-mail and password to loginREQ-07: System needs to redirect user to their dashboard based on their account type.REQ-08: User only can access other web site functionality after logged in

Project Team: 02 Prepared by: All members Page 5 of 112

Page 6: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

3.4 Buyer dashboard

3.4.1 DescriptionThe main activities of Buyer are search for the on sale house or on rental house/room, manage their history. Buyer dashboard is the location where buyers can easily to access those functionalities.On the dashboard, buyer should easily to find their last 5 search and can redo the search query. Buyer also can perform a new search and receive the search results without load another page.When a property is submitted, if that property information matches with the stored search query, it will send an alert to buyer to ask them review.

3.4.2 Functional requirementsREQ-09: Buyer dashboard should show last 5 search queriesREQ-10: Buyer dashboard should allow user to redo one of the last 5 search queriesREQ-11: Buyer dashboard should also contains the search form to allow user to perform a

new searchREQ-12: System matches the new coming property with the stored query, then send an alert

to the appopriated buyer.

3.5 Seller dashboard

3.5.1 DescriptionThe main activities of Seller are submitting new on sale property or on rental property, and manage their submitted property. Seller dashboard is the location where sellers can easy to access those functionalities.On the dashboard, seller can submit new property; see the list of submitted property and the status of those properties.

3.5.2 Functional requirementsREQ-13: Seller dashboard should allow seller to submit new property with ease.REQ-14: Seller dashboard should display a list of submitted property of the current seller

3.6 Buyer can search the database for buy a house

3.6.1 DescriptionBuyer can perform a search on the database to buy a house; the search can be performing based on the following criteria:

- Range price (minimum to maximum)- Square footage (m2)- City- Street- Number of bedroom- Number of bathroom- Type of property: Residential Land, Commercial, Condominium, Townhouse, Multi-unit

dwellingThe search result should represent in the grid format, sortable; Buyer clicks on a property to open the detail of the clicked property (see Seller can submit a house on sale)Buyer also can contact Seller via e-mail by using contact link on the property detail page.

3.6.2 Functional requirementsREQ-15: Buyer can perform a search for buy a house

Project Team: 02 Prepared by: All members Page 6 of 112

Page 7: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

REQ-16: Buyer can perform the on sale house search with the above criteriaREQ-17: On sale house search result is display in the sortable grid format

3.7 Buyer can search the database for a rental house

3.7.1 DescriptionBuyer can perform a search on the database to rent a house; the search can be performing based on the following criteria:

- Deposit (amount to paid as deposit, paid on move in, refund when move out)- Rent (monthly paid)- Square footage (m2)- City- Street- Number of bedroom- Number of bathroom- Type of property: Residential Land, Commercial, Condominium, Townhouse, Multi-unit

dwellingThe search result should represent in the grid format, sortable; Buyer clicks on a property to open the detail of the clicked property (see Seller can submit a house on rental) Buyer also can contact Seller via e-mail by using contact link on the property detail page.

3.7.2 Functional requirementsREQ-18: Buyer can perform a search for rent a houseREQ-19: Buyer can perform the rental house search with the above criteriaREQ-20: Rental house search result is display in the sortable grid format

3.8 Buyer can search the database for an accommodation as a paying guest

3.8.1 DescriptionBuyer can perform a search on the database to rent an accommodation (room) as a paying guest; the search can be performing based on the following criteria:

- Deposit (amount to paid as deposit, paid on move in, refund when move out)- Rent (monthly paid)- Square footage (m2)- City- Street- Number of bathroom

The search result should represent in the grid format, sortable; Buyer clicks on a property to open the detail of the clicked property (see Seller can submit an accommodation as paying guest)Buyer also can contact Seller via e-mail by using contact link on the property detail page.

3.8.2 Functional requirementsREQ-21: Buyer can perform a search for rental an accommodation(room) as a paying guestREQ-22: Buyer can perform the rental room search with the above criteriaREQ-23: Rental room search result is display in the sortable grid format

3.9 House/Accommodation has linked with directory

3.9.1 DescriptionAs describe in the section 3.14, MySweetHome provide a service called directory, to provide more and more useful information to user, MySweetHome site decided to link between the

Project Team: 02 Prepared by: All members Page 7 of 112

Page 8: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

houses on sale information with the directory information. The link between the house on sale and the directory entry will be establish by MySweetHome staff, they will meets the property owner to ask information about the house, then link between them.After that, those information will be available for buyer, when view the detail of a house, they can follow the link to know more about the service provider who build/decorate the property.

3.9.2 Functional requirementsREQ-24: Administrator can establish the link between house on sale and directory entryREQ-25: Buyer can see the link between house on sale and directory entry, follow the link

to find out more detail of the house.

3.10 Seller can submit a house on sale

3.10.1 DescriptionSeller can submit a house on sale; each submitted house must contain the following information:

- Image of the house- Price, fixed/negotiable- City- Street- Number of bathroom- Number of bedroom- Square footage (m2)- Type of property: Residential Land, Commercial, Condominium, Townhouse, Multi-unit

dwelling.- Extra facilities available (Yes/No)- Convenient Modes of transport (bus, train, …)- With or without furniture/interiors- Mode of payment (Credit card, Money transfer, cash)- Contact detail (automatically using the seller information, but editable)- Google map where the house located

3.10.2 Functional requirementsREQ-26: Seller can submit a house for saleREQ-27: The house for sale needs the above information

3.11 Seller can submit an house on rental

3.11.1 DescriptionSeller can submit a house on rental; each submitted rental house must contain the following information:

- Image of the house- Deposit, fixed/negotiable- Rent, fixed/negotiable- City- District- Number of bathroom- Number of bedroom- Mode of payment (Credit card, Money transfer, cash)- Contact detail (automatically using the seller information, but editable)- Google map where the house is located

Project Team: 02 Prepared by: All members Page 8 of 112

Page 9: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

3.11.2 Functional requirementsREQ-28: Seller can submit a house on rentalREQ-29: The house on rental needs the above information

3.12 Seller can submit an accommodation as a paying guest

3.12.1 DescriptionSeller can submit an accommodation on rental as a paying guest; each submitted rental accommodation must contain the following information:

- Deposit, fixed/negotiable- Rent, fixed/negotiable- City- District- Mode of payment (Credit card, Money transfer, cash)- Contact detail (automatically using the seller information, but editable)- Google map where buyer can find the accommodation

3.12.2 Functional requirementsREQ-30: Seller can submit a accommodation on rental as a paying guestREQ-31: The accommodation on rental needs the above information

3.13 Buyer can contact Seller via property detail page

3.13.1 DescriptionTo increase the user experience, system should provide a way to allow Buyer to contact Seller when they found a good property. It may an system generate e-mail to Seller to notify about new potential Buyer with the information of the Buyer

3.13.2 Functional requirementsREQ-32: Buyer can contact Seller directly on property detail page

3.14 Buyer can vote Seller for ranking purpose

3.14.1 DescriptionTo increase the user experience, system should provide a machenism to allow Buyer to vote for Seller. Each Buyer only can vote once for each Seller. Seller can review their voting score in their own dashboard, Buyer can review the Seller’s voting score when viewing the property of that Seller.

3.14.2 Functional requirementsREQ-33: Buyer can vote Seller for rankingREQ-34: Each Buyer can vote once for a SellerREQ-35: Seller score appear in the Seller’s dashboard and property detail page

3.15 Directory listing real estate related location

3.15.1 DescriptionMySweetHome provides a directory of real estate related point of interesting. User can search in this directory for:

- Property service providers- Brokers

Project Team: 02 Prepared by: All members Page 9 of 112

Page 10: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

- Architects- Builders- etc.

Property service providers also can list their service in this directoryThe directory search can perform with the following criteria:

- Type (Property service providers, Brokers, ...)- Name

3.15.2 Functional requirementsREQ-36: System should provide a directory of real estate related points of interestingREQ-37: User can search directory using the above criteriaREQ-38: Viewing a property service provider also list the services of that provider

3.16 FAQ to help the user to access the site functions

3.16.1 DescriptionIn order to help user to become familiar with MySweetHome, website should have an FAQ page, in that we show answers for some repeat questions.

3.16.2 Functional requirementsREQ-39: System should provide a FAQ page

3.17 Enquiry form for guest (not registered user)

3.17.1 DescriptionThe property search feature is exclusive for registered buyer only, but guest also can request the information from MySweetHome by using an enquiry form, the input from guest will send directly to customer support department of MySweetHome via e-mail.

3.17.2 Functional requirementsREQ-40: System should provide an enquiry form for guestREQ-41: Enquiry form will be send to a supporter’s email address.

3.18 Special programme: Loan for buying house from Bank

3.18.1 DescriptionThis special feature is applied for House on sale only.To help Buyer buy a house, SweetHome has a contract with some Bank, who will allow Buyer to loan a percentage of the house’s price, Buyer only needs to pay the rest and slowly pay the rest each month. The percentage is varied depends on the price of the house, for example: “Bank A will provide 70% loan for every house cost more than US$ 500.000 and slowly pay the rest in 10 years with interest 0.1% each year”, so if buyer decide to buy a house which cost US$ 700.000, he only must pay:

Initial pay: 30% * US$ 700.000 = US$ 210.000 Each year only around US$ 49.000

Pay (US$) Balance (US$)Initial 210.000 (30% of 700.000) 490.000Year 1 49.000 + 490 = 49.490 441.000 (490.000 – 49.000)Year 2 49.000 + 441 = 49.441 392.000 (441.000 – 49.000)Year 3 49.000 + 392 = 49.392 343.000 (392.000 – 49.000)

Project Team: 02 Prepared by: All members Page 10 of 112

Page 11: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Year 4 49.000 + 343 = 49.343 294.000 (343.000 – 49.000)Year 5 49.000 + 294 = 49.294 245.000 (294.000 – 49.000)Year 6 49.000 + 245 = 49.245 196.000 (245.000 – 49.000)Year 7 49.000 + 196 = 49.196 147.000 (196.000 – 49.000)Year 8 49.000 + 147 = 49.147 98.000 (147.000 – 49.000)Year 9 49.000 + 98 = 49.098 49.000 (98.000 – 49.000)Year 10 49.000 + 49 = 49.049 0

3.18.2 Functional requirementsREQ-42: System matches the price of property with the requirement price of each Bank,

notify Buyer if a property is can using the programmeREQ-43: User can choose a programme to see the detail calculation.REQ-44: Each programme needs 6 informations: bank, minimum price to apply, maximum

price to apply, percent of loan, interest each year, how many year to pay.

3.19 Administrator can suspends a submitted property

3.19.1 DescriptionDue to some submitted property contains wrong/outdated information, administrator needs a function which allow them to suspend some specific property.Suspended property cannot be appears on the search result.

3.19.2 Functional requirementsREQ-45: Administrator can suspend submitted property due to wrong/outdated information.

3.20 Administrator can submit property

3.20.1 DescriptionIn the expectation of SweetHome, seller will touch MySweetHome site to submit their property, but sometimes, the owner of property doesn’t know how to use computer (e.g.: an old man), so they can call SweetHome to provide the detail of the property, our administrator will please to submit the home for the seller. All the submitted property details as same as normal seller, the submitted seller also the administrator, so when buyer contact, they will contact the administrator, then administrator will contact the seller due to the seller doesn’t know how to check their e-mail (as our assumption above).

3.20.2 Functional requirementsREQ-46: Administrator can submit a property.REQ-47: The property detail same as normal seller submitted property, property contact will

be administrator

3.21 Administrator can block user

3.21.1 DescriptionDue to reason, administrator may want to block an account; the system should allow them to perform the action.The blocked user cannot be login, nor register with the same e-mail address.

3.21.2 Functional requirementsREQ-48: Administrator can block some specific account.

Project Team: 02 Prepared by: All members Page 11 of 112

Page 12: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

REQ-49: The blocked account cannot be loginREQ-50: User cannot register with the blocked e-mail

3.22 Administrator can generate weekly report

3.22.1 DescriptionThe company requires the following weekly report:

- The website weekly activities of seller: how many new submitted property for each user- New coming property in week- New registration user in week- Outdated Property: the ones which are submitted over 15 days.- Not linked house on sale: administrator will needs this report to have a list of new

submitted but not establish the link with directory, they will use it to make appointment with property owner.

3.22.2 Functional requirementsREQ-51: Administrator can generate weekly activities of seller report.REQ-52: Administrator can generate new coming property in week reportREQ-53: Administrator can generate new registration user in week reportREQ-54: Administrator can generate outdated property since 15 days ago reportREQ-55: Administrator can generate not linked house on sale report

4 System requirements4.1 Web application server

Intel Pentium IV or better RAM 1G or better HDD 300MB available Internet connection

4.2 Client Intel Pentium IV RAM 512MB or better HDD 100MB available Internet connection Web browser: Internet Explorer 6 or above, Firefox 2 or above with Javascript

enabled

4.3 Development Software Microsoft Windows XP Professional Microsoft SQL Server 2000 sp3 or later Java sdk 1.6 Visio 2007 Eclipse 3.3 with WTP Dreamweaver 8.0 Internet Explorer 7.0 Apache Tomcat 6.0 Firefox 2.0 with Firebug for javascript debugging

Project Team: 02 Prepared by: All members Page 12 of 112

Page 13: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

4.4 Technology Web service Ajax Hibernate ZK Framework JSP, Servlet HTML Spring

Prepare By: Team 2 Approved By: FacultyDate: 07/04/2023 Team Leader

Nguyen Quoc Quynh Khoi Kieu Trong Khanh

Project Team: 02 Prepared by: All members Page 13 of 112

Page 14: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

REVIEW 2

Project Team: 02 Prepared by: All members Page 14 of 112

Page 15: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5 Use case5.1 Guest

5.1.1 Register as BuyerAuthor Huynh Tan PhucUse Case Name Register as BuyerActors GuestDescription Guest wish to become a Buyer member of this websiteRequirements Guest provide an email address and passwordPre-conditions GuestPost-conditions Success: Guest becomes a Buyer member of this website

Fail: Refill informationBasic flow   Guest Actions:

1. Guest clicks ‘Register’ button in Home page menu bar

3. Guest chooses ‘Register as Buyer’ button

5. Guest inputs register information and submit

System Responses:2. System redirects to Register page and displays 2 buttons :- Register as Buyer button- Register as Seller button

4. System displays form for Guest to input information with the following control :- ‘Email’ text field- ‘Password’ text field- ‘Confirm Password’ text field- ‘Register’ button- ‘Cancel’ button

Project Team: 02 Prepared by: All members Page 15 of 112

Page 16: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

- Provide email in ‘Email’ text field ( it has use as Buyer nickname )- Provide password in ‘Password’ text field- Provide confirm password in ‘Confirm Password’ text field- Provide name in ‘Name’ text field- Guest clicks ‘Register’ button 6. System checks the information

[exception]7. System saves input profile into database and redirects to Login page with a message ‘Your profile has been saved successful now you can login to become a Buyer member of our website’

Alternative flow Guest Actions:1. Guest click ‘Cancel’ button

System Responses:2. System returns previous page

Exception Guest Actions:[exception]1. Guest lefts ‘Email’ text field blank

2. Guest lefts ‘Password’ text field blank

3. Guest lefts ‘Confirm Password’ text field blank

4. Invalid email address

5. Email has already registered

6. Password and confirm password don’t match

System Responses:System displays message to Guest :- ‘Email can’t be blank. Please input email address’

- ‘Password can’t be blank. Please input password’

- ‘Confirm Password can’t be blank. Please input confirm password’

- ‘Invalid email address. Please input email in correct type’

- ‘Your email has already registered. Please choose another email address’

- ‘Password and confirm password didn’t match. Please input the same character string in both text field’

Project Team: 02 Prepared by: All members Page 16 of 112

Page 17: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.1.2 Register as SellerAuthor Huynh Tan PhucUse Case Name Register as SellerActors GuestDescription Guest wish to become a Seller member of this websiteRequirements Guest provide an email address, password and 3 option fields : name, address,

phonePre-conditions GuestPost-conditions Success: Guest becomes a Seller member of this website

Fail: Refill informationBasic flow   Guest Actions:

1. Guest clicks ‘Register’ button in Home page menu bar

3. Guest chooses ‘Register as Seller’

System Responses:2. System redirects to Register page and displays 2 buttons :- ‘Register as Buyer’ button- ‘Register as Seller’ button4. System displays form for Guest to

Project Team: 02 Prepared by: All members Page 17 of 112

Page 18: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

button

5. Guest inputs register information and submit- Provide email in ‘Email’ text field ( it has use as Seller nickname )- Provide password in ‘Password’ text field- Provide confirm password in ‘Confirm Password’ text field- Provide name in ‘Name’ text field- Provide phone number in ‘Phone Number’ text field- Provide home address in ‘Address’ text filed- Guest clicks ‘Register’ button

input information with the following control :- ‘Email’ text field- ‘Password’ text field- ‘Confirm Password’ text field- ‘Name’ text field- ‘Phone’ text field- ‘Address’ text field- ‘Register’ button- ‘Cancel’ button

6. System checks the information [exception]7. System saves input profile into database and redirects to Login page with a message ‘Your profile has been saved successful now you can login to become a Seller member of our website’

Alternative flow Guest Actions:1. Guest click ‘Cancel’ button

System Responses:2. System returns previous page

Exception Guest Actions:[exception]1. Guest lefts ‘Email’ text field blank

2. Guest lefts ‘Password’ text field blank

3. Guest lefts ‘Confirm Password’ text field blank

4. Invalid email address

System Responses:System displays message to Guest :- ‘Email can’t be blank. Please input email address’

- ‘Password can’t be blank. Please input password’

- ‘Confirm Password can’t be blank. Please input confirm password’

- ‘Invalid email address. Please input email in correct type’

Project Team: 02 Prepared by: All members Page 18 of 112

Page 19: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5. Email has already registered

6. Password and confirm password don’t match

7. Phone number isn’t a number

- ‘Your email has already registered. Please choose another email address’

- ‘Password and confirm password didn’t match. Please input the same character string in both text field’

- ‘Phone number isn’t a number. Please input Phone number in correct type’

5.1.3 Forgot PasswordAuthor Huynh Tan PhucUse Case Name Forgot PasswordActors GuestDescription Guest forgot password and wish to retrieve passwordRequirements Provide to system an email address for receiving new password

Project Team: 02 Prepared by: All members Page 19 of 112

Page 20: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Pre-conditions Guest’s email address has already registeredPost-conditions Success: A new password will be send to guest ‘s email address

Fail: Refill informationBasic flow   Guest Actions:

1. Guest clicks ‘Login’ button in Home page menu bar3. Guest clicks ‘Forgot Password’ hyperlink in Login page

5. Guest inputs email address and submit- Provide email in ‘Email’ text field- Guest clicks ‘Submit’ button

System Responses:2. System redirects to Login page

4. System redirects to Forgot Password page and displays form for Guest to input information with the following control :- ‘Email’ text field- ‘Submit’ button- ‘Cancel’ button

6. System checks the information [exception]7. System generates a new password, update password field in database and redirects to Login page with a message ‘A message contents new password have been sent to your email address . Please check email and get new password then you can login with new password. You can also change password in Edit Profile at your dashboard’

Alternative flow Guest Actions:1. Guest click ‘Cancel’ button

System Responses:2. System returns previous page

Exceptions Guest Actions:[exception]1. Guest lefts ‘Email’ text field blank

2. Invalid email address

3. Email is not exist in system

System Response:System displays message to Guest :- Email can’t be blank. Please input email address’

- ‘Invalid email address. Please input email in correct type’

- ‘Your email address is not exist in our system. Please input registered email’

Project Team: 02 Prepared by: All members Page 20 of 112

Page 21: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.1.4 LoginAuthor Huynh Tan PhucUse Case Name LoginActors GuestDescription Guest login to use member’s functions of this websiteRequirements Provide to system an email address and password to loginPre-conditions Guest’s email address has already registeredPost-conditions Success: can use member’s functions of this website

Fail: Refill informationBasic flow   Guest Actions:

1. Guest clicks ‘Login’ hyperlink in Home page menu bar

System Responses:2. System redirects to Login page and displays form for Guest to input information with the following control :

Project Team: 02 Prepared by: All members Page 21 of 112

Page 22: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

3. Guest inputs information and submit:- Provide email in ‘Email’ text field- Provide password in ‘Password’ text field- Click on ‘Remember me’ check box if user want to remember email address and password in user‘s computer or not (default set not). This function will automatically login every time user visits this web site and no need to fill these text fields again- Guest clicks ‘Login’ button

- ‘Email’ text field- ‘Password’ text field- ‘Remember me’ checkbox- ‘Forgot Password’ hyperlink- ‘Login’ button- ‘Cancel’ button

4. System checks the information [exception]5. System redirects to seller or buyer page with user own account type if email address and password provide are correct else system displays a message ‘Incorrect email or password’

Alternative flow Guest Actions:1. Guest clicks ‘Forgot Password’ hyperlink2. Guest clicks ‘Cancel’ button

System Responses:- System redirects to Forgot Password page- System returns previous page

Exceptions Guest Actions:[exception]1. Guest lefts ‘Email’ text field blank

2. Guest lefts ‘Password’ text field blank

3. Invalid email address

4. Email is not exist in system

System Responses:System displays message to Guest :- ‘Email can’t be blank. Please input email address’

- ‘Password can’t be blank. Please input password’

- ‘Invalid email address. Please input email in correct type’

- ‘Your email address is not existing in our system. Please input registered email’

Project Team: 02 Prepared by: All members Page 22 of 112

Page 23: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.1.5 Submit EnquiryAuthor Huynh Tan PhucUse Case Name Submit enquiry formActors GuestDescription Guest wish to send enquiry’s information to supporter of MySweetHomeRequirements Guest should provide name , email address, subject , content of the messagePre-conditions GuestPost-conditions Success: send enquiry’s information to supporter of MySweetHome

Fail: Refill informationBasic flow   Guest Actions:

1. Guest clicks ‘Enquiry’ button on Home page

System Responses:2. System redirects to Enquiry page and displays form for Guest to input information with the following control :- ‘Name’ text field- ‘Email address’ text field

Project Team: 02 Prepared by: All members Page 23 of 112

Page 24: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

3. Guest inputs information and submit:- Provide guest’s name in ‘Name’ text field- Provide email address of guest in ‘Email address’ text field- Guest clicks ‘Send’ button

- ‘Minimum Price’ text field- ‘Maximum Price’ text field- ‘City’ text field- ‘Street’ text field- ‘Number of bedroom’ combo box (default Any value)- ‘Number of bathroom’ combo box (default Any value)- ‘Square Footage’ combo box (default Any value)- ‘Type of Property’ combo box (default All value)- ‘Send’ button- ‘Cancel’ button

4. System checks the information [exception]5. System send enquiry’s information to supporter of MySweetHome and displays a message ‘Your enquiry form have been sent to supporter of MySweetHome successful’

Alternative flow Guest Actions:1. Guest click ‘Cancel’ button

System Responses:- System returns previous page

Exception Guest Actions:[exception]1. Guest lefts ‘Name’ text field blank

2. Guest lefts ‘Email address’ text field blank

3. Minimum price is not a valid number

4. Maximum price is not a valid number

5. Invalid email address

System Responses:System displays message to Guest :- ‘Name can’t be blank. Please input name’

- ‘Email address can’t be blank. Please input email address’

‘Minimum Price must be a real number. Please input minimum price in correct type’

‘Maximum Price must be a real number. Please input maximum price in correct type’

- ‘Invalid email address. Please input email in correct type’

Project Team: 02 Prepared by: All members Page 24 of 112

Page 25: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Project Team: 02 Prepared by: All members Page 25 of 112

Page 26: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.2 Seller

5.2.1 Submit house for saleAuthor Hieu Trong NguyenUse Case Name Submit house for saleActors Seller or AdministratorDescription Seller wish to submit a house for saleRequirements Seller should provide the house entry’s details according to the mode for salePre-conditions Already login into MySweetHome as Seller or AdministratorPost-conditions Success: Seller’s house entry information will be inserted into the database

Fail: Refill informationBasic flow   Seller Actions:

1. Seller clicks Sell button on home System Response:2. System displays ‘Sell’ page

Project Team: 02 Prepared by: All members Page 26 of 112

Page 27: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

page menu bar or on Seller Dashboard menu.3. Seller chooses house for sale mode tab

5. Seller inputs house for sale information- Click ‘Browse’ button and choose house’s image to upload [exception1]- Provide price in ‘Price’ text field and check in ‘Negotiable’ checkbox if the price can be negotiable [exception2]- Type city where the house located in ‘City’ auto complete text field. The data of this auto complete box will be retrieve from the table contain house properties information- Provide the house’s address in ‘Address’ text field. [alternative1]- Provide number of bedroom and bathroom in the respective text field :’Number of Bedroom’ and ‘Number of Bathroom’ [exception3]- Provide square footage (m2) in ‘Square Footage‘ text field [exception4]- Choose a type property from ‘Type of Property’ combo box. This combo box

4. System displays form for seller to input information with the following control:- Button ‘Browse’ to upload image- ‘Price’ text field- ‘Negotiable’ checkbox- ‘City’ auto complete text field- ‘Address’ text field- ‘Number of Bedroom’ text field- ‘Number of Bathroom’ text field- ‘Square Footage’ text field- ‘Type of Property’ combo box- ‘Extra facilities’ radio button (Yes/No)- ‘With furniture/interiors’ radio button- ‘Mode of transport’ text field- ‘Mode of payment’ combo box- ‘Contact name’ text field- ‘Contact email’ text field- ‘Contact phone’ text field- ‘Contact address’ text field- ‘Fee’ radio button- ‘Credit Card No’ text field- ‘Map with Google’ button- ‘Submit’ button- ‘Cancel’ button

Project Team: 02 Prepared by: All members Page 27 of 112

Page 28: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

contain five value : Residential Land, Commercial, Condominium, Townhouse, Multi-unit dwelling- Choose extra facilities available (Yes/No) by ticking on ‘Extra facilities’ radio button- Choose with or without furniture/interiors (Yes/No) by ticking on ‘With furniture/interiors’ radio button- Provide convenient mode of transport in ‘Mode of transport’ text field- Choose mode of payment from a ‘Mode of payment’ combo box. This combo box contain three value : Cash, Credit Card and Cheque- Edit contact detail (option/using seller info by default)

+ Contact name in ‘Contact Name’ text field+ Contact email in ‘Contact Email’ text field+ Contact phone in ‘Contact Phone’ text field+ Contact address in ‘Contact Address’ text field

- Choose level of fee by ticking the ‘Fee’ radio button. There are three level :

+ 9.99 $ for 10 days+ 18.99 $ for 30 days+ 57.99 $ for 60 days

- Finally provide credit card no for paying fee in ‘Credit Card No’ text field [exception5]Seller clicks ‘Submit’ button [alternative2]

6. System checks the information and calls a web service to verify credit card status [exception6] [exception7]7. System inserts house’s information into the database then display message ‘Your property has been submitted’ on ‘Sell’ page.

Alternative flow Seller Actions:[alternative1] Seller can click on ‘Map with Google’ button to check the

System Response:1. System display Google map with the point corresponding with the address

Project Team: 02 Prepared by: All members Page 28 of 112

Page 29: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

house’s location in Google Map[alternative2] Seller clicks ‘Cancel’ button

provided by seller2. System returns to Seller Dashboard

Exceptions Seller Actions:[exception1] Seller clicks ‘Upload’ button but upload process fail because some unknown problem.[exception2] Seller provides an invalid price (not a number or negative number)

[exception3] Seller provides an invalid number of bedroom or number of bathroom.

[exception4] Seller provides an invalid square footage.

[exception5] Seller provides an invalid credit card

[exception6] 6.1 Seller left ‘Price’ field blank

6.2 Seller left ‘City’ field blank

6.3 Seller left ‘Number of bedroom’ field blank

6.4 Seller left ‘Number of bathroom’ field blank

6.5 Seller left ‘Address’ field blank

6.6 Seller left ‘Square Footage’ field blank

6.7 Seller left ‘Contact Email’ field blank

6.8 Seller left ‘Credit Card No’ field blank

System Response:1.System displays message to seller : ‘Uploading image has failed, Please try again’2. System displays message to seller: ‘The price provided is invalid. Only positive number is allowed’3. System displays message to seller: ‘The number of bathroom/bedroom provided is invalid. Only positive integer number is allowed’4. System displays message to seller: ‘The square footage provided is invalid. Only positive number is allowed’5. System displays message to seller: ‘The credit card no provided is invalid. Please try again’6. 6.1 System displays message to notice seller: ‘Price can’t be blank. Please enter price of property’6.2 System displays message to notice seller: ‘City can’t be blank. Please enter city name’6.3 System displays message to notice seller: ‘Number of bedroom can’t be blank. Please enter number of bedroom’6.4 System displays message to notice seller: ‘Number of bathroom can’t be blank. Please enter number of bathroom’6.5 System displays message to notice seller: ‘Address can’t be blank. Please enter address of property’6.6 System displays message to notice seller: ‘Square footage can’t be blank. Please enter property’s square footage’6.7 System displays message to notice seller: ‘Contact email can’t be blank. Please enter contact email’6.8 System displays message to notice seller: ‘Credit card can’t be blank.

Project Team: 02 Prepared by: All members Page 29 of 112

Page 30: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

[exception7] The credit card has been expired or not enough cash

Please enter credit card no’7. System displayed message to notice seller : ‘Your card has been expired or not enough cash’

5.2.2 Submit house for rentAuthor Hieu Trong NguyenUse Case Name Submit house for rentActors Seller or AdministratorDescription Seller wish to submit a house for rentRequirements Seller should provide the house entry’s details according to the mode for rentPre-conditions Already login into MySweetHome as Seller or AdministratorPost-conditions Success: Seller’s house entry information will be inserted into the database

Fail: Refill informationBasic flow   Seller Actions:

1. Seller clicks Sell button on home page menu bar or on Seller Dashboard menu.

System Response:2. System displays Sell page

4. System displays form for seller to

Project Team: 02 Prepared by: All members Page 30 of 112

Page 31: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

3. Seller chooses house for rent mode tab

5. Seller inputs house for rent information- Click ‘Browse’ button and choose house’s image to upload [exception1]- Provide price in ‘Deposit’ text field and check in ‘Negotiable’ checkbox if the price can be negotiable [exception2]- Provide price in ‘Rent price’ text field and check in ‘Negotiable’ checkbox if the price can be negotiable [exception2]- Type city where the house located in ‘City’ autocomplete text field. The data of this autocomplete box will be retrieve from the table contain house properties information- Provide the house’s address in ‘Address’ text field [alternative1]- Provide number of bedroom and bathroom in the respective text field :’Number of Bedroom’ and ‘Number of Bathroom’ [exception3]- Choose mode of payment from a ‘Mode of payment’ combo box. This combo box contain three value : Cash, Credit Card and Cheque- Edit contact detail (option/using seller info by default)

input information with the following control:- Button ‘Browse’ to upload image- ‘Deposit’ text field- ‘Rent price’ text field- ‘Negotiable’ checkbox- ‘City’ auto complete text field- ‘Address’ text field- ‘Number of Bedroom’ text field- ‘Number of Bathroom’ text field- ‘Mode of payment’ combo box- ‘Contact name’ text field- ‘Contact email’ text field- ‘Contact phone’ text field- ‘Contact address’ text field- ‘Fee’ radio button- ‘Credit Card No’ text field- ‘Map with Google’ button- ‘Submit’ button- ‘Cancel’ button

Project Team: 02 Prepared by: All members Page 31 of 112

Page 32: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

+ Contact name in ‘Contact Name’ text field+ Contact email in ‘Contact Email’ text field+ Contact phone in ‘Contact Phone’ text field+ Contact address in ‘Contact Address’ text field

- Choose level of fee by ticking the ‘Payment fee’ radio button. There are three level :

+ 9.99 $ for 10 days+ 18.99 $ for 30 days+ 57.99 $ for 60 days

- Finally provide credit card no for paying fee [exception4]Seller clicks ‘Submit’ button [alternative2]

6. System checks the information and calls a webservice to verify credit card status [exception5] [exception6]7. System inserts house’s information into the database then display message ‘Your property has been submitted’ on ‘Sell’ page.

Alternative flow Seller Actions:[alternative1] Seller can click on ‘Map with Google’ button to check the house’s location in Google Map[alternative2] Seller clicks ‘Cancel’ button

System Response:1. System display google map with the point corresponding with the address provided by seller2. System returns to Seller Dashboard

Exceptions Seller Actions:[exception1] Seller clicks ‘Upload’ button but upload process fail because some unknown problem.[exception2] Seller provides an invalid deposit/rent price (not a number or negative number)[exception3] Seller provides an invalid number of bedroom or number of bathroom.

[exception4] Seller provides an invalid credit card no[exception5] 5.1 Seller left ‘Deposit’ field blank

System Response:1. System displays message to seller : ‘Uploading image has failed, Please try again’2. System displays message to seller: ‘The price provided is invalid. Only positive number is allowed’3. System displays message to seller: ‘The number of bathroom/bedroom provided is invalid. Only positive integer number is allowed’4. System displays message to seller : ‘The credit card no provided is invalid’5. 5.1 System displays message to notice

Project Team: 02 Prepared by: All members Page 32 of 112

Page 33: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.2 Seller left ‘Rent Price’ blank

5.3 Seller left ‘City’ field blank

5.4 Seller left ‘Number of bedroom’ field blank

5.5 Seller left ‘Number of bathroom’ field blank

5.6 Seller left ‘Address’ field blank

5.7 Seller left ‘Contact Email’ field blank

5.8 Seller left ‘Credit Card No’ field blank

[exception6] The credit card has been expired or not enough cash

seller: ‘Deposit can’t be blank. Please enter deposit price for your property’5.2 System displays message to notice seller: ‘Rent price can’t be blank. Please enter rent price of your property’5.3 System displays message to notice seller: ‘City can’t be blank. Please enter city name’5.4 System displays message to notice seller: ‘Number of bedroom can’t be blank. Please enter number of bedroom’5.5 System displays message to notice seller: ‘Number of bathroom can’t be blank. Please enter number of bathroom’5.6 System displays message to notice seller: ‘Address can’t be blank. Please enter address of property’5.7 System displays message to notice seller: ‘Contact email can’t be blank. Please enter contact email’5.8 System displays message to notice seller: ‘Credit card can’t be blank. Please enter credit card no’6. System displayed message to notice seller : ‘Your card has been expired or not enough cash’

Project Team: 02 Prepared by: All members Page 33 of 112

Page 34: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.2.3 Submit accommodation on rental as paying guestAuthor Hieu Trong NguyenUse Case Name Submit accommodation on rental as paying guestActors Seller or AdministratorDescription Seller wish to submit a accommodation (room) on rentalRequirements Seller should provide the house entry’s details according to the mode

accommodation on rentalPre-conditions Already login into MySweetHome as Seller or AdministratorPost-conditions Success: Seller’s house entry information will be inserted into the database

Fail: Refill informationBasic flow   Seller Actions:

1. Seller clicks Sell button on home page menu bar or on Seller Dashboard menu.3. Seller chooses accommodation on rental mode tab

System Response:2. System displays Sell page

4. System displays form for seller to input information with the following control:- Button ‘Browse’ to upload image

Project Team: 02 Prepared by: All members Page 34 of 112

Page 35: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5. Seller inputs accommodation (room) on rental information- Provide price in ‘Deposit’ text field and check in ‘Negotiable’ checkbox if the price can be negotiable [exception1]- Provide price in ‘Rent price’ text field and check in ‘Negotiable’ checkbox if the price can be negotiable [exception1]- Type city where the house located in ‘City’ auto complete text field. The data of this auto complete box will be retrieve from the table contain house properties information- Provide the house’s address in ‘Address’ text field [alternative1]- Edit contact detail (option/using seller info by default)

+ Contact name in ‘Contact Name’ text field+ Contact email in ‘Contact Email’ text field+ Contact phone in ‘Contact Phone’ text field+ Contact address in ‘Contact Address’ text field

- Choose level of fee by ticking the ‘Payment fee’ radio button. There are three level :

+ 9.99 $ for 10 days+ 18.99 $ for 30 days+ 57.99 $ for 60 days

- Finally provide credit card no for paying fee [exception2]6. Seller clicks ‘Submit’ button

- ‘Deposit’ text field- ‘Rent price’ text field- ‘Negotiable’ checkbox- ‘City’ auto complete text field- ‘Address’ text field- ‘Contact name’ text field- ‘Contact email’ text field- ‘Contact phone’ text field- ‘Contact address’ text field- ‘Fee’ radio button- ‘Credit Card No’ text field- ‘Map with Google’ button- ‘Submit’ button- ‘Cancel’ button

7. System checks the information and

Project Team: 02 Prepared by: All members Page 35 of 112

Page 36: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

[alternative2] calls a web service to verify credit card status [exception3][exception4]8. System inserts house’s information into the database then display message ‘Your property has been submitted’ on ‘Sell’ page.

Alternative flow Seller Actions:[alternative1] Seller can click on ‘Map with Google’ button to check the house’s location in Google Map[alternative2] Seller clicks ‘Cancel’ button

System Response:1. System display google map with the point corresponding with the address provided by seller2. System returns to Seller Dashboard

Exceptions Seller Actions:[exception1] Seller provides an invalid deposit/rent price (not a number or negative number)[exception2] Seller provides an invalid credit card no[exception3] 3.1 Seller left ‘Deposit’ field blank

3.2 Seller left ‘Rent Price’ blank

3.3 Seller left ‘City’ field blank

3.4 Seller left ‘Address’ field blank

3.5 Seller left ‘Contact Email’ field blank

3.6 Seller left ‘Credit Card No’ field blank

[exception4] The credit card has been expired or not enough cash

System Response:1. System displays message to seller: ‘The price provided is invalid. Only positive number is allowed’2. System displays message to seller : ‘The credit card no provided is invalid’3. 3.1 System displays message to notice seller: ‘Deposit can’t be blank. Please enter deposit price for your property’3.2 System displays message to notice seller: ‘Rent price can’t be blank. Please enter rent price of your property’3.3 System displays message to notice seller: ‘City can’t be blank. Please enter city name’3.4 System displays message to notice seller: ‘Address can’t be blank. Please enter address of property’3.5 System displays message to notice seller: ‘Contact email can’t be blank. Please enter contact email’3.6 System displays message to notice seller: ‘Credit card can’t be blank. Please enter credit card no’4. System displayed message to notice seller : ‘Your card has been expired or not enough cash’

Project Team: 02 Prepared by: All members Page 36 of 112

Page 37: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.2.4 Edit own propertyAuthor Hieu Trong NguyenUse Case Name Edit own propertyActors SellerDescription Seller wish to change house propertiesRequirements Seller should change the house entry’s details according to the mode (for sale,for

rent, accommodation on rental)Pre-conditions Already login into MySweetHome as SellerPost-conditions Success: Seller’s house entry information will be update into the database

Fail: Refill informationBasic flow   - Change price in ‘Deposit’ text field

and check in ‘Negotiable’ checkbox if the price can be negotiable [exception2] (for rent and accommodation mode only)- Change price in ‘Rent price’ text field and check in ‘Negotiable’ checkbox if

System Response:2. System displays form for seller to change information. Old house properties info is already loaded. Depend on the house mode, which form will be loaded. The form can contain some of following control :

Project Team: 02 Prepared by: All members Page 37 of 112

Page 38: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

the price can be negotiable [exception2] (for rent and accommodation mode only)- Change city where the house located in ‘City’ autocomplete text field. The data of this autocomplete box will be retrieve from the table contain house properties information- Change the house’s address in ‘Address’ text field [alternative1]- Change number of bedroom and bathroom in the respective text field :’Number of Bedroom’ and ‘Number of Bathroom’ [exception3] (for sale and rent mode only)- Change square footage (m2) in ‘Square Footage‘ text field [exception4] (for sale mode only)- Change a type property from ‘Type of Property’ combo box. This combo box contains five values: Residential Land, Commercial, Condominium, Townhouse, Multi-unit dwelling. (for sale mode only)- Change extra facilities available (Yes/No) by ticking on ‘Extra facilities’ radio button. (for sale mode only)- Change with or without furniture/interiors (Yes/No) by ticking on ‘with furniture/interiors’ radio button. (for sale mode only)- Change convenient mode of transport in ‘Mode of transport’ text field. (for sale mode only)- Change mode of payment from a ‘Mode of payment’ combo box. This combo box contain three value : Cash, Credit Card and Cheque- Change contact detail (option/using seller info by default)

+ Contact name in ‘Contact Name’ text field+ Contact email in ‘Contact Email’ text field+ Contact phone in ‘Contact Phone’ text field+ Contact address in ‘Contact

- Button ‘Browse’ to upload image- ‘Price’ text field- ‘Negotiable’ checkbox- ‘City’ auto complete text field- ‘Address’ text field- ‘Number of Bedroom’ text field- ‘Number of Bathroom’ text field- ‘Square Footage’ text field- ‘Type of Property’ combo box- ‘Extra facilities’ radio button (Yes/No)- ‘With furniture/interiors’ radio button- ‘Mode of transport’ text field- ‘Mode of payment’ combo box- ‘Contact name’ text field- ‘Contact email’ text field- ‘Contact phone’ text field- ‘Contact address’ text field- ‘Submit’ button- ‘Cancel’ button

Project Team: 02 Prepared by: All members Page 38 of 112

Page 39: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Address’ text field Seller clicks ‘Submit’ button [alternative2]

4. System checks the information [exception5]5. System updates house’s information into the database then display message ‘Your property has been updated successful’ on ‘Edit property page’

Project Team: 02 Prepared by: All members Page 39 of 112

Page 40: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Alternative flow Seller Actions:[alternative1] Seller can click on ‘Map with Google’ button to check the house’s location in Google Map[alternative2] Seller clicks ‘Cancel’ button

System Response:1. System display Google map with the point corresponding with the address provided by seller2. System returns to Seller Dashboard

Exceptions Seller Actions:[exception1] Seller clicks ‘Upload’ button but upload process fail because some unknown problem.[exception2] Seller provides an invalid price (not a number or negative number)

[exception3] Seller provides an invalid number of bedroom or number of bathroom.

[exception4] Seller provides an invalid square footage.

[exception5] 5.1 Seller left ‘Price’ field blank (for sale mode only)

5.2 Seller left ‘Deposit’ field blank (for rent mode and accommodation mode only)

5.3 Seller left ‘Rent Price’ blank (for rent mode and accommodation mode only)

5.4 Seller left ‘City’ field blank

5.5 Seller left ‘Number of bedroom’ field blank (for sale mode and rent mode only)

5.6 Seller left ‘Number of bathroom’ field blank (for sale mode and rent mode only)

5.7 Seller left ‘Address’ field blank

System Response:1.System displays message to seller : ‘Uploading image has failed, Please try again’2. System displays message to seller: ‘The price provided is invalid. Only positive number is allowed’3. System displays message to seller: ‘The number of bathroom/bedroom provided is invalid. Only positive integer number is allowed’4. System displays message to seller: ‘The square footage provided is invalid. Only positive number is allowed’5. 5.1 System displays message to notice seller: ‘Price can’t be blank. Please enter price of property’5.2 System displays message to notice seller: ‘Deposit can’t be blank. Please enter deposit price for your property’5.3 System displays message to notice seller: ‘Rent price can’t be blank. Please enter rent price of your property’5.4 System displays message to notice seller: ‘City can’t be blank. Please enter city name’5.5 System displays message to notice seller: ‘Number of bedroom can’t be blank. Please enter number of bedroom’5.6 System displays message to notice seller: ‘Number of bathroom can’t be blank. Please enter number of bathroom’5.7 System displays message to notice seller: ‘Address can’t be blank. Please enter address of property’5.8 System displays message to notice seller: ‘Contact email can’t be blank.

Project Team: 02 Prepared by: All members Page 40 of 112

Page 41: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.8 Seller left ‘Contact Email’ field blank

Please enter contact email’

5.2.5 Refresh propertyAuthor Hieu Trong NguyenUse Case Name Refresh propertyActors SellerDescription Seller wish to refresh the home property that had suspended or nearly expiredRequirements The property needs to be refresh must suspendPre-conditions Already login into the System as SellerPost-conditions Success: House entry’s information will be turned back into active from suspend

Fail: Refill informationBasic flow   Seller Actions:

1. Seller clicks ‘Refresh’ button in ‘House properties’ grid table on Seller Dashboard corresponding with which property needed to be refreshed

System Response:2. System displays ‘Paying Fee’ page with the following control:- ‘Credit Card No’ text field.- ‘Fee’ radio button.- ‘Submit’ button

Project Team: 02 Prepared by: All members Page 41 of 112

Page 42: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

3. Seller provide some information required for refreshing process :- Provide credit card no in ‘Credit Card No’ text field [exception1]- Choose level of fee by ticking the ‘Fee’ radio button. There are three level :

+ 9.99 $ for 10 days+ 18.99 $ for 30 days+ 57.99 $ for 60 days

Seller clicks ‘Submit’ button [alternative]

- ‘Cancel’ button

4. System calls a web service method to check credit card status [exception2]5. System updates the information and displays Seller Dashboard page with updated information

Alternative flow Seller Actions:[alternative] Seller clicks ‘Cancel’ button

System Response:System returns to Seller Dashboard page

Exceptions Seller Actions:[exception1] Seller provide invalid credit card no

[exception2] The credit card has been expired or not enough cash

System Response:1. System displayed message to notice seller : ‘The credit card no provided is invalid’2. System displayed message to notice seller : ‘Your card has been expired or not enough cash’

Project Team: 02 Prepared by: All members Page 42 of 112

Page 43: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.2.6 Suspend own property

Author Hieu Trong NguyenUse Case Name Suspend own propertyActors SellerDescription Seller suspends house entryRequirements Seller must choose the correct property needed to be suspendedPre-conditions Already login into the System as SellerPost-conditions Success: House entry’s information will be updated in the databaseBasic flow   Seller Actions:

1. Seller clicks ‘Suspend’ button in ‘House properties’ grid table on Seller Dashboard corresponding with which property needed to be suspended 3. Seller clicks ‘OK’ button [alternative]

System Response:2. System display a message to confirm: ‘Are you sure you want to suspend this property?’

4. System updates the information and displays Seller Dashboard with updated information

Project Team: 02 Prepared by: All members Page 43 of 112

Page 44: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Alternative flow Seller Actions:[alternative] Seller clicks ‘Cancel’ button

System Response:System returns current page without changing anything

Exceptions

5.2.7 Edit profileAuthor Hieu Trong NguyenUse Case Name Edit seller profileActors SellerDescription Seller edits his/her profileRequirements Seller must provide his/her valid contact details to update profilePre-conditions Already login into the System as SellerPost-conditions Success: Seller ’s information will be updated in the database

Fail: Refill informationBasic flow   Seller Actions:

1. Seller clicks ‘Edit Profile’ button located in Seller Dashboard Menu

System Response:2. System displays Edit profile page. All field has been loaded with current seller’s information in the following

Project Team: 02 Prepared by: All members Page 44 of 112

Page 45: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

3. Seller changes his/her information :- Change email in ‘Email’ text field [exception1]- Change name in ‘Full Name’ text field- Change address in ‘Address’ text field- Change phone in ‘Phone’ text field- Change password in ‘Password’ text field- Retype password to confirm in ‘Confirm Password’ text field [exception2]Seller clicks ‘Submit’ button [alternative]

control:- ‘Email’ text field- ‘Full Name’ text field- ‘Address’ text field- ‘Phone’ text field- ‘Password’ text field- ‘Confirm password’ text field- ‘Submit’ button- ‘Cancel’ button

4. System checks information [exception3] [exception4]5. System updates the information and displays Seller Dashboard page with updated information

Alternative flow Seller Actions:[alternative] Seller clicks ‘Cancel’ button

System Response:System returns to Seller Dashboard page

Exceptions Seller Actions:[exception1] Seller provided an invalid email[exception2] Confirm password does not match with password that seller provided[exception3] 3.1 Seller changed some information but left ‘Email’ field blank3.2 Seller changed some information but left ‘Password’ field blank[exception4] New seller’s email has been used

System Response:1. System displays message to seller : ‘Your email is invalid’2. System displays message to seller : ‘Password and confirm password does not match’3. 3.1 System displays message to notice seller: ‘Please enter email’3.2 System displays message to notice seller: ‘Please enter password’4. System displays message to seller : ‘Email has been used’

Project Team: 02 Prepared by: All members Page 45 of 112

Page 46: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Project Team: 02 Prepared by: All members Page 46 of 112

Page 47: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.3 Buyer

5.3.1 Send message to SellerAuthor Huynh Tan PhucUse Case Name Send message to SellerActors BuyerDescription Buyer wish to send message to SellerRequirements Buyer should provide subject , content of the messagePre-conditions Already login into MySweetHome as BuyerPost-conditions Success: send message to Seller

Fail: Refill informationBasic flow   Buyer Actions:

1. Buyer clicks ‘Seller’s Email’ button on Property Detail page

3. Buyer inputs information and submit:- Provide subject in ‘Subject’ text field- Provide content of the message in ‘Content’ text area- Buyer clicks ‘Send Message’ button

System Responses:2. System redirects to SendMessage page and displays form for Buyer to input information with the following control :- ‘Subject’ text field- ‘Content’ text area- ‘Send Message’ button- ‘Cancel’ button

4. System checks the information [exception]5. System send a message to Seller’s

Project Team: 02 Prepared by: All members Page 47 of 112

Page 48: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

email and displays a message ‘Your message have been sent to Seller successful’

Alternative flow Buyer Actions:1. Buyer click ‘Cancel’ button

System Responses:- System returns previous page

Exception Buyer Actions:[exception]1. Buyer lefts ‘Subject’ text field blank

2. Buyer lefts ‘Content’ text field blank

System Responses:System displays message to Buyer :- ‘Subject can’t be blank. Please input subject’

- ‘Content can’t be blank. Please input content’

5.3.2 Search house for saleAuthor Huynh Tan PhucUse Case Name Search house for saleActors Buyer

Project Team: 02 Prepared by: All members Page 48 of 112

Page 49: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Description Buyer wish to search a house for saleRequirements Buyer should provide the house entry’s details according to the mode ‘Search

house for sale’ to searchPre-conditions Already login into MySweetHome as BuyerPost-conditions Success: redirect to Property page for display any house according to buyer ‘s

requirements in Search pageFail: Refill information or system displays an message ‘There is not any properties matched your search’ when system couldn’t founded any properties matched buyer requirements

Basic flow   Buyer Actions:1. Buyer clicks ‘Search for Properties’ button on Buyer page

3. Buyer chooses ‘Search house for sale’ button

5. Buyer inputs house for sale information and submit- Provide minimum price of Property on sale in ‘Minimum Price’ text field- Provide maximum price of Property on sale in ‘Maximum Price’ text field- Provide name of the city where the house takes place in ‘City’ text field- Provide name of street where the house takes place in ‘Street’ text field- Choose a number of bedroom from ‘Number of bedroom’ combo box. This combo box contain six value : ‘1 or more’, ‘2 or more’, ‘3 or more’, ‘4 or more’, ‘5 or

System Responses:2. System redirects to Search page and displays 3 buttons :- ‘House for sale’ button- ‘House for rent’ button- ‘Accommodation on rental’ button4. System displays form for Buyer to input information with the following control :- ‘Minimum Price’ text field- ‘Maximum Price’ text field- ‘City’ text field- ‘Street’ text field- ‘Number of bedroom’ combo box (default Any value)- ‘Number of bathroom’ combo box (default Any value)- ‘Square Footage’ combo box (default Any value)- ‘Type of Property’ combo box (default All value)- ‘Search’ button- ‘Cancel’ button

Project Team: 02 Prepared by: All members Page 49 of 112

Page 50: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

more’ and ‘Any’- Choose a number of bathroom from ‘Number of bathroom’ combo box. This combo box contain six value : ‘1 or more’, ‘2 or more’, ‘3 or more’, ‘4 or more’, ‘5 or more’ and ‘Any’- Choose a square footage from ‘Square Footage’ combo box. This combo box contain six value : ‘<50’, ‘50<= and <100’, ‘100<= and <200’, ‘200<= and <500’, ‘>=500’ and ‘Any’- Choose a type of property from ‘Type of Property’ combo box. This combo box contain six value : Residential Land, Commercial, Condominium, Townhouse, Multi-unit dwelling and All- Buyer clicks Search button 6. System display any house

according to buyer‘s requirements at Search page by Property Page.

Alternative flow Buyer Actions:1. Buyer click ‘Cancel’ button

System Responses:- System returns previous page

Exception N/A

Project Team: 02 Prepared by: All members Page 50 of 112

Page 51: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.3.3 Search house for rentAuthor Huynh Tan PhucUse Case Name Search house for rentActors BuyerDescription Buyer wish to search a house for rentRequirements Buyer should provide the house entry’s details according to the mode ‘Search

house for rent’ to searchPre-conditions Already login into MySweetHome as BuyerPost-conditions Success: redirect to Property page for display any house according buyer ‘s

requirements in Search pageFail: Refill information or system displays an message ‘There is not any properties matched your search’ when system couldn’t founded any properties matched buyer requirements

Basic flow   Buyer Actions:1. Buyer clicks ‘Search for Properties’ button on Buyer page

System Responses:2. System redirects to Search page and displays 3 buttons :- ‘House for sale’ button- ‘House for rent’ button- ‘Accommodation on rental’ button

Project Team: 02 Prepared by: All members Page 51 of 112

Page 52: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

3. Buyer chooses ‘Search house for rent’ button

5. Buyer inputs house for rent information and submit- Provide minimum rent price of Property on sale in ‘Minimum Rent Price’ text field- Provide maximum rent price of Property on sale in ‘Maximum Rent Price’ text field- Provide minimum deposit price of Property on sale in ‘Minimum Deposit Price’ text field- Provide maximum deposit price of Property on sale in ‘Maximum Deposit Price’ text field- Provide name of the city where the house takes place in ‘City’ text field- Provide name of street where the house takes place in ‘Street’ text field- Choose a number of bedroom from ‘Number of bedroom’ combo box. This combo box contain six value : ‘1 or more’, ‘2 or more’, ‘3 or more’, ‘4 or more’, ‘5 or more’ and ‘Any’- Choose a number of bathroom from ‘Number of bathroom’ combo box. This combo box contain six value : ‘1 or more’, ‘2 or more’, ‘3 or more’, ‘4 or more’, ‘5 or more’ and ‘Any’- Buyer clicks Search button

4. System displays form for Buyer to input information with the following control :- ‘Minimum Rent price’ text field- ‘Maximum Rent price’ text field- ‘Minimum Deposit price’ text field- ‘Maximum Deposit price’ text field- ‘City’ text field- ‘Street’ text field- ‘Number of bedroom’ combo box (default Any value)- ‘Number of bathroom’ combo box (default Any value)- ‘Search’ button- ‘Cancel’ button

6. System display any house according to buyer‘s requirements at Search page by Property Page.

Alternative flow Buyer Actions:1. Buyer click ‘Cancel’ button

System Responses:- System returns previous page

Project Team: 02 Prepared by: All members Page 52 of 112

Page 53: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Exception N/A

5.3.4 Search accommodation on rentalAuthor Huynh Tan PhucUse Case Name Search accommodation on rentalActors BuyerDescription Buyer wish to search an accommodation on rentalRequirements Buyer should provide the accommodation on rental entry’s details according to the

mode ‘Search accommodation on rental’ to searchPre-conditions Already login into MySweetHome as BuyerPost-conditions Success: redirect to Property page for display any accommodation on rental

according buyer ‘s requirements in Search pageFail: Refill information or system displays an message ‘There is not any properties matched your search’ when system couldn’t founded any properties matched buyer requirements

Basic flow   Buyer Actions:1. Buyer clicks ‘Search for Properties’ button on Buyer page

3. Buyer chooses ‘Search accommodation

System Responses:2. System redirects to Search page and displays 3 buttons :- ‘House for sale’ button- ‘House for rent’ button- ‘Accommodation on rental’ button4. System displays form for Buyer to

Project Team: 02 Prepared by: All members Page 53 of 112

Page 54: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

on rental’ button

5. Buyer inputs accommodation on rental information and submit- Provide minimum rent price of Property on sale in ‘Minimum Rent Price’ text field- Provide maximum rent price of Property on sale in ‘Maximum Rent Price’ text field- Provide minimum deposit price of Property on sale in ‘Minimum Deposit Price’ text field- Provide maximum deposit price of Property on sale in ‘Maximum Deposit Price’ text field- Provide name of the city where the house takes place in ‘City’ text field- Provide name of street where the house takes place in ‘Street’ text field- Buyer clicks Search button

input information with the following control :- ‘Minimum Rent price’ text field- ‘Maximum Rent price’ text field- ‘Minimum Deposit price’ text field- ‘Maximum Deposit price’ text field- ‘City’ text field- ‘Street’ text field- ‘Search’ button- ‘Cancel’ button

6. System display any accommodation on rental according to buyer‘s requirements at Search page by Property Page.

Alternative flow Buyer Actions:1. Buyer click ‘Cancel’ button

System Responses:1. System returns previous page

Exception N/A

Project Team: 02 Prepared by: All members Page 54 of 112

Page 55: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.3.5 View last five searchesAuthor Huynh Tan PhucUse Case Name View last five searchesActors BuyerDescription When Buyer search for property, all search information will be back up . Buyer

can view and redo last five searches by click on ‘View last five searches’ without fill search’s information in form. By the way , Buyer can also change search’s information to make a new search

Requirements Buyer had searched at least once timePre-conditions Already login into MySweetHome as BuyerPost-conditions Success: redirect to Search page for display any buyer ‘s requirements in last five

searchesBasic flow   Buyer Actions:

1. Buyer clicks ‘View last five searches’ button on Buyer page

3. Buyer chooses one of those ‘Last search’ button

System Responses:2. System displays 5 buttons :- ‘Last search 1’ button- ‘Last search 2’ button- ‘Last search 3’ button- ‘Last search 4’ button- ‘Last search 5’ button4. System redirects to Search page and displays form has already filled (type of search according to last

Project Team: 02 Prepared by: All members Page 55 of 112

Page 56: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5. Buyer inputs house for rent information and submit- Minimum price of Property has filled in ‘Minimum Price’ text field- Maximum price of Property has filled in ‘Maximum Price’ text field- Minimum rent price of Property has filled in ‘Minimum Rent Price’ text field- Maximum rent price of Property has filled in ‘Maximum Rent Price’ text field- Minimum deposit price of Property has filled in ‘Minimum Deposit Price’ text field- Maximum deposit price of Property has filled in ‘Maximum Deposit Price’ text field- Name of the city where the house takes place has filled in ‘City’ text field- Name of street where the house takes place has filled in ‘Street’ text field- Choose a number of bedroom from ‘Number of bedroom’ combo box. This combo box contain six value : ‘1 or more’, ‘2 or more’, ‘3 or more’, ‘4 or more’, ‘5 or more’ and ‘Any’- Choose a number of bathroom from ‘Number of bathroom’ combo box. This

search) for Buyer to redo search with the following control :- ‘Minimum Price’ text field- ‘Maximum Price’ text field- ‘Minimum Rent price’ text field- ‘Maximum Rent price’ text field- ‘Minimum Deposit price’ text field- ‘Maximum Deposit price’ text field- ‘City’ text field- ‘Street’ text field- ‘Number of bedroom’ combo box (default Any value)- ‘Number of bathroom’ combo box (default Any value)- ‘Square Footage’ combo box (default Any value)- ‘Type of Property’ combo box (default All value)- ‘Search’ button- ‘Cancel’ button

Project Team: 02 Prepared by: All members Page 56 of 112

Page 57: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

combo box contain six value : ‘1 or more’, ‘2 or more’, ‘3 or more’, ‘4 or more’, ‘5 or more’ and ‘Any’- Choose a square footage from ‘Square Footage’ combo box. This combo box contain six value : ‘<50’, ‘50<= and <100’, ‘100<= and <200’, ‘200<= and <500’, ‘>=500’ and ‘Any’- Choose a type of property from ‘Type of Property’ combo box. This combo box contain six value : Residential Land, Commercial, Condominium, Townhouse, Multi-unit dwelling and All- Buyer clicks Search button 6. System display any house

according to buyer‘s requirements at Search page by Property Page.

Alternative flow Buyer Actions:1. Buyer click ‘Cancel’ button

System Responses:1. System returns previous page

Exception N/A

Project Team: 02 Prepared by: All members Page 57 of 112

Page 58: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.3.6 Receive message about new propertyAuthor Huynh Tan PhucUse Case Name Receive message about new propertyActors BuyerDescription When Seller or Admin submit a new property matched with Buyer’s last search, a

message will be sent to Buyer’s email to announce that system has new property match with Buyer’s request

Requirements Buyer had searched at least once time, Seller or Admin submitted a new property match with Buyer’s request

Pre-conditions Buyer had a registered email in system and had searched at least one timePost-conditions Success: receive a message in Buyer’s email address for announcement effect about

new property matched with Buyer’s request and show a link to that propertyBasic flow   Seller or Admin actions:

1. Seller or Admin submitted a new property

System Responses:2. System checks that property is matched with Buyer’s last search or not. If new property matched with Buyer’s request system will send a message content a link to that property to Buyer’s email address for announcement effect about new property matched with Buyer’s request

Alternative flow N/AException N/A

Project Team: 02 Prepared by: All members Page 58 of 112

Page 59: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.3.7 Edit ProfileAuthor Huynh Tan PhucUse Case Name Edit buyer profileActors SellerDescription Buyer edits his/her profileRequirements Buyer must provide his/her valid contact details to update profilePre-conditions Already login into the System as BuyerPost-conditions Success: Buyer ’s information will be updated in the database

Fail: Refill informationBasic flow   Buyer Actions:

1. Buyer clicks ‘Edit Profile’ button located in Buyer Dashboard Menu

3. Buyer changes his/her information :- Change email in ‘Email’ text field [exception1]- Change password in ‘Password’ text field- Retype password to confirm in ‘Confirm Password’ text field [exception2]- Buyer clicks ‘Submit’ button [alternative]

System Response:2. System displays Edit profile page. All field has been loaded with current Buyer’s information in the following control:- ‘Email’ text field- ‘Password’ text field- ‘Confirm password’ text field- ‘Submit’ button- ‘Cancel’ button

4. System checks information [exception3] [exception4]5. System updates the information and displays Buyer Dashboard page with updated information

Alternative flow Buyer Actions:[alternative] Buyer clicks ‘Cancel’ button

System Response:System returns to Buyer page

Exceptions Buyer Actions:[exception1] Buyer provided an invalid email

[exception2] Confirm password does not match with password that Buyer provided

[exception3] 3.1 Buyer changed some information

System Response:1. System displays message to Buyer : ‘Your email is invalid’

2. System displays message to Buyer : ‘Password and confirm password does not match’

3.1 System displays message to notice

Project Team: 02 Prepared by: All members Page 59 of 112

Page 60: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

but left ‘Email’ field blank

3.2 Buyer changed some information but left ‘Password’ field blank

[exception4] New Buyer’s email has been used

Buyer: ‘Please enter email’

3.2 System displays message to notice Buyer: ‘Please enter password’

4. System displays message to Buyer : ‘Email has been used’

5.3.8 LogoutAuthor Huynh Tan PhucUse Case Name LogoutActors Admin, Buyer or SellerDescription Admin, Buyer or Seller wish to logoutRequirements Admin, Buyer or SellerPre-conditions Already login into MySweetHome as Admin, Buyer or SellerPost-conditions Success: logout

Project Team: 02 Prepared by: All members Page 60 of 112

Page 61: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Basic flow   Admin, Buyer or Seller Actions:1. Admin, Buyer or Seller clicks ‘Logout’ button on page

System Responses:2. System allows Admin, Buyer or Seller logout and redirects to Home page

Alternative flow N/AException N/A

5.3.9 Rate SellerAuthor Bui The AnhUse Case Name Rate SellerActors BuyerDescription Buyer wish to rate for SellerRequirements Buyer should choose star rate level on PropertyDetail pagePre-conditions Already login into MySweetHome as BuyerPost-conditions Success: insert rate information into database, display star rate level

Fail: do nothingBasic flow   Buyer Actions:

1. Buyer chooses ‘Star’ rate level on Property Detail page and then clicks ‘Rate’ button

System Responses:2. System show Thank message3. System check [exception]4. System insert rate information on database [exception] with RateDate is current day.5. System calculate rate level6. System change rate level on page.

Alternative flow N/AException Buyer Actions:

[exception1]: Buyer did not click star level

[exception2]: Buyer rate seller twice

System Responses:System displays : ‘Please choose Rate points’

System displays : ‘You have already

Project Team: 02 Prepared by: All members Page 61 of 112

Page 62: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

rated this Seller’

Project Team: 02 Prepared by: All members Page 62 of 112

Page 63: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.4 Directory

5.4.1 Add Directory ServiceAuthor Hieu Trong NguyenUse Case Name Add Directory ServiceActors AdministratorDescription Administrator wish to add a directory service into databaseRequirements Administrator should provide the directory entry’s detailsPre-conditions Already login into MySweetHome as AdministratorPost-conditions Success: Directory service information will be inserted into the database

Fail: Refill informationBasic flow   Administrator Actions:

1. Administrator clicks on the ‘Add Service’ link on the ‘Add Directory Entry’ page or ‘Edit Directory Entry’ page

System Response:2. System opens ‘Add Directory Service’ form (on the current page), with:- ‘Name’ text box- ‘Description’ text box- ‘Directory Entry’ combo box- ‘Submit’ button

Project Team: 02 Prepared by: All members Page 63 of 112

Page 64: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

3. Administrator input the following information to create service for Directory Entry:- Name of the service in ‘Name’ text box (mandatory)- Choose directory entry that will support this service on ‘Directory Entry’ combo box. List of values in this combo box is loaded from ‘Directory Entry’ table.- Description of the service in ‘Description’ text box (mandatory)Then click ‘Submit’ button.[alternative]

- ‘Cancel’ button4. System ensures all the mandatory data is filled, and then stores the service into database, associated with the current entry. System displays a message: ‘Service is created successfully.’[exception]

Alternative flow [alternative] Administrator clicks ‘Cancel’ button to cancel the creation.

System returns to ‘Directory management’ page

Exceptions Administrator Actions: [exception]1. If Administrator leave blank the ‘Name’ text box

2. If Administrator leaves the ‘Description’ field blank

System Response:1. System displays an error message: ‘Name cannot be blank, please enters the name for this service’ above the ‘Create entry service’ form2. System displays an error message: ‘Description cannot be blank, please enters the description for this entry.’ above the ‘Create entry service’ form.

Project Team: 02 Prepared by: All members Page 64 of 112

Page 65: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.4.2 Edit Directory ServiceAuthor Hieu Trong NguyenUse Case Name Edit Directory ServiceActors AdministratorDescription Administrator wish to edit a directory service in databaseRequirements Administrator should provide the directory service’s detailsPre-conditions Already login into MySweetHome as AdministratorPost-conditions Success: Directory service information will be updated into the database

Fail: Refill information

Project Team: 02 Prepared by: All members Page 65 of 112

Page 66: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Basic flow   Administrator Actions:1. Administrator edit the Directory Entry which contains the service needs to be edit.

3. Administrator clicks on the ‘Edit’ button beside the directory entry service he/she wanted to edit.

5. Administrator changes the value in those fields, then clicks ‘Submit’ button. [alternative]

System Response:2. System opens a ‘Edit directory Entry’ page, with a list of submitted directory entry service.

4. System open the ‘Edit directory service’ form on the current page with:- A text box labeled ‘Name’, mandatory, contains current name of the service- A combo box contains the directory entry name. List of values in this combo box is loaded from Directory Entry table.- A multiline text box labeled ‘Description’, mandatory, contains current description of the entry.- A button labeled ‘Submit’- A button labeled ‘Cancel’

6. System ensures the mandatory field is filled; the filled information is valid, then save changes of the entry service into database and displays a message ‘Directory entry service updated successfully.’ on the current page. [exception]

Alternative flow [alternative] Administrator clicks ‘Cancel’ button to cancel the editing

System then hides the Editing form.

Exceptions Administrator Actions: [exception]1. If Administrator leave blank the ‘Name’ text box

2. If Administrator leaves the ‘Description’ field blank

System Response:1. System displays an error message: ‘Name cannot be blank, please enters the name for this service’ above the ‘Edit directory service’ form2. System displays an error message: ‘Description cannot be blank, please enters the description for this service.’ on the ‘Edit directory service’

Project Team: 02 Prepared by: All members Page 66 of 112

Page 67: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.4.3 Delete Directory ServiceAuthor Hieu Trong NguyenUse Case Name Delete Directory ServiceActors AdministratorDescription Administrator wish to delete a directory service in databaseRequirementsPre-conditions Already login into MySweetHome as AdministratorPost-conditions One Directory service information will be delete in the databaseBasic flow   Administrator Actions:

1. Administrator edit the Directory Entry which contains the service needs to be edit.

3. Administrator clicks on the ‘Delete’ link beside the directory service he/she wanted to edit.

System Actions :2. System opens a ‘Edit directory entry’ page, with a list of submitted directory entry service.

4. System displays a confirm message ‘Are you sure to delete this directory service, this action cannot be undone.’ with 2 buttons ‘OK’ and ‘Cancel’.

6. System removes the directory service

Project Team: 02 Prepared by: All members Page 67 of 112

Page 68: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5. Administrator clicks on the ‘OK’ button.

from database and displays a message ‘Directory service deleted.’

Alternative flow [alternative] On the confirm message, administrator decide to cancel the deletion, he/she clicks on the ‘Cancel’ button.

System does nothing to the requested directory entry, redirect administrator to the ‘Directory Management’ page with message ‘Deletion cancelled, no action has been taken.’

Exceptions N/A

5.4.4 Add Directory EntryAuthor Hieu Trong NguyenUse Case Name Add Directory EntryActors AdministratorDescription Administrator wish to add a directory entry into database

Project Team: 02 Prepared by: All members Page 68 of 112

Page 69: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Requirements Administrator should provide the directory entry’s detailsPre-conditions Already login into MySweetHome as AdministratorPost-conditions Success: Directory entry information will be inserted into the database

Fail: Refill informationBasic flow   Administrator Actions:

1. Administrator clicks on the ‘Directory’ link on the sidebar

3. Administrator clicks on the ‘Add new directory entry’ link.

5. Administrator fills in those fields, then clicks ‘Submit’ button.[alternative]

System Response:2. System opens a ‘Directory management’ page, with an ‘Add new directory entry’ link.

4. System open the ‘Add new directory entry’ page with:- a text box labeled ‘Name’, mandatory- a combo box that contains list of directory category loaded from ‘Directory Category’ table- a multiline text box labeled ‘Description’, mandatory- a upload field labeled ‘Image’, optional- a multiline text box labeled ‘Address’, mandatory- a text box labeled ‘E-mail address’, optional- a text box labeled ‘Homepage’, optional- a button labeled ‘Submit’- a button labeled ‘Cancel’

6. System ensures the mandatory field is filled; the filled information is valid, then stores the entry into database and displays a message ‘Directory entry submitted successfully.’ on the just created directory entry. [exception]

Alternative flow 1.The optional fields can be leave blank 2.[alternative] Administrator clicks ‘Cancel’ button

2.System returns to ‘Directory management’ page

Exceptions Administrator Actions: [exception]1. If Administrator leave blank the ‘Name’ text box

2. If Administrator leaves the ‘Description’ field blank

3. If Administrator leaves the ‘Address’

System Response:1. System displays an error message: ‘Name cannot be blank, please enters the name for this entry’ on the ‘Add new directory entry’2. System displays an error message: ‘Description cannot be blank, please enters the description for this entry.’3. System displays an error message:

Project Team: 02 Prepared by: All members Page 69 of 112

Page 70: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

field blank

4. If the ‘E-mail address’ is entered but the value is an invalid e-mail

5. If the ‘Homepage’ field is entered, but the value is an invalid URL

‘Address cannot be blank, please enters the address for this entry.’4. System displays an error message: ‘The entered e-mail is invalid, please enter a valid e-mail address.’5. System displays an error message: ‘The entered Homepage is invalid, please enter a valid URL.’

5.4.5 Edit Directory EntryAuthor Hieu Trong NguyenUse Case Name Edit Directory EntryActors AdministratorDescription Administrator wish to edit a directory entry in databaseRequirements Administrator should provide the directory entry’s detailsPre-conditions Already login into MySweetHome as AdministratorPost-conditions Success: Directory entry information will be updated into the database

Fail: Refill informationBasic flow   Administrator Actions: System Response:

Project Team: 02 Prepared by: All members Page 70 of 112

Page 71: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

1. Administrator clicks on the ‘Directory’ link on the sidebar

3. Administrator clicks on the ‘Edit’ link beside the directory entry he/she wanted to edit.

5. Administrator changes the value in those fields, then clicks ‘Submit’ button. [alternative]

2. System opens a ‘Directory management’ page, with a list of submitted directory entry.

4. System open the ‘Edit directory entry’ page with:- A text box labeled ‘Name’, mandatory, contains current name of the entry- A multiline text box labeled ‘Description’, mandatory, contains current description of the entry.- A combo box labeled ‘Directory category’ contains list of directory category loaded from ‘Directory Category’ table.- An upload field labeled ‘Image’, optional; beside it is an image, which is the current image of the entry or ‘No Image’ image if no image is uploaded.- A multiline text box labeled ‘Address’, mandatory, contains the current address of the entry.- A text box labeled ‘E-mail address’, optional, contains current e-mail address of the entry or blank if no e-mail is submitted.- A text box labeled ‘Homepage’, optional, contains current homepage of the entry or blank if no homepage is submitted.- A button labeled ‘Submit’6. System ensures the mandatory field is filled; the filled information is valid, then save changes of the entry into database and displays a message ‘Directory entry updated successfully.’ on the just updated directory entry. [exception]

Alternative flow 1.The optional fields can be leave blank 2.[alternative] Administrator clicks ‘Cancel’ button

2.System returns to ‘Directory management’ page

Exceptions Administrator Actions: [exception]1. If Administrator leave blank the ‘Name’ text box

System Response:1. System displays an error message: ‘Name cannot be blank, please enters the name for this entry’ on the ‘Add new directory entry’

Project Team: 02 Prepared by: All members Page 71 of 112

Page 72: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

2. If Administrator leaves the ‘Description’ field blank

3. If Administrator leaves the ‘Address’ field blank

4. If the ‘E-mail address’ is entered but the value is an invalid e-mail

5. If the ‘Homepage’ field is entered, but the value is an invalid URL

2. System displays an error message: ‘Description cannot be blank, please enters the description for this entry.’3. System displays an error message: ‘Address cannot be blank, please enters the address for this entry.’4. System displays an error message: ‘The entered e-mail is invalid, please enter a valid e-mail address.’5. System displays an error message: ‘The entered Homepage is invalid, please enter a valid URL.’

5.4.6 Delete Directory EntryAuthor Hieu Trong NguyenUse Case Name Edit Directory EntryActors AdministratorDescription Administrator wish to delete a directory entry in databaseRequirements

Project Team: 02 Prepared by: All members Page 72 of 112

Page 73: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Pre-conditions Already login into MySweetHome as AdministratorPost-conditions One Directory entry information will be delete in the databaseBasic flow   Administrator Actions:

1. Administrator clicks on the ‘Directory’ link on the sidebar

3. Administrator clicks on the ‘Delete’ link beside the directory entry he/she wanted to edit.

5. Administrator clicks on the ‘OK’ button.[alternative]

System Response:2. System opens a ‘Directory management’ page, with a list of submitted directory entry.

4. System displays a confirm message ‘Are you sure to delete this directory entry, this action cannot be undone.’ with 2 buttons ‘OK’ and ‘Cancel’.

6. System removes the directory entry from database and display a message ‘Directory entry deleted.’ then redirect Administrator to ‘Directory Management’ page

Alternative flow [alternative] On the confirm message, administrator decide to cancel the deletion, he/she clicks on the ‘Cancel’ button.

System does nothing to the requested directory entry, redirect administrator to the ‘Directory Management’ page with message ‘Deletion cancelled, no action has been taken.’

Exceptions N/A

Project Team: 02 Prepared by: All members Page 73 of 112

Page 74: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.4.7 Add Directory CategoryAuthor Hieu Trong NguyenUse Case Name Add Directory CategoryActors AdministratorDescription Administrator wish to add a directory category into databaseRequirements Administrator should provide the directory category’s detailsPre-conditions Already login into MySweetHome as AdministratorPost-conditions Success: Directory category information will be inserted into the database

Fail: Refill informationBasic flow   Administrator Actions:

1. Administrator clicks on the ‘Directory Category’ link on the ‘Directory management’ page

System Response:2. System opens ‘Directory Category’ page with:- ‘Name’ text box- ‘Submit’ button- ‘Cancel’ button- ‘Category List’ grid table. Every row

Project Team: 02 Prepared by: All members Page 74 of 112

Page 75: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

3. Administrator input the following information to create category for Directory Entry:- Name of the service in ‘Name’ text box (mandatory)Then click ‘Submit’ button.[alternative]

contains 2 buttons (‘Edit’ and ‘Delete’) in it.4. System ensures all the mandatory data is filled, and then stores the category into database. System displays a message: ‘Directory Category is created successfully.’ The ‘Category List’ grid table will be updated with new category has just been created.[exception]

Alternative flow [alternative] Administrator clicks ‘Cancel’ button to cancel the creation.

System returns to ‘Directory management’ page

Exceptions Administrator Actions: [exception]1. If Administrator leave blank the ‘Name’ text box

System Response:1. System displays an error message: ‘Name cannot be blank, please enters the name for this category’ above the ‘Create entry category’ form

5.4.8 Edit Directory CategoryAuthor Hieu Trong Nguyen

Project Team: 02 Prepared by: All members Page 75 of 112

Page 76: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Use Case Name Edit Directory CategoryActors AdministratorDescription Administrator wish to edit a directory category in databaseRequirements Administrator should provide the directory category’s detailsPre-conditions Already login into MySweetHome as AdministratorPost-conditions Success: Directory category information will be updated into the database

Fail: Refill informationBasic flow   Administrator Actions:

1. Administrator clicks on the ‘Directory Category’ link on the ‘Directory management’ page

3. Administrator clicks on the ‘Edit’ button beside the directory entry category he/she wanted to edit in the ‘Category List’ grid table.

5. Administrator changes the value in those fields, then clicks ‘Submit’ button. [alternative]

System Response:2. System displays ‘Directory category’ page with:- ‘Name’ text box- ‘Submit’ button- ‘Cancel’ button-‘Category List’ grid table. Every rows contain 2 button(‘Edit’ and ‘Delete’) in it. 4. System changes the row contains the category into editable cells .’Edit’ button changes to ‘Submit’ button. ‘Delete’ button changes to ‘Cancel’ button.

6. System ensures the mandatory field is filled; the filled information is valid, then save changes of the entry category into database and displays a message ‘Directory entry category updated successfully.’ on the current page. [exception]

Alternative flow [alternative] Administrator clicks ‘Cancel’ button to cancel the editing

System then hides the Editing form.

Exceptions Administrator Actions: [exception]1. If Administrator leave blank the ‘Name’ text box

System Response:1. System displays an error message: ‘Name cannot be blank, please enters the name for this category’ above the ‘Edit directory category’ form

Project Team: 02 Prepared by: All members Page 76 of 112

Page 77: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.4.9 Delete Directory CategoryAuthor Hieu Trong NguyenUse Case Name Delete Directory CategoryActors AdministratorDescription Administrator wish to delete a directory category in databaseRequirementsPre-conditions Already login into MySweetHome as AdministratorPost-conditions One Directory category information will be delete in the databaseBasic flow   Administrator Actions:

1. Administrator clicks on the ‘Directory Category’ link on the ‘Directory management’ page

3. Administrator clicks on the ‘Delete’ link beside the directory category he/she wanted to delete.

System Actions :2. System opens a ‘Directory category’ page, with a list of submitted directory entry category.

4. System displays a confirm message ‘Are you sure to delete this directory category, this action cannot be undone.’ with 2 buttons ‘OK’ and ‘Cancel’.

Project Team: 02 Prepared by: All members Page 77 of 112

Page 78: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5. Administrator clicks on the ‘OK’ button.[alternative]

6. System removes the directory category from database and displays a message ‘Directory category deleted.’

Alternative flow [alternative] On the confirm message, administrator decide to cancel the deletion, he/she clicks on the ‘Cancel’ button.

System does nothing to the requested directory entry, redirect administrator to the ‘Directory Management’ page with message ‘Deletion cancelled, no action has been taken.’

Exceptions N/A

Project Team: 02 Prepared by: All members Page 78 of 112

Page 79: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.5 FAQ

5.5.1 View FAQ entryAuthor Bui The Anh + Nguyen Quoc Quynh Khoi + Huynh Tan PhucUse case name View FAQ EntryActor User(Buyer, Seller, Administrator)Description Allow user to view the submitted FAQ entryRequirementPre-condition N/APost-condition N/ABasic path 1. User clicks on the ‘FAQ’ links 2. System displays the ‘FAQ’

page with a list of Question and Answer

Alternate path N/AException path 1. If no FAQ entry is existed, System displays a page with

message: ‘No item here.’

Project Team: 02 Prepared by: All members Page 79 of 112

Page 80: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.5.2 Add FAQ entryAuthor Bui The Anh + Nguyen Quoc Quynh Khoi + Huynh Tan PhucUse case name Add FAQ entryActor AdministratorDescription A CRUD operating for FAQ entryRequirementPre-condition Logged in as AdministratorPost-condition New FAQ added successfullyBasic path 1. Administrator clicks on the

‘FAQ’ links on the side bar.

3. Administrator clicks on ‘Add new FAQ entry’ link.

5. Administrator fill the mandatory fields, then clicks ‘Submit’ button

2. System opens the ‘FAQ Management’ page with an ‘Add new FAQ entry’ link.

4. System opens the ‘Add FAQ entry’ page, with the following fields:- A text box labeled ‘Question’, mandatory.- A text box labeled ‘Answer’, mandatory.- A ‘Submit’ button.

6. System ensures all the mandatory fields is filled, and then stores the new entry into database, redirect Administrator to the newly created FAQ entry with a message: ‘New FAQ entry is created successfully.’

Alternate path N/AException path 1. If Administrator leave blank System displays an error

Project Team: 02 Prepared by: All members Page 80 of 112

Page 81: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

the ‘Question’ text box,

1. If Administrator leave blank the ‘Answer’ text box,

message: ‘Question cannot be blank, please enters the question for this FAQ entry’ above the ‘Add FAQ entry’ form

System displays an error message: ‘Answer cannot be blank, please enters the answer for this FAQ entry’ above the ‘Add FAQ entry’ form

5.5.3 Edit FAQ entryAuthor Bui The Anh + Nguyen Quoc Quynh Khoi + Huynh Tan PhucUse case name Edit FAQ entryActor AdministratorDescription A CRUD operating for FAQ entryRequirementPre-condition Logged in as AdministratorPost-condition Edited FAQ information changes according what administrator enteredBasic path 1. Administrator clicks on the

‘FAQ’ link on the sidebar2. System opens a ‘FAQ management’ page, with a list of submitted FAQ entries.

Project Team: 02 Prepared by: All members Page 81 of 112

Page 82: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

3. Administrator clicks on the ‘Edit’ link beside the FAQ entry he/she wanted to edit.

5. Administrator changes the value in those fields, then clicks ‘Submit’ button.

4. System open the ‘Edit FAQ entry’ page with:- A mutiline text field labeled ‘Question’, mandatory.- A multiline text field labeled ‘Answer’, mandatory.- A button labeled ‘Submit’

6. System ensures the mandatory field is filled; then save changes of the entry into database and displays a message ‘FAQ entry updated successfully.’ on the just updated FAQ entry.

Alternate path N/AException path 1. Administrator leaves the

Question textfield blank

2. Administrator leaves the Answer textfield blank

System displays an error message: ‘Question cannot be blank, please enters the question for this FAQ entry’ above the ‘Add FAQ entry’ form

System displays an error message: ‘Answer cannot be blank, please enters the answer for this FAQ entry’ above the ‘Add FAQ entry’ form

Project Team: 02 Prepared by: All members Page 82 of 112

Page 83: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.5.4 Delete FAQ entryAuthor Bui The Anh + Nguyen Quoc Quynh Khoi + Huynh Tan PhucUse case name Delete FAQ entryActor AdministratorDescription A CRUD for FAQ entryRequirementPre-condition Logged in as AdministratorPost-condition The chosen FAQ entry is deletedBasic path 1. Administrator clicks on the

‘FAQ’ link on the sidebar

3. Administrator clicks on the ‘Delete’ link beside the FAQ entry he/she wanted to edit.

5. Administrator clicks on the

2. System opens a ‘FAQ management’ page, with a list of submitted FAQ entries.

4. System displays a confirm message ‘Are you sure to delete this FAQ entry, this action cannot be undone.’ with 2 buttons ‘OK’ and ‘Cancel’.

6. System removes the FAQ entry

Project Team: 02 Prepared by: All members Page 83 of 112

Page 84: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

‘OK’ button. from database and display a message ‘FAQ entry deleted.’ then redirect Administrator to ‘FAQ Management’ page

Alternate path 1. On the confirm message, administrator decide to cancel the deletion, he/she clicks on the ‘Cancel’ button.

System does nothing to the requested directory entry, redirect administrator to the ‘FAQ Management’ page with message ‘Deletion cancelled, no action has been taken.’

Exception path N/A

Project Team: 02 Prepared by: All members Page 84 of 112

Page 85: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.6 Administrative tools

5.6.1 Suspend any property

Author Nguyen Quoc Quynh KhoiUsecase name Suspend any propertyActor AdministratorDescription In case the property is outdated, eg: the house is sold, but not expires

administrator can use this feature to manual suspends those properties to ensure the data is fresh.

RequirementsPre-condition Logged in as AdministratorPost-condition The chosen property is suspended and not shows on property list or search

result.Basic path 1. Administrator clicks on the

‘Suspend property’ link on the sidebar.

3. Administrator fills the ‘Property ID’ textbox with the ID of the propery he/she would like to suspend, then clicks ‘Search’ button

5. Administrator clicks on the

2. System open the ‘Suspend property’ page with an ‘Property ID’ text field, and a button labeled ‘Search’

4. System shows the detail of the property having that ID, with a ‘Suspend’ button.

6. System displays a confirm message: ‘Are you sure to

Project Team: 02 Prepared by: All members Page 85 of 112

Page 86: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

‘Suspend’ button.

7. Administrator clicks on the ‘OK’ button. [Alternative 1]

suspend this property?’ with 2 buttons: ‘OK’ and ‘Cancel’.

8. System ensure the ‘Property ID’ text field is filled in, and the property with that ID is existed [exception], system set status of the property to ‘Suspended’ and display a message to administrator: ‘The property is suspended successfully.’ on the detail page of the suspended property.

Alternate path 1. [Alternative 1]: administrator clicks on ‘Cancel’ button

System does nothing and redirect back to ‘Suspend property’ page.

Exception path [exception]1. If administrator doesn’t input anything into the ‘Property ID’ text field

2. If the administrator enters a not existed Property ID into the ‘Property ID’ text field

System displays an error message: ‘Please enter the Property ID of the property you would like to suspend.’ on the ‘Suspend property’ page.

System displays an error message: ‘The requested property cannot be found. Please enters another ID.’ on the ‘Suspend property’ page.

Project Team: 02 Prepared by: All members Page 86 of 112

Page 87: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.6.2 Block userAuthor Nguyen Quoc Quynh KhoiUsecase name Block userActor AdministratorDescription Allow Administrator the right to block an user, it may use in case we needs

to block someone because they violate our term and conditionRequirementsPre-condition Logged in as AdministratorPost-condition The user who Administrator would like to block is blocked; he cannot login

nor register another user with that email.Basic path 1. Administrator clicks on the

‘Block user’ link on the sidebar

3. Administrator fill e-mail of the user, click ‘Block’

2. System open the ‘Block user’ page with an ‘E-mail’ textbox, and button labeled ‘Block’

4. System retrieve the user with the same email as entered [exception], and then set the status of the account to

Project Team: 02 Prepared by: All members Page 87 of 112

Page 88: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

‘Blocked’, and display message: ‘User with e-mail <[email protected]> is blocked.’ and redirect administrator to the blocked users list.

Alternate path N/AException path [exception]

1. If administrator don’t input into the ‘E-mail’ textbox, but click on the ‘Block’ button

2. If administrator enters an invalid e-mail into the ‘E-mail’ textbox,

3. If administrator enters a not existed e-mail into the ‘E-mail’ text field,

System display an error message: ‘Please enter the e-mail which you would like to block.’ on the ‘Block user’ page.

System displays an error message: ‘The entered e-mail is invalid, please enter a valid e-mail to continue.’ on the ‘Block user’ page.

System displays an error message: ‘The entered e-mail is not existed.’ on the ‘Block user’ page.

5.6.3 Unblock userAuthor Nguyen Quoc Quynh KhoiUsecase name Unblock user

Project Team: 02 Prepared by: All members Page 88 of 112

Page 89: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Actor AdministratorDescription Allow Administrator to unblock an blocked userRequirementsPre-condition Logged in as AdministratorPost-condition Choosed blocked user is unblocked and can loginBasic path 1. Administrator clicks on the

‘Blocked user’ link on the sidebar

3. Administrator clicks on ‘Unblock’ button next to the user he would like to unblock.

2. System open the ‘Blocked user’ page with a list of blocked user with a button named ‘Unblock’ next to each user

4. System set the status of user to ‘Active’ then displays a message: ‘User <[email protected]> is unblocked successfully’.

Alternate path N/AException path N/A

5.6.4 Link between house on sale and directoryAuthor Nguyen Quoc Quynh KhoiUse case name Link between house on sale and directoryActor Administrator

Project Team: 02 Prepared by: All members Page 89 of 112

Page 90: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Description Allow Administrator link a house on sale with some directory entry, the purpose is increase the user experience on MySweetHome site

Requirement - Directory entry existed (at least 1)- House on sale existed (at least 1)

Pre-condition Logged in as AdministratorPost-condition House on sale has the reference to selected directory entryBasic path 1. Administrator clicks on the

‘Link property’ link on the sidebar

3. Administrator can choose a “Filter” to suite his needs.

5. Administrator clicks on a house on sale which he would like to modify the link with directory

7. Administrator choose the right “Architect”, “Builder”, “Interior designer” for the house then clicks “Link”

2. System open the ‘Link property’ page with a list of submitted house on sale (not suspended), a combo box “Filter” with 3 options: “All”, “Not suspended” (by default) and “Not linked”.

4. System refresh the list of submitted house on sale to suite administrator’s choice of “Filter”

6. System open a “House on sale-directory link” form, with some combo box named: “Architect”, “Builder”, “Interior designer”, …; each combo box contains the list of appropriated directory entry.8. System then link the house on sale and the choosed directory entry then closes the form, turn back administrator to the “Link property”page with the submitted house on sale.

Alternate path N/AException path 1. If the directory is empty, system displays an error message:

“Directory is empty, nothing to link, please add some entry to the directory first” with the “add some entry” is a hyperlink to the “Add directory entry” form.

Project Team: 02 Prepared by: All members Page 90 of 112

Page 91: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.6.5 Add Bank loan policyAuthor Nguyen Quoc Quynh KhoiUser Case Name Add bank loan policyActor AdministratorDescription A CRUD operating for Bank loan policyPre-Condition Logged in as AdministratorPost-Condition New bank loan policy added successful

Fail: Re-enter bank policy informationBasic path 1. Administrator clicks on the

‘Bank policy’ link on the sidebar

3. Administrator clicks on the ‘Add new bank policy’ link.

2. System opens a ‘Bank policy’ page, with an ‘Add new bank policy’ link.

4. System open the ‘Add new bank policy’ page with:- a text field labeled ‘Bank’, mandatory- a textfield labeled ‘Minimum price to apply (USD)’, mandatory- a textfield labeled ‘Maximum price to apply (USD)’, mandatory

Project Team: 02 Prepared by: All members Page 91 of 112

Page 92: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5. Administrator fills in those fields, then clicks ‘Submit’ button.

- a textfield labeled ‘Percentage of loan’, mandatory- a textfield labeled ‘Interests each year’, mandatory- a textfield labeled ‘Loan duration (year)’, mandatory- a button labeled ‘Submit’

6. System ensures the mandatory field is filled; the filled information is valid, then stores the entry into database and displays a message ‘New bank policy has been added successfully.’ on ‘Bank policy’ page.

Alternate path N/AException path 10. If Administrator enters a non-

numeric data into the ‘Percentage of loan’ textfield

11. If Administrator enters a number lesser than 0 or greater than 100

12. If Administrator leaves the ‘Interests per year’ field blank

13. If Administrator enters a non-numeric data into the ‘Interests per year’ textfield

14. If Administrator enters a negative number

15. If Administrator leaves the ‘Loan duration (year)’ field blank

System displays an error message: ‘Percentage of loan must be numeric only, please correct it then re-submit’.

System displays an error message: ‘Percentage of loan must be greater than 0% and lesser or equals 100%, please correct it and re-submit.’

System displays an error message: ‘Interests per year cannot be blank, please enters the interests per year for this policy.’

System displays an error message: ‘Interests per year must be numeric only, please correct it then re-submit’.

System displays an error message: ‘Interests per year must be greater or equals 0%, please correct it and re-submit.’

System displays an error message: ‘Loan duration cannot be blank, please enters the loan duration for this policy.’

Project Team: 02 Prepared by: All members Page 92 of 112

Page 93: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

16. If Administrator enters a non-numeric data into the ‘Loan duration’ textfield

17. If Administrator enters a negative number

System displays an error message: ‘Loan duration must be numeric only, please correct it then re-submit’.

System displays an error message: ‘Loan duration must be 1 year or above, please correct it and re-submit.’

5.6.6 Edit Bank loan policyAuthor Nguyen Quoc Quynh KhoiUser case name Edit Bank loan policyActor AdministratorDescription a CRUD operating for Bank loan policyRequirements Existed at least 1 bank policy to be editPre-condition Logged in as AdministratorPost-condition The edited bank policy has same information as Administrator entered

Fail: Re-enter bank policy informationBasic path 1. Administrator clicks on the 2. System opens a ‘Bank policy’

Project Team: 02 Prepared by: All members Page 93 of 112

Page 94: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

‘Bank policy’ link on the sidebar

3. Administrator clicks on the ‘Edit’ link next to the bank policy he would like to edit.

5. Administrator changes the data in those fields to suite the new updated data, then clicks ‘Submit’ button.

page, with a list of submitted bank policy, each submitted bank policy has the “Edit” link next to it.

4. System open the ‘Edit bank policy’ page with filled data in the following field:- a text field labeled ‘Bank’, mandatory- a textfield labeled ‘Minimum price to apply (USD)’, mandatory- a textfield labeled ‘Maximum price to apply (USD)’, mandatory- a textfield labeled ‘Percentage of loan’, mandatory- a textfield labeled ‘Interests each year’, mandatory- a textfield labeled ‘Loan duration (year)’, mandatory- a button labeled ‘Submit’

6. System ensures the mandatory field is filled; the filled information is valid, then stores the entry into database and displays a message ‘Your bank policy has been changes successfully.’ on ‘Bank policy’ page.

Alternate path N/AException path 1. If Administrator leaves blank

the ‘Bank’ textfield

2. If Administrator leaves the ‘Minimum price to apply (USD)’ field blank,

3. If Administrator enters a non-numeric data into the ‘Minimum price to apply (USD)’ textfield,

System displays an error message: ‘Bank name cannot be blank, please enters the name for the bank’ on the ‘Add new bank policy’ page.

System displays an error message: ‘Minimum price cannot be blank, please enters the minimum price for this policy.’

System displays an error message: ‘Minimum price must be numeric only, please correct it

Project Team: 02 Prepared by: All members Page 94 of 112

Page 95: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

4. If Administrator enters a negative number into the ‘Minimum price to apply (USD)’ textfield,

5. If Administrator leaves the ‘Maximum price to apply (USD)’ field blank,

6. If Administrator enters a non-numeric data into the ‘Maximum price to apply (USD)’ textfield,

7. If Administrator enters a negative number into the ‘Maximum price to apply (USD)’ textfield,

8. If Administrator enters the maximum price lesser the minimum price,

9. If Administrator leaves the ‘Percentage of loan’ field blank,

10. If Administrator enters a non-numeric data into the ‘Percentage of loan’ textfield,

11. If Administrator enters a number lesser than 0 or greater than 100,

12. If Administrator leaves the ‘Interests per year’ field blank,

then re-submit’.

System displays an error message: ‘Minimum price must be greater than 0, please correct it then re-submit’.

System displays an error message: ‘Maximum price cannot be blank, please enters the maximum price for this policy.’

System displays an error message: ‘Maximum price must be numeric only, please correct it then re-submit’.

System displays an error message: ‘Maximum price must be greater than 0, please correct it then re-submit’.

System displays an error message: ‘Maximum price must greater than minimum price, please correct it then re-submit’.

System displays an error message: ‘Percentage of loan cannot be blank, please enters the percentage of loan for this policy.’

System displays an error message: ‘Percentage of loan must be numeric only, please correct it then re-submit’.

System displays an error message: ‘Percentage of loan must be greater than 0% and lesser or equals 100%, please correct it and re-submit.’

System displays an error message: ‘Interests per year cannot be blank, please enters the

Project Team: 02 Prepared by: All members Page 95 of 112

Page 96: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

13. If Administrator enters a non-numeric data into the ‘Interests per year’ textfield,

14. If Administrator enters a negative number,

15. If Administrator leaves the ‘Loan duration (year)’ field blank,

16. If Administrator enters a non-numeric data into the ‘Loan duration’ textfield,

17. If Administrator enters a negative number,

interests per year for this policy.’

System displays an error message: ‘Interests per year must be numeric only, please correct it then re-submit’.

System displays an error message: ‘Interests per year must be greater or equals 0%, please correct it and re-submit.’

System displays an error message: ‘Loan duration cannot be blank, please enters the loan duration for this policy.’

System displays an error message: ‘Loan duration must be numeric only, please correct it then re-submit’.

System displays an error message: ‘Loan duration must be 1 year or above, please correct it and re-submit.’

Project Team: 02 Prepared by: All members Page 96 of 112

Page 97: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

5.6.7 Delete Bank loan policyAuthor Nguyen Quoc Quynh KhoiUse case name Delete Bank loan policyActor AdministratorDescription A CRUD operating for Bank policyRequirementsPre-condition Logged in as administratorPost-condition Bank Policy is deleted successfully

OR user cancel the deletionBasic flow 1. Administrator clicks on the

‘Bank policy’ link on the sidebar

3. Administrator clicks on the ‘Delete’ link next to the bank policy he/she wanted to delete.

5. Administrator clicks on the

2. System opens a ‘Bank policy’ page, with a list of submitted directory entry, each policy has a ‘Delete’ link next to it.

4. System displays a confirm message ‘Are you sure to delete this bank policy, this action cannot be undone.’ with 2 buttons ‘OK’ and ‘Cancel’.

6. System removes the bank

Project Team: 02 Prepared by: All members Page 97 of 112

Page 98: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

‘OK’ button. [alternative] policy from database and display a message ‘Bank policy deleted.’ then redirect Administrator to ‘Bank policy’ page

Alternate flow 1. [alternative] On the confirm message, administrator decide to cancel the deletion, he/she clicks on the ‘Cancel’ button.

System does nothing to the requested directory entry, redirect administrator to the ‘Bank policy’ page with message ‘Deletion cancelled, no action has been taken.’

Exception path N/A

Project Team: 02 Prepared by: All members Page 98 of 112

Page 99: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

6 Entity Relationship Diagram

Project Team: 02 Prepared by: All members Page 99 of 112

Page 100: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

7 Database Relationship Diagram

8 Table definitionNote:

+: validate and check constraint- : not validate, don’t care

Project Team: 02 Prepared by: All members Page 100 of 112

Page 101: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

8.1 UsersThis table stores all information about user, both Buyer and Seller

Field name Data type Null Default Value

Table-ref field

Key Description

UID int(10) No PK User ID, auto generate.

Email varchar(50) No Email of user, this is also the login name of user

Password varchar(32) No MD5 hash of user’s password

Status int(1) No 1/0 - Active/Blocked user

sAddress varchar(200) Yes Address of user (especially seller)

sPhone varchar(20) Yes Phone of user (especially seller)

sName varchar(50) Yes Full name of user (especially seller)

UserType varchar(6) No ‘Buyer’ or ‘Seller’, type of user

Constraint: Email must an email format type. sPhone must be positive number.

Name Add Delete UpdateUsers +

(Email, sPhone)- +

(Email, sPhone)

8.2 SearchQueriesThis table stores all search history of Buyer.

Field name Data type Null Default Value

Table-ref-field

Key Description

QID int(10) PK Query ID. Primary key

UID int(10) Users.UID FK User ID, FK of the User table, only accept User who is Buyer

TypeOfSearch int(1) 1/2/3 – House on Sale/House on rental/Accommodation on rental as paying guest

Project Team: 02 Prepared by: All members Page 101 of 112

Page 102: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

SquareFootage int(1) 1/2/3/4/5/6 – ‘<50’, ‘50<= and <100’, ‘100<= and <200’, ‘200<= and <500’, ‘>=500’, ‘Any’

City varchar(50) Search for property in city

Street varchar(100) Search for property in Street

NumberOfBathroom int(1) 1/2/3/4/5/6 – ‘1 or more’, ‘2 or more’, ‘3 or more’, ‘4 or more’, ‘5 or more’ and ‘Any’

NumberOfBedroom int(1) 1/2/3/4/5/6 – ‘1 or more’, ‘2 or more’, ‘3 or more’, ‘4 or more’, ‘5 or more’ and ‘Any’

TypeofProperty varchar(50) Resident Land, Commercial, Condominium, Townhouse, Multi-unit dwelling, All

MinimumPrice real(10,2) Minimum price for House on Sale search

MaximumPrice real(10,2) Maximum price for House on Sale search

MinimumDeposit real(10,2) Minimum deposit for House on Rental/Accommodation on Rental as Paying Guest

MaximumDeposit real(10,2) Maximum deposit for House on Rental/Accommodation on Rental as Paying Guest

MinimumRent real(10,2) Minimum rent price for House on Rental/Accommodation on Rental as Paying Guest

Project Team: 02 Prepared by: All members Page 102 of 112

Page 103: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

MaximumRent real(10,2) Maximum rent price for House on Rental/Accommodation on Rental as Paying Guest

Constraint: UID must exist. Number of bathroom, Number of bedroom, SquareFootage, MinimumPrice,

MaximumPrice, MinimumDeposit, MaximumDeposit, MinimumRent, and MaximumRent must be positive number.Name Add Delete Update

SearchQueries +(UID, MinimumPrice,

MaximumPrice, MinimumDeposit , MaximumDeposit,

MinimumRent, MaximumRent)

- N/A

8.3 PropertiesThis table is used to store house‘s properties. System will save the house’s properties which are given by seller. Data in this table will be used to present details of the house searched by buyer. Seller also can update these properties and suspend them.

Field name Data type Null

Default Value

Table-ref-field

Key Description

PID int(10) No PK Property ID, auto generateUID int(10) No Users.

UIDFK User ID, FK of the User

table, only accept user who is Seller

TypeOfSubmission int(1) No 1/2/3 - House on Sale/House on Rental/Accommodation on Rental as Paying Guest

Image varchar(50)

Yes Path of house’s image, stored on server

City nvarchar(20)

No House’s city name

Street nvarchar(50)

No House’s address

NumberOfBathroom int Yes Number of bathroomNumberOfBedroom int Yes Number of bedroomSquareFootage real Yes House‘s Square (m2)TypeOfProperty varchar(20

)Yes Resident Land,

Commercial,

Project Team: 02 Prepared by: All members Page 103 of 112

Page 104: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Condominium, Townhouse, Multi-unit dwelling

ExtraFacilitiesAvailable

int(1) Yes 1/0 – Yes/No

ModesOfTransport nvarchar(50)

Yes Train, bus, motorbike …

WithFurniture int(1) Yes 1/0 – Yes/NoModeOfPayment varchar(50

)No Cash, master card, visa,

paypal ….ContactName nvarchar(5

0)Yes Name of the contact

ContactAddress nvarchar(50)

Yes Address of the contact

ContactPhone varchar(15)

Yes Phone of the contact

ContactEmail varchar(50)

No Email of the contact

sPrice real(10,2) Yes Sell price for House on sale

rDeposit real(10,2) Yes Rent deposit for House on rental, accommodation on rental as Paying guest

rRent real(10,2) Yes Rent price per month for House on rental, accommodation on rental as Paying guest

Negotiable int(1) Yes 1/0 - Yes/NoSubmitDate datetime(8

)No Current

dateThe day when the property is submitted(format: mm/dd/yyyy)

ExpiredDate datetime(8)

No The day when the property expired (format : mm/dd/yyyy)

Suspended int(1) No 0 1/0 – Yes/No Constraint:

Submit date < Expired date Number of bathroom, Number of bedroom, SquareFootage, sPrice, rDeposit, rPrice must

be positive numberName Add Delete Update

Properties +(UID,SubmitDate,ExpiredDate,

NumberOfBathroom, NumberOfBedroom,

SquareFootage, sPrice, rDeposit, rPrice)

- +(UID,SubmitDate,Expi

redDate, NumberOfBathroom, NumberOfBedroom,

SquareFootage, sPrice,

Project Team: 02 Prepared by: All members Page 104 of 112

Page 105: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

rDeposit, rPrice)

8.4 VotesThis table stores the vote score for Seller, also store who votes

Field name Data type Null Default Value

Table-ref-field

Key Description

VID int(10) No PK Vote ID, Primary keyVoteFrom int(10) No Users.UID FK Who vote?VoteTo int(10) No Users.UID FK Vote for who?VoteDate datetime No Current

dayVote date

VotePoint int(10) No Vote PointConstraint:

UID must exist. VoteFrom,VoteTo do not duplicated

Name Add Delete UpdateVotes

VoteFrom

VoteTo

VoteFrom,VoteTo

+Users.UID must

existedUsers.UID must

existedUnique,Do not

duplicated

- +Users.UID must

existedUsers.UID must

existedUnique,Do not

duplicated

8.5 DirectoryCategoryThis table stores all categories of the directory, eg:

Property Service Provider Broker …

Field name Data type Null

Default Value

Table-ref-field

Key Description

DCID int(10) No PK Directory Category ID, Primary key

Name varchar(100) No Name of the category (Property Service Provider, Broker, …)

Total int(10) Yes Total entry in this category

IsDeleted int(1) No 0 1/0 – Yes/NoConstraint:

Total must be integer

Name Add Delete UpdateDirectoryCategory +

(Total)- +

(Total)

Project Team: 02 Prepared by: All members Page 105 of 112

Page 106: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

8.6 DirectoryEntryThis table stores all entry of the directory, and classified by category.Field name Data type Null Default

ValueTable-ref-field Ke

yDescription

DEID int(10) No PK Directory Entry ID. Primary Key

DCID int(10) No DirectoryCategory.DCID

FK Directory Category ID, FK of DirectoryCategory table

Name varchar(100) No Name of the entry (company name, for example)

Description varchar(1000) No Description of the entry

Address varchar(200) No Address of the company entry

Phone varchar(20) Yes Phone of the company

Image varchar(300) Yes Image (logo)Email varchar(100) Yes E-mail of the entry

(path to the image uploaded on server)

Homepage varchar(300) Yes Homepage of the entry

IsDeleted int(1) No 0 1/0 – Yes/NoConstraint:

Name Add Delete UpdateDirectoryEntry +

(DCID)- +

(DCID)

8.7 DirectoryServiceThis table stores all service of the each directory entry, usually use for Property Service ProviderField name Data type Null Defaul

t ValueTable-

ref-fieldKey Description

DSID int(10) No PK Directory Service ID. Primary key

DEID int(10) No FK Directory Entry ID, FK of DirectoryEntry table

Name varchar(100) No Name of the serviceDescription varchar(500) No Description of the

serviceIsDeleted int(1) No 0 1/0 – Yes/No

Constraint:Name Add Delete Update

Project Team: 02 Prepared by: All members Page 106 of 112

Page 107: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

DirectoryService +(DEID)

- +(DEID)

8.8 PropertyEntryField name Data type Null Defaul

t ValueTable-ref-field Key Description

PID int(10) Properties.PID PK Properties ID. Primary key

DEID int(10) DirectoryEntry.DEID

PK Directory Entry ID. Primary key

EntryType varchar(100) Name of the service

Constraint:Name Add Delete Update

PropertyEntry +(PID,DEID)

- +(PID,DEID)

8.9 FAQThis table stores all FAQ about using MySweetHome systemField name Data type Null Default

ValueTable-

ref-fieldKey Description

FID int(10) PK FAQ IDQuestion varchar(500) QuestionAnswer varchar(500) Answer for the

questionConstraint:

Name Add Delete UpdateFAQS - - -

8.10 BankPoliciesField name Data type Null Default

ValueTable-

ref-fieldKey Description

BPID int(10) No PK Bank Policy ID, Primary Key, AutoIncrement

BankName varchar(100) No Name of the Bank provide this policy

PolicyName varchar(100) No The name of policyMinimumToApply double(10,2) No Minimum price of the

house to apply this policy

MaximumToApply double(10,2) No Maximum price of the house can apply this policy

PercentageOfLoan float(2,2) No How much buyer can

Project Team: 02 Prepared by: All members Page 107 of 112

Page 108: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

loan for this policyDurationOfLoan int No Duration of

Loan/Time for pay back (in year)

PercentageOfInterests float(2,2) No Interest in percentageConstraint:

Name Add Delete UpdateBankName +

(not blank)- +

(same Add constrain)PolicyName +

(not blank)- +

(same Add constrain)MinimumToApply +

(not blank, numeric, >= 0)

- +(same Add constrain)

MaximumToApply +(not blank, numeric,

greater or equals MinimumToApply

- +(same Add constrain)

PercentageOfLoan +(not blank, numeric,

from 1 to 100)

- +(same Add constrain)

DurationOfLoan +(not blank, numeric,

>= 1)

- +(same Add constrain)

PercentageOfInterests +(not blank, numeric, >= 0)

- +(same Add constrain)

Project Team: 02 Prepared by: All members Page 108 of 112

Page 109: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

9 Other contraints9.1 Users and SearchQueries

Name Add Delete UpdateUsers - +

(Users.UID exist SearchQueries)

-(Users.UID can not be

changed)SearchQueries +

(Users.UID must exist)- N/A

9.2 Users and Properties

Name Add Delete UpdateUsers - +

(Users.UID exist Properties)

-(Users.UID can not be

changed)Properties +

(Users.UID must exist)- +

(Users.UID must exist)

9.3 Users and Votes

Name Add Delete UpdateUsers - +

(Users.UID exist Votes)

-(Users.UID can not be

changed)Votes +

(Users.UID must exist)- +

(Users.UID must exist)

9.4 Properties and PropertyEntry

Name Add Delete UpdateProperties - +

(Properties.PID exist PropertyEntry)

-(Properties.PID can not

be changed)PropertyEntry +

(Properties.PID must exist)

- +(Properties.PID must

exist)

9.5 DirectoryEntry and PropertyEntry

Project Team: 02 Prepared by: All members Page 109 of 112

Page 110: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Name Add Delete UpdateDirectoryEntry - +

(DirectoryEntry.DEID exist DirectoryEntry)

-(DirectoryEntry.DEID can not be changed)

PropertyEntry +(DirectoryEntry.DEID

must exist)

- +(DirectoryEntry.DEID

must exist)

9.6 DirectoryCategory and DirectoryEntry

Name Add Delete UpdateDirectoryCategory - +

(DirectoryCategory.DCID exist

DirectoryEntry)

-(DirectoryCategory.DCID can not be changed)

DirectoryEntry +(DirectoryEntry.DEID

must exist)

- +(DirectoryEntry.DEID

must exist)

9.7 DirectoryEntry and DirectoryService

Name Add Delete UpdateDirectoryEntry - +

(DirectoryEntry.DEID exist

DirectoryService)

-(DirectoryEntry can not

be changed)

DirectoryService +(DirectoryEntry.DEID

must exist)

- +(DirectoryEntry.DEID

must exist)

Prepare By: Team 2 Approved By: FacultyDate: 07/04/2023 Team Leader

Nguyen Quoc Quynh Khoi Kieu Trong Khanh

Project Team: 02 Prepared by: All members Page 110 of 112

Page 111: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

REVIEW 3

Project Team: 02 Prepared by: All members Page 111 of 112

Page 112: 1 My Sweet Home Documentation

Project: My Sweet Home Document: Development Guide Approved by: Faculty

Prepare By: Team 2 Approved By: FacultyDate: 07/04/2023 Team Leader

Nguyen Quoc Quynh Khoi Kieu Trong Khanh

Project Team: 02 Prepared by: All members Page 112 of 112