# US 5,706,405 A · System and method for the design of software systems using a knowledge base

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 5,706,405 A
- Document ID: US5706405A
- Status: Granted
- Kind: A
- Application number: 08/561,901
- Filed: 1995-11-22
- Granted: 1998-01-06
- Earliest claimed: 1992-12-08
- Assignees: Sterling Software, Inc.
- Inventors: Keith W. Short; Josephine O'Dwyer; James R. Abbott
- Web page: https://patentgrep.com/patent/US5706405A

## CPC

- G06F 8/36: Software reuse
- G06N 5/022: Knowledge engineering; Knowledge acquisition
- Y10S 706/919: Designing, planning, programming, CAD, CASE
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- Y10S: TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS

## Abstract

A method (40) and system (10) are provided for knowledge based design. Conceptual model elements (12) are stored. Also, stereotype knowledge bases (14) are stored. Ones of the conceptual model elements (12) are matched with ones of the stereotype knowledge bases (14) to select a closest matching one (16) of the stereotype knowledge bases (14). Design model elements (18) are generated by applying scripts in response to the selected stereotype knowledge base (16).

## Claims

### Claim 1

A system for knowledge based design to facilitate the design of objects, comprising:
storage means for storing a plurality of conceptual model elements based on the design and a plurality of stereotype knowledge bases based on the type of software system design;
matching means coupled to said storage means for matching said conceptual model elements with said stereotype knowledge bases to select a closest match of said stereotype knowledge bases with said conceptual model elements; and
first generating means coupled to said matching means for generating a plurality of design model elements by applying scripts in response to said closest match of said stereotype knowledge bases.

### Claim 2 (depends on 1)

The system of claim 1, wherein said matching means further comprises modifying means for incorporating changes in said design model elements in response to an instruction from a user thereby generating modified design model elements.

### Claim 3 (depends on 2)

The system of claim 2, wherein said modifying means is further operable to modify said conceptual model elements in response to said instruction from the user.

### Claim 4 (depends on 3)

The system of claim 3, wherein said matching means is further operable to rematch said modified conceptual model elements with said stereotype knowledge bases to select an additional closest match of said stereotype knowledge bases.

### Claim 5 (depends on 1)

The system of claim 1, wherein the system further comprises second generating means coupled to said storage means for generating at least one of said stereotype knowledge bases in response to an instruction from a user.

### Claim 6 (depends on 1)

The system of claim 1, wherein each of said scripts forms a part of an associated stereotype rule.

### Claim 7 (depends on 1)

The system of claim 1, wherein said conceptual model elements represent an analysis stage of a software development life cycle.

### Claim 8 (depends on 1)

The system of claim 1, wherein said design model elements comprise at least one procedure action diagram.

### Claim 9

A system for knowledge based design to facilitate the design of an object, comprising:
storage means for storing a plurality of stereotype knowledge bases based on the type of software system design, each of said stereotype knowledge bases being modifiable according to at least one associated option;
modifying means coupled to said storage means for selecting one of said stereotype knowledge bases based on the design in response to an instruction from a user;
said modifying means further including means for modifying said one of said stereotype knowledge bases according to said at least one associated option in response to said instruction from the user; and
first generating means coupled to said modifying means for generating a plurality of design model elements by applying scripts in response to said modified one of said stereotype knowledge bases.

### Claim 10 (depends on 9)

The system of claim 9, wherein said modifying means is further operable to incorporate changes in said design model elements in response to said instruction from said user.

### Claim 11

A system for knowledge based design to facilitate the design of an object, comprising:
storage means for storing a plurality of stereotype knowledge bases based on the type of software system design, each of said stereotype knowledge bases being modifiable according to at least one associated option;
modifying means coupled to said storage means for selecting one of said stereotype knowledge bases based on the design in response to an instruction from a user;
said modifying means further including means for modifying said one of said stereotype knowledge bases according to said at least one associated option in response to said instruction from the user;
first generating means coupled to said modifying means for generating a plurality of design model elements by applying scripts in response to said modified one of said stereotype knowledge bases;
said modifying means being further operable to incorporate changes in said design model elements in response to said instruction from said user;
said modifying means is operable to further modify said modified one of said stereotype knowledge bases according to said at least one associated option in response to said instruction from said user; and
said first generating means is further operable to regenerate said design model elements by applying additional scripts in response to said further modified one of said stereotype knowledge bases so that said changes are retained by said regenerated design model elements.

### Claim 12 (depends on 9)

The system of claim 9, wherein said system further comprises second generating means coupled to said storage means for generating at least one of said stereotype knowledge bases in response to said instruction from said user.

### Claim 13 (depends on 9)

The system of claim 9 wherein each of said scripts forms a part of an associated stereotype rule.

### Claim 14 (depends on 9)

The system of claim 9, wherein said design model elements comprise at least one procedure action diagram.

### Claim 15

A method of knowledge based design to facilitate the design of an object, comprising the steps of:
storing a plurality of conceptual model elements and a plurality of stereotype knowledge bases based on the type of software system design;
matching said conceptual model elements with said stereotype knowledge bases to select a closest match of said stereotype knowledge bases with said conceptual model elements; and
generating a plurality of design model elements by applying scripts in response to said closest match of said stereotype knowledge bases.

### Claim 16 (depends on 15)

The method of claim 15, wherein the method further comprises the step of incorporating changes in said design model elements in response to an instruction from a user.

### Claim 17 (depends on 16)

The method of claim 16, wherein the method further comprises the step of modifying said conceptual model elements in response to an instruction from the user.

### Claim 18 (depends on 15)

The method of claim 15, wherein the method further comprises the step of generating at least one of said stereotype knowledge bases in response to said instruction from said user.

### Claim 19 (depends on 15)

The method of claim 15 wherein the method further comprises the step of forming each of said scripts from a portion of an associated stereotype rule.

### Claim 20 (depends on 15)

The method of claim 15, wherein the method further comprises the step of representing said conceptual model elements with an analysis stage of a development life cycle.

### Claim 21 (depends on 15)

The method of claim 15, wherein the method further comprises the step of generating at least one procedure action diagram from said design model elements.

### Claim 22

A method of knowledge based design, comprising the steps of:
storing a plurality of stereotype knowledge bases based on a type of software system design, each of said stereotype knowledge bases being modifiable according to at least one associated option;
selecting one of said stereotype knowledge bases in response to an instruction from a user;
modifying said one of said stereotype knowledge bases according to said at least one associated option in response to said instruction from said user; and
generating a plurality of design model elements by applying scripts in response to said modified one of said stereotype knowledge bases.

### Claim 23 (depends on 22)

The method of claim 22, wherein the method further comprises the stop of incorporating changes in said design model elements in response to said instruction from said user.

### Claim 24 (depends on 22)

The method of claim 22, wherein the method further comprises the step of generating at least one of said stereotype knowledge bases in response to said instruction from the said user.

### Claim 25 (depends on 22)

The method of claim 22, wherein the method further comprises the step of forming each of said scripts from a part of an associated stereotype rule.

### Claim 26 (depends on 22)

The method of claim 22, wherein said method further comprises the step of generating at least one procedure action diagram from said design model elements.
