Patent ID: 9229688
Filing Date: 2016-01-05
CPC Classification: G06F,G06Q

Claim Text:
1. A method for performing functional decomposition of a software design to generate a computer-executable finite state machine (FSM), the method comprising: decomposing functions in the software design into data transformations and control transformations repetitively until each of the decomposed data transformations consists of a respective linear code block; wherein the data transformations accept and generate data, and the control transformations evaluate conditions and send and receive control indications to and from associated instances of the data transformations; converting the software design to a graphical diagram database, the graphical database including a machine readable representation of a plurality of graphical symbols interconnected to hierarchically represent the data transformations and the control transformations in the software design, wherein: a first type of the graphical symbols comprise process symbols indicating functional decomposition elements within the software design, and a second type of the graphical symbols comprise control flow indicators between the functions, which indicators have transformation-selection conditions associated therewith; and the process symbols including control symbols and process symbols, wherein the control symbols indicate the control transformations, and the process symbols indicate the data transformations; translating the data transformations and the control transformations into states in the FSM; and translating the transformation-selection conditions associated with the control transformations into state transitions in the FSM; annotating the graphical database with program management information, the program management information comprising data selected from the group consisting of a duration, assigned programmer identification, and a start date; automatically generating a graphical project management chart from the graphical database, the project management chart selected from the group consisting of a GANTT chart and a PERT chart; wherein the translating steps are performed by a computer system.