Method and apparatus for visual programming
OwnerKin Ming Chaninventor
Life of this patent
Estimating the term…
Abstract
A method and apparatus for visual programming is provided. A domain model consisting of a set of object classes and a set of relationships therebetween, said sets of object classes and relationships having a set of attributes, is received and analyzed. An order of generation for the code modules is determined and each of the object classes is matched to at least one shell forming a basis for one of a set of code modules for implementation of the domain model. The attributes and relationships are then matched with template code blocks inserted into the shells. The code modules are generated by inserting the template code blocks into the shells according to the generation order.
Claims26
A method of visual programming, comprising the steps of:
- receiving a domain model representing a set of object classes, a set of relationships and a set of attributes;
- analyzing each of said object classes, relationships and attributes;
- matching said analyzed object classes with at least one corresponding shell;
- matching said analyzed relationships and said attributes with at least one corresponding template code block respective to said matched shells;
- and,
- determining a generation order for a set of code modules to implement said domain model;
- generating said set of code modules by inserting said at least one template code block into said shells according to said generation order.
An apparatus for visual programming, comprising:
- a computing device having a central processing unit (CPU), a data storage device for exchanging non-volatile data with said CPU, random access memory (RAM) for exchanging volatile data with said CPU, and an input interface for receiving data for said CPU and an output interface for presenting outputted data from said CPU;
- said CPU and RAM operable to receive a domain model via said input interface, said domain model being comprised of a set of object classes, a set of relationships and a set of attributes;
- said CPU being operable to analyze each of said object classes, said attributes and said relationships according to a modeling language used to create said model, said elements being stored in said data storage device and accessible by said CPU;
- said CPU further operable to determine a generation order for a set of code modules to implement said domain model;
- said CPU further operable to match said object classes with at least one corresponding shell stored in said data storage device and accessible by said CPU;
- said CPU further operable to match said analyzed relationships and said analyzed attributes with at least one corresponding template code block respective to said matched shells, said at least one template code block stored in said data storage device and accessible by said CPU;
- and,
- said CPU further operable to generate said set of code modules by inserting said template code blocks into said respective shells according to said generation order, and output said generated code modules to at least one of said output interface and said data storage device.
A method of visual programming, comprising the steps of:
- receiving a domain model representing a set of object classes and a set of relationships therebetween, said sets of object classes and relationships having a set of attributes;
- analyzing each of said object classes, attributes and relationships;
- determining a generation order for said code modules and said template code blocks to be inserted therein;
- matching each of said object classes to at least one shell, each of said shells forming a basis for one of a set of code modules for implementation of said domain model;
- matching said attributes and said relationships with at least one template code block for insertion into said shells;
- and,
- generating said set of code modules by inserting said template code blocks into said shells according to said generation order.
A method of visual programming, comprising the steps of:
- receiving a domain model including a plurality of elements that represent functional components of a software program;
- analyzing each of said elements and interrelations therebetween;
- matching said analyzed elements with predefined templates of software code shells and customizing said templates according to said analyzed elements and interrelations;
- and,
- generating said set of code modules by assembling said customized templates according to a determined generation order.
Dependencies are inferred from the claim text.