Construction Management Project Report
Short Description
Construction Management Project Report...
Description
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. Support section is also included for end users benefit.
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
Integrate a document viewer with redlining
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
Non-standardized, & time consuming communications
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
Progress schedule tracking & validation
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 ‘changeorder’ 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.
3.4 PROPOSED SYSTEM 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 Intuitive and user-friendly interface
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. The Requirements are broadly divided into two groups: 15
4.2
Functional requirements Non-functional requirements
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. Use Case 3: Contacts
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
1. Prompt the user that he typed the wrong password.
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: 1. Logout of the system.
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 Processor
:
Intel Pentium IV 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:
Specifies comments
21
……….
Creates hypertext links
……….
Formats text as bold
……….
Gives title to the page
…
Contains all tags and text in the HTML document
...
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 .. . JavaScript statements 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: ng-app
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, 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. ng-switch
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 CSSbased 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. It involves four major steps they are 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 Display the modules on the web page
Submit data to the database
Backend API
Allow user to login and update the data for every module.
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.
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
User(Owner)
Document Management
Project Management
Get Support
Logout
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
Customer
Change in Plans
Contacts
Get Support
Log out
Fig 5.4.2 Use case diagram for customer
Description:
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
Making Punch Lists Worker Contacts
Get Support
Logout
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:
User ID : int Name : String Username : String Password : String Email ID : String Mobile : int
Contacts ID : int Name : String Email : String Address : String Mobile : int Occupation : String
Support ID : int Message : String MailId : String
Login() Contacts() View Details() Logout()
AddNewContact() Update() Delete()
SendMail()
Worker(User)
Owner(User) AddNewSite() DeleteSiteDetails() AddNewUser() AddNewContact() ProjectManagement() DocumentManagement()
Document Management DocID : int DocName : String UploadNewDocument() Forward() Update() Delete()
ProjectManagement() AccountsManagement() MaterialManagement() Scheduling() EquipmentManagement()
Customer(User) Changeinplans()
Material Management ID : int Date : Date Used : int Remaining : int Issuedby : String
Estimation ID : int Budget : int Time : Date
Add() Edit() View()
AddNewSchedule() ChangePlans()
Fig 5.4.4 Class diagram
Description: 37
Equipment Management ID : int Name : String Reg No. : String Condition : String Service Date : Date SiteId : int Schedule : Date Schedule() AddNewEquipment() RemoveEquipment()
Accounts BillID : int CompanyName : String Amount : int LastDate : Date Remarks : String ViewAccounts() AddNew() Edit() Delete()
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
Enter new sites details
Verify Login Details
Save new site details
Successfully Added new site
Update Site details
Update Details
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
Add/ Manage Contacts
Manage Contacts
Success Enter a request mail
Success Logout Successfully Loged out from system
Fig 5.4.5 Sequence diagram for owner
Description:
38
Send mail
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
Enter update details
Save Update details Success
Request Estimate View Estimate Request Schedule View Schedule Request Documents View Documents Enter change in plans
Send Change in plans Success
Add/ Update Contacts
Manage Contacts
Success Enter request mail
Success Logout
Logged out from the system
39
Send Mail
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
:Contacts
:Support
:Backend API
Enter Login Details Verify Login Details
Manage Projects
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
Description:
40
This sequence diagram of worker shows the project management operations that can be performed by a worker to complete a project successfully.
Collaboration Diagram for Owner:
41
3: Enter new sites details
:Add New Site 6: Update Site details
:Owner
:Update/ Delete Site
15: Manage Project details 12: Add/ Update documents :Project Management :Document Management 9: Add new user details
21: Enter a request mail 4: Save new site details 18: Add/ Manage Contacts :User Id Creation
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 10: Save new user details
:Support
7: Update Details
1: Enter Login Details 24: Logout
16: Update Project Details 13: Save Documents
22: Send mail 2: Verify Login Details 19: Manage Contacts
:Contacts
:Backend API
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:
3: Enter update details
:Update Profile
:Customer :View Estimation
:View Documents
1: Enter login details 6: Request Estimate 8: Request Schedule 10: Request Documents 21: Logout
:View Schedule
4: Save Update details
12: Enter change in plans 18: Enter request mail 15: Add/ Update Contacts
5: Success 11: View Documents 14: Success 17: Success 20: Success 22: Logged out from the system
7: View Estimate
9: View Schedule
2: Verify login details
13: Send Change in plans :Change in Plans
16: Manage Contacts
:Contacts
:Backend API
19: Send Mail
:Support
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:
:Project Management 3: Manage Projects
:Making Punch Lists
6: Add punch list :Worker 9: Add/ Manage contacts
1: Enter Login Details 15: Logout
4: Manage Projects
12: Enter request mail 5: Success 8: Success 11: Success 14: Success 16: Success
:Support
7: Save punch lists
:Contacts
2: Verify Login Details
13: Send Mail 10: Manage Contacts
:Backend API
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
Invalid User
Invalid signin message is displayed
Valid User
Login to System Successfully
Fig 5.4.11 Activity diagram for login
Description:
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
Description: 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
Description:
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. 2. 3. 4. 5. 6. 7. 8.
Accounts Module Estimation Module Scheduling Module Document Management Module Materials and Aggregate Management Equipment Management Contacts Module 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 Import estimates for quick setup
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.
DOCUMENT MANAGEMENT:
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
Create and assign role-based permissions
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.
6.3 SAMPLE CODE 59
index.html Construction Management Software Toggle navigation 60
Construction Management Software Dashboard User ID Creation Profile Logout
61
Estimation Scheduling Document Management Material Management Skeleton Interior Equipment Management Equipment Control Equipment Tracking Resource Scheduling Accounts
62
Contacts Support Calculator 1 2 3 63
+ 4 5 6 - 7
64
8 9 * C 0 = / 65
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; contacts.push($scope.contact); 67
pass = JSON.stringify($scope.contact); console.log(pass); $scope.contact = {}; $location.path('/contacts'); }; } ]);
angular.module('addressBook').controller('ContactEditController', ['$scope', '$routeParams', '$location', function ($scope, $routeParams, $location) { var contactId = $routeParams.contactId ? parseInt($routeParams.contactId, 10) : 0; for(i in contacts){ if( contacts[i].id === contactId){ $scope.contact = contacts[i]; break; } } $scope.editContact = function() { $scope.contact = []; $location.path('/contacts'); }; }]); angular.module('addressBook').controller('ContactDelController', ['$scope', '$location', function ($scope, $location) { $scope.deleteContact = function(id) { for(i in contacts){ 68
if( contacts[i].id === id){ $scope.contact = contacts[i]; break; } } contacts.splice(contacts.indexOf($scope.contact),1); $scope.contact = []; $location.path('/contacts'); }; } ]);
69
CHAPTER – 7 7. RESULTS 7.1 SCREEN SHOTS Login Screen:
70
Fig 7.1.1 Login Screen
Description: The above screen depicts the login page of our application which can be accessed with valid username and password to enter the system.
Dashboard:
71
Fig 7.1.2 Dashboard
Description: This screen displays the dashboard for the construction management system that shows the project status and works to be done quickly and also has access to all the modules.
72
All Sites:
Fig 7.1.3 All Sites
Description: This screen depicts the all sites page of the application which shows the all projects that a company is working on. The site details can be modified or removed by the owner of the company only.
73
Add New Site:
Fig 7.1.4 Add New Site
Description:
74
This screen depicts add new site page where a new project can be added to system to track the status of the system and manage according to the budget and schedule.
Company Profile:
Fig 7.1.5 Company Profile 75
Description: This screen showcases the company profile page for updating the details of the company who uses this software.
User ID Creation:
76
Fig 7.1.6 User ID Creation
Description: The above screen shows the user id creation page where the owner of the application can add users to access the system and maintain the project on schedule and budget.
77
Scheduling:
Fig 7.1.7 Scheduling
Description: This screen depicts the scheduling module of our system which has a calendar application to view dates for scheduling and to add schedule for works in location.
78
Document Management:
Fig 7.1.8 Document Management
Description: The screen above is to display the document management module of construction management system where new documents
79
can be uploaded, existing one’s can be edited or deleted from the system.
Material Management:
Fig 7.1.9 Material Management
Description:
80
The screen above is to display the material management module where the materials data is stored to system to maintain project on budget such as data about cement, steel, sand etc.
Contacts:
81
Fig 7.1.10 Contacts
Description: The contacts module of the system is to store the contact information of a particular person where we can edit and delete the contacts.
82
Support:
Fig 7.1.11 Support Page
Description: This screen showing support module is useful in reporting any issues with the software or any queries about the system. They can also contact us through phone.
83
CHAPTER - 8 8. TESTING Software Testing is the process used to help identify the correctness,
completeness,
security,
and
quality
of
developed
computer software. Testing is a process of technical investigation, performed on behalf of stakeholders, that is intended to reveal qualityrelated information about the product with respect to the context in which it is intended to operate. Quality is not an absolute; it is value to some person. With that in mind, testing can never completely establish the correctness of arbitrary computer software; testing furnishes a criticism or comparison that compares the state and behavior of the product against a specification. An important point is that software testing should be distinguished from the separate discipline of Software Quality Assurance (SQA), which encompasses all business process areas, not just testing.
Introduction In general, software engineers distinguish software faults from software failures. In case of a failure, the software does not do what the user expects. A fault is a programming error that may or may not actually manifest as a failure. A fault can also be described as an error in the correctness of the semantic of a computer program. A fault will become a failure if the exact computation conditions are met, one of
84
them being that the faulty portion of computer software executes on the CPU. A fault can also turn into a failure when the software is ported to a different hardware platform or a different compiler, or when the software gets extended. Software testing is the technical investigation of the product under test to provide stakeholders with quality related information. Software testing may be viewed as a sub-field of Software Quality Assurance but typically exists independently (and there may be no SQA areas in some companies). In SQA, software process specialists and auditors take a broader view on software and its development. They examine and change the software engineering process itself to reduce the amount of faults that end up in the code or deliver faster. Regardless of the methods used or level of formality involved the desired result of testing is a level of confidence in the software so that the organization is confident that the software has an acceptable defect rate. What constitutes an acceptable defect rate depends on the nature of the software. An arcade video game designed to simulate flying an airplane would presumably have a much higher tolerance for defects than software used to control an actual airliner. A problem with software testing is that the number of defects in a
software
product
can
be
very
large,
and
the
number
of
configurations of the product larger still. Bugs that occur infrequently are difficult to find in testing. A rule of thumb is that a system that is expected to function without faults for a certain length of time must have already been tested for at least that length of time. This has severe consequences for projects to write long-lived reliable software.
85
A common practice of software testing is that it is performed by an independent group of testers after the functionality is developed but before it is shipped to the customer. This practice often results in the testing phase being used as project buffer to compensate for project delays. Another practice is to start software testing at the same moment the project starts and it is a continuous process until the project finishes.
8.1 TESTING TECHNIQUES White-box and black-box testing: To meet Wikipedia's quality standards, this section may require cleanup. Please discuss this issue on the talk page, and/or replace this tag with a more specific message. White box and black box testing are terms used to describe the point of view a test engineer takes when designing test cases. Black box is an external view of the test object while white box is an internal view. Software testing is partly intuitive, but largely systematic. Good testing involves much more than just running the program a few times to see whether it works. Thorough analysis of the program under test, backed by a broad knowledge of testing techniques and tools are prerequisites to systematic testing. Software Testing is the process of executing software in a controlled manner; in order to answer the 86
question “Does this software behave as specified?” Software testing is used in association with Verification and Validation. Verification is the checking of or testing of items, including software, for conformance and consistency with an associated specification. Software testing is just one kind of verification, which also uses techniques as reviews, inspections, walk-through. Validation is the process of checking what has been specified is what the user actually wanted.
Validation: Are we doing the right job?
Verification: Are we doing the job right?
At SDEI, 3 levels of software testing is done at various SDLC phases
Unit Testing: in which each unit (basic component) of the software is tested to verify that the detailed design for the unit has been correctly implemented
Integration testing: in which progressively larger groups of tested software components corresponding to elements of the architectural design are integrated and tested until the software works as a whole.
System testing: in which the software is integrated to the overall product and tested to show that all requirements are met
A
further
level
of
testing
is
also
done,
in
accordance
with
requirements:
Acceptance testing: upon which the acceptance of the complete software is based. The clients often do this.
87
Regression testing: is used to refer the repetition of the earlier successful tests to ensure that changes made in the software have not introduced new bugs/side effects.
In recent years the term grey box testing has come into common usage. The typical grey box tester is permitted to set up or manipulate the testing environment, like seeding a database, and can view the state of the product after his actions, like performing a SQL query on the database to be certain of the values of columns. It is used almost exclusively of client-server testers or others who use a database as a repository of information, but can also apply to a tester who has to manipulate XML files (DTD or an actual XML file) or configuration files directly. It can also be used of testers who know the internal workings or algorithm of the software under test and can write tests specifically for the anticipated results.
8.2 TESTING STRATEGIES
Unit testing tests the minimal software component and subcomponent or modules by the programmers.
Integration testing exposes defects in the interfaces and interaction between integrated components (modules).
Functional testing tests the product according to programmable work.
88
System testing tests an integrated system to verify/validate that it meets its requirements.
Acceptance testing can be conducted by the client. It allows the end-user or customer or client to decide whether or not to accept the product. Acceptance testing may be performed after the testing and before the implementation phase. See also Development stage o Alpha testing is simulated or actual operational testing by potential users/customers or an independent test team at the developers' site. Alpha testing is often employed for off-the-shelf software as a form of internal acceptance testing, before the software goes to beta testing. o Beta testing comes after alpha testing. Versions of the software, known as beta versions, are released to a limited audience outside of the company. The software is released to groups of people so that further testing can ensure the product has few faults or bugs. Sometimes, beta versions are made available to the open public to increase the feedback field to a maximal number of future users. It should be noted that although both Alpha and Beta are
referred to as testing it is in fact use emersion. The rigors that are applied are often unsystematic and many of the basic tenets of testing process are not used. The Alpha and Beta period provides insight into environmental and utilization conditions that can impact the software. After modifying software, either for a change in functionality or to fix defects, a regression test re-runs previously passing tests on the 89
modified
software
to
ensure
that
the
modifications
haven't
unintentionally caused a regression of previous functionality.
A sample testing cycle
Although testing varies between organizations, there is a cycle to testing: 1. Requirements
Analysis:
Testing
should
begin
in
the
requirements phase of the software development life cycle. 2. Test Planning: Test Strategy, Test Plan(s), Test Bed creation. 3. Test Development: Test Procedures, Test Scenarios, Test Cases, and Test Scripts to use in testing software. 4. Test Execution: Testers execute the software based on the plans and tests and report any errors found to the development team. 5. Test Reporting: Once testing is completed, testers generate metrics and make final reports on their test effort and whether or not the software tested is ready for release. 6. Retesting the Defects: Not all errors or defects reported must be fixed by a software development
team.
Some
may
be
caused
by
errors
in
configuring the test software to match the development or production environment. Some defects can be handled by a workaround in the production environment. Others might be deferred to future releases of the software, or the deficiency 90
might be accepted by the business user. There are yet other defects that may be rejected by the development team (of course, with due reason) if they deem it inappropriate to be called a defect.
8.3 TEST CASES S. No.
Test Case
Actual Behavior
Observed
Result
Behavior 1
Run the
It should open the user
-do-
Pass
2
application Validating the
interface It should take the values
-do-
Pass
3
Password Click on login
It should open the dashboard
-do-
Pass
4
button Registering new
It should take all the details
-do-
Pass
5
user Click on submit
regarding the new user It should submit all the
-do-
Pass
button
details to database and take
6
Adding new
to next page It should take all details
-do-
Pass
7
contact Click on save
about contact It should submit details to the -do-
Pass
button
database and show it in the
Retrieval of
list When click on any link
valid data
should display the required
Updating data
data Must show existing data
Username and
8
9
91
-do-
Pass
-do-
Pass
10
about materials
about asked material to make
Click on save
changes It should submit details to the -do-
button
database and show it in the
Pass
list
CHAPTER - 9 9. CONCLUSION 9.1 CONCLUSION This
project
is
able
to
successfully
incorporate
all
the
requirements specified by the Construction Operation System. Proper care has been taken during database design to maintain data integrity and to avoid data redundancy. The Construction Operation system is provided with a very friendly interface with project. Design procedures are included in the project to have the Document management better understand the system. The project is designed and coded in such a way that any further modifications that are needed in the future can be easily implemented without affecting the functionality of the system. The documentation provided in the project report helps the application developers understand the internal architecture of the 92
system and thus assist them in enhancing the system. Finally it is a very useful tool for big organization.
CHAPTER – 10 10.
FUTURE ENHANCEMENTS
10.1 FUTURE ENHANCEMENTS It is not possible to develop a system that makes all the requirements of the user. User requirements keep changing as the system is being used. Some of the future enhancements that can be done to this system are:
Based on the future security issues, security can be improved using emerging technologies.
The system can be made adaptable to the mobiles.
The system does not have a module to manage human resources in future it can be added.
As the technology emerges, it is possible to upgrade the system and can be adaptable to desired environment. 93
In future we can increase the speed of application to make works done in no time.
These internet applications upon using get very intelligent.
Once our project is successful, in future we are planning it to bring it to mobiles as an application.
The software in future gets the ledger book to note down each and every penny you have spent.
CHAPTER – 11 11.
BIBLIOGRAPHY
11.1 REFERENCE BOOKS
Book Name The Book of JavaScript 2nd Edition
Author
Dave Thau
94
Publisher
O’Reilly Media
Core HTML5 Canvas:
David Geary
Graphics, A Web Publishing with HTML5 and CSS3 in One Hour a Day AngularJS Programming by Example
AngularJS: Novice to Ninja
Laura Lemay, Rafe Colburn
Prentice Hall
SAMS
Agus Kurniawan
Kindle Edition
Sandeep Panda
Site Point
11.2 REFERENCE WEBSITES Bootstrap Resources
-
http://getbootstrap.com/
AngularJS
-
https://angularjs.org/
HTML and JavaScript
-
http://www.w3schools.com
95
View more...
Comments