• No results found

Construction Management Project Report

N/A
N/A
Protected

Academic year: 2021

Share "Construction Management Project Report"

Copied!
94
0
0

Loading.... (view fulltext now)

Full text

(1)

CHAPTER – 1

1. INTRODUCTION

1.1 PROBLEM STATEMENT

To provide a user friendly and quick solution for the managing sites through an online web application that can collaborate between site engineers and managers from different sites In the present system, all the refineries are not in single piece.

The Existing System for construction process is having the human work. If the Company wants to check the day to day human resources and equipment management logs is difficult task for human capabilities from all the construction sites the user must go at every place and check for the products so to overcome all this disadvantages, a new system developed where in the user will get all the details of the product at one place.

1.2 SCOPE

This Project investigates the entry threshold for providing a new transaction service channel via the real options approach, where the entry threshold is established by using an login system designed for the use of Customers, Owner, Site Manager, Site Engineer. Where creating users and content viewed by the users is controlled by owner and no. of users is dependent on the owner where he supplied with type of users while creating user id.

 User must have a valid user id and password to login to the system.

(2)

 If user forgets the password he can click forgot password option or contact support team.

 If a wrong password is given thrice in succession, that account will be locked and the customer will not be able to use it.

 When an invalid password is entered a warning is given to the user that his account is going to get locked.

 After the valid user logs in he is shown the list of projects which company owns. On selecting the desired construction site he is taken to a page which shows his modules which he is authenticated.

 User can request for the details of his project and completion status.

 User can make a change in plan to site manager or site engineer in the same project.

 User can transfer documents and photos of his construction from his account to any other account with this application.

 In emails, if message was sent successful a notification should appear to the customer, in case if it is unsuccessful, a proper message should be given to the customer as to why it failed.

 User can request for project progression report and weekly schedule.

 User can view his daily, weekly and monthly as well as annual account statements. He can also take print out of the same.

 Generate reports at every section.

 Administrator can take a back up of the database for every instance that is happening, periodically.

 All users are authenticated to avail the services.

(3)

1.3 OBJECTIVE

The main goal of this project was to build a web based application which is used to manage and operate our construction sites at one place from any part of the globe, and manage the entire process from the comfort of your own home.

Providing our customer a user friendly environment to work efficiently and to attain their customer satisfaction. Satisfaction of our customer is our first objective, designing a better tool for maintaining and helping to resolve problems in construction stream.

1.4 OVERVIEW

Here user sign up into the application, once he is registered then he can directly log into the application with valid user id and password and keep information seamlessly. Where one can manage documents and cash protected.

Users can access information also request information, upload information regarding to their usage, all receipts, bills can be upload electronically.

Engineers, contractors and managers are inter-related in this application where they can get in touch from different places.

(4)

CHAPTER - 2

2. LITERATURE SURVEY

DOCUMENT CONTROLS

Construction projects create volumes of drawings, submittals and design documents that are shared among multiple team members and outside suppliers. The changeable nature of projects requires extensive tracking of planning and design information throughout a project’s lifecycle. Our Document Controls allows building owners to collaborate with design firms and contractors to manage all the documentation for a project. You can:

 Manage the design review process

 Keep on top of RFIs and meeting action items

 Receive and approve submittals in bulk

 Upload and share files

(5)

BUDGET & COST

Budget and Cost Management provides the backbone to managing and forecasting the financial success of all programs and projects. The application’s features combined with platform functions, deliver a comprehensive Web-based system for managing the budget development process and comparing budgets to actual costs. You can:

 Organize your budget into a detailed scope breakdown

 Manage contracts and change orders all integrated with the budget

 Track changes early on and gain visibility into anticipated costs

 Roll up and drill into all financial metrics to gain visibility into project activities

Provide easy to use cash flow and Earned Value capabilities to use forecasting and project measurements

SCHEDULING

Successful projects and programs require management of countless tasks, activities, milestones and relationships in order to finish on time. Our Scheduling application manages multiple schedules across projects and programs, providing executives instant visibility of projects that are ahead of schedule and those critically behind schedule. With real-time status tracking and collaborative contributions, organizations can streamline communication and

(6)

deliver program and projects in less time and at a reduced cost. You can:

 Manage Schedules at multiple levels of detail

 Track key milestones and monitor progress on activities

 Collaborate on schedules to review changes

Powerful workflow engine that automates business process both internally and with your supply chain which allows for extensive collaboration directly into portal. A central inbox keeps track of all project participant activities and ensures timely action on activities. You can:

 Configure workflow for streamlined business processing

 Ad hoc workflow for flexibility

 Visualize workflow to find bottlenecks

 Process workflow actions on your phone

ADVANTAGE BUILDERS NETWORK CATEGORIES

Lenders / Funders - Current Pain Points

 New regulatory requirements to establish and maintain a loan review system

 Regulatory requirements to identify, monitor, and address problems in a timely manner

(7)

 Non-standardized communications & time consuming communications protocols

 Non-standardized risk management monitoring - new rules difficult & time consuming

 Inability to prove ‘prudent monitoring’ practices to fdic

 Inability to promptly identify problem loans in a timely manner

 Lack of real time project investment monitoring capabilities

 Urgent need to evaluate builders activities and compliance -documentation threshold

 Slow response time to shifting regulatory compliance requirements

 Labour intensive & time consuming progress validation slows funding draw process

 Lack of industry standardized scheduling process & project completion tracking

Project Owners / Developers - Current Pain Points

(8)

 Collaboration miscommunications - lack of documentation & validation

 Financial loss due to “he said - she said” ‘change-order’ process and pricing

 Non-standardized, difficult & time consuming risk management monitoring

 Lack of real time project monitoring

 Inability to effectively monitor builder’s bidding & contract awarding considerations

 Complications & expense arising from collaboration breakdowns

 Lack of standardized cross-check verifications between builders and owners

 Lack of standardized to ensure proper down-line ‘change-order’ collaboration

 Litigation & confrontation expenses due to misinterpretation of modified contracts

 Lack of industry standardized scheduling process & project completion tracking ability

(9)

General Contractors - Current Pain Points

 Non-standardized communications & collaboration BETWEEN custom enterprise solutions

 Increased workload ON all participants AND increased error probability

 Inability TO automatically integrate non-standardized bidding protocols from outside

 Inability TO automatically integrate non-standardized track & record RFI responses

 Loss OF operational efficiency due to lack OF bi-directional standardized automated communications routines, automated scheduling, & automated accounting validation

 Software solutions require all participants TO subscribe, pay, load & train TO THE specific software - little TO no standardization

 Financial loss due to “he said - she said” ‘change-order’ disputes, process AND pricing

 Lack of standardization TO ensure proper down-LINE ‘change-order’ collaboration

 Litigation & confrontation expenses due to misinterpretation of modified contracts

(10)

 Lack OF industry standardized scheduling process & project completion tracking ability

 Contract bidding restricted by operational limitations, dissemination & qualifying

 Contract bid submission non-standardized increasing review time requirements

 Contract awarding labour intensive, time consuming & awkward

 Employee background & e-verity checks labour intensive, time consuming & awkward

Builders - Current Pain Points

 Non-standardized communications & collaboration between all project participants

 Lack of customizable enterprise solutions in the industry due to cost constraints

 Limited functionality of ‘off the shelf’ software

 High cost of software alternatives hobble adoption

 Every software solution requires all participants in vertical chain to subscribe, pay, & train to the specific software, even infrequent users

 Non-custom enterprise solutions fail to address specific work flow protocols

(11)

 Industry lacks standardized gantt type calendars with push functionality

CHAPTER - 3

3. PROBLEM ANALYSIS

3.1 PROBLEM DESCRIPTION

The problem that always arises when a construction project is undertaken is the records that are to be maintained till the project completion.

But it is impossible with manual work when a project undertaken is of large scale i.e., which takes a period of more than 2 or 3 years. In such case, it is very difficult to maintain records of each and every bill and also of payments that are to be paid.

With out all these data, project cannot be maintained on schedule and on estimated budget which fails to serve the customer efficiently which leads to loss of goodwill of company in industry.

The complete description of problem and the solution proposed by us is given in below section.

(12)

3.2 EXISTING SYSTEM

The software is designed to replace manual system and make data Storage more reliable. The present system is tedious, as company administrator has to do all clerical work manually and update them from time to time as and when wanted.

Similarly all the different types of report and process detail are required to be stored systematically which is very difficult in the existing system case.

Also maintaining project on estimated budget and schedule is very difficult without the help of this data which leads to failure of the project.

The project management is very difficult task for any company.

3.3 LIMITATION OF EXISTING SYSTEM

 A document usually gets misplaced in a hurry.

 Report generation is very difficult and time consuming.

 Maximum manual work which always consume more human resources which cannot be maintained on a busy schedule.

 Human can make mistakes or forgo any tasks under pressure. Human errors in maintaining physical file.

 Delay the process such as cash recovery, material management, maintaining schedule on track can cost not only in money but also reputation

 Maintaining records for equipments may mislead sometimes can costs more than expected.

 Mobilizing scheduled equipment in advance may be skipped.

 Organizing human resources payroll always needs a hawk-eye.

(13)

 The proposed system aims at reducing the errors involved in the existing system.

 The human factor in the system is reduced to a minimize errors.

 Since the existing method is not a systematic one, maintaining the data is very difficult.

 Retrieval of data about transaction and customer is time consuming.

 The process of documentation of the services they provide cannot be done properly.

 Employee details are maintained properly.

 Report generation is very rare in the existing system.

 These all above problem enforces the implementation of the proposed system.

3.5 ADVANTAGES OF PROPOSED SYSTEM

 Instant access to project information.

 Individual role-based permission levels to protect confidential project data.

 Manage projects from any location with any Internet-connected device.

 No server installation or hardware required

 All project data is synced and shared in real time

 Providing you with resources to help you successfully manage your project

(14)

CHAPTER - 4

4. SOFTWARE REQUIREMENTS SPECIFICATION

4.1 INTRODUCTION

According to Roger Pressman in Software Engineering: A Practitioner's Approach (McGraw-Hill Publications) [SEPA–1997], the requirement specification document is produced at the end of Analysis of the system. This document is a very comprehensive document & contains all the User requirements & Analysis diagrams.

(15)

 Functional requirements

 Non-functional requirements

4.2 FUNCTIONAL REQUIREMENTS

Use Case 1: Login Primary Actor: User Pre Condition: Nil Main Scenario:

1. User prompted for login and password. 2. User gives the login and password. 3. System does authentication.

4. Dashboard is displayed.

Alternate Scenario: Authorization fails

1. Prompt the user that he typed the wrong password. 2. Allow him to re-enter the password. Give him 3 chances.

Use Case 2: Change Plans Primary Actor: User

Pre Condition: User logged in Main Scenario:

1. View approved plans. 2. Modify existing plans.

Alternate Scenario:

(a). Authorization fails

1. Prompt the user that he typed the wrong password. 2. Allow him to re-enter the password. Give him 3 chances. (b). Unable to modify plans due to authorization issues.

1. Prompt the user that he is not eligible to modify the plans.

(16)

Primary Actor: User

Pre Condition: User logged in Main Scenario:

1. View existing contacts. 2. Add/Manage new contacts.

Alternate Scenario: Authorization fails

1. Prompt the user that he typed the wrong password. 2. Allow him to re-enter the password. Give him 3 chances.

Use Case 4: Accounts Primary Actor: User

Pre Condition: User logged in Main Scenario:

1. View balance sheets, pending bills, pay rolls. 2. View overall budget.

Alternate Scenario: Authorization fails

1. Prompt the user that he typed the wrong password. 2. Allow him to re-enter the password. Give him 3 chances.

Use Case 5: Project Status Primary Actor: User

Pre Condition: User logged in Main Scenario:

1. View daily status. 2. View entire status.

3. Report any delays in status.

Alternate Scenario: Authorization fails

(17)

2. Allow him to re-enter the password. Give him 3 chances.

Use Case 6: Documents Primary Actor: User

Pre Condition: User logged in Main Scenario:

1. Display documents of the project.

2. Upload new documents that belong to the project.

Alternate Scenario:

(a). Authorization fails

1. Prompt the user that he typed the wrong password. 2. Allow him to re-enter the password. Give him 3 chances. (b). Unable to view the documents

1. Prompt the user that he is not authorized to view the documents.

Use Case 7: Support Primary Actor: User

Pre Condition: User logged in Main Scenario:

1. Display user guide to operate the application. 2. Provide call, email, mail support to the user.

Alternate Scenario: Authorization fails

1. Prompt the user that he typed the wrong password. 2. Allow him to re-enter the password. Give him 3 chances.

Use Case 8: Logout Primary Actor: User

Pre Condition: User logged in Main Scenario:

(18)

Alternate Scenario: Authorization fails

1. Prompt the user that he typed the wrong password. 2. Allow him to re-enter the password. Give him 3 chances.

4.3 NON FUNCTIONAL REQUIREMENTS

MAINTAINABILITY:

All the modules must be clearly separate to allow different user interfaces to be developed in future. Through thoughtful and effective software engineering, all steps of the software development process will be well documented to ensure maintainability of the product throughout its life time. All development will be provided with good documentation.

PERFORMANCE:

The response time, utilization and throughput behavior of the system is known as performance. Care is taken so as to ensure a system with comparatively high performance.

USABILITY:

The ease of use and training the end users of the system is usability. System should have qualities like- learning ability, efficiency, affect, control. The main aim of the project is to reduce server failure and get high performance of server and reduce the rework of the programmer.

MODIFIABILITY:

The ease with which a software system can accommodate changes to its software is modifiability. Our project is easily adaptable

(19)

for changes that is useful for the application to withstand the needs of the users.

PORTABILITY:

The ability of the system to run under different computing environments is known as portability. The environment types can be either hardware or software, but is usually a combination of two.

REUSABILITY:

The extent to which existing application can be reused in new application is known as reusability. Our application can be reused a number of times without any technical difficulties.

SECURITY:

The factors that protect the software from accidental or malicious access, use, modification, destruction, or disclosure is known as security. Security can be ensured as the project involves authenticating the users.

4.4 SOFTWARE REQUIREMENTS

Operating System : Windows

Front End : HTML, Bootstrap CSS, AngularJS Web Server : Apache Tomcat 8.0

4.5 HARDWARE REQUIREMENTS

(20)

RAM : 128 MB Hard Disk : 20GB

4.6 TECHNOLOGIES USED

HYPER TEXT MARKUP LANGUAGE

Hypertext Markup Language (HTML), the languages of the World Wide Web (WWW), allows users to produces web pages that include text, graphics and pointer to other Web pages (Hyperlinks).

HTML is not a programming language but it is an application of ISO Standard 8879, SGML (Standard Generalized Markup Language), but specialized to hypertext and adapted to the Web. The idea behind Hypertext is that instead of reading text in rigid linear structure, we can easily jump from one point to another point. A markup language is simply a series of elements, each delimited with special characters that define how text or other items enclosed within the elements should be displayed. Hyperlinks are underlined or emphasized works that load to other documents or some portions of the same document.

HTML can be used to display any type of document on the host computer, which can be geographically at a different location. It is a versatile language and can be used on any platform or desktop.

HTML provides tags (special codes) to make the document look attractive. HTML tags are not case-sensitive. Using graphics, fonts, different sizes, color, etc., can enhance the presentation of the document. Anything that is not a tag is part of the document itself.

Basic HTML Tags:

(21)

<A>……….</A> Creates hypertext links <B>……….</B> Formats text as bold <TITLE>……….</TITLE> Gives title to the page

<BODY>…</BODY> Contains all tags and text in the HTML document

<CENTER>...</CENTER> Centers text

Advantages

 A HTML document is small and hence easy to send over the net. It is small because it does not include formatted information.

 HTML is platform independent.

 HTML tags are not case-sensitive.

JavaScript

JavaScript is a script-based programming language that was developed by Netscape Communication Corporation. JavaScript was originally called Live Script and renamed as JavaScript to indicate its relationship with Java. JavaScript supports the development of both client and server components of Web-based applications. On the client side, it can be used to write programs that are executed by a Web browser within the context of a Web page. On the server side, it can be used to write Web server programs that can process information submitted by a Web browser and then update the browser’s display accordingly

(22)

Even though JavaScript supports both client and server Web programming, we prefer JavaScript at Client side programming since most of the browsers supports it. JavaScript is almost as easy to learn as HTML, and JavaScript statements can be included in HTML documents by enclosing the statements between a pair of scripting tags

<SCRIPTS>.. </SCRIPT>.

<SCRIPT LANGUAGE = “JavaScript”>JavaScript statements </SCRIPT>

Here are a few things we can do with JavaScript:

 Validate the contents of a form and make calculations.

 Add scrolling or changing messages to the Browser’s status line.

 Animate images or rotate images that change when we move the mouse over them.

 Detect the browser in use and display different content for different browsers.

 Detect installed plug-ins and notify the user if a plug-in is required.

We can do much more with JavaScript, including creating entire application.

ANGULARJS:

AngularJS, commonly referred to as Angular, is an open-source web application framework maintained by Google and a community of individual developers and corporations to address many of the challenges encountered in developing single-page applications. Its goal is to simplify both development and testing of such applications by providing a framework for client-side model–view–controller (MVC)

(23)

architecture, along with components commonly used in rich Internet applications.

The library works by first reading the HTML page, which has embedded into it additional custom tag attributes. Those attributes are interpreted as directives telling Angular to bind input or output parts of the page to a model that is represented by standard JavaScript variables. The values of those JavaScript variables can be manually set within the code, or retrieved from static or dynamic JSON resources.

Bootstrapper

ng-view

The base directive responsible for handling routes that resolve JSON before rendering templates driven by specified controllers The tasks performed by the AngularJS bootstrapper occur in three phases after the DOM has been loaded:

1. Creation of a new Injector

2. Compilation of the directives that decorate the DOM 3. Linking of all directives to scope

AngularJS directives allow the developer to specify custom and reusable HTML-like elements and attributes that define data bindings and the behavior of presentation components. Some of the most commonly used directives are:

(24)

Declares the root element of an AngularJS application, under which directives can be used to declare bindings and define behavior.

ng-bind

Sets the text of a DOM element to the value of an expression. For example, <span ng-bind="name"></span> will display the value of ‘name’ inside the span element. Any changes to the variable ‘name’ in the application's scope are reflected instantly in the DOM.

ng-model

Similar to ng-bind, but establishes a two-way data binding between the view and the scope.

ng-model-options

Allows tuning how model updates are done.

ng-class

Allows class attributes to be dynamically loaded.

ng-controller

Specifies a JavaScript controller class that evaluates HTML expressions.

ng-repeat

Instantiate an element once per item from a collection.

ng-show & ng-hide

Conditionally show or hide an element, depending on the value of a boolean expression. Show and hide is achieved by setting the CSS display style.

(25)

Conditionally instantiate one template from a set of choices, depending on the value of a selection expression.

ng-if

Basic if statement directive that allow to show the following element if the conditions are true. When the condition is false, the element is removed from the DOM. When true, a clone of the compiled element is re-inserted.

ng-aria

A module for accessibility support of common ARIA attributes.

ng-animate

A module provides support for JavaScript, CSS3 transition and CSS3 keyframe animation hooks within existing core and custom directives.

Two-Way Data Binding

AngularJS' two-way data binding is its most notable feature, and it reduces the amount of code written by relieving the server backend of templating responsibilities. Instead, templates are rendered in plain HTML according to data contained in a scope defined in the model. The $scope service in Angular detects changes to the model section and modifies HTML expressions in the view via a controller. Likewise, any alterations to the view are reflected in the model. This circumvents the need to actively manipulate the DOM and encourages bootstrapping and rapid prototyping of web applications.

AngularJS detects changes in models by comparing the current values with values stored earlier in a process of dirty-checking, unlike

(26)

Ember.js and Backbone.js that trigger listeners when the model values are changed.

BOOTSTRAP (FRONT-END FRAMEWORK)

Bootstrap is a free and open-source collection of tools for creating websites and web applications. It contains HTML- and CSS-based design templates for typography, forms, buttons, navigation and other interface components, as well as optional JavaScript extensions. The bootstrap framework aims to ease web development.

Bootstrap is a front end, that is an interface between the user and the server-side code which resides on the "back end" or server. And it is a web application framework, that is a software framework which is designed to support the development of dynamic websites and web applications.

As of March 2015, it was the most-starred project on GitHub, with over 78,000 stars and more than 30,000 forks.

Features

Bootstrap is compatible with the latest versions of the Google Chrome, Firefox, Internet Explorer, Opera, and Safari browsers, although some of these browsers are not supported on all platforms.[8]

Since version 2.0 it also supports responsive web design. This means the layout of web pages adjusts dynamically, taking into

(27)

account the characteristics of the device used (desktop, tablet, mobile phone).

Starting with version 3.0, Bootstrap adopted a mobile first design philosophy, emphasizing responsive design by default.

Bootstrap is open source and available on GitHub. Developers are encouraged to participate in the project and make their own contributions to the platform.

Structure and Function

Bootstrap is modular and consists essentially of a series of LESS stylesheets that implement the various components of the toolkit. A stylesheet called bootstrap.less includes the components stylesheets. Developers can adapt the Bootstrap file itself, selecting the components they wish to use in their project.

Adjustments are possible to a limited extent through a central configuration stylesheet. More profound changes are possible by the LESS declarations.

The use of LESS stylesheet language allows the use of variables, functions and operators, nested selectors, as well as so-called mixins.

Since version 2.0, the configuration of Bootstrap also has a special "Customize" option in the documentation. Moreover, the developer chooses on a form the desired components and adjusts, if necessary, the values of various options to their needs. The subsequently generated package already includes the pre-built CSS style sheet.

(28)

Grid system and responsive design comes standard with a 1170 pixel wide, grid layout. Alternatively, the developer can use a variable-width layout. For both cases, the toolkit has four variations to make use of different resolutions and types of devices: mobile phones, portrait and landscape, tablets and PCs with low and high resolution. Each variation adjusts the width of the columns.

The CSS

Bootstrap provides a set of stylesheets that provide basic style definitions for all key HTML components. These provide a uniform, modern appearance for formatting text, tables and form elements.

Re-Usable Components

In addition to the regular HTML elements, Bootstrap contains other commonly used interface elements. These include buttons with advanced features (e.g. grouping of buttons or buttons with drop-down option, make and navigation lists, horizontal and vertical tabs, navigation, breadcrumb navigation, pagination, etc.), labels, advanced typographic capabilities, thumbnails, warning messages and a progress bar. The components are implemented as CSS classes, which must be applied to certain HTML elements in a page.

Javascript Components

Bootstrap comes with several JavaScript components in the form of jQuery plugins. They provide additional user interface elements such as dialog boxes, tooltips, and carousels. They also extend the functionality of some existing interface elements, including

(29)

for example an auto-complete function for input fields. In version 2.0, the following JavaScript plugins are supported: Modal, Dropdown, Scrollspy, Tab, Tooltip, Popover, Alert, Button, Collapse, Carousel and Typeahead.

Fig 4.6.1 Example of a webpage using Bootstrap framework rendered

CHAPTER - 5

5. SYSTEM DESIGN

5.1 DESIGN OBJECTIVE

System can be defined as the “a set of fact, principles, rules etc., classified and arranged in an orderly form so as to show a logical plan linking the various parts” here the system design defines the computer based information system. The primary objective is to identify user requirements and to build a system that satisfies these requirements.

(30)

 Understanding how the system is working now

 Finding out what the system does now

 Understanding what the new system will do and

 Understanding how the new system will work.

5.2 ARCHITECTURE DIAGRAM

Fig 5.2.1 Architecture Diagram

5.3 UML DESCRIPTION

The Unified Modeling Language allows the software engineer to express an analysis model using the modeling notation that is governed by a set of syntactic semantic and pragmatic rules.

A UML system is represented using five different views that describe the system from distinctly different perspective. Each view is defined by a set of diagram, which is as follows.

Display the modules on the web page Backend API Allow user to login and update the data for every module. Submit data to the database

(31)

 User Model View

i. This view represents the system from the user’s perspective.

ii. The analysis representation describes a usage scenario from the end-users perspective.

 Structural model view

i. In this model the data and functionality are arrived from inside the system.

ii. This model view models the static structures.

 Behavioral Model View

It represents the dynamic of behavioral as parts of the system, depicting the interactions of collection between various structural elements described in the user model and structural model view.

 Implementation Model View

In this the structural and behavioral as parts of the system are represented as they are to be built.

 Environmental Model View

In this the structural and behavioral aspects of the environment in which the system is to be implemented are represented.

UML is specifically constructed through two different domains they are:

 UML Analysis modeling, this focuses on the user model and structural model views of the system.

 UML design modeling, which focuses on the behavioral modeling, implementation modeling and environmental model

(32)

views.

Use case Diagrams represent the functionality of the system from a user’s point of view. Use cases are used during requirements elicitation and analysis to represent the functionality of the system. Use cases focus on the behavior of the system from external point of view.

Actors are external entities that interact with the system. Examples of actors include users like administrator, bank customer …etc., or another system like central database.

(33)

5.4 UML DIAGRAMS

Use-case Diagram for Owner:

Log in

Adding New Site

Edit/Delete Site details

User Id Creation Document Management Project Management Get Support Logout User(Owner)

Fig 5.4.1 Use case diagram for owner

Description:

The above usecase depicts the actions that can be performed by the owner of the system such as logging into the system to update/add some data and also can get support from developers.

(34)

Use-case Diagram for Customer:

Log In Update Profile View Estimation View Schedule View Documents Change in Plans Contacts Get Support Log out Customer

Fig 5.4.2 Use case diagram for customer

(35)

The above usecase shows how a user of customer type can access a system and what actions he can perform on the system to get work done.

Use-case Diagram for Worker:

Log in

Project Management

Get Support

Logout Contacts Making Punch Lists Worker

Fig 5.4.3 Use Case diagram for Worker

Description:

This usecase shows the actions that are allowed to perform by a worker of the organization such as getting support, managing contacts etc.

(36)

Class Diagram:

Customer(User) Changeinplans() Support ID : int Message : String MailId : String SendMail() Contacts ID : int Name : String Email : String Address : String Mobile : int Occupation : String AddNewContact() Update() Delete() User ID : int Name : String Username : String Password : String Email ID : String Mobile : int Login() Contacts() View Details() Logout() Document Management DocID : int DocName : String UploadNewDocument() Forward() Update() Delete() Accounts BillID : int CompanyName : String Amount : int LastDate : Date Remarks : String ViewAccounts() AddNew() Edit() Delete() Equipment Management ID : int Name : String Reg No. : String Condition : String Service Date : Date SiteId : int Schedule : Date Schedule() AddNewEquipment() RemoveEquipment() Material Management ID : int Date : Date Used : int Remaining : int Issuedby : String Add() Edit() View() Worker(User) ProjectManagement() AccountsManagement() MaterialManagement() Scheduling() EquipmentManagement() Estimation ID : int Budget : int Time : Date AddNewSchedule() ChangePlans() Owner(User) AddNewSite() DeleteSiteDetails() AddNewUser() AddNewContact() ProjectManagement() DocumentManagement()

Fig 5.4.4 Class diagram

(37)

Class diagram representing the construction management system. Each user should have a valid userid and password. Client can login to the system and update information of the system.

Sequence Diagram for Owner:

:Owner :Add New Site :Update/ Delete Site :User Id Creation :Document Management :Project Management

:Contacts :Support :Backend API

Enter Login Details Verify Login Details

Enter new sites details Save new site details

Successfully Added new site

Successfully Updated / Deleted details

Add new user details Save new user details

Successfully Added new user Add/ Update documents Save Documents

Successfully Updated Documents

Manage Project details Update Project Details

Success

Success

Enter a request mail Send mail

Success

Logout

Successfully Loged out from system Add/ Manage Contacts

Manage Contacts Update Site details Update Details

Fig 5.4.5 Sequence diagram for owner

(38)

The above sequence diagram illustrates the project management operations that can be performed by owner with simple signin into the system through online.

He can perform operations on accounts, contacts, document modules.

Sequence Diagram for Customer:

:Customer :Update Profile :View Estimation

:View Schedule :View Documents

:Change in Plans

:Contacts :Support :Backend API

Enter login details

Verify login details

Request Estimate

View Estimate

Request Schedule

View Schedule Enter update details Save Update details

Success

Request Documents

View Documents Enter change in plans

Send Change in plans

Success

Add/ Update Contacts Manage Contacts

Success

Enter request mail Send Mail

Success

Logout

(39)

Fig 5.4.6 Sequence diagram for customer

Description:

The above sequence diagram illustrates the project management operations that can be performed by customer with simple signin into the system through online.

Sequence Diagram for Worker:

:Worker :Project

Management

:Making Punch Lists

:Support :Backend API

Enter Login Details

Verify Login Details

Manage Projects

:Contacts

Manage Projects

Success

Add punch list Save punch lists

Success

Add/ Manage contacts Manage Contacts

Success

Enter request mail Send Mail

Success

Logout

Success

Fig 5.4.7 Sequence diagram for worker

(40)

This sequence diagram of worker shows the project management operations that can be performed by a worker to complete a project successfully.

(41)

:Owner :Add New Site :Update/ Delete Site :User Id Creation :Document Management :Project Management :Contacts :Support :Backend API 2: Verify Login Details 1: Enter Login Details

24: Logout

5: Successfully Added new site 8: Successfully Updated / Deleted details

11: Successfully Added new user 14: Successfully Updated Documents

17: Success 20: Success 23: Success

25: Successfully Loged out from system 3: Enter new sites details

6: Update Site details

9: Add new user details

12: Add/ Update documents

15: Manage Project details

21: Enter a request mail

18: Add/ Manage Contacts

4: Save new site details

7: Update Details

10: Save new user details

13: Save Documents

16: Update Project Details

19: Manage Contacts 22: Send mail

Fig 5.4.8 Collaboration diagram for Owner

Description:

The above collaboration diagram illustrates the project management operations that can be performed by owner with simple signin into the system through online.

He can perform operations on accounts, contacts, document modules.

(42)

Collaboration Diagram for Customer:

:Customer :Update Profile :View Estimation :View Schedule :View Documents :Backend API :Change in Plans :Contacts :Support

2: Verify login details 1: Enter login details

6: Request Estimate 8: Request Schedule 10: Request Documents 21: Logout 5: Success 14: Success 17: Success 20: Success 22: Logged out from the system 3: Enter update details

12: Enter change in plans

15: Add/ Update Contacts18: Enter request mail

13: Send Change in plans 9: View Schedule

7: View Estimate 4: Save Update details

11: View Documents

16: Manage Contacts 19: Send Mail

Fig 5.4.9 Collaboration diagram for Customer

Description:

The above collaboration diagram illustrates the project management operations that can be performed by customer with simple signin into the system through online.

(43)

Collaboration Diagram for Worker:

:Worker :Project Management :Making Punch Lists :Support :Backend API :Contacts 2: Verify Login Details

3: Manage Projects

1: Enter Login Details 15: Logout 5: Success 8: Success 11: Success 14: Success 16: Success

6: Add punch list

9: Add/ Manage contacts

12: Enter request mail

4: Manage Projects

7: Save punch lists

13: Send Mail

10: Manage Contacts

Fig 5.4.10 Collaboration diagram for worker

Description:

This collaboration diagram of worker shows the project management operations that can be performed by a worker to complete a project successfully.

(44)

Activity Diagram for valid login:

Enter email address and password

Verify Authentication

Login to System Successfully

Invalid signin message is displayed Invalid User

Valid User

Fig 5.4.11 Activity diagram for login

(45)

The above diagram depicts the activities that are undergone when a login operation is being performed on the construction management system.

5.5 DATA FLOW DIAGRAMS

5.5.1 DFD Diagram for Login

Fig 5.5.1 DFD Diagram for Login

Description:

The above data flow diagram shows the login process in construction management system. The process shows how the data is flown from one page to another.

(46)

5.5.2 DFD Diagram of User

Fig 5.5.2 DFD Diagram for User

(47)

This data flow diagram shows the actions that can be performed by the user and the flow of data from one module to another right from logging into the system.

5.5.3 DFD Diagram of Update Profile

Fig 5.5.3 DFD Diagram for Update Profile

(48)

This data flow diagram shows the actions that can be performed by the user when updating a profile i.e., at first profile is viewed, update data then the data is validated and stored to the database.

CHAPTER – 6

6. IMPLEMENTATION

6.1 PROJECT MODULES

Any project is impossible to develop as a single building block as its purpose is to serve more than one functionality to the user which makes it difficult to develop as a single block instead divided into the number of parts which are called modules as each one of them serve different purpose.

This kind of development in any industry helps in reducing costs and risks at the same time increases the productivity very much. We also had implemented this kind of engineering for our project development which involves 8 modules each one of them is

(49)

built such that serves similar kind of functionalities and provide desired results for the customers. By this implementation it is very easy to develop and use the application by dividing it into modules.

In construction management system, we developed a total of 8 modules which are named below and each of them are explained clearly i.e., their functionality, limitations and advantages which makes our application unique from others.

This application consists of following modules 1. Accounts Module

2. Estimation Module 3. Scheduling Module

4. Document Management Module

5. Materials and Aggregate Management 6. Equipment Management

7. Contacts Module 8. Support Module

6.2 MODULE DESCRIPTION:

ACCOUNTS:

Managing your accounts payable and subcontracts can quickly become difficult without the right construction management software. System tracks subcontracts, lien releases, and change orders, giving you complete insight into your accounts.

Whether you bill based on percent complete or unit price, Construction Software will meet your construction company’s accounts receivable needs. System’s Accounts Receivable also tracks sales tax and generates tax reports based on your jobs. Because sales tax is not always applicable, portal has the ability to apply sales tax

(50)

based on the job, and can even apply sales tax based on the phase number with user rules defined.

Fully integrated with Job Cost, Accounts Receivable provides you with real time job information. With this information, you have the ability to control when changes impact contracts.

Our system is a completely integrated construction management software solution, which means you can use change requests built in Accounts Payable to build change orders for your clients to approve within Accounts Receivable. With this information, your project managers and owners have access to the most current information, and all information is kept in one secure, easy to access location.

Cash management can seem complex if you don’t know where your cash is going and what it’s going towards. With construction software’s cash management solution, you can easily perform bank and credit card reconciliations. Additionally, cash management records your credit card charges by vendor, helping you track where purchases were made.

ESTIMATION:

Use estimation tool to efficiently manage your project budgets. By automatically aligning your contracts and change orders with your budget, our tool makes it easy to review financial performance for a single project, or across many projects.

 Make informed financial decisions from the field

 Track expenses against budgets in real time

 Share the financial status of projects with your team

(51)

Budget and Cost Management provides the backbone to managing and forecasting the financial success of all programs and projects. The application’s features combined with platform functions, deliver a comprehensive Web-based system for managing the budget development process and comparing budgets to actual costs. You can:

 Organize your budget into a detailed scope breakdown

 Manage contracts and change orders all integrated with the budget

 Track changes early on and gain visibility into anticipated costs

 Roll up and drill into all financial metrics to gain visibility into project activities

Benefits of Estimation Tool:

 Avoid dual entry with spreadsheets

 Ensure forecasts are accurate

 Get real time insight into your project's profitability

 Transfer funds to and from contingency and allowance line items

 Move savings while maintaining data integrity

 Track how the project changes over time

SCHEDULING:

Scheduling means the preparation in advance of a list of different activities and their order of sequence to carry out any work as per the planned program.

For completing a project as per the plan, scheduling should be known to not only to the project managers, but also to all the links in the system namely engineers, supervisors,

(52)

Contractors and other coordinating agencies. Scheduling includes the following:

1. Determination of the amount of work to be done.

2. The order in which the work is to be performed at each stage 3. The time when each part of the work will start.

4. Allocation of the quantity and rate of output of departments.

5. The date of starting of each unit of work at each stage along the route to be followed.

Need for Scheduling

A project usually is a one-time effort. Every project will have its own features and they are of non-repetitive nature. In order to complete a project efficiently, the project manager must plan and schedule. During the course of project he will have to replan and schedule due to unexpected progress, delay or due to technical conditions. The main aspect of project management will be scheduling different activities in an acceptable time span and finally with controlling the progress of scheduled work.

Successful projects and programs require management of countless tasks, activities, milestones and relationships in order to finish on time. The Scheduling application manages multiple schedules across projects and programs, providing executives instant visibility of projects that are ahead of schedule and those critically behind schedule.

(53)

Many construction companies have filing cabinets full of documents pertaining to jobs, vendors, subcontracts, and employees. Even with a good filing system, documents can get lost or can be hard to find. Construction Software’s Document Imaging lets you lose the cabinets, creating all electronic records that you can store and associate with jobs, employee records, accounting transactions - with any record in your system.

Attach Documents Anywhere

Document Imaging fully integrates with other components, and enables you to scan and attach documents seamlessly to data, whether you’re working in Accounts Payable, Accounts Receivable, Equipment Management, or any other Spectrum solution. With this capability, you can attach a signed change order, the spreadsheet showing the pricing for the change order, and the string of emails discussing the change order all to an entry in Job Cost.

Scanning and Assignment Options

As integrated construction software, Spectrum gives you three ways to attach your documents in Document Imaging:

 As a batch – if you need to enter time cards or purchase orders, you can scan large batches of documents and associate them with the appropriate transactions.

 During data entry – while entering a transaction, such as a work order, you can scan and associate the paper work order without leaving the Work Order screen.

(54)

 After the fact – if a document isn’t available to scan at the time of data entry, Spectrum gives you the ability to go back and attach it at a later time.

MATERIALS AND AGGREGATE MANAGEMENT:

If your construction company has an aggregate pit or quarry, you understand the importance of tight material controls. Materials & Aggregate Management solution, including integration with scale applications, gives you the data and the reporting tools you need to ensure accuracy and efficiency in your operations.

If you rely on a third-party to haul materials, Spectrum helps you verify their time and mileage with freight cost reconciliation. You can compare the invoice from your vendor to tickets from your scales application, ensuring you are never overcharged.

We know that occasionally scales break or hauling must be put on hold. As a complete construction management software solution, Spectrum was designed to handle wait time in addition to hauling management. You may need to purchase aggregate from third-party vendors who invoice you.

Using the materials cost reconciliation function within the materials & aggregate management solution, you can either bill your customer for the materials or requisition the materials to the job.

Materials module works with other applications, including Job Cost, Inventory Control, Purchase Order, and Accounts Payable, without the need for double data entry. When a ticket is created and imported into system, you can apply the costs to a specific job, create

(55)

an invoice, or create a purchase order. You can also adjust your inventory depending on whether materials were transported in or out of your facility.

EQUIPMENT MANAGEMENT:

Your heavy equipment represents a vital and valuable investment in your construction business. To help you manage this investment, construction software offers equipment oriented solutions including:

 Equipment cost tracking

 Equipment tracking

 Equipment resource scheduling

Providing a powerful combination of data capture and analysis, system lets you take active control of your equipment, helping you get the most mileage out of each machine and optimize the performance of your entire fleet.

While in use, your heavy equipment incurs operating costs in the way of fuel consumption, wear on tires, and oil changes. Whether or not your equipment is running, you have fixed costs such as licensing and insurance. Equipment control solution tracks operating and fixed costs on each piece of heavy equipment.

(56)

You want to utilize your heavy equipment in the most efficient way possible. If you have a machine sitting idle at one job site, it’s possible that another job site could use it. Using construction software’s equipment tracking solution, you monitor where equipment is working and where it isn’t, helping you to make time and money saving deployment decisions.

Because most equipment must be hauled to the job site, the resource scheduling solution also lets you know who is available to haul the equipment and assigns them. As part of a robust construction management software application, resource scheduling notifies you of scheduling errors, such as if the equipment is larger than the vehicle that is supposed to haul it.

CONTACTS:

Contacts tool stores all contact data for project team members and vendors, and enables permissions to be set for each tool in system, controlling who has access to what data.

 Store an unlimited number of contacts

 Share contact information with your team

 Access contacts from mobile devices

(57)

Store and Share Unlimited Contacts

Construction project management software stores an unlimited number of contacts in its database that are instantly available to anyone on your team. Once entered, those contacts can be assigned to any project in your organization's project portfolio. Contacts can also be exported in a standard CSV format.

Role-based Permissions

Allows for the easy creation of custom role-based permission templates, so that new users can be set up with your organization's standard permissions in seconds. Roles such as subcontractors, architects, and engineers can all be custom-defined and then applied to project team members' permissions as new people join your project team during the course of a construction project.

Users can be set to always receive email notifications regarding RFIs, punch list items, and submittals, or they can elect to receive those notifications on a "one-off" basis.

Getting data into contacts Directory Tool is simple. Easily view directory data by individual, by company, or distribution group.

SUPPORT MODULE:

The support module in our system is designed for the users who use the software.

(58)

We believe you should always be able to talk to a real person when you’re in need of software support. We understand that every business faces unique challenges, and sometimes those challenges need customized solutions.

The aim of this module is to serve the customers whenever there is a problem in using the software. We will always be available to the customers through mail or through phone.

We want to interact with our customers to get feedback and also to support them all the time. The software is easy to use by its interface but there may be some difficulties in accessing the data or something but whatever the problem is we are here to serve our customers the best.

The customers always look for the company who gives them maximum help in time of need. Support is provided to users by responding to their mails or their messages over phone.

Once a person logs into our system we are there to help him all the time and take good reviews from him.

(59)

index.html

<!DOCTYPE html>

<html lang="en" ng-app="addressBook"> <head>

<meta charset="utf-8">

<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1">

<meta name="description" content=""> <meta name="author" content="">

<title>Construction Management Software</title>

<link href="stylesheets/css/bootstrap.min.css" rel="stylesheet"> <link href="stylesheets/css/bootstrap-theme.min.css"

rel="stylesheet">

<link href="stylesheets/css/dashboard.css" rel="stylesheet"> <link

href="stylesheets/font-awesome-4.3.0/css/font-awesome.min.css" rel="stylesheet">

<link href="stylesheets/css/index.css" rel="stylesheet"> <link href="stylesheets/css/style.css" rel="stylesheet"> </head>

<body>

<nav class="navbar navbar-inverse navbar-fixed-top"> <div class="container-fluid">

<div class="navbar-header">

<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" expanded="false" aria-controls="navbar">

(60)

<span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button>

<a class="navbar-brand" href="#/dashboard">Construction Management Software</a>

</div>

<div id="navbar" class="navbar-collapse collapse"> <ul class="nav navbar-nav navbar-right">

<li><a href="#/dashboard">Dashboard</a></li>

<li><a href="#/useridcreation">User ID Creation</a></li> <li><a href="#/useridcreation">Profile</a></li> <li><a href="signin.html">Logout</a></li> </ul> </div> </div> </nav> <div class="container-fluid"> <div class="row">

<div class="col-sm-3 col-md-2 sidebar"> <div class="nav nav-sidebar">

<form class="navbar-form">

<input type="text" style="width:90%" class="form-control" placeholder="Search...">

</form> <br>

<div id="MainMenu">

(61)

<a href="#/estimation" class="item list-group-item-success">Estimation</a>

<a href="#/scheduling" class="item list-group-item-success">Scheduling</a>

<a href="#/documentManagement" class="list-group-item list-group-item-success">Document Management</a>

<a href="#demo3" class="list-group-item list-group-item-success" data-toggle="collapse" data-parent="#MainMenu">Material Management&nbsp;&nbsp;<i class="fa fa-angle-down"></i></a> <div class="collapse" id="demo3">

<a href="#/skeleton" class="list-group-item" data-toggle="collapse" data-parent="#SubMenu1">Skeleton</a>

<a href="#/interior" class="list-group-item">Interior</a>

</div>

<a href="#demo4" class="list-group-item list-group-item-success" data-toggle="collapse" data-parent="#MainMenu">Equipment Management&nbsp;&nbsp;<i class="fa fa-angle-down"></i></a>

<div class="collapse" id="demo4">

<a href="#/equipmentControl" class="list-group-item">Equipment Control</a>

<a href="#/equipmentTracking" class="list-group-item">Equipment Tracking</a>

<a href="#/resourceScheduling" class="list-group-item">Resource Scheduling</a>

</div>

<a href="#/accounts" class="item list-group-item-success">Accounts</a>

(62)

<a href="#/contacts" class="item list-group-item-success">Contacts</a>

<a href="#/support" class="item list-group-item-success">Support</a>

</div> </div>

<div ng-controller="CalcController as calc" class="calc"> <form>

<div class="table-responsive">

<table class="table table-bordered"> <tr><td colspan="4"><h3>Calculator</h3></td></tr> <tr><td colspan="4">

<input type="text" ng-model="calc.input()" class="form-control" placeholder="0">

</td></tr> <tr>

<td>

<button class="btn btn-default" ng-click="calc.setResult(1)">1</button> </td>

<td>

<button class="btn btn-default" ng-click="calc.setResult(2)">2</button>

</td> <td>

<button class="btn btn-default" ng-click="calc.setResult(3)">3</button>

</td> <td>

(63)

<button class="btn btn-default" ng-click="calc.op('+')"><b>+</b></button> </td> </tr> <tr> <td>

<button class="btn btn-default" ng-click="calc.setResult(4)">4</button>

</td> <td>

<button class="btn btn-default" ng-click="calc.setResult(5)">5</button>

</td> <td>

<button class="btn btn-default" ng-click="calc.setResult(6)">6</button>

</td> <td>

<button class="btn btn-default" ng-click="calc.op('-')"><b>-</b></button>

</td> </tr> <tr> <td>

<button class="btn btn-default" ng-click="calc.setResult(7)">7</button>

</td> <td>

(64)

<button class="btn btn-default" ng-click="calc.setResult(8)">8</button>

</td> <td>

<button class="btn btn-default" ng-click="calc.setResult(9)">9</button>

</td> <td>

<button class="btn btn-default" ng-click="calc.op('*')"><b>*</b></button>

</td> </tr> <tr> <td>

<button class="btn btn-danger" ng-click="calc.clear()"><b>C</b></button>

</td> <td>

<button class="btn btn-default" ng-click="calc.setResult(0)">0</button>

</td> <td>

<button class="btn btn-success" ng-click="calc.dis()"><b>=</b></button>

</td> <td>

<button class="btn btn-default" ng-click="calc.op('/')"><b>/</b></button>

(65)

</tr> </table> </div> </form> </div> </div> </div>

<div class="col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main" ng-controller="JsonController">

<div ng-view="" id="ng-view"></div> </div> </div> </div> <script src="lib/jquery.min.js"></script> <script src="stylesheets/js/bootstrap.min.js"></script> <script src="stylesheets/js/docs.min.js"></script> <script src="lib/ie10-viewport-bug-workaround.js"></script> <!--Angular Files--> <script src="lib/angular.js"></script> <script src="lib/angular-route.js"></script> <script src="lib/ui-bootstrap-tpls-0.12.1.js"></script> <script src="application/application.js"></script> <script src="application/controllers/controllers.js"></script> </body> </html>

controller.js

angular.module('addressBook').controller('JsonController',[ '$http',

(66)

function($http){ contacts = []; $http.get('./application/controllers/contacts.json').success(function(d ata){ contacts = data; }).error(function(data,status){ alert("error"); console.log(status); }); }]); angular.module('addressBook').controller('ContactsController', ['$scope', '$location',

function ($scope, $location) {

$scope.getContacts = function () { $scope.contacts = contacts; }; $scope.getContacts(); } ]); angular.module('addressBook').controller('ContactAddController', ['$http', '$scope', '$location',

function ($http, $scope, $location) { $scope.insertContact = function () { var nextId = contacts.length +1;

$scope.contact.mobile = parseInt($scope.contact.mobile); $scope.contact.id = nextId;

References

Related documents

Construction project management software (CPMS) refers to the systems that help project owner/operators, program managers, and construction managers, control

Functionalities of Data Owner are Login, Profile(View Profile, Edit Profile, Change Password), Add Users, View data owner, Add data owner, Update Data owner, File Upload, View

Functionalities of Data Owner are Login, Profile(View Profile, Edit Profile, Change Password), Add Users, View data owner, Add data owner, Update Data owner, File Upload, View

login Registration Edit profile post problem feedback get problems forward problem add delete update analyze reply login validations Registration profile information problem

Develop &amp; Update Risk Management Plans Site Assessments Baseline Development Project Controls Risk Management Plans Report Assessment Findings Corrective Action

It allows addition of student records, manage their profile, view their records, update / delete the details entered and also manage the fees deposited by the student. The user

8). Other tasks as agreed under project management contract. Article 7 The owner may select a project management enterprise through tendering or direct engagement and shall enter

To delete a user login, select the desired login in the Users list, and then click the Delete button under the login’s details. The site displays a confirmation message; click OK to