`US007861158B2
`
`c12) United States Patent
`Martin et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 7,861,158 B2
`*Dec. 28, 2010
`
`(75)
`
`(54) SYSTEM AND PROCESS FOR GATHERING,
`RECORDING AND VALIDATING
`REQUIREMENTS FOR COMPUTER
`APPLICATIONS
`Inventors: Maurice Martin, Hermosa Beach, CA
`(US); Stephen Brickley, Hermosa
`Beach, CA (US); Leon Amdour, Los
`Angeles, CA (US); Alex Kravets,
`Marina de! Rey, CA (US); Brian Fan,
`Huntington Beach, CA (US); Dominic
`Infante, Redondo Beach, CA (US);
`Stuart Larking, Redondo Beach, CA
`(US); Paul Aldama, Los Angeles, CA
`(US)
`(73) Assignee: IRISE, El Segundo, CA (US)
`( * ) Notice:
`Subject to any disclaimer, the term ofthis
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 1863 days.
`This patent is subject to a terminal dis(cid:173)
`claimer.
`10/484,541
`Jul. 26, 2002
`PCT /US02/23816
`
`(21) Appl. No.:
`(22) PCT Filed:
`(86) PCT No.:
`§ 371 (c)(l),
`Jan. 22, 2004
`(2), ( 4) Date:
`(87) PCT Pub. No.: W003/010684
`PCT Pub. Date: Feb. 6, 2003
`Prior Publication Data
`
`(65)
`
`Oct. 28, 2004
`US 2004/0216045 Al
`Related U.S. Application Data
`
`(51)
`
`(60) Provisional application No. 60/308,052, filed on Jul.
`26, 2001.
`Int. Cl.
`G06F 31048
`(2006.01)
`(2006.01)
`G06F 31023
`(52) U.S. Cl. ....................... 715/243; 717/104; 717/105;
`717/120
`(58) Field of Classification Search ................. 715/513,
`715/243; 717/104, 105, 120
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`4,730,258 A
`
`3/1988 Takeda et al.
`
`(Continued)
`
`FOREIGN PATENT DOCUMENTS
`
`EP
`
`0 476 533 A2
`
`3/1992
`
`(Continued)
`
`OTHER PUBLICATIONS
`
`Ed Bott and Ron Person, Special Edition Using Windows 95 with
`Internet Explorer4.0, Feb. 17, 1998, Que, Chapter 22.*
`
`(Continued)
`
`Primary Examiner-Stephen S Hong
`Assistant Examiner-Wilson Tsui
`(74) Attorney, Agent, or Firm-Knobbe Martens Olson &
`BearLLP
`ABSTRACT
`(57)
`The system includes a novel software application interactive
`representation modeling language, a software application
`(82) operative to use the modeling language to create, read
`and modify interactive representation models of the proposed
`applications, a memory (86) to store requirement data and
`interactive representation model data, a software application
`(92) operative to read and update the interactive representa(cid:173)
`tion model data across a computer network, a software appli(cid:173)
`cation (76) operative to maintain a record of the requirements
`and to administer operation of the system, a software appli(cid:173)
`cation (78) operative to render interactive representations of
`the proposed applications in browser readable format, a soft(cid:173)
`ware application (82) operative to allow multiple instances of
`other applications to access interactive representation data
`and requirement data residing in the memory and a software
`application (84) operative to allow an individual user's inter(cid:173)
`actions with the system to be broadcast across a networked
`system to other users.
`98 Claims, 24 Drawing Sheets
`
`AXR-1001-Page 1 of 74
`
`
`
`US 7,861,158 B2
`Page 2
`
`U.S. PATENT DOCUMENTS
`
`5,008,853 A
`5,019,961 A
`5,041,992 A
`5,187,788 A
`5,247,650 A
`5,247,651 A
`5,255,360 A
`5,261,100 A
`5,265,254 A
`5,269,014 A
`5,297,238 A
`5,313,575 A
`5,323,452 A
`5,420,978 A
`5,428,729 A
`5,446,842 A
`5,564,048 A
`5,572,430 A
`5,598,359 A
`5,715,432 A
`5,745,712 A
`5,748,188 A
`5,754,738 A
`5,764,992 A
`5,917,730 A
`5,949,999 A
`5,960,411 A
`5,978,811 A
`5,991,533 A
`5,991,535 A
`6,046,740 A
`6,047,314 A
`6,167,564 A
`6,177,942 Bl
`6,182,116 Bl
`6,188,400 Bl
`6,189,142 Bl
`6,199,193 Bl*
`6,212,672 Bl
`6,219,065 Bl
`6,243,092 Bl
`6,247,032 Bl*
`6,275,223 Bl
`6,289,502 Bl
`6,385,765 Bl
`6,397,117 Bl
`6,405,364 Bl
`6,408,263 Bl
`6,434,607 Bl *
`6,463,460 Bl
`6,507,848 Bl
`6,518,979 Bl
`6,564,368 Bl
`6,591,271 Bl*
`6,604,068 Bl
`6,634,008 Bl
`6,668,369 Bl
`6,681,383 Bl
`6,715,130 Bl
`6,725,399 Bl
`6,741,265 B2
`6,802,055 B2
`6,816,914 Bl
`6,832,270 B2
`6,859,451 Bl
`6,868,370 Bl
`6,880,126 Bl
`6,907,546 Bl
`6,944,584 Bl
`6,945,780 B2
`6,959,268 Bl
`
`4/1991 Bly et al.
`5/1991 Addesso et al.
`8/1991 Cunningham et al.
`2/1993 Marmelstein
`9/1993 Judd et al.
`9/1993 Clarisse
`10/1993 Peaslee et al.
`1111993 Fujinami
`1111993 Blasciak et al.
`12/1993 Ogino
`3/1994 Wang et al.
`5/1994 Beethe
`6/1994 Dickman et al.
`5/1995 Tozawa et al.
`6/1995 Chang et al.
`8/1995 Schaeffer et al.
`10/1996 Eick et al.
`1111996 Akasaka et al.
`111997 Montag et al.
`2/1998 Xu eta!.
`4/1998 Turpin et al.
`5/1998 Hu et al.
`5/1998 Saucedo
`6/1998 Kullick et al.
`6/1999 Rittie et al.
`9/1999 Song et al.
`9/1999 Hartman et al.
`1111999 Smiley
`1111999 Sano et al.
`1111999 Fowlow et al.
`412000 LaRoche et al.
`412000 Pommier et al.
`12/2000 Fontana et al.
`112001 Keong et al.
`112001 Nanunaet al.
`2/2001 House et al.
`2/2001 Johnston et al.
`3/2001 Oyagi et al.
`................ 717/101
`4/2001 Keller et al.
`4/2001 Mashita et al.
`6/2001 Okita et al.
`6/2001 Bernardo et al. ............ 715/530
`8/2001 Hughes
`9/2001 Garland et al.
`512002 Cleaveland et al.
`512002 Burrows et al.
`612002 Bowman-Amuah
`612002 Summers
`8/2002 Haverstock et al. ......... 709/217
`10/2002 Simonoff
`112003 Crosby et al.
`212003 Spertus et al.
`5/2003 Beckett et al.
`7/2003 Ceri et al. ................... 707/102
`8/2003 Bukowski et al.
`10/2003 Dole
`12/2003 Krebs et al.
`112004 Pastor et al.
`3/2004 Eiche et al.
`412004 Bowman
`512004 Ghosh et al.
`10/2004 Jade et al.
`1112004 Heinzman et al.
`12/2004 Das Sharma et al.
`212005 Pasternach et al.
`3/2005 Burbridge et al.
`412005 Bahrs et al.
`6/2005 Haswell et al.
`912005 Tenney et al.
`912005 Perry
`10/2005 Myers, Jr. et al.
`
`11/2005 Schmit et al.
`6,965,800 B2
`11/2005 Lepej ian et al.
`6,966,049 B2
`6,968,539 Bl * 11/2005 Huang et al. ................ 717 /115
`11/2005 Houlding et al.
`6,970,813 Bl
`6,975,976 Bl
`12/2005 Casavant et al.
`6,983,227 Bl
`112006 Thalhanuner-Reyero
`7,000,220 Bl
`212006 Booth
`7,139,686 Bl
`1112006 Critz et al.
`7,146,615 Bl
`12/2006 Hervet et al.
`7,174,286 B2
`212007 Martin et al.
`7,194,489 B2
`3/2007 Bentley et al.
`200110002834 Al
`6/2001 Mashita et al.
`200110024211 Al
`9/2001 Kudukoli et al.
`200210010739 Al
`112002 Ferris et al.
`2002/0032699 Al
`3/2002 Edwards et al.
`2002/0032900 Al
`3/2002 Charisius et al.
`2002/0054051 Al
`512002 Ladd
`2002/0060566 Al
`512002 Debbins et al.
`2002/0065645 Al
`512002 Wall et al.
`2002/0083413 Al
`612002 Kodosky et al.
`2002/0108101 Al
`8/2002 Charisius et al.
`200210112225 Al
`8/2002 Charisius et al.
`2002/0120921 Al
`8/2002 Co burn et al.
`2002/0130834 Al
`912002 Madarasz et al.
`2002/0196282 Al
`12/2002 Washington et al.
`2003/0023527 Al*
`112003 Wike et al .................... 705/35
`2004/0021679 Al
`212004 Chapman et al.
`2004/0030516 Al
`212004 Dunhill eta!.
`2004101177 59 Al *
`6/2004 Rippert et al.
`2004/0123272 Al
`6/2004 Bailey et al.
`2004/0133596 Al
`7/2004 Fujita et al.
`2004/0216044 Al
`10/2004 Martin et al.
`2004/0221256 Al
`1112004 Martin et al.
`2004/0221260 Al
`1112004 Martin et al.
`2005/0004789 Al
`1/2005 Summers
`2007/0168931 Al
`7/2007 Martin et al.
`
`.............. 717/100
`
`FOREIGN PATENT DOCUMENTS
`
`EP
`JP
`JP
`JP
`WO
`WO
`WO
`WO
`
`0 909 070 A2
`06-083936
`08-171484
`10-260961
`WO 92/11724
`WO 96/16379
`W099/27443
`WO 00/28397
`
`4/1999
`3/1994
`7 /1996
`9/1998
`7 /1992
`5/1996
`6/1999
`512000
`
`OTHER PUBLICATIONS
`
`Danny Goodman, Dynamic HTML: The Definitive Reference, Jul.
`1998, O'Reilly, Chapter 8. *
`W3C, Tables, Aug. 25, 2000, W3C, Chapter 11-Section 11: pp. 1-3,
`hrtp://web.archive.org/web/2000081509393 2/http://www.w3.org/
`TR/htm14/struct/tables.html.*
`PCT International Search Report dated Nov. 29, 2002.
`Axure Software Solutions, Inc., Defendant Axure Software's Preli mi-
`nary Invalidity Contentions for US. Patent No. 7,349,837, Feb. 24,
`2009, Case No. 2:08-cv-03601 SJO (JWJx), United State District
`Court, Central District of California, Western Division, Hon. S.
`James Otero; pp. 1-9.
`Axure Software Solutions, Inc., Preliminary Invalidity Contentions
`Exhibit A; pp. 1-54.
`Axure Software Solutions, Inc., Preliminary Invalidity Contentions
`Exhibit B; pp. 1-58.
`Axure Software Solutions, Inc., Preliminary Invalidity Contentions
`Exhibit C; pp. 1-59.
`Axure Software Solutions, Inc., Preliminary Invalidity Contentions
`Exhibit D; pp. 1-20.
`Microsoft Corporation, Visio 2000 Technical Articles: Basic Shapes
`Development [online], Oct. 2000 [retrieved on Feb. 24, 2009],
`Microsoft Corporation, Retrieved from the Internet: <http://msdn.
`microsoft.corn/en-us/library/aal 40248( office. l O,printer ).aspx>, pp.
`1-13.
`
`AXR-1001-Page 2 of 74
`
`
`
`US 7,861,158 B2
`Page 3
`
`David A. Edson, Visio 2000 Technical Articles: Using Visio as a
`Forms Tool: Checkbook Example [online], Dec. 1999 [retrieved on
`Feb. 24, 2009], Microsoft Corporation, Retrieved from the Internet:
`<http://msdn.microsoft.conn/en-us/library/ aal 40249( office.
`10,printer).aspx>, pp. 1-6.
`Microsoft Corporation, Visio 2000 in Large Organization [online],
`Apr. 1, 2000 [retrieved on Feb. 24, 2009], Microsoft Corporation,
`Retrieved from the Internet<http://technet.microsoft.com/en-US/li(cid:173)
`brary/cc75133l(printer).aspx>, pp. 1-9.
`USPTO; Office Action dated Nov. 1, 2007, from related U.S. Appl.
`No. 10/763,012 (filed Jan. 22, 2004).
`USPTO, Office Action dated May 17, 2007, from related U.S. Patent
`Appl. No. 10/763,012 (filed Jan. 22, 2004).
`USPTO, Advisory Action dated Apr. 21, 2008, from related U.S.
`Appl. No. 10/763,012 (filed Jan. 22, 2004).
`US PTO, Office Action dated Sep. 29, 2008, from related application
`U.S. Appl. No. 10/763,012 (filed Jan. 22, 2004).
`USPTO, Office Action dated May 23, 2007, from related U.S. Appl.
`No. 10/762,428 (filed Jan. 22, 2004).
`USPTO, Supplemental Notice of Allowability dated Feb. 13, 2008,
`from related U.S. Appl. No. 10/762,428 (filed Jan. 22, 2004).
`US PTO, Office Action dated Aug. 29, 2006, from related U.S. Appl.
`No. 10/763,080 (filed Jan. 22, 2004).
`Gregg Keizer; Demo It Without Being There; PC Magazine; vol. 14,
`No. 7 (Apr. 11, 1995), pp. 46.
`Unknown, Cover Art for Dan Bricklin's demo-it! Version 2.0 soft(cid:173)
`ware; Lifeboat Publishing; Shrewsbury, New Jersey, Pub: Est. 1995.
`Ron Bel Bruno; Captivating presentations (Lifeboat Publishing's
`Dan Bric/din's demo-it presentation software); Windows Magazine;
`vol. 6, No. 5 (May 1995), pp. 150.
`Wallace Wang; Visual Basic 6 for Dummies (California, IDG Books
`Worldwide, 1998), pp. 9-14, 18-34, 60-125, 140-142, 210-220, 293-
`296, 404-406, and 417-432.
`Visio Corporation; Visio 2000 User Guide (Washington, Visio Cor(cid:173)
`poration, 1999), pp. iii-x,1-44, 61-65, 92-101, 104-147, 164-176,
`189-202, 258-279, and 302-303.
`
`Visio Corporation; Developing Vision Solutions, Visio2000 (Wash(cid:173)
`ington, Visio Corporation, 1999), pp. iii-xiv, 61-82, 139-144, 270-
`272, 505-519, and 556-557.
`Microsoft Corporation; Step by Step Microsoft Access 2000 (Wash(cid:173)
`ington, Microsoft Press, 1999) pp. iii-x, 81-86, and 291-292.
`Alison Balter; Mastering Microsoft Access 2000 Development (Sams
`Publishing, 1999), pp. 21-29, 118-169, 275-281, 430-496, 592, and
`1100-1106.
`Microsoft Corporation; Building Applications for Microsoft Access
`(Washington, Microsoft Corporation, 1994), pp. 58.
`Microsoft Corporation; Microsoft Access User's Guide (Washington,
`Microsoft Corporation, 1994), pp. iii-x, 325-327, 342, 353-361, 369-
`370, 372, 390-391, 404-405, 792-793, 802, and 807.
`John Hedtke and Elisabeth Knottingham; Visio 2000: The Official
`Guide (California, McGraw-Hill, 2000), pp. vi-xii, 293-296, 326-
`331, 354-356, and 358-359.
`Virginia Andersen; Access 2000: The Complete Reference (Califor(cid:173)
`nia, McGraw-Hill, 2000), pp. v-xviii, 370-371, 374-379, 396-402,
`464-471, 474-479, 1112, and 1314-1317.
`John L. Viescas; Running Microsoft Access 2000 (Washington,
`Microsoft Press, 1999), pp. 81-82.
`Sung, et al., "A top-dwon approach to teaching introductory com(cid:173)
`puter graphics", ACM, 2003.
`Koshizuka, et al., "Windows real-objects: A distributed shared
`memory for distributed implementations of GUI applications", ACM
`1993.
`Nabavi, R., "APL windowing systems-Where next?", ACM 1989.
`USPTO; Notice of Allowability dated Nov. 13, 2007, from related
`U.S. Appl. No. 10/762,428 (filed Jan. 22, 2004).
`Canadian Intellectual Property Office; Office Action dated Aug. 3,
`2010, from related Canadian application No. 2,704,080.
`Canadian Intellectual Property Office; Office Action dated Jul. 30,
`2010, from related Canadian application No. 2,704,252.
`* cited by examiner
`
`AXR-1001-Page 3 of 74
`
`
`
`00 = N
`"' "'""
`tit
`"'""
`0--,
`Oo
`-....l
`rJl
`d
`
`.i;...
`N
`0 .....
`....
`.....
`1J1 =(cid:173)
`
`('D
`('D
`
`N
`"'CIO
`N
`~
`
`0 ....
`
`0
`
`c ('D
`
`~ = ~
`
`~
`~
`~
`•
`00
`~
`
`DELIEVERY
`
`DESIGN/
`
`OUTPUTS TO
`
`PROVIDE
`
`YES
`
`~ <
`
`REQUIREMENTS
`
`REPRESENTATION & I
`REVIEW INTERACTIVE
`
`MODEL
`
`REPRESENATION
`
`INTERACTIVE
`
`CREATE INITIAL
`
`REPOSITORY
`REQUIREMENT
`
`RECORD IN
`
`58
`
`56
`
`54
`
`REQUIREMENTS
`COLLECT INITIAL
`
`52
`
`Fig. 1
`
`50~
`
`68
`
`NO
`
`66
`
`62
`
`60
`
`MODEL
`
`REPRESENTATION
`
`INTERACTIVE
`
`MODIFY/ADD TO
`
`REQUIREMENTS
`MODIFY/ ADD TO
`
`AXR-1001-Page 4 of 74
`
`
`
`00 = N
`"' "'""
`tit
`"'""
`0--,
`Oo
`-....l
`rJl
`d
`
`.i;...
`N
`0 .....
`N
`.....
`1J1 =(cid:173)
`
`('D
`('D
`
`N
`"'CIO
`N
`~
`
`0 ....
`
`0
`
`c ('D
`
`~ = ~
`
`~
`~
`~
`•
`00
`~
`
`REPOSITORY
`
`FILES
`
`Fig. 2
`
`MUSIC SERVER
`
`92
`
`MUSIC CLIENT
`
`88
`
`90
`
`SIMULATOR
`
`•I
`
`I I
`
`I
`
`78
`
`76
`
`ION
`
`72
`
`72
`
`72
`
`74
`
`74
`
`74
`
`<
`
`<
`
`<
`
`<
`
`< <
`
`c
`
`<
`
`<
`
`<
`
`<
`
`<
`
`c::::=rc
`<
`
`<
`
`•
`
`80
`
`:TUDIO CLIENTi
`MUSIC
`
`82---4-
`
`..-----------Jo' 84
`
`C::::::.c < < < < < <
`(
`
`< <
`
`(
`
`< < < ---<
`
`•
`
`SIMULCASTER
`
`..__
`
`I
`
`< <
`
`< <
`
`<.
`
`< < <
`
`c=:::::J < <
`c
`
`<
`
`<
`
`•
`
`BROWSER
`
`80
`
`64
`
`80
`70
`
`AXR-1001-Page 5 of 74
`
`
`
`00 = N
`"' "'""
`tit
`"'""
`0--,
`Oo
`-....l
`rJl.
`d
`
`.i;...
`N
`0 .....
`
`(.H
`
`.....
`1J1 =(cid:173)
`
`('D
`('D
`
`N
`"'CIO
`N
`~
`
`0 ....
`
`0
`
`c ('D
`
`~ = ~
`
`~
`~
`~
`•
`00
`~
`
`TOUPDATEIRM
`MUSICCLIENT
`
`YES
`
`~----.
`112
`
`~ CALL
`
`./'-....
`I NO
`
`-------------,
`
`lOSI FUNCTION ~MPACTIRM?
`~/1>0ESFUNCTI. o
`........
`
`1 PERFORM 1
`
`98 --........1
`
`Fl·g 3
`
`•
`
`' 1
`11
`11
`I I
`I
`1'
`r STARTUPPROCESS 1
`-~----1
`i I
`96 \
`1-;-R;-ES~S;~; -
`
`I FROM MUSIC CLIENT I l 110"' EVALUATE I
`
`REQUFST IRM
`
`I
`I
`I io2
`
`'--•-·-----------------
`
`116 /
`
`~
`
`100
`
`-
`
`DISPLAY
`UPDATE
`
`SAGE --
`I
`I
`I r
`I
`NO I L
`'/
`I
`r-------,
`
`I
`
`INCOMING MESSAGES
`
`OR
`
`USER INPUT
`
`AWAIT:
`
`BEGIN
`
`I VAL~.__ITY ____ --11
`
`-_, I .__ __ _
`
`1 I -
`
`-
`
`104
`L.--
`I
`
`YES
`
`DISPLAY
`UPDATE
`
`114
`
`END
`
`AXR-1001-Page 6 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 4of24
`
`US 7,861,158 B2
`
`RECEIVE
`REQUEST
`
`124
`
`128
`
`NO
`
`REDIRECT
`TO ION
`LOGIN PAGE
`
`134
`
`YES
`
`PROCESS
`IMAGE
`REQUEST
`
`Fig. 4
`
`NO
`
`FIND ALL
`PAGES AND
`SHOW
`DIRECTORY
`
`SHOW STATIC
`"PAGE NOT
`FOUND" PAGE
`
`144
`
`RETURN
`ACCUMULATED
`HTML TO
`BROWSER
`
`142
`
`CONTROL
`FLOW
`VISITATION
`ALGORITHM
`
`148
`
`PROCESS
`FORM SUBMIT
`
`150
`
`RETURN
`ACCUMULATED
`HTML TO
`BROWSER
`
`154
`
`PROCESS ROW
`SELECTION
`FROM DYNAMIC
`TABLE
`
`156
`RETURN
`ACCUMULATED
`HTML TO
`BROWSER
`
`158
`
`AXR-1001-Page 7 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 5of24
`
`US 7,861,158 B2
`
`CONSTANT
`PRIMITIVE
`
`160
`
`176
`
`PAGE
`PRIMITIVE
`
`CONTAINMENT
`
`162
`
`FORM
`PRIMITIVE
`
`DATAFWW
`
`CONTAINMENT
`CONTAINMENT
`CONTAINMENT
`
`164
`
`TEXT
`INPUT
`PRIMITIVE
`
`TEXT
`INPUT
`PRIMITIVE
`
`BUTTON
`PRIMITIVE
`
`DATA FLOW
`DATAFWW
`
`CONTROL FLOW
`
`170
`
`172
`
`MATH ADD
`PRIMITIVE
`
`PAGE
`PRIMITIVE
`
`CONTAINMENT
`
`Fig. 5
`
`DATA FLOW---.i
`
`TEXT
`PRIMITIVE
`
`AXR-1001-Page 8 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 6of24
`
`US 7,861,158 B2
`
`.. i .
`
`.: .
`
`~·.
`
`l:
`
`·~
`
`:-.:
`
`.c .o
`~ 'j
`_c
`
`I
`]
`L
`L
`
`..
`
`AXR-1001-Page 9 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 7of24
`
`US 7,861,158 B2
`
`Fig. 7
`
`145 \ EXTRACT ALL VALUES
`SUBMI'l"l"ED IN FORM
`AND PACKAGE INTO
`DATA TOKENS
`
`147 \
`
`149 \
`
`151 \
`
`,,
`
`DATAFLOW VISITATION
`ALGORITHM
`
`,,
`
`DETERMINE PAGE OR
`DECISION TO BE
`PROCESSED
`
`~ '
`
`CONTROL FLOW
`VISITATION
`ALGORITHM
`
`'
`END
`
`AXR-1001-Page 10 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 8of24
`
`US 7,861,158 B2
`
`START
`
`200'\
`
`206
`
`CACHE
`TOKEN AT
`PRIMITIVE
`
`END
`
`LABEL
`TOKEN
`
`CACHE
`TOKEN AT
`PRIMITIVE
`
`END
`
`218
`REMOVE
`TOKEN
`FROM
`CACHE
`
`214
`FINDALL
`- - - - - - - - - - - DATA FLOW .,.._ ___ ----1
`EXITS
`
`Fig. 8A
`
`AXR-1001-Page 11 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 9of24
`
`US 7,861,158 B2
`
`236
`
`NO
`
`RETURN
`ERROR
`
`END
`
`YES
`
`242
`
`CACHE
`TOKEN
`AT
`PRIMITIVE
`
`244
`
`FIND ALL
`EMPTY DATA
`FLOW
`INPUTS
`
`YES
`
`NO
`
`246
`DATA FLOW
`PULL
`ALGORITHM
`
`END
`
`Fig. 8B
`
`CACHE TOKEN
`AT PRIMITIVE
`
`224
`
`FIND ALL
`EMPTY DATA
`FLOW INPUTS
`
`DATA FLOW
`PULL
`ALGORITHM
`
`238
`
`EXECUTE
`ACTION
`
`AXR-1001-Page 12 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 10 of 24
`
`US 7,861,158 B2
`
`300\
`
`START
`
`NO
`
`314
`
`PLACE
`VALUE(S)IN
`TOKEN
`
`RETURN
`TOKEN
`
`322
`
`324
`
`326
`
`328
`
`DATA FLOW
`PULL
`ALGORITHM
`
`RETURN
`EMPTY
`TOKEN
`
`LABEL
`TOKEN
`
`END
`
`334
`
`336
`
`REMOVE
`TOKEN
`FROM
`CACHE
`
`RETURN
`TOKEN
`
`CACHE
`TOKEN AT
`PRIMITIVE
`
`FIND ALL
`DATA FLOW
`EXITS
`
`\ - - - - - - " - - - - - ,
`DATA FLOW
`PUSH
`ALGORITHM
`
`Fig. 9A
`
`AXR-1001-Page 13 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 11 of 24
`
`US 7,861,158 B2
`
`END ----l RETURN
`ERROR
`
`312
`
`338
`
`DETERMINE
`ORIGIN
`
`FIND ALL
`EMPTY DATA
`FLOW INPUTS
`
`DETERMINE
`ORIGIN
`
`360
`
`FINDALL
`EMPTY DATA
`FLOW INPUTS
`
`DATA FLOW
`PULL
`ALGORITHM
`
`354
`
`RETURN
`OUTPUT FOR
`ORIGIN
`
`EXECUTE
`ACTION
`
`356
`FIND ALL
`DATA FLOW
`EXITS
`
`358
`. - - - l l - . .L - - -
`DATA FLOW
`RETURN
`__ __, OUTPUT FOR i.---~ PUSH
`ORIGffi
`ALGORITHM
`
`Fig. 9B
`
`RETURN
`EMPTY
`TOKEN
`
`AXR-1001-Page 14 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 12 of 24
`
`US 7,861,158 B2
`
`400_/"
`
`408
`
`Fig. 10
`
`410
`
`Fig. 11
`
`l!l
`
`2
`
`:10
`
`! 1~ ._ _______ ['
`
`502
`
`I
`'12
`
`You are requesting a seoured
`application that requires
`authentication. Please log in to
`begin using yoll' applications. 18
`
`AXR-1001-Page 15 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 13 of 24
`
`US 7,861,158 B2
`
`Type:FOD
`
`ID:7QOtUD
`Priorly: lJnasslgnect
`~To:
`SUblype:
`Status:
`S~elease: In SCOpeAJnasslgned
`Requeslor:
`Modified: 08-Apr-2002 06:41 PM
`
`·r: (14)-MA
`
`IRiseSupport
`
`Number Of Requirements: 1
`
`This is the htni for the login page.
`
`Markstlng Admlninisb ator requirment.
`
`Number Of Requirements: 1
`
`TJ1Pe! Intent
`
`ID:801MW
`Priorly; U'lsnigned
`Assigned To:
`Sul:llWe:
`Stehls:
`Scope.IRelease: I
`Requeslor:
`Modified: 08-Apr-2002 06:41 PM
`
`iRiseSupport
`
`Fig. 12
`
`Fig. 13
`
`Bement Name
`ii (BUTTON) Log In
`
`(TEXT) PM
`
`(TEXT) OH
`
`AXR-1001-Page 16 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 14 of 24
`
`US 7,861,158 B2
`
`512
`
`. . userftecard . .
`
`. . JrAe . .
`
`Fig. 14
`
`M C·A
`.0111,.,....
`_ 1 •t II t t.
`
`'·~'"~"
`
`I
`.
`I
`11\.·h Hi !•I
`
`Fig. 15
`
`AXR-1001-Page 17 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 15 of 24
`
`US 7,861,158 B2
`
`REOUIRU.RN rs - 3.00 LIS I PAGE
`Iii ~@IW-~!!'~~-{'~t~::·~J-i:Yi~-
`
`l)jpe:FDO
`
`Llllt Page Functlonal)ty
`
`The Ust Pege wlD aoow users to search tor CO$ accordhg to
`their Genre.
`
`·'-··-:.:•
`.. 1:.":°S~·:, •••.
`
`Assi!Pled lo: Temporary Aclm!nlstrmor
`SUblype: None
`Status: Propo$e(I
`Scope.fielease: ~
`Requestor: Temporary Admlristralor
`Mcdfied: 04-lun-2002 05:49 PM user1
`~aassmcauons .
`:.~~!}~):.
`Pegs FunctlOl'la!iiyl3.00 list COs
`·~t . ·._-..,. .. ~;;. .. ~;· :: ' .
`. ~·. ··~~-~~--- .....
`ID: SQRIH2
`Ptiorty: lJnGnigned
`Assigned To:
`Subtype:None
`Status: Proposed
`Scopemele8Se: ~
`Requeaor: user one
`Modified: Q3...l.ln-2C02 11234 PM user1
`~~
`Page FWlC!ionalitylJ.DO List COs
`
`T)llN!: FDD
`
`TdleColumn
`
`The Record Dsl should be sorted by Title wtien the use!' dicks
`on tho TiUo column header.
`
`Fig. 16
`
`__
`
`j/
`.
`!j~_I_ ') l' _ •.
`
`Tl'lls Is tlle custumlzad beadar.
`
`Page Fw1ctio11afit1· (6 of zr;;
`UB2010 Color Convenlio111
`FOO
`
`.
`
`The badcgrouncl of the 1811 lllMgatton and 11111 lext color shaulcl matdl !lie sl!a SIBndard colors: blue end
`grey. n &hould alao be bdd. unclarllned, and ~htly larger lhan the normal tell.
`
`3010GP Genni Vel11n
`FOO
`
`Any Olap.dawn for S8ledinO a edllr11 lhe Genre at a CD 5hould conlaln Che Rodi. Bhl8s. and CourFt
`as options.
`
`uae,.~ ..
`
`Fig. 17
`
`AXR-1001-Page 18 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 16 of 24
`
`US 7,861,158 B2
`
`; R I
`
`.. I' -~
`
`....... "" ....
`
`-(cid:173)·-(cid:173)--
`
`----=.---, .......
`_,.,._
`
`U..-1Dllo-~llleCDo._ .. __ OolD-Ulln_ .. _
`tlllrtalhm' .. RDCllCDI. CbCllU."CWlldll:m.
`n. .... -...~11181J.m••..r-...am-"IDAl:d:CDIF'Od
`
`FllD
`
`... ii
`•-Ill liD »Ill o •II !!jlc.'\Rlso\S. .. I&-·""··· I m-·-.!@)uienGalo...ll):mi:l·• ... !li)Mt;/Aor-
`
`0....
`
`Fig. 18
`
`'llllllla ... __
`
`S't'f P =rtdW"*'"WM
`
`::.cos ~ ...Cae.t.
`=.'1'orc:~tlllllMml~C.rlildlld•-=••llllO... ...... Pt5:19
`
`--~---.... ----
`__ ..
`----- LCr•llr:(cid:173)-~-
`...... , . .._,
`-
`
`.ftollll ..... __ .,_lltCllo .......... - -
`
`~-.::,...
`
`Zll1U
`
`-
`
`lo COi Fciftd
`
`__ ..
`
`:=.:.
`
`-·---=.---
`==~ =..---
`=::!'"" -----
`Fig. 19
`
`AXR-1001-Page 19 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 17 of 24
`
`US 7,861,158 B2
`
`437
`
`--To:fi"3 T....,l"!"'
`.. _
`.. _ ,_
`
`3
`3
`
`:::J
`
`................
`
`.........
`
`U.llaad .. lllM:tb9m1md~ Int ...... .-deb
`(11\ . . rDcdaft,_..
`
`--
`---T .. ----_.. --
`--(cid:173)
`
`...-..:m..a.n.zma:HitAI ~
`II
`
`---t
`___ ,
`
`..:/
`"'""'
`
`AXR-1001-Page 20 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 18 of 24
`
`US 7,861,158 B2
`
`Geme~i .. Dertml'lllllB!
`
`--·--11111
`
`Prioce lock
`1999
`Us.em Dlivm EQ&ioo P*1 J!ock
`Jolbua Tm
`112
`lloclr.
`
`434
`
`Fig. 21
`
`Fig. 22
`
`AXR-1001-Page 21 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 19 of 24
`
`US 7,861,158 B2
`
`~ person
`
`~
`last name~person
`
`3
`Update
`
`f1rstneme
`
`I
`
`o
`
`I
`' I
`' ! RP#eADI
`'-------------------------·
`Fig. 23
`~. ~;;~~~=~~~~-----------
`
`:.
`
`First Name
`
`namelnput•---(cid:173)
`
`L9$1 Name
`
`@Oeuttonl
`
`Here is the full name:
`
`Fig. 24
`
`-... .. .,. ........ ,
`
`Fig. 25
`
`AXR-1001-Page 22 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 20 of 24
`
`US 7,861,158 B2
`
`Fig. 26
`
`~--------------·---.
`jForm
`i FirstName
`i
`i
`i
`I
`I
`i________ ---------
`
`Here Is your full nmne:
`
`yourFU!Narne
`
`Fig. 27
`
`The start Page Is the starting point for 1111 slnl.imions.
`To 5itlUlate the experience of an existing accclM1t, select
`aCCOU1l number 1001 . To simu!Se the experience of a new
`accouit, use acCXIUnt runber 2001
`
`Fig. 28
`
`AXR-1001-Page 23 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 21 of 24
`
`US 7,861,158 B2
`
`Fig. 29
`
`Fig. 31
`
`IE
`Fig. 33
`
`Fig. 35
`
`E1
`Fig. 30
`
`*1
`Fig. 32
`
`~
`Fig. 34
`
`1100%
`
`::JI
`Fig. 36
`
`AXR-1001-Page 24 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 22 of 24
`
`US 7,861,158 B2
`
`Fig. 37
`
`Fig. 38
`
`Project Browser
`
`Fig. 39
`
`•
`
`AXR-1001-Page 25 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 23 of 24
`
`US 7,861,158 B2
`
`r:···-. -·-·-·-·-·-·-·-·-·-. -·-·-·-·-·
`;Fam·
`:
`i
`! Cb
`! I ......
`I I i ,_,
`ITmttmt.114. 11 ; -tNl1111
`
`;
`
`....... t&re:
`
`11
`
`111 lmt~: 11 n--42
`! EJ 11!!1~5.:
`i18Jrr•
`::
`I i 1 j ~nm= 11 rol!!SdAlla~!.:11filt;1tt :-r-n"'f~tnra
`!
`~------~:
`! fuB§ IN&a
`L. •. -·-·-·-·-·-·-·-·-·-. -·-·-·-·-·-!
`
`tNln&
`
`~
`
`: :
`
`'.
`i
`
`1
`j
`!
`
`!
`
`I
`
`!
`
`I
`
`I
`I I I
`I
`C..tlGaler
`(Alollj
`
`Fig. 40
`
`Fig. 41
`
`AXR-1001-Page 26 of 74
`
`
`
`U.S. Patent
`
`Dec. 28, 2010
`
`Sheet 24 of 24
`
`US 7,861,158 B2
`
`Fincl ell co
`(rind)
`
`Sort CD by Artist
`(Sort)
`
`Fig. 42
`
`!
`I ·-·---·-··· ··-·-·-·-· -·-·-·-·-.
`
`Fig. 43
`
`AXR-1001-Page 27 of 74
`
`
`
`US 7,861,158 B2
`
`1
`SYSTEM AND PROCESS FOR GATHERING,
`RECORDING AND VALIDATING
`REQUIREMENTS FOR COMPUTER
`APPLICATIONS
`
`This is a section 371 filing of Application No. PCT/US02/
`23816 filed Jul. 26, 2002, which was published as WO
`03/010684 Al on Feb. 6, 2003 under PCT Article 21(2) in
`English, which claims the benefit under 35 U.S.C. §119(e) of
`U.S. Provisional Application No. 60/308,052, filed Jul. 26,
`2001, the entireties of which are herein incorporated by ref(cid:173)
`erence.
`
`TECHNICAL FIELD
`
`The present invention is directed to a system and process
`for gathering, recording and validating requirements for com(cid:173)
`puter applications in the fields of requirements analysis for
`computer application development and of computer applica(cid:173)
`tion development.
`A portion of the disclosure of this patent document con(cid:173)
`tains material which is subject to copyright protection. The
`copyright owner has no objection to the facsimile reproduc(cid:173)
`tion by any one of the patent document or the patent disclo(cid:173)
`sure, as it appears in the Patent and Trademark Office patent
`file or records, but otherwise reserves all copyright rights
`whatsoever.
`
`INDUSTRIAL APPLICABILITY
`
`The present invention has applicability in the field of
`design and development of computer software applications
`for businesses and other entities, particularly concerning
`large, complex systems adapted for networks, including pri(cid:173)
`vate networks as well as public networks such as the Internet.
`
`BACKGROUND ART
`
`With the increasing complexity involved in the develop(cid:173)
`ment of computer programs that embody very sophisticated
`business logic, specification of the requirements of these pro(cid:173)
`grams before they are actually built, i.e., programmed into
`computer readable code is important to timely and cost-ef(cid:173)
`fective production of these systems.
`As organizations are forced to do more with less, the need
`to deliver such applications on-time and on-budget without
`sacrificing quality presents a bigger challenge than ever
`before. One of the major problems in these fields is system
`definition, i.e., the effective identification of accurate, com(cid:173)
`plete and unambiguous requirements for the system or appli(cid:173)
`cation. This is especially true of applications used on the
`Internet. These applications must meet requirements related
`not only to graphic design, content and usability, but also
`related to complex scenarios of user system interactions that
`are not complete and accurate requirements from outset and
`may not even be documented before starting the application
`design.
`Traditional software development falls typically into sev(cid:173)
`eral main disciplines. The first is known as the "waterfall"
`software development life cycle approach. The second 60
`approach attempts to improve the effectiveness of the water(cid:173)
`fall approach by introducing prototypes into the development
`lifecycle early in the development cycle. Each of these
`approaches is associated with significant problems.
`The waterfall approach is a development method that is
`linear and sequential. Waterfall development has distinct
`goals for each phase of development. Once a phase of <level-
`
`30
`
`2
`opment is completed, the development proceeds to the next
`phase and there is no turning back. This phase of development
`is analogous to the flow of water over a waterfall; it cannot
`flow back to the top of the waterfall. In the waterfall design
`approach, the requirements gathering phase typically results
`with capture of requirements on paper documents. Typically,
`the system designers generate a paper-based design from the
`paper-based requirements. The system developers then inter(cid:173)
`pret the paper-based design and convert it into executable
`10 computer code. Typically, the executable code is then deliv(cid:173)
`ered to the testers, who then evaluate the code to determine if
`the resulting computer application meets the requirements.
`While waterfall development allows for departmentaliza(cid:173)
`tion and managerial control, it does not allow for much reflec-
`15 tion or revision. Iterations of the design process require itera(cid:173)
`tions of the entire process. However, once an application is in
`the testing stage, it is very difficult to go back and change
`something that was not well thought out in the concept stage.
`Also, typically, problems are not discovered until system
`20 testing, and requirements must be fixed before the system is
`designed. Requirements evolution makes the development
`method unstable. Often during the design and code writing
`phases, requirements inconsistencies, missing system com(cid:173)
`ponents and unexpected development needs are discovered.
`25 Also, system performance cannot be tested until the system is
`almost coded, and under-capacity may be difficult to correct.
`For these reasons the standard waterfall model has been asso(cid:173)
`ciated with the failure or cancellation of a number of large
`systems.
`Known alternatives to the standard waterfall design
`approach include modified waterfall approaches that include
`those that start with a very rough notion of the system and
`become more detailed over time, analogous to going over
`several smaller waterfalls (spiral waterfall design); and those
`35 that include overlapping phases and sub-projects (modified
`waterfalls).
`Other known design approaches includes the staged deliv(cid:173)
`ery approach, in which the designer reviews the concept,
`requirements analysis, and architectural design phases, and
`40 then implements these phases, shows them to the customer as
`the components are completed, and then goes back to the
`previous phase( s) if needed.
`All of these waterfall type approaches suffer from the same
`or similar problems, however. The iterative approach through
`45 the phases, even when overlapped, results in static require(cid:173)
`ments being interpreted into static designs and developments.
`Because the requirements for most systems are not well
`understood in the beginning, the costs for development often
`become excessive and delivery schedules originally esti-
`50 mated must be revised. Finally, because complex systems
`typically are not well understood in terms of their actual
`implemented behaviors, it is only through actual interaction
`with the system that the system designers and business ana(cid:173)
`lysts truly begin to understand what has been built. Although
`55 the lessons learned may be valuable during waterfall imple(cid:173)
`mentations, they cannot easily be taken advantage of, due to
`the prohibitive costs of re-factoring the designs and imple(cid:173)
`mentations to reflect the new requirements that spring from
`these lessons.
`The second general approach, the prototyping of critical
`parts of the application, was developed, partly in response to
`the problems associated with the waterfall and modified
`waterfall approaches. As used herein, the term prototype, and
`its variations, in the context of the design of computer appli-
`65 cations means the use of some form or stage of application
`code, or the use of static images to represent computer screen
`display.
`
`AXR-1001-Page 28 of 74
`
`
`
`US 7,861,158 B2
`
`3
`The prototyping of critical parts, referred to sometimes
`herein as code prototyping, also was developed in response to
`awareness in the field of the invention that software product
`development tends to move along four paths: (1) ideas to
`product; (2) low technology to high technology; (3) drawings
`to code; and ( 4) appearance and behavior to performance. In
`the code prototyping approach, a prototype code is built to test
`the results of the planning phase, during which the developers
`attempt to understand the users and the users' needs and how
`those were to be addressed in the software application. The 10
`prototype code is then measured to see how the user reacts
`and understands the developers work, and is analyzed to see
`which parts of the prototype are doing well and which parts
`are not. In this prototyping approach, the prototype is actually
`code that is intended to accomplish the intended purpose of 15
`designated parts of the overall software application, and is
`therefore referred to herein as a "coded prototype."
`The prototyping approach also has been associated with
`numerous problems, foremost among them is that prototypes
`are typically written in computer languages that only pro- 20
`grammers can understand and use. Thus the prototypes are
`still developed as traditional computer programs, by pro(cid:173)
`grammers. This has several drawbacks. The first drawback is
`that business analysts, who are the people most likely to
`understand the needs and desires for the computer applica- 25
`tion, cannot develop the prototype without reliance on