Structured Decision Table <=> Generalized Decision Table Conversion Tool

Tian Fu


Tabular notation is a very important part of the functional documentation method that is used to produce computer system specifications. Many types of tables are currently used by the Software Engineering Research Group at McMaster University. Generalized decision tables are one of the types. In order to facilitate the use of tabular notation, a variety of tools were built or are being built to simplify tables, convert between table formats, check syntax, automatically generate test oracles, etc. Other types of decision tables are used by industry to write software specifications. Structured decision tables are one of the four types of tables adopted by Ontario Hydro for their safety critical software documentation. Like the Software Engineering Research Group, they also have tools to conduct syntax checking, software design verification, table completeness checking, table consistency checking, etc. The two sets of tools overlap in some areas but not others. Structured decision tables and generalized decision tables have different formats and representations for expressions in the tables. One type of table may be easier to read and have shorter expressions in some cases than the other. In order for Ontario Hydro and the Software Engineering Research Group to exchange specifications and utilize each other's available tools, the structured decision table <==> generalized decision table conversion tool project was initiated. The tool will help to ease communication and increase collaboration between the two parties. Based on the table holder module, the tool is developed in C using information hiding methodology. With the tool integration framework in mind, the tool is developed and tested independently, and finally integrated to the TTS (Table Tool System).