U.S. patent application number 13/092799 was filed with the patent office on 2011-08-11 for system and method for synchronizing objects between data collections.
Invention is credited to Timothy A. Fino, Stephan E. Hall.
Application Number | 20110196799 13/092799 |
Document ID | / |
Family ID | 23530322 |
Filed Date | 2011-08-11 |
United States Patent
Application |
20110196799 |
Kind Code |
A1 |
Fino; Timothy A. ; et
al. |
August 11, 2011 |
SYSTEM AND METHOD FOR SYNCHRONIZING OBJECTS BETWEEN DATA
COLLECTIONS
Abstract
A system for facilitating the information transfer and
processing associated with home construction and home sales.
Various discrete software modules are disclosed each handling a
specific task associated with home construction and sales. Also, a
system for communicating between separate data bases is disclosed
wherein separate and distinct sales offices, each having their own
data base, may communicate with a parent, market office having its
own data base wherein the data bases of the sales offices and the
market office are synchronized according to the method of the
present invention so that any data updates in any of the sales
offices would be automatically updated in the associated market
offices. This aspect of the present invention allows a corporation
responsible for home construction and sales amongst various
regional, market, and sales offices to coordinate a plurality of
discretely separate data bases in a way such that they are all
synchronized with one another at a predetermined time.
Inventors: |
Fino; Timothy A.;
(Farmington, MI) ; Hall; Stephan E.; (Birmingham,
MI) |
Family ID: |
23530322 |
Appl. No.: |
13/092799 |
Filed: |
April 22, 2011 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
11928586 |
Oct 30, 2007 |
|
|
|
13092799 |
|
|
|
|
10395543 |
Mar 24, 2003 |
7685506 |
|
|
11928586 |
|
|
|
|
09282687 |
Mar 31, 1999 |
6539401 |
|
|
10395543 |
|
|
|
|
08919091 |
Aug 27, 1997 |
5991769 |
|
|
09282687 |
|
|
|
|
08387541 |
Feb 13, 1995 |
5689705 |
|
|
08919091 |
|
|
|
|
Current U.S.
Class: |
705/314 |
Current CPC
Class: |
G06Q 50/163 20130101;
G06Q 30/06 20130101; Y10S 707/99953 20130101; Y10S 707/99945
20130101; G06Q 30/0601 20130101; Y10S 707/99952 20130101; G06Q
30/02 20130101 |
Class at
Publication: |
705/314 |
International
Class: |
G06Q 50/00 20060101
G06Q050/00 |
Claims
1-16. (canceled)
17. A method for synchronizing the values of equivalent objects
contained in multiple data collections that are in communications
with one another, the method comprising: receiving information
altering the value of an object contained in one of the data
collections; altering said value of the object based on the
receiving information by addition, change, deletion, or replacement
of a portion thereof; identifying the altered values of the objects
that have been altered since the previous synchronization method
was completed; transferring the altered values of the objects that
have been altered since the previous synchronization method was
completed from the one data collection to a second data collection
that contains equivalent objects; receiving said altered values of
said altered objects by a second data collection; replacing the
values of the altered objects in a second data collection
corresponding to the altered values received for the equivalent
objects from the transfer; wherein each object in the data
collections has a unique identifier, and wherein transferring the
altered values of said altered objects further includes,
transferring the unique identifiers of the altered objects of the
one data collection to permit the matching with the equivalent
objects in a second data collection for replacing the values of
said equivalent objects.
18. The method as recited in claim 17 wherein the communications
between the multiple data collections may be intermittent.
19. The method as recited in claim 17 wherein a data collection may
also be referred to as a data store or a store or a data class or a
database or a file or a folder.
20. The method as recited in claim 19 wherein each data collection
may be a data object that functions as a container of other data
objects.
21. The method as recited in claim 17 wherein the objects contained
in the multiple data collections may be data records.
22. The method as recited in claim 17 wherein the objects contained
in the multiple data collections may be data fields.
23. The method as recited in claim 22 wherein the equivalent data
fields in the multiple data collections contain replica of
data.
24. The method as recited in claim 17 wherein the previous
synchronization is identified with a synchronization anchor.
25. The method as recited in claim 24 wherein the synchronization
anchor is updated after completion of the method as recited in
claim 17.
26. The method as recited in claim 25 wherein the synchronization
anchor reflects a date/time stamp.
27. The method as recited in claim 17 wherein at least one
modification identification is associated with the altered value of
each object that has been altered since the previous
synchronization method was completed.
28. The method as recited in claim 27 wherein at least one
modification identification can result in identifying the type of
alteration to the value of the object as an addition, change,
deletion, or replacement of a portion thereof.
29. The method as recited in claim 27 wherein at least one
modification identification that is associated with the altered
object may be referenced to the synchronization anchor in
determining whether the altered object was altered after the last
synchronization method was completed.
30. The method as recited in claim 29 wherein at least one
modification identification that is associated with the altered
object and that is referenced to the synchronization anchor
comprises a date/time stamp.
31. The method as recited in claim 27 wherein at least one
modification identification is updated when an object is
altered.
32. The method as recited in claim 17 wherein transferring the
altered values of the objects that have been altered along with the
unique identifiers of the altered objects comprises collecting a
copy of said altered values and said object identifiers in a data
collection and transferring that new data collection from one of
the multiple data collections containing equivalent objects to
another data collection containing equivalent objects that have not
yet been altered by said alterations.
33. The method as recited in claim 17 wherein transferring the
altered values of the objects that have been altered along with the
unique identifiers of the altered objects thereby eliminates the
need to copy the entire data collection from one of the multiple
data collections in which alterations have occurred to another data
collection containing equivalent objects that have not yet been
altered by said alterations.
34. The method as recited in claim 17 wherein each object has a
unique identifier such that each data collection can match its
objects to each of the other data collection objects in order to
maintain equivalency after the synchronization method is
complete.
35. The method as recited in claim 17 wherein the transfer of
information further comprises sending data collection
identification information.
36. The method as recited in claim 35 wherein the transferring of
alterations from one data collection and the sending of data
collection identification information further comprises: receiving
altered values and unique identifiers of objects that have been
altered in the other data collection; and modifying the equivalent
objects in the one of the data collection with the corresponding
altered values from the other data collection.
37. The method as recited in claim 36 wherein receiving altered
values and unique identifiers of objects that have been altered
further comprises receiving a confirmation message from the other
data collection to which the alterations to the one of the data
collections was sent.
38. The method as recited in claim 37 wherein receiving the
confirmation message further comprises updating the last
synchronization anchor.
39. The method as recited in claim 36 wherein receiving altered
values and unique identifiers of objects includes receiving
alterations that have not occurred at the one of the data
collections based on the data collection identification
information.
40. The method as recited in claim 17 wherein replacing the values
of the altered objects in the second data collection further
comprises determining if any of the objects have been deleted from
the one of the data collections, and if so, removing such objects
from the other data collection.
41. A system for synchronizing information among one or more first
data collections in communication with a second data collection,
each data collection having at least some equivalent objects with
equivalent values contained in at least one of the other data
collections, the system comprising: an input device associated with
each of the first data collections for receiving information
altering the value of an object contained in one of the first data
collections; a central processing unit associated with each of the
first data collections for altering said values of objects based on
the receiving information by addition, change, deletion, or
replacement of a portion thereof; a central processing unit
associated with each of the data collections for identifying the
altered values of the objects that have been altered from a
previous state, transferring a copy of the alterations and the
unique identifiers of the altered objects from one of the first
data collections to the second data collection that has the
equivalent unaltered objects stored therein, and for modifying the
values of said objects in the second data collection corresponding
to the altered values received for the equivalent objects from the
transfer.
42. The system as recited in claim 41 wherein the identification of
the alteration of an object from a previous state is based on
utilization of a synchronization anchor.
43. The system as recited in claim 42 wherein the central
processing unit does not update the synchronization anchor until
after completion of the system as recited in claim 41.
44. The system as recited in claim 43 wherein the synchronization
anchor reflects a date/time stamp.
45. The system as recited in claim 41 wherein at least one
modification identification is associated with the altered value of
each object that has been altered since the previous
synchronization method was completed.
46. The system as recited in claim 45 wherein the central
processing unit operates such that at least one modification
identification can result in identifying the type of alteration to
the value of the object as an addition, change, deletion, or
replacement of a portion thereof.
47. The system as recited in claim 45 wherein at least one
modification identification that is associated with the altered
object may be referenced by the central processing unit to the
synchronization anchor in determining whether the altered object
was altered after the last synchronization method was
completed.
48. The system as recited in claim 47 wherein at least one
modification identification that is associated with the altered
object and that is referenced by the central processing unit to the
synchronization anchor comprises a date/time stamp.
49. The system as recited in claim 45 wherein at least one
modification identification is updated by the central processing
unit when an object is altered.
50. The system as recited in claim 41 wherein each object has a
unique identifier such that the central processing unit for each
data collection can match its objects to the copy of the
transferred objects from each of the other data collections in
order to maintain equivalency after the system for synchronizing
objects has completed.
51. The system as recited in claim 41 wherein the central
processing unit, in transferring the altered values of the objects
that have been altered along with the unique identifiers of the
altered objects, is further operative to transfer such alterations
and unique identifiers to eliminate the need to copy the entire
data collection from one of the first data collections in which
alterations have occurred to the second data collection containing
equivalent objects that have not yet been altered by said
alterations.
52. The system as recited in claim 41 wherein the central
processing unit, in transferring the altered values of the objects
that have been altered along with the unique identifiers of the
altered objects, is further operative to collect a copy of said
altered values and said object identifiers in a data collection and
transfer that new data collection from one of the first data
collections to the second data collection containing equivalent
objects that have not yet been altered by said alterations.
53. The system as recited in claim 52 wherein the central
processing unit is further operative to transfer data collection
identification information for the one of the first data
collections.
54. The system as recited in claim 53 wherein the central
processing unit, in transferring alterations and object identifiers
from the one of the first data collections and the sending of data
collection identification information, is further operative to:
receive altered values and unique identifiers of objects that have
been altered in the second data collection; and modify the
equivalent objects in the one of the first data collections with
the corresponding altered values from the second data
collection.
55. The system as recited in claim 41 wherein the central
processing unit, in replacing the values of the altered objects in
the second data collection, is further operative to determine if
any of the objects have been deleted from the one of the first data
collections, and if so, removing such objects from the second data
collection.
56. A method to permit the synchronizing of the values of
equivalent objects contained in multiple data collections that are
in communications with one another, the method comprising:
receiving information consisting of one or more new objects and
said new objects' values; appending said one or more new objects
with said new objects' values to one of the data collections;
identifying the one or more new objects with said new objects'
values that have been appended to the one of the data collections
since the previous synchronization method, if any, was completed;
transferring a copy of the one or more new objects with said new
objects' values that have been appended to the one of the data
collections, from the one data collection to another data
collection; receiving said one or more new objects with said new
objects' values by the other data collection; appending said one or
more new objects with said new objects' values to the other data
collection; wherein each of the one or more new objects is assigned
a unique identifier, and wherein transferring the said one or more
new objects further includes, transferring the unique identifiers
of said one or more new objects of the one data collection to the
other data collection to permit the matching for synchronization
when the equivalent objects in the one or other data collections
are altered in the future.
57. The method as recited in claim 17 wherein the steps of
receiving information altering the value of an object and altering
said value of the object based on the receiving information, may be
repeated continuously and periodically except for interruptions
that may include, but are not limited to, initiation of the
subsequent steps as recited in claim 17.
58. The method as recited in claim 57 wherein initiation of the
next steps is based on a predetermined activator.
Description
RELATED APPLICATIONS
[0001] This application is a divisional of U.S. patent application
Ser. No. 10/395,543, filed on Mar. 24, 2003, which is a
continuation of U.S. patent application Ser. No. 09/282,687, filed
on Mar. 31, 1999, which is a continuation of U.S. patent
application Ser. No. 08/919,091, filed on Aug. 27, 1997, which is a
divisional of U.S. patent application Ser. No. 08/387,541, filed on
Feb. 13, 1995.
TECHNICAL FIELD
[0002] This invention relates to a system for facilitating home
construction and sales and more particularly relates to a computer
implemented system for assisting new home purchasers, sales
associates, and home construction companies to efficiently manage
the information flow which is present before, during, and after new
home construction and sales.
BACKGROUND OF THE INVENTION
[0003] It is customary for prospective new home purchasers to meet
with a salesperson (usually an agent of a construction company) and
to review various home designs that the construction company
offers. During this process, financial information may be obtained
from the prospective buyer in order to determine "how much home"
they can afford. If the prospective buyer is interested in a
particular subdivision, the sales persons must access various
records to determine the status of the various lots in the
subdivision to determine which lots are available, what their cost
is and other information which may be relevant to the decision
making process of the potential purchaser.
[0004] It can be easily seen that the information which the sales
associate must access in answering some basic questions that a
single potential purchaser may have can become cumbersome--even at
the initial stages of a potential purchaser's inquiries. It can
also be easily seen that once a purchaser enters into a purchase
agreement with the home construction company, much information must
be tracked such as the status of the home construction, mortgage
approval status, selected options to the home, and various change
orders, etc. In view of the above, it is easy to see how the
management of information associated with the construction and sale
of a single home can be daunting. However, when a construction
company must deal with multiple subdivision projects which are
disbursed across multiple, geographically remote sites, the
management of information associated with each of the construction
projects is a monumental undertaking if done using conventional,
manual techniques.
[0005] In view of the above, it is an object of this invention to
provide a computer based system for managing the information flow
associated with new home construction and new home sales. This
object is accomplished by providing the salesperson with various
software modules which facilitate information flow between the
purchaser/potential purchaser and the sales associate. Also, the
present invention sets forth a software system for coordinating
information flow between sales sites and a more centralized site
where information can be collected and acted upon. Thus, the
present invention not only facilitates information flow at the
sales office level, but facilitates information flow between
various sales offices and various remote locations.
SUMMARY OF THE INVENTION
[0006] In a first aspect, the present invention discloses a system
for displaying plat status information to a viewer including the
steps of displaying, on a video display terminal, a plurality of
polygons, each polygon representing a respectively associated plat;
selecting a status associated with each plat; and coding each
polygon with a visible indicia indicative of the status assigned to
each polygon.
[0007] In a second aspect, the present invention discloses a system
for displaying plat status information comprising; computer means
including a video display terminal for displaying a plurality of
polygons, each polygon representing a plat; means for coding each
of the polygons with an invisible indicia indicative of the status
assigned to each of the polygon's respectively associated plat.
[0008] In another aspect, the present invention discloses a system
and method for displaying status information to a viewer on a
display. The method comprises displaying a plurality of defined
regions on the display; designating a status for at least one of
the defined regions; and displaying a visible indicia for the
defined region with the designated status assigned thereto.
[0009] Still in another aspect, the present invention discloses a
method of communicating between first and second geographically
remote data bases, comprising the steps of: receiving information
relating to the construction or sale of homes into the first data
base; separating the information into a plurality of first data
base records; determining which of the plurality of first data base
records have been altered from a previous state; sending the
altered records of the first data base to the second data base;
matching each altered data base record sent from the first data
base with a respectively associated record of the second data base;
and amending each match record of said second data base to reflect
the information present in the respectively associated altered
record send from the first data base.
[0010] Yet in another aspect, the present invention discloses a
system for facilitating tracking-information associated with
selling and constructing homes including, computer means; means
coupled with the computer means for displaying plat information
relating to the homes; means coupled with the computer means for
displaying information relating to the design of the homes; means
coupled with the computer means for displaying information related
to the options associated with the homes; means, coupled with the
computer means, for displaying mortgage information relating to the
purchase of the home; and means, coupled with the computer means
for displaying information related to a contract associated with
the sale of the home.
BRIEF DESCRIPTION OF THE DRAWINGS
[0011] FIGS. 1A-1J depict the operation of the LOT INFORMATION
MODULE of the present invention.
[0012] FIGS. 2A-2E depict the operation of the PLAN SECTION module
of the present invention.
[0013] FIGS. 3A-3C depict the operation of the OPTIONS MODULE of
the present invention.
[0014] FIGS. 4A-4E depict the operation of the FINANCE MODULE of
the present invention.
[0015] FIGS. 5A-5J depict the operation of the CONTRACT MODULE of
the present invention.
[0016] FIG. 6 depicts the operation of the INFORMATION TRANSFER
MODULE of the present invention.
[0017] FIGS. 7A and 7B depict a preferred ENTRY MODULE of the
present invention.
[0018] FIGS. 8A-8F depict the PEOPLE INFORMATION MODULE of the
present invention.
[0019] FIGS. 9A-9D depict the ADMINISTRATION SYSTEM of the present
invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0020] The above referenced modules are set out and discussed in
detail below.
[0021] Lot Information Module
[0022] The LOT INFORMATION MODULE of the present invention is
adapted to be run on any computer system but is particularly
adapted for use on a personal computer. A preferred hardware
arrangement for such a personal computer 18 is depicted in FIG. 1A
wherein such standard components as CPU 25 coordinates the
operation of CRT 20, keyboard 22, volatile memory 23,
communications hardware 24, disk memory 26, and printer 28. The
modules of the present invention are currently running on an IBM PC
Compatible Pentium (DELL OPTIPLEX), 90 mega hertz, 16 mega bytes
RAM, local bus video with S3 video drivers, 500 mega bytes IDE hard
disk drive, INTERNAL 14.4 kilo bytes asynchronous modem, 15 inch
SVGA video display terminal, standard keyboard, mouse with
microsoft DOS 6.2, and Windows for workgroups version 3.11.
[0023] Of course, many other personal computers will perform
equally as well such as a Compaq.TM., IBM Value Point.TM.,
Dell.TM., NEC.TM., etc.
[0024] The LOT MODULE is selected by positioning an indicator on
the LOTS icon 30 and then activating the selection. This
positioning/activation sequence is typically implemented by way of
a "mouse" control, but any other technique for allowing a user to
select from a menu of options is also contemplated including finger
selection.
[0025] Once the LOTS selection is activated, a simulated aerial
view of the particular subdivision is displayed. In the example of
FIG. 1B, the Excalibur subdivision is depicted comprising a total
of 58 plats, each separate plat defined by a respectively
associated polygon 41 through 98.
[0026] One option within the LOTS MODULE is the OVERALL STATUS
option. By selecting the OVERALL STATUS option, each plat 41
through 98 is assigned one of three visual codes--active code,
closed code, or vacant code. These visual codes associated with
each polygon can be a design (such as cross hatching or stimpling)
associated with each polygon, or perhaps even simpler, a
predetermined color can be associated with each code. Thus, by
viewing the colors associated with each polygon, a perspective
buyer can immediately determine which of the plats (or lots) are
not yet sold (i.e. vacant), which of the plats are sold and
construction is completed (i.e. closed), and which of the plats are
sold and construction is underway but not yet completed (i.e.
active).
[0027] A second option available in the LOTS MODULE is the
CONSTRUCTION option. If this option is selected, the viewer is
presented with the display set forth in FIG. 1C wherein the status
of the construction for each LOT is displayed. Again, each
construction status is reflected in a code associated with each of
the LOTS. As was mentioned before, this code can be a color,
simulated texture, or any such indication which is visually
detectable. The various statuses associated with the construction
option range from construction not started at all to construction
completed and are defined in a separate lot administration
module.
[0028] A third option available within the LOTS MODULE is the
CONTRACT option. If this option is selected, the display depicted
in FIG. 1D is presented to the viewer wherein various CONTRACT
statuses are associated with each LOT. Each status has associated
therewith a visually detectable data as has already been discussed
in conjunction with the CONSTRUCTION option and the OVERALL STATUS
option. Thus, by exercising the CONTRACT option, the viewer can
immediately determine the status of the CONTRACTS associated with
each of the LOTS in the Excalibur SUBDIVISION. Other options exist
to display the lot information based on the floor plan, garage
oriented elevation, roof color, brick color, etc., is shown on
FIGS. 1E and 1F.
[0029] If the viewer wishes to access LOT information associated
with a particular LOT, a pointer (not shown) is manipulated
proximate the LOT of interest, and the pointer is activated. This
causes the LOT information associated with that selected LOT to be
displayed (as shown in FIG. 1G). LOT information may consist of the
postal address associated with the LOT, any premium associated with
the purchase of that LOT, the LOT and block number, etc. Also
displayed is the cumulative, total cost of the home 106. Thus, as
various options are elected/cancelled, the purchaser is instantly
apprised of the cost impact of his decisions.
[0030] In FIG. 1H, a LOT information inquiry has been done wherein
the LOT inquired of (LOT 104) has a CONTRACT status of APPROVED
108, has been sold for $211,565.00 (see reference #110) and has
$22,865.00 worth of options 112.
[0031] FIG. 1I shows the display of selected information when the
LOT FEATURES 114 option is selected by the operator. When this
option is selected, various selling features 116 associated with
the particular LOT at issue are conveyed to the viewer.
[0032] FIG. 1J illustrates the type of information which is
displayed when the LOT DISCLOSURES 118 option is selected by the
viewer. When the LOT DISCLOSURES 118 option is selected by the
viewer, the various easements, encumbrances, or the like associated
with the selected LOT are conveyed to the viewer.
[0033] In the preferred implementation of the LOT INFORMATION
MODULE of the present invention, the software associated with the
LOT INFORMATION MODULE reads an AutoCAD.TM. DXF file that contains
the LOT INFORMATION. The data is preferably scaled to best display
the information on the computer screen keeping the same x and y
coordinate proportions. The AutoCAD file is parsed and a "lot
coordinate" file is created that contains the normalized data
values for each LOT with all points for a particular LOT grouped
together. Using Microsoft.TM. Window API calls, the entire plat map
is generated by drawing one LOT in its entirety and then drawing
the next LOT in its entirety, etc. until all LOTS have been drawn.
By utilizing this technique, a simple polygon for each LOT is
created which permits the user to later select the LOT by simply
pointing to the LOT with their finger or selecting the LOT with a
visual pointing device (such as a mouse, etc.). In addition, since
the scaling information has been predetermined from the AutoCAD
file, a second (or subsequent) image may be superimposed on the LOT
map to add background information such as trees, lakes, streams,
roads, etc.
[0034] Because the polygon is a defined region within Windows, the
LOTS can be easily changed and colored to represent different
"states" (or statuses) in construction or any other processes
associated with the plat.
[0035] Plan Selection Module
[0036] The PLAN SELECTION MODULE allows the viewer to see floor
plan layouts and elevational views for each of the model home
designs made available by the builder. When the user selects the
PLAN SELECTION MODULE, the display set forth in FIG. 2A will appear
on video display device 20. This screen sets forth the basic
designs from which the buyer may select from and sets forth some of
the features associated with each design. If the viewer wishes to
see the room layout associated with a particular design, the user
simply selects one of the designs (in a manner already discussed in
conjunction with selecting modules) and activates the SHOW PLANS
122 BUTTON. In response to this selection, the screen of FIG. 2B
will be displayed wherein the design of the SUNRISE floor plan is
displayed. If the viewer wishes to view an aspect of the floor plan
with great resolution, the enlarged 124 option may be selected
which, in turn, will give rise to the screen display set forth in
FIG. 2C.
[0037] If the user wishes to see the front elevational depiction of
the SUNRISE DESIGN, the elevation option 126 is selected which
gives rise to the displays depicted in FIG. 2D. Other elevations
are available to view by simply making the appropriate selection as
evidenced by the menu options set forth in FIG. 2E.
[0038] Thus, the PLAN SELECTION MODULE allows a potential buyer to
review the floor plan layouts and the elevational layouts of any
number of home designs offered by the contractor.
[0039] Options Module
[0040] Once a floor plan has been selected, the system of the
present invention allows various OPTIONS to be selected. These
OPTIONS are discussed in conjunction with FIGS. 3A through 3C. In
FIG. 3A, various OPTION categories are listed in a left-hand column
wherein X's before various selections indicate that those OPTIONS
have already been selected. The right-hand portion of FIG. 3A shows
a running list of each OPTION selected, a quantity associated
therewith, and a cost associated with each OPTION. The total cost
of all of the selected OPTIONS is also shown in FIG. 3A.
[0041] FIG. 3B depicts the screen display which results from the
selection the fireplace OPTION as it's set out in FIG. 3A. If the
fireplace OPTION is selected in FIG. 3A, the viewer must select
from one of the five fireplace OPTIONS set out in FIG. 3B. If the
viewer is unfamiliar with the design of any of the fireplace
OPTIONS at his disposal, one or more of the fireplace OPTIONS is
selected for viewing. For example, if fireplace Y is selected for
viewing, the screen as depicted in FIG. 3C is displayed to the
user. Thus, a detailed reproduction of a photograph of the design
fireplace Y is disclosed to the user for viewing. This type of high
resolution graphics display associated with each one of the OPTIONS
eliminates much of the guesswork associated with selecting OPTIONS,
particularly in those cases where the potential buyer has not had
an opportunity to view model homes constructed by the construction
company offering the OPTIONS. With such a system, it is possible
for a potential buyer to make informed decisions on OPTION
selections without ever leaving the sales representatives office
and without requiring the construction company to have previously
built the OPTION at this subdivision.
[0042] Finance Module
[0043] When a potential buyer is contemplating the purchase of a
home, the financial aspects of such a purchase are typically of
significant importance. The FINANCIAL MODULE of the present
invention assists potential buyers in determining their mortgage
options, determining how much home they can afford, assist them in
determining if they will qualify for the mortgage they're
interested in, and assist in educating them of the tax benefits of
purchasing the home. Each of these categories are set forth in the
menu of selections of FIG. 4A. If the user selects the MORTGAGE
OPTIONS selection of FIG. 4A, the screen of 4B is presented. If a
conventional, fixed mortgage is of interest to the potential buyer,
the appropriate data is input by the operator (if it has not
already been input), and critical information is displayed to the
user such as total monthly payment due, total move-in costs, etc.
The FINANCE MODULE of the present invention is also designed to
furnish similar information for conventional adjustable rate
mortgages, FHA mortgages (adjustable rate and fixed), VA mortgages
(adjustable rate and fixed) and other types of mortgage
instruments. The FINANCE MODULE will calculate the maximum loan
amount for any type of loan based on loan rules supplied to the
module. The format for displaying the data associated with these
latter mortgages is similar, or identical, to the format set on
FIG. 4B.
[0044] In FIG. 4A, if the user selects the HOW MUCH HOME option,
the screen of FIG. 4C is displayed on the video display terminal
wherein after the type of loan is selected 128 and other loan
information and financial information 130, 132 respectively is
provided, the user is provided with data reflective of how much
home they can afford 134. If the potential buyer has already
selected a home and various options, and now they want to determine
if they prequilify for the home, the PREQUALIFICATION option of
FIG. 4A is selected, the screen of FIG. 4D is displayed on the
video display terminal. Using data supplied by the potential buyer
and applying that data to well established formulas, the FINANCIAL
MODULE indicates 134 to the potential purchaser whether he or she
qualifies for the purchase of the home they have selected.
[0045] If the purchaser is interested in the tax benefits they
receive from the purchase of a home, the TAX BENEFITS selection of
FIG. 4A may be selected and the screen depicted in FIG. 4E will be
displayed. This screen provides the potential purchaser with an
indication of the estimated tax benefits associated with purchasing
the home of interest.
[0046] Contract Module
[0047] The CONTRACT MODULE of the present invention is the portion
which is responsible for creating and tracking legal documents
associated with the purchase of the home and selected options.
Thus, when the user selects the CONTRACT MODULE (see selection 101
of FIG. 1B), the screen depicted in FIG. 9A is displayed on the
video display terminal. The screen shows the existing contracts
that exist for a particular customer plus any open "spec
homes."
[0048] When the CREATE CONTRACT button is selected, the user is
prompted for confirmation (see FIG. 5B) prior to creating the
actual legal documents for the contract.
[0049] FIG. 5C summarizes the contract created for the customer and
permits the user to make any refinements prior to printing the
contract. These refinements may be selected by using one of the
selections displayed on the right hand side of the screen display
of FIG. 5C. For example, if the EDIT DETAIL button is selected, the
screen of FIG. 5D is displayed which allows the user to change the
base price of the home, the lot premium or the elevation premium.
Comments pertinent to the contracting process that would be useful
in the market office are entered on this screen.
[0050] If the OPTIONS button of FIG. 5D is selected, the screen as
depicted in FIG. 5E is displayed giving the user the option of
overriding any option price (if so enabled, by the market office).
Payments received from a customer are entered by selecting the
DEPOSITS button from FIG. 5C. FIG. 5F displays the screen
associated with the entering of deposits.
[0051] Once the contract is approved by the Market Office, the
customer may elect to make certain changes in the contract. When
the CONTRACT button is selected from the main sales menu, a revised
EXISTING CONTRACTS screen, as shown in FIG. 5G is displayed. This
screen permits the user to create and track change orders to the
original contract. FIG. 5H identifies a change order being added to
the original contract. After various options have been added, the
change order may be reviewed as shown in FIG. 5I and FIG. 5J.
[0052] Information Transfer Module
[0053] Although the system as set forth can be implemented on a
small scale basis (e.g. a single subdivision), it is equally
capable of handling information flow throughout a network of sales
offices, design centers, construction trailers, market offices,
regional offices, and corporate offices. This aspect of the present
invention will now be discussed in detail in conjunction with FIG.
6.
[0054] All of the modules set forth heretofore would typically be
used at the sales office level to facilitate discussions which
would typically take place between potential purchasers and sales
associates. In the situation where a company has many subdivision
developments ongoing at any one time, each sales office may be
associated with one subdivision development. In this instance, it
may be desirable for each sales office within a given territory to
report to a single market office. A predetermined number of market
offices may then be structured to communicate with a single
regional office and lastly, a predetermined number of regional
offices may be responsible for reporting to a single corporate
office. This hierarchical arrangement is depicted in FIG. 6. The
advantage of establishing such a hierarchy, is that certain
decisions can be relegated to certain levels. For example, contract
approvals may only take place at the market office level and not at
the sales office level. Likewise, a regional office may review all
sales by all Sales Offices to determine the performance of each
sales associate at each Sales Office. Also, information may be put
into the system at the Regional Office level to be filtered down to
the Sales Offices. Thus, such information may include IRS tax rates
and tax tables. In order for the hierarchical structure set forth
in FIG. 6 to be of maximum benefit to each office involved, there
must be a systematic process whereby information is updated (or
synchronized) between the offices. For example, how can the
regional offices be apprised of what models are their "best
sellers" if they are not provided with information, on a regular
basis, regarding the number and type of model sales taking place?
Likewise, how can the sales offices keep potential purchasers up to
date on the status of their home construction if the market office,
charged with the duty of building the home, does not communicate
that information to the respective sales office. Thus, a key aspect
of the INFORMATION TRANSFER MODULE of the present invention is the
system of INFORMATION TRANSFER which takes place between the
offices whereby the hierarchy of offices is kept abreast of
developments occurring amongst its parent office and its children
offices. First, the method for transferring information from the
children offices to the parent office will be discussed, then, the
process of transferring information from the parent to the children
offices will be set forth.
[0055] Children to Parent Data Transfer
[0056] Sales offices 150 depict a group of sales offices
responsible for reporting to a single market office 152. Thus, in
this manner, sales offices 150 are considered the children offices
of market office 152 and likewise, market office 152 is considered
the parent office of sales offices 150. We will now discuss, by way
of example, how information is input at a given sales office and
how that information is then transferred to the market office so
that the market office is apprised of that particular transaction.
In our example, let us suppose that a potential customer arrived at
sales office subscript 154 and selected a lot, selected a home
model, selected various options for that home model and provided
the other necessary financial information that has been discussed
in conjunction with the various modules. A data record is then
constructed in one of the computers 18 (see FIG. 1A) associated
with SO.sub.1. This data record is preferably constructed by using
a database that makes use of a distributed structure. Each data
record is associated with a related data table. A typical structure
for each data table is set forth below.
TABLE-US-00001 1. Customer First Name Text 30 characters 2.
Customer Last Name Text 30 characters 3. Customer Address Text 30
characters 4. Customer City Text 30 characters 5. Customer Zip Code
Text 9 characters 6. Customer Number Integer 2 characters 7. Last
Modified Date/Time 8 characters, packed 8. Last Modified By Text 6
characters 9. Last Modified By Site Text 10 characters 10. Unique
Record ID Numeric 8 bytes, double precision
[0057] The first six fields (all customer information) are typical
fields within the structure and contain the dynamic information.
The remaining four data fields are required for proper
communication between a sibling office and a parent office and are
modified according to the following rules: [0058] 1. When a new
record is created: [0059] The LAST MODIFIED field is updated with
the system date/time of the actual modification. [0060] The LAST
MODIFIED BY field is updated with the "user id" or "log on name" of
the person using the computer system. The "user id" is unique
within any one given installation site that may consist of several
networked computer systems. [0061] The LAST MODIFIED BY SITE field
is updated with the system generated UNIQUE SITE ID for the current
location. A site will have one or more computer systems that are
connected with a network device. The SITE ID is pre-assigned at a
central location prior to the software being utilized. [0062] The
UNIQUE RECORD ID is generated at the site for each new data record
that is generated. The UNIQUE RECORD ID is the single common link
across all sites and its contents must be preserved for all future
updates. Consequently, the UNIQUE RECORD ID field is only assigned
on new records. It may be any unique number that mathematically
combines the date/time the record was created. [0063] 2. When
subsequent records are modified, all of the fields associated with
the modified record are updated except for the UNIQUE RECORD ID.
[0064] 3. When a record is deleted, a separate table is maintained
that contains the table name, the UNIQUE RECORD ID of the original
record, and the LAST MODIFIED BY SITE field. A new record is
generated for each deleted record in the database. At a
predetermined time (which is preferably during nonworking business
hours), SO.sub.1 initiates a database synchronization procedure to
make certain that its database is in synchronization with the
database MO.sub.1 152. In order to do this, SO.sub.1 examines all
of the data records in its database to determine which records have
been changed since the last database synchronization took place.
Each record that has been added or changed since the last database
synchronization is copied into a redundant database. Records that
are identified in the "delete log" table are also copied into the
redundant database. Various ancillary files associated with each
data record that have also been changed are flagged. These
ancillary files contain miscellaneous information associated with
any peculiar circumstances related to a potential buyer--such as
the purchase of the home is contingent on the sale of his current
home, or the like. This redundant database is then compacted and
transferred to MO.sub.1 152 (the responsible parent). After the
information is transferred to the parent, a confirmation message is
sent by the parent to SO.sub..+-.154 that the information has in
fact been received and is being processed. Upon receipt of this
confirmation, the following actions are performed at SO.sub.1 154:
[0065] A. The delete log is purged, [0066] B. The last database
sync date/time field is modified to reflect the current date/time
and, [0067] C. SO.sub.1 154 polls the system for an incoming
message consisting of changes that must be applied to the database
of SO.sub.1 154 as commanded by MO.sub.1 152.
[0068] At a later time, MO.sub.1 152 (the parent) is assured of
having all of the transactions from SO.sub.1 through SO.sub.x--the
subordinate children. At this point, MO.sub.1 152 processes each of
the subordinate children's records in the redundant database
against the database residing at MO.sub.1 152. In doing this, first
the deleted records are processed and deleted from MO.sub.1's
database. Subsequently, additional records are added and/or
modified in MO.sub.1's database in accordance with the last
modified date/time field.
[0069] Parent to Children Data Transfers
[0070] Still, at a later predetermined time, MO.sub.1 examines its
database for any additions, deletions, or changes which may have
been initiated at MO.sub.1 or initiated by RO.sub.1. These
additions, changes, or deletions, are placed in a redundant
database which is set up for each particular subordinate children
site. Data records that have the "last modified by site" value that
is the same as the subordinate children's site are discarded
inasmuch as it is known that these records originated from that
site. This redundant database with any ancillary data files is then
transferred electronically to the respectively associated
subordinate child. This process repeats itself with the parent
becoming the subordinate child and additional transactions are
prepared for additional sites.
[0071] In view of the above discussion, it has been demonstrated
that the system of the present invention is effective for taking a
plurality of disbursed databases and synchronizing these databases
with other databases associated therewith. It is important to note
that only records which have been altered, in some way, are
transferred for updating thus eliminating the time consuming task
of transferring all database records, even those which have not
been altered in any way. In this aspect, the data synchronization
method of the present invention is extremely efficient.
[0072] Overall Entry Module
[0073] FIG. 7A depicts the OVERALL ENTRY MODULE of the present
invention which is preferably adapted to run on any IBM PC
compatible capable of running Microsoft Windows.
[0074] The OVERALL ENTRY MODULE is displayed when the system is
first booted and provides a method of entering the Land, Sales,
Build (or construction), Warranty, Administration, Financial, or
Office LINC Subsystems. The SALES SUBSYSTEM is selected by
positioning an indicator on the SALES Icon and then activating the
selection. This positioning/activation sequence is typically
implemented by way of a "mouse" control, but any other technique
for allowing a user to select from a menu of options is also
contemplated, including selection by a person's finger. After
selection, the screen set forth in FIG. 7B is displayed confirming
that (in this particular example) the SALES Subsystem has been
selected.
[0075] People Information Module
[0076] FIGS. 8A-8E depict the PEOPLE INFORMATION MODULE of the
present invention. The PEOPLE INFORMATION MODULE is selected by
positioning a screen indicator over the PEOPLE icon and activating
it. The user is prompted for a customer's last name or phone number
(see FIG. 8A). As characters are entered into the last name field
(see FIG. 8B) those customers that "match" the information in the
last name field are displayed for further selection.
[0077] FIG. 8C shows the PEOPLE INFORMATION screen that is
displayed after a prospect is selected and the current information
is given. If the prospect is a new prospect, the screen is given
with only the customer's last name. The user then enters the
information on the screen. All of the information displayed on the
screen is optional and the system will function with only the
customer's last name. The system is designed so that a customer may
have in excess of 1000 telephone numbers associated with their
name.
[0078] FIG. 8D discloses a further screen of the PEOPLE INFORMATION
MODULE which allows a user to access/enter certain financial
information about a customer. This information is used in
determining if a customer qualifies for a particular home and is
also used to determine the maximum amount of a loan that a customer
could obtain for a particular home.
[0079] If the customer is a real estate broker, the sales associate
selects the broker button (see FIG. 8C) and selects the appropriate
broker/agent (see FIG. 8E). If a particular broker/agent does not
exist, the sales associate may add the broker/agent.
[0080] Additional information associated with the customer is
assessed through the PEOPLE INFORMATION MODULE screen of FIG. 8F.
The names and birthdates of the customer's children, employer
information, and alternate addresses for the customer are
entered/maintained through this screen. In addition, the user may
select the "diary" button to enter a log regarding customer
activities. For example, a short synopsis of a phone call, letter,
or visit from a customer may be entered. Thus, at a later date the
user may review previous correspondence with the customer. Previous
selections made by the customer may be recalled by depressing the
SCENERIO button.
[0081] Administration System
[0082] The ADMINISTRATION SYSTEM contains several modules
associated with the maintenance of certain data files regarding
this invention. The primary modules associated with this system are
shown in FIG. 9A, which is displayed when the "ADMIN" icon is
selected from the main selection module (see FIG. 7A).
[0083] By way of example, when the Market Master icon is selected
(see FIG. 9A), and a sub-menu of "PLANS/ELEVATIONS" is selected, a
screen associated with the associated plans and elevations for a
particular subdivision is displayed as shown in FIG. 9B. This
screen permits the user to change the pricing of a plan, identify
the file name depicting the graphic for the plan, add or change
information for an elevation, change pricing (including future
pricing) for an elevation, and graphics file names.
[0084] Another example of the ADMINISTRATION SYSTEM is the CONTRACT
APPROVAL MODULE which is displayed when the CONTRACT icon is
selected. The screen of FIG. 9C displays all open contracts and
change orders that require approval before they may be
ratified.
[0085] A third example of the ADMINISTRATION SYSTEM is the
FINANCING MODULE which is displayed when the FINANCING icon is
selected and the LOAN MAINTENANCE sub-menu is selected. The screen
in FIG. 9D is displayed whereby a loan fee maybe entered as a loan
specific fee or a subdivision specific fee. The loan fee is then
entered as a fixed or base amount plus a VARIABLE AMOUNT of either
the HOUSE COST or the LOAN AMOUNT. Fees are further described as
one-time, yearly, or monthly.
[0086] These fees are typically supplied by a mortgage company and
are electronically transmitted to the related SALES OFFICES by the
DATA LINC system.
CONCLUSION
[0087] The foregoing detailed description shows that the preferred
embodiments of the present invention are well suited to fulfill the
objects of the invention. It is recognized that those skilled in
the art may make various modifications or additions to the
preferred embodiments without departing from the spirit of the
present invention. Accordingly, it is to be understood that the
subject matter sought to be afforded protection hereby should be
deemed to extend to the subject matter defined in the appended
claims including all fair equivalents thereof.
* * * * *