Docstoc

Custom Homebuilder Financial Assistant

Document Sample
Custom Homebuilder Financial Assistant Powered By Docstoc
					            Custom Homebuilder Financial Assistant
                                     Project Plan



                                      Dec 04-03




                                     Faculty Advisors
                                  Professor John Lamont
                                 Professor Ralph Patterson
                                  Professor Todd Sirotiak


                                      Student Team
                                    Bo Rohlfsen - CprE
                                    Joseph Black - CprE
                                   Jon von Gillern - CprE
                                  Kenneth Sabotta - CprE
                                   Ryan Hawkins - ConE
                                  Ryan Kauffman - ConE


                                    November 13, 2011




Custom Homebuilder Financial Application
                                                               Table of Contents
Table of Contents ............................................................................................................................................. i
List of Figures ................................................................................................................................................. iii
List of Tables .................................................................................................................................................. iv
List of Definitions ............................................................................................................................................ v
1 Abstract ......................................................................................................................................................... 1
2 Acknowledgement ........................................................................................................................................ 2
3 Problem Statement....................................................................................................................................... 3
3.1         Current Methods .................................................................................................................................................. 3
3.2         Alternative Solutions ........................................................................................................................................... 3
3.3         Proposed Solution ................................................................................................................................................ 4
4 Operating Environment .............................................................................................................................. 5
4.1         Requirements ....................................................................................................................................................... 5
4.2         Conditions............................................................................................................................................................ 5
5 Intended Users and Intended Uses ............................................................................................................. 6
5.1         Intended Users ..................................................................................................................................................... 6
5.2         Intended Uses ...................................................................................................................................................... 6
6 Assumptions and Limitations ..................................................................................................................... 7
6.1         Assumptions ........................................................................................................................................................ 7
6.2         Limitations ......................................................................................................................................................... 11
7 Expected End Product and Other Deliverables ...................................................................................... 12
7.1         Custom Homebuilder Financial Software Package ........................................................................................... 12
7.2         Sample Data and Tutorials................................................................................................................................. 12
7.3         Operation/User Manual ..................................................................................................................................... 12
7.4         Client Assistance ............................................................................................................................................... 12
8 Proposed Approach.................................................................................................................................... 13
8.1         Functional Requirements ................................................................................................................................... 13
8.2         Constraints Considerations ................................................................................................................................ 15
8.3         Technology Considerations ............................................................................................................................... 16
8.4         Technology Approach Considerations............................................................................................................... 16
8.5         Testing Requirements Considerations ............................................................................................................... 17
8.6         Security Considerations ..................................................................................................................................... 18
8.7         Safety Considerations ........................................................................................................................................ 19
8.8         Intellectual Property Considerations .................................................................................................................. 20
8.9         Commercialization Considerations .................................................................................................................... 20

Homebuilder Financial Assistant                                                                                                                                                  i
8.10       Possible Risks and Risk Management ............................................................................................................... 21
8.11       Project Proposed Milestones and Evaluation Criteria ....................................................................................... 22
8.12       Project Tracking Procedures .............................................................................................................................. 23
9 Statement of Work ..................................................................................................................................... 25
9.1        Problem Definition ............................................................................................................................................ 25
9.2        Research ............................................................................................................................................................ 27
9.3        Technology ........................................................................................................................................................ 29
9.4        End Product Design ........................................................................................................................................... 31
9.5        Prototype Implementation ................................................................................................................................. 33
9.6        End Product Testing .......................................................................................................................................... 33
9.7        End Product Documentation .............................................................................................................................. 35
9.8        Project Reviews ................................................................................................................................................. 36
9.9        Project Reporting ............................................................................................................................................... 36
9.10       End Product Demonstration ............................................................................................................................... 39
10 Estimated Resource Requirement .......................................................................................................... 42
10.1       Effort Requirements Per Task ........................................................................................................................... 42
10.2       Effort Requirements Per Employee Resource ................................................................................................... 43
10.3       Effort Requirements Per Employee Per Task .................................................................................................... 43
10.4       Employee Salary Costs ...................................................................................................................................... 45
10.5       Project Documentation and Presentation Costs ................................................................................................. 45
10.6       Total Project Costs............................................................................................................................................. 46
11 Project Schedule ....................................................................................................................................... 47
11.1       Project Schedule ................................................................................................................................................ 47
11.2       Project Deliverables Schedule ........................................................................................................................... 48
12 Project Team Information....................................................................................................................... 51
12.1       Client Information ............................................................................................................................................. 51
12.2       Faculty Advisors ................................................................................................................................................ 51
12.3       Student Team ..................................................................................................................................................... 52
13 Closing Summary ..................................................................................................................................... 54
Appendix A – Microsoft Windows XP Requirements ............................................................................... 55
Appendix B – Software Project Diagrams .................................................................................................. 56




Homebuilder Financial Assistant                                                                                                                                               ii
                                                    List of Figures
Figure 11-1 Production Schedule ..................................................................................................... 47
Figure 11-2 Project Deliverables Overview ..................................................................................... 49
Figure 11-3 Detailed Deliverables Schedule .................................................................................... 50
Figure 13-1 Software Block Diagram ............................................................................................... 56
Figure 13-3 Screenshot of Custom Homebuilder Financial Assistant .............................................. 56




Homebuilder Financial Assistant                                                                                                     iii
                                                      List of Tables
Table 10-1 Effort Requirements per Task ........................................................................................ 42
Table 10-2 Effort Requirements per Employee ................................................................................ 43
Table 10-3 Itemized Effort for Bo J. Rohlfsen ................................................................................. 43
Table 10-4 Itemized Effort for Kenneth Q. Sabotta ......................................................................... 44
Table 10-5 Itemized Effort for Joseph D. Black ............................................................................... 44
Table 10-6 Itemized Effort for Jon E. von Gillern ........................................................................... 44
Table 10-7 Itemized Effort for Ryan J. Kauffman............................................................................ 44
Table 10-8 Itemized Effort for Ryan J. Hawkins.............................................................................. 45
Table 10-9 Employee Salary Costs ................................................................................................... 45
Table 10-10 Project Documentation Costs ....................................................................................... 46
Table 10-11 Total Project Cost ......................................................................................................... 46
Table 11-1 Deliverable Overview Schedule ..................................................................................... 48




Homebuilder Financial Assistant                                                                                                        iv
                                   List of Definitions
CSI – Acronym for Construction Specifications Institute; the institute which created the divisions
used in common construction projects
GUI – Acronym for Graphical User Interface; the part of a software application that the user
interacts with
Personal Computer – A computer built around a microprocessor for use by an individual, as in an
office or at home or school.
Software – written programs or procedures or rules and associated documentation pertaining to the
operation of a computer system and that are stored in read/write memory
Solution – The method or process of solving a problem
Developer – A person who codes software solutions.




Homebuilder Financial Assistant                                                                v
1 Abstract
Software for estimating, bidding, scheduling, tracking, and administering the paperwork required
for a large construction project is readily available to large general contractors. It is, however, well
beyond the scope and requirements of a smaller, custom homebuilder. This project shall design,
implement, and test a software package tailored to the needs of a smaller, custom homebuilder. The
package shall provide for conceptual and parametric cost estimating and management of the
bidding process required for building a custom home with subcontractors. The package shall
account for such variables as weather and subcontractor experience levels and shall allow for post-
completion review and feedback to perfect the software variables and improve the utility of the
package. This shall give small custom homebuilders an efficient way to manage their estimation
process as well as store information regarding the subcontractors they use and provide a stepping
stone to larger software packages used in this area.




Homebuilder Financial Assistant                                                           Page 1 of 56
2 Acknowledgement
Special thanks go to Professor John Lamont, Professor Ralph Patterson III, and Professor Todd
Sirotiak for their initial and continuing guidance on this project. Thanks also go to the Custom
Homebuilder Financial Assistant clients, Mark Taylor of Total Construction and Duane Jensen of
JCorp, Incorporated, for their time and participation in improving the quality and usefulness of this
project.




Homebuilder Financial Assistant                                                        Page 2 of 56
3 Problem Statement
3.1   CURRENT METHODS
Software for estimating, bidding, scheduling, tracking, and administering the paperwork required
for a large construction project is readily available to large general contractors. It is, however, well
beyond the scope and requirements of a smaller, custom homebuilder. Custom homebuilders
currently perform many hand calculations in the processes of bidding and estimating their projects.
These calculations may often be tedious and time consuming, thereby wasting valuable company
resources and decreasing the company’s overall efficiency. Also, these calculations allow for
arithmetic and planning errors. In the process of estimation for custom built homes, many of the
projects are quite similar. Current homebuilders must start from scratch for all new homes instead
of being able to reuse, or even mildly tweak, past data.

3.2   ALTERNATIVE SOLUTIONS
The creation of a software solution has many different approaches, and those examined by the
group are as follows.

3.2.1 Spreadsheet Development
A proposed approach shall include the use of a Microsoft Excel spreadsheet as the foundation of
the software. This would then allow templates to be formed within Excel to simplify the process of
custom homebuilding. With the use of a spreadsheet, the time required to produce the final
deliverable would be decreased dramatically. It would be possible for this solution to be developed
to function with all current needs of the customer, however, the end result of this approach would
lack flexibility required for future expansion. This solution would also require the purchase of
Microsoft Office to allow for full functionality by the end user.

3.2.2 Personal Computer Application for Microsoft Windows
This proposed approach shall result in a complete software solution being developed for a personal
computer. This would allow for a completely configurable interface and would provide the
flexibility needed for future expansion. This solution would, as a final deliverable, produce an
installer which would require no expensive prerequisites besides Microsoft Windows. This solution



Homebuilder Financial Assistant                                                           Page 3 of 56
would be limited to being compatible with Microsoft Windows XP operating on a personal
computer.

3.2.3 Portable Application for Microsoft Windows and Microsoft PocketPC
This proposed approach shall result in a complete software solution being developed for a personal
computer and mobile devices, including laptops and personal desk assistants. This would allow for
a completely configurable interface and would also provide the flexibility needed for future
expansion. This solution would, as a final deliverable, produce an installer for multiple platforms
including Microsoft Windows XP, Microsoft Windows CE, and Microsoft PocketPC.

3.2.4 Internet Based Application
This proposed approach shall result in a web-based software solution developed for all devices that
may access the internet. This solution would allow for a completely configurable interface and
would also provide the flexibility needed for future expansion. Along with being useful for the
custom homebuilder, this software would be accessible via the World Wide Web for all sub-
contractors. Each sub-contractor shall be able to input quotes into the system via the Internet for the
general contractor to view at a later time. This software, however, would require Internet
connectivity, as well as a possible domain and server to host the website. This solution would also
be less secure than alternative solutions.

3.3   PROPOSED SOLUTION
The proposed solution shall be the development of a personal computer application for Microsoft
Windows. This project shall be based off of the Microsoft .NET Framework to allow for future
expansion to portable devices such as laptops and personal desk assistants. It shall consist of a
completely configurable interface designed with dynamicity in mind. The primary solution shall be
developed only for a personal computer due to time constraints and resource availability but will,
however, remain open ended for future development teams to add more functionality and
equipment compatibility. This project aims to create a suitable software suite to help the small
custom homebuilder.       This software shall assist a builder in the planning, estimating, and
contractual stages of the home building process.




Homebuilder Financial Assistant                                                          Page 4 of 56
4 Operating Environment
The general requirements and operating conditions are specified below.

4.1   REQUIREMENTS
The operating environment for The Custom Homebuilder Financial Assistant shall have the
following requirements.

4.1.1 Microsoft Windows XP
This project shall consist of software that shall be built for Microsoft Windows XP with the latest
Service Pack installed.

4.1.2 Microsoft .NET Framework
This project shall run with a dependency on the Microsoft .NET Framework. The latest version of
the .NET Framework, currently version 1.1, shall be required for proper installation and use.

4.2   CONDITIONS
The Custom Homebuilder Financial Assistant shall operate under the following conditions.

4.2.1 Physical Stress
This project shall function under the normal shock ratings specified by the hardware manufacturer.
These specifications may be found in the owner’s manual supplied with the computer system.

4.2.2 Weather Conditions
This software project shall operate under the weather conditions specified by the hardware
manufacturer, including, but not limited to: humidity, precipitation, temperature, water submersion,
sunlight, and spills. These specifications may be found in the owner’s manual supplied with the
computer system.




Homebuilder Financial Assistant                                                       Page 5 of 56
5 Intended Users and Intended Uses
The following users and uses shall be considered during the development of this software solution.

5.1   INTENDED USERS
The intended users of this project are small custom homebuilders. A small custom homebuilder is
defined as a builder that only produces between one (1) and four (4) homes per year. The
homebuilder shall have extensive knowledge about what is required to build a custom home.
The homebuilder is not likely to be a computer expert, so the software shall need to take careful
consideration of the programs ease-of-use. The software must be easy to learn and able to function
with minimal computer knowledge as to not frustrate the end user. The user shall be expected to
have at least elementary knowledge of computers, including how to install software and run
programs from the Start Menu. They must also be able to use a mouse, keyboard, and other
peripherals connected to the computer.

5.2   INTENDED USES
The intended use of this project is to assist a small custom homebuilder in the planning, estimating,
bidding, and contractual stages of the home building process. The builder shall be able to use this
project to create a general estimate based off of the initial knowledge of the home design. The
software shall also be able to refine estimates as time progresses based upon client choices and data
availability. Whenever the builder is ready to offer a bid, at the click of a button they shall be able
to create a contract for the customer to sign.




Homebuilder Financial Assistant                                                          Page 6 of 56
6 Assumptions and Limitations
6.1   ASSUMPTIONS
The following initial assumptions shall be used for the development of this software project.

6.1.1 Windows XP Operating System
It is assumed that the client shall be using Microsoft Windows XP Operating System because it is
the business standard operating system and is compatible with most current PC hardware.

6.1.2 .NET Framework Installation
It is assumed that the client shall not have the Microsoft .NET Framework installed because it is
not a critical update from the Windows Update Website. The .NET Framework shall be included
for distribution on the deliverable media and installed automatically on the end users system as a
prerequisite for the software package installation.

6.1.3 Building Plan Available
It is assumed that blueprints or some other similar plan shall be available prior to using this
software. This shall assist the user in creating an accurate estimate.

6.1.4 Knowledge of Part Costs and Suppliers
It is assumed that the cost and availability of the many parts shall be known by the client because
the software shall initially have no prior knowledge of these costs. These costs and inventory shall
then be stored in a local database for future reference and estimations.

6.1.5 Knowledge of Weather Variations
It is assumed that the variations of weather shall be known by the client because these variables
shall not be predetermined by the software. The software shall use these variables to allow for
greater accuracy in estimating during inclement weather seasons.

6.1.6 Knowledge of Sub-Contractors
It is assumed that the sub-contractors shall be known by the client because their information is
needed by the software to provide the best estimations. It is assumed that the client shall know the
quality, craftsmanship, budgets, and costs of the sub-contractors and be able to enter more
information after each project to add to the local database of information.

Homebuilder Financial Assistant                                                        Page 7 of 56
6.1.7 Maximum Number of Users
It is assumed that there is a maximum of one (1) concurrent user for the software because the
software shall only initially run on one system. Future developments may expand this by allowing
for synchronization between multiple systems.

6.1.8 Size of Homebuilder
It is assumed that the homebuilder shall be building a maximum of four (4) homes per year. This is
the target audience for this software solution.

6.1.9 Computer Literacy
It is assumed that the user shall have a general understanding of computer technology. The user
shall know how to operate a mouse and keyboard, as well as be able to install and execute software.

6.1.10 Knowledge of Homebuilding
It is assumed that the user shall have vast prior knowledge of homebuilding. The user shall be
required to provide information specific to homebuilding costs and design specifications.

6.1.11 Understanding of the CSI Specification
It is assumed that the user shall have an understanding of the CSI specification and the sixteen
categories it involves. The user shall be required to enter information specific to each category and
subcategory of the CSI listing.

6.1.12 Homes Defined from Template
It is assumed that the user shall define new homes based off a template because many of the steps
and prices are similar across all homes. The user shall then adjust certain items to fit the
specifications of the current home being designed.

6.1.13 Single Home per Data Set
It is assumed that a single home shall be stored in each data file to facilitate movement of
estimation plans from one computer to another. The software shall store data related to a specific
home design in a unique location for later access and manipulation.




Homebuilder Financial Assistant                                                        Page 8 of 56
6.1.14 Template Availability
It is assumed that a template shall be readily available on the user’s system because it shall be
distributed with the software solution. The end user is assumed to not manually edit the files
because it shall produce critical errors.

6.1.15 File Syntax
It is assumed that a specific syntax shall be used to store data in the file because it shall be how the
program functions to read and write data. The end user is assumed not to manually edit the files
because it shall produce critical errors.

6.1.16 Continuous Power Supply
It is assumed that continuous power shall be supplied to the personal computer on which the
software is operating because of the use of volatile memory. Manipulated items shall be written to
disk only on intervals of five (5) minutes or when the user performs a ‘Save’ on the data.

6.1.17 Single Instance of Program
It is assumed that the user shall only run a single instance of the program at any given time because
of the input and output limitations. The user must fully exit a given instance of the program in
order to open a new instance.

6.1.18 Maximum Size of Home
It is assumed that the maximum size of the home shall be 5000 square feet because of the pricing
data of the structure. The user shall be able to create a home design up to, but not exceeding, this
limitation.

6.1.19 Availability of Mouse
It is assumed that the user shall have access to a mouse or other form of pointing device because it
shall be required to perform certain tasks. The user shall use the mouse to manipulate settings
within the program.

6.1.20 Storage Availability
It is assumed that the user shall have adequate free space on their system to accommodate both
installation and data storage because it is necessary for proper installation and operation. The


Homebuilder Financial Assistant                                                          Page 9 of 56
system should have an estimated 50 Megabytes of available disk space for program installation and
extra space for each data set stored.




Homebuilder Financial Assistant                                                   Page 10 of 56
6.2   LIMITATIONS
The following limitations have been determined or provided for the Custom Homebuilder Financial
Assistant.

6.2.1 Size of Homebuilder
It is assumed that the homebuilder shall be building one (1) to four (4) homes per year. This is the
audience that the software package shall appeal to.

6.2.2 Financial Limitations
The client shall not be required to buy additional software to run the final product. This includes
such software as Microsoft Office and Microsoft SQL Server 2000. Both software items would be
potential benefits to the project but other approaches shall be adequate. This shall save the client
money.

6.2.3 Maximum Size of Home
The maximum size of the home shall be limited to 5000 square feet because of the pricing data of
the structure. The user shall be able to create a home design up to, but not exceeding, this
limitation.

6.2.4 Use of Single Computer
The user shall be limited in the initial development to only having a single personal computer
running this software for the business. Future expansions shall allow for software synchronization
which shall allow multiple computers to operate on the same tasks.




Homebuilder Financial Assistant                                                      Page 11 of 56
7 Expected End Product and Other Deliverables
7.1   CUSTOM HOMEBUILDER FINANCIAL SOFTWARE PACKAGE
The software package shall consist of an installer to install and setup all necessary files and
executables needed to run the Custom Homebuilder Financial Assistant. The package is the
medium the end user shall utilize to create estimates as well as keep track of contractor bid history
and sub-contractor work history.

7.2   SAMPLE DATA AND TUTORIALS
Sample data shall be included with the software package including fictional bid histories of
subcontractors and tutorials that show the user how to customize the bid process. They shall be in
HTML format so that they can be read using a computer’s web browser and can be accessed
outside the software package.

7.3   OPERATION/USER MANUAL
This document shall outline the roles of each user and how that user shall interact with the software
package.   It shall also cover installation of the product and product maintenance issues (i.e.
importing and exporting data).     This document shall be available in HTML format with the
software as well as a bound printed copy on delivery.

7.4   CLIENT ASSISTANCE
Assistance shall be provided to the client upon completion of the end product. The client shall be
instructed on the use of the software, as well as be given presentations of the features of the
software. Clients shall be shown how to enter the data and gather the expected results from the
application and gain the knowledge to perform these tasks on their own.




Homebuilder Financial Assistant                                                       Page 12 of 56
8 Proposed Approach
8.1   FUNCTIONAL REQUIREMENTS
To provide for acceptable operation, the Custom Homebuilder Financial Assistant shall have the
following functional requirements.

8.1.1 Create Construction Estimates
The software shall create the estimates needed for the construction process of building a custom
home. The estimates shall be based upon data taken from the user and the factoring of variables
common to the system.

8.1.1.1 Accept User Input

The program shall accept the user input of information related to the estimate of a project. This
information shall contain items such as the price, quantity, and other related information dealing
with production materials.

8.1.1.2 Provide Printout of Estimate

The system shall provide a function to print the estimate created within the program. This estimate
shall contain the desired information of the end user, and only that information which is required
for the project to be a success.

8.1.2 Accept and Create Project Bids
The program shall consist of a section for the acceptance and creation of project bids. These bids
shall come from subcontractors or from the internal workings of the client’s company. The user
shall be able to input the given information and be able to use bid information in the creation of
project designs.

8.1.2.1 Accept User Input

The application shall accept the user input of information related to the bidding of a project. This
information shall consist of items related to subcontractor bidding or prices generated by the user’s
company. The user shall be able to enter bids from multiple subcontractors for each of the
homebuilding processes.


Homebuilder Financial Assistant                                                       Page 13 of 56
8.1.2.2 Provide Printout of Bid

The program shall provide a function to print the bids generated within the program. The
information contained on the printout shall consist of the subcontractor information as well as the
details of the bid.

8.1.3 Provide Scheduling for Construction Projects
This section shall be completed by future senior design teams. The Custom Homebuilder Financial
Assistant project shall provide scheduling assistance for the user. This assistance shall allow the
user to enter specific deadlines for the project and view information about the schedule.

8.1.3.1 Accept User Input

The software shall accept input from the user which shall include a task name, a start date, and a
finish date for all tasks. The user shall enter this information into the system where it shall be
stored for future access.

8.1.3.2 Provide Printout of Project Schedule

The system shall provide a function to print the schedule of a project. This printout shall include
each scheduled item for the project as well as the details related to the schedule.

8.1.4 Assist in Tracking of Construction Status
This section shall be completed by future senior design teams. The solution shall include a module
to assist in the tracking of construction projects. Items that shall be tracked include project status,
budget details, and company resources. The user shall be able to input and modify all information
related to the status of the project and view the details of the project at any time.

8.1.4.1 Accept User Input

The user shall be able to input information related to the status of the project and update this
information. The user shall enter the information related to the tracking of a project, such as
timelines and constraints, into the system to generate tracking reports.

8.1.4.2 Provide Printout of Current Status

The system shall consist of a function that shall print the tracking status of a project. The printout
shall include information related to each task and the status of the task.



Homebuilder Financial Assistant                                                         Page 14 of 56
8.1.5 Administer Paperwork for Construction Projects
The application shall include a module which shall be used in the administration of paperwork
related to the construction projects. This module shall accept the user input of the information
needed to generate the paperwork, provide views of the information related to the project, and
allow for the printing of information.

8.1.5.1 Accept User Input

The software shall accept user input of the information required to generate administration
paperwork for the construction projects. The user shall enter information related to the specifics of
administration paperwork such as contractual information and complete project overviews.

8.1.5.2 Provide Printout of Paperwork Needed for Project

The software shall include a function that shall produce a printout of the project paperwork. Items
that shall be printed include contracts and general project overviews.



8.2   CONSTRAINTS CONSIDERATIONS
Multiple constraints and considerations shall be taken into account during the production of the
software project. These items are listed below.

8.2.1 Operating Temperature
The project shall operate at temperatures specified in the owner’s manual of the personal computer
in which the software is running. The software shall maintain all functionality in such temperatures.

8.2.2 Weather Exposure
The project shall operate under weather conditions as specified in the owner’s manual of the
personal computer in which the software is running. The software shall maintain all functionality in
such weather conditions.

8.2.3 Application Installation Size
The application shall install on the end user system occupying less than 50 Megabytes of storage
space. The computer system shall have adequate storage space for the product installation plus free
space dedicated to the storage of saved projects.




Homebuilder Financial Assistant                                                       Page 15 of 56
8.3   TECHNOLOGY CONSIDERATIONS
Different technologies are available for the production and implementation of the Custom
Homebuilder Financial Assistant. Such technology choices are itemized below.

8.3.1 Computer Hardware
The Custom Homebuilder Financial Assistant shall operate on 32-bit x86 based personal
computers. The computer shall meet the requirements of Microsoft Windows XP Professional
installation as listed in Appendix A.

8.3.2 Operating Systems
The software shall function on any system operating on Microsoft Windows XP Professional. The
requirements for the installation of Microsoft Windows XP are listed in Appendix A.

8.3.3 Extra Operating System Requirements
The software shall have an extra requirement of having the Microsoft .NET Framework version 1.1
installed on the personal computer. This installation is a free download from the Microsoft
Windows Update Website and shall be distributed with this software package.

8.3.4 Programming Languages
The software shall be developed using Microsoft Visual Studio .NET 2003. The application shall
be created in the C# (pronounced C-Sharp) language using the visual interface provided by Visual
Studio.

8.3.5 Data Storage
The software shall use XML flat files for data storage. This architecture shall allow for complete
storage of all required data within the XML files. These files shall be accessed from the C# code.

8.4   TECHNOLOGY APPROACH CONSIDERATIONS
Many approaches are available for the development of the software application. Such approaches,
including development, testing, and prototyping, are documented below.

8.4.1 Software Componentization
The software shall be developed in a modularized format with each module being completely
independent of other modules within the software. This shall make the software dynamically
expandable while avoiding interdependencies. Each component of the software project shall be


Homebuilder Financial Assistant                                                       Page 16 of 56
produced and tested independently of other components. Upon completion of multiple components,
integration of the components shall be performed to create a level of the software hierarchy.

8.4.2 Software Structure
The structure of the software shall be based upon many levels that are included within the
development of the software. Such levels shall be individual components, integrated components,
and the graphical user interface.

8.4.3 Production Analysis
The software shall be analyzed based upon the performance of the software. This performance shall
be measured as being the actual functionality of the program and each of the separate components.
Other items of analysis shall be related to project design fulfilling the requirements of design and
structure.

8.4.4 Software Simulation
The software development stages shall include numerous simulations and prototypes designed to
test the functionality of the software as well as evaluate the appearance and approach. A set
schedule and simulation test matrix shall be implemented to ensure proper simulation of the
software.

8.4.5 Software Prototyping
During the development of the end product, the software shall be integrated into a prototype to test
and gather results. This prototype shall provide for the discovery of more assumptions and
limitations of the software and proper identification of errors within the program. The software
prototyping schedule shall be developed and documented according to a test matrix.

8.5   TESTING REQUIREMENTS CONSIDERATIONS
The software shall be tested to ensure proper operation and to qualify desired results. The testing of
this software shall be conducted according to a test matrix developed prior to project testing.

8.5.1 Planned Approach
The software testing approach shall be based off of a testing matrix. The matrix shall include the
proper testing procedures as well as a documentation strategy. The tests shall include the discovery
of software problems so that later code reviews can debug the issue. After the bugs have been



Homebuilder Financial Assistant                                                        Page 17 of 56
discovered, proper documentation as to how the issue is fixed shall be provided. The testing shall
involve calibration testing, integration testing, and other various scheduled tests.

8.5.2 Acceptance Criteria
The acceptance of a test shall be based upon the methods used to conduct the test, as well as the
testing results. These criteria shall be determined as a test plan is developed due to the diverse
environment that the development phase shall produce. The flexibility of the project shall lead to
multiple methods of testing, and each testing procedure shall be evaluated before the test is
performed.

8.6   SECURITY CONSIDERATIONS
During the development and deployment of the Custom Homebuilder Financial Assistant many
security considerations shall be taken into place. These security risks are broken down into two
main categories, namely the risks involved in creating the project and the security risks posed after
the product has been deployed.

8.6.1 Security Concerns Designing the Project
A few security concerns surround the design process of the Custom Homebuilder Financial
Assistant. These concerns are listed below.

8.6.1.1 Software Leak from Development

A concern that could be faced shall be the loss of source code to a competitor. This loss would be
substantial as it would give competitors a boost to development of their software projects. To
prevent such losses, all source code shall be stored on a secure server requiring a logon for access.
All traffic shall be documented on the server and recorded to ensure security in product production.

8.6.1.2 Stolen Concepts by Client

A possible concern regarding security shall be the theft of project concepts by the client. This theft
would allow a client to sell such ideas to competing software companies or allow them to develop
their own software at lower costs, thereby eliminating the software project at hand.




Homebuilder Financial Assistant                                                        Page 18 of 56
8.6.2 Security of the End Product
Multiple security concerns based off of the end product shall be faced during development. These
security concerns include the listed items below.

8.6.2.1 Theft of User’s Information

The theft of user’s information shall be a major concern during software development. The
software shall ensure that the theft of user information shall be minimal and take all possible
measures to affirm this.

8.6.2.2 Theft of User’s Client Information

The theft of the user’s clients information shall be a concern during application development. A
user shall be able to protect the identity of their client from each construction project so that
competing firms may not have access to the client and underbid the user of the Custom
Homebuilder Financial Assistant.

8.6.2.3 Software Piracy

Software piracy shall be a main concern during development. Possible solutions to resolve the
issues shall be listed below.

8.6.2.3.1   USE OF REGISTRY KEY

With the use of a registry key, the product shall be able to ensure that it may not be copied to
multiple systems and violate the product licensing agreement. The registry key shall be encrypted
and include information related to the user and the designated product key.

8.6.2.3.2   LICENSING PRODUCT KEY

Distribution of Product Licensing Keys shall help eliminate the act of software piracy. Requiring
the use of a license key shall prevent the theft of software as users shall be given specific product
keys that shall allow use. This key shall be unique for each client.

8.7   SAFETY CONSIDERATIONS
Few safety considerations need to be taken into place during the creation of the software
application. However, remote safety considerations shall be taken into account. These items are
listed below.

Homebuilder Financial Assistant                                                       Page 19 of 56
8.7.1 Construction Site Safety
Throughout the definition phase of product development, the developers shall visit numerous
construction sites to learn of the homebuilding process. While on these visits, the developers shall
take into consideration their safety, including avoidance of falling objects and other injuries that
may occur at the work place.

8.7.2 Hand and Wrist Injuries
During application development, programmers may face injuries to their wrists or hands related to
non-ergonomic work conditions. Such conditions are common with the use of computer keyboards,
but all safety and planning shall be put into place to minimize this risk.

8.8   INTELLECTUAL PROPERTY CONSIDERATIONS
Specific items shall be taken into account throughout project development to insure the intellectual
integrity of the software. Loss of intellectual property would be a devastating loss to this project,
and outlined below are two of the items in which a loss of property may occur.

8.8.1 Software Leak from Development
A concern that could be faced shall be the loss of source code to a competitor. This loss would be
substantial as it would give competitors a boost to development of their software projects. To
prevent such losses, all source code shall be stored on a secure server requiring a logon for access.
All traffic shall be documented on the server and recorded to ensure security in product production.

8.8.2 Stolen Concepts by Client
A possible concern regarding security shall be the theft of project concepts by the client. This theft
would allow a client to sell such ideas to competing software companies or allow them to develop
their own software at lower costs, thereby eliminating the software project at hand.

8.9   COMMERCIALIZATION CONSIDERATIONS
Multiple items shall be taken into account during the consideration of commercialization. Items of
consideration shall include the licensing, method of delivery to the client, and cost of the software
purchase.




Homebuilder Financial Assistant                                                        Page 20 of 56
8.9.1 Licensing
Licensing shall be a major concern while evaluating the possible commercialization of the
software. Multiple options exist for the licensing of the project and shall be examined thoroughly
during the progress of the project. Licensing conditions also include the client either having a
license for each individual client or the issue of a site license for all instances of the software.

8.9.2 Method of Delivery
The method of delivery shall be an item that is checked out. Different options exist, such as
distribution through CD media or Internet downloads. Each method shall be inspected for the
selection of the best option based off of software availability, cost, and overall customer
satisfaction with choice.

8.9.3 Cost of Custom Homebuilder Financial Assistant
The cost of the Custom Homebuilder Financial Assistant shall be determined during the design
planning of the software project. Items that shall affect cost include the estimated resource usage
and also the complexity of the program.

8.10 POSSIBLE RISKS AND RISK MANAGEMENT
Many risks shall be accounted for during the production of the Custom Homebuilder Financial
Assistant. These risks shall be avoided at all costs, but planning for the scenario shall be necessary
to make certain on time production.

8.10.1 Loss of Team Member
The loss of a team member shall be taken into account through the lifespan of software
development. Each component of software development shall have both a primary and secondary
owner. The primary owner shall be in charge of the software development of the designated
component. The secondary owner shall be responsible for all testing related to the developed
component. Upon loss of a team member, the following shall occur.




Homebuilder Financial Assistant                                                            Page 21 of 56
8.10.1.1 Loss of Primary Owner

If the project experiences the loss of a primary owner, the secondary owner of the project shall
inherit the primary ownership of the component losing the owner. A new secondary owner shall be
elected from the group based upon current availability and work load.

8.10.1.2 Loss of Secondary Owner

If the project experiences the loss of a secondary owner, the primary owner shall remain the sole
developer of the component. A new secondary owner shall be elected from the project team based
upon current availability and work load.

8.10.2 Loss of Project Client
If the project is forced to experience the loss of a project client, the project shall continue
development as planned. Work to locate a new client shall occur, and all possible clients shall be
evaluated per the project’s designated users and uses.

8.11 PROJECT PROPOSED MILESTONES AND EVALUATION CRITERIA
Milestones are an important tool to use for project status evaluations. The Custom Homebuilder
Financial Assistant shall be subject to the following milestones and evaluation criteria.

8.11.1 Completion of Project Definition Phase
The first milestone that shall be accomplished with the project shall be the completion of the
project definition phase. This phase consists of many of the prerequisites for later project phases
such as defining intended users and uses to creating an initial listing of assumptions and limitations.

8.11.2 Conclusion of Project Initial Research
The conclusion of the initial project research shall mark a milestone for the Custom Homebuilder
Financial Application. This milestone shall help to identify the possible solutions as well as
interview clients and examine competing software.

8.11.3 Selection of Project Technology
The selection of project technology shall serve as a milestone for the software project. This
milestone shall include both the research and identification of possible technology solutions as well
as itemizing the selection of all technologies to be used throughout the project.



Homebuilder Financial Assistant                                                        Page 22 of 56
8.11.4 Identification of Design Requirements
The identification of the design requirements shall serve as a milestone as to identify the beginning
of the product phase. This milestone shall be based off of the completion of all project design
requirement documentation and also any project research that has taken place.

8.11.5 Prototype of End Product Design
The creation of a prototype of the End Product Design shall serve as an important milestone to the
project. The milestone shall serve as a highlight of the features that shall be made available with the
end product and pinpoint further assumptions and limitations. Also, any fatal or critical errors in
the project design shall be identified by this milestone.

8.11.6 Documentation of End Product Design
The documentation of the end product design is a milestone that shall be reached after the creation
of the end product. This documentation shall be in draft form during the entire creation of the
project and shall be modified as any new code or feature is added to the overall project design. The
completion of this milestone shall serve as the projected end of project design.

8.11.7 Completion of Project Testing
The completion of project testing shall provide a milestone to the project in which all testing
assumed from the test matrix shall be completed. With the completion of this milestone, errors
from production shall be caught and fixed within the program design. Any changes that need to be
made to the project shall be made and all prior testing shall be repeated to ensure the quality of the
end product.

8.11.8 Presentation and Review of Project
With the creation of the presentation and review of project milestone, end of project design and
development shall be apparent. The project shall reach the manufacturing and marketing stage
within this milestone and be completed upon success of this milestone.

8.12 PROJECT TRACKING PROCEDURES
Many different tracking procedures shall be used through the continuing work within the software
project. Status within the Custom Homebuilder Financial Assistant shall be monitored using the
following methods.




Homebuilder Financial Assistant                                                        Page 23 of 56
8.12.1 Weekly Status Updates
Weekly status updates shall be required of each developer and team member consisting of the
following information. This information shall be emailed by 12:00 PM CST on Sunday of each
week to the team’s communication lead.

8.12.1.1 Current Week’s Itemized Work

The work in which the developer and team member was involved in throughout the previous week
shall be documented and all hours of work accounted for. Task completion percentage shall also be
included with all items.

8.12.1.2 Proposed Work for the Next Week

The work in which the developer and team member proposes to do for the next week shall be
documented and estimated hours of work shall be included. Estimated task completion percentage
shall also be included with all propositions.

8.12.1.3 Total Hours Devoted to the Project

The total hours of project work shall be included by each developer and team member through the
entire project. These hours shall be documented and shall be split into the tasks listed in Section 9 –
Statement of Work – of this document

8.12.2 Project Status
The project status shall be monitored by the team’s program manager. The manager shall be
responsible for weekly updates of the status and for ensuring the productivity of the team.

8.12.3 Plans for Being Behind Schedule
Plans shall be developed for the project in the case the project falls behind deadlines. These plans
shall itemize specific actions that shall be taken to guarantee on time delivery of project
deliverables and on time achievement of project milestones.

8.12.4 Microsoft Project
The project status of the Custom Homebuilder Financial Assistant shall be well documented within
Microsoft Project 2003. The team’s program manager shall be responsible for making sure all data
is correct and input into the software.




Homebuilder Financial Assistant                                                        Page 24 of 56
9 Statement of Work
This project shall be divided up into numerous tasks, each highlighted by specific milestones.
These tasks are itemized below.

9.1   PROBLEM DEFINITION
The software development team shall be responsible for the definition of the project. This
definition shall be divided into the following categories.

9.1.1 List of Terms and Their Definitions
A list of terms and definitions for use within the project shall be made available. The list shall be
made up of common terms, acronyms, and mnemonics.

9.1.1.1 Terms

Terms that are useful throughout the software project shall be established and documented for the
client and advisors to see. This listing of terms shall help the reader with the understanding of the
project and gather information about its specifics.

9.1.1.2 Acronyms

Acronyms that shall be used throughout the project shall be well documented. This listing of
acronyms shall contain certain abbreviations that are not common knowledge. While providing this
list of acronyms, the developers shall be positive that the reader understands all information
throughout the program and documentation.

9.1.1.3 Mnemonics

A list of mnemonics shall be developed during the software planning phase. This list of mnemonics
shall be important to the understanding of the technical documentation as well as the use of the
program in general.

9.1.2 Non-Technical Problem Description
A non-technical problem description shall be developed to help relate the problem to the intended
clients. The use of non-technical jargon shall help the reader in understanding the material
contained within.


Homebuilder Financial Assistant                                                       Page 25 of 56
9.1.2.1 The Problem Itself

The problem itself shall be defined without the use of technical terms or concepts. The explanation
shall make it clear to the client and all other audiences the purpose of the project and the
background behind it.

9.1.2.2 The Causes of the Problem

The causes of the problem shall be documented as an informative item for the client. The
documentation of the causes of the problem shall also help the group to reach a more appropriate
solution.

9.1.2.3 The Organizations or People Affected by the Problem

Understanding the organizations or people affected by the problem shall be a key item of the
project. Knowing of the struggles and difficulties faced by these individuals shall assist the
development team in the design of the end product.

9.1.2.4 The Way in Which the Affected Parties are Affected

Knowing how the affected parties are affected shall make a solution more applicable to the end
user. This project shall investigate the problems faced with the current situation in order to
understand the client better and develop a better product suited for them.

9.1.2.5 Any Other Impacts of the Problem

During the planning phase of the project, the design team shall investigate other impacts of the
problem. These impacts may be apparent in previous works completed by the homebuilders or by
discussing the problems with the homebuilders.

9.1.2.6 The Financial Value Associated with the Problem

The financial value associated with the problem shall be evaluated so that a cost worthy solution
may be developed. It is important to know the value of the solution so that the right amount of time
and work may be included in the product to produce a cost effective result for the client.

9.1.3 Initial Assumptions and Limitations
Initial assumptions and limitations shall be developed and documented for the project. This list of
assumptions and limitations shall grow with each decision that is made within the project group.



Homebuilder Financial Assistant                                                       Page 26 of 56
9.1.3.1 Initial Assumption List

The list of initial assumptions shall be developed and inspected thoroughly before project design
begins. The project design shall be variant based upon this list of assumptions, and therefore an
adequate list is required to guarantee the right end result.

9.1.3.2 Initial Limitations List

A list of initial limitations shall be set forth by both the clients as well as the developer team. These
limitations may be caused by many situations, but they all need to be completely understood and
followed so that the end solution may work in the designated environment and perform all required
tasks correctly.

9.1.4 Potential Commercialization and Marketing
Prior to the development stage of the software production process, the development team shall
investigate all potential commercialization and marketing for the end product. This information
shall be important as it shall influence how the product is produced.

9.1.4.1 Potential Market

A potential market for the software shall be discovered through interviewing and research. Once
this market has been identified, the different commercialization and marketing schemes shall be
presented as a way to get feedback from the clients.

9.1.4.2 Possible Competition

Evaluation of possible competition shall be performed before development begins. Through this
operation, the project group shall discover the shortcomings of competing software as to develop a
better product than the competitor.

9.2   RESEARCH
Completion of a research phase shall be set as a milestone in the software creation process. Items
that are to be included within this research are listed below.

9.2.1 Possible Solutions
The possible solutions of the problem shall be evaluated to determine many alternatives. Each
alternative shall be examined as to find the correct solution for the problem.



Homebuilder Financial Assistant                                                          Page 27 of 56
9.2.1.1 Discover Possible Solutions

Discovery of possible solutions shall play an important task in the software planning phase. These
solutions shall be found through communication with individuals closest to the problem. Once the
problem is fully understood, solutions shall be formulated and developed to fit the client’s needs.

9.2.1.2 Evaluate Possible Solutions

Each possible solution that has been discovered shall be evaluated for effectiveness, completeness,
and usability. There are many situations that shall play a roll in the evaluation to find the correct
solution, including internal development team discussion as well as meetings with clients.

9.2.1.3 Solution Decision

A decision of the best possible solution shall be concluded after full evaluation of all discovered
alternatives. This decision shall be based upon opinions of both the client and project teams. Once
selected, this proposed solution shall be the focus of project development.

9.2.2 Interviewing
During the research period of the Custom Homebuilder Financial Assistant application, client
interviews shall be conducted. These interviews shall help determine the items in which the client
is seeking a software package for.

9.2.2.1 Interview Planning

Planning of the interviews shall be done during the research phase of development. Each interview
shall serve as a purpose to discovering specific issues with the client. The interview schedule shall
be outlined and the results documented for completeness.

9.2.2.2 Interview Clients

Potential interview clients shall be selected from the pool of contacts provided for the project. Each
client shall have different viewpoints on key areas of the software interface, and it shall be
important to hear each item. Therefore, it shall be important to interview as many clients as
possible in a set amount of time.




Homebuilder Financial Assistant                                                        Page 28 of 56
9.2.3 Competing Software
Research of competing software shall be conducted to give the project developers insight into the
construction software industry. Through examining the software, the team shall be able to develop
a better end solution.

9.2.3.1 Search for Competing Software

The search of competing software shall be conducted by the construction engineering members of
the development team. Each of those members has access to commonly used software in the
construction industry and has far greater knowledge of that software.

9.2.3.2 Evaluation of Competing Software

Evaluation of competing software shall be conducted by all members of the project team. The
evaluation shall consist of examining the interface and also the functionality of the applications.
The software shall then be analyzed for strengths and weaknesses.

9.2.3.3 Analyze Strengths of Competing Software

The process of analyzing the strengths of competing software shall assist the group in developing a
product which shall also contain these strengths. All strengths shall be documented and
investigated to insure that it is included in the end product of the Custom Homebuilder Financial
Assistant.

9.2.3.4 Construction Engineering Input and Opinions

The input and opinions of the construction engineering team members shall be highly valuable
during the research phase of product development. Because these team members have past
experience not only with the software, but also in the industry, they shall be able to provide
important information and help guide the development team in the correct direction.

9.3   TECHNOLOGY
Technology shall play an important role in the development of the software product and also with
the end product. The technology for use shall be investigated fully.




Homebuilder Financial Assistant                                                       Page 29 of 56
9.3.1 Technology Discovery
The discovery of technology shall assist the group in the planning and development of the software
application. The discovery of technology shall be further broken down into the following
categories.

9.3.1.1 Technologies Available and Their Descriptions

Technologies available and their description shall be identified during this phase. Technologies
found shall be documented for further investigation.

9.3.1.2 Capabilities of Technology

The capabilities of all discovered technology shall be documented within the project. Each of the
capabilities shall be evaluated in the selection of the most appropriate technology for the project.

9.3.1.3 Maintenance and Life Expectancy of Technology

Maintenance and life expectancy of the technology shall play an important role in selection. The
best solution for this project shall be a solution with minimal maintenance and a high life
expectancy.

9.3.1.4 Technology Costs

The cost of each technology item shall be discovered to weigh its cost benefit. The best solution for
this project shall be the implemented with the use of the least expensive technology items.

9.3.1.5 Negative Aspects of Technology

Each item of technology shall be subject to discrimination between the pros and cons. The negative
aspects, or cons, shall be examined and documented for future technology selection purposes. This
item shall be important to discover the best technology with the least downfall.

9.3.2 Technology Selection
The selection of technology shall be based on the different factors examined in the discovery of
technology. Items for technology selection are listed below.




Homebuilder Financial Assistant                                                         Page 30 of 56
9.3.2.1 Advantages of Technology

The project team shall develop documentation based upon the advantages to each item of selected
technology. This list shall be weighed against the negative aspect list developed in the discovery
phase. The technology chosen shall be advantageous to the production of the software application.

9.3.2.2 Technology Implementation

The implementation of technology shall be investigated prior to the design phase of the project.
This closer look into the technology shall aid the developers in the decisions that shall be made as
the product is produced.

9.4   END PRODUCT DESIGN

9.4.1 Identification of Design Requirements
The identification of the design requirements shall serve as a milestone as to notify the beginning
of the product phase. This milestone shall be based off of the completion of all project design
requirement documentation and also any project research that shall have taken place.

9.4.2 Design Process
The Design Process shall include a multitude of tasks ranging from initial idea, concept and
definition; through to its design, development and prototype; ending with the product finalization,
manufacturing and marketing. Throughout the entire process, possible enhancements shall be
documented for future use.

9.4.2.1 Idea, Concept and Definition

The Design Process shall be a refinement process over the course of the project. Team members
shall meet on a weekly basis in order to create a series of software screen shots, a prototype version
to ensure proper general work flow, a beta version be tweaked to maximize user experience and
lastly the end product software shall be available to document. This process shall iteratively refine
itself over the course of the development life through project meetings, etc.

9.4.2.2 Design, Development and Prototype

Each section of the project shall be assigned to a main programmer and a secondary programmer.
The main programmer shall design and code their appropriate sections with the secondary


Homebuilder Financial Assistant                                                        Page 31 of 56
programmer serving as a sounding board and a section tester. All sections shall be consistently
reviewed by Construction Engineering Team Members and shall be periodically reviewed by the
client.

9.4.2.3 Finalization, Manufacturing and Market Readiness

Upon client final client approval of the final beta version of the software package, sample data,
templates and tutorials, all documentation shall be finalized and shall be deemed Market Ready.
The final software beta version shall include all necessary sections and functionality previously
determined and shall not be deemed the final beta until all conditions are met.

9.4.2.4 Possible Enhancements

All additional functionality not required of the first phase of the software project shall be
documented for any future software development. All reasonable attempts shall be made to ensure
maximal compatibility between the final software product and documentation and any future
enhancements.

9.4.3 Design Documentation
Design Documentation shall step through several drafts, a final proof reading and error check and
end with submission along with the software package.

9.4.3.1 Draft

All necessary software documentation (user manual) shall start being recorded during the beta
versions of the software development. This shall reduce the massive amounts of changes likely to
take place in the early stages of software development. Each section of software shall be
documented by its appropriate primary programmer.

9.4.3.2 Proof Read and Error Check

All documentation shall be reviewed and checked by appropriate section secondary programmer.

9.4.3.3 Submission

Documentation shall be in the form of HTML to allow for an easily available, robust medium of
displaying rich text and images that are necessary to fully convey product usability to product
users.



Homebuilder Financial Assistant                                                   Page 32 of 56
9.5   PROTOTYPE IMPLEMENTATION

9.5.1 Identification of Prototype Limitations and Substitutions
The development team shall identify the limitations of the prototype. These limitations shall be
documented prior to implementation to avoid redundant work.

9.5.2 Implementation of Prototype End Product
The product prototype shall be implemented in C# so that a demonstration can be given to the
clients. This implementation shall not actually perform the work required of the final product but it
shall be a visual representation of the final product.

9.6   END PRODUCT TESTING

9.6.1 Purpose of Testing
The product shall be fully tested so that the client shall not run into any difficulties when trying to
create estimates and contracts for custom homes.

9.6.2 Test Planning
This section shall outline the planning of tests for this project.

9.6.2.1 Different Types of Scheduled Tasks

Each task shall be tested prior to its scheduled completion date to ensure it is actually completed
bug free.

9.6.2.2 Problem Diagnosis Testing

The person that wrote the individual section of code shall test the code first until they are
convinced that the code is working correctly.

9.6.2.3 Different Types of Testers

There shall be a primary and a secondary tester for each subsystem. The primary tester shall be the
person assigned to programming that subsection and a different person shall be assigned as the
secondary. When the primary thinks they have completed the programming and testing they shall
ask the secondary to test it again.




Homebuilder Financial Assistant                                                        Page 33 of 56
9.6.2.4 Planning of Actual Tests

Each programmer shall plan their tests according to which subsystem they are working on and how
they think they can find the errors in their code.

9.6.2.5 Recording of Test Plans and Results

Each programmer shall keep track of all testing and results in their senior design notebooks.

9.6.3 Testing Procedures
This section outlines the testing procedures.

9.6.3.1 Scheduled Testing

Each programmer shall test their subsystem prior to its scheduled completion date to ensure that it
is ready on the due date.

9.6.3.2 Diagnostic Testing

Each programmer shall test their subsystem with regards to its operation with each of the other
subsystems to ensure compatibility.

9.6.4 Evaluation of Test Results
If any of the tests fail the programmer shall find a solution to the situation.

9.6.5 Records of Testing Activities
All tests shall be recorded by each programmer into their senior design notebooks.

9.6.5.1 Handmade Calculations

Handmade calculations shall be recorded in senior design notebooks.

9.6.5.2 Other Software for Testing

There is no other software that shall be used for testing.

9.6.6 Reporting of Testing Activities
Each programmer is responsible to compile all of their testing documentation into a final testing
document to show what has been tested and how.




Homebuilder Financial Assistant                                                       Page 34 of 56
9.7   END PRODUCT DOCUMENTATION
End product documentation shall be included with the project to allow proper communication to
the client about the features and specifications of the software. Many documents shall be created in
this process and they shall be produced in a format that is understood by the client.

9.7.1 Development of End User Documentation
End user documentation shall be created for the Custom Homebuilder Financial Assistant to
provide overall instruction on the use of the software application. The documentation shall be
readable and provide the correct communication with the desired audience.

9.7.1.1 Draft

A drafting process of the documentation shall be completed which shall involve the time taken to
produce a working version. This draft shall be written by multiple members of the design team and
reach a point where it shall be considered the initial draft.

9.7.1.2 Proof Read and Error Check

A phase of proof reading and error checking shall be completed by the development team. This
proof reading shall lead to the correction of any grammatical errors that may be present within the
documentation and to allow for proper English to be presented in a readable format. Spelling errors
and other technical items shall also be handled during this phase.

9.7.1.3 Submittal

Submittal of the end project documentation shall be completed during the fall semester of 2004.
This documentation shall be submitted in a bound format similar to the previously submitted items.
The submission process shall involve the passing of the final version onto the client and advisor
teams.

9.7.2 Development of Maintenance and Support Documentation
Maintenance and support documentation shall be created for the end user and future development
teams. The purpose of this documentation shall be to provide insight into the production methods
and allow for the debugging of common errors. Contact information shall also be included in these
documents for future reference in case of support issues.



Homebuilder Financial Assistant                                                         Page 35 of 56
9.7.2.1 Draft

A drafting process of the documentation shall be completed which shall involve the time taken to
produce a working version. This draft shall be written by multiple members of the design team and
reach a point where it shall be considered the initial draft.

9.7.2.2 Proof Read and Error Check

A phase of proof reading and error checking shall be completed by the development team. This
proof reading shall lead to the correction of any grammatical errors that may be present within the
documentation and to allow for proper English to be presented in a readable format. Spelling errors
and other technical items shall also be handled during this phase.

9.7.2.3 Submittal

Submittal of the project maintenance and support documentation shall be completed during the fall
semester of 2004. This documentation shall be submitted in a bound format similar to the
previously submitted items. The submission process shall involve the passing of the final version
onto the client and advisor teams.

9.8   PROJECT REVIEWS
At the end of the software production, a review shall be given related to all items within the project,
including functionality, dependability, resource management, and overall project approach.
Different sections of the review process are listed below.

9.8.1 Preparation
The preparation phase of the project review shall include the identification of introduction
materials, a general outlined purpose, team participation, and knowledge of the audience. The
design team shall work together to coordinate a presentation for the project review period and shall
produce material to be used for the presentation.

9.8.2 Review
A review process shall be conducted where all team members shall be required to present
information related to the project and anticipated success thereof. The review shall be given to a
predetermined audience and the presentation shall be created specific to the audience.

9.9   PROJECT REPORTING

Homebuilder Financial Assistant                                                        Page 36 of 56
9.9.1 Project Plan Development
This section shall outline how the development team shall create a project plan document.

9.9.1.1 Draft

The project plan shall be drafted according to chapter 24 of the senior design course notes by the
entire group a week prior to the due date. This shall allow ample time to correct the document
before it is due.

9.9.1.2 Proof Read and Error Check

Each member of the team shall be responsible to proof read the document prior to it being
submitted.

9.9.1.3 Submittal

The project plan shall be submitted on the due date in the appropriate format.

9.9.1.4 Revisions

The project plan shall be revised according to advisor recommendations.

9.9.1.5 Bound Distribution

After the project plan has been revised it shall be bound at CopyWorks and this document shall be
submitted.

9.9.2 Project Poster Development
This section shall outline how the development team shall create a poster.

9.9.2.1 Draft and Design

The project poster shall be drafted out a week before the due date according to the specifications in
chapter 25 of the senior design course notes.

9.9.2.2 Proof Read and Error Check

Each member of the team shall be responsible to proof read the poster prior to it being printed.

9.9.2.3 Advisor Suggestions

A copy of the poster shall be submitted to the advisors for the comments and suggestions prior to
the due date.

Homebuilder Financial Assistant                                                       Page 37 of 56
9.9.2.4 Submittal

The poster shall be submitted in completed form on the due date.

9.9.3 End Product Design Report Development
This section shall outline how the development team shall create the end product design report.

9.9.3.1 Draft

The end product design report shall be drafted according to the specifications in chapter 26 of the
senior design course notes a week prior to the due date.

9.9.3.2 Proof Read and Error Check

Each member of the team shall be responsible to proof read the end product design report prior to
its submittal date.

9.9.3.3 Submittal

The end product design report shall be submitted in completed form on the due date.

9.9.3.4 Revisions

The end product design report shall be revised according to advisor recommendations.

9.9.3.5 Bound Distribution

After the end product design report has been revised it shall be bound at CopyWorks and this
document shall be submitted.

9.9.4 Project Final Report Development
This section shall outline how the development team shall create the project final report.

9.9.4.1 Draft

The project final report shall be drafted according to the specifications in chapter 33 of the senior
design course notes a week prior to the due date.

9.9.4.2 Proof Read and Error Check

Each member of the team shall be responsible to proof read the project final report prior to its
submittal date.



Homebuilder Financial Assistant                                                       Page 38 of 56
9.9.4.3 Submittal

The project final report shall be submitted in completed form on the due date.

9.9.5 Weekly Email Reporting
This section shall outline how the development team shall report weekly status updates.

9.9.5.1 Group Member Reporting

Each team member shall send an email to the communications lead by Sunday at 12:00 P.M.
covering all of their activities and hours for the week.

9.9.5.2 Report Submission

The communications lead shall compile all of the information submitted by team members into a
weekly status report This status report shall be emailed to the entire team including advisors and
clients so that everyone knows what the current project status is.



9.10 END PRODUCT DEMONSTRATION
Upon the conclusion of the Custom Homebuilder Financial Assistant there shall be a series of
product demonstrations to various audiences including that of an Industrial Review Panel. The
demonstration shall outline the entire project to a specific audience and relate necessary
information as required.

9.10.1 Demonstration Planning
Initial demonstration planning shall take place and many activities shall be performed to prepare
the development team for the multiple product demonstrations.

9.10.1.1 Speech Preparation

Speech preparation shall consist of the time spent understanding the project as a whole. This
preparation shall help the project team be well prepared for the demonstration and have the ability
to appeal to the audience.

9.10.1.2 PowerPoint Slide Show Development

A Microsoft PowerPoint slide show shall be developed as a visual assistant during the end product
demonstration. Use of many graphics and a colorful appearance shall help persuade the audience of


Homebuilder Financial Assistant                                                     Page 39 of 56
the satisfactory results of the project. The slide show shall highlight all important information
pertaining to the project and its end results.

9.10.1.3 Wardrobe Planning

Specific time shall be spent in preparation of wardrobe planning. It is important that the group
appear professional and coordinated for the presentation. Appropriate planning shall help guarantee
the overall success of the demonstration.

9.10.2 Faculty Advisor Demonstration
A faculty advisor demonstration shall be given so that the advisors may monitor the project status
and examine product development. The advisor demonstration shall be used in preparation for the
industrial review panel.

9.10.2.1 Speech Preparation

Speech preparation shall consist of the time spent understanding the project as a whole. This
preparation shall help the project team be well prepared for the demonstration and have the ability
to appeal to the audience.

9.10.2.2 Speech Presentation

A speech shall be presented during the client demonstration. This speech shall include the use of a
Microsoft PowerPoint slide show developed specifically for this purpose. Items discussed in this
speech shall include the project approach as well as the overall success of the project.

9.10.3 Client Demonstration
A client demonstration shall be performed at the completion of the end product. This process shall
allow the client to examine the software project and value its success. The client demonstration
shall provide valuable feedback into the software production process.

9.10.3.1 Speech Preparation

Speech preparation shall consist of the time spent understanding the project as a whole. This
preparation shall help the project team be well prepared for the demonstration and have the ability
to appeal to the audience.




Homebuilder Financial Assistant                                                        Page 40 of 56
9.10.3.2 Speech Presentation

A speech shall be presented during the client demonstration. This speech shall include the use of a
Microsoft PowerPoint slide show developed specifically for this purpose. Items discussed in this
speech shall include the project approach as well as the overall success of the project.

9.10.4 Industrial Review Panel Demonstration
The final demonstration to take place shall be with the Industrial Review Panel. This presentation
stresses the professionalism that shall be required in the presentation and allows the development
team to showcase the final product.

9.10.4.1 Speech Preparation

Speech preparation shall consist of the time spent understanding the project as a whole. This
preparation shall help the project team be well prepared for the demonstration and have the ability
to appeal to the audience.

9.10.4.2 Speech Presentation

A speech shall be presented during the client demonstration. This speech shall include the use of a
Microsoft PowerPoint slide show developed specifically for this purpose. Items discussed in this
speech shall include the project approach as well as the overall success of the project.




Homebuilder Financial Assistant                                                        Page 41 of 56
10 Estimated Resource Requirement
10.1 EFFORT REQUIREMENTS PER TASK
Many employee resources shall be used to reach completion of the Custom Homebuilder Financial
Assistant Application. These resources are itemized per task within the following table.


Table 10-1 Effort Requirements per Task

       Task Name                                        Estimated Effort Hours
       Problem Definition                               21.88 Hours
       Research                                         57.48 Hours
       Technology                                       54.80 Hours
       End Product Design                               256.38 Hours
       Prototype Implementation                         44.13 Hours
       End Product Testing                              157.33 Hours
       End Product Documentation                        83.60 Hours
       Project Reviews                                  104.25 Hours
       Project Reporting                                454.72 Hours
       End Product Demonstration                        76.00 Hours
       TOTAL HOURS                                      1310.57 Hours




Homebuilder Financial Assistant                                                      Page 42 of 56
10.2 EFFORT REQUIREMENTS PER EMPLOYEE RESOURCE
Each employee shall perform multiple sub tasks within each primary task. The total work required
for each employee resource is documented in the following table.


Table 10-2 Effort Requirements per Employee

        Employee Name                                  Estimated Effort Hours
        Bo J. Rohlfsen                                 274.58 Hours
        Kenneth Q. Sabotta                             271.35 Hours
        Joseph D. Black                                265.50 Hours
        Jon E. von Gillern                             267.93 Hours
        Ryan J. Kauffman                               114.43 Hours
        Ryan J. Hawkins                                116.75 Hours
        TOTAL HOURS                                    1310.54 Hours




10.3 EFFORT REQUIREMENTS PER EMPLOYEE PER TASK
The following is a breakdown of employee hours per task to itemize out where time shall be spent.


Table 10-3 Itemized Effort for Bo J. Rohlfsen
        Bo J. Rohlfsen                                 274.58 Hours
              Problem Definition                          5.25 Hours
              Research                                    9.63 Hours
              End-Product Testing                         15.50 Hours
              End-Product Documentation                   11.00 Hours
              Technology                                  9.60 Hours
              End-Product Design                          72.63 Hours
              Prototype Implementation                    6.25 Hours
              Project Reviews                             20.00 Hours
              Project Reporting                           108.73 Hours
              End-Product Demonstration                   16.00 Hours




Homebuilder Financial Assistant                                                    Page 43 of 56
Table 10-4 Itemized Effort for Kenneth Q. Sabotta
        Kenneth Q. Sabotta                          271.35 Hours
             Problem Definition                        5.25 Hours
             Research                                  9.90 Hours
             End-Product Testing                       19.38 Hours
             End-Product Documentation                 19.25 Hours
             Technology                                9.00 Hours
             End-Product Design                        48.13 Hours
             Prototype Implementation                  6.88 Hours
             Project Reviews                           21.25 Hours
             Project Reporting                         115.33 Hours
             End-Product Demonstration                 17.00 Hours



Table 10-5 Itemized Effort for Joseph D. Black
        Joseph D. Black                             265.50 Hours
             Problem Definition                        4.38 Hours
             Research                                  8.53 Hours
             End-Product Testing                       19.38 Hours
             End-Product Documentation                 16.50 Hours
             Technology                                8.00 Hours
             End-Product Design                        66.50 Hours
             Prototype Implementation                  7.88 Hours
             Project Reviews                           20.50 Hours
             Project Reporting                         98.85 Hours
             End-Product Demonstration                 15.00 Hours



Table 10-6 Itemized Effort for Jon E. von Gillern
        Jon E. von Gillern                          267.93 Hours
             Problem Definition                        3.50 Hours
             Research                                  8.25 Hours
             End-Product Testing                       25.58 Hours
             End-Product Documentation                 13.75 Hours
             Technology                                8.00 Hours
             End-Product Design                        65.62 Hours
             Prototype Implementation                  8.13 Hours
             Project Reviews                           21.25 Hours
             Project Reporting                         98.85 Hours
             End-Product Demonstration                 15.00 Hours



Table 10-7 Itemized Effort for Ryan J. Kauffman
        Ryan J. Kauffman                            114.43 Hours
             Problem Definition                        1.75 Hours
             Research                                  11.00 Hours
             End-Product Testing                       38.75 Hours
             End-Product Documentation                 11.00 Hours
             Technology                                10.20 Hours
             End-Product Design                        1.75 Hours
             Prototype Implementation                  7.50 Hours
             Project Reviews                           10.00 Hours
             Project Reporting                         16.48 Hours
             End-Product Demonstration                 6.00 Hours



Homebuilder Financial Assistant                                       Page 44 of 56
Table 10-8 Itemized Effort for Ryan J. Hawkins
         Ryan J. Hawkins                                116.75 Hours
              Problem Definition                           1.75 Hours
              Research                                     10.18 Hours
              End-Product Testing                          38.75 Hours
              End-Product Documentation                    12.10 Hours
              Technology                                   10.00 Hours
              End-Product Design                           1.75 Hours
              Prototype Implementation                     7.50 Hours
              Project Reviews                              11.25 Hours
              Project Reporting                            16.48 Hours
              End-Product Demonstration                    7.00 Hours




10.4 EMPLOYEE SALARY COSTS
Throughout the development of the Custom Homebuilder Financial Assistant, each employee shall
have a set salary. All of the development shall be compensated with the set salary. The table below
itemizes the costs of employing each individual to the team.


Table 10-9 Employee Salary Costs

   Employee Name                          Rate         Hours             Total Compensation
   Bo J. Rohlfsen                         $10.00       274.58            $2,745.80
   Kenneth Q. Sabotta                     $10.00       271.35            $2,713.50
   Joseph D. Black                        $10.00       265.50            $2,655.00
   Jon E. von Gillern                     $10.00       267.93            $2,679.30
   Ryan J. Kauffman                       $10.00       114.43            $1,144.30
   Ryan J. Hawkins                        $10.00       116.75            $1,167.50
   TOTAL SALARY                                                          $13,105.40



10.5 PROJECT DOCUMENTATION AND PRESENTATION COSTS
During the different phases of product development, certain documents shall need to be produced.
These documents include this project plan, a design specification, project poster, and final project
documentation. The following table shall itemize the costs needed for these documents.



Homebuilder Financial Assistant                                                       Page 45 of 56
Table 10-10 Project Documentation Costs

Documentation Item                                      Cost
Bound Project Plan                                      $10.00
Project Poster Draft Printing                           $4.00
Project Poster                                          $70.00
Bound Design Document                                   $10.00
User Documentation                                      $10.00
TOTAL DOCUMENTATION COST                                $ 104.00



10.6 TOTAL PROJECT COSTS
The total cost of the project in development shall include the compensation for labor, as well as the
costs of project documentation. The total costs of the project are documented with the following
table.


Table 10-11 Total Project Cost

Project Item                                       Cost
Labor Compensation                                 $13,105.40
Project Documentation                              $104.40
TOTAL PROJECT COST                                 $13,209.80




Homebuilder Financial Assistant                                                       Page 46 of 56
11 Project Schedule
11.1 PROJECT SCHEDULE
Throughout the development of the Custom Homebuilder Financial Assistant, many items shall be
completed to ensure on time completion of the project. The schedule outlined below in Figure 10-1
shows the estimated timeline for the project.




Figure 11-1 Production Schedule




Homebuilder Financial Assistant                                                   Page 47 of 56
11.2 PROJECT DELIVERABLES SCHEDULE
The project shall consist of many deliverables that shall need to be submitted on specific dates.
These dates shall be the milestones for the project, and their deadline dates are listed below. A
complete deliverable schedule is also listed.


Table 11-1 Deliverable Overview Schedule

 Deliverable                                       Date Due
 Unbound Project Plan                              February 10, 2004
 Project Poster                                    March 2, 2004
 Bound Revised Project Plan                        February 24, 2004
 Unbound Design and Status Report                  April 6, 2004
 Bound Revised Design/Progress Reports             May 5, 2004




Homebuilder Financial Assistant                                                   Page 48 of 56
The following is a Gantt chart depicting a basic overview of the project deliverable schedule. This
schedule shall be followed so that all items are completed by their deadline constraints.




Figure 11-2 Project Deliverables Overview




Homebuilder Financial Assistant                                                       Page 49 of 56
A detailed view of the project deliverable schedule is given in the next chart. The chart shows each
individual item that shall be needed to complete the given tasks on time.




Figure 11-3 Detailed Deliverables Schedule




Homebuilder Financial Assistant                                                      Page 50 of 56
12 Project Team Information
12.1 CLIENT INFORMATION
Mark Taylor
Total Construction


Duane Jensen
JCorp, Incorporated

12.2 FACULTY ADVISORS
Professor John Lamont
324 Town Engineering, Iowa State University
Ames, Iowa 50011
515.294.3600 office
515.294.6760 fax
jwlamont@iastate.edu


Professor Ralph Patterson III
326 Town Engineering, Iowa State University
Ames, Iowa 50011
515.294.2428 office
515.294.6760 fax
repiii@iastate.edu


Professor Todd Sirotiak
474 Town Engineering, Iowa State University
Ames, Iowa 50011
515.294.5424 office
515.294.3845 fax
sirotiak@iastate.edu


Homebuilder Financial Assistant               Page 51 of 56
12.3 STUDENT TEAM
Bo J. Rohlfsen, Project Manager
Computer Engineering
4719 Mortensen Road #303
Ames, Iowa 50014
832.515.5781 cell
rohlfsen@iastate.edu


Kenneth Q. Sabotta, Communications Lead
Computer Engineering
2121 Sunset Drive
Ames, Iowa 50014
832.515.4684 cell
ksabotta@iastate.edu


Joseph D. Black
Computer Engineering
2121 Sunset Drive
Ames, Iowa 50014
832.724.6806 cell
jblack@iastate.edu


Jon E. von Gillern
Computer Engineering
2121 Sunset Drive
Ames, Iowa 50014
515.451.3886 cell
jonvong@iastate.edu




Homebuilder Financial Assistant           Page 52 of 56
Ryan J. Hawkins
Construction Engineering
2312 Knapp Street
Ames, Iowa 50014
515.450.3751 cell
hawkinsr@iastate.edu


Ryan J. Kaufman
Construction Engineering
1505 Little Bluestem #116
Ames, Iowa 50014
515.203.6673
rkauff@iastate.edu




Homebuilder Financial Assistant   Page 53 of 56
13 Closing Summary
Small Custom Homebuilders are left without cost effective means of easy bid estimation and sub-
contractor bid history and sub-contractor work history. The Custom Home Builder Financial
Assistant Software Package shall alleviate the need for an inexpensive medium to store and retrieve
necessary data that general contractors need to conduct their business more efficiently. This
solution shall greatly ease bid tracking and shall remain open ended so that additional functionality
such as invoicing, and hours can easily be added at a later date.




Homebuilder Financial Assistant                                                       Page 54 of 56
         Appendix A – Microsoft Windows XP Requirements
The following is a list of system requirements for the installation of Microsoft Windows XP
Professional. Microsoft Windows XP Professional is a requirement for the operation of the Custom
Homebuilder Financial Assistant.


      PC with 700 megahertz or higher processor clock speed recommended; 500 MHz minimum
       required (single or dual processor system);* Intel Pentium/Celeron family, or AMD
       K6/Athlon/Duron family, or compatible processor recommended
      128 megabytes (MB) of RAM or higher recommended (64 MB minimum supported; may
       limit performance and some features)
      1.5 gigabytes (GB) of available hard disk space*
      Super VGA (800 × 600) or higher-resolution video adapter and monitor
      CD-ROM or DVD drive
      Keyboard and Microsoft Mouse or compatible pointing device




Homebuilder Financial Assistant                                                  Page 55 of 56
                Appendix B – Software Project Diagrams




Figure 13-1 Software Block Diagram




Figure 13-2 Screenshot of Custom Homebuilder Financial Assistant




Homebuilder Financial Assistant                                    Page 56 of 56

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:8
posted:11/14/2011
language:English
pages:62