House Construction In Mauritius Computer Science Essay

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

The construction of a new house may be the most important project that a family undertake, and planning for it begins well before the foundation works start. A house is a capital as well as an investment for life. The building of a house is a very complex process which involves many strategic decisions that need to be taken at different stages for the successful completion of the work. Needless to say that house construction also comes with its bunch of problems at all stages which need to be addressed as they arise. In brief, as any other important work planning plays a great role for the smooth running of the house construction. [1]

Constructing a house involves the coming together of many players in the field. These are contractors, architects, quantity surveyors, engineers and masons. Also many other stakeholders are involved namely municipal councils and officers from the ministry of housing who ensure that the house is constructed according to norms and regulations and also the neighbours' rights are not violated. Finally a good house construction would mean that customers would be satisfied and also the different stakeholders involved have worked well to make the construction a success.

House Construction in Mauritius

During the last 5 years, Mauritius has experienced a boom in the construction sector. This has been caused by the fact that the government has encouraged foreigners to come and invest in Mauritius. This meant that more factories had to be built. Also Mauritius has introduced the Integrated Resort Scheme which has led to the construction of many luxury villas around the Island. The tables below give an overview of the statistics of house construction in Mauritius.

Total number of permits for new buildings and extensions issued between 2006 and 2009 [2]


New Buildings


Total No of permits

















Table 1.1 Total number of permits delivered from 2006 to 2009

Total number of permits issued in urban regions between 2006 and 2009 [2]






Total No of permits from 2006-2009

Port Louis






Beau Bassin-Rose Hill












Quatre Bornes












Table 1.2 Number of permit by urban regions from 2006 to 2009

Total number of permits issued in rural regions between 2006 and 2009 [2]






Total No of permits from 2006-2009







Riviere du Rempart












Grand Port












Plaines Wilhem












Black River






Table 1.3 Number of permit by rural regions from 2006 to 2009

How house construction is conducted in Mauritius

In Mauritius, constructing a house is often seen as a very difficult phase when considering all the preparations involved and the amount of investment needed. First of all before embarking in the construction, it is necessary to have a plot of land or have already a house which needs an extension. If this step has already been cleared, the person should apply for necessary permits as without these he will not be able to start his project. The application should be made to the Municipal Councils or the District Councils in which the house is to be made by attaching the following relevant documents:

Land title deed,

3 copies of the house plans (drawn by a professional draughtsman and architect),

A site plan indicating the exact location of the plot of land,

All documents consisting of the details of the house to be built,

Clearance from the Central Electricity Board (CEB), Central Water Authority (CWA),

Photocopy of National Identity Card of applicant and

The Building and Land Use Permit form duly filled.

After clearance, it is now time to contact the different stakeholders involved in the construction sector, namely contractors, engineers, quantity surveyor and land consultants. These people will give the approximate cost and the time they will need to complete the house. They will also ensure that the building is made to the norms and standards prescribed and that it will also be durable. The building contractor will in his turn hire masons and required person to make the house. There should normally be a contract that will bind the contractor and the client. This contract should include the cost which the client will pay together with details of what the client want in his future house. Failure from the part of the contractor to comply with these clauses may cause the client to defer payment.

Status of ICT in house construction

Information and communication technologies (ICT) in Mauritius have become very widespread over the last 10 years. It is being used in almost all offices and sectors nowadays. However it is very rarely used in the construction sector. Contractors, architects do use it for their internal use in their offices but there is no system that has been put in place that can assist an individual in building a house. There are websites which exist that give details on the different processes and give some advices but these applications are static and they do not cater for changes that keep on occurring every day. An example of such a website is the Lexpressproperty website.

Present problem under investigation

During the investigation on the construction sector, I have found that there are many problems that occurs and which needs to be addressed. Firstly from clients' side, they do not have an appropriate guide on which they can base themselves for their construction project. In this view many people think that for building a house it is a very difficult task as they are not able to estimate their costs and they fear to embark so that they do not face financial difficulties. Often the clients are not satisfied with the works done by their contractors and they do not have any option rather than bear with the stakeholders. There is no proper follow up of complaints made by customers and stakeholders.

Secondly from the stakeholders' point of view, they do not have an appropriate communication among themselves where they can share new house construction strategies and new ways of working. This often results in conflicts among themselves which sometimes lead to incompletion of works at the cost of the clients. Good communication will also imply new house designs which will be built that will be modern and also eco-friendly.

Aims & Objectives

The aim of the project is to provide an advisory system for house construction in Mauritius which will address problems being faced in the construction sector in Mauritius and the objectives of the system will be:

To provide users with an interactive platform where they can get all necessary details to build a house.

To provide a forum for stakeholders and clients to share their experiences and techniques among themselves.

To provide a tool for estimating the amount of materials needed and the approximate cost of the construction.

To allow users and other people to make complaints to the relevant ministry for follow up and for taking necessary actions at each point in the project.


This section will discuss how house construction is done in different countries around the world.


The analysis section is a very important part in a software development project as the requirements of the user and the system are identified. In this phase, we will also identify the appropriate tools for development and alternative ways for solving the problem.

Requirement Analysis

In this sub section, we will list the requirements of the system obtained through discussion with stakeholders in the construction sector. Identifying good requirements ensure in better development of the system and user appreciation.

Functional Requirements

They are statements that specify how the system should react according to inputs and how the system will behave in different situations. The functional requirements for the system are:

The system shall have a 'latest news' corner where users may get updates in the construction sector.

Users shall be able to download documents in pdf format.

The system shall provide users with materials details such as pictures, names and prices.

Users shall get up to date information on procedures for buying a good plot of land.

The system shall consist of useful details on steps to obtain a construction permit together with relevant application forms.

Users shall get access to a directory of construction stakeholders for hire.

The system shall provide a tool for estimating amount of materials needed and approximate cost depending on house surface size.

The application shall provide registered users with a forum to discuss issues with other users by posting topics and replies to posts.

Users shall also get access to a complaints corner where they can complain against bad practices they are facing from stakeholders.

The system shall allow an official from the relevant ministry to administrate and follow up complaints cases.

The officer from ministry shall get a report on open, pending and solved cases.

The system shall allow an administrator to view/add/edit and delete user accounts, forum topics, complaints and materials details and prices.

Non-Functional Requirements

Non-Functional requirements are requirements that specify criteria that can be used to judge operations of the system rather than specific behavior. These are:

The system shall take minimum time to load on users' machine.

The system shall provide for concurrency.

The system shall open similarly on almost all browsers.

The system shall be maintainable by using properly indented codes.

The system shall be self-explanatory by using easily understandable language.

Data retrieval from database shall be handled in a reasonable timeframe.

The forum shall allow only registered users to gain access.

The complaints corner shall be secure with the use of username and password authentication.

Alternative ways for solving the problem

The above problem shall be addressed by several ways and methods. In this section we will discuss the different approaches to solving the described problem.

Alternative 1: Using manual paper based solution

The problem may be solved by using the conventional paper based methods. This method requires the user to move a lot and physically going to places for getting advices.

For obtaining material prices, a person must go to a hardware shop and get a quotation. Prior to that the person must have already gone to a quantity surveyor or a contractor for obtaining a list of required materials and their quantities to be used.

For a user to make a complaint, he should personally go to the ministry so as to fill in a complaints form for necessary action to take place. For getting details on the status of his case he would have to go again to inquire. This takes a lot of the person's time.

Alternative 2: Using a web based system

Another way of solving this problem would be to develop a web based application which will help users in getting all the relevant and up to date information all in one place without physically moving to get things done. Such a system will save a lot of time.

Users will get access to all information about the latest news, latest prices and details about materials used for construction just by selecting the items needed. Also the user will get details and advices when buying a plot of land and also for obtaining the relevant permits required to build a house. He would also be able to download the form directly on his computer. The system will also help to decide about the amount of materials needed and their respective cost depending on the area to be built.

Complaints will also be made online directly by filling a form which will be immediately viewable by an official from the ministry for necessary action. The officer will then update the status of the case and the user can directly follow up his case simply by inputting the case number in the system which will give the case status.

Proposed Solution

Alternative 2 would be the better and more viable solution. This is because when using a web based system, users will no more need to move and go to different places to obtain information. In this respect much of the user's time will be saved. Furthermore a web based application will provide for a centralized solution for everybody. All they will need to do is having a personal computer with an internet connection. Also all data available on the web application will be input by qualified and knowledgeable person. All data will be stored on a central database meaning information will be available anytime and anywhere.

Moreover with such a system, I believe that many of the problems being encountered nowadays would decrease by a considerable amount which will lead to better quality construction and better customer satisfaction.

Evaluation of tools

Programming languages for web development

Hypertext Markup Language (HTML)

It is a client side scripting language used for modeling web pages. HTML allows us to make use of form elements such as textboxes, combo boxes, and radio buttons among others. We can also use it to place tables on our pages for a better visual appearance.

Cascaded Style Sheet (CSS)

It is a language used to do styling of html pages. It allows us to apply colors, textures and text effects to our webpages for a more appealing display. Can be used inline, that is integrating it within the code of the webpage, or we can use external style sheets meaning that the css will be saved in another document with the .css extension and the document is then called in the webpage's code.


Javascript is a scripting language used for client side validation on forms and also used for creating dynamic effects at the client side. For example we can use it to create sliding multi-level menus. It also contains libraries which help us to make our pages more interactive by creating visual effects. The advantage in using it is that it is compatible with all the major web browsers available namely Internet Explorer, Mozilla Firefox, Google Chrome, Opera and Safari among others.


It is a server side language used for processing of pages. It is used to send and receive requests to the server. PHP pages need to be accessed from a webserver else they will not be displayed. This language is also used to perform server side validations on web pages.

Asynchronous Javascript and XML (AJAX)

This is a new generation scripting language used for client-server interaction. The advantage of using it is that pages do not need to be reloaded when receiving response from server which saves access time and make the webpages more user-friendly.

Java Server Pages (JSP)

JavaServer Pages (JSP) is a Java technology that helps software developers serve dynamically generated web pages based on HTML, XML, or other document types. It allows for the use of Java for page processing on web pages. It requires a compiler to render pages.


ASP.NET is a web application framework developed and marketed by Microsoft to allow programmers to build dynamic web sites, web applications and web services.

Development tools available

Adobe Dreamweaver CS3

A program used to develop HTML, PHP, AJAX and CSS pages. The advantage of using it is that it provides us with the facility of seeing what we are doing in real time with the help of a graphical window.

It can also be configured so as to split the window into code and graphical view at the same time.

Adobe Photoshop CS3

It is software used for designing webpage layouts and templates. These templates and layouts are then layered into different components for coding and integrating HTML within it. We can also use the software to create colorful and interactive buttons to be placed on websites.

EasyPHP 5.3

It is a package comprising of a webserver, a database server and php support for Windows. It contains Apache as the webserver, MySQL as database server and also includes PHP for scripting. The advantage of using it is that it is an application that integrates all core aspects of web and therefore we do not need to install different software to perform the different tasks.

PHPMaker 7

PHPMaker 7 is a program used to create PHP and MySQL pages based on database records. It provides us with an interface for creating dynamic pages that can be used to make administrative section of websites.

PHP Report Maker 4

This is a software that allows us to create dynamic reports and graphs based on records in MySQL databases. It can be used to create graphs from data patterns thus making use of the data mining technique.

Choice of final tools

After a careful and detailed analysis of available tools and software, we have chosen to use some of them as listed below.

Choice of Client Side Scripting Language

We have chosen to use PHP as server side language as it is an open source language and also since it is a well-established one. Since this language is a commonly used one, we will therefore get support and necessary skilled programmer to maintain the system.

Choice of Client Side Scripting Language

For the client side we will be using HTML along with Javascript and AJAX. HTML will be used for the design of the pages while Javascript will be used to do client side validations on forms and also do do some dynamic sections of pages. Whereas AJAX will be used to do processing of pages between client and server and to render the pages dynamically without reloading them.

Choice of Database Server

For database, we have chosen MySQL as database server since it is an open source software. It has also been chosen as it is one of the databases that suits PHP the most and it is most widely used for web.

Choice of Web Server

We have chosen EasyPHP as our web server as it is freely available and also it includes the MySQL database which means that almost all the core tools that will be used will be found in a single package.

Other tools chosen

We have also chosen to use Adobe Web Premium CS3 which comprises of Dreamweaver CS3, Flash CS3 and Photoshop CS3. These software will be used to create the web pages and all the graphics and animations on the website. We will also use PHPMaker 7 for the administrative section and PHP Report Maker 4 for creating statistics of the website.

Use Case Diagrams

Use Case 1: Use the system

Figure 3.1 Use case diagram for using the system


Users will be using the system to view material details including their names and prices. They will also get all details on the procedures involved in purchasing a plot of land and obtaining the necessary construction permits along with application forms. Contact details of major stakeholders of the construction industry will also be provided so as users can hire their competencies through the Hiring the required person option. People can also get an approximate overview about how much their construction project will cost and how much material will be needed through the Materials and cost estimator.

Use Case 2: Administrative Section

Figure 3.2 Use case diagram for Administrative Section


The administrator will need to login using his username and password to get access to administrator's area. Upon successful authentication, the administrator will get a list of all available tables in the database. He will have the rights to view, add, edit, delete and search any records found in the database.


In the design phase we will list the design decisions that have been taken along with several design issues which will be discussed. Also we will establish the system structure and the designing of the different components that will be needed.

System design issues

To start our system design, there are several issues that need to be tackled so as to make the system better. Below are some of the design issues that have to be addressed.

Performance: The system must be designed in a way so as to minimize the time taken for the pages to load on any internet speed.

Robustness: The application must be fault tolerant and allow for concurrency access so that the database does not crash and the system is always up and running.

Interactivity: The interface must be user friendly so that users possessing any level of computer skills might use it without difficulty and minimum training.

Flexibility: The web application should easily adapt to any change in the environment in which it is being used. That is it should work on any computer hardware and software configurations.

Portability: The system must be platform independent that is it should run on any operating systems (Linux, Windows…) and should also work over most popular internet browsers.

Security: The website will also provide secure areas whereby only users with sufficient rights may get access to. Security includes the use of username and password authentication along with the use of sessions.

Interface Design

Below are the designs of some of the interfaces we will develop during the course of the project. Almost all the pages will have similar layout where only some elements will be changed to accommodate forms and tables.

Interface 1: Index page

Figure 4.1 Index Page

This will be the page that users will view upon entering the website. It will contain a logo and a menu on the left hand side. It will also include a news corner and contact us on this side. On the top there will be an image used as a banner and below it is the body section where there will be an "About the system" section. There will also be a download section where users can download useful documents and forms.

Interface 1: Login Page

Figure 4.2 Login Form

Users will have to login using their username and password which they received upon registration. Upon successful login, they will get access to the forum where they will be able to ask questions and get answers and useful information shared by other users.

Interface 1: Register Page

Figure 4.3 Register Page

Users will use this form to register themselves to get access to members section of the system. They will need to provide necessary details in order to register themselves in our system. After registration users may then use our forum to gain knowledge about the construction process.

System Modeling

In this section we will make use of activity diagrams to demonstrate interaction between different components of the system.

Activity diagram 1: Register

Figure 4.4 Activity diagram for Registration

Activity diagram 2: Login

Figure 4.5 Activity diagram for Login

Activity diagram 3: Material Details

Figure 4.6 Activity diagram for Material Details

Activity diagram 4: Purchasing a Plot of Land

Figure 4.7 Activity diagram for Purchasing Land

Activity diagram 5: Hiring the Required person

Figure 4.8 Activity diagram for Hiring the Required Person

Activity diagram 6: Materials and Cost Estimator

Figure 4.9 Activity diagram for Materials and Cost Estimator

Activity diagram 7: Submit a complaint

Figure 4.10 Activity Diagram for Submit a complaint

Database Design

From a database design we can derive database tables from a well detailed data set. This will help us in creating table to store data that will be used by the system.

Admin table

This table will hold username and password of the complaint's administrator. It will be linked to the complaints admin login to authenticate the administrator.

Field Name

Data Type

id (primary key)






Table 4.1 Admin table

Complaint table

The complaint table will be used to store all the complaints reported by users

Field Name

Data Type

id (primary key)
















Table 4.2 Complaint table

Documents table

The table will be used to store all the useful documents and application forms in connection to house construction.

Field Name

Data Type

docID (primary key)






Table 4.3 Documents table

Email table

The email table is the table that will be used to store details sent through the contacts page. It will be used to reply to queries sent from users.

Field Name

Data Type

mailid (primary key)










Table 4.4 Email table

Forum table

This will be that table that will store forum posts, reply and messages.

Field Name

Data Type

postid(primary key)




















Table 4.5 Forum table

Land table

It will be the table that will contain all the procedures that needs to be done to purchase a plot of land.

Field Name

Data Type

Id(primary key)






Table 4.6 Land table

Login table

The login table will be used to store details of login and password to get access to the forum. These details will be obtained when the user registers himself.

Field Name

Data Type

uid (primary key)








Table 4.7 Login table

Materials table

The materials table will be used to store materials names, prices and their image. The table will also be used to calculate the estimated cost and materials amount.

Field Name

Data Type

matId (primary key)










News table

This table will be used to save the latest news that are being developed in the construction sector.

Field Name

Data Type

newsId (primary key)




Table 4.9 News table

People table

This will be the table that will be used to store all the contact details of the stake holders of the construction sector.

Field Name

Data Type

id (primary key)
















Table 4.10 People table

Register table

The register table will be used to store registration details. It is linked with the register page where the users register themselves.

Field Name

Data Type

uid (primary key)














Table 4.11 Register table

Surface table

This table will be used to store details of the house sizes users select when requesting for approximate cost. The data will then be used to create graphs of the most popular house sizes being built.

Field Name

Data Type

id (primary key)




Table 4.12 Surface table


In this section we will take the task of coding the requirements discussed in the analysis section together with the designs worked out in the design section to make a working system to solve the problem defined earlier in this documentation.

Development Environment

In this section we will detail the software and hardware requirements for the system. The system was mainly developed on a PC in the iBP Project lab and my laptop.

Software Requirements

Microsoft Windows XP or higher.

EasyPHP 5.3.0 or higher

Dreamweaver CS3 and Photoshop CS3 for page designs and Notepad++ for coding.

EasyPHP 7 for administrator's page customization and PHP Report Maker 4 for designing reports and graphs for statistics section.

Visual Paradigm for UML 8.1 Personal Edition for making UML diagrams.

Hardware Requirements

Intel Pentium IV 1.6 GHz Processor or higher.

512 MB RAM memory or higher.

Network Interface Card.

Graphics Card.

Features Developed

The features developed for the system are:

Viewing of materials details consisting of prices, names and images.

Purchasing a plot of land which gives advices on purchasing land.

Applying for construction permit.

Hiring the required person.

Materials and Costs Estimator.


Complaints Corner.

Posting a complaint.

View Complaints status.

Complaints Admin.

View Complaints.

Complaints Report.

Administrator Section.

Statistics Section.

Pages Developed

Home Page

This is the page that users will see upon entering our web application.

Figure 5.1 Home Page

Materials Details Page

This page is used to give details of materials, their prices and also an image of the material. Users will select the material and upon selecting the material they will get all the details.

Figure 5.2 Materials Page

Code to display materials upon select