EP2033087A4 - Methodes et appareillage pour creer un site web a partir d'un cas d'usage - Google Patents

Methodes et appareillage pour creer un site web a partir d'un cas d'usage

Info

Publication number
EP2033087A4
EP2033087A4 EP07795954A EP07795954A EP2033087A4 EP 2033087 A4 EP2033087 A4 EP 2033087A4 EP 07795954 A EP07795954 A EP 07795954A EP 07795954 A EP07795954 A EP 07795954A EP 2033087 A4 EP2033087 A4 EP 2033087A4
Authority
EP
European Patent Office
Prior art keywords
application
interaction
requirement
creating
file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP07795954A
Other languages
German (de)
English (en)
Other versions
EP2033087A2 (fr
Inventor
John A Kowalonek
Joshua E Gentry
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sorriso Technologies Inc
Original Assignee
Sorriso Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sorriso Technologies Inc filed Critical Sorriso Technologies Inc
Publication of EP2033087A2 publication Critical patent/EP2033087A2/fr
Publication of EP2033087A4 publication Critical patent/EP2033087A4/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/10Requirements analysis; Specification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Definitions

  • Graphical user interfaces provide mechanisms for a software application and related processes operating on a computer system to graphically present information to a user of the computer system.
  • a software application can utilize to generate or construct information to be presented within a graphical user interface.
  • a software program may be configured with software code that produces data, graphics or other information encoded in one or more pages of a markup language such as the hypertext markup language (HTML).
  • HTML hypertext markup language
  • a software program such as a browser may display the HTML pages for presentation of the data, graphics or other information to user on computer display or monitor.
  • a software application may encode information in extensible markup language (XML) in order to allow this information to be transferred to other software applications for various processing purposes.
  • XML extensible markup language
  • a software application equipped to utilize XML processing technologies can apply an extensible style sheet language (XSL) style sheet or an XSL transformation (XSLT) to process or convert a raw XML data source formatted in one manner into an output format that can be displayed on a graphical user interface.
  • XSL extensible style sheet language
  • XSLT XSL transformation
  • XSLT can perform an XML to HTML transformation so that XML encoded data can be displayed within an HTML compatible interface.
  • conversion of an XML data source using an XSL style sheet into a format that can be rendered in a graphical user interface requires that an application developer build Java classes.
  • Java classes are responsible for formatting the particular extracted XML information from the XML data source for presentation in a report such as a particular 5 table style or graph within the graphical user interface.
  • a -. requirement of an application may be that the application is 'easy to use'.
  • the user who creates the application may assume that all users of the application are as technically proficient as the user creating the application.
  • actual users of the application might possess varying levels of technical proficiency. Thus, there may be varying interpretations of
  • the end result application may be far too complex for users of varying levels of technical proficiency while still being 'easy to use' for those on the same level of technical proficiency as the user creating the application.
  • Use cases capture the functional requirements of an application, often by detailing the interactions between an actor
  • the use case is handed off to an engineer creating the application who, in turn, develops the application, from scratch, based on the details and/or requirements of the use case. While the practice of use cases eliminates some of the miscommunication between actual requirements of the application, and the end functionality of the application, the need to create the code of the application from scratch is inefficient.
  • Embodiments disclosed herein significantly overcome such deficiencies and provide a system that includes a computer system executing an application creating process that transforms a use case into an application.
  • the term use case may include, but is not limited to fully dressed use cases, extended use cases (i.e., a fully dressed use case with additional information included), etc.
  • the application creating process obtains a requirement for the application.
  • a use case is defined for the requirement.
  • the use case defines at least one interaction, as a use case, associated with the application, for example, a user/actor interacting with the application.
  • the use case is processed through a code generating engine that generates an interactive component of the application that satisfies the requirement.
  • the interactive component is then implemented into the application.
  • data objects that interface with the application are created, and implemented.
  • a data object may be a database query that interacts with a database providing data during operation of the application.
  • the use case defines the user experience with the application. Often a use case defines a user as an actor having a role in the interaction with the application. In an example embodiment, the use case can also specify restrictions that limit the role of an actor within the interaction.
  • defects are significantly reduced, and the time required to develop the application is significantly reduced. The majority of defects stem from inconsistencies between how a client wanted the application to perform (as detailed in the use cases defining the interaction between an actor and the application), and how an engineer coding the application interpreted the requirement specified by the client.
  • Embodiments disclosed herein provide an application creating process that allows engineers to expand upon the use case to create the interactive component of the application (that satisfies the requirement) rather than using the use case as a specification while coding the interactive component from scratch.
  • enhancements to the application are quickly, and easily accomplished by modifying the use case.
  • the modified use case is processed through the code generating engine to create the updated interactive component that satisfies the requirement specified by the enhancement.
  • the application is a web application
  • the use case is processed through the code generating engine to create an extensible Markup (XML) file, for example, an XML datastream, along with an extensible Stylesheet Language Transform (XSLT) that transforms the XML to an HyperText Markup Language (HTML) web page.
  • XML extensible Markup
  • the code generating engine determines, from the use case, what data to display on the web page, and what data is required as input from an actor (interacting with the application).
  • the engine creates an XML datastream that defines the data to display, and the data to be received from the actor.
  • the XML datastream is processed through the code generating engine to create a web page.
  • a client can interact with a fully functional version of the application. Any modification and/or enhancements are easily incorporated into the application by modifying the use case and processing the modified use case through the code generating engine as explained above.
  • the application creating process obtains at least one requirement for the application.
  • the application creating process defines at least one interaction, as a use case, associated with the application that satisfies at least one requirement.
  • the application creating process then creates at least one file, for example, a use case file, associated with at least one interaction, and processes at least one file with a code-generating engine to automatically generate at least one interactive component of the application.
  • inventions disclosed herein include any type of computerized device, workstation, handheld or laptop computer, or the like configured with software and/or circuitry (e.g., a processor) to process any or all of the method operations disclosed herein.
  • a computerized device such as a computer or a data communications device or :anyitype of processor that is programmed or configured to operate as explained herein is considered an embodiment disclosed herein.
  • One such embodiment comprises a computer program product that has a computer-readable medium including computer program logic encoded thereon that, when performed in a computerized device having a coupling of a memory and a processor, programs the processor to perform the operations disclosed herein.
  • Such arrangements are typically provided as software, code and/or other data (e.g., data structures) arranged or encoded on a computer readable medium such as an optical medium (e.g., CD-ROM), floppy or hard disk or other a medium such as firmware or microcode in one or more ROM or RAM or PROM chips or as an Application Specific Integrated Circuit (ASIC).
  • a computer readable medium such as an optical medium (e.g., CD-ROM), floppy or hard disk or other a medium such as firmware or microcode in one or more ROM or RAM or PROM chips or as an Application Specific Integrated Circuit (ASIC).
  • ASIC Application Specific Integrated Circuit
  • the software or firmware or other such configurations can be installed onto a computerized device to cause the computerized device to perform the techniques explained herein as embodiments disclosed herein. It is to be understood that the system disclosed herein may be embodied strictly as a software program, as software and hardware, or as hardware alone. The features disclosed herein may be employed in data communications devices and other computerized devices and software systems for such devices such as those manufactured by Sorriso Technologies, Inc., of Acton Massachusetts, USA.
  • Figure 1 is a block diagram according to one embodiment disclosed herein.
  • Figure 2 shows a high-level block diagram of a computer system according to one embodiment disclosed herein.
  • Figure 3 illustrates a flowchart of a procedure performed by the system of Figure 1 when the application creating process obtains at least one requirement for the application, according to one embodiment disclosed herein.
  • Figure 4 illustrates a flowchart of a procedure performed by the system of Figure 1 when the application creating process implements the application using at least one
  • Figure 5 illustrates a flowchart of a procedure performed by the system of Figure 1 when the application creating process implements the application using at least one interactive component, and receives at least one additional requirement, according to one embodiment disclosed herein.
  • Figure 6 illustrates a flowchart of a procedure performed by the system of Figure 1 when the application creating process obtains at least one requirement for the application, and provides a rules engine capable of determining at least one additional requirement based on operation of the application, according to one embodiment disclosed herein.
  • Figure 7 illustrates a flowchart of a procedure performed by the system of Figure 1 when the application creating process defines at least one interaction, as a use case, associated with the application that satisfies at least one requirement, according to one embodiment disclosed herein.
  • Figure 8 illustrates a flowchart of a procedure performed by the system of Figure 1 when the application creating process processes at least one file with a code-generating engine to automatically generate at least one interactive component of the application, according to one embodiment disclosed herein.
  • Embodiments disclosed herein include methods, software and a computer system that performs an application creating process that obtains at least one requirement for the application.
  • the application creating process defines at least one interaction, as a use case, associated with the application that satisfies at least one requirement.
  • the application creating process then creates at least one file, for example, a use case file, associated with at least one interaction, and processes at least one file with a code-generating engine to automatically generate at least one interactive component of the application.
  • FIG. 1 is a block diagram illustrating example embodiments disclosed herein.
  • the application creating process 140-2 obtains a requirement 131 for the application 135.
  • a use case is defined for the requirement 131.
  • the use case defines at least one interaction 132 associated with the application 135, for example, a user/actor interacting with the application :,135.
  • the use case is processed through a code generating engine 133 that generates a interactive component 134 of the application 135 that satisfies the requirement 131.
  • the .interactive component 134 is then implemented into the application 135.
  • Figure 2 is a block, diagram illustrating example architecture of a computer system 110 that executes, runs, interprets, operates or otherwise performs an application creating application 140-1 and application creating process 140-2 suitable for use in explaining example configurations disclosed herein.
  • the computer system 110 may be any type of computerized device such as a personal computer, workstation, portable computing device, console, laptop, network terminal or the like.
  • An input device 1 16 e.g., one or more user/developer controlled devices such as a keyboard, mouse, etc.
  • processor 113 couples to processor 113 through I/O interface 114, and enables a actor 108 to provide input commands, and generally control the graphical user interface 160 that the application creating application 140-1 and process 140-2 provides on the display 130.
  • the computer system 110 includes an interconnection mechanism 1 1 1 such as a data bus or other circuitry that couples a memory system 112, a processor 113, an input/output interface 1 14, and a communications interface 115.
  • the communications interface 115 enables the computer system 110 to communicate with other devices (i.e., other computers) on a network (not shown).
  • the graphical user interface 160 renders an application 135 that is generated as a result of processing use cases through a code generating engine creating interactive components 134 of the application 135.
  • the memory system 112 is any type of computer readable medium, and in this example, is encoded with an application creating application 140-1 as explained herein.
  • the application creating application 140-1 may be embodied as software code such as data and/or logic instructions (e.g., code stored in the memory or on another computer readable medium such as a removable disk) that supports processing functionality according to different embodiments described herein.
  • the processor 1 13 accesses the memory system 112 via the interconnect 1 11 in order to launch, run, execute, interpret or otherwise perform the logic instructions of the application creating application 140-1. Execution of the application creating application 140-1 in this manner produces processing functionality in an application creating process 140-2.
  • the application creating process 140-2 represents one or more portions or runtime instances of the application creating application 140-1 (or the entire application creating application 140- 1) performing or executing within or upon the processor 113 in the computerized device 1 10 at runtime.
  • example configurations disclosed herein include the application creating application 140-1 itself (i.e., in the form of un-executed or non-performing logic instructions and/or data).
  • the application creating application 140-1 may be stored on a computer readable medium (such as a floppy disk), hard disk, electronic, magnetic, optical, or other computer readable medium.
  • the application creating application 140-1 may also be stored in a memory system 112 such as in firmware, read only memory (ROM), or, as in this example, as executable code in, for example, Random Access Memory (RAM).
  • ROM read only memory
  • RAM Random Access Memory
  • other embodiments herein include the execution of the application creating application 140-1 in the processor 1 13 as the application creating process 140-2.
  • the computer system 1 10 may include other processes and/or software and hardware components, such as an operating system not shown in this example.
  • a display 130 need not be coupled directly to computer system 1 10.
  • the application creating application 140-1 can be executed on a remotely accessible computerized device via the network interface 115.
  • the graphical user interface 160 may be displayed locally to an actor 108 of the remote computer, and execution of the processing herein may be client-server based. Further details of configurations explained herein will now be provided with respect to a flow chart of processing steps that show the high level operations disclosed herein to perform the application creating process 140-2.
  • Figure 3 is a flowchart of the steps performed by the process 140-2 when it obtains at least one requirement 131 for the application 135.
  • the application creating process 140-2 obtains at least one requirement 131 for the application 135.
  • the lifecycle of an application 135 may include several phases including a discovery phase, elaboration phase, a build phase and a transition phase.
  • high level requirements 131 of the application 135 are specified.
  • one requirement 131 of an application 135 may be, 'Must allow customers to purchase with a credit card via a web application.
  • the requirements 131 are further defined, and the details of the requirements 131 are documented. These documented details of the requirements 131 may be used to create the use cases.
  • the application creating process 140-2 defines at least one interaction 132 associated with the application 135 that satisfies at least one requirement 131.
  • the interaction 132 is the basis of the use case that is used to generate the code for.the application 135.
  • a use case may specify interactions between an actor 108 and the application 135.
  • the use case may also specify what data is to be entered (i.e., inputted by an actor 108) into the application 135, and what is the expected response from the application 135.
  • the application creating process 140-2 creates at least one file associated with at least one interaction 132.
  • the use case is rendered as a file for future processing through the code generating engine 133.
  • the use case is documented, for example, in pseudo code, that is easy enough to be understood by a lay person (i.e., a person not familiar with the syntax of code), yet still captures the logical process underlying the use case. It is the logical process, i.e., the algorithm that is typically used by engineers to develop code.
  • the application creating process 140-2 processes at least one file with a code generating engine 133 to automatically generate at least one interactive component 134 of the application 135.
  • the application creating process 140-2 uses the actual use case (rendered as a file) that was generated as a result of the requirements 131 specified within the discovery phase.
  • the code generating engine 133 processes the file (i.e., the documented use case) to produce code that is capable of operating within the application 135.
  • the application creating process 140-2 implements the application 135 using at least one interactive component 134.
  • the application 135 is capable of functionality indicated by at least one interaction 132 (i.e., the interaction 132 specified within the use case).
  • a requirement 131 of an application 135 may be that a help menu is available to an actor 108 when the actor 108 uses the application 135. That requirement 131 is used to create a use case that is documented in a file.
  • the file is processed through the code generating engine 133 creating a help menu component 134.
  • the help menu component
  • help menu 135 have a help menu, has been satisfied.
  • a prospective client may want to add additional features to the help menu. These additional features may be added to the use case (documented as a file) and re-processed through the code generating engine 133 to create the additional features of the help menu.
  • Figure 4 is a continuation of Figure 3 and is an example flowchart of the steps performed by the process 140-2 when it implements the application 135 using at least one interactive component 134 as explained above in step 204.
  • the application creating process 140-2 creates a data object capable of interfacing with at least one interactive component 134.
  • the data object may be, but is not limited to, a database object, a Java object, etc.
  • the data object is a database object.
  • One attribute of the data object may be a Structured Query Language (SQL) query that manipulates data within a database. The attribute is then assigned to the data object.
  • SQL Structured Query Language
  • the application creating process 140-2 implements the data object within the application 135.
  • the data object is interfaced with the application 135.
  • the data object can be added or removed from the application 135.
  • the SQL query is an attribute of the data object
  • the SQL query can modified without modifying the application 135 within which the data object is implemented.
  • the data provided by the SQL query may be modified simply by modifying the SQL query (without requiring additional coding of the application 135).
  • the application creating process 140-2 renders the application 135 as a web based application, for example, within a web browser.
  • the application 135 may be rendered as a web application, but is not limited to web applications.
  • the application 135 may be rendered as a variety of applications 135 operational on different platforms.
  • Figure is 5 a flowchart of the steps performed by the process 140-2 when it implements the application 135 using at least one interactive component 134.
  • the application creating process 140-2 implements the application 135 - using at least one interactive component 134.
  • the application 135 is capable of functionality indicated by at least one interaction 132 (i.e., the interaction 132 specified by the use case).
  • the application creating process 140-2 receives at least one additional requirement 131 including at least one of: i) at least one new requirement 131, and ii) at least one modification to the at least one requirement 131.
  • one of the steps in creating an application 135 is to create a mock up of the actual application 135.
  • the mock up demonstrates the 'look and feel' of the application 135.
  • a mock up usually just provides an example of what the end user will see when interacting with the application 135.
  • a mock up generally does not have back end functionality attached that allows a prospective end user to actually interact with the application 135.
  • the application creating process 140-2 significantly reduces the amount of time required to develop an application 135, and provides a mock up that includes the functionality of the application 135.
  • the mock up is a working embodiment of the application without the backend completed.
  • the same use case that will be executed in the production application is used during elaboration as the mock up. This eliminates the problem of engineers misinterpreting requirements that are defined by, for example, business analysts.
  • a prospective client i.e., typically the provider of the requirements 131
  • a prospective client is able to undergo the same user experience that the end user will have when interacting with the application 135.
  • new requirements 131 are requested, or existing requirements 131 are modified.
  • a prospective client that requires an application 135 may have an idea of what the application 135 should do, but might not be aware of the extent to which existing technology can enhance the end user experience.
  • a prospective client is exposed to various ways in which existing technology can be incorporated into the application 135 to increase the functionality of the application 135, and improve the end user experience.
  • the application creating process 140-2 performs the steps of defining, creating, processing, and implementing based on the at least one additional requirement 131.
  • Providing a functional mock up of the application 135 ensures the engineers (creating the application 135) and the prospective client (who provided the requirements 131 for the application 135) that the development of the application 135 meets the requirements 131 of the prospective client.
  • providing a functional mock up of the application 135 can also lead to 'scope creep' where a prospective client begins to add new requirements 131 or modify existing requirements 131 that wasn't documented in the earlier discovery stage of the development of the application 135.
  • additional requirements 131 may be simple to resolve or may require additional intensive re-architecture of the application 135.
  • the application creating process 140-2 provides an efficient technique by which new requirements 131 or modifications to existing requirements 131 are incorporated into the application 135 through the steps of defining, creating, processing, and implementing.
  • the interaction 132 i.e., the use cases
  • the interaction 132 are modified per the new requirements 131 (or modifications to existing requirements 131), and then processed once again through the code generating engine 133 to create a modified/updated interactive component 134 of the application 135.
  • the modified/updated interactive component 134 is then implemented in the application 135.
  • the application creating process 140-2 extends at least one interaction 132 associated with the application 135 that satisfies at least one requirement 131.
  • a new requirement 131 is defined or an existing requirement 131 is modified.
  • An engineer extends an existing interaction 132 (i.e., use case) to incorporate the new or modified requirement 131.
  • a requirement 131 of an application 135 may specify that an actor 108 is able to make a purchase on a web site (i.e., an application 135) using a credit card.
  • a prospective client may modify that requirement 131 to include that the actor 108 may use a credit card on the web site (i.e., the application 135), and is also able to receive credit card approval, real time, during the transaction.
  • the application creating process 140-2 modifies at least one file associated with the at least one interaction 132 based on an extension of at least one interaction 132.
  • a requirement 131 has been modified to include not only an ability to make a purchase using a credit card, but also real time notification of credit card approval.
  • an engineer modifies a file associated with the interaction 132 (i.e., use case). The file is then processed with the code generating engine 133 to create the modified interactive component 134 of the application 135 that provides the functionality of not only making a purchase using a credit care on a web site, but also provides real time credit card approval during the transaction.
  • Figure 6 is a flowchart of the steps performed by the process 140-2 when it obtains at least one requirement 131 for the application 135.
  • the application creating process 140-2 obtains at least one requirement
  • the interaction 132 is the basis of the use case that is used to generate the code for the application 135.
  • the use case is rendered as a file that is processed through the code generating engine 133.
  • the requirement 131 may be a feedback loop that examines data provided during the operation of the application 135 to create new requirements 131.
  • the application creating process 140-2 provides a rules engine capable of determining at least one additional requirement 131 based on operation of the application 135.
  • the rules engine creates rules based on data obtained by the application 135 during operation of the application 135.
  • an application 135 may provide billing information for a phone service provider.
  • the rules engine may determine that there exist various communities within users of the phone service.
  • the rules engine may provide different incentives to users within the different communities based on ways in which those users can take better advantage of the service provided by the phone service provider.
  • the rules engine determines a requirement 131 based on the operation of the application 135.
  • the application creating process 140-2 creates an alert based on at least one additional requirement 131 determined by the rules engine.
  • a rules engine examines data that results during operation of the application 135.
  • the rules engine for example, examines phone usage data of a phone service provider.
  • the rules engine determines that there are users of the phone service that are making substantial amounts of international phone calls, for whom a different phone plan may result in lower bills for international phone calls.
  • the rules engine determines an additional requirement 131 (i.e., that users of the phone service may benefit by switching to a different phone plan offered by the phone service provider) based on this information.
  • the rules engine then creates an alert based on this new requirement 131.
  • the application creating process 140-2 transmits the alert to an actor 108 interacting with the application 135.
  • the application creating process 140-2 transmits an alert to a user of the phone plan, notifying the user that a different phone plan offered by the phone service provider may result in lower phone bills for international phone calls.
  • the rules engine may determine a requirement 131 that users of the phone service should be notified when their phone bills exceed a predefined threshold. The application creating process 140-2 creates an alert based on this new requirement 131, and transmits the alert to a user of the phone service when that user's phone bill surpasses the predefined threshold.
  • Figure 7 is a flowchart of the steps performed by the process 140-2 when it defines at least one interaction 132 associated with the application 135 that satisfies at least one requirement 131.
  • the application creating process 140-2 defines at least one interaction 132 associated with the application 135 that satisfies at least one requirement 131.
  • the interaction 132 is the basis of the use case that is used to generate the code for the application 135.
  • a use case may specify an interaction between an actor 108 and the application 135.
  • the use case may also specify what data is to be inputted into the application 135, and what is the expected response from the application 135.
  • the application creating process 140-2 creates a use case that captures at least one functionality required of the application 135.
  • the interaction 132 that satisfies a requirement 131
  • associated with the application 135 is captured as a use case, and rendered within a file.
  • the use case details a sequence of events that should occur during operation of the application 135 that satisfies the requirement 131.
  • the application creating process 140-2 identifies at least one actor 108 involved in at least one interaction 132.
  • the use cases include an actor 108 (i.e., a user interacting with the application 135).
  • the use case may specify a role the actor has during an interaction the actor 108 has with the application 135.
  • the use case may detail the use experience the actor 108 should experience during an interaction 132 with the application 135.
  • the application creating process 140-2 identifies at least one policy authorizing at least one actor 108 to have access to at least one functionality required of the application 135.
  • creation of the use case may also involve specifying different access rights (to the application 135) that different actors 108 may have when interacting with the application 135.
  • a customer making a purchase from a web site may have different access rights to the web site than a customer who has paid a premium for a subscription to the web site allowing that user increased access to different web pages within the web site.
  • the application creating process 140-2 provides access to the actor 108 based on a role the actor 108 fulfills within at least one interaction 132.
  • the application creating process 140-2 associates policies (that authorize access) with roles.
  • the roles are assigned to different actors 108 within the use cases created to satisfy the requirements 131 of the application 135.
  • the actors 108 are granted access to components 134 of the application 135 based on their roles within the interaction 132 (i.e., the use case).
  • Figure 8 is a flowchart of the steps performed by the process 140-2 when it processes at least one file with a code generating engine 133 to automatically generate at least one interactive component 134 of the application 135.
  • the application creating process 140-2 processes at least one file with a code generating engine 133 to automatically generate at least one interactive component 134 of the application 135.
  • the application creating process 140-2 uses the use case (rendered as a file) that was generated as a result of the requirements 131 specified during the discovery phase.
  • the code generating engine 133 processes the file (i.e., the documented use case) to produce code that is capable of operating within the application 135.
  • the application creating process 140-2 determines, from at least one file associated with at least one interaction 132, a category of data associated with at least one interaction 132.
  • the category includes at least one of: i) data to display to at least one actor 108, ii) data to retrieve from at least one actor 108.
  • a file is created from the interaction 132 (i.e., the use case).
  • the code generating engine 133 determines what data in the file is to be displayed within the application 135, and what data is needed from an actor 108 interacting with the application 135.
  • the application creating process 140-2 provides a graphical user interface 160 capable of rendering the category data associated with at least one interaction 132.
  • the application 135 is a web based application
  • the application creating process 140-2 provides a graphical user interface 160 to be rendered within a browser.
  • the application creating process 140-2 creates at least one extensible Markup Language (XML) file, for example, an XML datastream defining the category data associated with at least one interaction 132.
  • the code generating engine 133 creates an XML datastream that defines the data to display to an actor 108, and the data to retrieve from the actor 108 during an interaction between the actor 108 and the application 135.
  • the application creating process 140-2 generates at least one web page from at least one extensible Markup Language (XML) file, for example, an XML datastream.
  • the web page renders the category data associated with at least one interaction 132.
  • the code generating engine 133 processes the XML datastream along with an extensible Stylesheet Language Transform (XSLT) that transforms the XML to a HyperText Markup Language (HTML) web page.
  • XSLT extensible Stylesheet Language Transform
  • HTML HyperText Markup Language
  • the web page contains the data to display to an actor 108.
  • the web page also contains form fields in which to retrieve data from the actor during an interaction between the actor 108 and the application 135.

Abstract

L'invention concerne un système qui répond à au moins une exigence pour l'application. Le système définit au moins une interaction, comme un cas d'usage, associée avec l'application qui satisfait à au moins une exigence. Le système crée au moins un fichier associé à au moins une interaction, et traite au moins un fichier à l'aide d'un générateur de code pour engendrer automatiquement au moins un composant interactif de l'application.
EP07795954A 2006-06-09 2007-06-08 Methodes et appareillage pour creer un site web a partir d'un cas d'usage Withdrawn EP2033087A4 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US81270106P 2006-06-09 2006-06-09
PCT/US2007/013646 WO2007146204A2 (fr) 2006-06-09 2007-06-08 Méthodes et appareillage pour créer un site Web à partir d'un cas d'usage

Publications (2)

Publication Number Publication Date
EP2033087A2 EP2033087A2 (fr) 2009-03-11
EP2033087A4 true EP2033087A4 (fr) 2009-05-27

Family

ID=38832446

Family Applications (2)

Application Number Title Priority Date Filing Date
EP07795954A Withdrawn EP2033087A4 (fr) 2006-06-09 2007-06-08 Methodes et appareillage pour creer un site web a partir d'un cas d'usage
EP07835795A Withdrawn EP2074526A4 (fr) 2006-06-09 2007-06-08 Procédé et appareil de génération de fichier exécutable à partir d'un cas d'utilisation

Family Applications After (1)

Application Number Title Priority Date Filing Date
EP07835795A Withdrawn EP2074526A4 (fr) 2006-06-09 2007-06-08 Procédé et appareil de génération de fichier exécutable à partir d'un cas d'utilisation

Country Status (2)

Country Link
EP (2) EP2033087A4 (fr)
WO (2) WO2007146204A2 (fr)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10423592B2 (en) 2014-06-20 2019-09-24 International Business Machines Corporation Auto-generation of migrated use cases
CN111290818B (zh) * 2020-01-23 2023-07-25 网易传媒科技(北京)有限公司 创建应用程序的操作方法及应用程序的操作方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6262729B1 (en) * 1997-04-14 2001-07-17 Apple Computer, Inc. Method and apparatus for binding user interface objects to application objects
US20020078103A1 (en) * 2000-12-20 2002-06-20 Gorman William Phillip Wizard development kit

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
No further relevant documents disclosed *

Also Published As

Publication number Publication date
WO2007146204A3 (fr) 2009-01-08
WO2008005152A3 (fr) 2008-09-04
EP2033087A2 (fr) 2009-03-11
WO2008005152A2 (fr) 2008-01-10
WO2007146204A2 (fr) 2007-12-21
EP2074526A2 (fr) 2009-07-01
EP2074526A4 (fr) 2009-10-28

Similar Documents

Publication Publication Date Title
US8561017B2 (en) Methods and apparatus for generating a web site based on a use case
US6085120A (en) Data system processing and method for creating application extension
Linaje et al. Engineering rich internet application user interfaces over legacy web models
JP5599400B2 (ja) 画像センサベースのヒューマンマシンインタフェースを提供する方法システムおよびソフトウェア
KR101635237B1 (ko) 리소스 지향 프로그램을 시각적으로 모델링, 디버깅 및 실행하는 대화형 디자인 환경
Paterno et al. Authoring pervasive multimodal user interfaces
AU2002228506A1 (en) Data transfer and/or transformation system and method
AU4325001A (en) Using one device to configure and emulate web site content to be displayed on another device
EP1779238A1 (fr) Controleur-visualiseur d'application graphique de traitement d'objet
AU2005200847B2 (en) System and method for interactive wireless applications with conditional UI controls and screen navigation
JP2011100447A (ja) メタモデルベースツールにおけるエンティティ変形
Spriestersbach et al. Quality attributes in mobile web application development
Simon et al. Tool-supported single authoring for device independence and multimodality
EP2033087A2 (fr) Methodes et appareillage pour creer un site web a partir d'un cas d'usage
Paternò et al. Model-based design of multi-device interactive applications based on web services
Valverde et al. Applying Interaction Patterns: Towards a Model-Driven Approach for Rich Internet Applications Development.
Lutteroth Automated reverse engineering of hard-coded GUI layouts
Cuenca et al. A domain-specific textual language for rapid prototyping of multimodal interactive systems
US20180004802A1 (en) User interface for searching referenced information
JP3294691B2 (ja) オブジェクト指向システム構築方法
Shaikh et al. Comprehensive understanding of intelligent user interfaces
Crowle et al. ISML: an interface specification meta-language
US7827504B2 (en) Methods and apparatus for generating an executable file from a use case
Hilliges et al. Interactive prototyping for ubiquitous augmented reality user interfaces
El-Ramly et al. Legacy systems interaction reengineering

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC MT NL PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA HR MK RS

A4 Supplementary search report drawn up and despatched

Effective date: 20090429

17P Request for examination filed

Effective date: 20090708

RBV Designated contracting states (corrected)

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC MT NL PL PT RO SE SI SK TR

17Q First examination report despatched

Effective date: 20090826

DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20140812