Download as pdf or txt
Download as pdf or txt
You are on page 1of 39

MySweetHome.

net 4SE5

INTEGRATED PROJECT
REPORT

Realized by:
• Wiem Sadkaoui
• Rami Joudi
• Hamza Najjar
• Adem Ben Abderrahim
• Mohamed Rezgui

1
MySweetHome.net 4SE5

Table of Contents

Chapter 1: Introduction ...................................................................................................................................... 5


Chapter 2: Project Context.................................................................................................................................. 7
1. Introduction ............................................................................................................................................ 8

2. General Overview................................................................................................................................... 8

3. Study of the existing Product ................................................................................................................. 8

4. Problematic........................................................................................................................................... 10

5. Solution ................................................................................................................................................ 10

6. Methodology adopted ........................................................................................................................... 12

7. Conclusion............................................................................................................................................ 12
Chapter 3: Global analysis ................................................................................................................................ 13

1. Introduction .......................................................................................................................................... 14

2. Functional requirements ....................................................................................................................... 14

3. Non Functional requirements ............................................................................................................... 15

4. Identifying the users ............................................................................................................................. 15

5. Use Case Diagram ................................................................................................................................ 16

6. Sequence’s Diagrams ........................................................................................................................... 17

7. Class Diagram ...................................................................................................................................... 23

8. Graphic Models .................................................................................................................................... 24

9. Physical architecture ............................................................................................................................. 26

10. Logical Architecture ............................................................................................................................. 27

1. Frameworks and technical tools ........................................................................................................... 29

a. Introduction .......................................................................................................................................... 29

b. Working Environment .......................................................................................................................... 29


i. Software Environment .......................................................................................................................... 29

ii. Development tool: ................................................................................................................................ 31

Spring Tool Suite (STS) IDE .............................................................................................................................. 31

iii. Languages and libraries: ..................................................................................................................... 32

2
MySweetHome.net 4SE5

c. Coding and Test ................................................................................................................................... 33


i. Application test scenarios .................................................................................................................... 33

e. Conclusion............................................................................................................................................ 37

Chapter 5 Conclusion ....................................................................................................................................... 38

3
MySweetHome.net 4SE5

Table of figures
Figure 1: Home page Airbnb .......................................................................................................................... 9
Figure 2: Home page Tayara .......................................................................................................................... 9
Figure 3: SeLoger Home Page ..................................................................................................................... 10
Figure 4: Use case diagram .......................................................................................................................... 16
Figure 5: claims management sequence diagram ......................................................................................... 17
Figure 6: Authentification sequence diagram .............................................................................................. 18
Figure 7: Buy house sequence diagram........................................................................................................ 18
Figure 8: Rent house sequence diagram ....................................................................................................... 19
Figure 9: Post ad ........................................................................................................................................... 19
Figure 10: Messaging sequence diagram ..................................................................................................... 20
Figure 11: Credits simulation sequence diagram ......................................................................................... 20
Figure 12: Sequence diagram visits ............................................................................................................. 21
Figure 13: Sequence diagram subscribe ....................................................................................................... 22
Figure 14: Class diagram.............................................................................................................................. 23
Figure 15: Physical architecture ................................................................................................................... 26
Figure 16: Logical architecture .................................................................................................................... 27
Figure 17: LOGO STS ................................................................................................................................. 31
Figure 18: LOGO Visual Studio Code ......................................................................................................... 31
Figure 19: Authentification (sign in) ............................................................................................................ 35
Figure 20: Authentification (Sign up) .......................................................................................................... 35
Figure 21: Home page .................................................................................................................................. 36
Figure 22: Payment interface ....................................................................................................................... 36
Figure 23: Ad post interface ......................................................................................................................... 37

4
MySweetHome.net 4SE5

Chapter 1: Introduction

Chapter 1:
Introduction

5
MySweetHome.net 4SE5

Over the years, technology has been responsible for creating amazing resources, which

literally put all the information we need right at our fingertips. The advance of technology has

made for some great discoveries, and at the same time has changed the way we deal with

daily matters. But it’s not always a good alternative to our problems especially when it comes

to purchasing and selling online. Nowadays, the buyer’s decision-making process has changed

in recent years. Shoppers are conducting several research online before buying anything.

Many of them prefer traditional ways of buying rather than online purchasing due to many

reasons such as the lack of confidence and security of websites. But we must say that

consumers are more than happy to stay home, seek and complete their purchase online as long

as the barriers to online shopping are subverted. Many people do not want to drive to a store,

wander around in search of what they need and then interact with a cashier to finish the

purchase process. When it comes to real estate, it has always been a problem. Websites aren’t

really trust worthy and searching for a property to sell or rent with the traditional ways is

exhausting. So having a real estate website is no more a choice, but it has become a necessity.

You may even call it a paramount. Consequently, we as a group of engineering, well aware

about the challenges and opportunities of these new technologies, decided to develop and

implement a real estate website. It intend to serve customers, namely real estate developers,

brokers, property dealers and private sellers or buyers, by offering very easy services and

user-friendly advanced functions with a very complete interface.

6
MySweetHome.net 4SE5

Chapter 2: Project Context

Chapter 2:
Project Context

7
MySweetHome.net 4SE5

1. Introduction
In this chapter, we will talk about the general context of Real estate website project by
presenting some of the current solutions, describing the goal of the project and presenting our solution.
2. General Overview
Each website aims to satisfy its customers and to offer them the best service compared
to the other competitors that’s why we offer a special social network which allows to group
several real estate options.

3. Study of the existing Product


It is essential before embarking on the realization of any project, to properly study and
analyze similar projects to take advantage of their qualities and avoid their weaknesses. For
this, we have chosen the most known websites for real estate such as:
• Airbnb.com:

Airbnb is an online marketplace that connects people who want to rent out their homes
with people who are looking for accommodations in that locale.
• The Advantages of Airbnb:
✓ Wide Selection: Airbnb hosts list many different kinds of properties—single
rooms, a suite of rooms, apartments, moored yachts, houseboats, entire houses,
even a castle—on the Airbnb website.
✓ Free Listings: Hosts don't have to pay to list their properties. Listings can
include written descriptions, photographs with captions, and a user profile
where potential guests can get to know a bit about the hosts.
✓ Hosts Can Set Their Own Price: It's up to each host to decide how much to
charge per night, per week or per month.
• The Disadvantages of Airbnb:
✓ Added Fees: Airbnb imposes a number of additional fees (as, of course, do
hotels and other lodging providers). Guests pay a guest service fee of 0% to
20% on top of the reservation fee, to cover Airbnb's customer support and other
services. Prices display in the currency the user selects, provided Airbnb
supports it.
✓ Taxes: Both hosts and guests may be subject to a value-added tax (VAT). And
depending on their location, hosts may be subject to rental income taxes.
✓ It Isn't Legal Everywhere: Before listing their properties on Airbnb, would-be
hosts need to check their local zoning ordinances to make sure it's legal to rent out their properties.

8
MySweetHome.net 4SE5

Figure 1: Home page Airbnb

• Tayara. tn
Is a general website that engaged in effectuating multiple actions such as selling and purchasing all
categories of products including real estate management but this service still has a lot of problems
such as online payment due to lack of security.

Figure 2: Home page Tayara

9
MySweetHome.net 4SE5

• SeLoger.com
You will find the site "SeLoger" a considerable number of classified ads (1.3 million). The filter
system allows you to quickly find the goods that match your needs. Dari. tn 9 The disadvantages of
this site: you will have to pay agency fees (corresponding to approximately one month's rent).

Figure 3: SeLoger Home Page

4. Problematic
Finding land, a house, or any kind of building for rent or sell is not always as easy as it seems. It’s
kind of weird that in the 21st century and with all the evolution of technology people still turn to
traditional ways such as newspapers and brokers. The worst part is that even if we turn to the existing
websites and try to find what we’re looking for, we’ll find out that in the end, those websites aren’t
always a good alternative. Most of them have the same weaknesses, such as the lack of information on
each ad, the absence of interaction between the buyer and the seller, The most irritating is that many
websites aren’t free and require extra fees to make as benefit from their services. Therefore, we
decided to develop our solution, an application that aims to manage a real estate site in which we will
ensure security, credibility, and good interaction between users

5. Solution

After a detailed study of the existing real estate websites, and after finding out their weaknesses and
identifying the missing services, we decided to build our website in which we will have all the services
given by our competitors but at the same time, we’ll make sure to deal with every missing service and
turn every disadvantage they have into a strength. If you are looking for an apartment, land, a
warehouse, or any other kind of buildings for sale or rent and you look for the easiest way to find it,
we came with the solution. Our application will allow the user to buy, sell, rent, or estimate his
property and many other features around real estate. And guess what? Every single service we offer is
free. And because we are defined by service and expertise, we will make your mission easier. We will
be offering multiple filters to precise your search and needs as much as possible, so you can avoid

10
MySweetHome.net 4SE5

having extra ads that you don't want to see. Also, we will make sure that our website will be 100%
secure and in consequence, we’ll ensure online payment especially when it comes to furniture.
Furthermore, we will offer the chance to make virtual tours into the houses put up for sale or rent
thanks to the 360° photos and videos. Moreover, the interfaces are very easy to consult, and navigation

11
MySweetHome.net 4SE5

is simplified by more identifiable headings and tabs. Besides, functionality, ease of use, aesthetics,
speed, and readability are decisive criteria for a good user experience and web ergonomics, that’ why
we will make these criteria available to you. Today, technology users are no longer just young people.
According to the federation of e-commerce and distance selling (FEVAD), browsing the web and
smartphones is becoming more and more common for a product search. Therefore, it’s important to
make the application accessible to every person needing information about real estate for rental or
sale. The realization of the new application is carried out by a conceptual study formulated in this
report, this is based on the activities related to the fields of study covered by this project from which
will be designed the new system and the guidelines to follow for the development effective quality
system.

6. Methodology adopted

During this project, we will adopt the Rup (Rational Unified Process) as a method to
guarantee the smooth running and management of our project. Why RUP? First of all, the
structure of the project, ensures that we always meet customer needs on time. Thus, the
deliverables are managed and controlled, throughout the development. Besides, the RUP
method allows you to use an architecture that is based on components, which is a plus, in
terms of operation, for this type of project work.
Already, in all complex projects, the RUP method is essential. As we saw above, progressive
integrations allow you to manage problems easily. You thus keep a strong control on
complicated projects. Also, in case the customer requirement is very high, this method
proves to be a very good ally. Indeed, it ensures high-quality software, with more secure
stages of increment. In the case of very tight budgets, too, the RUP method is very effective.
The costs are well controlled and delivery delays are generally much reduced. Then, the
modifications that occur during the project can be taken care of and integrated directly. Each
integration is done little by little, as the project progresses, and not at the very end when the
risks are greater. Problems are thus discovered during the project and rectified. This method
makes it possible to respond to the needs of users quickly, on time, while respecting
budgets. Indeed, it channels and models all stages of software development. It also very
clearly orders the various milestones.

7. Conclusion
Classical problems no longer require classical solutions but instead, they can now be solved with
modern solutions and that’s why technology is born. Making human life easier is an ultimate and a
major need and our website highlight a classical problem related to real estate and intend to solve it or
at least present itself as a good alternative.

12
MySweetHome.net 4SE5

Chapter 3: Global analysis

Chapter 3:
Global analysis

13
MySweetHome.net 4SE5

1. Introduction

In this chapter, we’ll go a bit further in introducing the project. We’ll identify the Actors as well as the
specific requirements, whether functional or non-functional. This identification and analysis of needs
will allow us to determine the functionalities and the services that users expect from the application to
be implemented.
2. Functional requirements
• Authentication:
➢ Allows the users who have an account to access the website.
• User management:
➢ A user can create an account, modify and delete it.
➢ A user can add information to his profile or modified it
• Ad management:
➢ The user can view the list of all items for sale/rent.
➢ The ads can be for properties or furniture.
➢ The user can add an ad, modify it and delete it.
➢ The user can search for a property according to specific criteria. He can
search as well for furniture.
➢ The user receives a notification if a new ad goes with his wish-list
• Appointment management:
➢ The buyer is allowed to demand an appointment with the seller who will be
able to manage all the appointments like precising the day and the hour…
• Claims management:
➢ The user can report a post/ a user
➢ An admin treat those claims
• Estimate Property/Rental:
➢ A user can put the criteria of a house/Apartment that he owns or intend to
buy/rent and get his approximate value.
➢ The user can also
• Credit simulation management :
➢ A user can put some information such as his salary and get an approximate value
of the credit a bank can give him.

14
MySweetHome.net 4SE5

3. Non Functional requirements


 Reliability: the data provided by the web site must be reliable
 Availability: the web site must be available to be used by any user and at
anytime
 Security: security measures should be embedded in the system to ensure thatthe
records present in the system are secure and no authorized person can access
them. (encryption md5, complex password..)
 Ergonomics: the application will follow the ergonomic standards like the
density of elements on screen, layout and flow, colors.

4. Identifying the users

Our Application is based on 3 users:

• Administrator.
• Visitor
• Client

→ As a buyer

→As a seller

15
MySweetHome.net 4SE5

5. Use Case Diagram


The Use Case Diagram represents the functionalities necessary for the users. It describes the
context, the actors or users of the software project, the software functionalities but also the
interactions between these actors and these functionalities. In what follows, we will translate
the needs of the actors into a general use case model to give a global vision of the behavior of
the future system.

Figure 4: Use case diagram

16
MySweetHome.net 4SE5

6. Sequence’s Diagrams

Describes the different scenarios for using the system:

Figure 5: claims management sequence diagram

17
MySweetHome.net 4SE5

Figure 6: Authentification sequence diagram

Figure 7: Buy house sequence diagram

18
MySweetHome.net 4SE5

Figure 8: Rent house sequence diagram

Figure 9: Post ad

19
MySweetHome.net 4SE5

Figure 10: Messaging sequence diagram

Figure 11: Credits simulation sequence diagram

20
MySweetHome.net 4SE5

Figure 12: Sequence diagram visits

21
MySweetHome.net 4SE5

Figure 13: Sequence diagram subscribe

22
MySweetHome.net 4SE5

7. Class Diagram
The class diagram models the concepts of the application domain as well as the internal
concepts created from scratch as part of the implementation of an application.

Figure 14: Class diagram

23
MySweetHome.net 4SE5

8. Graphic Models

Authentification Post ad

Registration Interface View ad Interface

24
MySweetHome.net 4SE5

Home page

More details post Interface

25
MySweetHome.net 4SE5

9. Physical architecture
Our application is a web application that works in client/server mode. It is n-tiers
architecture that contains a database server, a web server, and a client (browser). We present
below the physical architecture of our application.

Figure 15: Physical architecture

We define here the role of each third party:

• The browser is the client of our application


• The web server is the third party that hosts our application
• The database server is the third party that contains the database

26
MySweetHome.net 4SE5

10. Logical Architecture

Logical architecture is a structural design that gives as much detail as possible without
constraining the architecture to a particular technology or environment. For example, a diagram
that illustrates the relationship between software components.

Figure 16: Logical architecture

27
MySweetHome.net 4SE5

Chapter 4: Conception

Chapter 4:
Conception

28
MySweetHome.net 4SE5

1. Frameworks and technical tools

a. Introduction
After having completed the conception of our project, here we present the implementation
phase. First, we will specify the tools and the software environment for development. Then, we
will describe the realization by including the main interfaces of the application through
screenshots.

b. Working Environment
This part will be devoted to the presentation of the development environment with which
we have implemented our solution. This environment is divided into a set of software
resources that we had to adopt to carry out this project.

i. Software Environment
For the development of this application we used the following tools and software:

MySQL Data Base Server


An open-source relational database
management system. Its name is a combination
of "My", the name of co-founder Michael
Widenius's daughter, and "SQL", the
abbreviation for Structured Query Language.

StarUML Design software:


StarUml is a UML modeling tool. It allows you
to draw UML diagrams

29
MySweetHome.net 4SE5

Git Decentralized version manager


Git is a distributed version-control system for
tracking changes in source code during software
development. It is designed for coordinating
work among programmers, but it can be used to
track changes in any set of files.

WampServer Server
WampServer refers to a software stack for
the Microsoft Windows operating system,
created by Romain Bourdon and consisting of
the Apache web server, OpenSSL for SSL
support, MySQL database
and PHP programming language.

Postman Sql request simulator


Postman is a scalable API testing tool

30
MySweetHome.net 4SE5

ii. Development tool:

Spring Tool Suite (STS) IDE

Figure 17: LOGO STS

Spring Tool Suite is an extended IDE for Eclipse. He specializes in the development
of Spring applications. It provides a ready-to-use environment to implement, run, deploy, and
debug the application. It validates our application and provides quick fixes for the
applications.

Visual Studio Code:

Figure 18: LOGO Visual Studio Code

Visual Studio Code is a freeware source-code editor made by Microsoft for Windows, Linux
and macOS. Features include support for debugging, syntax highlighting, intelligent code
completion, snippets, code refactoring, and embedded Git.

31
MySweetHome.net 4SE5

iii. Languages and libraries:


Spring Boot:
A framework that aims in particular to facilitate the configuration of a Spring project
and to reduce the time allocated to the start of a project. To achieve this objective,
Spring Boot is based on:
▪ A website (https://start.spring.io/): allows you to quickly generate the
structure of your project by including all the Maven dependencies necessary
for your application. This generation is also available via the Eclipse STS
plugin
Using "Starters" to manage dependencies. Spring has grouped spring’s
Maven dependencies into "mega dependencies" to make it easier to
manage them.

Angular:

Angular is a TypeScript-based open-source web application framework led by the Angular Team at Google
and by a community of individuals and corporations. Angular is a complete rewrite from the same team that
built Angular.

▪ HTML5: (Hypertext Markup Language 5) is the latest major revision of


HTML (data format designed to represent web pages). HTML5 includes an
application layer with numerous APIs as well as an algorithm to be able to
process documents with non- conforming syntax
▪ JavaScript: is a scripting programming language mainly used in interactive
web pages and in servers (Node.js). It is an object-oriented language with
prototype, which is to say that the bases of languages and its main
interfaces are provided by objects which are not instances of classes, and in
particulara prototyping property which makes it possible to create them
inherited andpersonalized objects. Furthermore, functions are first class
objects.
▪ CSS: Cascading Style Sheets are used to format web documents, such as
HTML or XML pages. Via appearance property (colors, borders, fonts,
etc.) and placement (width, height, etc.)

32
MySweetHome.net 4SE5

c. Coding and Test

i. Application test scenarios

function Authentication

Actor Admin/Owner/client/operator

Scenario The user can access its interface.

The user can log out of the application.

Precondition The user must be registered in the database

Post condition Authentication

function Post ad

Actor Owner

Scenario The owner presses the “new ad” button which takes him
to the form to fill out before posting an ad! The form will
contain many fields such as, type of property, category,
title, description, city, postal code, price, area, number of
rooms) the ad will also be accompanied by a map to
specify the location => Add (Button) => Checking
information. Successful verification => Recording of the
announcement => Display of the success message +
Featured "PREMIUM" ads
If accepted (OK button) => payment form
Featured "PREMIUM" ads
Else (Refuse button) => Display of the
success message of the ad

33
MySweetHome.net 4SE5

Precondition Register if he does not have an account otherwise


authenticate

Post condition Announcment added.


For each view of the ad, the user will be rated, the more
detailed the ad, the more likely it is to be seen

function Buy/rent

Actor Customer/Owner

Scenario the client can rent or buy a house and pay with PayPal, if

the house is not available for the location there is an

error message that this house is not rentable and isn’t for

sale.

Precondition The user must be registered in the database

Post condition Redirection to home page

34
MySweetHome.net 4SE5

d. Description of the project

In this part, we will give a description of the interfaces of our application. That we tried
to made them obey graphic charters and ergonomic rules so that the user easily adapts
to the logic of the platform.

Authentification:

Figure 19: Authentification (sign in)

Figure 20: Authentification (Sign up)

The authentication page: Allows a user to access their own account and subsequently take advantage of
the many services offered by the website.

35
MySweetHome.net 4SE5

Home page:

Figure 21: Home page

This interface represents the home page of our website. It must be functional and practical allowing non-
linear navigation by giving access to a multitude of functionalities from the reception. At the top of the
page, there is a menu allowing navigation to other pages.
In the middle are the announcements of the houses published as well as the actions that can be carried out
on the announcements.

Payment:

Figure 22: Payment interface

This interface represents the payment page; after choosing the house you like you proceed to pay through
PayPal.

36
MySweetHome.net 4SE5

Figure 23: Ad post interface

This interface represents the ad post page.

API:

➢ BCrypt: it is an algorithm used to encrypt passwords and make them invisible to others to enhance
security.

➢ Instant chat: allows to chat by just sharing your username. It’s free to use, no ads, simple and best of all
chats can be disposed by just click of a button.
➢ Virtualization: puts at your disposal images in 360 degree format which allows you to make a virtual visit
similar to the real one, it saves you time
➢ Upload: file/image
➢ Download pdf/word: after making a payment, our platform offers you the possibility to download the
invoice through this API in pdf or word document format.
➢ Mailing/SMS: used as notification.
➢ Programmable voice call: also used as notification.

➢ Payment: with PayPal

e. Conclusion

This part details the work we did in both front/back-end, we talked about the
tools/languages we used and made a brief description of some of the interfaces and the time
we spent on this project.

37
MySweetHome.net 4SE5

Chapter 5 Conclusion

Chapter 5
Conclusion

38
MySweetHome.net 4SE5

In this report we gave you a detailed study of the application we developed from scratch. We took
each phase of the project separately and explained the work we've done to finalize the website.

Thanks to DariVortex.tn website, finding a property will no longer be as difficult as it was, and the variety
of the services we provide will make your journey greater.

This website is the fruit of the effort, knowledge, collaborative work and obviously the help of our tutors.
We believe that it respond to his main need which is helping in decision-making by providing valuable
insights. We believe as well that it has all what it demand to outclass its competitors and get ahead of the
curve.

39

You might also like