WO2001075593A2 - Automatic software production system - Google Patents
Automatic software production system Download PDFInfo
- Publication number
- WO2001075593A2 WO2001075593A2 PCT/US2001/006790 US0106790W WO0175593A2 WO 2001075593 A2 WO2001075593 A2 WO 2001075593A2 US 0106790 W US0106790 W US 0106790W WO 0175593 A2 WO0175593 A2 WO 0175593A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- software application
- formal
- requirements
- class
- formal specification
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/35—Creation or generation of source code model driven
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/73—Program documentation
Definitions
- the present invention relates to computer systems and more particularly to an automatic software production system and methodology suitable for stand-alone systems and on the Internet.
- OMTROLL has a CASE support called TrollWorkbench, which provides a prototyping function by generating an independently executable prototype from a graphical conceptual specification.
- the prototype generated is a C++ program that includes the static/dynamic aspects of the system and uses an Ingress database as a repository ofthe specification.
- OBLOG is another object-oriented approach for software development that falls within the scope of the European ESPRIT project IS-CORE (Information Systems- Correctness and Reusability).
- the OBLOG semantics is formalized in the context ofthe 56470-011 Patent
- OSA Analysis model
- the aim of OSA is to develop a method that enables system designers to work with different levels of formalism, ranging from informal to mathematically rigorous. In this context, this kind of tunable formalism encourages both theoreticians and practitioners to work with the same model allowing them to explore the difficulties encountered in making model and languages equivalent and resolve these difficulties in the context of OSA for a particular language.
- OSA also has a CASE support tool called IPOST, which can generate a prototype from an OSA model to validate the requirements.
- SOFL Structured-Object-based- Formal Language
- SOFL facilitates the transformation from requirements specifications in a structured style to a design in an object-based style and facilitates the transformation from designs to programs in the appropriate style.
- VDM Vehicle-based Development Method
- the SOFL proposal attempts to overcome the fact that formal methods have not been largely used in industry, by finding mechanisms to link object-oriented methodology and structured techniques with formal methods, e.g. VDM (Vienna Development Method) style semantics for its specification modules. Combining structured and objected-oriented techniques in a single method, however, makes it difficult to clarify the method semantics; thus, effective tool support is necessary for checking consistency.
- TRADE Toolkit for Requirements and Design Engineering
- TCM Toolkit for Conceptual Modeling
- this aspect of the invention stems from the realization that a major source of inadequacy of conventional prototyping techniques is that these techniques lack the capability to specify the user interface aspects. Thus, such conventional prototypes have primitive user interfaces that are unacceptable for final, customer-ready software application. Accordingly, this aspect of the invention relates to an automated software production tool, software, and methodology that include a formal specification of a Conceptual Model that specifies requirements for a software application.
- the Conceptual Model includes a Presentation Model that specifies patterns for a user interface of the software application.
- the formal specification which also specifies the Presentation Model, is validated; and the software application is then generated based on the validated formal specification.
- the generated software application includes instructions for handling the user interface in accordance with the patterns specified in the Presentation Model.
- the code generated for the software application is very well suited for deployment on the Internet because the code supports high-volume, transactional, scalable, and reliable system logic functions, and the Presentation Model enables creative designers not to be concerned about details of coding the user interface.
- FIG. 1 depicts a computer system that can be used to implement an embodiment ofthe present invention.
- FIG. 2 is a schematic block diagram illustrating the high-level architecture and data flows of an automatic software production system in accordance with one embodiment ofthe present invention.
- FIG. 3 illustrates an example of an object model for a library system with readers, books, and loans.
- FIG. 4A illustrates an exemplary state transition diagram in accordance with one embodiment ofthe present invention.
- FIG. 4B illustrates an exemplary object interaction diagram in accordance with one embodiment of the present invention.
- FIG. 5 illustrates an exemplary dialog for receiving input for the functional model.
- FIG. 6 is a flow diagram illustrating the high level view of the operation of translating a formal specification into a full application by following what it is referred to as an " Execution Model” .”
- FIG. 1 is a block diagram that illustrates a computer system 100 upon which an embodiment ofthe invention may be implemented.
- Computer system 100 includes a bus
- Computer system 100 also includes a main memory 106, such as a random access memory (RAM) or other dynamic storage device, coupled to bus 102 for storing information and instructions to be executed by processor 104. Main memory 106 also may be used for storing temporary variables or other intermediate information during execution of instructions to be executed by processor 104.
- Computer system 100 further includes a read only memory (ROM) 108 or other static storage device coupled to bus 102 for storing static information and instructions for processor 104.
- ROM read only memory
- a storage device 110 such as a magnetic disk or optical disk, is provided and coupled to bus 102 for storing information and instructions.
- Computer system 100 may be coupled via bus 102 to a display 112, such as a cathode ray tube (CRT), for displaying information to a computer user.
- a display 112 such as a cathode ray tube (CRT)
- An input device 114 is coupled to bus 102 for communicating information and command selections to processor 104.
- cursor control 116 is Another type of user input device
- cursor control 116 such as a mouse, a trackball, or cursor direction keys for communicating direction information and command selections to processor 104 and for controlling cursor movement on display 112.
- This input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allows the device to specify positions in a plane.
- the invention is related to the use of computer system 100 for automatic software production.
- automatic software production is provided by computer system 100 in response to processor 104 executing one or more sequences of one or more instructions contained in main memory 106.
- processor 104 executing one or more sequences of one or more instructions contained in main memory 106.
- Computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLASH- EPROM, any other memory chip or cartridge, a carrier wave as described hereinafter, or any other medium from which a computer can read.
- Bus 102 can carries the data to main memory 106, from which processor 104 retrieves and executes the instructions.
- the instructions received by main memory 106 may optionally be stored on storage device 110 either before or after execution by processor 104.
- Network link 120 typically provides data communication through one or more networks to other data devices.
- network link 120 may provide a connection through local network 122 to a host computer 124 or to data equipment operated by an Internet Service Provider (ISP) 126.
- ISP 126 in turn provides data communication services through the worldwide packet data communication network, now commonly referred to as the "Internet” 128.
- Internet 128 uses electrical, electromagnetic or optical signals that carry digital data streams.
- the signals through the various networks and the signals on network link 120 and through communication interface 118, which carry the digital data to and from computer system 100, are exemplary forms of carrier waves transporting the information.
- Computer system 100 can send messages and receive data, including program code, through the network(s), network link 120, and communication interface 118.
- a server 130 might transmit a requested code for an application program through Internet 128, ISP 126, local network 122 and communication interface 118.
- one such downloaded application provides for automatic software production as described herein.
- the received code may be executed by processor 104 as it is received, and/or stored in storage device 110, or other nonvolatile storage for later execution. In this manner, computer system 100 may obtain application code in the form of a carrier wave.
- requirements 200 specifying a Conceptual Model for the application are gathered using diagrams and textual interactive dialogs presented by the CASE tool 210.
- the CASE tool 210 employs object- oriented modeling techniques to avoid the complexity typically associated with the use of 56470-011 Patent
- one implementation also employs a document generator 238 to automatically generate serviceable system documentation from the information introduced in the Conceptual Model. 56470-011 Patent
- the CASE tool 210 enforces the restriction that only the information relevant for filling a class definition in the formal specification language can be introduced.
- the use of a formal specification, input by means of the CASE tool 210 therefore provides the environment to validate and verify the system in the solution space, thereby obtaining a software product that is functionally equivalent to the specification as explained hereinafter. Nevertheless this is always done preserving this external view, which is compliant with the most extended modeling techniques, as stated before. In this way, the arid formalism characteristic of many conventional approaches is hidden from the designer, who is made to feel comfortable using a graphical modeling notation.
- conceptual modeling in one embodiment employs diagrams that are compliant with the Unified Modeling Language (UML); thus, system designers need not learn another graphical notation in order to model an information system.
- UML Unified Modeling Language
- the Conceptual Model is subdivided into an object model, a dynamic model, and a functional model.
- Each attribute can have the following characteristics: name, formal data type (e.g. constant, variable, derived), data type (real, string%), default value, whether the attribute is an identifier for distinguishing the objects of the class, length, whether the attribute is required when the object is created, whether the attribute can be assigned a NULL value, and a field to introduce some remarks about why the attribute has been created.
- Each attribute can also include information about valuations, which are formulas that declare how the object's state is changed by means of events. Valuation formulas are structured in the following parts: a condition (that must be satisfied to apply the effect), an event and an effect of the event to the particular attribute.
- An attribute may also include user interface patterns belonging to the Presentation Model to be applied in the corresponding services arguments related to the attribute.
- Events can be of three 56470-011 Patent
- Events can also be shared by several classes of the project. Shared events belong to all classes sharing them. Transactions have a formula that expresses the composition of services. In addition to this information, services store a list of arguments whose characteristics are: name, data type, whether nulls are allowed as a valid value, whether the argument represents a set of objects (collection), default value, alias and remarks. Additionally, for each argument, user-interface patterns related to arguments are: introduction pattern, population selection pattern, defined selection pattern and dependency pattern. The class can also store information about derivations, and constraints. Each derivation specifies a list of pairs condition-formula, specifying which formula will be applied under every condition. Each constraint is a well formed formula plus the error message that will be displayed when the constraint was violated. For the dynamic constraints, the formula will be internally translated into a graph which constitutes the guide for its evaluation.
- Each state transition is related to an action (service plus list of possible agents) that can change the state of the object.
- Actions may have preconditions and the corresponding error message (to be displayed if the precondition does not hold).
- Preconditions are formulas that need to be satisfied in order to execute the corresponding action. In case of non-deterministic transitions, determinism is achieved by 56470-011 Patent
- a control condition is a formula that specifies which state transition will take effect.
- a class can store a list of interfaces. Each interface stores the list of services that an actor can execute (agents) and the list of attributes that can be observed.
- the model also maintains information on relationships between classes, which can be of two types: aggregation ("has a” or "part of) and inheritance (“is a").
- Each aggregation relationship indicates composition of objects and captures the information about cardinalities (numbers of minimum and maximum participants in the aggregation relationship, whether the aggregation is static or dynamic, whether the aggregation is inclusive or referential, whether the aggregation has an identification dependence, and a grouping clause when the aggregation is multi-valued.
- Each inheritance relationship indicates specialization of objects and stores the name ofthe parent class, the name ofthe child class and whether the specialization is temporary or permanent. Finally, if the specialization is permanent it stores a well-formed formula on constant attributes as specialization condition. If the specialization is temporary it stores either condition or the list of events that activate/deactivate the child role.
- the project can also capture a list of global transactions in which the relevant characteristics to be stored include the name of the global interaction, the formula, and the list of arguments.
- a list of global functions can also be captured, in which each function stores a name, a data type of the returned value, a set of arguments (similar to services), and comments about the function.
- a project may have a set of views, wich constitute the particular vision that a set of selected agent classes has ofthe system. That is, the set of formal interfaces (attributes and services) allowed per agent class. Each agent class has a list of interfaces. 56470-011 Patent
- the object model is a graphical model that allows the system designer to specify the entities employed in the application in an object-oriented manner, in particular, by defining classes for the entities.
- the class definitions include, for example, attributes, services and class relationships (aggregation and inheritance). Additionally, agent relationships are specified to state that services that objects of a class are allowed to activate.
- Another class is a librarian class 330, whose name 332 is specified by an attribute and whose creation is done by a new_librarian service 334.
- Each reader belonging to the library is described with the reader class 340, whose attributes include the age 342, the number of books 344 checked out by the reader, and the name 346 of the reader. Readers may be created with a new_reader service 348.
- An unreliable reader class 350 is also part of the object model to indicate for those readers 340 who cannot be trusted (e.g. due to unpaid fees for overdue books). An unreliable reader 350 may be forgiven 352 by a librarian 330.
- inheritance relationships are represented by using arrows to link classes.
- the unreliable reader class 350 is connected to the reader 56470-011 Patent
- Aggregation relationships are represented in the object model 300 by using a line with a diamond from a given component class to its composite class with the diamond on the composite side.
- the aggregation determines how many components can be attached to a given container and how many containers a component class can be associated with.
- a book 320 and a reader 340 are aggregated in a loan 310, because a loan 310 involves lending a book 320 to a reader 340 ofthe library.
- the representation of aggregation also includes its cardinalities in both directions (i.e. minimum and maximum numbers), role names, and relationship name.
- the cardinality ofthe loa book relationship from loan to book is 1:1 because exactly one book is the subject of exactly one loan in this Conceptual Model, and from book to loan is 0: 1 because a book may or may not be lent at any moment.”
- agent relationships are represented by dotted lines that connect the associated client class and services of the server class.
- a librarian 330 is an agent of a forgive service 352 ofthe unreliable reader class 350; thus, there is a dotted line between the forgive service 352 and the librarian class 330. This means that a librarian can forgive unreliable readers.
- readers 340 are agents of the loan book 316 and return book 318 services.
- loan_book event is a shared event due to 56470-011 Patent
- a shared event affects more than object, in which each object may change its state in accordance with its local specification.
- the loan_book event causes the state ofthe book 320 to be changed to "not available", the number of books ofthe reader 340 to be incremented, and create an instance of the loan class 310, aggregations of the book 320 and the reader 340. Since the loan_book event creates an instance of loan class 310, it is a " new" event for that aggregated class.
- Some applications may require a large number of classes to fully specify.
- classes may be gathered into clusters.
- Clusters make it easier for the designer or system analyst to understand the application, one cluster at a time. Thus, clusters help reduce the complexity ofthe view ofthe object model.
- the system class architecture is specified with the object model. Additional features, however, such as which object life cycles can be considered valid, and which inter-object communication can be established, also have to be input in the system specification. For this purpose, a dynamic model is provided.
- the state transition diagram (STD) is used to describe correct behavior by establishing valid object life cycles for every class.
- a valid life refers to an appropriate sequence of states that characterizes the correct behavior of the objects that belong to a specific class. Transitions represent valid changes of state.
- a transition has an action and, optionally, a control condition or guard.
- An action is composed of a service plus a subset of its valid agents defined in the Object Model. If all the agents are selected, the transition is labeled with an asterisk (*).
- Control conditions are well formed formulas defined on object attributes and/or service arguments to avoid the possible non-determinism for a given action. Actions might have one precondition that must be satisfied in order to accept its execution.
- a circle with an imbedded circle represents the state previous to existence of the object. Transitions that have this state as source must be composed of 56470-011 Patent
- FIG. 4A illustrates an exemplary state transition diagram 400 in accordance with one embodiment of the present invention. States are depicted in the exemplary state transition diagram 400 by means of a circle labeled with the state name. Referring to FIG.
- the "bookO" state 404 is indicated by a circle with the name "bookO.”
- a blank circle 402 is used to represent this "state" of nonexistence, which is the source of the initial transition 410 labeled by a corresponding creation action.
- a bull's eye 406 is used to represent the state after which an object has been destroyed, as by a transition 416 occasioned by the [*] : destroy_book action.
- the object interaction diagram specifies inter-object communication. Two basic interactions are defined: triggers, which are object services that are automatically activated when a pre-specified condition is satisfied, and global transactions, which are themselves services involving services of different objects and or other global 56470-011 Patent
- boxes labeled with an underlined name represent class objects.
- Trigger specifications follow this syntax: destination: :action if trigger-condition.
- the first component of the trigger is the destination, i.e., the object(s) to which the triggered service is addressed.
- the trigger destination can be the same object where the condition is satisfied (i.e. self), a specific object, or an entire class population if broadcasting the service.
- the triggered service and its corresponding triggering relationship are declared.
- Global Transactions are graphically specified by connecting the actions involved in the declared interaction. These actions are represented as solid lines linking the objects (boxes) that provide them.
- FIG. 4B illustrates an exemplary object interaction diagram 420 in accordance with one embodiment ofthe present invention.
- One embodiment of the present invention employs a functional model that is quite different with respect to these conventional approaches.
- this functional model the semantics associated with any change of an object state is captured as a consequence of an event occurrence. To do this, the following information is declaratively specified: how every event changes the object state depending on the arguments ofthe involved event, and the object's current state. This is called "valuation.”
- the functional model employs the concept of the categorization of valuations.
- Three types of valuations are defined: push-pop, state-independent and discrete-domain based. Each type fixes the pattern of information required to define its functionality.
- Push-pop valuations are those whose relevant events increase or decrease the value ofthe attribute by a given quantity, or reset the attribute to a certain value.
- State-independent valuations give a new value to the attribute involved independently ofthe previous attribute's value.
- Discrete-domain valuations give a value to the attributes from a limited domain based on the attribute's previous value. The different values of this domain model the valid situations that are possible for the attribute. . 56470-011 Patent
- TABLE 2 shows a functional model for a "book number" attribute 344 of the reader class 340, in a Conceptual Model representing a typical library.
- valuations are categorized as a push-pop because their relevant events increase or decrease the value ofthe bookj ⁇ umber attribute 344 by a given quantity (1).
- its related event loanQ has the increasing effect and returnQ has the decreasing effect.
- the functional model is responsible for capturing the semantics of every change of state for the attributes of a class. It has no graphical diagram. Textual information is collected through an interactive dialog that fills the corresponding part of the Information Structures explained before.
- FIG. 5 illustrates an exemplary dialog for receiving input for the functional model.
- a Service Presentation Pattern captures how a service will request data to the final user. This patterns controls the filling out of service arguments and contains actions to launch the service or to exit, performing no action. It is based on other lower level patterns that refer to more specific interface tasks such as an introduction pattern, defined selection pattem, population selection pattern, dependency pattern, status recovery pattern, supplementary information pattern, and argument grouping presentation:
- the introduction pattern handles with restrictions to input data that must be provided to the system by the final user (i.e., the user who employs the final application).
- edit-masks and range-values are introduced, constraining the values that can validly be input in the interface. In this manner, the user-entry errors are reduced.
- This pattern can be applied to arguments in services or to attributes in classes to improve data input process through validating input arguments.
- the defined selection pattern specifies a set of valid values for an argument.
- the designer can declare by enumeration a set containing such valid values. This pattem is similar to those that define an enumerated type and an optional default 56470-011 Patent
- this pattern could be a Combo-Box.
- This pattem can be applied to arguments in services or to attributes in classes to improve data input process.
- the population selection pattern handles the display and selection of objects inform among a multiple objects. Specifically, this pattern contains a filter, a display set, and an order criterion, which respectively determine how objects are filtered (Filter Expression), what data is displayed (Display Set), and how objects are ordered (Order Criteria).
- This pattern may be thought of as a SQL Select statement with columns, where for the filter expression and order by for the ordering clauses, and can be applied to object-valuated arguments in services whenever it is possible to select an object from a given population of existing objects.
- the dependency pattern is a set of Event-Condition-Action (ECA) rules allowing the specification of dependency rules between arguments in services.
- ECA Event-Condition-Action
- OID to search the object and recover the data associated to the Customer, such as name, telephone, address, etc.
- the supplementary information pattern handles the feedback that is provided to final users in order to assure they choose or input the correct OID
- object identified for an existent object. For example, to select a Customer, an
- the argument grouping presentation pattern captures how to group the requested service arguments according to the user wishes.
- An Instance Presentation Pattern captures how the properties of an object are presented to the final user. In this context, the user will be able to launch services or to navigate to other related objects.
- the instance presentation pattern is a detailed view of an instance.
- a Class Population Presentation Pattern captures how the properties of multiple objects of one class are presented to the final user. In this context, once an object is selected, the final user will be able to launch a service or to navigate to other related objects. The objects can also be filtered.
- a Master-Detail Presentation Pattern captures how to present a certain object of a class with other related objects that may complete the full detail ofthe object. To build this pattern the following patterns are used: instance presentation, class population presentation and, recursively, master-detail presentation. In this manner, multi-detail (multiple details) and multi-level master-detail (multiple levels recursively) can be modeled. For example, one scenario involves an invoice header followed by a set of invoice lines related to the invoice.
- An Action Selection Pattern captures how the services are offered to final users following the principle of gradual approach. This pattern allows, for example, generating menus of application using a tree structure. The final tree structure will be obtained from the set of services specified in the classes of the Conceptual Model. The user could launch services or queries (observations) defined in the Conceptual Model. 56470-011 Patent
- the CASE tool 210 after presenting a user interface for capturing system requirements 200, converts the system requirements into a formal specification 215.
- the CASE tool 210 builds upon the previously described models as a starting point and automatically generates a corresponding formal and object-oriented specification 215, which acts as a high-level system repository.
- the formal language being employed is OASIS, version 2.2 by Oscar Pastor Lopez and Isidro Ramos Salavert, published October 1995 by the "Servicio de Publicaurs de la Universidad Politecnica de Valencia" (legal deposit number: V- 1285-1995).
- Conversion of captured system requirements 200 into a formal specification 215 is a main feature of one aspect of the invention: each piece of information introduced in the conceptual modeling step has a corresponding formal counterpart, which is represented as formal language concept.
- the graphical modeling environment associated with one embodiment of the invention may be thus viewed as an advanced graphical editor for formal specifications.
- a class in OASIS is made up of a class name "reader”, an identification function for instances (objects) of the class, and a type or template that all the instances share.
- the type can be formalized as a signature, which contains sorts, functions, attributes and events to be used, a set of axioms, which are formulas in a dynamic logic, a process query as a set of equations with variables of a sort process that are solved in a given process algebra.
- a signature which contains sorts, functions, attributes and events to be used
- a set of axioms which are formulas in a dynamic logic
- a process query as a set of equations with variables of a sort process that are solved in a given process algebra.
- a class signature contains a set of sorts with a partial order relation. Among this set of sorts is the sort of interest (the class name) associated with the class being defined.
- a class signature also contains a set of functions including those functions included in the definition ofthe (predefined) sorts and the identification function whose sort is the ADT (Abstract Data Type) for identities implicitly provided with a class specification.
- the identification function provides values of a given sort to identify objects in order to assure that any object of a given class has a unique identity.
- an identification is introduced mechanism comprising a declaration of one or more key maps used as aliases for identifying objects. The key maps are similar to the candidate key notion of the relational model. From a given key value, these maps return an associated object identity. Key maps will be declared as (tuples of) constant attributes.
- a class signature also contains a set of attributes (constant, variable, and derived), see constant_attributes and variable_attributes sections in TABLE 3. These attributes all have the sort of the class as domain, and the given sort associated to the attribute being considered as co-domain.
- Each event occurrence is labeled by the agent that is allowed to activate it.
- the agent x initiates event a is written x : a and called an action; x could be the environment or any object of a system class.
- an event always is associated with an agent.
- the designer is therefore forced to state which agent will be able to activate it. Consequently, a set A of actions may be defined and obtained from and attached to the initial set of events.
- the notion of the set of object services can be represented as an interface that allows other objects to access the state.
- the object services can be events
- Actions become services requested by an object, by which the object can consult or modify states of other objects (or its own state).
- Evaluations are formulas of the form ⁇ [a] ⁇ ' whose semantics is given by defining a p function that, from a ground action a returns a function between possible worlds. In other words, being a possible world for an object any valid state, the p function determines which transitions between object states are valid after the execution of an action a.
- [loan O ] book_count book_count+l ;
- the formula ⁇ is evaluated in s e W, and ⁇ ' is evaluated in p(a), with p( ) being the world represented by the object state after the execution in s of the action considered.
- Derivations are formulas of the type ⁇ -> ⁇ '. They define derived attributes ⁇ ' in terms ofthe given derivation condition (stated in ⁇ ). Derivations basically differ from the evaluation formulas in that this derived evaluation is done in a unique state.
- Integrity constraints are formulas that must be satisfied in every world. Static and dynamic integrity constraints may be distinguished. Static integrity constraints are those defined for every possible world. They must always hold. On the other hand, dynamic integrity constraints are those that relate different worlds. They require the use of a temporal logic, with the corresponding temporal logic operators.
- triggers are actions activated when the condition stated in ⁇ holds.
- the main difference between preconditions and triggers comes from the fact that in triggers there is an obligation to activate an action as soon as the given condition is satisfied. In this way triggers allow us to introduce internal activity in the Object Society that is being modeled.
- ⁇ , ⁇ ' are well-formed formulas in a first order logic that usually refer to a given system state characterized by the set of values attached to attributes of objects in the state or world considered.
- an object is defined as an observable process.
- the process specification in a class allows us to specify object dynamics and determines the access 56470-011 Patent
- mappings will now be discussed that generate a textual system representation 215 (that is a specification in OASIS) taking as input the graphical information introduced in the Conceptual Model.
- This formal specification 215 has in fact been obtained using CASE tool 210, and constitutes a solid system documentation to obtain a final software product which is compliant with the initial requirements, as represented in the source Conceptual Model. 56470-011 Patent
- the set of conceptual patterns and their corresponding OASIS representation According to the class template introduced in the previous section, the set of conceptual patterns and their corresponding OASIS representation.
- the system classes are obtained from the object model. For each class, there are a set of constant, variable or derived attributes; a set of services, including private and shared events and local transactions; integrity constraints specified for the class; and derivation expressions corresponding to the derived attributes.
- the object model For a complex class (those defined by using the provided aggregation and inheritance class operators), the object model also provides the particular characteristics specified for the corresponding complex aggregated or specialized class.
- the information given by the object model basically specifies the system class framework, where the class signature is precisely declared.
- the dynamic model uses two kind of diagrams, the state transition diagram and the object interaction diagram.
- event preconditions which are those formulas labeling the event transitions
- process definition of a class where the template for valid object lives is fixed.
- trigger relationships and global transactions are those involving different objects.
- the functional model yields the dynamic formulas related to evaluations, where the effect of events on attributes is specified.
- the formal specification 215 corresponding to the requirements 200 provides a precise system repository where the system description is completely captured, according to the OASIS object-oriented model. This enables the implementation process (execution model) to be undertaken from a well-defined starting point, where the pieces of information involved are meaningful because they come from a finite catalogue of conceptual modeling patterns, which, furthermore, have a formal counterpart in OASIS. 56470-011 Patent
- a Conceptual Model is "complete” when there is no missing information in the requirements specification. In other words, all the required properties of the Conceptual Model are defined and have a value. A Conceptual Model is "correct" when the information introduced in the
- the validator 220 receives as input the formal specification 215 of the Conceptual Model using an Object-Oriented Formal Specification Language (such as OASIS) as high level data repository.
- OASIS Object-Oriented Formal Specification Language
- a validated OASIS specification 215 is correct and complete because the specification 215 is formally equivalent to a dynamic logic theory, using a well-defined declarative and operational semantics.
- Formal specification languages benefit from the ability of formal environments to ensure that formal specifications 215 are valid or can be checked to be valid.
- Formal languages define a grammar that rules language expressiveness.
- validation will be strict (e.g. when all his properties have to exist and must have a valid value at creation time) or flexible (e.g. validation will be accomplished at a later time). Some properties are optional, (e.g. that may not exist) but if they are defined, they must be validated.
- Agent o Agent class and service allowed to activate.
- the Conceptual Model includes formulas ofthe following types as shown in TABLE 6:
- a warning may be raised, on the other hand, if any of the following do not hold: every class should have a destroy event; every derived attribute should have at least a derivation formula; every service should have an agent declared to execute it; and every argument declared in a service should be used.
- Validation process will also be invoked every time the designer performs a change into the model that may invalidate one or more formulas. As mentioned earlier, for ease of use, certain type of formulas are allowed to be incorrect, which the designer will have to review at a later time.
- the automatic software production process in accordance with one embodiment of the present invention will not continue to code generation, if not all the formulas are correct.
- Each time the designer introduces a modification in the Conceptual Model specification, all affected formulas will be checked. As a result, the following cases may happen: 56470-011 Patent
- the validator 220 checks the following for errors: the patterns defined must be well constructed with no essential information lacking; the attributes used in filters must be visible from the definition class; the attributes used in order criteria must be visible from the definition class; the formula in a filter must be a well-formed formula using the terms defined in the model; the action selection pattern must use as final actions objects defined in the Conceptual Model; and the set of dependency patterns must be terminal and have confluence. Warnings may be generated under the following conditions: if a pattern is defined but not used (applied), or if an instance pattern is duplicated .
- the validated formal specification 215 is the source for an execution model that handles the implementation-dependent features associated with a particular machine 56470-011 Patent
- FIG. 6 is a flow diagram illustrating the high level view of the operation of translating a formal specification into a full application by following what it is referred to as "execution model".
- the process starts by logging the user into the system and identifying the user (step 600).
- An object system view is provided (step 602), determined by the set of object attributes and services that the user can see or activate. After the user is connected and has a clear object system view, the user can then activate any available service in the user's worldview. Among these services, there will be observations (object queries), local services, or transactions served by other objects.
- the service execution is characterized by the occurrence ofthe following sequence of actions in the server object.
- the state transition is checked (step 610) for verifying that a valid transition exists in the formal specification for the selected service in the current object state.
- the preconditions are checked for their satisfaction (step 612) for indicating that the precondition associated to the service must hold. If either of these actions does not hold, an exception will arise and the message is ignored.
- the integrity constraints (step 616) are verified in the final state. If the constraint does not hold, an exception will arise and the previous change of state is ignored. After a valid change of state, the set of condition- action rules that represents the internal system activity is verified. If any of them hold, the specified service will be triggered (step 618).
- the steps illustrated in FIG. 6 guide the implementation of any program to assure the functional equivalence between the object system specification collected in the Conceptual Model and its reification in an imperative programming environment.
- several translators may be used to complement the CASE tool 210 to constitute an automatic software production system.
- the translators produce an application in accordance with a three-tiered architecture suitable, for example, for Internet applications. Particularly, three different translators arise, corresponding to each tier: a system logic translator 232, a user-interface translator 234, and a database generator 236.
- a fourth translator is used, documentation generator 238.
- the system logic translator 232 automatically generates code for a third generation programming language from information in the high level repository.
- the output of the system logic translator 232 corresponds with the middle-tier in a three- tiered architecture.
- the system logic translator 232 produces source code that covers the following: (1) communications subsystem with the user interface functions, (2) 56470-011 Patent
- the communications subsystem is configured for receiving requests from a client, invoking internal methods, and returning replies to requestors, that verify the requestor's existence and authorization to perform the requested service; verify the existence and validity ofthe requested server instance; create a copy ofthe requested server instance in memory accessing the persistence layer for persistent attributes or calculating the value of derived ones ; validate state transition for the requested service as specified in the state transition diagram 400 in the Conceptual Model; verify that the requested service's preconditions hold; perform all valuations related to the requested service as specified in the functional model; verify constraints for the new state achieved by the requested server instance; check trigger conditions to execute the corresponding actions; and make changes in the requested server instance persistent.
- code is generated for access to and communication with the persistence layer, service standard queries to read persistence layer contents, and handle errors produced by the persistence layer and communications with client in one implementation for examples the generated code may include scripting to create and drop tables, constraints, and indexes to define a data model in a Relational Database System (RDBMS) in accordance with the validated spcification 215 ofthe Conceptual Model-
- RDBMS Relational Database System
- the first phase of code generation is the retrieval of information from the Conceptual Model 215 and storage of this information in code generation structures in memory.
- Three kinds of elements guide the retrieval of information: classes, global transactions, and global functions.
- Relevant information to be obtained from classes in the Conceptual Model include: name, constant attributes (name, type, requested upon creation, and initialization value formula), variable attributes (name, type, requested upon creation, initialization value formula, and null values admittance), 56470-011 Patent
- derived attributes name, type, and derivation formula
- identification function events
- events name, arguments: name and type, and precondition formula
- transactions name, type, arguments: name and type, precondition formula, and transaction formula
- valuation formulae state transitions (initial state, final state, service name, valid agents, and transition condition formula), static constraints formulae, dynamic constraints formulae, trigger conditions formulae, ancestor class (name), specialized classes (name, specialization condition formula, precondition redefinitions, and valuation redefinitions), aggregation relationships (related class, cardinalities, static or dynamic, and role names), and population selection patterns (filter: name and filter variables, order criteria). Relevant information to be obtained from global interactions in the Conceptual
- Model includes: name, arguments (name and type), and global interaction formula. Relevant information to be obtained from global functions in the Conceptual Model: include: name, return type, and arguments (name and type).
- Another generated component directly related to a class of the Conceptual Model is the one called "Executive Component" and is responsible for resolving or executing each of the services in the signature ofthe corresponding class. This component receives request from its corresponding server component or from other executive components.
- the interface presented by the executive component to the other components comprises a method per service.
- Each of these methods is structured according to the execution model in accordance with an embodiment ofthe invention.
- the executive component is responsible for the following operations: verify the existence and validity for the requested server instance; create a copy of the requested server instance in memory accessing the persistence layer (by means ofthe above mentioned corresponding query component) to retrieve the values of constant and variable attributes; validate state transition for the requested service and the present state of the requested server instance as specified in the corresponding state transition diagram in the Conceptual Model; verify the satisfaction of the requested service preconditions; modify the value of the instance variable attributes by performing all valuations affected by the service as specified in the functional model of the Conceptual Model, thus changing the state of the requested server instance; validate the new state achieved by the requested server instance by verifying its static and dynamic restrictions; check trigger conditions to determine which actions should be triggered if needed; communicate with the persistence layer for all persistent attributes of the requested server instance. Additionally, if the class is an agent of any service, another method is added to the interface whose purpose is that of validating the requestor's existence. 56470-011 Patent
- Another kind of executive component is a component related to global interactions defined in the Conceptual Model, whose interface consists of a method per global interaction.
- T component Another component to which a class in the Conceptual Model gives rise is a component called the "T component". This component is used to store a copy of the constant and variable attributes of an instance of the corresponding class, as well as the methods to calculate the value of its derived attributes.
- the corresponding query component implements a collection whose items are T components.
- P component Another component to which a class in the Conceptual Model may give rise is a component called "P component". This component is used to store in memory the values needed to initialize the constant and variable attributes of the corresponding class when creating an instance of it, or just the values of the attributes that constitute the class identification mechanism. Such a component appears whenever the corresponding class is a multi-valued component of an aggregation relationship.
- PL component Another component to which a class in the Conceptual Model may give rise is a component called "PL component”.
- This component implements a collection whose items are P components, as well as the methods needed to add and get items from the collection, and get the number of items in the collection. Such a component appears whenever the corresponding class is a multi-valued component of an aggregation relationship.
- C Components Another component to which a class in the Conceptual Model may give rise is a component called "C Components”. This component is used to store in memory the values needed to initialize the constant and variable attributes of the corresponding class 56470-011 Patent
- the CC component appears whenever there is, at least one temporal or permanent, condition-based, specialization in the Conceptual Model.
- the CC component implements a collection whose items are C components, a pair of methods to add and get items to the collection (one pair per C component generated), and a method to get the number of items in the collection.
- the instance list component implements a collection whose items are executive components playing in the execution of a given service. In addition to methods used to add an item to the collection, get an item, and get the number of items in the collection, this component implements a method to empty the collection and another one to look for an instance by its identification function.
- the conjunction component implements a collection whose items are disjunction components (that is, a conjunction of disjunctions), as well as methods to add and get a disjunction from the collection and a method to get the number of disjunctions in the collection.
- a global module for grouping attributes and methods shared through the generated code
- a global functions module that groups the code of all global functions defined in the Conceptual Model.
- code generation is driven by the information retrieved from the high level repository 215.
- the translation process can be divided into four phases: validation ofthe Conceptual Model (performed by validator 220), translation of the corresponding data model into a relational database management system (performed by database generator 236), retrieval of information from the Conceptual Model and storage of this information in memory structures and finally, generation of files from the information stored in memory (e.g. reading the information in memory structures to generate code in the target programming language).
- Validation ofthe Conceptual Model is mandatory, while data model translation is optional, but both can be considered as prerequisites to the other two phases which are the ones strictly related to code generation.
- Translation structures are designed to store input information from the Conceptual Model and all have a method that uses this information to generate source code in the target programming language.
- translation structures include: a class to store information needed to generate server components (server class), a class to store information needed to generate server components for global interactions (global interactions server class), a class to store information needed to generate executive components (analysis class), a class to 56470-011 Patent
- global interactions analysis class a class to store information needed to generate executive components for global interactions
- inheritance hierarchies inheritance hierarchy analysis class
- query class a class to store information needed to generate query components
- T class a class to store information needed to generate T components
- C class C components
- C class C components
- CC class C components
- P class P components
- PL class PL component
- a class to store information on the arguments for every service of every class in the Conceptual Model (arguments list class)
- a class to store information on the identification function of every class in the Conceptual Model analysis class list class
- classes to generate the methods needed to resolve a service in executive components event class, shared event class, transaction class, interaction class
- auxiliary methods needed to resolve a service in both executive components and executive components for inheritance hierarchies precondition class, static constraints class, dynamic constraints class, ...
- T & Q method classes classes to generate methods needed in query and T components
- inheritance method class a class to generate inheritance-specific methods
- code generation class a class to monitor the generation process
- the code generation class is responsible for retrieving all the information needed to generate code and for doing so in the appropriate order, for writing to files the generated code and organizing it into files properly according to the component-based structure.
- the code generation class maintains lists of the above mentioned generation structures in memory in which information retrieved from the Conceptual Model is to be stored and it later loops through these lists to write the appropriate files.
- the information retrieval process basically comprises a series of loops through the classes in the Conceptual Model to gather all information needed, a loop trough global interactions and a loop through global functions in the Conceptual Model.
- the last phase in the code generation process covers writing to files according to the component-based structure presented herein. This process comprises: looping through the lists of instances above described that maintain the information needed to generate components and their attributes and methods, and call each element's code generation method; generating global interactions executive component; generating global interactions server component; generating global functions module; and generating standard components.
- a method For each global function a method is generated. The method has the same name as the global function and a translated return type. Each argument of the method has the same name ofthe corresponding argument ofthe global function and a translated type.
- the user-interface translator 234 automatically generates source code for a high order programming language such as Visual BASIC or JAVA from information in the high level repository.
- code may be generated in any computed language. Its output corresponds with the presentation tier in a three-tiered architecture.
- the user-interface translator 234 provides as output the source code of a component that implements the user interface functionality. This component is automatically generated without human intervention.
- the user-interface translator 234 uses as input data a validated Conceptual Model 215 and offers as output data, source code in a third generation language that implements an equivalent functional prototype related to the Conceptual Model the component is derived from.
- the user-interface translator 234 produces source code to perform the following: a communications subsystem able to send 56470-011 Patent
- code is generated for a wider and flexible user-interface operation.
- a query service frame, form or screen the following functionality will be available when a certain instance has been selected: navigation through relationships with related selected object. This navigation is used to browse among related data items following its related links; thus, the resultant code is suitable for Internet applications.
- Additional functionality includes services activation for selected object; advanced query services including: filters (population selection), views (status selection), and sorting criteria; and context keeping for filling-in known services arguments.
- Context keeping is a user- facility. Context is data associated to the working user environment. This data is useful to provide default values for service arguments.
- Translated applications supply the user connection to the system.
- the user connection is resolved using an access form to authenticate the agent.
- the translated application provides a system user view. A user must be able to access services the user can launch.
- the main form is designed to accomplish this task.
- the Application Main Form contains a menu, where user can view the services he is allowed to execute.
- the source code associated to each action realized by user is automatically generated.
- Each service argument can take its initial value in three different ways:
- the Query/Selection Form permits the querying of objects (that can be restrained -by filters) and the selection of an object.
- objects that can be restrained -by filters
- the user can browse to other data items related to the object In the same way, the user can launch a service of the selected object.
- These query/selection forms also include a visual component to show objects.
- the user can launch services in order to rent the car, return, or sell it. This task is achieved by a function that determines which service to launch of what object.
- the corresponding Service Form is invoked for each exposed service.
- These query/selection forms also include a component to initiate the browsing. For example: given a car, the user can view the driver, the driver's sons, etc. When the user navigates
- a new query/selection form is displayed.
- the previous component there exists code to invoke the next form to display when user browses objects.
- the form receives information about the previous object in order to display only the data related to that initial object.
- the user-interface translator 234 can retrieve information from memory structures, a relational database, using a query API or any other input source.
- An intermediate structure in memory is filled with the Conceptual Model data relevant for translating the user-interface component.
- Intermediate structure follows an architecture to the one defined in the Conceptual Model schema in which can be queried for classes, services, and attributes for a specific Conceptual Model.
- an instance selection component For each class, generate a query / selection form, an instance selection component a specialization component (if class is specialized from other class an requires extra initialization). For each service class, also generate a service form.
- the Access Form is a little dialog box containing: a list of agent classes (from this list, the user chooses one), a field where the user provides OID for a valid object instance belonging to the previously selected class and a field for password.
- This form is mostly generated in a fixed way.
- the only varying section for each model is the mentioned agent classes list. By iterating over the model classes list and by checking which classes are agents such agent classes list can be obtained.
- the services are arranged in an access-hierarchy to be converted to menu bars (Visual Basic client), HTTP pages (Web client) or any other structure that allows browsing.
- the hierarchy is built by iterating the classes and services in the Conceptual Model.
- the hierarchy can bee seen as an access tree to the application.
- For each class a tree item is built labeled with class alias.
- this mode has the following items as descendents: an item labeled as 'Query' to access a query form; an item for each service defined in the current class labeled with the service alias; and, in the case of inheritance relationship with other classes, an item is built for each direct subclass labeled with subclass alias.
- the same algorithm is applied until the inheritance tree is fully explored.
- a Service Form requires the following input data extracted from the Conceptual Model: Service to generate, service class, arguments list, interface patterns linked to 56470-011 Patent
- a form For each service, a form is generated that contains a graphic part and a functional part.
- the graphic part includes a widget attached to each argument that needs to be asked to user and a pair of widgets to accept or cancel the service launch.
- the functional part includes code to implement the event-drivers for the previous widgets, to initialize the properties of theses widgets with default values, to validate introduced values, and to invoke the service in the system-logic component.
- Widgets are added for OK and Cancel commands, and graphic positions of widgets are arranged so they do not overlap.
- the form is divided in a logical grid of n columns by n rows and assign positions from left to right and from top to bottom to conveniently arrange the widgets.
- the logical positions are translated to physical position in the target language and rearrange action commands in the bottom- right comer of the form.
- the form is resized to adjust the size of data contained therein.
- the standard header of a form is dumped to a file. This step is dependent of the target language selected. Then, the graphic part of form is dumped to the file, including the definition of basic form properties, the definition of each widget., and the widgets' actions.
- the source code attached to this form is translated and dumped.
- This process includes translating generic functions to manage events in the form, such as open and close events and produce code to assign and free resources.
- functions to handle the Status Recovery Pattern and dependencies between widgets are translated.
- code for changing argument values must be generated and the code that triggers such dependencies.
- the validation code is also translated too. There are validation methods to check the values gathered in the widgets are right.
- a function to translate service calling into invocation to system-logic services is generated. The function built contains: a reference to system-logic object where the service is going to be executed; the invocation to a method that implements the service in the system- logic; and the arguments necessary to such function, constructed from values supplied form user through widgets.
- the following Conceptual Model information is required: a class and its properties (alias), and the list of the Population Selection interface patterns defined for the class.
- Each pattern contains: a display set, a filter, and a sort criterion.
- the list of attributes belonging to the class is assumed. If a class lacks a population selection pattern, the following default values will be assumed: every attribute defined in the class is considered as part of the display set, and neither a filter (in this case the whole population ofthe class is returned) nor a sort criteria are attached.
- Generating a query/selection form also requires information about the relationships of the class. For every class, a form is generated based on this information and contains a tabular representation of the display sets of the class, a set of grouped filters that allow to restrict search through the population, and a pop-up menu including navigability links to the classes related to the first one and available services to be launched over instances ofthe class.
- the generated software component which has been described before, provides the user-interface client functionality that includes all the required functionality for both validating and executing a prototype compliant to the Conceptual Model it has been derived from.
- the applications of the component are: prototyping, user validation of the Conceptual Model before capturing new requirements; testing to validate the Conceptual Model by analysts to verify that the model faithfully reflects the requirements; and ultimate application production, once the process of requirements capture is completed, the generated component can be considered as a final version implementing a functionally complete and ergonomic user interface.
- the component can be edited to customize the application to users desires with very little effort.
- the database generator 236 automatically defines a data model in a Relational Database Management System (RDBMS) according to the validated specification in the high level repository 215.
- RDBMS Relational Database Management System
- other forms of persistent storage may be used. Such as flat files, serialized files or Object Oriented databases.
- the output of the database generator 236 output corresponds with the persistence tier in a multi-tiered architecture. .
- scripts are generated in order to create and delete tables, constraints (primary and foreign keys) and indexes.
- Scripts can optionally be executed in a Relational Database Management System to effectively create said data model.
- Relational databases are preferred, because they are the industry- standard way to store data and, consequently, use of tables instead of objects as it would be desirable. Nevertheless, many object-oriented applications, like those produced by in accordance with an embodiment of the present invention, can be compatible with the Relational Model, since the static aspects of objects can be stored in tables following a translation process.
- the generated data model comprises a set of tables and the corresponding relationships, as well as constraints on primary and foreign keys and indexes.
- the generated data model reflects system data with the attributes defined in the classes specification and other class instances properties like their state, role if they are agents.
- Information gathered from the high level repository 215 and needed to produce the corresponding data model, focuses on classes and include the name, constant attributes (either emergent or inherited); variable Attributes (either emergent or inherited); identification function; inherited identification function; aggregation relationships (either emergent or inherited); and agent information.
- the generated scripts follow a standard: ANSI SQL 92.
- This fact means that the generated data model can fit any database management system based on ANSI SQL 92, particularly most well known relational database management systems.
- the process to obtain the data model follows these steps: For each elemental class of the Conceptual Model, a table in the selected relational database is created. For each constant or variable attribute in the class specification, a field in the table corresponding to the class is created. The field data type depends on Conceptual Model attribute data type translated into the target relational database. Derived attributes are not stored in the database since their value will be calculated upon request by special methods in the server code generated. 56470-011 Patent
- Primary keys are determined by attributes marked in the Conceptual Model as being identification attributes.
- table fields corresponding to these attributes will constitute the primary key of the table.
- tables corresponding to specialized classes in addition to fields representing emergent attributes, have fields that correspond to attributes that constitute the primary key of the table representing their ancestor class. If a specialized class does not have an identification function of its own, these fields, copied from the ancestor class, constitute the specialized table primary key. At the same time, they constitute the foreign key to the parent class table. On the other hand, if a specialized class has its own identification function, these fields only constitute a foreign key to the parent class table.
- the aggregation relationship dimensions determine its cardinalities that in turn determine representation in the database: If the relationship is multi-valued (maximum cardinality set to M) in both senses a new table is added in order to represent this aggregation relationship.
- This table has a field for each one that constitutes the primary key of related tables. The set of all this fields constitutes the primary key and, individually, fields coming from each related table's primary key, constitute foreign keys to each related table.
- the class related with only one instance of the other one copies the fields of the primary of the other one. These fields constitute a foreign key to the related class table.
- any of the tables could have the foreign key to the other.
- the adopted option in this case is that the aggregate class have the reference to the component class. With respect to minimum cardinalities, if minimum cardinality is 0 then the corresponding field will take null values. Otherwise it will not If identification dependence exists between two classes then fields ofthe primary key ofthe non-dependent class are copied to the table corresponding to the dependent class.
- Indexes may be generated to optimize searches and reduce response time. For each foreign key, an index will be generated so foreign keys will also be search indexes. So far the static aspects of an object have been covered, but some dynamic aspects need also be discussed.
- the occurrence of services characterize the evolution in an object's life for an object's state changes whenever a service happens since the value of its attributes characterize its state.
- the state transition diagram determines valid lives for an object In order to monitor state transition, a new field will be added to each table corresponding to a class, to store the name of the state in the state transition diagram in which an object is at a given instant.
- Generated applications may perform user authentication by requesting identification and password to agents logging on to the system.
- a new field will be added to tables corresponding to classes that are agents of any service in the system, to store the password of said agent.
- the CASE tool 210 allows for additional information to be introduced at analysis time, which can be used to generate system's documentation. Accordingly, the documentation generator 238 automatically produces a set of documents including the formal specification, full Conceptual Model details documentation, user's help, and others, from information in the high level repository 215.
- the documentation generator 238 answers the need for information requests and queries performed on a Conceptual Model.
- the documentation generator 238 allows generation of queries, specific manuscripts or well- formed documents in order to document properly a project.
- Complete generation of Conceptual Model is generated in an ASCII format in OASIS syntax, which comprises the part of the Conceptual Model related to analysis of the problem, as Presentation Model Interface Patterns, are not included with this syntax.
- Document generator provides, by default, general documents, services documents, and help documents.
- the general documents include a natural language specification description.
- the services documents include a detailed description of classes and services.
- the help documents contain an on-line help for generated prototypes.
- the Documentation Generator uses as target languages some recognized standard formats for documentation: ASCII, plain text, navigational HTML with multiple documents, navigational HTML with one document, LaTeX, and Rich Text Format (RTF).
- This Documentation System is scalable and can be extended to add a new kind of document or target language. Adding a new target language allows to all defined documents to be generated with this new language. In the same way, adding a new document type will should be generated to any supported target language.
- a process iterates over the information structures and writes to a file the corresponding text strings in the formal language.
- the iteration over the structures can be detail as: (1) write specification headers; (2) For all class selected to be described: write its formal template (attributes, events, derivations, restrictions, preconditions, triggers and process); (3) for all global transaction, write its declaration and formal definition; and (4) write the end spec. 56470-011 Patent
- a document is generated in an intermediate block language (IBL).
- IBL intermediate block language
- the document is a block of document type and contains n child blocks.
- a block is a structure that contains the following properties: name, category, block type, block text, and list of contained blocks.
- the generation is supported by an algorithm that implements loops iterating over the Conceptual Model following the order fixed by the document.
- the document is built creating and linking the blocks that constitute the document.
- the resultant structure a tree of blocks
- This algorithm using recursive descent analysis is capable to convert the blocks to tags in the target language depending on the information stored in the block and contained blocks.
- an automatic software production tool that captures information requirements, also referred to as "business processes" from a triple perspective: static, dynamic and functional. This allows system designers and analysts to fully capture every aspect ofthe reality they model. System Logic Translator is then responsible for gathering all this information, which would have been previously validated to assure correctness and completeness, and automatically produce code that implements every aspect of the modeled reality.
- This system logic code has the following features:
- the system logic code is complete and correct. Since information gathered by the System Logic Translator has been previously validated, produced code can be assured to be both complete and correct thanks to the set of translation recipes provided.
- translation recipes cover every aspect that can be modeled by an analyst, so everything that can be expressed and captured in a Conceptual Model can be translated into source code. Every translation recipe assures for correct translation thus resulting in error-free source code.
- the system logic code is for a full application, not just a prototype. Generated code can be compiled (with the appropriate compiler depending on the target programming language) and executed "as-is" because it is fully translated from the Conceptual Model information input. Generated code is not a mere collection of method skeletons but complete methods. Furthermore, no useless code is produced and no line of code is generated more than once. In addition to this, even being the generated code well structured and readable, comments can be automatically generated as a means of internal code documentation thus improving readability.
- the system logic code is robust and includes error checking and handling. Correctness and completeness allow for the production of robust code.
- errors fall into two categories: model or internal errors and extemal errors.
- Internal errors correspond to properties that must hold at a given instant according to the Conceptual Model (e.g.: a precondition that does not hold, an integrity constraint violation of a maximum cardinality of an aggregation relationship, etc.)
- Extemal errors correspond to causes alien to the Conceptual Model (e. g.: a system failure, a database failure, etc.).
- the generated code handles errors according to this classification as follows: For internal errors, the system logic translator identifies every point where an internal error might occur then produces error checking and handling code to notify the client about such an error's occurrence. Again, internal errors can be categorized and given a specific treatment, such as customizable error messages and error codes. For external errors, the system logic translator identifies every point where an external error might occur then produces error checking and handling code to notify the client about such an error's 56470-011 Patent
- the system logic code handles transactional behavior.
- the generated code presents transactional behavior in the sense that the code provides clients a well-defined interface, which allows them to request services from the system. Those services are executed in a transactional way: every input argument of the service must be provided by the client, then system logic performs the corresponding operations and replies to the client. Services in a Conceptual Model can be in turn decomposed into actions.
- the generated code assures for all actions composing a service be successfully accomplished or none of them.
- changes to objects affected by the actions a service is divided into do not effectively take place until all these actions have successfully terminated.
- Transactional behavior also enhances integration with legacy systems.
- the system logic code is independent from the user interface.
- the generated code provides a well-defined interface allowing for clients to request services. But this interface does not depend on the clients interacting with it. This allows for a heterogeneous set of clients interacting with the same system logic. Thus, clients for specific system logic need only know the interface it will present to them. This feature facilitates the deployment of Internet applications and also enhances integration with legacy systems and decomposition of huge information systems or Conceptual Models into smaller ones, which, due to their well-defined interfaces, can interact with each other.
- the system logic code is independent from the persistence layer.
- the generated code is responsible for interacting with the persistence layer implementing what is regarded as "persistence services". These services are responsible for: adding, retrieving, updating, and deleting information in the persistence layer. These services are necessary 56470-011 Patent
- system logic hides the persistence layer to clients by providing services to perform queries on the persistence layer. This implies that clients need not know the physical location of the persistence layer; need not know the structure of the persistence layer, because they are provided with services to perform queries on the persistence layer; need not be authorized users of the persistence layer because access to the persistence layer is entirely managed by the system logic; and need not even know that there is a persistence layer.
- the code automatically produced by the automatic software production system of one embodiment of the present invention corresponds to that of a true final software application, instead of that of just a prototype. To maintain this distinction, some of the differences between the generated system logic code from that of a prototype are explained.
- a prototype aims to verify user's needs and requirements and verify correctness of execution.
- the automatically generated code in accordance with an embodiment of the present invention aims to verify user's needs and requirements, for it is correctly generated.
Abstract
Description
Claims
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA2403975A CA2403975C (en) | 2000-04-04 | 2001-03-02 | Automatic software production system |
EP01913266A EP1272927A2 (en) | 2000-04-04 | 2001-03-02 | Automatic software production system |
JP2001573206A JP2004506962A (en) | 2000-04-04 | 2001-03-02 | Automatic software creation system |
AU2001241945A AU2001241945B2 (en) | 2000-04-04 | 2001-03-02 | Automatic software production system |
AU4194501A AU4194501A (en) | 2000-04-04 | 2001-03-02 | Automatic software production system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/543,085 | 2000-04-04 | ||
US09/543,085 US6681383B1 (en) | 2000-04-04 | 2000-04-04 | Automatic software production system |
Publications (3)
Publication Number | Publication Date |
---|---|
WO2001075593A2 true WO2001075593A2 (en) | 2001-10-11 |
WO2001075593A3 WO2001075593A3 (en) | 2002-08-08 |
WO2001075593A9 WO2001075593A9 (en) | 2003-07-10 |
Family
ID=24166513
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2001/006790 WO2001075593A2 (en) | 2000-04-04 | 2001-03-02 | Automatic software production system |
Country Status (6)
Country | Link |
---|---|
US (10) | US6681383B1 (en) |
EP (1) | EP1272927A2 (en) |
JP (3) | JP2004506962A (en) |
AU (2) | AU4194501A (en) |
CA (2) | CA2723005A1 (en) |
WO (1) | WO2001075593A2 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2368684A (en) * | 2000-05-31 | 2002-05-08 | Ibm | Managing an object in a management framework |
WO2005114387A1 (en) * | 2004-05-20 | 2005-12-01 | Code Valley Pty Limited | Code generation techniques |
WO2008000878A2 (en) * | 2006-06-30 | 2008-01-03 | Business Excellence Through Information Technologies, S.L. | Electronic commerce system for the purchase of custom-developed computer applications for managing information using structured data models. |
EP2639693A1 (en) * | 2012-03-12 | 2013-09-18 | Barium AB | Business management system |
US9916610B2 (en) | 2002-11-06 | 2018-03-13 | Noel William Lovisa | Service implementation |
US20220327012A1 (en) * | 2021-04-08 | 2022-10-13 | Dell Products L.P. | Software validation framework |
Families Citing this family (785)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6490594B1 (en) * | 1997-04-04 | 2002-12-03 | Microsoft Corporation | Database computer system with application recovery and dependency handling write cache |
US7210117B2 (en) * | 1999-08-19 | 2007-04-24 | National Instruments Corporation | System and method for programmatically generating a graphical program in response to program information |
US7076400B2 (en) * | 2000-02-14 | 2006-07-11 | Nextnine Ltd. | Support network |
US7409318B2 (en) * | 2000-02-14 | 2008-08-05 | Nextnine Ltd. | Support network |
US7334216B2 (en) * | 2000-04-04 | 2008-02-19 | Sosy, Inc. | Method and apparatus for automatic generation of information system user interfaces |
US6681383B1 (en) * | 2000-04-04 | 2004-01-20 | Sosy, Inc. | Automatic software production system |
US20040231043A1 (en) * | 2000-04-14 | 2004-11-25 | Pop-In Pop-Out, Inc. | Bath lifting system |
US6516322B1 (en) * | 2000-04-28 | 2003-02-04 | Microsoft Corporation | XML-based representation of mobile process calculi |
US7503033B2 (en) * | 2000-04-28 | 2009-03-10 | Microsoft Corporation | Model for business workflow processes |
US7099809B2 (en) * | 2000-05-04 | 2006-08-29 | Dov Dori | Modeling system |
US7606796B2 (en) * | 2000-06-15 | 2009-10-20 | Generate, Inc. | Method of and system for determining connections between parties using private links |
US20050044148A1 (en) * | 2000-06-29 | 2005-02-24 | Microsoft Corporation | Method and system for accessing multiple types of electronic content |
FR2811093A1 (en) * | 2000-06-30 | 2002-01-04 | St Microelectronics Sa | DEVICE AND METHOD FOR EVALUATING ALGORITHMS |
AUPQ966400A0 (en) * | 2000-08-24 | 2000-09-21 | Xemplex Pty Ltd | Method of graphically defining a formula |
US6820253B1 (en) * | 2000-09-27 | 2004-11-16 | Intel Corporation | Method and system for interprocedural analysis with separate compilation |
US20020087744A1 (en) * | 2000-11-01 | 2002-07-04 | Aeroflex Altair Cybernetics Corporation | Information transformation software engine |
US20030105732A1 (en) * | 2000-11-17 | 2003-06-05 | Kagalwala Raxit A. | Database schema for structure query language (SQL) server |
US7200838B2 (en) * | 2000-12-20 | 2007-04-03 | National Instruments Corporation | System and method for automatically generating a graphical program in response to a state diagram |
US7761270B2 (en) * | 2000-12-29 | 2010-07-20 | Exxonmobil Upstream Research Co. | Computer system and method having a facility management logic architecture |
US7277836B2 (en) * | 2000-12-29 | 2007-10-02 | Exxonmobil Upstream Research Company | Computer system and method having a facility network architecture |
JP3881179B2 (en) * | 2001-02-14 | 2007-02-14 | 三菱電機株式会社 | User interface design device |
US7290243B1 (en) * | 2001-02-28 | 2007-10-30 | Apple Inc. | Method and apparatus for application building using build styles |
GB2373073A (en) * | 2001-03-08 | 2002-09-11 | Escher Technologies Ltd | Process and system for developing validated and optimised object-oriented software |
US7389492B2 (en) * | 2001-03-12 | 2008-06-17 | International Business Machines Corporation | Framework for code generators |
US7406682B2 (en) * | 2001-03-26 | 2008-07-29 | Emc Corporation | Translator-compiler for converting legacy management software |
US20030217333A1 (en) * | 2001-04-16 | 2003-11-20 | Greg Smith | System and method for rules-based web scenarios and campaigns |
US6978442B2 (en) * | 2001-05-03 | 2005-12-20 | International Business Machines Corporation | Auditing data using observable and observer objects |
GB0113946D0 (en) * | 2001-06-08 | 2001-11-14 | Secr Defence | Automatic Development of Software Codes |
US8301503B2 (en) * | 2001-07-17 | 2012-10-30 | Incucomm, Inc. | System and method for providing requested information to thin clients |
CA2704080C (en) | 2001-07-26 | 2012-08-28 | Irise | System and process for cooperatively programming a simulation program of a computer application to be developed |
SE0102648A0 (en) * | 2001-08-02 | 2003-03-06 | Lars Höidahl | Arrangements to perform object-oriented programming |
CA2355418A1 (en) * | 2001-08-16 | 2003-02-16 | Ibm Canada Limited-Ibm Canada Limitee | A schema for sql statements |
US7580871B2 (en) * | 2001-08-31 | 2009-08-25 | Siebel Systems, Inc. | Method to generate a customizable product configurator |
JP2003076543A (en) * | 2001-08-31 | 2003-03-14 | Cats Kk | Device, method for generating program and program for making computer execute the same program |
US7650296B1 (en) * | 2001-08-31 | 2010-01-19 | Siebel Systems, Inc. | Configurator using structure and rules to provide a user interface |
US7386832B2 (en) * | 2001-08-31 | 2008-06-10 | Siebel Systems, Inc. | Configurator using structure to provide a user interface |
GB2379296B (en) * | 2001-09-01 | 2005-05-25 | Ibm | A data storage system having a unified container layer for an active data store |
ATE368900T1 (en) * | 2001-09-21 | 2007-08-15 | Koninkl Kpn Nv | COMPUTER SYSTEM, DATA TRANSMISSION NETWORK, COMPUTER PROGRAM AND DATA CARRIER, ALL FOR FILTERING MESSAGES INCLUDING CONTENT ACCORDING TO A MARKING LANGUAGE |
EP1435058A4 (en) * | 2001-10-11 | 2005-12-07 | Visualsciences Llc | System, method, and computer program product for processing and visualization of information |
US20030093551A1 (en) * | 2001-10-17 | 2003-05-15 | Graham Taylor | Adaptive software interface |
WO2003036464A2 (en) * | 2001-10-22 | 2003-05-01 | Sun Microsystems, Inc. | Inter-process communication using different programming languages |
US6879987B2 (en) * | 2001-10-31 | 2005-04-12 | Inventec Corp. | Method for storing records in database or reading the same therefrom |
US20030103080A1 (en) * | 2001-12-05 | 2003-06-05 | Bahman Radjabi | System and method for developing a code generator for object-oriented communication protocol |
US20030115571A1 (en) * | 2001-12-14 | 2003-06-19 | Telefonaktiebolaget L M Ericsson (Publ) | Construction of a software application from a plurality of programming languages |
US20030117417A1 (en) * | 2001-12-20 | 2003-06-26 | Nortel Networks Limited | Generic application flow management system and method |
US20030140332A1 (en) * | 2001-12-21 | 2003-07-24 | Norton Jeffrey B. | Method and apparatus for generating a software development tool |
US7188335B1 (en) * | 2001-12-28 | 2007-03-06 | Trilogy Development Group, Inc. | Product configuration using configuration patterns |
US20050144175A1 (en) * | 2002-02-18 | 2005-06-30 | Siemens Aktiengesellschaft | Method and system for administrating use of a service |
US7363612B2 (en) * | 2002-03-06 | 2008-04-22 | Sun Microsystems, Inc. | Application programs with dynamic components |
US6760640B2 (en) | 2002-03-14 | 2004-07-06 | Photronics, Inc. | Automated manufacturing system and method for processing photomasks |
US6842881B2 (en) * | 2002-07-30 | 2005-01-11 | Photronics, Inc. | Rule based system and method for automatically generating photomask orders in a specified order format |
US7640529B2 (en) * | 2002-07-30 | 2009-12-29 | Photronics, Inc. | User-friendly rule-based system and method for automatically generating photomask orders |
US7669167B2 (en) * | 2002-07-30 | 2010-02-23 | Photronics, Inc. | Rule based system and method for automatically generating photomask orders by conditioning information from a customer's computer system |
US20030182458A1 (en) * | 2002-03-22 | 2003-09-25 | Ali Syed M. | Generating a decoupled presentation layer in an application |
US7287229B2 (en) * | 2002-04-03 | 2007-10-23 | Hewlett-Packard Development Company, L.P. | Template-driven process system |
AU2003243146A1 (en) * | 2002-04-19 | 2003-11-03 | Computer Associates Think, Inc. | System and method for client-side locale specific numeric format handling in a web environment |
BR0309333A (en) * | 2002-04-19 | 2007-02-21 | Computer Ass Think Inc | system and method for providing inference services |
US6804686B1 (en) * | 2002-04-29 | 2004-10-12 | Borland Software Corporation | System and methodology for providing fixed UML layout for an object oriented class browser |
US7725560B2 (en) | 2002-05-01 | 2010-05-25 | Bea Systems Inc. | Web service-enabled portlet wizard |
WO2003093964A1 (en) * | 2002-05-01 | 2003-11-13 | Bea Systems, Inc. | Enterprise application platform |
US7127467B2 (en) | 2002-05-10 | 2006-10-24 | Oracle International Corporation | Managing expressions in a database system |
US7107280B2 (en) * | 2002-05-14 | 2006-09-12 | Haestad Methods, Inc. | Method and system for the storage and use of engineering modeling alternatives with unitized data |
US7640548B1 (en) | 2002-06-21 | 2009-12-29 | Siebel Systems, Inc. | Task based user interface |
US7426521B2 (en) * | 2002-07-19 | 2008-09-16 | Microsoft Corporation | Property and object validation in a database system |
EP1387261A1 (en) * | 2002-07-30 | 2004-02-04 | Sereneo | Application software generation and language for software description |
US7237014B2 (en) * | 2002-08-01 | 2007-06-26 | Drummond Group | System and method for in situ, real-time, supply chain, interoperability verification |
US20040031017A1 (en) * | 2002-08-12 | 2004-02-12 | Shankar Vaidyanathan | System and method for context-sensitive help in a design environment |
US7219328B2 (en) * | 2002-08-28 | 2007-05-15 | Honeywell International Inc. | Model-based composable code generation |
EP1532522A2 (en) * | 2002-08-29 | 2005-05-25 | Crossmarx B.V. | System and method for executing and building a software application |
WO2004025463A1 (en) * | 2002-09-09 | 2004-03-25 | Catena Corporation | Requirement defining method, method for developing software, method for changing requirement word, and newly defining method |
US7383513B2 (en) * | 2002-09-25 | 2008-06-03 | Oracle International Corporation | Graphical condition builder for facilitating database queries |
WO2004031937A1 (en) * | 2002-09-30 | 2004-04-15 | Microsoft Corporation | System and method for making user interface elements known to an application and user |
US7114148B2 (en) * | 2002-09-30 | 2006-09-26 | Microsoft Corporation | Runtime services for network software platform |
US7412658B2 (en) * | 2002-11-14 | 2008-08-12 | Sap Ag | Modeling system for graphic user interface |
US7149752B2 (en) * | 2002-12-03 | 2006-12-12 | Jp Morgan Chase Bank | Method for simplifying databinding in application programs |
US7191431B2 (en) * | 2002-12-20 | 2007-03-13 | International Business Machines Corporation | System and method for selecting a translator to translate a component request using semantic typing |
US7117449B1 (en) * | 2002-12-31 | 2006-10-03 | Siebel Systems, Inc. | Method and apparatus to present an integrated process modeler |
US8032439B2 (en) * | 2003-01-07 | 2011-10-04 | Jpmorgan Chase Bank, N.A. | System and method for process scheduling |
US7401156B2 (en) * | 2003-02-03 | 2008-07-15 | Jp Morgan Chase Bank | Method using control interface to suspend software network environment running on network devices for loading and executing another software network environment |
US8831966B2 (en) | 2003-02-14 | 2014-09-09 | Oracle International Corporation | Method for delegated administration |
US7591000B2 (en) | 2003-02-14 | 2009-09-15 | Oracle International Corporation | System and method for hierarchical role-based entitlements |
US7653930B2 (en) | 2003-02-14 | 2010-01-26 | Bea Systems, Inc. | Method for role and resource policy management optimization |
US7293286B2 (en) | 2003-02-20 | 2007-11-06 | Bea Systems, Inc. | Federated management of content repositories |
US7840614B2 (en) | 2003-02-20 | 2010-11-23 | Bea Systems, Inc. | Virtual content repository application program interface |
US7415478B2 (en) * | 2003-02-20 | 2008-08-19 | Bea Systems, Inc. | Virtual repository complex content model |
US7810036B2 (en) | 2003-02-28 | 2010-10-05 | Bea Systems, Inc. | Systems and methods for personalizing a portal |
US7313754B2 (en) * | 2003-03-14 | 2007-12-25 | Texterity, Inc. | Method and expert system for deducing document structure in document conversion |
US7379998B2 (en) * | 2003-03-31 | 2008-05-27 | Jp Morgan Chase Bank | System and method for multi-platform queue queries |
US7114146B2 (en) * | 2003-05-02 | 2006-09-26 | International Business Machines Corporation | System and method of dynamic service composition for business process outsourcing |
US20040230602A1 (en) * | 2003-05-14 | 2004-11-18 | Andrew Doddington | System and method for decoupling data presentation layer and data gathering and storage layer in a distributed data processing system |
US7366722B2 (en) * | 2003-05-15 | 2008-04-29 | Jp Morgan Chase Bank | System and method for specifying application services and distributing them across multiple processors using XML |
US7509641B2 (en) * | 2003-05-16 | 2009-03-24 | Jp Morgan Chase Bank | Job processing framework |
US8239833B2 (en) * | 2003-06-26 | 2012-08-07 | Stmicroelectronics S.A. | Statistical control of the integrity of a program |
AU2004254999A1 (en) * | 2003-06-27 | 2005-01-13 | Generate, Inc. | Method of and system for determining connections between parties using private links |
US20050197998A1 (en) * | 2003-07-11 | 2005-09-08 | Asbury Mark R. | Dynamic database SQL script execution through JDBC |
US8219968B2 (en) * | 2003-07-17 | 2012-07-10 | Raytheon Company | Designing computer programs |
US7519952B2 (en) * | 2003-07-28 | 2009-04-14 | International Business Machines Corporation | Detecting an integrity constraint violation in a database by analyzing database schema, application and mapping and inserting a check into the database and application |
US7840943B2 (en) * | 2003-08-08 | 2010-11-23 | Oracle America, Inc. | Method and apparatus for transferring data in a distributed testing system |
US20050065970A1 (en) * | 2003-08-20 | 2005-03-24 | King Anthony Graham | System, method and apparatus for developing software |
US7237224B1 (en) | 2003-08-28 | 2007-06-26 | Ricoh Company Ltd. | Data structure used for skeleton function of a class in a skeleton code creation tool |
US7793257B2 (en) * | 2003-08-28 | 2010-09-07 | Ricoh Company, Ltd. | Technique for automating code generation in developing software systems |
US7308675B2 (en) * | 2003-08-28 | 2007-12-11 | Ricoh Company, Ltd. | Data structure used for directory structure navigation in a skeleton code creation tool |
US20050060188A1 (en) * | 2003-09-03 | 2005-03-17 | Electronic Data Systems Corporation | System, method, and computer program product for health care patient and service management |
US7822795B2 (en) * | 2003-09-19 | 2010-10-26 | Lattix, Inc. | Apparatus and methods for displaying and determining dependency relationships among subsystems in a computer software system |
US7356802B2 (en) * | 2003-09-29 | 2008-04-08 | International Business Machines Corporation | Automatic customization of classes |
US7870504B1 (en) | 2003-10-01 | 2011-01-11 | TestPlant Inc. | Method for monitoring a graphical user interface on a second computer display from a first computer |
US20050257245A1 (en) * | 2003-10-10 | 2005-11-17 | Bea Systems, Inc. | Distributed security system with dynamic roles |
US20050251852A1 (en) * | 2003-10-10 | 2005-11-10 | Bea Systems, Inc. | Distributed enterprise security system |
US20050081166A1 (en) * | 2003-10-14 | 2005-04-14 | Stokke Michael A. | System and method facilitating automated navigation for user interface(s) |
US8024705B2 (en) * | 2003-11-12 | 2011-09-20 | Siemens Product Lifecycle Management Software Inc. | System, method, and computer program product for distributed testing of program code |
US7325227B2 (en) * | 2003-11-12 | 2008-01-29 | Siemens Product Lifecycle Management Software | System, method, and computer program product for identifying code development errors |
US8799001B2 (en) * | 2003-11-17 | 2014-08-05 | Nuance Communications, Inc. | Method and system for defining standard catch styles for speech application code generation |
US20050114841A1 (en) * | 2003-11-21 | 2005-05-26 | Moskowitz Milton E. | Automatic computer code review tool |
US20050154742A1 (en) * | 2003-11-26 | 2005-07-14 | Aviv Roth | Business software application generation system and method |
US8381207B2 (en) | 2003-12-02 | 2013-02-19 | International Business Machines Corporation | Script generation engine and mapping semantic models for target platform |
US9489687B2 (en) * | 2003-12-04 | 2016-11-08 | Black Duck Software, Inc. | Methods and systems for managing software development |
US8700533B2 (en) * | 2003-12-04 | 2014-04-15 | Black Duck Software, Inc. | Authenticating licenses for legally-protectable content based on license profiles and content identifiers |
US7752559B1 (en) * | 2003-12-05 | 2010-07-06 | The Mathworks, Inc. | Graphical model preparation for embedded deployment |
US7711753B2 (en) * | 2003-12-08 | 2010-05-04 | Oracle International Corporation | Systems and methods for validating design meta-data |
US7865480B2 (en) * | 2003-12-08 | 2011-01-04 | Oracle International Corporation | Systems and methods for validating objects models |
US7844640B2 (en) * | 2003-12-17 | 2010-11-30 | Sap Ag | Data mapping visualization |
AU2003291794A1 (en) * | 2003-12-18 | 2005-07-05 | Motorola Inc | A method of automatically generating test scripts from a system specification model |
US7930149B2 (en) | 2003-12-19 | 2011-04-19 | Sap Aktiengesellschaft | Versioning of elements in a configuration model |
FR2864280A1 (en) * | 2003-12-19 | 2005-06-24 | Thales Sa | Documentary transfer chain creating method, involves establishing dynamic link for each document fragment, between its location in documentary transfer chain and its physical file issued from automatic document generator |
US20070074180A1 (en) * | 2003-12-22 | 2007-03-29 | Nasa Hq's | Systems, Methods and Apparatus for Procedure Development and Verification |
US7752608B1 (en) * | 2003-12-22 | 2010-07-06 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Systems, methods and apparatus for verification of knowledge-based systems |
US7739671B1 (en) | 2003-12-22 | 2010-06-15 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Systems, methods and apparatus for implementation of formal specifications derived from informal requirements |
US7712073B1 (en) * | 2003-12-23 | 2010-05-04 | Sprint Communications Company L.P. | Software development artifact creation tool |
JP2005196291A (en) * | 2003-12-26 | 2005-07-21 | Fujitsu Ltd | User interface application development program and development device |
US20050144174A1 (en) * | 2003-12-31 | 2005-06-30 | Leonid Pesenson | Framework for providing remote processing of a graphical user interface |
GB2410577A (en) * | 2004-01-31 | 2005-08-03 | Patrick Ian Carmody | Development and maintenance of computer databases |
US7533365B1 (en) * | 2004-02-03 | 2009-05-12 | Borland Software Corporation | Development system with methodology for run-time restoration of UML model from program code |
US8112383B2 (en) * | 2004-02-10 | 2012-02-07 | Microsoft Corporation | Systems and methods for a database engine in-process data provider |
US6876314B1 (en) | 2004-02-18 | 2005-04-05 | Robocoder Corporation | Self-generating automatic code generator |
US8135755B2 (en) * | 2005-06-29 | 2012-03-13 | Microsoft Corporation | Templates in a schema editor |
US7788078B1 (en) | 2004-02-27 | 2010-08-31 | Synopsys, Inc. | Processor/memory co-exploration at multiple abstraction levels |
US7640251B2 (en) * | 2004-03-15 | 2009-12-29 | Rameo Systems Limited | Structured approach to software specification |
US7657542B2 (en) * | 2004-03-15 | 2010-02-02 | Ramco Systems Limited | Software life cycle availability over the internet |
US7793258B2 (en) * | 2004-03-15 | 2010-09-07 | Ramco Systems Limited | Software development using visual interfaces |
US20050204334A1 (en) * | 2004-03-15 | 2005-09-15 | Ramco Systems Limited | Component based software system |
US9009658B2 (en) * | 2004-03-15 | 2015-04-14 | Ramco Systems Limited | Component based software system |
US20050216884A1 (en) * | 2004-03-25 | 2005-09-29 | Microsoft Corporation | Object generation |
US8677312B1 (en) | 2004-03-30 | 2014-03-18 | Synopsys, Inc. | Generation of compiler description from architecture description |
US8689202B1 (en) | 2004-03-30 | 2014-04-01 | Synopsys, Inc. | Scheduling of instructions |
US7774601B2 (en) | 2004-04-06 | 2010-08-10 | Bea Systems, Inc. | Method for delegated administration |
US9734222B1 (en) | 2004-04-06 | 2017-08-15 | Jpmorgan Chase Bank, N.A. | Methods and systems for using script files to obtain, format and transport data |
US20050222990A1 (en) * | 2004-04-06 | 2005-10-06 | Milne Kenneth T | Methods and systems for using script files to obtain, format and disseminate database information |
US20050229152A1 (en) * | 2004-04-08 | 2005-10-13 | Brian Connell | Integrated modeling environment |
US20050251512A1 (en) * | 2004-04-13 | 2005-11-10 | Bea Systems, Inc. | System and method for searching a virtual content repository |
US20060041558A1 (en) * | 2004-04-13 | 2006-02-23 | Mccauley Rodney | System and method for content versioning |
US20060028252A1 (en) * | 2004-04-13 | 2006-02-09 | Bea Systems, Inc. | System and method for content type management |
US7246138B2 (en) * | 2004-04-13 | 2007-07-17 | Bea Systems, Inc. | System and method for content lifecycles in a virtual content repository that integrates a plurality of content repositories |
US7590969B2 (en) * | 2004-04-14 | 2009-09-15 | Microsoft Corporation | Type system |
US7797676B2 (en) * | 2004-04-20 | 2010-09-14 | International Business Machines Corporation | Method and system for switching between prototype and real code production in a graphical call flow builder |
US7376830B2 (en) * | 2004-04-26 | 2008-05-20 | Jp Morgan Chase Bank | System and method for routing messages |
GB0410047D0 (en) * | 2004-05-05 | 2004-06-09 | Silverdata Ltd | An analytical software design system |
DE102004023634B4 (en) * | 2004-05-10 | 2007-09-27 | Siemens Ag | Method for checking the completeness and consistency of an information library |
US20050257154A1 (en) * | 2004-05-14 | 2005-11-17 | Bea Systems, Inc. | Graphical association of elements for portal and webserver administration |
JP4100630B2 (en) * | 2004-05-14 | 2008-06-11 | インターナショナル・ビジネス・マシーンズ・コーポレーション | UML design method |
US20050257172A1 (en) * | 2004-05-14 | 2005-11-17 | Bea Systems, Inc. | Interface for filtering for portal and webserver administration |
US20050256899A1 (en) * | 2004-05-14 | 2005-11-17 | Bea Systems, Inc. | System and method for representing hierarchical data structures |
US20050256906A1 (en) * | 2004-05-14 | 2005-11-17 | Bea Systems, Inc. | Interface for portal and webserver administration-efficient updates |
US7343379B2 (en) * | 2004-05-21 | 2008-03-11 | Bea Systems, Inc. | System and method for controls |
US7607126B2 (en) * | 2004-05-21 | 2009-10-20 | Bea Systems, Inc. | System and method for external override of annotations |
US7451433B2 (en) | 2004-05-21 | 2008-11-11 | Bea Systems, Inc. | System and method for descriptor classes |
US9280326B1 (en) | 2004-05-26 | 2016-03-08 | Synopsys, Inc. | Compiler retargeting based on instruction semantic models |
US8458060B2 (en) * | 2004-05-28 | 2013-06-04 | Vendavo, Inc. | System and method for organizing price modeling data using hierarchically organized portfolios |
US20060004861A1 (en) * | 2004-05-28 | 2006-01-05 | Albanese Michael J | System and method for displaying price modeling data |
US20050278227A1 (en) * | 2004-05-28 | 2005-12-15 | Niel Esary | Systems and methods of managing price modeling data through closed-loop analytics |
US8006225B1 (en) * | 2004-06-03 | 2011-08-23 | Synposys, Inc. | Method and system for automatic generation of instruction-set documentation from an abstract processor model described using a hierarchical architectural description language |
US7730482B2 (en) * | 2004-06-08 | 2010-06-01 | Covia Labs, Inc. | Method and system for customized programmatic dynamic creation of interoperability content |
US7360209B2 (en) * | 2004-07-16 | 2008-04-15 | Graphlogic Inc. | Object process graph application controller-viewer |
US8473893B2 (en) * | 2008-09-30 | 2013-06-25 | Accurev, Inc. | Integration of external software analysis processes with software configuration management applications |
US8341590B1 (en) | 2007-12-12 | 2012-12-25 | Accurev, Inc. | System for relating workflow status to code component status in a software project |
US8667465B2 (en) * | 2008-03-31 | 2014-03-04 | Accurev, Inc. | System for estimating a software product release time from version information |
US8548967B1 (en) * | 2007-12-12 | 2013-10-01 | Accurev, Inc. | System for visual query and manipulation of configuration management records |
US9292276B1 (en) | 2004-07-19 | 2016-03-22 | Micro Focus (IP) Development Limited | Method and system for utilizing change packages |
US20060031819A1 (en) * | 2004-08-06 | 2006-02-09 | Microsoft Corporation | Methods and apparatus for creating solutions |
US7698291B2 (en) * | 2004-08-26 | 2010-04-13 | Sap Ag | Method and system for integrating user-defined objects into a business management application |
US8051408B1 (en) * | 2004-09-13 | 2011-11-01 | The Mathworks, Inc. | Method of providing interactive usage descriptions based on source code analysis |
US20060059459A1 (en) * | 2004-09-13 | 2006-03-16 | Microsoft Corporation | Generating solution-based software documentation |
US7376933B2 (en) * | 2004-10-22 | 2008-05-20 | International Business Machines Corporation | System and method for creating application content using an open model driven architecture |
US8024703B2 (en) * | 2004-10-22 | 2011-09-20 | International Business Machines Corporation | Building an open model driven architecture pattern based on exemplars |
US20060101385A1 (en) * | 2004-10-22 | 2006-05-11 | Gerken Christopher H | Method and System for Enabling Roundtrip Code Protection in an Application Generator |
US20060101387A1 (en) * | 2004-10-22 | 2006-05-11 | Gerken Christopher H | An Open Model Driven Architecture Application Implementation Service |
US7783670B2 (en) * | 2004-11-18 | 2010-08-24 | Bea Systems, Inc. | Client server conversion for representing hierarchical data structures |
US7689999B2 (en) | 2004-12-01 | 2010-03-30 | Bea Systems, Inc. | Sharing dynamically changing resources in software systems |
US20060122724A1 (en) * | 2004-12-07 | 2006-06-08 | Photoronics, Inc. 15 Secor Road P.O. Box 5226 Brookfield, Connecticut 06804 | System and method for automatically generating a tooling specification using a logical operations utility that can be used to generate a photomask order |
US7627866B2 (en) | 2004-12-15 | 2009-12-01 | Bea Systems, Inc. | Systems and methods for dynamic application patching |
EP1674957A1 (en) * | 2004-12-21 | 2006-06-28 | Siemens Aktiengesellschaft | Rule based, distributed engineering |
US7814427B2 (en) * | 2005-01-05 | 2010-10-12 | Microsoft Corporation | Object model tree diagram |
US7774787B2 (en) * | 2005-01-11 | 2010-08-10 | Microsoft Corporation | Method for specifying and verifying multi-threaded object-oriented programs with invariants |
US7814457B2 (en) * | 2005-01-19 | 2010-10-12 | Sap Ag | System and method for revising flow diagrams displaying a process |
US7853931B2 (en) * | 2005-01-19 | 2010-12-14 | Sap Ag | System and method for automatically generating flow diagrams |
US7610576B2 (en) * | 2005-01-19 | 2009-10-27 | Sap Ag | System and method for simultaneous display of processes and associated files |
US8225283B2 (en) * | 2005-01-31 | 2012-07-17 | International Business Machines Corporation | Method and apparatus for enabling collaborative product development processes |
US7793255B1 (en) * | 2005-03-01 | 2010-09-07 | Oracle America, Inc. | System and method for maintaining alternate object views |
US7567975B2 (en) * | 2005-03-16 | 2009-07-28 | Oracle International Corporation | Incremental evaluation of complex event-condition-action rules in a database system |
US9129226B2 (en) * | 2011-12-04 | 2015-09-08 | Beyondcore, Inc. | Analyzing data sets with the help of inexpert humans to find patterns |
US10127130B2 (en) | 2005-03-18 | 2018-11-13 | Salesforce.Com | Identifying contributors that explain differences between a data set and a subset of the data set |
US20060230389A1 (en) * | 2005-04-12 | 2006-10-12 | Moulckers Ingrid M | System and method for specifying business requirements for dynamically generated runtime solution to a business problem |
US20060229894A1 (en) * | 2005-04-12 | 2006-10-12 | Moulckers Ingrid M | System and method for estimating expense and return on investment of a dynamically generated runtime solution to a business problem |
EP1615125A1 (en) * | 2005-04-14 | 2006-01-11 | Agilent Technologies, Inc. | Automatic source code generation |
US7590978B2 (en) * | 2005-04-15 | 2009-09-15 | Microsoft Corporation | Inferring object invariant method and system |
US7559054B2 (en) * | 2005-04-19 | 2009-07-07 | Microsoft Corporation | Abstract interpretation with a congruence abstract domain and/or a heap succession abstract domain |
US20060242194A1 (en) * | 2005-04-22 | 2006-10-26 | Igor Tsyganskiy | Systems and methods for modeling and manipulating a table-driven business application in an object-oriented environment |
US20060242171A1 (en) * | 2005-04-22 | 2006-10-26 | Igor Tsyganskiy | Methods of using code-based case tools to verify application layer configurations |
US8539003B2 (en) * | 2005-04-22 | 2013-09-17 | Sap Ag | Systems and methods for identifying problems of a business application in a customer support system |
US20060242197A1 (en) * | 2005-04-22 | 2006-10-26 | Igor Tsyganskiy | Methods of transforming application layer structure as objects |
US7958486B2 (en) * | 2005-04-22 | 2011-06-07 | Sap Ag | Methods and systems for data-focused debugging and tracing capabilities |
US7542980B2 (en) * | 2005-04-22 | 2009-06-02 | Sap Ag | Methods of comparing and merging business process configurations |
US20060242174A1 (en) * | 2005-04-22 | 2006-10-26 | Igor Tsyganskiy | Systems and methods for using object-oriented tools to debug business applications |
US20060242177A1 (en) * | 2005-04-22 | 2006-10-26 | Igor Tsyganskiy | Methods of exposing business application runtime exceptions at design time |
US7702638B2 (en) * | 2005-04-22 | 2010-04-20 | Sap Ag | Systems and methods for off-line modeling a business application |
US20060241961A1 (en) * | 2005-04-22 | 2006-10-26 | Igor Tsyganskiy | Methods of optimizing legacy application layer control structure using refactoring |
US20060293935A1 (en) * | 2005-04-22 | 2006-12-28 | Igor Tsyganskiy | Methods and systems for incrementally exposing business application errors using an integrated display |
US20060242188A1 (en) * | 2005-04-22 | 2006-10-26 | Igor Tsyganskiy | Methods of exposing a missing collection of application elements as deprecated |
US20060293934A1 (en) * | 2005-04-22 | 2006-12-28 | Igor Tsyganskiy | Methods and systems for providing an integrated business application configuration environment |
JP4855710B2 (en) * | 2005-04-28 | 2012-01-18 | 株式会社東芝 | Software plug-in method and application program |
US7886273B2 (en) * | 2005-04-29 | 2011-02-08 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Systems, methods and apparatus for generation and verification of policies in autonomic computing systems |
EP1734442A1 (en) * | 2005-05-19 | 2006-12-20 | Agilent Technologies, Inc. | Modular code generation |
US7634766B2 (en) * | 2005-05-20 | 2009-12-15 | Sun Microsystems, Inc. | Method and apparatus for pattern-based system design analysis using a meta model |
US7703074B2 (en) * | 2005-05-20 | 2010-04-20 | Oracle America, Inc. | Method and apparatus for tracking changes in a system |
US20060265700A1 (en) * | 2005-05-20 | 2006-11-23 | Sun Microsystems, Inc. | Method and apparatus for pattern-based system design analysis |
US7660802B2 (en) * | 2005-05-20 | 2010-02-09 | Sun Microsystems, Inc. | Method and apparatus for generating components for pattern-based system design analysis using a characteristics model |
US20060265697A1 (en) * | 2005-05-20 | 2006-11-23 | Sun Microsystems, Inc. | Pattern query language |
US7571434B1 (en) | 2005-05-20 | 2009-08-04 | Sun Microsystems, Inc. | Method and apparatus for transparent invocation of a characteristics extractor for pattern-based system design analysis |
US7653898B1 (en) | 2005-05-20 | 2010-01-26 | Sun Microsystems, Inc. | Method and apparatus for generating a characteristics model for a pattern-based system design analysis using a schema |
US20060277525A1 (en) * | 2005-06-06 | 2006-12-07 | Microsoft Corporation | Lexical, grammatical, and semantic inference mechanisms |
FR2887349B1 (en) * | 2005-06-21 | 2008-04-04 | Alcatel Sa | DATA PROCESSING METHOD COMPATIBLE WITH FORMALISM FOR MODELING OBJECTS |
CN101203862B (en) * | 2005-06-28 | 2011-03-23 | 埃克森美孚上游研究公司 | High-level graphical programming language and tool for oil well management programming |
US7437341B2 (en) * | 2005-06-29 | 2008-10-14 | American Express Travel Related Services Company, Inc. | System and method for selecting a suitable technical architecture to implement a proposed solution |
WO2008121098A1 (en) * | 2005-06-29 | 2008-10-09 | Sue Kunz | Software digital fingerprint |
US7480673B2 (en) * | 2005-07-06 | 2009-01-20 | International Business Machines Corporation | Optimized computer diagramming method |
US20070022405A1 (en) * | 2005-07-20 | 2007-01-25 | Caterpillar Inc. | Method and system for software design |
US8250226B2 (en) * | 2005-07-21 | 2012-08-21 | Ca, Inc. | Generating one or more clients for generating one or more synthetic transactions with one or more web service operations |
US20070027905A1 (en) * | 2005-07-29 | 2007-02-01 | Microsoft Corporation | Intelligent SQL generation for persistent object retrieval |
US7979472B2 (en) * | 2005-07-29 | 2011-07-12 | Sap Ag | Method for conditionally branching a validation |
US7870162B2 (en) * | 2005-07-29 | 2011-01-11 | Sap Ag | Method for generating properly formed expressions |
US20070027849A1 (en) * | 2005-07-29 | 2007-02-01 | Microsoft Corporation | Integrating query-related operators in a programming language |
US20070044083A1 (en) * | 2005-07-29 | 2007-02-22 | Microsoft Corporation | Lambda expressions |
US7702686B2 (en) * | 2005-07-29 | 2010-04-20 | Microsoft Corporation | Retrieving and persisting objects from/to relational databases |
US7685567B2 (en) * | 2005-07-29 | 2010-03-23 | Microsoft Corporation | Architecture that extends types using extension methods |
US7631011B2 (en) * | 2005-07-29 | 2009-12-08 | Microsoft Corporation | Code generation patterns |
US7752606B2 (en) * | 2005-08-10 | 2010-07-06 | Capital One Financial Corporation | Software development tool using a structured format to generate software code |
US8667395B2 (en) * | 2005-08-19 | 2014-03-04 | Nintendo Co., Ltd. | Method and apparatus for creating video game and entertainment demonstrations with full preview and/or other features |
US8196104B2 (en) * | 2005-08-31 | 2012-06-05 | Sap Ag | Systems and methods for testing application accessibility |
JP2007079954A (en) * | 2005-09-14 | 2007-03-29 | Sony Corp | Information processing method and device, recording medium and program |
US8719716B2 (en) | 2005-09-15 | 2014-05-06 | The Mathworks, Inc. | Locked element for use in a graphical modeling environment |
US20070067341A1 (en) * | 2005-09-20 | 2007-03-22 | International Business Machines Corporation | Automated user interface functional requirements tool |
US7752205B2 (en) | 2005-09-26 | 2010-07-06 | Bea Systems, Inc. | Method and system for interacting with a virtual content repository |
US7818344B2 (en) | 2005-09-26 | 2010-10-19 | Bea Systems, Inc. | System and method for providing nested types for content management |
US7917537B2 (en) | 2005-09-26 | 2011-03-29 | Oracle International Corporation | System and method for providing link property types for content management |
US7953734B2 (en) | 2005-09-26 | 2011-05-31 | Oracle International Corporation | System and method for providing SPI extensions for content management system |
JP4783612B2 (en) * | 2005-10-12 | 2011-09-28 | 富士通セミコンダクター株式会社 | Extended language specification designation method, program development method, program, and computer-readable storage medium |
US8930889B2 (en) * | 2005-11-17 | 2015-01-06 | The United States Of America, As Represented By The Secretary Of The Navy | Software modeling system and method |
US8397209B2 (en) * | 2005-11-17 | 2013-03-12 | The Government Of The United States Of America, As Represented By The Secretary Of The Navy | Software modeling system and method |
US20090125892A1 (en) * | 2005-11-18 | 2009-05-14 | Robert Arthur Crewdson | Computer Software Development System and Method |
AU2006315078B2 (en) * | 2005-11-18 | 2012-02-16 | Robert Arthur Crewdson | Computer software development system and method |
US8176468B2 (en) | 2005-12-01 | 2012-05-08 | Cypress Semiconductor Corporation | Multivariable transfer functions |
US7716639B2 (en) * | 2005-12-15 | 2010-05-11 | Abb Technology Ltd. | Specification wizard |
US20070143307A1 (en) * | 2005-12-15 | 2007-06-21 | Bowers Matthew N | Communication system employing a context engine |
US8464210B1 (en) * | 2005-12-22 | 2013-06-11 | Rockstar Consortium Us Lp | Software development and testing environment |
JP2007179165A (en) * | 2005-12-27 | 2007-07-12 | Internatl Business Mach Corp <Ibm> | Computer program and method for deriving stochastic performance evaluation model from ulm design model |
US7757204B2 (en) * | 2005-12-29 | 2010-07-13 | Sap Ag | Limiting extensibility of a visual modeling language |
US8983823B1 (en) * | 2005-12-29 | 2015-03-17 | The Mathworks, Inc. | Verification harness for automatically generating a text-based representation of a graphical model |
US8316344B2 (en) | 2005-12-30 | 2012-11-20 | Sap Ag | Software model deployment units |
US8402426B2 (en) | 2005-12-30 | 2013-03-19 | Sap Ag | Architectural design for make to stock application software |
US8522194B2 (en) | 2005-12-30 | 2013-08-27 | Sap Ag | Software modeling |
US8396731B2 (en) | 2005-12-30 | 2013-03-12 | Sap Ag | Architectural design for service procurement application software |
US8448137B2 (en) * | 2005-12-30 | 2013-05-21 | Sap Ag | Software model integration scenarios |
US8380553B2 (en) | 2005-12-30 | 2013-02-19 | Sap Ag | Architectural design for plan-driven procurement application software |
US7882486B2 (en) * | 2006-02-10 | 2011-02-01 | Microsoft Corporation | Adding interactivity to artwork |
US20120124550A1 (en) * | 2006-02-22 | 2012-05-17 | Robert Nocera | Facilitating database application code translation from a first application language to a second application language |
US8490048B2 (en) * | 2006-03-17 | 2013-07-16 | International Business Machines Corporation | Apparatus, system, and method for tool-based creation of a hub server/application interface |
US7415448B2 (en) * | 2006-03-20 | 2008-08-19 | Microsoft Corporation | Adaptive engine for processing geographic data |
US8442850B2 (en) | 2006-03-30 | 2013-05-14 | Sap Ag | Providing accounting software application as enterprise services |
US20070240128A1 (en) * | 2006-04-07 | 2007-10-11 | Patton Richard D | Systems and methods for generating a user interface using a domain specific language |
US7934193B2 (en) * | 2006-04-11 | 2011-04-26 | Rojer Alan S | Processing a module specification to produce a module definition |
US7962888B2 (en) * | 2006-04-11 | 2011-06-14 | Rojer Alan S | Producing unitary class definitions from module specifications |
US8091069B2 (en) * | 2006-04-11 | 2012-01-03 | Rojer Alan S | Module specification language and meta-module |
US20070244691A1 (en) * | 2006-04-17 | 2007-10-18 | Microsoft Corporation | Translation of user interface text strings |
US7784022B2 (en) * | 2006-04-25 | 2010-08-24 | Sap Ag | Mapping a new user interface onto an existing integrated interface |
US20070282719A1 (en) * | 2006-04-27 | 2007-12-06 | Zemah Haim | Platform generator for processing financial activities and management thereof |
US20080126264A1 (en) * | 2006-05-02 | 2008-05-29 | Tellefsen Jens E | Systems and methods for price optimization using business segmentation |
US8234630B2 (en) * | 2006-05-03 | 2012-07-31 | The Mathworks, Inc. | Calling an entity of a graphical model with a non-graphical entity and calling a non-graphical entity of a graphical model with a graphical entity |
JP2007304998A (en) * | 2006-05-12 | 2007-11-22 | Hitachi Software Eng Co Ltd | Source code generation method, device, and program |
WO2008143660A1 (en) * | 2006-05-12 | 2008-11-27 | Iosemantics, Llc | Generating and utilizing finite input output models, comparison of semantic models and software quality assurance |
WO2007133748A2 (en) * | 2006-05-15 | 2007-11-22 | Vendavo, Inc. | Systems and methods for price setting and triangulation |
JP2007328692A (en) * | 2006-06-09 | 2007-12-20 | Canon Inc | Algebra operation method and device therefor, and program |
US8006226B2 (en) * | 2006-06-09 | 2011-08-23 | Sorriso Technologies Inc. | Methods and apparatus for generating a web site from a use case |
US7844942B2 (en) * | 2006-06-12 | 2010-11-30 | International Business Machines Corporation | System and method for model driven transformation filtering |
US7610172B2 (en) * | 2006-06-16 | 2009-10-27 | Jpmorgan Chase Bank, N.A. | Method and system for monitoring non-occurring events |
US8024235B2 (en) * | 2006-06-21 | 2011-09-20 | Microsoft Corporation | Automatic search functionality within business applications |
CN101093493B (en) * | 2006-06-23 | 2011-08-31 | 国际商业机器公司 | Speech conversion method for database inquiry and converter |
US8522261B2 (en) * | 2006-06-30 | 2013-08-27 | Sap Ag | Using status models with state guards in a computer system |
US8200715B1 (en) | 2006-06-30 | 2012-06-12 | Sap Ag | Using status models with adaptable process steps in a computer system |
US8365200B1 (en) | 2006-06-30 | 2013-01-29 | Sap Ag | Using cancellation status models in a computer system |
US8706776B1 (en) | 2006-06-30 | 2014-04-22 | Sap Ag | Extending status models in a computer system |
CN101101547B (en) * | 2006-07-04 | 2012-07-18 | 霍尼韦尔(北京)技术研发实验有限公司 | Dynamic computer system and structure |
US8176467B2 (en) * | 2006-07-25 | 2012-05-08 | Harris Corporation | Computer program generation system and method thereof |
US7966599B1 (en) * | 2006-08-29 | 2011-06-21 | Adobe Systems Incorporated | Runtime library including a virtual file system |
US8200807B2 (en) * | 2006-08-31 | 2012-06-12 | The Mathworks, Inc. | Non-blocking local events in a state-diagramming environment |
US7917890B2 (en) * | 2006-08-31 | 2011-03-29 | Jon Barcellona | Enterprise-scale application development framework utilizing code generation |
US8589869B2 (en) * | 2006-09-07 | 2013-11-19 | Wolfram Alpha Llc | Methods and systems for determining a formula |
US8381180B2 (en) * | 2006-09-08 | 2013-02-19 | Sap Ag | Visually exposing data services to analysts |
US7584163B2 (en) * | 2006-09-14 | 2009-09-01 | Sap Ag | Method and system for expression evaluation |
WO2008034170A1 (en) * | 2006-09-20 | 2008-03-27 | National Ict Australia Limited | Generating a transition system for use with model checking |
US7904953B2 (en) * | 2006-09-22 | 2011-03-08 | Bea Systems, Inc. | Pagelets |
US8127278B2 (en) | 2006-09-28 | 2012-02-28 | Sap Ag | System and method for extending legacy applications with undo/redo functionality |
US7647522B2 (en) * | 2006-09-28 | 2010-01-12 | Microsoft Corporation | Operating system with corrective action service and isolation |
US8156480B2 (en) | 2006-09-29 | 2012-04-10 | Intel Corporation | Methods and apparatus to form a resilient objective instruction construct |
US8146051B2 (en) * | 2006-10-02 | 2012-03-27 | International Business Machines Corporation | Method and computer program product for providing a representation of software modeled by a model |
US8463852B2 (en) | 2006-10-06 | 2013-06-11 | Oracle International Corporation | Groupware portlets for integrating a portal with groupware systems |
US8739137B2 (en) * | 2006-10-19 | 2014-05-27 | Purdue Research Foundation | Automatic derivative method for a computer programming language |
US20080095196A1 (en) * | 2006-10-20 | 2008-04-24 | Rockwell Automation Technologies, Inc. | Unit to unit transfer synchronization |
US8601435B2 (en) * | 2006-10-20 | 2013-12-03 | Rockwell Automation Technologies, Inc. | Module class subsets for industrial control |
US8392008B2 (en) * | 2006-10-20 | 2013-03-05 | Rockwell Automation Technologies, Inc. | Module arbitration and ownership enhancements |
US7844349B2 (en) * | 2006-10-20 | 2010-11-30 | Rockwell Automation Technologies, Inc. | Standard MES interface for discrete manufacturing |
US7894917B2 (en) * | 2006-10-20 | 2011-02-22 | Rockwell Automation Technologies, Inc. | Automatic fault tuning |
JP4589294B2 (en) | 2006-11-21 | 2010-12-01 | 富士通株式会社 | Design / verification support program and recording medium recording the program |
EP1926019B1 (en) * | 2006-11-24 | 2012-05-16 | Tangro Software Components GmbH | Data exchange method and control method between software components as well as reusable software components. |
GB0624168D0 (en) * | 2006-12-04 | 2007-01-10 | Axiom Systems Ltd | Service assembly and delivery |
US8930890B2 (en) * | 2006-12-05 | 2015-01-06 | International Business Machines Corporation | Software model skinning |
US8756561B2 (en) * | 2006-12-05 | 2014-06-17 | International Business Machines Corporation | Software model normalization and mediation |
US7926026B2 (en) * | 2006-12-20 | 2011-04-12 | Sap Ag | Graphical analysis to detect process object anomalies |
US8689174B2 (en) * | 2006-12-28 | 2014-04-01 | Sap Ag | Extensibility of pattern components |
US8219650B2 (en) * | 2006-12-28 | 2012-07-10 | Sap Ag | Communicating with a status management component in a computer system |
US8843883B2 (en) * | 2007-01-03 | 2014-09-23 | International Business Machines Corporation | System and method for model-driven dashboard for business performance management |
US8161454B2 (en) * | 2007-01-22 | 2012-04-17 | Ford Motor Company | Software architecture for developing in-vehicle software applications |
US8812957B2 (en) * | 2007-01-31 | 2014-08-19 | Adobe Systems Incorporated | Relevance slider in a site analysis report |
US8997091B1 (en) * | 2007-01-31 | 2015-03-31 | Emc Corporation | Techniques for compliance testing |
US8099491B2 (en) * | 2007-01-31 | 2012-01-17 | Adobe Systems Incorporated | Intelligent node positioning in a site analysis report |
WO2008097801A2 (en) * | 2007-02-05 | 2008-08-14 | Skyway Software, Inc. | Method and system for creating, deploying, and utilizing a service |
US8336025B1 (en) | 2007-02-08 | 2012-12-18 | The Mathworks, Inc. | Pattern modeling methods and systems |
US8776015B1 (en) * | 2007-02-08 | 2014-07-08 | The Mathworks, Inc. | Pattern modeling methods and systems |
US8904340B2 (en) * | 2007-02-13 | 2014-12-02 | International Business Machines Corporation | Use of temporary optimized settings to reduce cycle time of automatically created spreadsheets |
KR100871563B1 (en) * | 2007-02-14 | 2008-12-02 | 삼성전자주식회사 | Apparatus and method for developing software based on component |
US8768689B2 (en) * | 2007-02-14 | 2014-07-01 | Nuance Communications, Inc. | Method and system for translation management of source language text phrases |
EP1965300A1 (en) * | 2007-03-02 | 2008-09-03 | Siemens Aktiengesellschaft | A method for validating a graphical workflow translation |
US20080235658A1 (en) * | 2007-03-21 | 2008-09-25 | Asaf Adi | Code generation for real-time event processing |
US20080256390A1 (en) * | 2007-04-13 | 2008-10-16 | Chaar Jarir K | Project Induction in a Software Factory |
US8327318B2 (en) * | 2007-04-13 | 2012-12-04 | International Business Machines Corporation | Software factory health monitoring |
US8566777B2 (en) * | 2007-04-13 | 2013-10-22 | International Business Machines Corporation | Work packet forecasting in a software factory |
US8359566B2 (en) * | 2007-04-13 | 2013-01-22 | International Business Machines Corporation | Software factory |
US8296719B2 (en) * | 2007-04-13 | 2012-10-23 | International Business Machines Corporation | Software factory readiness review |
US8141040B2 (en) * | 2007-04-13 | 2012-03-20 | International Business Machines Corporation | Assembling work packets within a software factory |
US8464205B2 (en) * | 2007-04-13 | 2013-06-11 | International Business Machines Corporation | Life cycle of a work packet in a software factory |
US8214796B2 (en) * | 2007-04-20 | 2012-07-03 | National Instruments Corporation | Event firing node for asynchronously passing events from a graphical data flow program to a statechart |
US8640100B2 (en) * | 2007-04-20 | 2014-01-28 | National Instruments Corporation | Debugging a statechart using a graphical program |
US8566793B2 (en) * | 2007-04-27 | 2013-10-22 | International Business Machines Corporation | Detecting and displaying errors in database statements within integrated development environment tool |
US8392880B2 (en) * | 2007-04-27 | 2013-03-05 | International Business Machines Corporation | Rapid application development for database-aware applications |
US9047337B2 (en) * | 2007-04-27 | 2015-06-02 | International Business Machines Corporation | Database connectivity and database model integration within integrated development environment tool |
US9489418B2 (en) | 2007-04-27 | 2016-11-08 | International Business Machines Corporation | Processing database queries embedded in application source code from within integrated development environment tool |
US20080276221A1 (en) * | 2007-05-02 | 2008-11-06 | Sap Ag. | Method and apparatus for relations planning and validation |
CN101681263B (en) * | 2007-05-16 | 2013-12-04 | 国际商业机器公司 | A consistent method system for developing software asset based solutions |
US8060868B2 (en) * | 2007-06-21 | 2011-11-15 | Microsoft Corporation | Fully capturing outer variables as data objects |
US8090735B2 (en) * | 2007-06-22 | 2012-01-03 | International Business Machines Corporation | Statement generation using statement patterns |
US8375351B2 (en) * | 2007-06-23 | 2013-02-12 | International Business Machines Corporation | Extensible rapid application development for disparate data sources |
US10783463B2 (en) * | 2007-06-27 | 2020-09-22 | International Business Machines Corporation | System, method and program for tracking labor costs |
US8001519B2 (en) * | 2007-06-27 | 2011-08-16 | International Business Machines Corporation | Model driven development including aspect integration tool |
US7702695B2 (en) * | 2007-06-27 | 2010-04-20 | Microsoft Corporation | Object relational map verification system |
US8020144B2 (en) * | 2007-06-29 | 2011-09-13 | Microsoft Corporation | Metadata-based application deployment |
US8200604B2 (en) | 2007-06-29 | 2012-06-12 | Microsoft Corporation | Multi-platform business calculation rule language and execution environment |
US20090024979A1 (en) * | 2007-07-20 | 2009-01-22 | International Business Machines Corporation | Method and system for configuring a user interface |
US8141030B2 (en) * | 2007-08-07 | 2012-03-20 | International Business Machines Corporation | Dynamic routing and load balancing packet distribution with a software factory |
US8250534B2 (en) * | 2007-08-09 | 2012-08-21 | Infonovus Technologies, Llc | Method and system for constructing a software application from a complete and consistent specification in a software development process |
US8473910B2 (en) * | 2007-08-09 | 2013-06-25 | Infonovus Technologies, Llc | Method and system for defining a software application as a complete and consistent specification in a software development process |
US8332807B2 (en) * | 2007-08-10 | 2012-12-11 | International Business Machines Corporation | Waste determinants identification and elimination process model within a software factory operating environment |
US8689194B1 (en) | 2007-08-20 | 2014-04-01 | The Mathworks, Inc. | Optimization identification |
US9189757B2 (en) * | 2007-08-23 | 2015-11-17 | International Business Machines Corporation | Monitoring and maintaining balance of factory quality attributes within a software factory environment |
US8539437B2 (en) * | 2007-08-30 | 2013-09-17 | International Business Machines Corporation | Security process model for tasks within a software factory |
EP3023876A1 (en) * | 2007-08-31 | 2016-05-25 | Phase Change Software LLC | Quality assurance tools for use with source code and a semantic model |
US8429618B2 (en) * | 2007-09-19 | 2013-04-23 | Siemens Industry, Inc. | Parametric regular object types with comprehensions for automated generation of software test fixtures |
WO2009042129A2 (en) * | 2007-09-24 | 2009-04-02 | Simio Llc | A system and method for creating intelligent simulation objects using graphical process descriptions |
US8091094B2 (en) | 2007-10-10 | 2012-01-03 | Sap Ag | Methods and systems for ambistateful backend control |
US8381174B2 (en) * | 2007-10-31 | 2013-02-19 | National Instruments Corporation | Global variable structure in a graphical program |
US8316346B2 (en) | 2007-11-06 | 2012-11-20 | International Business Machines Corporation | Method and system for selecting a software architecture for implementing service integration |
JP5226283B2 (en) * | 2007-11-15 | 2013-07-03 | キヤノン株式会社 | Information processing apparatus, information processing system, method, and program |
US8671121B2 (en) | 2007-11-26 | 2014-03-11 | International Business Machines Corporation | Model augmentation in a model-driven application development environment |
US8266519B2 (en) * | 2007-11-27 | 2012-09-11 | Accenture Global Services Limited | Document analysis, commenting, and reporting system |
US8412516B2 (en) * | 2007-11-27 | 2013-04-02 | Accenture Global Services Limited | Document analysis, commenting, and reporting system |
US8271870B2 (en) * | 2007-11-27 | 2012-09-18 | Accenture Global Services Limited | Document analysis, commenting, and reporting system |
EP2071451A1 (en) * | 2007-12-07 | 2009-06-17 | Alcatel Lucent | Device and method for building compilable and executable applications from specifications expressed by classes |
US8458648B2 (en) * | 2007-12-10 | 2013-06-04 | International Business Machines Corporation | Graphical modelization of user interfaces for data intensive applications |
US8447657B2 (en) | 2007-12-31 | 2013-05-21 | Sap Ag | Architectural design for service procurement application software |
US8782618B1 (en) * | 2008-01-08 | 2014-07-15 | The Mathworks, Inc. | Instrument based processing |
US8468117B1 (en) * | 2008-01-22 | 2013-06-18 | Salesforce.Com, Inc. | System, method and computer program product for creating a visual component for tenants of an on-demand database service |
US8458667B2 (en) * | 2008-01-30 | 2013-06-04 | National Instruments Corporation | Debugging a statechart for a real time target |
US8370795B1 (en) * | 2008-01-31 | 2013-02-05 | Intuit Inc. | Method and system for explaining a value of a field in a form |
US8196112B1 (en) | 2008-02-15 | 2012-06-05 | Amazon Technologies, Inc. | Systems and methods for testing widgets in computer environments |
US20090210853A1 (en) * | 2008-02-19 | 2009-08-20 | Anand Kumar | Systems and apparatus for software development |
US8271951B2 (en) * | 2008-03-04 | 2012-09-18 | International Business Machines Corporation | System and methods for collecting software development feedback |
KR100994070B1 (en) * | 2008-03-19 | 2010-11-11 | (주)케투씨소프트 | A Reserved Component Container Based Software Development Method and Apparatus |
US20110010692A1 (en) * | 2008-03-21 | 2011-01-13 | The Bank Of Tokyo-Mitsubishi Ufj, Ltd. | Application development support device, program and storage medium |
US8504980B1 (en) | 2008-04-14 | 2013-08-06 | Sap Ag | Constraining data changes during transaction processing by a computer system |
US20100058198A1 (en) * | 2008-04-16 | 2010-03-04 | Modria, Inc. | Collaborative realtime planning using a model driven architecture and iterative planning tools |
US20090271765A1 (en) * | 2008-04-29 | 2009-10-29 | Microsoft Corporation | Consumer and producer specific semantics of shared object protocols |
US20090276757A1 (en) * | 2008-04-30 | 2009-11-05 | Fraunhofer Usa, Inc. | Systems and methods for inference and management of software code architectures |
US20090282384A1 (en) * | 2008-05-12 | 2009-11-12 | Raytheon Company | Framework-Based Model-Driven Software Development |
US8850409B2 (en) * | 2008-05-21 | 2014-09-30 | Optumsoft, Inc. | Notification-based constraint set translation to imperative execution |
US8595044B2 (en) * | 2008-05-29 | 2013-11-26 | International Business Machines Corporation | Determining competence levels of teams working within a software |
US8667469B2 (en) * | 2008-05-29 | 2014-03-04 | International Business Machines Corporation | Staged automated validation of work packets inputs and deliverables in a software factory |
US8010512B2 (en) * | 2008-06-16 | 2011-08-30 | International Business Machines Corporation | System and method for model-driven object store |
US8732838B2 (en) * | 2008-06-26 | 2014-05-20 | Microsoft Corporation | Evaluating the effectiveness of a threat model |
US8677310B2 (en) * | 2008-06-30 | 2014-03-18 | Rockwell Automation Technologies, Inc. | Industry template abstracting and creation for use in industrial automation and information solutions |
US8255869B2 (en) * | 2008-06-30 | 2012-08-28 | Rockwell Automation Technologies, Inc. | Industry template customization and transclusion for use in industrial automation and information solutions |
US8245191B2 (en) * | 2008-07-03 | 2012-08-14 | International Business Machines Corporation | Policy application rules for automated configuration of software components |
US9639331B2 (en) | 2008-07-09 | 2017-05-02 | International Business Machines Corporation | Service interface creation and modification for object-oriented services |
JP4894826B2 (en) | 2008-07-14 | 2012-03-14 | ソニー株式会社 | COMMUNICATION DEVICE, COMMUNICATION SYSTEM, NOTIFICATION METHOD, AND PROGRAM |
US8527329B2 (en) * | 2008-07-15 | 2013-09-03 | International Business Machines Corporation | Configuring design centers, assembly lines and job shops of a global delivery network into “on demand” factories |
US8452629B2 (en) * | 2008-07-15 | 2013-05-28 | International Business Machines Corporation | Work packet enabled active project schedule maintenance |
US8140367B2 (en) | 2008-07-22 | 2012-03-20 | International Business Machines Corporation | Open marketplace for distributed service arbitrage with integrated risk management |
US20100023920A1 (en) * | 2008-07-22 | 2010-01-28 | International Business Machines Corporation | Intelligent job artifact set analyzer, optimizer and re-constructor |
US8418126B2 (en) * | 2008-07-23 | 2013-04-09 | International Business Machines Corporation | Software factory semantic reconciliation of data models for work packets |
US8375370B2 (en) * | 2008-07-23 | 2013-02-12 | International Business Machines Corporation | Application/service event root cause traceability causal and impact analyzer |
US8271949B2 (en) * | 2008-07-31 | 2012-09-18 | International Business Machines Corporation | Self-healing factory processes in a software factory |
US8448129B2 (en) * | 2008-07-31 | 2013-05-21 | International Business Machines Corporation | Work packet delegation in a software factory |
US8336026B2 (en) * | 2008-07-31 | 2012-12-18 | International Business Machines Corporation | Supporting a work packet request with a specifically tailored IDE |
US20100031175A1 (en) * | 2008-08-04 | 2010-02-04 | Michael Lee Kijewski | Computerized method for relating variables in user-defined equations to dimensions on digital drawings |
EP2329376A1 (en) * | 2008-08-15 | 2011-06-08 | Verum Holding B.V. | A method and system for testing complex machine control software |
AU2009287407A1 (en) * | 2008-08-26 | 2010-03-04 | Cinergix Pty Ltd | Modelling of systems |
US8401928B2 (en) * | 2008-09-18 | 2013-03-19 | Sap Ag | Providing supplier relationship management software application as enterprise services |
US8584085B2 (en) * | 2008-09-24 | 2013-11-12 | Accenture Global Services Limited | Identification of concepts in software |
US9335761B2 (en) * | 2008-09-30 | 2016-05-10 | Rockwell Automation Technologies, Inc. | Procedure classification for industrial automation |
US20100088685A1 (en) * | 2008-10-06 | 2010-04-08 | Microsoft Corporation | System and method for mapping a domain modeling language to a relational store |
US8356288B2 (en) * | 2008-11-10 | 2013-01-15 | Sap Ag | Method and apparatus for monitoring runtime of persistence applications |
JP2010128583A (en) * | 2008-11-25 | 2010-06-10 | Toshiba Corp | Test-facilitating design apparatus, its method and program |
US8401908B2 (en) | 2008-12-03 | 2013-03-19 | Sap Ag | Architectural design for make-to-specification application software |
JP5327230B2 (en) * | 2008-12-05 | 2013-10-30 | 富士通株式会社 | Operation management support program, recording medium recording the program, operation management support device, and operation management support method |
US8671035B2 (en) | 2008-12-11 | 2014-03-11 | Sap Ag | Providing payroll software application as enterprise services |
US8949788B2 (en) * | 2008-12-17 | 2015-02-03 | Red Hat, Inc. | Building and packaging software |
US8495596B1 (en) * | 2009-02-09 | 2013-07-23 | Amdocs Software Systems Limited | System, method, and computer program for interfacing an automatic operational support system with a legacy operational support system |
US20100235275A1 (en) * | 2009-03-06 | 2010-09-16 | Carl Ansley | Card Processing |
US8849873B2 (en) * | 2009-03-18 | 2014-09-30 | Bentley Systems, Incorporated | Specifications automation system and method |
TW201106251A (en) | 2009-04-24 | 2011-02-16 | Ibm | Editing apparatus, editing method and program |
US8601015B1 (en) | 2009-05-15 | 2013-12-03 | Wolfram Alpha Llc | Dynamic example generation for queries |
US8788524B1 (en) | 2009-05-15 | 2014-07-22 | Wolfram Alpha Llc | Method and system for responding to queries in an imprecise syntax |
JP5304475B2 (en) * | 2009-06-23 | 2013-10-02 | 富士通株式会社 | Information processing apparatus and information processing method |
US8595697B2 (en) * | 2009-07-01 | 2013-11-26 | International Business Machines Corporation | Serializing a templated markup language representation of test artifacts |
FR2948788B1 (en) * | 2009-07-30 | 2011-09-16 | Xaga Network | APPLICATION MANAGEMENT SYSTEM |
US8589858B1 (en) * | 2009-09-14 | 2013-11-19 | Lockheed Martin Corporation | Requirement manager for UML and SysML application |
US8706771B2 (en) * | 2009-09-30 | 2014-04-22 | Smartshift Gmbh | Systems and methods for analyzing and transforming an application from a source installation to a target installation |
US8301168B2 (en) * | 2009-10-16 | 2012-10-30 | At&T Mobility Ii Llc | Devices and methods for selectively filtering message content |
US10185594B2 (en) * | 2009-10-29 | 2019-01-22 | International Business Machines Corporation | System and method for resource identification |
US8436867B1 (en) * | 2009-11-06 | 2013-05-07 | Pixar | System and method for generating computer graphic images by identifying variant and invariant shader arguments |
US8677313B2 (en) * | 2009-11-30 | 2014-03-18 | Accenture Global Services Limited | Functional design creation tool |
US8707250B2 (en) * | 2009-12-22 | 2014-04-22 | Board Of Regents, The University Of Texas System | Automation support for domain modeling |
US8549353B2 (en) * | 2009-12-29 | 2013-10-01 | Microgen Aptitutde Limited | Batch processing error handling modes |
US8997053B2 (en) * | 2010-01-14 | 2015-03-31 | Worksoft, Inc. | System and method for automated testing of software applications with dynamic user interfaces spanning multiple technologies |
US20110191748A1 (en) * | 2010-01-29 | 2011-08-04 | International Business Machines Corporation | Systems and methods for design time service verification and validation |
EP2362333A1 (en) | 2010-02-19 | 2011-08-31 | Accenture Global Services Limited | System for requirement identification and analysis based on capability model structure |
US20110213637A1 (en) * | 2010-02-26 | 2011-09-01 | Gm Global Technology Operations, Inc | Requirements engineering tool called requirement editor |
US9116708B2 (en) * | 2010-03-05 | 2015-08-25 | Nec Corporation | Program creation support apparatus, program, and information system |
US8949773B2 (en) * | 2010-03-25 | 2015-02-03 | International Business Machines Corporation | Deriving process models from natural language use case models |
US9146913B2 (en) | 2010-03-29 | 2015-09-29 | Bentley Systems, Incorporated | Specifications automation system and method |
US8701080B2 (en) | 2010-04-05 | 2014-04-15 | Accenture Global Services Limited | Template components having constraints representative of best practices in integration software development |
US8495580B2 (en) | 2010-04-07 | 2013-07-23 | International Business Machines Corporation | Facilitating use of model transformations |
US8739118B2 (en) | 2010-04-08 | 2014-05-27 | Microsoft Corporation | Pragmatic mapping specification, compilation and validation |
US8484015B1 (en) | 2010-05-14 | 2013-07-09 | Wolfram Alpha Llc | Entity pages |
US20110302551A1 (en) * | 2010-06-02 | 2011-12-08 | Hummel Jr David Martin | System and method for analytic process design |
US8473895B2 (en) * | 2010-06-08 | 2013-06-25 | Microsoft Corporation | Providing diverse solutions using design space exploration |
US20110314449A1 (en) * | 2010-06-18 | 2011-12-22 | Infosys Technologies Limited | Method and system for estimating effort for maintenance of software |
US8607191B2 (en) * | 2010-06-30 | 2013-12-10 | International Business Machines Corporation | Automated discovery of programmatic resources |
US8566731B2 (en) | 2010-07-06 | 2013-10-22 | Accenture Global Services Limited | Requirement statement manipulation system |
US8572574B2 (en) * | 2010-07-16 | 2013-10-29 | Fujitsu Limited | Solving hybrid constraints to validate specification requirements of a software module |
US8812298B1 (en) | 2010-07-28 | 2014-08-19 | Wolfram Alpha Llc | Macro replacement of natural language input |
US8510650B2 (en) * | 2010-08-11 | 2013-08-13 | Stephen J. Garland | Multiple synchronized views for creating, analyzing, editing, and using mathematical formulas |
US8407073B2 (en) | 2010-08-25 | 2013-03-26 | International Business Machines Corporation | Scheduling resources from a multi-skill multi-level human resource pool |
US9087236B2 (en) * | 2010-09-13 | 2015-07-21 | International Business Machines Corporation | Automated recognition of process modeling semantics in flow diagrams |
US8776014B2 (en) | 2010-09-23 | 2014-07-08 | Microsoft Corporation | Software build analysis |
US9177017B2 (en) * | 2010-09-27 | 2015-11-03 | Microsoft Technology Licensing, Llc | Query constraint encoding with type-based state machine |
WO2012048162A2 (en) | 2010-10-08 | 2012-04-12 | Irise | System and method for extending a visualization platform |
WO2012069077A1 (en) * | 2010-11-23 | 2012-05-31 | Nokia Siemens Networks Oy | Network element configuration management |
CN103299292B (en) * | 2010-12-02 | 2016-01-20 | Sk电信有限公司 | For the treatment of method and the equipment thereof of natural language and mathematical formulae |
US9069448B2 (en) * | 2010-12-03 | 2015-06-30 | Salesforce.Com, Inc. | Filtering objects in a multi-tenant environment |
EP2466455A1 (en) * | 2010-12-15 | 2012-06-20 | Schneider Electric Buildings AB | Definition of objects in object-oriented programming environments |
US20120180033A1 (en) * | 2011-01-12 | 2012-07-12 | David Amos Brown | System and Methodology for Autonomous, Value-Centric, Architectural, Software Programming |
US9015011B2 (en) * | 2011-01-25 | 2015-04-21 | Accenture Global Services Limited | Assistant tool |
US9280442B1 (en) | 2011-01-27 | 2016-03-08 | Trimble Navigation Limited | System and method for generating coverage reports for software unit tests |
US9043759B1 (en) | 2011-01-27 | 2015-05-26 | Trimble Navigation Limited | System and method for generating software unit tests simultaneously with API documentation |
US9400778B2 (en) | 2011-02-01 | 2016-07-26 | Accenture Global Services Limited | System for identifying textual relationships |
US8856734B2 (en) | 2011-03-11 | 2014-10-07 | Oracle International Corporation | Type-safe dependency injection of services into enterprise components |
US8706881B2 (en) * | 2011-03-22 | 2014-04-22 | Oracle International Corporation | Automatic registration of enterprise resources in a dynamic module system services registry |
US20120246609A1 (en) | 2011-03-24 | 2012-09-27 | International Business Machines Corporation | Automatic generation of user stories for software products via a product content space |
US9319359B1 (en) | 2011-03-31 | 2016-04-19 | Twitter, Inc. | Promoting content in a real-time messaging platform |
US10543715B2 (en) | 2016-09-08 | 2020-01-28 | Stempf Automotive Industries, Inc. | Wheel centering sleeve |
US9117227B1 (en) | 2011-03-31 | 2015-08-25 | Twitter, Inc. | Temporal features in a messaging platform |
US8682895B1 (en) * | 2011-03-31 | 2014-03-25 | Twitter, Inc. | Content resonance |
WO2012141996A1 (en) * | 2011-04-10 | 2012-10-18 | Requirementslive Llc | Portable business language and automated software application development system |
US8935654B2 (en) | 2011-04-21 | 2015-01-13 | Accenture Global Services Limited | Analysis system for test artifact generation |
US9817677B2 (en) * | 2011-04-22 | 2017-11-14 | Microsoft Technologies Licensing, LLC | Rule based data driven validation |
JP2012238235A (en) * | 2011-05-12 | 2012-12-06 | Canon Inc | Program verification device and program |
US9123002B2 (en) * | 2011-05-27 | 2015-09-01 | Abbott Informatics Corporation | Graphically based method for developing rules for managing a laboratory workflow |
US8660878B2 (en) | 2011-06-15 | 2014-02-25 | International Business Machines Corporation | Model-driven assignment of work to a software factory |
US9063672B2 (en) * | 2011-07-11 | 2015-06-23 | Honeywell International Inc. | Systems and methods for verifying model equivalence |
US9268665B2 (en) | 2011-07-26 | 2016-02-23 | Trimble Navigation Limited | System and method for identifying fault prone computer code files |
US9069814B2 (en) | 2011-07-27 | 2015-06-30 | Wolfram Alpha Llc | Method and system for using natural language to generate widgets |
US8676864B2 (en) * | 2011-08-19 | 2014-03-18 | Salesforce.Com, Inc. | Methods and systems for providing schema layout in an on-demand services environment |
US9507871B2 (en) * | 2011-08-29 | 2016-11-29 | The Boeing Company | Methods and systems for a state-based web framework architecture |
US9063673B2 (en) * | 2011-08-30 | 2015-06-23 | Uniquesoft, Llc | System and method for implementing application code from application requirements |
US9734252B2 (en) | 2011-09-08 | 2017-08-15 | Wolfram Alpha Llc | Method and system for analyzing data using a query answering system |
US8898628B2 (en) | 2011-09-23 | 2014-11-25 | Ahmad RAZA | Method and an apparatus for developing software |
US8943470B2 (en) * | 2011-09-23 | 2015-01-27 | The Mathworks, Inc. | Requirements framework |
US9940327B2 (en) * | 2011-10-12 | 2018-04-10 | International Business Machines Corporation | Method for generating workflow from business specification |
US9244819B2 (en) * | 2011-10-31 | 2016-01-26 | International Business Machines Corporation | Attribute value properties for test selection with cartesian product models |
US9851950B2 (en) | 2011-11-15 | 2017-12-26 | Wolfram Alpha Llc | Programming in a precise syntax using natural language |
US10802687B2 (en) | 2011-12-04 | 2020-10-13 | Salesforce.Com, Inc. | Displaying differences between different data sets of a process |
US10796232B2 (en) | 2011-12-04 | 2020-10-06 | Salesforce.Com, Inc. | Explaining differences between predicted outcomes and actual outcomes of a process |
US8577840B2 (en) * | 2012-01-03 | 2013-11-05 | International Business Machines Corporation | Replication of data sets |
GB2490190A (en) * | 2012-01-11 | 2012-10-24 | Accenture Global Services Ltd | Testing a requirement statement using a grammatical parser and applying a test artefact rule set. |
CN102609402B (en) * | 2012-01-12 | 2014-02-12 | 北京航空航天大学 | Device and method for generation and management of ontology model based on real-time strategy |
WO2013111316A1 (en) * | 2012-01-27 | 2013-08-01 | 富士通株式会社 | Information processing method, device and program |
US9152385B2 (en) * | 2012-02-22 | 2015-10-06 | GM Global Technology Operations LLC | Systems and methods for generating high-quality formal executable software feature requirements |
US9021420B2 (en) * | 2012-03-02 | 2015-04-28 | Xerox Corporation | Deployment of business processes in service-oriented architecture environments |
US20130246995A1 (en) * | 2012-03-13 | 2013-09-19 | Outsystems - Software Em Rede S.A. | Systems, methods, and apparatus for model-based security control |
US9389872B2 (en) * | 2012-03-16 | 2016-07-12 | Vmware, Inc. | Software wizard implementation framework |
US9075616B2 (en) * | 2012-03-19 | 2015-07-07 | Enterpriseweb Llc | Declarative software application meta-model and system for self-modification |
US9977655B2 (en) * | 2012-03-20 | 2018-05-22 | Massively Parallel Technologies, Inc. | System and method for automatic extraction of software design from requirements |
US9424168B2 (en) * | 2012-03-20 | 2016-08-23 | Massively Parallel Technologies, Inc. | System and method for automatic generation of software test |
US8996472B2 (en) | 2012-04-16 | 2015-03-31 | Sap Se | Verification of status schemas based on business goal definitions |
US9400983B1 (en) | 2012-05-10 | 2016-07-26 | Jpmorgan Chase Bank, N.A. | Method and system for implementing behavior isolating prediction model |
US8850407B2 (en) * | 2012-05-23 | 2014-09-30 | Hewlett-Packard Development Company, L.P. | Test script generation |
US9400639B2 (en) | 2012-06-22 | 2016-07-26 | Microsoft Technology Licensing, Llc | Generating programs using context-free compositions and probability of determined transformation rules |
US9460200B2 (en) | 2012-07-02 | 2016-10-04 | International Business Machines Corporation | Activity recommendation based on a context-based electronic files search |
US8903813B2 (en) | 2012-07-02 | 2014-12-02 | International Business Machines Corporation | Context-based electronic document search using a synthetic event |
US8898165B2 (en) | 2012-07-02 | 2014-11-25 | International Business Machines Corporation | Identification of null sets in a context-based electronic document search |
US9098586B1 (en) | 2012-07-05 | 2015-08-04 | EarthNetTV Inc. | Private user interest recognition and targeted recommendation system |
US20140012740A1 (en) * | 2012-07-06 | 2014-01-09 | Great Bridge Corporation | Collecting and analyzing transaction datacollecting and analyzing transaction and demographic data to fulfill queries and target surveys |
US9027001B2 (en) | 2012-07-10 | 2015-05-05 | Honeywell International Inc. | Systems and methods for verifying expression folding |
US8966441B2 (en) * | 2012-07-12 | 2015-02-24 | Oracle International Corporation | Dynamic scripts to extend static applications |
US9009736B2 (en) * | 2012-07-26 | 2015-04-14 | Sap Se | Function execution framework wrapper layer |
US8996473B2 (en) | 2012-08-06 | 2015-03-31 | Sap Se | Checking compatibility of extended and core SAM schemas based on complex goals |
US9262499B2 (en) | 2012-08-08 | 2016-02-16 | International Business Machines Corporation | Context-based graphical database |
US20140052757A1 (en) * | 2012-08-17 | 2014-02-20 | International Business Machines Corporation | Techniques providing a software fitting assessment |
US8959119B2 (en) | 2012-08-27 | 2015-02-17 | International Business Machines Corporation | Context-based graph-relational intersect derived database |
US9405424B2 (en) | 2012-08-29 | 2016-08-02 | Wolfram Alpha, Llc | Method and system for distributing and displaying graphical items |
US20150019537A1 (en) | 2012-09-07 | 2015-01-15 | Splunk Inc. | Generating Reports from Unstructured Data |
US8788525B2 (en) * | 2012-09-07 | 2014-07-22 | Splunk Inc. | Data model for machine data for semantic search |
US9582585B2 (en) | 2012-09-07 | 2017-02-28 | Splunk Inc. | Discovering fields to filter data returned in response to a search |
US8620958B1 (en) | 2012-09-11 | 2013-12-31 | International Business Machines Corporation | Dimensionally constrained synthetic context objects database |
US9619580B2 (en) | 2012-09-11 | 2017-04-11 | International Business Machines Corporation | Generation of synthetic context objects |
US9251237B2 (en) | 2012-09-11 | 2016-02-02 | International Business Machines Corporation | User-specific synthetic context object matching |
US9111102B2 (en) * | 2012-09-17 | 2015-08-18 | Microsoft Technology Licensing, Llc | Creation of security roles through user walkthrough of business process workflow |
US9223846B2 (en) | 2012-09-18 | 2015-12-29 | International Business Machines Corporation | Context-based navigation through a database |
US9280322B2 (en) * | 2012-09-27 | 2016-03-08 | Intel Corporation | Generating source code |
US8826240B1 (en) * | 2012-09-29 | 2014-09-02 | Appurify, Inc. | Application validation through object level hierarchy analysis |
US9741138B2 (en) | 2012-10-10 | 2017-08-22 | International Business Machines Corporation | Node cluster relationships in a graph database |
US8931109B2 (en) | 2012-11-19 | 2015-01-06 | International Business Machines Corporation | Context-based security screening for accessing data |
US9612947B2 (en) | 2012-12-03 | 2017-04-04 | Ca, Inc. | Code-free testing framework |
US9058240B2 (en) * | 2012-12-03 | 2015-06-16 | International Business Machines Corporation | Multi-context remote development |
US9465591B2 (en) * | 2012-12-17 | 2016-10-11 | Unisys Corporation | Syntax language generator for compiler validation |
US9229932B2 (en) | 2013-01-02 | 2016-01-05 | International Business Machines Corporation | Conformed dimensional data gravity wells |
US8983981B2 (en) | 2013-01-02 | 2015-03-17 | International Business Machines Corporation | Conformed dimensional and context-based data gravity wells |
US8914413B2 (en) * | 2013-01-02 | 2014-12-16 | International Business Machines Corporation | Context-based data gravity wells |
US9043290B2 (en) * | 2013-01-14 | 2015-05-26 | International Business Machines Corporation | Rewriting relational expressions for different type systems |
US9218161B2 (en) | 2013-01-15 | 2015-12-22 | International Business Machines Corporation | Embedding a software content space for run-time implementation |
US9111040B2 (en) | 2013-01-15 | 2015-08-18 | International Business Machines Corporation | Integration of a software content space with test planning and test case generation |
US9063809B2 (en) | 2013-01-15 | 2015-06-23 | International Business Machines Corporation | Content space environment representation |
US9396342B2 (en) | 2013-01-15 | 2016-07-19 | International Business Machines Corporation | Role based authorization based on product content space |
US9081645B2 (en) | 2013-01-15 | 2015-07-14 | International Business Machines Corporation | Software product licensing based on a content space |
US9659053B2 (en) | 2013-01-15 | 2017-05-23 | International Business Machines Corporation | Graphical user interface streamlining implementing a content space |
US9141379B2 (en) | 2013-01-15 | 2015-09-22 | International Business Machines Corporation | Automated code coverage measurement and tracking per user story and requirement |
US9075544B2 (en) | 2013-01-15 | 2015-07-07 | International Business Machines Corporation | Integration and user story generation and requirements management |
US9069647B2 (en) | 2013-01-15 | 2015-06-30 | International Business Machines Corporation | Logging and profiling content space data and coverage metric self-reporting |
US9087155B2 (en) | 2013-01-15 | 2015-07-21 | International Business Machines Corporation | Automated data collection, computation and reporting of content space coverage metrics for software products |
US9069752B2 (en) | 2013-01-31 | 2015-06-30 | International Business Machines Corporation | Measuring and displaying facets in context-based conformed dimensional data gravity wells |
US8856946B2 (en) | 2013-01-31 | 2014-10-07 | International Business Machines Corporation | Security filter for context-based data gravity wells |
US10067855B2 (en) * | 2013-01-31 | 2018-09-04 | Entit Software Llc | Error developer association |
US9053102B2 (en) | 2013-01-31 | 2015-06-09 | International Business Machines Corporation | Generation of synthetic context frameworks for dimensionally constrained hierarchical synthetic context-based objects |
US9292506B2 (en) | 2013-02-28 | 2016-03-22 | International Business Machines Corporation | Dynamic generation of demonstrative aids for a meeting |
US9110722B2 (en) | 2013-02-28 | 2015-08-18 | International Business Machines Corporation | Data processing work allocation |
US9672228B2 (en) | 2013-03-11 | 2017-06-06 | Honeywell International Inc. | Methods and systems for creating a complex user interface adapting a generic database software application to individually manage subset domains in complex database |
US10078575B2 (en) * | 2013-03-13 | 2018-09-18 | Microsoft Technology Licensing, Llc | Diagnostics of state transitions |
US9280323B2 (en) * | 2013-03-13 | 2016-03-08 | Sap Se | Display of source code semantic layers |
US9229688B2 (en) | 2013-03-14 | 2016-01-05 | Massively Parallel Technologies, Inc. | Automated latency management and cross-communication exchange conversion |
US20140282369A1 (en) * | 2013-03-14 | 2014-09-18 | Adminovate, Inc. | Software application generator |
US10650408B1 (en) | 2013-03-15 | 2020-05-12 | Twitter, Inc. | Budget smoothing in a messaging platform |
US9134962B1 (en) | 2013-03-15 | 2015-09-15 | Sanctum Solutions, Inc. | Interactive content development |
US9361322B1 (en) | 2013-03-15 | 2016-06-07 | Twitter, Inc. | Unidirectional lookalike campaigns in a messaging platform |
US9661453B2 (en) * | 2013-03-16 | 2017-05-23 | Fairwayiq, Inc. | Intelligent golf course |
TWI622931B (en) | 2013-03-19 | 2018-05-01 | 動態微型系統公司 | Tool compiler |
US10152526B2 (en) | 2013-04-11 | 2018-12-11 | International Business Machines Corporation | Generation of synthetic context objects using bounded context objects |
US10700920B2 (en) | 2013-04-29 | 2020-06-30 | Moogsoft, Inc. | System and methods for decomposing events from managed infrastructures that includes a floating point unit |
US11010220B2 (en) | 2013-04-29 | 2021-05-18 | Moogsoft, Inc. | System and methods for decomposing events from managed infrastructures that includes a feedback signalizer functor |
US9529890B2 (en) | 2013-04-29 | 2016-12-27 | Moogsoft, Inc. | System for decomposing events from managed infrastructures using a topology proximity engine, graph topologies, and k-means clustering |
US10803133B2 (en) | 2013-04-29 | 2020-10-13 | Moogsoft Inc. | System for decomposing events from managed infrastructures that includes a reference tool signalizer |
US10417594B2 (en) | 2013-05-02 | 2019-09-17 | Sap Se | Validation of functional correctness of SAM schemas including action chains |
US10346388B2 (en) * | 2013-05-03 | 2019-07-09 | Sap Se | Performance and quality optimized architecture for cloud applications |
US9348794B2 (en) | 2013-05-17 | 2016-05-24 | International Business Machines Corporation | Population of context-based data gravity wells |
US9195608B2 (en) | 2013-05-17 | 2015-11-24 | International Business Machines Corporation | Stored data analysis |
US10296618B1 (en) | 2013-05-20 | 2019-05-21 | EMC IP Holding Company LLC | Storage system query mechanism and techniques |
US10467207B2 (en) * | 2013-05-24 | 2019-11-05 | Sap Se | Handling changes in automatic sort |
US9940104B2 (en) * | 2013-06-11 | 2018-04-10 | Microsoft Technology Licensing, Llc. | Automatic source code generation |
US9485306B2 (en) | 2013-06-21 | 2016-11-01 | Here Global B.V. | Methods, apparatuses, and computer program products for facilitating a data interchange protocol |
US9454348B2 (en) | 2013-06-21 | 2016-09-27 | Here Global B.V. | Methods, apparatuses, and computer program products for facilitating a data interchange protocol modeling language |
US9569469B2 (en) * | 2013-07-26 | 2017-02-14 | Honeywell International Inc. | Methods and systems for providing intuitive direction for populating complex model content into a database |
IN2013MU02497A (en) | 2013-07-29 | 2015-06-26 | Tata Consultancy Services Ltd | |
US9223773B2 (en) * | 2013-08-08 | 2015-12-29 | Palatir Technologies Inc. | Template system for custom document generation |
US9329849B2 (en) | 2013-08-26 | 2016-05-03 | Facebook, Inc. | Systems and methods for converting typed code |
US9639572B2 (en) | 2013-09-06 | 2017-05-02 | Sap Se | SQL enhancements simplifying database querying |
US9354948B2 (en) | 2013-09-06 | 2016-05-31 | Sap Se | Data models containing host language embedded constraints |
US9361407B2 (en) | 2013-09-06 | 2016-06-07 | Sap Se | SQL extended with transient fields for calculation expressions in enhanced data models |
US9442977B2 (en) | 2013-09-06 | 2016-09-13 | Sap Se | Database language extended to accommodate entity-relationship models |
US9176801B2 (en) * | 2013-09-06 | 2015-11-03 | Sap Se | Advanced data models containing declarative and programmatic constraints |
US9619552B2 (en) | 2013-09-06 | 2017-04-11 | Sap Se | Core data services extensibility for entity-relationship models |
US9430523B2 (en) | 2013-09-06 | 2016-08-30 | Sap Se | Entity-relationship model extensions using annotations |
US9146712B2 (en) * | 2013-09-18 | 2015-09-29 | Vmware, Inc. | Extensible code auto-fix framework based on XML query languages |
US8819617B1 (en) * | 2013-09-19 | 2014-08-26 | Fmr Llc | System and method for providing access to data in a plurality of software development systems |
US9092575B2 (en) | 2013-09-19 | 2015-07-28 | Fmr Llc | System and method for providing access to data in a plurality of software development systems |
US20150095849A1 (en) | 2013-09-30 | 2015-04-02 | Microsoft Corporation | Dialogs positioned with action visualization |
US10394533B2 (en) * | 2013-09-30 | 2019-08-27 | The Mathworks, Inc. | Reusable component in a modeling environment |
US10521753B2 (en) * | 2013-10-09 | 2019-12-31 | Sap Se | Usage description language |
IN2013MU03243A (en) * | 2013-10-15 | 2015-07-17 | Tata Consultancy Services Ltd | |
US9311124B2 (en) | 2013-11-07 | 2016-04-12 | Sap Se | Integrated deployment of centrally modified software systems |
US9823905B2 (en) * | 2013-11-11 | 2017-11-21 | International Business Machines Corporation | Event based code generation |
DE102013225058A1 (en) * | 2013-12-05 | 2015-06-11 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | DEVICE, SYSTEM AND METHOD FOR THE EFFICIENT AND DELIVERABLE SYNCHRONIZATION OF GRAPHIC DATA STRUCTURES |
US11087340B1 (en) * | 2013-12-17 | 2021-08-10 | EMC IP Holding Company LLC | Systems and methods for configuring converged infrastructure components |
IN2013CH06085A (en) * | 2013-12-26 | 2015-07-03 | Inforys Ltd | |
JP6249770B2 (en) * | 2013-12-27 | 2017-12-20 | キヤノン株式会社 | Character input device |
US9454620B2 (en) * | 2014-02-28 | 2016-09-27 | Here Global B.V. | Methods, apparatuses and computer program products for automated learning of data models |
EP2916183B1 (en) * | 2014-03-06 | 2016-11-09 | dSPACE digital signal processing and control engineering GmbH | Method for generating a control program for a control system |
US9268537B1 (en) * | 2014-04-29 | 2016-02-23 | The Mathworks, Inc. | Automatic generation of domain-aware phase ordering for effective optimization of code for a model |
FR3021769B1 (en) | 2014-05-27 | 2016-07-01 | Thales Sa | DEVICE AND METHOD FOR GENERATING AT LEAST ONE COMPUTER FILE FOR PRODUCING A GRAPHICAL INTERFACE OF ELECTRONIC EQUIPMENT, AND ASSOCIATED COMPUTER PROGRAM PRODUCT |
US9736032B2 (en) * | 2014-05-30 | 2017-08-15 | Microsoft Technology Licensing, Llc | Pattern-based validation, constraint and generation of hierarchical metadata |
US20150356090A1 (en) * | 2014-06-09 | 2015-12-10 | Northwestern University | System and Method for Dynamically Constructing Theatrical Experiences from Digital Content |
CN105320504B (en) * | 2014-06-25 | 2018-08-17 | 成都普中软件有限公司 | A kind of visual software modeling method constructing software view based on software member view |
US11100420B2 (en) | 2014-06-30 | 2021-08-24 | Amazon Technologies, Inc. | Input processing for machine learning |
US9886670B2 (en) * | 2014-06-30 | 2018-02-06 | Amazon Technologies, Inc. | Feature processing recipes for machine learning |
US10452992B2 (en) | 2014-06-30 | 2019-10-22 | Amazon Technologies, Inc. | Interactive interfaces for machine learning model evaluations |
US10540606B2 (en) | 2014-06-30 | 2020-01-21 | Amazon Technologies, Inc. | Consistent filtering of machine learning data |
US9672474B2 (en) | 2014-06-30 | 2017-06-06 | Amazon Technologies, Inc. | Concurrent binning of machine learning data |
US10169715B2 (en) | 2014-06-30 | 2019-01-01 | Amazon Technologies, Inc. | Feature processing tradeoff management |
US10963810B2 (en) | 2014-06-30 | 2021-03-30 | Amazon Technologies, Inc. | Efficient duplicate detection for machine learning data sets |
CA2953817C (en) * | 2014-06-30 | 2023-07-04 | Amazon Technologies, Inc. | Feature processing tradeoff management |
US10102480B2 (en) | 2014-06-30 | 2018-10-16 | Amazon Technologies, Inc. | Machine learning service |
US10339465B2 (en) | 2014-06-30 | 2019-07-02 | Amazon Technologies, Inc. | Optimized decision tree based models |
US10318882B2 (en) | 2014-09-11 | 2019-06-11 | Amazon Technologies, Inc. | Optimized training of linear machine learning models |
US9844723B2 (en) * | 2014-07-25 | 2017-12-19 | Zynga Inc. | In-browser emulation of multiple technologies to create consistent visualization experience |
GB2528697A (en) * | 2014-07-29 | 2016-02-03 | Ibm | Generating a database structure from a scanned drawing |
US11182691B1 (en) | 2014-08-14 | 2021-11-23 | Amazon Technologies, Inc. | Category-based sampling of machine learning data |
US10275458B2 (en) | 2014-08-14 | 2019-04-30 | International Business Machines Corporation | Systematic tuning of text analytic annotators with specialized information |
US9158786B1 (en) | 2014-10-01 | 2015-10-13 | Bertram Capital Management, Llc | Database selection system and method to automatically adjust a database schema based on an input data |
US20160098256A1 (en) * | 2014-10-03 | 2016-04-07 | General Motors Llc | Visual tool and architecting logical layers of software components |
US9851949B2 (en) * | 2014-10-07 | 2017-12-26 | Kevin D. Howard | System and method for automatic software application creation |
US10275154B2 (en) | 2014-11-05 | 2019-04-30 | Oracle International Corporation | Building memory layouts in software programs |
US9552192B2 (en) * | 2014-11-05 | 2017-01-24 | Oracle International Corporation | Context-based generation of memory layouts in software programs |
US10353793B2 (en) | 2014-11-05 | 2019-07-16 | Oracle International Corporation | Identifying improvements to memory usage of software programs |
US10108536B2 (en) | 2014-12-10 | 2018-10-23 | General Electric Company | Integrated automated test case generation for safety-critical software |
US9747079B2 (en) * | 2014-12-15 | 2017-08-29 | General Electric Company | Method and system of software specification modeling |
US9563450B1 (en) * | 2014-12-15 | 2017-02-07 | Emc Corporation | Expression based hierarchical mechanism for HTML form data validation |
US10425291B2 (en) | 2015-01-27 | 2019-09-24 | Moogsoft Inc. | System for decomposing events from managed infrastructures with prediction of a networks topology |
US11924018B2 (en) | 2015-01-27 | 2024-03-05 | Dell Products L.P. | System for decomposing events and unstructured data |
US10979304B2 (en) | 2015-01-27 | 2021-04-13 | Moogsoft Inc. | Agent technology system with monitoring policy |
US10873508B2 (en) | 2015-01-27 | 2020-12-22 | Moogsoft Inc. | Modularity and similarity graphics system with monitoring policy |
US11817993B2 (en) | 2015-01-27 | 2023-11-14 | Dell Products L.P. | System for decomposing events and unstructured data |
US10402390B1 (en) * | 2015-02-11 | 2019-09-03 | Workday, Inc. | Model validation system |
WO2016133533A1 (en) * | 2015-02-20 | 2016-08-25 | Hewlett Packard Enterprise Development Lp | Personalized profile-modified search for dialog concepts |
US9971838B2 (en) | 2015-02-20 | 2018-05-15 | International Business Machines Corporation | Mitigating subjectively disturbing content through the use of context-based data gravity wells |
US10275227B1 (en) * | 2015-02-20 | 2019-04-30 | The Mathworks, Inc. | Determining functional equivalence of configurations of a model |
US20160246582A1 (en) * | 2015-02-25 | 2016-08-25 | Red Hat, Inc. | Generic Semantic Configuration Service |
US9710238B2 (en) * | 2015-03-26 | 2017-07-18 | IfWizard Corporation | Automatically optimizing analytics database server |
US9477446B1 (en) * | 2015-03-31 | 2016-10-25 | Toyota Jidosha Kabushiki Kaisha | Bottom-up approach for integrating models for software components using contracts |
US9952837B1 (en) | 2015-04-01 | 2018-04-24 | The Mathworks, Inc. | Reusable component in a modeling environment |
US10303441B2 (en) | 2015-04-28 | 2019-05-28 | Nadia Analía Huebra | Process and system for automatic generation of functional architecture documents and software design and analysis specification documents from natural language |
US10831449B2 (en) | 2015-04-28 | 2020-11-10 | Lexica S.A.S. | Process and system for automatic generation of functional architecture documents and software design and analysis specification documents from natural language |
US10521209B2 (en) | 2015-05-12 | 2019-12-31 | Phase Change Software Llc | Machine-based normalization of machine instructions |
WO2016181368A1 (en) * | 2015-05-13 | 2016-11-17 | Huebra Nadia Analía | Method implemented by a computer that presents software-type applications based on design specifications |
US20160350081A1 (en) | 2015-05-27 | 2016-12-01 | Runnable Inc. | Automatic container definition |
US9582268B2 (en) * | 2015-05-27 | 2017-02-28 | Runnable Inc. | Automatic communications graphing for a source application |
US10884997B2 (en) * | 2015-06-10 | 2021-01-05 | International Business Machines Corporation | Maintaining a master schema |
EP3106897A1 (en) * | 2015-06-19 | 2016-12-21 | Centre National d'Etudes Spatiales | Gnss receiver with an on-board capability to implement an optimal error correction mode |
EP3115898B1 (en) * | 2015-07-06 | 2022-06-15 | Intuilab | Method for generating user-level events for an application |
US10366083B2 (en) | 2015-07-29 | 2019-07-30 | Oracle International Corporation | Materializing internal computations in-memory to improve query performance |
US10204135B2 (en) | 2015-07-29 | 2019-02-12 | Oracle International Corporation | Materializing expressions within in-memory virtual column units to accelerate analytic queries |
IN2015CH03905A (en) * | 2015-07-30 | 2015-08-14 | Wipro Ltd | |
US10346140B2 (en) | 2015-08-05 | 2019-07-09 | General Electric Company | System and method for model based technology and process for safety-critical software development |
US9720652B2 (en) | 2015-08-06 | 2017-08-01 | Symphore, LLC | Generating a software complex using superordinate design input |
WO2017027360A1 (en) | 2015-08-07 | 2017-02-16 | Fairwayiq, Inc. | System and method for managing and interacting with patrons at an activity venue |
US9898261B1 (en) * | 2015-09-30 | 2018-02-20 | Open Text Corporation | Method and system for configuring processes of software applications using activity fragments |
US10257275B1 (en) | 2015-10-26 | 2019-04-09 | Amazon Technologies, Inc. | Tuning software execution environments using Bayesian models |
US9891890B2 (en) | 2015-11-09 | 2018-02-13 | Microsoft Technology Licensing, Llc | Generation of an application from template |
US9940222B2 (en) | 2015-11-20 | 2018-04-10 | General Electric Company | System and method for safety-critical software automated requirements-based test case generation |
US9852053B2 (en) * | 2015-12-08 | 2017-12-26 | Google Llc | Dynamic software inspection tool |
JP2017107377A (en) * | 2015-12-09 | 2017-06-15 | 株式会社リコー | Apparatus management device, apparatus management system, verification method and program |
US9747085B2 (en) * | 2015-12-11 | 2017-08-29 | Paypal, Inc. | Source code generation from prototype source |
US20170168792A1 (en) * | 2015-12-15 | 2017-06-15 | Futurewei Technologies, Inc. | Space and time aware organization and isolation of components in real time systems |
KR101731629B1 (en) | 2015-12-24 | 2017-05-02 | 고려대학교 산학협력단 | Method and device for automatic generating go code from circus |
US11593342B2 (en) | 2016-02-01 | 2023-02-28 | Smartshift Technologies, Inc. | Systems and methods for database orientation transformation |
US10025696B2 (en) | 2016-02-09 | 2018-07-17 | General Electric Company | System and method for equivalence class analysis-based automated requirements-based test case generation |
GB2547220A (en) | 2016-02-10 | 2017-08-16 | Testplant Europe Ltd | Method of, and apparatus for, testing computer hardware and software |
GB2547222A (en) | 2016-02-10 | 2017-08-16 | Testplant Europe Ltd | Method of, and apparatus for, testing computer hardware and software |
US20170242668A1 (en) * | 2016-02-24 | 2017-08-24 | Microsoft Technology Licensing, Llc | Content publishing |
JP6620609B2 (en) * | 2016-03-09 | 2019-12-18 | 富士通株式会社 | Distributed processing execution management program, distributed processing execution management method, and distributed processing execution management device |
CN107229616B (en) * | 2016-03-25 | 2020-10-16 | 阿里巴巴集团控股有限公司 | Language identification method, device and system |
US10587708B2 (en) | 2016-03-28 | 2020-03-10 | Microsoft Technology Licensing, Llc | Multi-modal conversational intercom |
US11487512B2 (en) * | 2016-03-29 | 2022-11-01 | Microsoft Technology Licensing, Llc | Generating a services application |
US11100449B1 (en) * | 2016-04-05 | 2021-08-24 | Jpmorgan Chase Bank, N.A. | Systems and methods for efficiency management |
US11295229B1 (en) | 2016-04-19 | 2022-04-05 | Amazon Technologies, Inc. | Scalable generation of multidimensional features for machine learning |
US10713015B2 (en) | 2016-05-15 | 2020-07-14 | Servicenow, Inc. | Visual programming system |
US10394552B2 (en) * | 2016-05-17 | 2019-08-27 | Dropbox, Inc. | Interface description language for application programming interfaces |
US10585655B2 (en) | 2016-05-25 | 2020-03-10 | Smartshift Technologies, Inc. | Systems and methods for automated retrofitting of customized code objects |
US10719188B2 (en) | 2016-07-21 | 2020-07-21 | Palantir Technologies Inc. | Cached database and synchronization system for providing dynamic linked panels in user interface |
US10324609B2 (en) * | 2016-07-21 | 2019-06-18 | Palantir Technologies Inc. | System for providing dynamic linked panels in user interface |
US10528607B2 (en) * | 2016-07-29 | 2020-01-07 | Splunk Inc. | Syntax templates for coding |
US10089103B2 (en) | 2016-08-03 | 2018-10-02 | Smartshift Technologies, Inc. | Systems and methods for transformation of reporting schema |
US10521502B2 (en) * | 2016-08-10 | 2019-12-31 | International Business Machines Corporation | Generating a user interface template by combining relevant components of the different user interface templates based on the action request by the user and the user context |
JP2019526342A (en) | 2016-08-30 | 2019-09-19 | ライフセル コーポレーションLifeCell Corporation | System and method for controlling medical devices |
US10324908B2 (en) * | 2016-09-01 | 2019-06-18 | Sap Se | Exposing database artifacts |
US10893011B2 (en) * | 2016-09-13 | 2021-01-12 | Gluru Limited | Semantic interface definition language for action discovery in cloud services and smart devices |
US10120665B1 (en) | 2016-09-29 | 2018-11-06 | Amazon Technologies, Inc. | Latency-aware host-agnostic runtime |
MX2019004025A (en) | 2016-10-05 | 2019-08-05 | Walmart Apollo Llc | Systems and methods for synchronizing database schema. |
US10372443B2 (en) * | 2016-10-18 | 2019-08-06 | Oracle International Corporation | Multi-platform pattern-based user interfaces |
US10331415B2 (en) * | 2016-11-08 | 2019-06-25 | International Business Machines Corporation | Formal specification generation using examples |
US10545731B1 (en) | 2016-12-02 | 2020-01-28 | The Mathworks, Inc. | Variant modeling elements in graphical programs |
US10326864B2 (en) * | 2017-02-15 | 2019-06-18 | Sap Se | Dynamic orchestration of microservices |
CN106997378B (en) * | 2017-03-13 | 2020-05-15 | 上海摩库数据技术有限公司 | Redis-based database data aggregation synchronization method |
CA2999581A1 (en) | 2017-03-28 | 2018-09-28 | Walmart Apollo, Llc | Systems and methods for computer assisted database change documentation |
US10929759B2 (en) * | 2017-04-06 | 2021-02-23 | AIBrain Corporation | Intelligent robot software platform |
US11151992B2 (en) | 2017-04-06 | 2021-10-19 | AIBrain Corporation | Context aware interactive robot |
US10963493B1 (en) | 2017-04-06 | 2021-03-30 | AIBrain Corporation | Interactive game with robot system |
US10275225B1 (en) * | 2017-05-04 | 2019-04-30 | Amazon Technologies, Inc. | Implicit value store mapping |
US10379825B2 (en) * | 2017-05-22 | 2019-08-13 | Ab Initio Technology Llc | Automated dependency analyzer for heterogeneously programmed data processing system |
US10460044B2 (en) * | 2017-05-26 | 2019-10-29 | General Electric Company | Methods and systems for translating natural language requirements to a semantic modeling language statement |
US10466979B1 (en) * | 2017-06-01 | 2019-11-05 | Nationwide Mutual Insurance Company | Software requirements creating and tracking system and method |
CN109002279A (en) * | 2017-06-01 | 2018-12-14 | 如如研创股份有限公司 | The generation system of automated software |
US10705868B2 (en) * | 2017-08-07 | 2020-07-07 | Modelop, Inc. | Dynamically configurable microservice model for data analysis using sensors |
US10929384B2 (en) | 2017-08-16 | 2021-02-23 | Walmart Apollo, Llc | Systems and methods for distributed data validation |
US10877735B1 (en) | 2017-09-25 | 2020-12-29 | Amazon Technologies, Inc. | Automated generation of software applications using analysis of submitted content items |
US10691426B2 (en) * | 2017-10-26 | 2020-06-23 | Saudi Arabian Oil Company | Building flexible relationships between reusable software components and data objects |
US10521202B2 (en) * | 2017-11-20 | 2019-12-31 | Coupa Software Incorporated | Customizable project and help building interfaces for deployable software |
US10552540B2 (en) | 2017-11-27 | 2020-02-04 | International Business Machines Corporation | Automated application composer with natural language processing |
US10331421B2 (en) * | 2017-11-30 | 2019-06-25 | International Business Machines Corporation | Execution of a composite template to provision a composite of software service instances |
US10331419B2 (en) * | 2017-11-30 | 2019-06-25 | International Business Machines Corporation | Creating composite templates for service instances |
US11055134B2 (en) | 2017-11-30 | 2021-07-06 | International Business Machines Corporation | Performing an action on a composite of software instances |
US10338913B2 (en) | 2017-12-05 | 2019-07-02 | Archemy, Inc. | Active adaptation of networked compute devices using vetted reusable software components |
US10705805B1 (en) | 2017-12-12 | 2020-07-07 | Amazon Technologies, Inc. | Application authoring using web-of-sheets data model |
JP6940831B2 (en) * | 2018-01-10 | 2021-09-29 | 日本電気株式会社 | Decision device, decision method, and decision program |
US10740075B2 (en) | 2018-02-06 | 2020-08-11 | Smartshift Technologies, Inc. | Systems and methods for code clustering analysis and transformation |
US10698674B2 (en) | 2018-02-06 | 2020-06-30 | Smartshift Technologies, Inc. | Systems and methods for entry point-based code analysis and transformation |
US10528343B2 (en) | 2018-02-06 | 2020-01-07 | Smartshift Technologies, Inc. | Systems and methods for code analysis heat map interfaces |
US10915307B2 (en) | 2018-02-22 | 2021-02-09 | Cisco Technology, Inc. | Automatically producing software images |
US10664294B2 (en) * | 2018-02-28 | 2020-05-26 | Intuit Inc. | Matching adopting users and contributing users for decentralized software localization |
JP7036205B2 (en) * | 2018-05-07 | 2022-03-15 | 日本電気株式会社 | System configuration derivation device and system configuration derivation method |
US11586603B1 (en) | 2018-05-23 | 2023-02-21 | Amazon Technologies, Inc. | Index sheets for robust spreadsheet-based applications |
US10586362B2 (en) * | 2018-06-18 | 2020-03-10 | Microsoft Technology Licensing, Llc | Interactive layout-aware construction of bespoke charts |
WO2019246630A1 (en) * | 2018-06-22 | 2019-12-26 | Otsuka America Pharmaceutical Inc. | Application programming interface using digital templates to extract information from multiple data sources |
US11226955B2 (en) | 2018-06-28 | 2022-01-18 | Oracle International Corporation | Techniques for enabling and integrating in-memory semi-structured data and text document searches with in-memory columnar query processing |
US20200042290A1 (en) * | 2018-08-02 | 2020-02-06 | Arcare Innova Corp. | BOM (bill-of-material)-Based Structured Specification Generating Method |
US10783063B2 (en) * | 2018-10-23 | 2020-09-22 | Salesforce.Com, Inc. | Systems and methods for testing a customer environment |
US10719304B2 (en) | 2018-11-16 | 2020-07-21 | Fujitsu Limited | Computer program generation using a library |
US10754626B2 (en) | 2018-11-30 | 2020-08-25 | Shopify Inc. | Visual and code views in a process workflow user interface |
CN109726213B (en) * | 2018-12-10 | 2021-11-19 | 阿里巴巴(中国)有限公司 | Program code conversion method, device, medium and computing equipment |
US20200184043A1 (en) * | 2018-12-11 | 2020-06-11 | Avago Technologies International Sales Pte. Limited | Multimedia content recognition with local and cloud-assisted machine learning |
WO2020139379A1 (en) * | 2018-12-28 | 2020-07-02 | LunaPBC | Community data aggregation, completion, correction, and use |
US10860295B1 (en) * | 2019-01-03 | 2020-12-08 | Amazon Technologies, Inc. | Automated detection of ambiguities in software design diagrams |
US10901729B2 (en) * | 2019-03-20 | 2021-01-26 | Visa International Service Association | System and method for merging specification files for an application programming interface |
US11681504B1 (en) | 2019-04-26 | 2023-06-20 | Opturo, Inc. | Automated application builder using configuration files |
CN110175019B (en) * | 2019-06-04 | 2021-11-16 | 南京大学 | Interrupt driving system verification method based on interrupt sequence diagram |
US10649745B1 (en) | 2019-06-10 | 2020-05-12 | Capital One Services, Llc | User interface common components and scalable integrable reusable isolated user interface |
US10698704B1 (en) * | 2019-06-10 | 2020-06-30 | Captial One Services, Llc | User interface common components and scalable integrable reusable isolated user interface |
CN112230909B (en) * | 2019-07-15 | 2023-05-23 | 腾讯科技(深圳)有限公司 | Method, device, equipment and storage medium for binding data of applet |
US10956134B2 (en) * | 2019-08-02 | 2021-03-23 | Sap Se | Itemization of rule branch condition expressions |
US11036478B2 (en) * | 2019-08-07 | 2021-06-15 | Sap Se | Automated determination of transformation objects |
US11188311B2 (en) | 2019-09-30 | 2021-11-30 | Microsoft Technology Licensing, Llc | Automated software generation through mutation and artificial selection |
US11113186B1 (en) * | 2019-12-13 | 2021-09-07 | Amazon Technologies, Inc. | Testing and publishing of resource handlers in a cloud environment |
US11144314B2 (en) | 2020-01-17 | 2021-10-12 | Accenture Global Solutions Limited | Systems and methods for software documentation and code generation management |
US11269694B2 (en) | 2020-03-03 | 2022-03-08 | The Toronto-Dominion Bank | Automated API code generation |
US11210285B2 (en) | 2020-03-06 | 2021-12-28 | Ab Initio Technology Llc | Generation of optimized logic from a schema |
US11829689B1 (en) | 2020-06-09 | 2023-11-28 | The Mathworks, Inc. | Systems and methods for creating variant regions in acausal simulation models |
US11580797B2 (en) | 2020-09-14 | 2023-02-14 | Toyota Research Institute, Inc. | Systems and methods for monitoring specifications over simulation and test data |
US11797541B1 (en) | 2020-10-23 | 2023-10-24 | State Farm Mutual Automobile Insurance Company | Systems and methods for enhanced rules conflict checking with data validation |
US11256493B1 (en) | 2020-11-03 | 2022-02-22 | Bank Of America Corporation | Container image optimizer |
US11429353B1 (en) * | 2020-12-09 | 2022-08-30 | Amazon Technologies, Inc. | Dynamic service provisioning using templatized infrastructure resources |
JP2024501045A (en) * | 2020-12-28 | 2024-01-10 | テンパー システムズ、インコーポレイテッド | Creation of idiomatic software documentation for many programming languages from common specifications |
US11693652B2 (en) | 2021-04-16 | 2023-07-04 | 27 Software U.S. Inc. | Automated authoring of software solutions from a data model |
US11409505B1 (en) * | 2021-04-16 | 2022-08-09 | 27 Software U.S. Inc. | Automated authoring of software solutions from a data model with related patterns |
WO2022218549A1 (en) * | 2021-04-16 | 2022-10-20 | Huawei Technologies Co., Ltd. | Apparatus and method for generating requirement specifications |
US11675582B2 (en) | 2021-07-15 | 2023-06-13 | Kyndryl, Inc. | Neural networks to identify source code |
US11520463B1 (en) * | 2021-08-09 | 2022-12-06 | Tableau Software, LLC | Validating relationships between classes in object models |
US20230126702A1 (en) * | 2021-10-26 | 2023-04-27 | Sap Se | Transport of master data dependent customizations |
US11704233B2 (en) * | 2021-11-22 | 2023-07-18 | International Business Machines Corporation | Shift left model execution in software delivery |
US11416494B1 (en) | 2022-01-28 | 2022-08-16 | People Center, Inc. | Providing triggers based on one-to-many or many-to-one relationships in a system of record |
US20230315412A1 (en) * | 2022-03-30 | 2023-10-05 | Microsoft Technology Licensing, Llc | Scalable behavioral interface specification checking |
KR20240001943A (en) * | 2022-06-28 | 2024-01-04 | 황수진 | Automatic programming system and method using programming model |
Family Cites Families (55)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4841441A (en) | 1984-08-01 | 1989-06-20 | Adata Software Limited | Method of creating a computer system |
US5371895A (en) | 1985-10-08 | 1994-12-06 | The Foxboro Company | Local equipment controller for computerized process control applications utilizing language structure templates in a hierarchical organization and method of operating the same |
US4734854A (en) | 1985-10-08 | 1988-03-29 | American Telephone And Telegraph Company | System for generating software source code components |
JPH0619715B2 (en) * | 1987-12-03 | 1994-03-16 | シャープ株式会社 | Question answering device |
IN170793B (en) | 1987-12-18 | 1992-05-23 | Hitachi Ltd | |
JP2624753B2 (en) | 1988-03-18 | 1997-06-25 | 株式会社日立製作所 | How to create higher-level specifications |
ES2017029A6 (en) * | 1989-07-26 | 1990-12-16 | Erana Agustin Arana | Core collecting tray provided with an in-built clipping system and adjustable cross travel allowing the core to be centered with the manipulator shaft |
DE69033120T2 (en) | 1989-09-01 | 1999-10-21 | Amdahl Corp | Operating system and database with an access structure made up of several tables |
DE3935627A1 (en) * | 1989-10-26 | 1991-05-02 | Schlafhorst & Co W | CONNECTING SYSTEM BETWEEN A SPINDING MACHINE AND A WINDING MACHINE |
US5159687A (en) * | 1989-11-14 | 1992-10-27 | Caseworks, Inc. | Method and apparatus for generating program code files |
US5204939A (en) * | 1989-12-14 | 1993-04-20 | Fujitsu Limited | Rule base processing system and rule evaluation control method therein |
US5603018A (en) | 1991-07-15 | 1997-02-11 | Mitsubishi Denki Kabushiki Kaisha | Program developing system allowing a specification definition to be represented by a plurality of different graphical, non-procedural representation formats |
US5485601A (en) | 1992-05-14 | 1996-01-16 | Ching; Hugh | Completely automated and self-generating software system |
JP3181994B2 (en) | 1992-09-03 | 2001-07-03 | 株式会社日立製作所 | How to automatically create job flow specifications |
US5640576A (en) | 1992-10-02 | 1997-06-17 | Fujitsu Limited | System for generating a program using the language of individuals |
US5742827A (en) | 1992-11-02 | 1998-04-21 | Fujitsu Limited | Method of automatically forming program specifications and apparatus therefor |
US5353401A (en) * | 1992-11-06 | 1994-10-04 | Ricoh Company, Ltd. | Automatic interface layout generator for database systems |
JPH06308918A (en) * | 1993-04-21 | 1994-11-04 | Fujitsu Ltd | Control method for displaying screen and control device for displaying screen |
JPH06332710A (en) * | 1993-05-21 | 1994-12-02 | Fujitsu Ltd | Object directional data processing system |
US5758160A (en) | 1993-06-28 | 1998-05-26 | Object Technology Licensing Corporation | Method and apparatus for building a software program using dependencies derived from software component interfaces |
CA2124624C (en) * | 1993-07-21 | 1999-07-13 | Eric A. Bier | User interface having click-through tools that can be composed with other tools |
CA2124505C (en) * | 1993-07-21 | 2000-01-04 | William A. S. Buxton | User interface having simultaneously movable tools and cursor |
WO1995003586A1 (en) * | 1993-07-21 | 1995-02-02 | Persistence Software, Inc. | Method and apparatus for generation of code for mapping relational data to objects |
US5581670A (en) * | 1993-07-21 | 1996-12-03 | Xerox Corporation | User interface having movable sheet with click-through tools |
US5842205A (en) | 1993-12-02 | 1998-11-24 | Vie Systems, Inc. | Method and process of inter-machine communication and generalized method for program preparation therefor |
US5875331A (en) * | 1994-09-30 | 1999-02-23 | International Business Machines Corp. | System and method for generating target language code utilizing an object oriented code generator |
JPH08234975A (en) * | 1995-02-28 | 1996-09-13 | Fujitsu Ltd | Program generation device and method |
JPH08255075A (en) * | 1995-03-17 | 1996-10-01 | Fujitsu Ltd | Software design support device supporting task division |
US5805891A (en) | 1995-07-26 | 1998-09-08 | International Business Machines Corporation | System and method for managing maintenance of computer software |
JPH09212352A (en) | 1996-01-31 | 1997-08-15 | Hitachi Software Eng Co Ltd | Program development support system |
US5742754A (en) | 1996-03-05 | 1998-04-21 | Sun Microsystems, Inc. | Software testing apparatus and method |
US6275976B1 (en) * | 1996-03-15 | 2001-08-14 | Joseph M. Scandura | Automated method for building and maintaining software including methods for verifying that systems are internally consistent and correct relative to their specifications |
US6877153B2 (en) * | 1996-04-10 | 2005-04-05 | Paul M. Konnersman | Computer-based system for work processes that consist of interdependent decisions involving one or more participants |
US5960200A (en) * | 1996-05-03 | 1999-09-28 | I-Cube | System to transition an enterprise to a distributed infrastructure |
US6434598B1 (en) * | 1996-07-01 | 2002-08-13 | Sun Microsystems, Inc. | Object-oriented system, method and article of manufacture for a client-server graphical user interface (#9) framework in an interprise computing framework system |
US6385765B1 (en) * | 1996-07-02 | 2002-05-07 | The Research Foundation | Specification and verification for concurrent systems with graphical and textual editors |
US6058493A (en) | 1997-04-15 | 2000-05-02 | Sun Microsystems, Inc. | Logging and reproduction of automated test operations for computing systems |
US5966534A (en) | 1997-06-27 | 1999-10-12 | Cooke; Laurence H. | Method for compiling high level programming languages into an integrated processor with reconfigurable logic |
US5995736A (en) * | 1997-07-24 | 1999-11-30 | Ati Technologies, Inc. | Method and system for automatically modelling registers for integrated circuit design |
US6289502B1 (en) * | 1997-09-26 | 2001-09-11 | Massachusetts Institute Of Technology | Model-based software design and validation |
KR100269258B1 (en) * | 1997-10-21 | 2000-10-16 | 정선종 | Integrated CASE Information Repository Metamodel System for Process Methodology and its Integration Support Method |
US5956725A (en) | 1997-11-26 | 1999-09-21 | Interanational Business Machines Corporation | Schema mapping to a legacy table with primary and foreign key support |
US6618852B1 (en) * | 1998-09-14 | 2003-09-09 | Intellichem, Inc. | Object-oriented framework for chemical-process-development decision-support applications |
US6393456B1 (en) * | 1998-11-30 | 2002-05-21 | Microsoft Corporation | System, method, and computer program product for workflow processing using internet interoperable electronic messaging with mime multiple content type |
US6199195B1 (en) * | 1999-07-08 | 2001-03-06 | Science Application International Corporation | Automatically generated objects within extensible object frameworks and links to enterprise resources |
US6571232B1 (en) * | 1999-11-01 | 2003-05-27 | Sun Microsystems, Inc. | System and method for browsing database schema information |
AU2001227857A1 (en) * | 2000-01-14 | 2001-07-24 | Saba Software, Inc. | Method and apparatus for a business applications management system platform |
US7334216B2 (en) * | 2000-04-04 | 2008-02-19 | Sosy, Inc. | Method and apparatus for automatic generation of information system user interfaces |
US6681383B1 (en) * | 2000-04-04 | 2004-01-20 | Sosy, Inc. | Automatic software production system |
US6850922B1 (en) * | 2000-07-14 | 2005-02-01 | International Business Machines Corporation | Business logic support |
US6721807B2 (en) * | 2000-08-10 | 2004-04-13 | International Business Machines Corporation | Extensible and efficient double dispatch in single-dispatch object-oriented programming languages |
JP3892685B2 (en) * | 2001-07-26 | 2007-03-14 | 株式会社東芝 | Helical antenna and portable terminal device |
US7155439B2 (en) * | 2001-09-20 | 2006-12-26 | Wellogix, Inc. | Modular and customizable process and system for capturing field documentation data in a complex project workflow system |
US7032210B2 (en) * | 2001-11-11 | 2006-04-18 | International Business Machines Corporation | Method and system for generating program source code of a computer application from an information model |
JP4157071B2 (en) * | 2004-03-31 | 2008-09-24 | 大日本印刷株式会社 | Resin for forming receptor layer of thermal transfer image receiving sheet and thermal transfer image receiving sheet using the same |
-
2000
- 2000-04-04 US US09/543,085 patent/US6681383B1/en not_active Expired - Lifetime
-
2001
- 2001-03-02 AU AU4194501A patent/AU4194501A/en active Pending
- 2001-03-02 CA CA2723005A patent/CA2723005A1/en not_active Abandoned
- 2001-03-02 CA CA2403975A patent/CA2403975C/en not_active Expired - Fee Related
- 2001-03-02 AU AU2001241945A patent/AU2001241945B2/en not_active Ceased
- 2001-03-02 JP JP2001573206A patent/JP2004506962A/en active Pending
- 2001-03-02 WO PCT/US2001/006790 patent/WO2001075593A2/en active IP Right Grant
- 2001-03-02 EP EP01913266A patent/EP1272927A2/en not_active Ceased
- 2001-06-01 US US09/872,333 patent/US7137100B2/en not_active Expired - Fee Related
- 2001-06-01 US US09/872,087 patent/US20030167455A1/en not_active Abandoned
- 2001-06-01 US US09/872,413 patent/US7278130B2/en not_active Expired - Fee Related
-
2004
- 2004-06-24 US US10/877,492 patent/US8141031B2/en not_active Expired - Fee Related
-
2006
- 2006-10-04 US US11/542,827 patent/US7555742B2/en not_active Expired - Fee Related
- 2006-10-05 US US11/543,426 patent/US7584451B2/en not_active Expired - Fee Related
- 2006-10-10 US US11/545,438 patent/US8037449B2/en not_active Expired - Fee Related
-
2007
- 2007-04-18 JP JP2007109887A patent/JP2007257654A/en not_active Withdrawn
-
2008
- 2008-09-25 US US12/284,842 patent/US8245183B2/en not_active Expired - Fee Related
- 2008-09-26 US US12/284,947 patent/US8365138B2/en not_active Expired - Fee Related
-
2009
- 2009-03-18 JP JP2009066293A patent/JP2009193592A/en active Pending
Non-Patent Citations (3)
Title |
---|
"VDMTools VDM++ Toolbox User Manual", 1999 |
ANONYMOUS: "IFAD VDMTools Product Description", 23 September 1998, PUBLISHER UNKNOWN, article "Features of VDMTools", pages: 1 - 8 |
See also references of EP1272927A2 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2368684A (en) * | 2000-05-31 | 2002-05-08 | Ibm | Managing an object in a management framework |
US9916610B2 (en) | 2002-11-06 | 2018-03-13 | Noel William Lovisa | Service implementation |
WO2005114387A1 (en) * | 2004-05-20 | 2005-12-01 | Code Valley Pty Limited | Code generation techniques |
US8856733B2 (en) | 2004-05-20 | 2014-10-07 | Code Valley Corp Pty Ltd | Code generation techniques |
WO2008000878A2 (en) * | 2006-06-30 | 2008-01-03 | Business Excellence Through Information Technologies, S.L. | Electronic commerce system for the purchase of custom-developed computer applications for managing information using structured data models. |
WO2008000878A3 (en) * | 2006-06-30 | 2008-04-03 | Business Excellence Through In | Electronic commerce system for the purchase of custom-developed computer applications for managing information using structured data models. |
EP2639693A1 (en) * | 2012-03-12 | 2013-09-18 | Barium AB | Business management system |
US20220327012A1 (en) * | 2021-04-08 | 2022-10-13 | Dell Products L.P. | Software validation framework |
Also Published As
Publication number | Publication date |
---|---|
US20080209391A1 (en) | 2008-08-28 |
US7278130B2 (en) | 2007-10-02 |
WO2001075593A3 (en) | 2002-08-08 |
JP2009193592A (en) | 2009-08-27 |
CA2403975A1 (en) | 2001-10-11 |
US7584451B2 (en) | 2009-09-01 |
US20040233232A1 (en) | 2004-11-25 |
US20090125546A1 (en) | 2009-05-14 |
AU2001241945B2 (en) | 2004-11-11 |
US20070089103A1 (en) | 2007-04-19 |
JP2007257654A (en) | 2007-10-04 |
US7555742B2 (en) | 2009-06-30 |
US8245183B2 (en) | 2012-08-14 |
EP1272927A2 (en) | 2003-01-08 |
US7137100B2 (en) | 2006-11-14 |
US20020100014A1 (en) | 2002-07-25 |
CA2403975C (en) | 2012-05-01 |
AU4194501A (en) | 2001-10-15 |
US8141031B2 (en) | 2012-03-20 |
CA2723005A1 (en) | 2001-10-11 |
US20090132995A1 (en) | 2009-05-21 |
US20030167455A1 (en) | 2003-09-04 |
WO2001075593A9 (en) | 2003-07-10 |
JP2004506962A (en) | 2004-03-04 |
US8365138B2 (en) | 2013-01-29 |
US20020062475A1 (en) | 2002-05-23 |
US20070168907A1 (en) | 2007-07-19 |
US6681383B1 (en) | 2004-01-20 |
US8037449B2 (en) | 2011-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6681383B1 (en) | Automatic software production system | |
AU2001241945A1 (en) | Automatic software production system | |
US7941438B2 (en) | Method and apparatus for automatic generation of information system user interfaces | |
Torre et al. | A systematic identification of consistency rules for UML diagrams | |
JP2009193592A5 (en) | ||
US7448028B2 (en) | System and method for selective local object retrieval | |
Protic | Configuration management for models: Generic methods for model comparison and model co-evolution | |
Annevelink et al. | Object‐oriented data management based on abstract data types | |
Griebel | Repository Support for Visualization in Relational Databases | |
Wei | An extensible static analysis framework for automated analysis, validation and performance improvement of model management programs | |
Deliège | THESIS/THÈSE | |
Griefahn et al. | Tools for Chimera: An Environment for Designing and Prototyping Advanced Applications in an Active DOOD Model. | |
Guerrini | An Active and Deductive Object-Oriented Data Model | |
Bäckström et al. | Meta-Model Guided Error Correction for UML Models | |
Larson et al. | KBSA framework | |
Sagar | Feature-Oriented Decomposition of SQL: 2003 | |
Fadini et al. | PROGETIO FINALIZZATO SISTEMI INFORMATICI E CALCOLO PARALLELO SOTIOPROGETIO 6 Metodi e Strumenti per la Progettazione di Sistemi | |
Rao | Object-oriented language for the report specification interface to a case repository | |
Otterbein | ORM Business Tool | |
Afzal | Mining for patterns in program dependence graphs | |
Lucio | Dr. Norman Parrington, University of Sunderland, UK Dr. Robert Jones, CERN, Switzerland | |
UNIT et al. | OBJECT ORIENTED SOFTWARE ENGINEERING | |
Maggi | Portable DBMS: analysis, specification and prototype implementation of a JDBC layer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
AK | Designated states |
Kind code of ref document: A3 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2403975 Country of ref document: CA |
|
ENP | Entry into the national phase |
Ref country code: JP Ref document number: 2001 573206 Kind code of ref document: A Format of ref document f/p: F |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2001241945 Country of ref document: AU |
|
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2001913266 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 2001913266 Country of ref document: EP |
|
COP | Corrected version of pamphlet |
Free format text: PAGES 1-69, DESCRIPTION, REPLACED BY NEW PAGES 1-69; PAGES 70-79, CLAIMS, REPLACED BY NEW PAGES 70-79; PAGES 1/5-5/5, DRAWINGS, REPLACED BY NEW PAGES 1/7-7/7; DUE TO LATE TRANSMITTAL BY THE RECEIVING OFFICE |
|
WWG | Wipo information: grant in national office |
Ref document number: 2001241945 Country of ref document: AU |