Reexamination Certificate
1993-12-23
2001-01-30
Vu, Viet D. (Department: 2758)
C345S215000
Reexamination Certificate
active
06179490
ABSTRACT:
BACKGROUND
The present invention is directed to a method and apparatus for creating a structured computer program, that is, a method and apparatus for creating a flowchart using a programmed computer which will automatically result in a structured program. In particular, the present invention relates to a method and apparatus for creating a flowchart such that any program code created from the flowchart will be a structured program.
There are numerous existing flowchart programs (see, for example, U.S. Pat. Nos. 4,546,435, 4,872,167, 4,852,047); however, none of the existing systems encourage, promote or require that the flowcharts which they create are structured according to the rigorous graphical notation used in the present invention. Source code or flowcharts which are not structured are said to be a “can of worms” or “spaghetti”. There are degrees of “spaghetti” depending on the degree of deviation from pure structured flowchart or code. Non-structured flowcharts (or code derived from non-structured flowcharts) are known to have more errors and be more difficult to maintain than structured flowcharts or code.
Companies that deliver products with embedded computers (such as the products that telecommunication switching-equipment companies deliver) depend more and more heavily on software. This is because the value added to the product, the software included, is becoming a larger and larger part of the investment in the product. The intelligence provided by the software is more and more valuable to the customer.
Customers want products delivered ever faster. They want more intelligence in the products they buy. For systems such as, for example, telephone switches, this means more features in the switch. The features requested and desired become more complicated each year. However, companies have often had great difficulty in delivering software with the desired functionality on time and with high quality. The company able to deliver high-quality software on time, with the desired functionality with have a tremendous competitive advantage over a company that is not able to do this.
The larger the quantity of code in a product or project, the more important it is that the code be structured. Structured code is also a very important component of the method to use to develop correct code. Code that is correct upon delivery is much less expensive overall to create than code that must be corrected after delivery. The software designer is perhaps the most scarce and expensive resource in this process of code development. The designer's time must be used in an effective way. The most effective way for a software designer to use his time is to design and write structured code. This goal is difficult to achieve using today's software development tools, since it is left to the designer to ensure that the flowchart or code he is developing is structured.
SUMMARY
It is accordingly an object of the present invention to provide a software development tool that will enable software designers to easily and efficiently develop structured software so as to achieve a better quality product, made less expensively.
It is another object of the present invention to provide a software development tool that will enable the development of software that is structured to enable the delivery of complex, software-intensive products on time and with higher quality.
It is another object of the present invention to provide a software development tool that will enable the software developed to have the properties necessary to help ensure profitability.
According to one embodiment of the present invention, a method of creating a flowchart using a programmable computer and a programmable computer display, such that any program created from the flowchart would be a structured program, the method including the steps of displaying a predetermined set of basic flow forms on a first display area, providing a means by which a user can select two flow forms from the set of flow forms, combining the two selected flow forms by placing one of the flow forms inside any statement box of another of the selected flow forms to yield a new valid flow form according to information provided by the user, and displaying the selected flow form and any new valid flow forms in a second area on the display. The basic flow forms are a statement box, a sequence of two statement boxes, iteration forms for FOR and WHILE statements, and alternation forms including boolean forms for IF-THEN and IF-THEN-ELSE statements and CASE statements.
According to an embodiment of the present invention, an apparatus is provided for assembling a flowchart on a programmable computer display including means for displaying on the screen a set of basic flow form icons, each icon comprising at least one polygon having one input line and one output line, each icon having one input line and one output line, user input means for enabling a user to select at least one of the basic flow form icons, and means for displaying the selected icon on a different area of the screen in a position designated by the user.
The apparatus according to one embodiment of the present invention further includes user input means for inputting text to be associated with the at least one polygon in the at least one selected icon, and means for displaying the inputted text in an area adjacent the at least polygon in the at least one selected icon.
Each icon in the apparatus according to one embodiment of the present invention includes a rectangular or square polygon and the means for displaying the selected icon includes means for combining two selected flow form icons, means for determining when the position designated for displaying the selected icon by the user is correct according to predetermined rules, and means for prohibiting operation of the means for displaying the selected icon responsive to a determination by the means for determining that the position designated is incorrect according to the predetermined rules.
According to an embodiment of the present invention, an apparatus is provided for assembling a flowchart on a computer display including means for displaying in a first area of the display a predetermined plurality of flowchart icons, each icon comprising at least one statement box, an input line and an output line, user input means for indicating selection of one of the plurality of flowchart icons, user input means for indicating placement of the selected icon in a second area of the display, means for determining whether the indicated placement of the selected flowchart icon satisfies predetermined rules, the rules allowing for placement of one icon inside a statement box of another previously selected icon to form a new flowchart icon, allowing for placement of one icon in a head-to-tail relationship with another icon, allowing only downward flow of control within the flowchart, and prohibiting crossing of any flow line within the flowchart, and means for temporarily adding to the predetermined plurality of flowchart icons any new flowchart icon created by the user input means for indicating placement.
Still other objects, features and attendant advantages of the present invention will become apparent to those skilled in the art from a reading of the following detailed description of the embodiments constructed in accordance therewith, taken in conjunction with the accompanying drawings.
REFERENCES:
patent: 4153932 (1979-05-01), Dennis et al.
patent: 4546435 (1985-10-01), Herbert et al.
patent: 4831580 (1989-05-01), Yamada
patent: 4852047 (1989-07-01), Lavellee et al.
patent: 4872167 (1989-10-01), Maezawa et al.
patent: 4914568 (1990-04-01), Kodosky et al.
patent: 4956773 (1990-09-01), Saito et al.
patent: 5005119 (1991-04-01), Rumbaugh et al.
patent: 5133045 (1992-07-01), Gaither et al.
patent: 5136705 (1992-08-01), Stubbs et al.
patent: 5187788 (1993-02-01), Marmelstein
patent: 5293476 (1994-03-01), Wolber et al.
patent: 5313574 (1994-05-01), Beethe
“Structured Diagrams—a software design tool”, Moore, D.T. & T.A. Galloway,Proceedings of the Onl
Burns Doane Swecker & Mathis L.L.P.
Telefonaktiebolaget LM Ericsson
Vu Viet D.
LandOfFree
Method and apparatus for creating a flowchart using a... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and apparatus for creating a flowchart using a..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for creating a flowchart using a... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2507714