EGBUC

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 19

Republic of Iraq

Shiite
Endowment
Imam-Al-kadhum University College
Dep. Of Computer Techniques Engineering

Estimating the quantities of building units used in construction


projects by using mobile applications

A Graduation Project
Submitted to the Council of the Imam-Al-kadhum College - Dep. of
Computer Techniques Engineering in Partial Fulfillment of the
Requirements for Bachelor's Degree
in Engineering

By
Khalida Alwan Abbas

Supervised by
Ali Moosa Taqi Alkhlkhali

2024A.D. 1445 A.H.


‫ِبْس ِم ِهَّللا الَّرْح َمِن الَّر ِح يِم‬

‫{ اْقَر ْأ ِباْس ِم َر ِّبَك اَّلِذ ي َخ َلَق (‪َ )1‬خ َلَق اِإْل ْنَس اَن ِم ْن َع َلٍق (‪ )2‬اْقَر ْأ َو َر ُّبَك‬

‫اَأْلْك َر ُم (‪ )3‬اَّلِذ ي َع َّلَم ِباْلَقَلِم (‪َ )4‬ع َّلَم اِإْل ْنَس اَن َم ا َلْم َيْع َلْم (‪} )5‬‬

‫صَدَق هللا العلُي العظْيم‬

‫سورة العلق‬
‫اآليات (‪)1 -5‬‬
Supervisor Certification
I certify that this project entitled “Estimating the quantities of building
units used in construction projects by using mobile applications” was
prepared by “Khalida Alwan Abbas” under my supervision at the
Department of Computer Techniques Engineering, Imam-Al-kadhum
University College, Najaf, in a partial fulfillment of the requirements for the
degree of Bachelors of Science in Computer Engineering.

Signature:

Name: Ali Moosa Taqi Alkhlkhali

Date: / / 2024
Examination Committee Certification

We certify, that we have read this project entitled “ Estimating the


quantities of building units used in construction projects by using
mobile applications” examined the student Khalida Alwan Abbas " in
its contents and in what is related to it. In our opinion, it meets the standard
of a project for the degree of Bachelors of Science in Computer
Engineering.

Signature:

Name:

Date: / / 2024

Signature:

Name:

Date: / / 2024

Signature:

Name:

Date: / / 2024
‫االهداء‬
List of content

I
List of content

II
Abstract

Abstract

CHAPTER ONE

INTRODUCTION

1.1 Introduction

" In this chapter, the researchers will be reviewed the smart phone operating
systems, programming language, phone applications and capabilities, to give a clear
idea of the theoretical studies in the project field "
1.2 Mobile operation system

Mobile operation system is an operating system for phones, tablets,


smartwatches, or other mobile devices. While computers such as typical laptops are
'mobile', the operating systems usually used on them are not considered mobile ones,
as they were originally designed for desktop computers that historically did not have
or need specific mobile features. This distinction is becoming blurred in some newer
operating systems that are hybrids made for both uses.

Mobile operating systems combine features of a personal computer operating


system with other features useful for mobile or handheld use; usually including, and
most of the following considered essential in modern mobile systems; a wireless
inbuilt modem and SIM tray for telephony and data connection, a touchscreen,
cellular, Bluetooth, Wi-Fi Protected Access, Wi-Fi, Global Positioning System (GPS)
mobile navigation, video- and single-frame picture cameras, speech recognition,
voice recorder, music player, near field communication, and infrared blaster. By Q1
2018, over 383 million smartphones were sold with 86.2 percent running Android
and 12.9 percent running iOS. Android alone is more popular than the popular

III
desktop operating system Windows, and in general smartphone use (even without
tablets) outnumbers desktop use.
Mobile devices with mobile communications abilities (e.g., smartphones)
contain two mobile operating systems – the main user-facing software platform is
supplemented by a second low-level proprietary real-time operating system which
operates the radio and other hardware. Research has shown that these low-level
systems may contain a range of security vulnerabilities permitting malicious base
stations to gain high levels of control over the mobile device.

Mobile operating systems have majority use since 2017 (measured by web
use); with even only the smartphones running them (excluding tablets) more used
than any other kind of device. Thus traditional desktop OS is now a minority used
kind of OS; see usage share of operating systems. However, variations occur in
popularity by regions, while desktop-minority also applies on some days in regions
such as United States and United Kingdom [7]

1.3 Mobile application

Mobile application is a computer program designed to run on smart phones,


tablet PCs and other mobile devices.

Is the new wave in the use of mobile phones, mobile phones are no longer just
devices for voice telephony, but extends to the exchange of multimedia messages
such as pictures and video and the use of e-mail and the Internet. Due to the
enormous potential of smart phones, these capabilities can be exploited by multiple
applications that benefit the user. [7]

Some of these possibilities are:

1. Camera: The application can transfer images from the album or capture and
III
transfer live images.

2. Geographic Positioning System: This feature of smart phones can be used to


determine your location or the location of the organization you wish to go to.

3- Telephone Calls: With the push of a button from inside the application you can call
certain numbers without being stored in your device.

4- The world around us: The location of the user and the important places nearby can
be located and drawn on the map.

5. Free Notifications: This feature enables business owners to send messages to


anyone who downloaded the application for free and for any number of messages.

These applications are downloaded from the Apple Store App Store for
iPhone and iPad applications. For Android-based software, which works on other
devices such as Samsung and Sony, apps are downloaded from Google Play Play).
Apps are always free or for a limited time to encourage users to upload them from the
store, but some apps are only loaded after paying a certain amount to the store

CHAPTER TWO

THEORY OF THESIS

2.1 Introduction
III
In this chapter, on one hand, we will discuss the language of operating
systems, the interface of the android systems, the applications of android, the
management of memory, security, privacy and all Java content. On the other hand,
this chapter will contain also the definitions of estimating, its benefits, its importance
and its types. As well as mathematical equations used to find the estimate

2.2 Android Interface

Android's default user interface is mainly based on direct manipulation, using


touch inputs that loosely correspond to real-world actions, like swiping, tapping,
pinching, and reverse pinching to manipulate on-screen objects, along with a virtual
keyboard. Game controllers and full-size physical keyboards are supported via
Bluetooth or USB. The response to user input is designed to be immediate and
provides a fluid touch interface, often using the vibration capabilities of the device to
provide haptic feedback to the user. Internal hardware, such as accelerometers,
gyroscopes and proximity sensors are used by some applications to respond to
additional user actions, for example adjusting the screen from portrait to landscape
depending on how the device is oriented, or allowing the user to steer a vehicle in a
racing game by rotating the device, simulating control of a steering wheel.

Android devices boot to the home screen, the primary navigation and
information "hub" on Android devices, analogous to the desktop found on personal
computers. Android home screens are typically made up of app icons and widgets;
app icons launch the associated app, whereas widgets display live, auto-updating
content, such as a weather forecast, the user's email inbox, or a news ticker directly
on the home screen. A home screen may be made up of several pages, between which
the user can swipe back and forth. Third-party apps available on Google Play and
other app stores can extensively re-theme the home screen, and even mimic the look
of other operating systems, such as Windows Phone. Most manufacturers customize
the look and features of their Android devices to differentiate themselves from their
III
competitors.

Along the top of the screen is a status bar, showing information about the
device and its connectivity. This status bar can be "pulled" down to reveal a
notification screen where apps display important information or updates.
Notifications are "short, timely, and relevant information about your app when it's not
in use", and when tapped, users are directed to a screen inside the app relating to the
notification. Beginning with Android 4.1 "Jelly Bean", "expandable notifications"
allow the user to tap an icon on the notification in order for it to expand and display
more information and possible app actions right from the notification.

An All Apps screen lists all installed applications, with the ability for users to
drag an app from the list onto the home screen. A Recents screen lets users switch
between recently used apps. [6]

2.2.1. Android Applications


Applications ("apps"), which extend the functionality of devices, are written
using the Android software development kit (SDK) and, often, the Java programming
language. Java may be combined with C/C++, together with a choice of non-default
runtimes that allow better C++ support.
The Go programming language is also supported, although with a limited set of
application programming interfaces (API). In May 2017, Google announced support
for Android app development in the Kotlin programming language.

The SDK includes a comprehensive set of development tools, including a


debugger, software libraries, a handset emulator based on QEMU, documentation,
sample code, and tutorials. Initially, Google's supported integrated development
environment (IDE) was Eclipse using the Android Development Tools (ADT) plugin;
in December 2014, Google released Android Studio, based on IntelliJ IDEA, as its
primary IDE for Android application development. Other development tools are
available, including a native development kit (NDK) for applications or extensions in
C or C++, Google App Inventor, a visual environment for novice programmers, and
III
various cross platform mobile web applications frameworks. In January 2014,
Google unveiled an framework based on Apache Cordova for porting Chrome HTML
5 web applications to Android, wrapped in a native application shell.
Android has a growing selection of third-party applications, which can be
acquired by users by downloading and installing the application's APK (Android
application package) file, or by downloading them using an application store program
that allows users to install, update, and remove applications from their devices.
Google Play Store is the primary application store installed on Android devices that
comply with Google's compatibility requirements and license the Google Mobile
Services software. Google Play Store allows users to browse, download and update
applications published by Google and third-party developers; as of July 2013, there
are more than one million applications available for Android in Play Store. As of July
2013, 50 billion applications have been installed. Some carriers offer direct carrier
billing for Google Play application purchases, where the cost of the application is
added to the user's monthly bill As of May 2017, there are over one billion active
users a month for Gmail, Android, Chrome, Google Play and Maps.
Due to the open nature of Android, a number of third-party application
marketplaces also exist for Android, either to provide a substitute for devices that are
not allowed to ship with Google Play Store, provide applications that cannot be
offered on Google Play Store due to policy violations, or for other reasons. Examples
of these third-party stores have included the Amazon Appstore, GetJar, and SlideMe.
F-Droid, another alternative marketplace, seeks to only provide applications that are
distributed under free and open source licenses. [7]
2.2.2. Android Memory management
Since Android devices are usually battery-powered, Android is designed to
manage processes to keep power consumption at a minimum. When an application is
not in use the system suspends its operation so that, while available for immediate
use rather than closed, it does not use battery power or CPU resources.Android
manages the applications stored in memory automatically: when memory is low, the
system will begin invisibly and automatically closing inactive processes, starting
with those that have been inactive for the longest amount of time.Lifehacker reported
III
in 2011 that third-party task killer applications were doing more harm than good. [7]
2.2.3. Android Security and privacy
As part of the broader 2013 mass surveillance disclosures it was revealed in
September 2013 that the American and British intelligence agencies, the National
Security Agency (NSA) and Government Communications Headquarters (GCHQ),
respectively, have access to the user data on iPhone, BlackBerry, and Android
devices. They are reportedly able to read almost all smartphone information,
including SMS, location, emails, and notes. In January 2014, further reports revealed
the intelligence agencies' capabilities to intercept the personal information
transmitted across the Internet by social networks and other popular applications
such as Angry Birds, which collect personal information of their users for advertising
and other commercial reasons. GCHQ has, according to The Guardian, a wiki-style
guide of different apps and advertising networks, and the different data that can be
siphoned from each. Later that week, the Finnish Angry Birds developer Rovio
announced that it was reconsidering its relationships with its advertising platforms in
the light of these revelations, and called upon the wider industry to do the same.

The documents revealed a further effort by the intelligence agencies to intercept


Google Maps searches and queries submitted from Android and other smartphones to
collect location information in bulk. The NSA and GCHQ insist their activities are in
compliance with all relevant domestic and international laws, although the Guardian
stated "the latest disclosures could also add to mounting public concern about how
the technology sector collects and uses information, especially for those outside the
US, who enjoy fewer privacy protections than Americans.

Leaked documents published by WikiLeaks, codenamed Vault 7 and dated from


2013–2016, detail the capabilities of the Central Intelligence Agency (CIA) to
perform electronic surveillance and cyber warfare, including the ability to
compromise the operating systems of most smartphones (including Android). [7]

2.3. Introduction and definition of JAVA


Java is a programming language which is currently owned by Oracle.
III
Programming languages are the building blocks for communicating instructions to
machines, without them the technology driven world we live in today wouldn’t exist.

Java is a general purpose high-level, object-oriented programming language.


Initially developed in 1991 under the name OAK, it was designed for handheld
devices and set-top box, but with limited success the name was changed to Java and
modified to be aimed at the then burgeoning World Wide Web. [8]

2.3.1. Idea of working using Java language


Java is an object-oriented language, which means that programmers define not
only the data type of a data structure, but also the types of functions that can be
applied to the data structure. It is similar in that way to C++ but has been simplified
to eliminate language features that can cause common errors. [8]

2.3.2. Aim of JAVA


The aim of Java is to be easy to use, provide a high level of reliability and to
also be secure. Security is built in as one of the foundations of the language due to it
being designed for mobile devices that would be exchanging data across networks.
[8]

2.4. Estimation
Estimation (or estimating) is the process of finding an estimate,
or approximation, which is a value that is usable for some purpose even if input data
may be incomplete, uncertain, or unstable. The value is nonetheless usable because it
is derived from the best information available. Typically, estimation involves "using
the value of a statistic derived from a sample to estimate the value of a corresponding
population parameter". The sample provides information that can be projected,
through various formal or informal processes, to determine a range most likely to
describe the missing information. An estimate that turns out to be incorrect will be
an overestimate if the estimate exceeded the actual result and an underestimate if the
estimate fell short of the actual result. [9] [10] [13]

III
2.4.2. Purposes of estimation
1- MONEY – to determine necessary amount of money required by the owner to
complete the proposed work.
2- QUANTITY – to determine the quantities of materials required in order to
program their timely procurement.
3- WORKER - to determine the number of various types of workers required in
each work.
4- TOOLS AND PLANTS – to arrange necessary tools and plants as per schedule
of work in correct numbers.
5- TIME – to calculate the completion time of project.
6- COST BENEFIT RATIO – to justify cost benefit ratio. [11] [12]

2.4.3. Types of estimates


Are divided into at least two different types depending on the purpose for which
they are prepared. And the amount of information available in the prepare of
estimates (sometimes claim a cognitive preliminary or budget guess ) this type
of guessing is implement prepared by the quantitative analysis of the proposed
project based on initial graphics and some details of the employer :
▪ The estimate has experience, wisdom, and a quantity of information.
▪ Is not considered sufficient to be used as a basis in the pricing of transactions.
[5] [14]
2.4.4. How estimation is done
Estimation is often done by sampling, which is counting a small number of examples
something, and projecting that number onto a larger population. An example of
estimation would be determining how many candies of a given size are in a glass jar.
Because the distribution of candies inside the jar may vary, the observer can count
the number of candies visible through the glass, consider the size of the jar, and
presume that a similar distribution can be found in the parts that cannot be seen,
thereby making an estimate of the total number of candies that could be in the jar if
that presumption were true. Estimates can similarly be generated by projecting results
from polls or surveys onto the entire population.
III
In making an estimate, the goal is often most useful to generate a range of possible
outcomes that is precise enough to be useful, but not so precise that it is likely to be
inaccurate. For example, in trying to guess the number of candies in the jar, if fifty
were visible, and the total volume of the jar seemed to be about twenty times as large
as the volume containing the visible candies, then one might simply project that there
were a thousand candies in the jar. Such a projection, intended to pick the single
value that is believed to be closest to the actual value, is called a point
estimate. However, a point estimation is likely to be incorrect, because the sample
size—in this case, the number of candies that are visible—is too small a number to be
sure that it does not contain anomalies that differ from the population as a whole. A
corresponding concept is an interval estimate, which captures a much larger range of
possibilities, but is too broad to be useful. For example, if one were asked to estimate
the percentage of people who like candy, it would clearly be correct that the number
falls between zero and one hundred percent. Such an estimate would provide no
guidance, however, to somebody who is trying to determine how many candies to
buy for a party to be attended by a hundred people. [12] [13] [14]

2.5. Some metaethical equations used in the Application [2]

2
1m
number of floor tile=
( x+ 0.003 )∗( y+ 0.003 ) ¿
¿

1m
number of floor tile=
x+ 0.003

width∗length
Number of blocks used for construction∈a specific area=
( x+ 0.01 )∗( z +0.01 )

1400
cement = ∗¿ Flattening
( B+ A )∗0.75

Weight of reinforced iron=¿

III
III
‫جمهورية العراق‬
‫ديوان الوقف الشيعي‬
‫كلية االمام الكاظم (ع) للعلوم االسالمية الجامعة‬
‫قسم هندسة تقنيات الحاسوب‬

‫اسم المشروع‬
‫مرشوع خترج مقدم إىل‬
‫قسم هندسة تقنيات احلاسوب – لكية الامام الاكظم (ع)‬
‫كجزء من متطلبات نيل درجة البلكوريوس يف هندسة تقنيات احلاسوب‬

‫من قبل‬

‫إرشاف‬
‫م‪.‬م‪ .‬عيل موىس تقي اخللخايل‬

‫‪2021‬م‬ ‫‪ 1442‬ه‬

You might also like