專利名稱:源程序編制支持系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及CASE ( Computer-aided software engineering:計算才幾輔助軟 件工程)工具即源程序編制支持系統(tǒng),更詳細地i兌,涉及在編制計算才幾的源 程序時,不需要高深的程序設計(programming)知識,在計算機支持的前提 下,能夠容易地編制計算機語言的源程序的系統(tǒng)。
背景技術:
如今,通用系統(tǒng)的系統(tǒng)開發(fā)通常以系統(tǒng)分析工程、系統(tǒng)設計(功能設計、 數(shù)據(jù)設計)工程、程序設計工程、程序設計工程、測試(驗證)工程的順序 進行。然后,編制系統(tǒng)化業(yè)務流程圖、系統(tǒng)化功能概要、輸入輸出定義的文 檔,并基于該文檔,分割為系統(tǒng)、子系統(tǒng)、過程(Process)、程序、以及^f莫塊, 從概要開始詳細地定義規(guī)格書。
在編制這樣的規(guī)格書的文檔時,在子系統(tǒng)關聯(lián)圖、子系統(tǒng)概要、過程關 聯(lián)圖、業(yè)務功能流程圖、過程概要、過程流程圖、程序概要、程序結構圖、 模塊(程序模塊概要、編碼這樣的各個工程中,基于其上流工程的文檔, 維持邏輯的關聯(lián)并編制各個文檔。
此時,文檔格式成為分別特有的格式,這樣編制形式多樣的文檔需要很 大的功夫及時間。
并且,程序設計由具有高深的程序設計知識的專家即程序設計員來完成, 對不具有程序設計知識的人員來說是不可能的。
為了解決這樣的以往例子的問題點,提出如下專利文獻1和2所述的、 在計算機支持的前提下能夠自動地編制程序設計的裝置和方法。
專利文獻1的制造管理程序自動編制裝置能夠編制C語言源程序,但由 于該裝置是用于編制產品的制造管理的程序的裝置,所以由元件的組合來編 制源程序。
此外,專利文獻2的自動程序設計方法也能夠生成C語言源程序,但該 方法是用于構筑專家系統(tǒng)的方法,從而該方法用途也是特定的。
而且,以往,在發(fā)生了規(guī)格書變更的情況下以及需要修正錯誤的情況下, 由于是不同形式的文檔,所以從這些文檔跨越多個工程而尋求相關聯(lián)的邏輯 變得極復雜,且邏輯的尋求也需要很大的工夫和時間。因此不變更文本而只 變更源程序的情況比較多,在這樣的情況下,難以維持規(guī)格書的邏輯和源程 序的邏輯的同一性。
此外,在包含事件處理的程序(在C語言中,存在來自畫面、鍵盤等的 輸入處理的程序)中,在畫面輸入處理的程序中,在輸入畫面顯示狀態(tài)下成 為輸入等待狀態(tài)。而且,接受輸入結束的確定信號即事件信號為止(例如,
來自鍵盤的Enter信號),程序成為處理等待。在包含這樣的事件處理的程序 中,在多個事件隨機發(fā)生的情況下,以往,很難在流程圖中明確且適當?shù)貥?記事件等待狀態(tài)。
另外,在以下的專利文獻3中,記載了能夠在流程圖中顯示多個事件等 待的流程圖輸入裝置。但是,在該流程圖輸入裝置中,不能適當?shù)乇憩F(xiàn)隨機 地進行多個事件和與其對應的處理的情況下的事件等待狀態(tài)。
例如,編制用于在畫面上輸入"姓名"、"假名(姓名)"、"郵政編碼"、"地 址"、"假名(地址),,的姓名地址程序的情況等那樣,需要考慮輸入操作員不 按照顯示的輸入畫面的顯示順序輸入的情況,從而編制程序。即,通常,操 作員將光標移動到顯示的任意項目的輸入欄,且進行數(shù)據(jù)的輸入或進行修正。 此時,事件根據(jù)光標的位置隨機地發(fā)生,所以需要使應編制的程序對應隨機 進行的處理。
而且,在用戶編制成為用于編制這樣的程序的前提的流程圖時,雖然需 要使其能夠將事件等待狀態(tài)明確且容易地表示,但在專利文獻3的流程圖輸 入裝置中,如該文獻的圖5和圖8所述那樣,若一個事件處理結束,則移動 到其他的步驟,并不是能夠在流程圖上適當?shù)乇硎驹诙鄠€事件和與其對應的 處理隨機發(fā)生的情況下的事件等待狀態(tài)的裝置。此外,假設,在若要將該以 往例子的流程圖輸入裝置變更為表示上迷的姓名地址輸入程序的情況下,如 圖15所示,成為非常復雜的流程圖。而且,輸入項目越增大復雜度越大,從 而用戶難以編制正確的流程圖。
此外,源程序通常由數(shù)據(jù)定義、畫面定義以及主程序的組合構成。 此外,以往,為了進行數(shù)據(jù)定義,在文件布局(file layout)用紙上一并 記述項目的位位置,并在發(fā)生了項目的追加、刪除、或項目的位數(shù)變更等的
情況下,重新決定位位置,進行再記述。而且,基于項目的細分化的詳細項 目定義也需要進行同樣的工作。然后,由于在開發(fā)時頻繁發(fā)生變更的情況較 多,每次變更要進行這樣的工作,所以較費功夫。而且,記述了的文件布局 信息,需要對每個程序進行編碼。
此外,以往,在進行畫面定義時,用手粗略圖畫畫面的相克要定義,以此 為基礎編制畫面布局。在編制畫面布局時,需要〗吏線、項目等的位置與畫面 上的X-Y坐標相對應,但該坐標值也要與線和項目屬性一同用源代碼定義。 此外,記述了的畫面布局信息需要對每個程序進行編碼。從而用以往方法進 行畫面定義,因繁雜的步驟和維護的困難性,工作效率較低。
專利文獻1:日本特開平6-214769號公報 專利文獻2:日本特開平9-91146號公報 專利文獻3:日本特開平11-296357號/>4艮
發(fā)明內容
發(fā)明所要解決的課題
如上所述,雖已提出了自動程序設計裝置和方法,但都特定化為對某一 特定的用途,特別是,不能在流程圖上適當?shù)乇硎径鄠€事件、以及與其對應 的處理隨機發(fā)生的情況下的事件等待狀態(tài)。
此外,如上所述,用以往的方法編制源程序的數(shù)據(jù)定義和畫面定義非常 繁雜,工作效率低。
本發(fā)明鑒于消除這樣的問題點而完成。
本發(fā)明的第 一 目的在于提供一種具有流程圖編制部件的源程序編制支持 系統(tǒng),該流程圖編制部件能夠在流程圖上適當?shù)乇硎径鄠€事件、和與其對應 的處理隨機發(fā)生的情況下的事件等待狀態(tài)。
本發(fā)明的第二目的在于提供一種包括用于達成上述的第一目的的流程圖 編制部件,且不具有高深的知識的人也能夠容易地編制任意的源程序的源程 序編制支持系統(tǒng)。
本發(fā)明的第三目的在于,在用于達成上述的第二目的的源程序編制支持 系統(tǒng)中,能夠以高工作效率編制源程序所包含的數(shù)據(jù)定義。
本發(fā)明的第四目的在于,在用于達成上述的第二目的的源程序編制支持 系統(tǒng)中,能夠以高工作效率編制源程序所包含的畫面定義。 本發(fā)明的第五目的在于,在用于達成上述的第二目的的源程序編制支持 系統(tǒng)中,可驗證所編制的源程序,并將其結果以容易明白的方式提供給用戶。 用于解決課題的方法
為了達到上述的目的,本發(fā)明提供一種源程序編制支持系統(tǒng),利用通過 計算機可讀取的程序,通過與用戶的對話編制源程序,該源程序編制支持系 統(tǒng)包括流程圖編制部件,支持在監(jiān)視屏幕上編制與應編制的源程序對應的流
程圖;流程圖解析變換部件,通過解析由該流程圖編制部件編制的流程圖, 變換為源代碼,從而變換為源程序,所述源程序編制支持系統(tǒng)的特征在于, 所述流程圖編制部件包括
板(Plate) —覽顯示部件,用戶可選擇地顯示一覽表,該一覽表包含 包括流程圖中所包含的開始端子、結束端子、流入線、流出線、以及多個框 的基本的板;以及包括通過隨機發(fā)生的多個事件分別被驅動的多個事件處理 的事件處理程序的開始板;
板配置部件,每次用戶從顯示的板一覽中選擇板,并在監(jiān)視屏幕上指定 其配置位置時,顯示被選擇到該配置位置的板的形狀,該板配置部件包括在 板一覽所包含的事件處理程序開始板被選擇時,使事件流程圖初始框組顯示 在流程圖編制區(qū)域上的部件,所述事件流程圖初始框組包括表示事件發(fā)生的 等待狀態(tài)的虛擬事件等待框、以及流出線連接到該虛擬事件等待框的返回端 子,以及
規(guī)格設定部件,顯示用于使用戶對配置在監(jiān)視屏幕上的框輸入與處理內 容對應的規(guī)格的輸入欄,并將被輸入的規(guī)格與該框相關聯(lián)地存儲, 流程圖解析變換部件包括
用于讀取事件處理定義的部件,在應變換為源程序的流程圖中包含虛擬 事件等待框時,判定為事件處理程序,作為OS的一部分安裝在所使用的計
算機上;
用于解析流程圖中的框的聯(lián)系從而取得各個框的聯(lián)系信息的部件; 通過將被設定在流程圖中的各個框的規(guī)格變換為源代碼,并且對該變換
的源代碼嵌入相應框的聯(lián)系信息,從而生成各個框的源程序^f莫塊的部件;以
及
將被讀取的事件處理定義,和被嵌入框的聯(lián)系信息的源程序模塊一體化, 而生成源4呈序的部件。
上述的本發(fā)明的源程序編制支持系統(tǒng)中,事件流程圖初始框組,最好除 了包括虛擬事件等待框和返回端子外,至少還包括開始端子、串聯(lián)配置在事 件等待框的下流的兩個判斷框、通過來自該判斷框的流出線分別與該判斷框 連接且其流出線與開始端子連接的兩個處理框。
此外,流程圖編制部件還包括板刪除部件,在用戶指示刪除配置在流 程圖編制區(qū)域的板時,刪除該板;以及在事件流程圖初始框組以外的板新配 置在流程圖編制區(qū)域時,在該板的下流自動地以與已配置了的板不同的顯示 方式顯示處理框及其流出線的部件。此時,優(yōu)選構成為,根據(jù)流程圖編制部 件的板一覽顯示部件顯示的板一覽中包含事件處理程序終止板,在顯示在流 程圖編制區(qū)域的流程圖中包含虛擬事件等待框,并且包含不同顯示方式的處 理框及其流出線的狀態(tài)下,在包含在板一覽中的事件處理程序終止板被選擇 時,板配置部件自動刪除不同顯示方式的處理框及其流出線,并在最下端的 判斷框的下方追加一個流出線與返回端子連接的判斷框,且追加連接到該判 斷框的另一個流出線且本身的流出線連接到返回端子上的處理框。
此外,上述的本發(fā)明的源程序編制支持系統(tǒng),該系統(tǒng)還包括雛型程序庫, 預先將與多個處理內容分別對應的源程序模塊即多個函數(shù)和其函數(shù)名對應地 存儲,流程圖編制部件的規(guī)格設定部件包括,為了用戶可選擇性地輸入作為 規(guī)格存儲在雛型程序庫中的函數(shù)名,對用戶提示雛型程序庫中的多個函數(shù)的 內容及其函數(shù)名的部件,在應變換的流程圖中存在將存儲在雛型程序庫中的 函數(shù)名作為規(guī)格進行設定的框的情況下,流程圖解析變換部件從該程序庫中 讀取與該函數(shù)名對應的函數(shù)。
而且,優(yōu)選構成為,流程圖編制部件包含執(zhí)行用于編制上位層的流程圖 和其下位層的詳細流程圖的降級功能的的部件,流程圖編制部件的規(guī)棉4殳定
部件,包括為了使用戶可選擇性地輸入用于確定下位層的流程圖的流程圖ID 作為上位層的流程圖的規(guī)格,對用戶提示下位層的流程圖的內容和流程圖ID 的部件,流程圖解析變換部件構成為,在應變換的流程圖中存在將流程圖ID 作為規(guī)格進行設定的框的情況下,從存儲部件讀取與該流程圖ID對應的程序模塊。
此外,上述的本發(fā)明的源程序編制支持系統(tǒng),優(yōu)選,流程圖編制部件還 包括標題設定部件,顯示用于對配置在監(jiān)視屏幕上的框輸入處理的標題的標 題輸入欄,并將被輸入的標題與框相關聯(lián)地存儲,此時,流程圖編制部件的
規(guī)格設定部件和標題設定部件優(yōu)選構成為,每次框通過板配置部件被顯示在 監(jiān)視屏幕上時,可設定規(guī)格和標題。此外,在僅包含流程圖編制部件的規(guī)格 設定部件的'清況下,該規(guī)格設定部件優(yōu)選構成為,每次框通過板配置部件被 顯示在監(jiān)視屏幕上時,可設定規(guī)格。
此外,上述的本發(fā)明的源程序編制支持系統(tǒng),優(yōu)選,流程圖編制部件還 包括引導部件,對用戶提供包含為了編制流程圖而預先設定了的多個提問的 引導,基于由用戶輸入了的對該引導的提問的應答,對話性地編制流程圖, 提問包括業(yè)務數(shù)量的提問,自動地在監(jiān)視屏幕上顯示基于用戶對于該提問的 回答的數(shù)量的判斷框以及處理框。此時,優(yōu)選,流程圖編制部件還包括示范
(pacemaker)部件,取得引導部件所提供的引導和用戶對于該引導的應答的 時間經(jīng)過歷史,并將該時間經(jīng)過歷史顯示在監(jiān)視屏幕上。
而且,上述的本發(fā)明的源程序編制支持系統(tǒng),優(yōu)選,流程圖編制部件包 括派生關系顯示部件,將預先編制的第一流程圖和第二流程圖之間的關系顯 示在監(jiān)視屏幕上,該第二流程圖是將該第 一流程圖的至少一個框的處理內容 細化而用多個框來顯示了的流程圖,在第一流程圖顯示在監(jiān)視屏幕上的狀態(tài) 下,當選擇已細化的源框時,該派生關系顯示單元使與該框對應的第二流程 圖中的多個框代替該框而顯示。
此外,優(yōu)選,上述的本發(fā)明的源程序編制支持系統(tǒng)還包括數(shù)據(jù)定義編 制部件,在顯示屏幕上基于與用戶的對話編制樹結構的數(shù)據(jù)布局(Data Lay Out),并基于該生成的數(shù)據(jù)布局進行由流程圖編制部件編制的流程圖中所使 用的數(shù)據(jù)的源程序的數(shù)據(jù)定義;以及畫面定義編制部件,在顯示屏幕上基于 與用戶的對話編制畫面,并基于該生成的畫面的要素的位置以及大小進行由 流程圖編制部件編制的流程圖中所使用的畫面的源程序的畫面定義。此時, 優(yōu)選,流程圖解析變換部件還包括在基于流程圖編制的源程序中,組合通過 數(shù)據(jù)定義編制部件和畫面定義編制部件編制的數(shù)據(jù)定義和畫面定義的部件。
而且,優(yōu)選,上述的本發(fā)明的源程序編制支持系統(tǒng)還包括用于驗證所編 制的源程序的驗證部件,該驗證部件包括在監(jiān)視屏幕上顯示與應驗證的源 程序對應的流程圖,并在所顯示的流程圖上設定中止設定點和通過設定點的 部件,所述中止設定點使源程序的運行暫時停止,取得處理結果,并顯示通 過歷史和處理結果,所述通過設定點僅取得處理結果;使應驗證的源程序運 行,在與該源程序對應并且被顯示了的流程圖上,伴隨處理的經(jīng)過而顯示通
過路線的部件;在處理到達中止設定點時,暫時停止處理,并顯示該中止設 定點和通過設定點的通過歷史的部件;以及在處理到達中止設定點時,將預 先設定在流程圖上的變量的值作為變量一覽來顯示的部件。
發(fā)明效果
本發(fā)明構成為上述那樣,能夠在流程圖上適當?shù)仫@示多個事件和與其對 應的處理隨機發(fā)生情況下的事件等待狀態(tài),且只要將包含這樣的事件等待狀 態(tài)的流程圖變換為源程序即可,所以容易生成包含事件等待狀態(tài)的源程序。 此時,流程圖中的規(guī)格的邏輯和源程序的邏輯的同一性被維持。
此外,在包括引導部件的情況下,通過引導來催促用戶的輸入,以此為 基礎自動地編制流程圖,所以對用戶來說與應編制的源程序對應的流程圖的 編制變得更容易。而且,通過包含派生關系顯示部件,從而用戶能夠容易地 把握起初流程圖和展開了此流程圖的展開流程圖之間的關系即此派生的來龍 去脈和程序的邏輯的進展。
此外,通過包含lt據(jù)定義編制部件和畫面定義編制部件,從而用戶可以 邊視覺確認樹結構的數(shù)據(jù)定義邊編制數(shù)據(jù)定義,此外,僅在監(jiān)視屏幕上編制 畫面,從而能夠編制畫面定義。由此,數(shù)據(jù)定義和畫面定義的編制和維護變
得容易。
而且,通過包含驗證部件,從而能夠實際運行所編制成的源程序從而進 行驗證,并能夠將其結果反應到源程序的修正中。
圖1是表示本發(fā)明的源程序編制支持系統(tǒng)的概略結構的方框圖。
圖2-1是表示圖1所示的系統(tǒng)中的流程圖編制模塊的概略結構的方框圖。
圖2-2是表示圖1所示的系統(tǒng)中的流程圖解析變換模塊的概略結構的方框圖。
圖2-3是表示圖1所示的系統(tǒng)中的驗證模塊的概略結構的方框圖。
圖3是表示圖2-2所示的流程圖編制模塊的動作的流程圖。
圖4-1是表示根據(jù)流程圖編制模塊的功能所顯示的板一覽的示意圖。
圖4-2是根據(jù)流程圖編制模塊的功能所顯示的屏幕截圖的示意圖。
圖4-3是基于與用戶的對話根據(jù)流程圖編制模塊的功能所顯示的屏幕截圖的示意圖。
圖4-4是基于與用戶的對話根據(jù)流程圖編制模塊的功能所顯示的屏幕截 圖的示意圖。
圖4-5是基于與用戶的對話根據(jù)流程圖編制模塊的功能所顯示的屏幕截 圖的示意圖。
圖4-6是基于與用戶的對話根據(jù)流程圖編制模塊的功能所顯示的屏幕截 圖的示意圖。
圖4-7是基于與用戶的對話根據(jù)流程圖編制模塊的功能所顯示的屏幕截 圖的示意圖。
圖4-8是表示基于與用戶的對話根據(jù)流程圖編制模塊的功能所顯示的、 完成后的圖像流程圖的屏幕截圖的示意圖。
圖5是表示標題通過用戶輸入到圖4-8所示的圖像流程圖中從而編制成 的標題流程圖的屏幕截圖的示意圖。
圖6是表示規(guī)格通過用戶輸入到圖4-8所示的圖像流程圖中從而編制成 的概要流程圖的屏幕截圖的示意圖。
圖7-1是表示用于在判斷框里輸入標題和規(guī)格的輸入畫面的屏幕截圖的 示意圖。
圖7-2是表示標題和規(guī)格通過用戶輸入到圖7-1所示的輸入畫面的狀態(tài)
的屏幕截圖。
圖7-3是表示如圖7-2所示那樣被輸入的狀態(tài)下的判斷框的正本數(shù)據(jù) (master data)的i兌明圖。
圖7-4是表示規(guī)格被輸入的狀態(tài)下的處理框的正本數(shù)據(jù)的一例的說明圖。
圖7-5是用于說明通過流程圖編制模塊的事件等待標記功能執(zhí)行的事件 流程圖編制處理的流程圖。是屏幕截圖。
圖7-6是表示通過事件等待標記功能被顯示的事件流程圖初始框組的屏
幕截圖。
圖7-7是表示通過事件等待標記功能,在圖7-6的顯示狀態(tài)下追加了其 他框的狀態(tài)屏幕截圖。
圖7-8是表示通過事件等待標記功能,在圖7-7的顯示狀態(tài)下追加事件 流程圖結束框組而完成的圖像流程圖的屏幕截圖。
圖7-9是表示在圖7-7所示的圖像流程圖中輸入標題而編制標題流程圖 的狀態(tài)的屏幕截圖。
圖7-10是表示在圖7-7所示的圖像流程圖中輸入規(guī)格而編制概要流程圖 的狀態(tài)的屏幕截圖。
圖8是用于說明流程圖編制模塊中的詳細流程圖編制時的降級功能的說明圖。
圖9-1是在流程圖編制模塊中的引導功能的流程圖編制時自動顯示的屏
幕截圖。
圖9-2是例示在流程圖編制模塊中的引導功能的引導內容和其用戶應答 的說明圖。
圖9-3是基于與用戶的對話,流程圖編制模塊中的引導功能的流程圖編 制時顯示的屏幕截圖。
圖9-4是基于與用戶的對話,流程圖編制^f莫塊中的引導功能的流程圖編 制時顯示的屏幕截圖。
圖9-5是基于與用戶的對話,流程圖編制模塊中的引導功能的流程圖編 制時顯示的屏幕截圖。
圖9-6是基于與用戶的對話,流程圖編制模塊中的引導功能的流程圖編 制時顯示的屏幕截圖。
圖10-1是例示引導數(shù)據(jù)的說明圖,該引導數(shù)據(jù)與經(jīng)過的時間一起存儲了 流程圖編制模塊中的示范功能和引導功能的流程圖編制時所獲得的? 1導數(shù)據(jù) 的內容和其用戶的應答。
圖10-2是表示根據(jù)圖10-1所示的引導數(shù)據(jù)編制的引導時間表的示意圖。 圖11-1是基于與用戶的對話,通過數(shù)據(jù)定義編制模塊的功能顯示的屏幕 截圖的示意圖。
圖11-2是基于與用戶的對話,通過數(shù)據(jù)定義編制模塊的功能顯示的屏幕 截圖的示意圖。
圖11-3是基于與用戶的對話,通過數(shù)據(jù)定義編制模塊的功能顯示的屏幕 截圖的示意圖。
圖11-4是基于與用戶的對話,通過數(shù)據(jù)定義編制模塊的功能顯示的屏幕 截圖的示意圖。
圖11-5是基于與用戶的對話,通過數(shù)據(jù)定義編制模塊的功能顯示的屏幕
截圖的示意圖。
圖11-6是基于與用戶的對話,通過數(shù)據(jù)定義編制模塊的功能顯示的屏幕 截圖的示意圖。
圖11-7是基于與用戶的對話,通過數(shù)據(jù)定義編制^f莫塊的功能顯示的屏幕 截圖的示意圖。
圖11-8是基于與用戶的對話,通過數(shù)據(jù)定義編制模塊的功能顯示的屏幕 截圖的示意圖。
圖11-9是基于與用戶的對話,通過數(shù)據(jù)定義編制模塊的功能顯示的、完
成后的文件布局的屏幕截圖的示意圖。
圖11-10是表示圖11-9所示的文件布局中的記錄數(shù)據(jù)的一例的說明圖。 圖12-1是表示通過畫面定義編制模塊的功能應編制的畫面的一例的屏 幕截圖。
圖12-2是表示通過畫面定義編制模塊的功能顯示的畫面定義板一覽的 示意圖。
圖12-3是表示通過畫面定義編制模塊的功能顯示的邊線字段屬性輸入 畫面的屏幕截圖。
圖12-4是將通過畫面定義編制模塊的功能而顯示的按鈕字段的屬性輸 入畫面,與通過該功能事先編制成的邊線一同表示的屏幕截圖。
圖12-5是表示通過畫面定義編制模塊的功能被編制并顯示的按鈕的屏
幕截圖。
圖12-6是表示通過畫面定義編制模塊的功能被顯示的字符字段的屬性 專t入畫面的屏幕截圖。
圖12-7是表示通過畫面定義編制模塊的功能被顯示的線字段的屬性輸 入畫面的屏幕截圖。
圖12-8是表示通過畫面定義編制模塊的功能被顯示的數(shù)值字段的屬性 輸入畫面的屏幕截圖。
圖13-1是用于說明通過流程圖解析變換模塊的功能被執(zhí)行的、向C++ 語言的變換的說明圖。
圖13-2是用于說明通過流程圖解析變換模塊的功能被執(zhí)行的、向BASIC 語言的變換的說明圖。
圖13-3是表示功過流程圖解析變換模塊的功能被執(zhí)行的、將包含了事件
處理的流程圖變換為源程序時的處理的流程圖。
圖13-4是例示由包含了事件處理的流程圖變換的源程序的圖。
圖13-5是后續(xù)圖13-5例示的源程序的源程序的圖。
圖14-1是表示通過驗證模塊的功能,在流程圖上設定了中止(Pause) 和通過(Pass)設定點的狀態(tài)的屏幕截圖。
圖14-2是表示通過驗證模塊的功能取得并顯示的通過歷史一覽的屏幕 截圖。
圖14-3是表示通過驗證模塊的功能取得并顯示的函數(shù)值一覽的屏幕截圖。
圖15是表示由根據(jù)以往例子編制成的流程圖假設的、包含事件處理的程 序的流程圖的表現(xiàn)的圖。
具體實施例方式
以下參照
本發(fā)明的源程序編制支持系統(tǒng)的適當?shù)膶嵤┓绞健?本發(fā)明的系統(tǒng)是由能夠安裝到PC上的計算機程序構成的系統(tǒng),如圖1 所示,此程序按功能大致可分為流程圖編制模塊10、數(shù)據(jù)定義編制模塊20、 畫面定義編制模塊30、流程圖解析變換模塊40、以及驗證模塊50。這些程 序模塊的概略功能如下。 流程圖編制模塊10
是用于編制所要編制的程序的流程圖的模塊,包括基于對PC屏幕的用 戶的框的選擇和配置、以及標題和規(guī)格的輸入,完成概略、詳細流程圖的功 能。此時,根據(jù)降級功能, 一邊根據(jù)上層流程圖和下層流程圖從概要到詳細 進行相關聯(lián), 一邊還定義邏輯關聯(lián),并從最上層的流程圖到最下層的流程圖 全部被相關聯(lián),同時還能夠進行規(guī)格定義。被編制成的概要、詳細流程圖作 為包含該流程圖中包含的每個框的輸入輸出關系的屬性數(shù)據(jù)被保管。
由此,流程圖的編制作業(yè)變得效率化,即使產生需要規(guī)格變更的情況, 由于能夠在流程圖上確認變更處,所以規(guī)格變更的作業(yè)也變得效率化。
數(shù)據(jù)定義編制模塊20
是在PC屏幕上,用戶將文件布局編制成樹狀的功能。文件級、記錄 (record )級的定義根據(jù)提示而進行。記錄項目通過用戶選擇數(shù)據(jù)定義用處理 框的上下左右邊,從而能夠定義新的項目和屬性。在上下邊被選擇的情況下, 在此項目的上下并列位置上定義新的項目。在左邊被選擇的情況下,在此項 目的上層位置定義新的項目,在右邊被選擇的情況下,在此項目的下層位置
定義新的項目。項目的刪除通過用戶選擇成為此對象的位置而進行。在發(fā)生 了項目的位數(shù)(字節(jié)數(shù))變更等的情況下,通過變更此項目屬性,從而自動
調整位數(shù)。編制成的lt據(jù)定義作為每個項目的屬性數(shù)據(jù)來保管。
能夠在PC屏幕上進行數(shù)據(jù)定義所需的所有的處理,且能夠一邊視覺確
認樹結構的數(shù)據(jù)定義一邊編制數(shù)據(jù)定義,所以數(shù)據(jù)定義的編制和維護變得效率化。
畫面定義編制;f莫塊30
利用運用了應用于圖形編制的圖形處理的功能,在PC屏幕上編制畫面 布局。此時,首先,用戶從畫面要素一覽選擇畫面布局所包含的畫面要素, 并輸入其畫面要素的定義內容,在屏幕上指定位置和大小,從而編制畫面布 局所包含的各個畫面要素。在規(guī)格變更時和缺陷(Bug)修正時,將線、板等 畫面要素移動、追加到需要的位置,或從需要的位置刪除,從而執(zhí)行。所編 制的畫面定義作為每個畫面要素的屬性數(shù)據(jù)(包含位置和大小數(shù)據(jù))而被保官。
由于能夠在PC屏幕上進行畫面定義所需要的全部的處理,且能夠邊以
視覺確認邊編制畫面定義,所以畫面定義的編制和維護變得容易。
流程圖解析變換模塊40
基于由流程圖編制模塊IO編制的流程圖(包含從最上層流程圖至最下層 流程圖),參照根據(jù)數(shù)據(jù)定義模塊20和畫面定義模塊30而編制成的數(shù)據(jù)定義 和畫面定義,從而編制源程序。此時,首先解析主流程圖的框聯(lián)系,若聯(lián)系 沒有矛盾,則將從開始端子開始至返回端子為止的干線的框的內容變換為源 代碼。臨時保管變換中出現(xiàn)的畫面和下層展開函數(shù)。干線的向源程序的變換 后,以出現(xiàn)的順序解析這些保管的畫面和函數(shù),并變換為源代碼。此外,具 有下層展開的函數(shù),進行降級而進行函數(shù)內部的解析和變換,將最下層為止 的流程圖變更為源程序。在規(guī)格變更(也包括追加規(guī)格)和缺陷修正時,變 更修正流程圖從而使該模塊動作,從而也自動地變更源程序。源代碼可由C++ 和BASIC等各種計算機語言來編制。
驗證々莫塊50
運行被編制的源程序從而進行該程序的驗證。在PC屏幕上,顯示與運
行的源程序對應的流程圖,然后,在運行了該源程序時,在該流程圖上顯示
處理的通過路線(Route )。此外,用戶能夠在該流程圖的通過路線上的任意 的點上設定中止(Pause)點和通過(Pass)點。若程序處理到達設定了中止 點的位置,則該處理暫時停止,取得并顯示此時刻的流程圖中的各個變量值, 并且顯示中止點和通過點的通過歷史。若程序處理到達設定了通過點的位置, 則雖取得此時刻的流程圖中的各個變量值,但該處理繼續(xù)。在程序的運行中 發(fā)生錯誤(Error)的情況下,在錯誤列表上顯示該框和處理行。由此,能夠 驗證編制的源程序的動作,在有錯誤的情況下,可檢測此錯誤而容易地進行 修正。
如圖2所示,流程圖編制模塊10的功能包括圖像流程編制模塊11、標 題流程圖編制模塊12、概要流程圖定義模塊13、概要流程圖新規(guī)編制模塊 14、概要流程圖編制引導模塊(以下,簡稱為"引導模塊")15、示范模塊16、 以及詳細流程圖定義模塊17。
這些模塊11 17的概略功能如下所述。
圖像流程圖編制模塊11
基于與用戶的對話,編制主程序的圖像流程圖。圖像流程圖為僅規(guī)定框 和其連接關系的流程圖。該模塊包含編制用于事件等待標記的困像流程圖的 事件等待標記模塊111。
標題流程圖編制模塊12
通過使用戶對編制的圖像流程圖的各個框輸入在此框中的處理的標題, 從而編制標題流程圖。另外,標題表示處理的概要內容。 概要流程圖定義模塊13
通過使用戶對編制的標題流程圖的各個框輸入處理規(guī)格,從而編制程序 的概要流程圖。
概要流程圖新規(guī)編制模塊14
通過與用戶的對話,用戶每次設定流程圖應包含的框時,輸入該框的規(guī) 格(或規(guī)格和標題),從而完成概要流程圖。 引導模塊15
將用于流程圖編制的思考步驟作為引導消息提供給用戶。引導消息通過 以提問回答形式進行而定義各個框的規(guī)格,從而完成概要流程圖??蛇x擇在 提問回答中經(jīng)過了規(guī)定的設定時間的情況下,以別的疑問等提示輸入作業(yè)。
示范模塊16
以引導模塊對流程圖編制中的提問回答設定應答時間的限制,在經(jīng)過了 限制時間的情況下,以"不明白嗎?,,等其他的提問回答對工作者通知作業(yè)。 此外,通過對處理經(jīng)過時間進行分析,從而判定工作者的擅長/不擅長,并進 行作業(yè)改善的建i義。
詳細流程圖定義模塊17
具有降級功能,基于與用戶的對話,編制所編制的概要流程圖的第一下 層級至最下層級為止的各層的流程圖(詳細流程圖)。
選擇流程圖編制模式而流程圖編制模塊IO被啟動時,如圖3的流程圖所 示那樣動作。即,首先在步驟S1中,判定是否選擇了圖像流程圖編制模式, 在其結果為是(肯定)的情況下,圖像流程圖編制模塊11被啟動,在步驟 S2中,通過與用戶的對話流程圖被編制。此后,標題流程圖編制模塊12啟 動,在步驟S3中基于與用戶的對話編制標題流程圖。若完成標題流程圖,則 概要流程圖定義模塊13被啟動,在步驟S4中基于與用戶的對話,概要流程 圖定義被編制。概要流程圖定義是通過對標題流程圖的各個框輸入處理規(guī)格, 從而編制主流程圖即概要流程圖的情況。
另一方面,在步驟S1中判定為沒有選擇圖像流程圖編制模式,且在步驟 S5中判定為選擇了概要流程圖新規(guī)編制模式時,進入步驟S6,概要流程圖新 規(guī)編制模塊14被啟動,通過與用戶的對話而編制概要流程圖。步驟S6中的 概要流程圖的編制,在每次設定應包含在流程圖中的框時,通過對該框輸入 規(guī)格(或者規(guī)格和標題),從而完成概要流程圖。即,直接編制概要流程圖而 不需要完成圖像流程圖和標題流程圖。
此外,在步驟si中判定沒有選擇圖像流程圖編制模式,且在步驟ss中
判定為沒有選擇概要流程圖新規(guī)編制模式,且在步驟S7中判定為選擇了提示 模式,在步驟S8中判定為選擇了示范模式時,進入步驟S9,示范模塊16被 啟動,并在步驟SIO中引導模塊15被啟動。由此,基于與用戶的對話,進行 按照示范和引導功能的概要流程圖編制。另一方面,若在步驟S8中判定為示 范沒有被選擇,則進入步驟SIO,引導模塊15被啟動,基于與用戶的對話進 行流程圖編制的提示,并編制積克要流程圖。
若步驟S4、 S6和S10中的任意一個結束,且詳細流程圖定義模式被選 擇,則移至步驟Sll,詳細流程圖定義模塊16被啟動,基于與用戶的對話,
定義并編制詳細流程圖。如上所述,詳細流程圖是從編制的概要流程圖的第
一下層至最下層為止的流程圖,各層的詳細流程圖與步驟S2 S4、步驟S6、 步驟S8、以及10的任意一個的概要流程圖的編制一樣地被編制。
由此,完成最下層為止的詳細流程圖,并在步驟S12中判定其是否完成, 則結束流程圖編制模塊10的處理。另外,通過這樣的降級功能編制詳細流程 圖時,輸入到上位層的流程圖的框的規(guī)格成為用于表示與該框對應的下位層 的詳細流程圖的流程圖ID。
如圖2-2所示,流程圖變換模塊40的功能大致可分為用于解析流程圖 的處理框、流入線和流出線之間的關聯(lián)的流程圖聯(lián)系解析模塊41、用于解析 各流程圖中的框內的內容的框內容解析模塊42、用于將各框內的規(guī)格變換為 源代碼的源程序變換模塊43、用于將數(shù)據(jù)定義和畫面定義嵌入源程序的數(shù)據(jù) 定義/畫面定義源程序嵌入模塊44、用于解析展開函數(shù)的展開函數(shù)解析模塊 45、以及用于嵌入展開函數(shù)的展開函數(shù)源程序嵌入模塊46。此外,如圖2-3所示,驗證模塊50的功能大致可分為顯示處理的通過 路線的顯示模塊51、取得基于中止/通過功能的處理結果并顯示的取得/顯示 模塊52、顯示處理錯誤的顯示模塊53、以及顯示處理的整體結果的整體處理 結果顯示模塊54。
本發(fā)明的系統(tǒng)還具有用于存儲與上述的模塊的功能關聯(lián)的數(shù)據(jù)的數(shù)據(jù)庫 (DB)。如圖1所示,該數(shù)據(jù)庫具有流程圖板正本(platemaster)數(shù)據(jù)庫DBl、 流程圖文件DB2、引導正本DB3、引導數(shù)據(jù)DB4、數(shù)據(jù)定義文件DB5、畫面 定義板正本DB6、畫面定義文件DB7、語言正本DB8、代碼式記述正本DB9、 源程序文件DBIO、以及通過歷史/變量值文件DB11。
這些數(shù)據(jù)庫存儲以下這些數(shù)據(jù)。
流程圖板DB1
存儲基于流程圖編制模塊IO的功能編制流程圖時使用的、開始端子、結 束端子、處理框、判斷框、畫面顯示框、打印框、下流出線、上流出線等的 基準板、事件處理程序的開始框(以下,成為"事件框,,)、事件處理程序的終 止框(以下成為"事件終止框")(以下,將這些總稱時,稱為"框")的圖像。 此外,還預先存儲由根據(jù)事件框而指定的多個框的組合配置構成的事件流程 圖初始框組以及由根據(jù)事件終止框而指定的多個框的組合配置構成的事件流 程圖終止框組。流程圖文件DB2
存儲根據(jù)流程圖編制模塊10的功能而編制成的流程圖中的每個框的數(shù)
據(jù)。另外,在圖1中,雖顯示兩個流程圖文件DB2,但其目的是使處理的流 向明確,是相同的DB。 提示正本DB3
用于存儲在根據(jù)引導模塊15而執(zhí)行的流程圖編制時應對用戶提問的指 標(guide line )(引導)的數(shù)據(jù),并對應存儲根據(jù)示范模塊16和引導模塊15 而執(zhí)行的流程圖編制時對于提問的用戶的回答時間和對用戶的提示(hint)。 此外存儲根據(jù)^^示編制流程圖時的初始流程形式的凝:據(jù)。
引導數(shù)據(jù)DB4
用于存儲在根據(jù)引導模塊15執(zhí)行流程圖編制時,用戶對于提問的回答, 并在根據(jù)示范模塊16和引導模塊15而執(zhí)行的流程圖編制中,將與用戶之間 的提問回答與時間對應地存儲。
數(shù)據(jù)定義文件DB5
存儲根據(jù)數(shù)據(jù)定義編制模塊20的功能在PC屏幕上設定的數(shù)據(jù)定義,作 為每個項目的數(shù)據(jù)。
畫面定義用板正本DB6
存儲基于畫面定義編制模塊30的畫面定義的編制時使用的框、按鈕等的 畫面編制所需要的板的要素。 畫面定義文件DB7
存儲根據(jù)畫面定義編制模塊30的功能在PC屏幕上設定的畫面定義,作 為畫面的每個結構要素(框、按鈕、線、表等)的數(shù)據(jù)。 語言正本DB8
存儲根據(jù)流程圖解析變換模塊40的功能,將編制的流程圖變換為源程序 時參照的、用戶輸入的規(guī)格語言和源代碼的對照表。源代碼與程序語言的種 類對應地存儲。
代碼記述式正本DB9
存儲根據(jù)流程圖解析變換模塊40的功能,將編制的流程圖變換為源程序 時參照的、用戶輸入的規(guī)格的配置位置和源代碼的配置的對照表。此外,對 應于使用頻率高的典型的框的源程序的模塊即函數(shù)也存儲在雛型程序庫 (library)中。雛型程序庫(library)中包含例如畫面處理用、打印處理用、
修補(Patch)處理用的雛型的函數(shù)(分別多個)。 源程序文件DBIO存儲根據(jù)流程圖解析變換模塊40的功能而編制的源程序。 通知歷史/變量值文件DB11
存儲根據(jù)驗證模塊50使編制成的源程序運行從而驗證時,流程圖上設 定的1個或多個點的通過歷史、以及流程圖中的變量的值。
接著,參照根據(jù)本發(fā)明的系統(tǒng)的各個模塊10 50的功能而在PC屏幕上 顯示的圖像,從而進一步詳細說明本發(fā)明的系統(tǒng)的結構。
用戶在PC屏幕上啟動本發(fā)明的源程序編制應用,并選擇流程圖編制模 式,則流程圖編制模塊IO啟動。然后用戶從流程圖編制菜單選擇圖像流程圖 編制模式,則圖像流程圖編制模塊1被啟動。
若圖像流程圖編制模塊11被啟動,則流程圖編制區(qū)域顯示在PC屏幕上, 并從流程圖板正本DB1讀出顯示了流程圖中包含的圖像框的板,且作為圖4-1 所示的板一覽自動地顯示在PC屏幕的下端部分或右端部分等合適的位置。 與此同時,如圖4-2所示,在PC屏幕的流程圖編制區(qū)域自動地顯示開始端子 和下流出線,并在其下流出線的下端自動地以虛線(或閃爍狀態(tài))顯示處理 框。此外,在該處理框的下端自動地以虛線顯示下流出線。
此后,用戶若從顯示的板一覽依次選擇畫面顯示框、判斷框、文件處理 框,則如圖4-3所示,在PC屏幕的流程圖編制顯示領域顯示畫面輸入處理框 A、判斷框B、文件處理框C,且每顯示各個框,在其下端顯示下流出線a、 bl、 c。此外,每次框重新被顯示時,被自動的更新顯示,以使虛線的處理框 和虛線的下流出線位于其下端。在圖4-3的例子中,由于文件處理框C成為 最后被選擇的框,因此在此下流出線c的下端,自動地顯示虛線的處理框和 虛線的下流出線。
在圖4-3所示的狀態(tài)下,若用戶選擇判斷框B的右尖端,則如圖4-4所 示,從判斷框B的右端自動顯示右流出線b2。然后自動刪除在圖4-3的狀態(tài) 下的虛線的處理框和下流出線,在判斷框B的右側自動顯示虛線的處理框和 下流出線。在圖4-4所示的狀態(tài)下,若用戶選"t奪右流出線b2的右端,則如圖 4-5所示,顯示與右流出線b2連接了的下流出線(連接下流出線b2)、虛線 的處理框和下流線顯示在其下端。
接著,若用戶從板一覽選擇處理框,則如圖4-6所示,處理框D和其下
流出線d被新配置,且在此下流出線的下端以虛線(或閃爍狀態(tài))自動地顯 示處理框。此外,在該處理框的下端以虛線自動地顯示下流出線。若為了使
下流出線d流入下流出線c,選擇處理框D的下端的下流出線d和文件處理 框C的下端的下流出線c,則如圖4-7所示,新配置的處理框D的下流出線 與下流出線c結合,并顯示連接下流出線d。此后,用戶選擇判斷框E,并設 定其流出線,然后依次選擇打印處理框F和結束端子,則編制成如圖4-8所 示的圖像流程圖。此時,若用戶為了添加處理順序號而在PC屏幕上選擇"添 加號碼"按鈕(未圖示),則如圖4-8所示的框號自動添加到各個框。另外, 也可以在每次框被選擇從而被配置時,賦予虛擬的框號,且在"添加號碼"按 鈕被選擇的時刻賦予正規(guī)的框號。
在編制圖像流程圖后,想要從該流程圖中刪除某一框時,用戶通過選擇 該框從而從被顯示的菜單選擇"刪除",從而該框被刪除。此外,若要追加某 一框,則用戶從板一覽選擇框,并將光標移動到應插入的位置,從而執(zhí)行追 加。在執(zhí)行了這樣的變更后,通過再次選擇"添加號按鈕",從而框號被重新 附加。
編制成的圖像流程圖中所包含的各個框的種類和框相互間的連接關系, 與框號、流程圖名、以及流程圖ID對應,并存儲在流程圖文件DB2。
接著,若用戶選擇標題流程圖編制模式,則標題流程圖編制模塊12被啟 動,用戶可對圖像流程圖中的各個框輸入標題。即,用戶每次選擇框時,顯 示標題輸入畫面(日語名輸入畫面),用戶在該畫面上輸入標題。然后,用戶 輸入全部的框的標題,并輸入判斷框的分支條件,從而標題流程圖被編制。
圖5表示對圖4-8所示的圖像流程圖的各個框輸入標題從而標題流程圖 被編制的狀態(tài)。該例子的流程圖名是"NIPPO-HIZUKE"。被輸入的各個框的 標題與其框號對應,例如框號2與"畫面輸入處理"對應,框號3與"日期判定 處理"對應,...,并存儲在流程圖文件DB2。
若標題流程圖的編制完成,且用戶選擇概要流程圖定義模式,則概要流 程圖定義模塊13被啟動。此時,與標題流程圖的編制一樣,圖像流程圖(或 標題流程圖)被顯示在PC屏幕上,若用戶選擇顯示的流程圖中的框,則顯 示規(guī)格輸入畫面。用戶在該畫面上輸入規(guī)格,然后輸入全部的框的規(guī)格,從 而與主程序相應的概要流程圖被編制。與概要流程圖的各個框有關的全部的 數(shù)據(jù)作為每個框的流程式正本存儲在流程圖文件DB2中。對于規(guī)格輸入和流
程圖正本,從后述的圖7-1~圖7-4的說明可明白。
圖6表示通過輸入圖4-8所示的圖像流程圖的各個框的規(guī)格從而概要流 程圖被編制的狀態(tài)。
在上述說明中,說明了在不同的畫面上輸入標題和規(guī)格的情況。代替這 樣的結構,也可以將標題流程圖編制模塊12和概要流程圖定義模塊13的功 能一體化,并在同一個輸入畫面上輸入標題和規(guī)j各。對此,以下以用戶選擇 了判斷框的情況為例進行說明。
若用戶選擇圖4-8所示的圖像流程圖中的判斷框(框號3),則顯示圖7-1 所示的輸入畫面。該畫面顯示多個輸入欄,這些輸入欄對應附有字段(field) 號Fxxx。然后,與未輸入的一個標題輸入欄和4個規(guī)格輸入欄同時,顯示圖 像流程圖編制時被輸入的輸入線(流入線)、輸出線(流出線)、以及當前的 框號和下一個框號。此外,在圖像流程圖編制時沒有設定的流入/流出線的可
設定位置以及分支條件的可設定位置上,也顯示了輸入欄。
在圖7-1的例子中,框號3顯示在字段號F001所對應的位置,輸出線顯 示在字段號F036和F037所對應的位置,這些輸出線附近的字段號F035和 F038所對應的位置上顯示分支條件(=、#、 >、 <、 ^、 5)的輸入欄。此外, 還顯示用于表示是判斷框的情況的框種類代碼"06",框種類代碼對應附有字 段號F002。框種類代碼在用戶在板一覽中選擇了框時,此框的種類被判定, 與該種類對應的代碼被附加。
如圖7-2所示用戶在圖7-1所示的畫面上,,對標題輸入欄(F021 )輸入 "日期驗證",并對4個規(guī)格輸入欄輸入"D1 (數(shù)據(jù)名)"(FOll)、 "050303" (F013)、"日期,,(F012)、以及"今日,,(F014),則如圖7-3所示的框號3的 正本^皮編制。
此外,用戶在圖4-8所示的流程圖中例如選擇框號5的處理框,并其規(guī) 格為展開函數(shù)"SUBPG01,,的情況下(框種類代碼10),編制成圖7-4所示的 框號5的正本。
由此,圖像流程圖中的全部框的標題和規(guī)格被輸入,其結果,每個框的 正本被編制。被編制成的框正本與其流程圖的流程圖ID對應地存儲在流程圖 文件DB2。
在上述的說明中,以在編制了如圖4-8所示的圖像流程圖之后,對每個 框輸入標題和規(guī)格作為前提,但通過啟動概要流程圖新規(guī)編制模塊14,從而
能夠對每個框輸入標題和規(guī)格,而無需編制或完成圖像流程圖。每次用戶在 PC屏幕上從板一覽選擇框而顯示在流程圖編制區(qū)域時,該模塊14使輸入畫 面顯示,且用戶能夠在該畫面上輸入框的輸入輸出線、標題和規(guī)格、分支條 件(判斷框的情況下)。例如、在判斷框的情況下,在將該判斷框顯示在流程 圖編制區(qū)域的時刻,在判斷框上顯示圖7-1所示的輸入欄,用戶對該輸入欄 輸入輸入輸出線、分支條件(=、#、 >、 <、 ^、 S)、標題、以及規(guī)格。分支 條件也可以不顯示輸入欄,通過指定判斷框的端部附近,并從由此所顯示的 下拉菜單選擇從而被輸入。同樣輸入輸出線也可以不顯示輸入欄,指定判斷 框的端部并從由此所顯示的下拉菜單選擇。
由此,圖7-3 (判斷框用)和圖7-4 (處理框用)所示的框正本被編制。 此外,也可以不啟動概要流程圖新規(guī)編制;f莫塊14,通過適當切換流程圖 編制模塊ll、標題流程圖編制模塊12、以及概要流程圖定義模塊,從而每次 在流程圖編制區(qū)域配置1個或多個框時,能夠輸入標題和/或規(guī)格。
這里,對于在本發(fā)明的系統(tǒng)的流程圖編制模塊10的事件等待標記模塊 111中執(zhí)行的、編制包含了隨機發(fā)生的多個事件的等待狀態(tài)的流程圖的功能, 參照圖7-5的流程圖詳細進行說明。另外,該功能使用戶能夠容易且正確地 在流程圖上表現(xiàn)多個事件等待狀態(tài),但基本上使用與圖4-l 圖7 4關聯(lián)地說 明了的功能。
首先,用戶要編制包含多個事件等待狀態(tài)的流程圖的情況下,選擇流程 圖編制模式。由此,如先前說明的那樣,流程圖編制模塊IO被啟動,然后, 用戶從流程圖編制菜單選擇圖像流程圖編制模式,則圖像流程圖編制模塊11 被啟動,流程圖編制區(qū)域顯示在PC屏幕上,并在圖7-5的步驟S70中,從流 程圖板正本DB1,在PC屏幕的適當?shù)奈恢米詣拥仫@示圖4-1所示的板一覽。 與此同時,如先前說明的那樣,如圖4-2所示的初始畫面、即顯示了實線的 開始端子和下流出線、點線的處理框以及下流出線的初始畫面,自動地顯示 在流程圖編制區(qū)域。
在該狀態(tài)下,若用戶從顯示的板一覽選擇事件框,則圖像流程圖編制模
塊ii對其進行判斷,并在步驟S7i中啟動事件等待標記模塊iii。模塊in
若被啟動,則在步驟S72中,從流程圖編制區(qū)域自動刪除圖4-1所示的初始 畫面,并從流程圖板正本DB1讀出事件流程圖初始框組^^而〗吏其自動地顯示。 事件流程圖初始框組,具有例如圖7-6所示的結構,在該例子中,包含附有
框號1 12的開始端子、處理框、畫面顯示框、處理框、虛擬事件等待框、處 理框、三個判斷框、兩個處理框、以及返回端子、和來自各個框的流出線、 以及從返回端子對虛擬事件等待框的虛線的箭頭。事件流程圖初始框組,無 需包含上述的全部的框,至少包含虛擬事件等待框和返回端子,并包含從返 回端子對虛擬事件等待框的箭頭(在圖中的例子中為點線的箭頭)即可。此
時,開始端子等其他的端子,如參照圖4-3~圖4-7說明,用戶從板一覽適當 選擇,配置在事件流程圖編制區(qū)域即可。
然后,事件等待標記模塊111待機用戶的下一個動作。
在存在對該畫面上顯示的流程圖應進一步追加的框(包含流出線和流入 線)情況下,用戶從板一覽選擇適當?shù)目颍⒂霉鈽酥付ㄆ渑渲梦恢?。事?等待標記模塊111在步驟S73中判定該情況,在步驟S74中進行框的追加處 理。相反,在存在應刪除的框的情況下,用戶選擇該框,從而選擇刪除菜單 即可。這在步驟S75和S76中執(zhí)行。在框的追加處理中,用戶指定判斷框(框 號9)的下流的位置作為新的框的配置位置時,事件等待標記模塊lll自動地 修正流出線,以使在判斷框(框號9)和返回端子(框號12)之間不形成直 接路線。例如,在圖7-6中,自動地將從判斷框(框號9)的下流橫向延伸的 流出線變更為下流出線。
圖7-7表示,在圖7-6所示的畫面上的流程圖中,用戶在判斷框(框號9) 的下流追加3個判斷框(框號13、 15、 17),并分別對應地追加3個處理框 (框號14、 16、 18),并從這些各個框被追加了流出線的狀態(tài)。在該情況下, 在最后被追加的流出線(來自框號17的判斷框的)下方,自動地追加虛線的 處理框和下流出線。
在這樣的狀態(tài)下,若用戶從板一覽選擇事件終止框,則事件等待標記模 塊111在步驟S77中判斷該狀態(tài),然后在步驟S78中自動刪除虛線的處理框 和流出線,并從流程圖板正本.DB1讀出與事件終止框對應地存儲的多個框的 組合即事件流程圖終止框組,從而配置在該位置上。然后通過用戶選擇畫面 上的"附加號按鈕",從而最終的正規(guī)的框號自動地被附加,并形成如圖7-8 所示的流程圖。在該例子中,事件流程圖終止框組包含 一個判斷框(框號 13)、配置在其橫向的一個處理框(框號19)、來自這些框的橫向的流出線、 以及從被追加的判斷框(框號13)向返回端子(框號12)的流出線。
這樣,與包含事件處理的程序對應的圖像流程圖被編制,然后,事件等
待標記模塊111在步驟S79中,檢測圖像流程圖編制的終止,則在步驟S80 中,將編制的流程圖與流程圖ID對應地存儲在流程圖文件DB2,由此,圖像 流程圖編制模式結束。在步驟S79中的判定,可根據(jù)"附加號按鈕"是否被選 擇來判定,此外,也可以根據(jù)"終止按鈕"是否被選擇來判定。另外,如圖7-6 所示,在事件流程圖初始框組中,顯示在最后段的判斷框的下流線與返回端 子(框號12)連接。從而,僅通過在步驟S72中顯示事件流程圖初始框組, 能夠結束圖像流程圖編制。
用戶若為了對這樣編制的圖像流程圖的各個框輸入標題和分支條件而選 擇"標題流程圖編制模式",則如先前說明的那樣,標題流程圖編制模塊被啟 動,且用戶可以對圖像流程圖中的各個框和流出線輸入標題和分支條件。在 用戶所要編制的程序為姓名地址注冊程序的情況下,例如,如圖7-9所示, 標題和分支條件被輸入。圖7-9的例子中表示,框2~22中分別被輸入"描畫 前初始處理"、"畫面"、"描畫后初始處理"、"虛擬事件等待"、"事件信號編輯 處理"、"是信號"0" "、"是確認按鈕 "、"是姓名?"、"是注音假名(姓名) "、 "是郵政編碼?,,、"是地址?,,、"是注音^f叚名(地址)?"、"終止?"、"光標 移動處理"、"確定處理"、"姓名處理"、"注音^f叚名(姓名)處理"、"郵政編碼 處理"、"地址處理"、"注音假名(地址)處理"、"終止處理"的標題,且分支 條件"是,,和"否,,分別被輸入到判斷框(框號7 14)的狀態(tài)。虛擬事件等待框 (框號5)是用于顯示特殊功能的框,從而也可以預先輸入標題(和規(guī)格)。
另外,即使是用戶輸入標題和分支條件的過程中,在存在不必要的框的 情況下,如先前說明的,通過選擇該框而選擇"刪除"菜單,從而能夠進行刪 除。此外,在存在要追加的事件處理的框的框的情況下,如先前說明,通過 用戶從板一覽選擇框,并將光標移動到應插入該框的位置,從而能夠追加框。
此外,如先前說明,也可以每次從板一覽選擇一個或適當個框而顯示在 流程圖編制區(qū)域時,使用戶能夠輸入框的標題、輸入輸出線、分支條件(判 斷框的情況下)。
被編制的標題流程圖也存儲在流程圖文件DB2 。
若標題和分支條件的輸入結束,則接著用戶為了輸入規(guī)格而選擇"概要流 程圖定義模式",則概要流程圖定義模塊13被啟動,如先前說明,用戶對每 個框輸入規(guī)格。圖7-10表示這樣編制成的概要流程圖。
另外,如上所述,在代碼式記述正本DB9中存儲有與使用頻率高的框對
應的已編制成的程序模塊的程序庫,并能夠輸入用于確定這些程序模塊的程
序模塊ID即函數(shù)名作為規(guī)格。在圖7-10中,被輸入到框號2 4的框的規(guī)格 "GPG—Ol()"、 "GPG—02()"、 "GPG—02()"是與這些框對應的函數(shù)名。
此外,如參照圖8在下面說明那樣,通常通過詳細流程圖定義模塊17 的降級功能,伴隨概要流程圖中的復雜的處理的框被展開成更下層的流程圖。 這樣的、展開成下層的流程圖的框中,"規(guī)格"是用于確定與該框對應的下層 的流程圖(和與其對應的源程序)的流程圖ID。在圖7-10中,輸入到框號 15~22的框的規(guī)格"PG—ll()"、 "kakutei()"、...是下層的流程圖ID???中的 規(guī)格是"PG一05()",該"PG一05()"也表示下層的流程圖ID。
概要流程圖定義模塊13提供存儲在雛型程序庫中的程序模塊即函數(shù)的 內容用和函數(shù)名、以及預先編制并變換為源程序而存儲在源程序文件DB10 的下層的流程圖的內容以及流程圖ID,以便用戶在畫面上可^r索。參照這些, 用戶能夠對流程圖的框輸入函數(shù)名和下層流程圖的ID作為規(guī)格。另外,在對 應的下層的流程圖還未編制的情況下,預先設定該下層的流程圖ID作為規(guī) 格,此后,根據(jù)降級功能編制下層的流程圖即可。
另一方面,輸入到判斷框7 14的規(guī)格分別為"SINGO:O"、 "button:8004"、 "now:100101"、 "now:100102"、 "now: 100103"、 "now:100104"、 "now: 100105"、 "END—FLG:0",表示在判斷處理中應對比的對象。
這樣編制的概要流程圖也存儲在流程圖文件DB2 。
如上可知,在本發(fā)明的系統(tǒng)的支持下編制成的包含事件處理的程序的流 程圖,在事件處理隨機發(fā)生的情況下,也能夠以用戶容易明白的狀態(tài)顯示事 件等待狀態(tài),從而用戶能夠容易編制與打算的處理內容一致的流程圖。
此外,以往,為了編制源程序,記述在處理框的語言,通常為遵照制作 者語言特有的形式的記述。在本發(fā)明的系統(tǒng)中,能夠進行不受制作者語言特 有的形式的制約的自由的標記。這樣的標記方式在本說明書中成為"新標記", 由此,能夠以用戶個人容易明白的語言編制規(guī)格。即,在標記的用戶語言經(jīng) 由語言正本源代碼變換時變換為編制語言的形式。因此,若使用該功能,則 在變換為源代碼的時刻,能夠自由選擇變換后的通用計算機語言(C、 C++、 Java等)。
對于從規(guī)格至源代碼的變換,在后面詳細說明。
接著,若詳細流程定義模式被選擇,則詳細流程定義模塊n被啟動,在
與用戶的對話下,所編制的主流程圖即概略流程圖的下層的詳細流程圖被編
制。對于詳細流程定義模塊17的動作,參照圖8進行說明。
如圖8所示,在概略流程圖即主流程圖A的處理框中設定函數(shù)B,在該 函數(shù)B具有復雜的結構的情況下,在流程圖上用戶指定函數(shù)B并選擇降級菜 單,則用于處理函數(shù)B的流程圖編制畫面自動顯示。在該畫面上,與用戶進 行對話,進行上述的扭無略流程圖的編制一樣的處理, >夂人而編制子流程圖B。 在該編制成的子流程圖B包含函數(shù)C的情況下,用戶指定該函數(shù)C并選擇降 級菜單,則函數(shù)C的流程圖編制畫面被顯示,編制子流程圖C。在子流程圖 C包含函數(shù)D的情況下,同樣,編制用于處理該函數(shù)D的子流程圖D。
由此,通過重復上述的過程,從而能夠編制任意級的子流程圖,從而即 使主流程圖中的處理復雜,通過使用詳細流程圖定義模塊17這樣的功能(降 級功能),也能夠容易地編制至最下層的流程圖。
若用戶要編制概略流程圖而選擇引導模式,則引導模塊15被啟動。則引 導模塊15從引導正本DB3讀出初始流程形式的數(shù)據(jù),并如圖9-1所示,在 PC屏幕的流程圖編制區(qū)域自動生成開始端子、初始處理框、連接符號(G1 )、 以及結束端子。
圖9-2表示存儲在引導正本DB3的凄t據(jù)的一例,在引導正本DB3中, 除了初始流程形式以外,與流程圖的層形式對應地存儲有應對用戶提問的內 容,作為引導數(shù)據(jù)。
在顯示了初始流程形態(tài)后,引導模塊15基于預先存儲在引導正本DB3 的指示,提問較大的業(yè)務的數(shù)量(業(yè)務量)(例如"業(yè)務量是多少")。與此對 應,例如,在輸入了業(yè)務量=3的相應的情況下,如圖9-3所示,使4個判斷 框、3個處理框自動地配置在連接符號和結束端子之間。
此后,對于第一 第三個的業(yè)務的標題名的提問,例如,被輸入了"日報 處理"、"月末處理"、"年末處理,,的情況下,在圖9-3所示的判斷框和處理框 自動地顯示對應的標題。接著,在對于關于要追加的業(yè)務的提問,用戶回答 有追加業(yè)務,并輸入其第四個業(yè)務的標題為"合計處理"的情況下,成為圖9-4 所示的畫面。相反在沒有追加業(yè)務的情況下,提問第一個"日報處理,,的功能 數(shù)量(例如"那么,日報處理的功能是幾個"),對此回答而輸入三個功能的情 況下,如圖9-5所示,刪除圖9-4的日凈艮處理,并自動顯示三個判斷4匡和三個 處理框。然后,從用戶取得三個處理內容為"注冊處理"、"正處理"、"刪除"處理"的情況時,其結果,圖9-6所示的流程圖被顯示。
由此,通過基于存儲在引導正本DB5的引導,反復進行基于引導和用戶 回答的顯示,從而能夠編制概略流程圖。概略流程圖的內容如上述那樣存儲 在流程圖文件DB2,此外,提問回答的內容作為引導數(shù)據(jù)存儲在引導數(shù)據(jù) DB4。
此時, 一般進展為多個處理,以使1個處理包含多個處理(最初),此多 個處理的一個再包含多個處理(第一的展開)。這樣的情況在本說明書中稱為 "屬于派生關系",并將最初的框稱為派生源,將該框的進展了的多個框稱為 派生目的。例如在編制圖9-4所示的標題流程圖的情況下,此流程圖的"日報 處理,,框(框號9 )和圖9-6的判斷框(框號14 16 )以及處理框(框號17~19 ) 屬于派生關系,且前者為派生源,后者為派生目的。此外,將包含派生源框 (最初框)的流程圖稱為最初流程圖,包含派生目的(展開框)的流程圖稱 為展開流程圖。
在本發(fā)明的系統(tǒng)中,這樣的派生關系也存儲在流程圖文件DB2中。例如, 在派生目的的框(框號14 19)的框正本存儲派生源的框的ID (即框號)作 為派生關系的數(shù)據(jù)。然后,在顯示了圖9-4的流程圖的狀態(tài)下,若選擇派生 源的框(框號9),則置換該框而顯示派生目的的多個框(框號14 19),相反 在顯示了圖9-6的流程圖的狀態(tài)下,若選擇派生目的的多個框(框號14~19), 則置換這些框而顯示派生源的框(框號9)。
通過這樣的派生關系的顯示,從而把握派生的經(jīng)過和程序邏輯的進展變 得容易。
若用戶選擇示范功能,則示范模塊16被啟動。示范模塊16是與引導模 塊15共同地進行處理的模塊,若示范模塊16被啟動,則引導模塊15也被啟動。
然后,每次計算測量用戶對于引導模塊15的提問進行回答為止的時間, 并將計算測量的時間與提問內容和回答內容一起作為? 1導數(shù)據(jù)存儲在可1導數(shù) 據(jù)DB4。在用戶第一規(guī)定時間(例如30秒或1分鐘)以上不輸入對各個提問 的回答的情況下,對用戶提供用于催促回答的消息,第二規(guī)定時間(例如、2 分鐘)以上不輸入的情況下,從提示正本DB3檢索與該提問類似的情形,并 將回答的提示(hint)提供給用戶。此外,在第三規(guī)定時間(例如,5分鐘) 以上不回答的情況下,進行是中斷處理還是繼續(xù)處理的確認,在中斷的情況
下將至今為止編制的流程圖保存在流程圖文件DB2,并終止處理。在用戶選
擇了繼續(xù)的情況下,重復上述的處理。
根據(jù)引導模塊15和示范模塊16的功能而完成的概要流程圖的內容存儲 在流程圖文件DB2。
圖10-1例示在示范模式下執(zhí)行時的存儲在引導數(shù)據(jù)DB4中的數(shù)據(jù)。另 外,在不是示范模式而是提示模式被執(zhí)行的情況下,有關時間的數(shù)據(jù)不存儲 在引導數(shù)據(jù)DB4,僅存儲提問和對于該提問的回答之間的關系。
此外,圖10-2將圖10-1所示的引導數(shù)據(jù)作為提示時刻表來顯示的圖。 示范模塊16具有使這樣的提示時刻表顯示在PC屏幕上的功能,由此,能夠 把握用戶的作業(yè)效率的問題點。例如,在圖10-2的例子中,在右下角的直線 中,其坡度越大,表示用戶回答所使用的時間越長。從而,能夠估計為與坡 度大的直線對應的提問,由于用戶有問題或者規(guī)格有問題等原因,回答耽誤 了,并能夠設為今后的課題。
接著,對于數(shù)據(jù)定義編制模塊20,詳細進行說明。若數(shù)據(jù)定義編制模塊 20被啟動,并從此菜單畫面選擇文件布局,則顯示如圖U-l所示的文件信息 框的輸入畫面。在該豐lT入畫面上通過用戶^皮輸入文件屬性(文件名、日文名、 記錄長、密鑰長、形式)。圖11-1表示文件屬性被輸入后的畫面,在該例子 中,文件名-KOKYAKU-F、日文名=顧客文件、記錄長=123、密鑰長=7、形 式=1: ISAM。
在該狀態(tài)下,若用戶選擇"確定,,按鈕(未圖示),則如圖11-2所示,在"文 件布局,,的下層位置自動顯示文件信息框"KOKYAKU-F",并顯示記錄長為123 的情況和是顧客文件的情況。
接著,顯示如圖11-3所示的項目信息框的輸入畫面。在該輸入畫面中輸 入項目屬性(項目名、日文名、類型、位數(shù)),若用戶選擇確定按鈕,則成為 如圖11-4所示的畫面。在該例子中,項目名-RlOOO、日文名=姓名記錄、類 型=字符、位數(shù)=123,在"KOKYAKU-F,,的下層自動生成并顯示"R1000"的記 錄信息框,并顯示記錄長為123的情況和是姓名記錄的情況。
在編制記錄名"R1000"的記錄信息的詳細內容項目(即下層的項目)的情 況下,用戶指示該"R1000"的框的右端。則如圖11-5所示,在該框的下層位 置虛擬生成項目信息框并以虛線顯示。黑色圓點表示用戶所選擇的位置(框 的右端)。然后,再次顯示圖11-3所示的項目信息框的輸入畫面。若用戶在如,項目名^K1100、日文名=密鑰部、卩立|史=7, 其結果,如圖11-6所示,項目信息框"K1100"自動生成并顯示,且顯示是密 鑰部的情況和位數(shù)7的情況。同樣,下層的項目框和其屬性依次被設定。
要在同一層編制新的項目信息框的情況下,用戶指定該層的框的上邊或 下邊,則如圖11-7所示,在該項目信息框的上側或下側(但是同一層)虛擬 生成新的項目信息框并以虛線顯示。在圖H-7的例子中是項目"K1110"的下 邊被選擇或項目"K1130"的上邊被選擇的情況下的任意一個。
要在已設定的項目信息框的上位層編制新的項目信息框的情況下,用戶 指定該項目信息框的左邊。其結果,如圖ll-8所示,在該項目信息框的一個 上位的層(親層)虛擬生成并顯示新項目信息框。
對于這些虛擬生成的項目信息框,通過在圖11-3所示的項目信息框的輸 入畫面上用戶輸入屬性而確定,從而這些屬性信息在文件布局畫面上顯示。
由此,以樹結構編制并完成如圖11-9所示的、數(shù)據(jù)定義信息的文件布局。 編制的文件布局存儲在數(shù)據(jù)定義信息文件DB5.
若選擇完成或未完成狀態(tài)的文件布局中的記錄布局"R1000",則該項目的 內容以如圖11-10所示的形態(tài)輸出。在需要修正完成的或未完成狀態(tài)的文件 布局的情況下,例如,需要追加新的項目的情況下,如圖11-10所示的空白 被利用。在不存在空白部分或其位數(shù)不足的情況下,顯示警報。
才妄著,以定義圖12-1所示的畫面的情況為例,詳細i兌明畫面定義沖莫塊 30的結構。若畫面定義模式被選擇而畫面定義模塊30被啟動,則顯示畫面 布局區(qū)域,并從畫面定義用板正本DB6讀出畫面定義用的板一覽,顯示在PC 屏幕上的適當?shù)奈恢?。圖12-2表示所讀出的畫面定義板一覽的一部分。
在用戶要編制邊線(顯示邊線)FR的情況下,若從畫面定義板一覽選擇 邊線板,則自動顯示圖12-3所示的邊線板屬性輸入畫面。在該畫面上用戶輸 入(或變更預先顯示的初始值)線的粗度、線種類、以及線的顏色,并在畫 面布局區(qū)域上用戶操作鼠標而移動光標,從而已輸入的粗度、線種類和顏色 的線的圖形描畫被執(zhí)行,邊線(圖12-4的邊線FR)被顯示。所生成的邊線 的X-Y坐標自動被獲取。然后,圖12-3所示的各種屬性與邊線ID對應地存 儲在畫面定義文件DB7。
接著,用戶從畫面定義板一覽選擇按鈕板,從圖12-4所示的按鈕字段屬 性輸入畫面輸入屬性,并移動操作光標,從而如圖12-5所示,各種按鈕被編 制在畫面上。通過用戶對圖12-4所示的按鈕字段輸入畫面的顯示字符的欄輸
入標題,從而按鈕上的標題("返回"、"檢索"、"開頭"、"地區(qū),,)被顯示。此 外,通過讀取被編制的按鈕的位置坐標,從而各個按鈕的開始位置和終止位
置的X-Y坐標自動地被獲取。然后,圖12-4所示的各種屬性與各按鈕ID對 應地存儲在畫面定義文件DB7。
同樣,字符字段、線、固定字符的畫面要素被編制,圖2-1所示的畫面 被編制,然后這些定義4皮存儲在畫面定義文件DB7中。圖12-6~圖12-8表示 字符字段、線、數(shù)值字段的屬性輸入畫面,且這些屬性信息與各個ID對應地 存儲在畫面定義文件DB7。
詳細流程圖被編制,數(shù)據(jù)定義和畫面定義被編制后,若用戶選擇變換模 式而啟動流程圖解析變換模塊40,則詳細流程圖自動地被編制成源程序。此 時,流程圖解析變換模塊40的流程圖聯(lián)系解析模塊21 (圖2-2),讀取與詳 細流程圖的開始端子連接的框和其流出線,并沿著干線解析聯(lián)系(即,各個 框的下流側框是哪一個),且處理框內容解析模塊22解析各個框的規(guī)格內容。 重復這樣的處理,并解析至返回端子的聯(lián)系和規(guī)格內容。對于判斷框, 一同 解析干線和分支線,但確認判斷框的上下左右的輸入輸出條件,并確認分支 方向。
在流程圖沒有矛盾地完結的情況下,源程序變換模塊23,將各個框內的 處理內容即規(guī)格變換為源代碼。在處理內容中包含需要外部信息的畫面、展 開函數(shù)等的情況下,暫時保管此框的處理內容。然后,將干線上的其他的框 的內容變換為源代碼,接著將分支線上的框的內容變換為源代碼。此后,與 數(shù)據(jù)定義、畫面定義源程序組合模塊24—同,將暫時保管的框的處理內容以 此圖像、函數(shù)等的出現(xiàn)順序取得并解析外部信息,并進行變換,以使組合成 源程序。對于展開函數(shù),展開函數(shù)解析模塊25使用與圖8關聯(lián)地說明了的降 級功能而解析,展開函數(shù)源程序組合模塊26將此結果組合為源程序。
但是,為了編制源程序,記述在處理框的語言,通常為遵照編制語言特 有的形式的記述。在本發(fā)明的系統(tǒng)中,能夠進行不受制作者語言特有的形式 的制約的自由的標記。這樣的標記方式在本說明書中成為"新標記",由此, 能夠以用戶個人容易明白的語言編制規(guī)格。即,標記的用戶語言經(jīng)由語言正 本在源代碼變換時變換為制作者語言的形式。因此,若使用該功能,則在變 換為源代碼的時刻,能夠自由選擇變換后的通用計算機語言(<:丄++、8八81(:、
Java等)。
參照語言正本DB8和代碼式記述正本DB9,將成為用戶語言的新標記方 式的規(guī)格變換為C+十語言,但例示存儲在語言正本DB8的新標記方式的規(guī)格 和C+十語言的源代碼的對應。
-成為處理內容"結合A區(qū)域的字符串和B區(qū)域的字符串,存儲在A區(qū)域"
成為
新,才示記方式A+=B; C++: stract(A,&B);
-處理內容為"對C區(qū)域的數(shù)值加上J區(qū)域的數(shù)值,并將其結果存儲在C
區(qū)域。然后,對j區(qū)域的數(shù)值加r,
新標i己方式C=C+J J=J+1
C+十語言C=C+J J++;
處理內容為"對J區(qū)域的數(shù)值加1。然后,對C區(qū)域的數(shù)值加上J區(qū)域的
數(shù)值,并將其結果存儲在c區(qū)域"
新標記方式J=J+1 C=C+J
C+十語言OC+J ++J; 比較運算子(等號、不等號、以上、以下) 新標記方式 = # S
C十+語言 == != <= >=
處理內容"中斷處理被指定的時間(中斷時間毫秒)" 新標記方式Cyudan (其中,中斷時間以1.5秒作為標準來i殳定) C十+語言 Sleep ( 1500)(其中,中斷時間指定1.5秒間) 處理內容"指定的持續(xù)時間響指定的響聲(頻率Hz、持續(xù)時間毫秒)" 新標記方式Oto (其中,設定為以900Hz響1/4秒作為標準) C十+語言Beep(900,250)(其中,指定為以900Hz響1/4秒) 處理內容"顯示"輸入錯誤"的字符" 新標記方式Hyoj i ( 800200 )
C十+語言ADCHAR (字段800200的"輸入錯誤"的意思) 處理內容"以指定的顏色顯示"
新標記方式Aka Midori Ao
C+十語言 RGB ( 255,0,0 ) RGB(0,255,0) RGB(0,0,255) l新標記方式 Kuro Siro C十+語言 RGB(O,O,O) RGB(255,255,255)
上述例示的新標記方式和C++語言之間的對應關系存儲在語言正本 DB8。此外,這樣的對應關系,根據(jù)所需要的計算機語言的種類而被編制并 存儲。另外,新標記方式的情況下,可以使用用戶習慣的語言標記,所以也 可以代替拉丁字母而使用平假名或片假名。
例如,處理內容為"將字符的顏色設定為紅色而顯示錯誤信息,并響警告 音,且等待1.5秒"的情況下,新標記方式和C十+語言中,標記為如下。
新標記方式的4昔誤消息標記處理
Text(Aka);
Hyoji(800200,"輸入錯誤。");
Oto;
Machi;
C十+語言的錯誤消息標記處理 Set Text Color(RGB(255,0,0)); ADCHAR(800200,"輸入錯誤。"); Beep(900,175); Sleep(1500)
從而根據(jù)本發(fā)明的系統(tǒng),在對流程圖中輸入弄見格內容時,通常能夠以用 戶個人容易明白的語言輸入,且標記的用戶語言經(jīng)由語言正本表變換為C語 言等,所以即使是不懂計算機語言的用戶也容易輸入。
以圖7-2所示那樣設定的判斷框(框號3)為例子,說明向源代碼的變
換動作。
流程圖解析變換模塊40的處理框內容解析模塊22 (圖2-2 )從流程圖文 件DB2讀出圖7-2所示的框號3的正本數(shù)據(jù)(即,圖7-3所示的數(shù)據(jù)),從而 解析所讀出的數(shù)據(jù)。接著,源程序變換模塊23,從代碼式記述正本DB9調用 判斷框的情況下的代碼記述正本。在C十+語言的情況下,成為圖13-1的右側 所示的排列的記述正本。然后,以圖13-1所示的對應關系,將框正本中的字 段號的數(shù)據(jù)分配給所讀出的記述正本的各個項。
即,根據(jù)處理框種類為表示判斷框的"06,,的情況,從代碼式記述正本DB9 讀出與該"06"對應的記述正本,然后,將處理框號"3"復制在處理號的位置, 并將左項和右項的數(shù)據(jù)名"D1"以及"050303"分別復制在對應的位置。此外, 檢索語言正本DB8,讀出與分支條件"=,,對應的C++語言的"==",并將其復 制在判定項。此外,從流程圖文件DB2的正本數(shù)據(jù)獲得判定成立時的分支目 的和不成立時的分支目的的框號,并將其復制在對應的位置。
如圖13-1所示,分配了數(shù)據(jù)后的結果,生成以下的源程序(C十+語言)。
G03:if(Dl==050303)[goto G54;]
else [goto G19;]
另一方面,在BASIC語言的情況下,如圖13-2所示那樣分配數(shù)據(jù),其 結果能夠獲得如下源程序。
G03,ifD卜050303 GOTOG54. GOTO G19.
這里,以將包含圖7-10所示的事件等待處理的流程圖變換為源程序的情 況即變換為C十+語言的情況為例,參照圖13-3的流程圖詳細說明。此時,假 設用戶的PC安裝有包含微軟(Microsoft)公司等的事件處理定義程序模塊 的操作系統(tǒng)(OS)。
若流程圖解析變化模塊40被啟動,則該模塊40的流程圖聯(lián)系解析模塊 41在圖13-3的步驟S81中解析各個框的聯(lián)系。然后,在步驟S82中,處理框 內容解析模塊42檢測在應變換的流程圖上含有用于表示事件等待狀態(tài)的框 即虛擬事件等待框(框號5 ),在步驟S83中,讀出包含在PC的OS的事件 處理定義程序模塊。然后,在步驟S84中判定是否作為各個框的規(guī)格而包含 存儲在代碼式記述正本DB9的雛型程序庫中的函數(shù)名。
在雛型程序庫組中,作為畫面處理用,包含有與描畫前初始處理框(框 號2)、初始畫面處理框(框號3)、描畫后初始處理框(框號4)的函數(shù)名對 應的函數(shù),框內容解析模塊42判定為以這些函數(shù)名作為規(guī)格的框存在于應變 換的流程圖上,然后,在步驟S85中,源程序變換模塊43從雛型程序庫讀出 這些函數(shù)而與框號2 4對應,然后組合各個框的聯(lián)系信息。
接著,在步驟S86中,處理框內容解析模塊42判定作為各個框的規(guī)格, 是否包含下層的流程圖的ID (函數(shù)名),并在步驟S87中,源程序變換才莫塊 43從源程序文件DB10讀出處理框(框號14~19)的規(guī)格即下層流程圖ID所
對應的函數(shù)即源程序模塊而與框號對應,并嵌入框的聯(lián)系信息。
然后,在步驟S88中,處理框內容解析模塊42,判定是否包含判斷框, 在步驟S89中,參照圖13-1和圖13-2說明的那樣,源程序變換模塊43參照 語言正本DB8,將每個判斷框(框號7 17)的規(guī)格變換為源代碼而與框號對 應,并嵌入各個框的聯(lián)系信息。
接著,在步驟S90中,處理框內容解析模塊43判定是否存在其他的框, 存在時,在步驟S91中,源程序變換模塊43參照語言正本DB8而變換為源 代碼而與框號對應,并嵌入聯(lián)系信息。在將最下層的流程圖的處理框變換為 源代碼的情況下,也參照語言正本DB8,將該流程圖上的規(guī)格變換為計算機 語言。
由此,流程圖變換為源程序。圖13-4和圖13-5 (圖13-5是圖13-4的后 續(xù))表示這樣編制成的源程序的一例。當然,沒必要以圖13-3所示的順序判 定而處理,例如,也可以在步驟S82的前端執(zhí)行步驟S88和步驟S89,其他 合適的變更是可以的。
由此,流程圖解析變換模塊40通過檢測在應變換的流程圖上包含用于表 示事件等待狀態(tài)的框(虛擬事件等待框)的情況,從而判定流程圖為包含了 事件等待處理的程序的流程圖,并讀出安裝在用戶的PC的OS所包含的事件 處理定義程序,進一步讀出存儲在代碼式記述正本DB9中的雛型程序庫中的 函數(shù)和已編制的下層流程圖的函數(shù)(即,對應于下層流程圖的源程序模塊), 所以向源程序的變換變得容易。此外,如上所述,如圖7-9和圖7-10所示的、 由用戶編制的流程圖,以用戶容易理解的方式簡潔且邏輯地表示待機隨機發(fā) 生的事件從而進行此處理的情況,并通過編制這樣的簡潔且邏輯性的流程圖, 從而可變換為適當?shù)脑闯绦颉?br>
由此,從流程圖文件DB2讀出流程圖中的全部框的正本數(shù)據(jù),并將數(shù)據(jù) 置換成用戶指定的程序語言的排列后,變換為該語言的源程序。從流程圖變 換成的源程序,如上所述,與此程序所使用的數(shù)據(jù)定義和畫面定義的源代碼 一起存儲在以編制成的源程序文件DB13。
另外,根據(jù)流程圖解析變換模塊111而變換的源程序,進一步參照語言 制造者所提供的程序庫等而編譯,但此處理動作為通用的動作,所以省略其 說明。
接著,說明進行編制的源程序的驗證的驗證模塊50。若驗證模式被選擇,驗證模塊50被啟動,則與該源程序對應的概要(或者詳細)流程圖的正本數(shù)
據(jù)從流程圖文件DB2讀出,并基于該數(shù)據(jù)再現(xiàn)并顯示流程圖。
如圖i4_i所示,用戶在此流程圖的流出線上,設定用于執(zhí)行中止功能(=)
和通過功能(黑色圓點)的點。中止功能是,取得到達此設定點為止的處理 的執(zhí)行結果(包含各種變量的值),并到達此設定點時暫時停止處理的功能。 通過功能是進行到達此設定點為止的處理的執(zhí)行結果(包含各種變量的值) 的取得的功能,是不暫時停止處理而繼續(xù)處理的功能。
然后,若運行與該流程圖對應編制的源程序,則根據(jù)處理通過路線顯示 模塊31 (圖2-3)的功能,邊在流程圖上顯示經(jīng)過路線邊執(zhí)行處理。在源程 序的運行中處理移動到下層流程圖的情況下,根據(jù)降級功能,顯示下層流程 圖并在該流程圖上也顯示通過路線。
此外,處理的執(zhí)行中,根據(jù)處理結果取得/顯示模塊32的功能,取得通 過了中止功能的設定點和通過功能的設定點的順序作為通過歷史,此外,每 次包含該變量的框的處理結束時,取得處理所通過的預先設定的變量的值, 并將其存儲在通過歷史/變量值文件DBll。
例如,如圖14-1所示,設定中止設定點S013,并設定了通過設定點P009 和P010的情況下,處理進到中止i殳定點S013為止時,程序的處理暫時纟皮停 止。然后,處理結果取得/顯示模塊32參照通過歷史/變量值文件DB11,檢索 此暫時停止為止的、處理通過了中止設定點S013以及通過設定點P009和 P010的歷史,作為通過歷史一覽而顯示,此外,將流程圖中的預先設定的各 種變量的值作為變量值一覽而顯示。
圖14-2和圖14-3表示這樣的通過歷史一覽和變量值一覽。在圖14-2所 示的通過歷史一覽的例子中,表示分別通過三次通過設定點P009和P010后, 從框號7的判斷框分支而到達中止設定點S013的情況。此外,在圖14-3所 示的變量值一覽的例子中,表示程序在中止設定點S013暫時停止時,圖14-1 所示的流程圖中的框號4、 6~10、 13和14的框中的變量(變量名A G)為 怎樣的值。此外,在圖14-2所示的通過歷史一覽中,若用戶選擇例如世代4 的中止點P010 (表示處理通過了兩次的情況),則處理兩次通過該點的時刻 的函數(shù)名A G的變量值作為一覽而顯示。
在編制的源程序的運行中發(fā)生了錯誤的情況下,通過處理錯誤顯示模塊 33的功能,將框號和處理行作為錯誤表而顯示在PCC屏幕上。
由此,通過進行源程序的驗證,能夠顯示程序缺陷發(fā)生位置等,所以容 易進行此j奮正。
通過選擇重新開始按鈕(未圖示)而執(zhí)行暫時停止的處理的重新開始。 本發(fā)明構成為如上所述,所以即使是不具有高深知識的用戶也可以容易 編制任意的源程序,此外,由于將編制的流程圖變換為源程序,所以維持流 程圖中的規(guī)格的邏輯和源程序的邏輯之間的相同性。尤其是能夠將多個事件 和與其對應的處理隨機發(fā)生的情況下的事件等待狀態(tài)適當?shù)乇硎驹诹鞒虉D 上。
此外,通過引導而催促用戶輸入,并基于此而自動編制流程圖,所以與 應編制的源程序對應的流程圖編制變得更容易。而且,由于能夠對用戶提供 最初流程圖和使此流程圖進展的進展流程圖之間的派生關系,所以用戶能夠 容易把握派生的經(jīng)過和程序的邏輯的進展。
而且,用戶能夠一邊在PC屏幕上視覺確認樹結構的數(shù)據(jù)定義一邊編制 數(shù)據(jù)定義,此外,僅通過在PC屏幕上編制畫面而能夠編制畫面定義。從而, 數(shù)據(jù)定義和畫面定義的編制和維護變得容易。
而且,能夠實際地運行編制的源程序而進行驗證,并能夠將此結果反映 到源程序的修正。
權利要求
1、一種源程序編制支持系統(tǒng),利用通過計算機可讀取的程序,通過與用戶的對話編制源程序,該源程序編制支持系統(tǒng)包括流程圖編制部件,支持在監(jiān)視屏幕上編制與應編制的源程序對應的流程圖;流程圖解析變換部件,通過解析由該流程圖編制部件編制的流程圖,變換為源代碼,從而變換為源程序,所述源程序編制支持系統(tǒng)的特征在于,所述流程圖編制部件包括:板一覽顯示部件,用戶可選擇地顯示一覽表,該一覽表包含:包括流程圖中所包含的開始端子、結束端子、流入線、流出線、以及多個框的基本的板;以及包括通過隨機發(fā)生的多個事件分別被驅動的多個事件處理的事件處理程序的開始板;板配置部件,每次用戶從顯示的板一覽中選擇板,并在監(jiān)視屏幕上指定其配置位置時,顯示被選擇到該配置位置的板的形狀,該板配置部件包括在板一覽所包含的事件處理程序開始板被選擇時,使事件流程圖初始框組顯示在流程圖編制區(qū)域上的部件,所述事件流程圖初始框組包括表示事件發(fā)生的等待狀態(tài)的虛擬事件等待框、以及流出線連接到該虛擬事件等待框的返回端子,以及規(guī)格設定部件,顯示用于使用戶對配置在監(jiān)視屏幕上的框輸入與處理內容對應的規(guī)格的輸入欄,并將被輸入的規(guī)格與該框相關聯(lián)地存儲,流程圖解析變換部件包括:用于讀取事件處理定義的部件,在應變換為源程序的流程圖中包含虛擬事件等待框時,判定為事件處理程序,作為OS的一部分安裝在所使用的計算機上;用于解析流程圖中的框的聯(lián)系從而取得各個框的聯(lián)系信息的部件;通過將被設定在流程圖中的各個框的規(guī)格變換為源代碼,并且對該變換的源代碼嵌入該框的聯(lián)系信息,從而生成各個框的源程序模塊的部件;以及將被讀取的事件處理定義,和被嵌入框的聯(lián)系信息的源程序模塊一體化,而生成源程序的部件。
2、 如權利要求l所述的源程序編制支持系統(tǒng),其特征在于,事件流程圖 初始框組除了包含虛擬事件等待框和返回端子以外,至少還包含開始端子; 在事件等待框的下流串聯(lián)配置的兩個判斷框;以及通過來自該判斷框的流出 線分別與該判斷框連接的、其輸出線連接到返回端子的兩個處理框。
3、 如權利要求1或2所述的源程序編制支持系統(tǒng),其特征在于,流程圖 編制部件還包括板刪除部件,在用戶指示刪除配置在流程圖編制區(qū)域的^^反時,刪除該一反;以及在事件流程圖初始框組以外的板新配置在流程圖編制區(qū)域時,在該板的 下流自動地以與已配置了的板不同的顯示方式顯示處理框及其流出線的部 件;
4、 如權利要求3所述的源程序編制支持系統(tǒng),其特征在于,根據(jù)流程圖 編制部件的板一覽顯示部件顯示的板一覽中包含事件處理程序終止板,在顯示在流程圖編制區(qū)域的流程圖中包含虛擬事件等待框,并且包含不 同顯示方式的處理框及其流出線的狀態(tài)下,在包含在板一 覽中的事件處理程 序終止板被選擇時,板配置部件自動刪除不同顯示方式的處理框及其流出線, 并在最下端的判斷框的下方追加一個流出線與返回端子連接的判斷框,且追 加連接到該判斷框的另 一個流出線且本身的流出線連接到返回端子上的處理 框。
5、 如權利要求1至4的任意項所述的源程序編制支持系統(tǒng),其特征在于, 該系統(tǒng)還包括雛型程序庫,預先將與多個處理內容分別對應的源程序模塊即多個函數(shù)和其函數(shù)名對應地存儲,流程圖編制部件的規(guī)格設定部件包括,為了用戶可選擇性地輸入作為規(guī) 格存儲在雛型程序庫中的函數(shù)名,對用戶提示雛型程序庫中的多個函數(shù)的內 容及其函數(shù)名的部件,在應變換的流程圖中存在將存儲在雛型程序庫中的函數(shù)名作為規(guī)進行設 定的框的情況下,流程圖解析變換部件從該程序庫中讀取與該函數(shù)名對應的 函數(shù)。
6、 如權利要求1至5的任意項所述的源程序編制支持系統(tǒng),其特征在于, 流程圖編制部件包含執(zhí)行用于編制上位層的流程圖和其下位層的詳細流程圖的降級功能的的部件,流程圖編制部件的規(guī)格設定部件,包括為了使用戶可選擇性地輸入用于 確定下位層的流程圖的流程圖ID作為上位層的流程圖的規(guī)格,對用戶提示下位層的流程圖的內容和流程圖ID的部件,流程圖解析變換部件構成為,在應變換的流程圖中存在將流程圖ID作為 規(guī)格進行設定的框的情況下,從存儲部件讀取與該流程圖ID對應的程序模塊。
7、 如權利要求1至6的任意項所述的源程序編制支持系統(tǒng),其特征在于, 流程圖編制部件還包括標題設定部件,顯示用于對配置在監(jiān)視屏幕上的框輸入處理的標題的標 題輸入欄,并將被輸入的標題與框相關聯(lián)地存儲。
8、 如權利要求1至7的任意項所述的源程序編制支持系統(tǒng),其特征在于, 流程圖編制部件的規(guī)格設定部件構成為,每次框通過板配置部件被顯示在監(jiān) 視屏幕上時,可設定規(guī)格。
9、 如權利要求7所述的源程序編制支持系統(tǒng),其特征在于,流程圖編制 部件的規(guī)格設定部件和標題設定部件構成為,每次框通過板配置部件被顯示 在監(jiān)視屏幕上時,可設定規(guī)格和標題。
10、 如權利要求1至5的任意項所述的源程序編制支持系統(tǒng),其特征在 于,流程圖編制部件還包括引導部件,對用戶提供包含為了編制流程圖而預先設定了的多個提問的 引導,基于由用戶輸入了的對該引導的提問的應答,對話性地編制流程圖, 提問包括業(yè)務數(shù)量的提問,自動地在監(jiān)視屏幕上顯示基于用戶對于該提問的 回答的數(shù)量的判斷框以及處理框。
11、 如權利要求IO所述的源程序編制支持系統(tǒng),其特征在于,流程圖編 制部件還包括示范部件,取得引導部件所提供的引導和用戶對于該引導的應答的時間 經(jīng)過歷史,并將該時間經(jīng)過歷史顯示在監(jiān)視屏幕上。
12、 如權利要求1至11的任意項所述的源程序編制支持系統(tǒng),其特征在 于,流程圖編制部件包括派生關系顯示部件,將預先編制的第 一 流程圖和第二流程圖之間的關系 顯示在監(jiān)視屏幕上,該第二流程圖是將該第 一流程圖的至少 一個框的處理內 容細化而用多個框來顯示了的流程圖,在第一流程圖顯示在監(jiān)視屏幕上的狀 態(tài)下,當選擇已細化的源框時,該派生關系顯示單元使與該框對應的第二流 程圖中的多個框代替該框而顯示
13、 如權利要求1至12的任意項所述的源程序編制支持系統(tǒng),其特征在 于,該系統(tǒng)還包括數(shù)據(jù)定義編制部件,在顯示屏幕上基于與用戶的對話編制樹結構的數(shù)據(jù) 布局,并基于該生成的數(shù)據(jù)布局進行由流程圖編制部件編制的流程圖中所使 用的數(shù)據(jù)的源程序的數(shù)據(jù)定義;以及畫面定義編制部件,在顯示屏幕上基于與用戶的對話編制畫面,并基于 該生成的畫面的要素的位置以及大小進行由流程圖編制部件編制的流程圖中 所使用的畫面的源程序的畫面定義。
14、 如權利要求13所述的源程序編制支持系統(tǒng),其特征在于,流程圖解 析變換部件還包括在基于流程圖編制的源程序中,組合通過數(shù)據(jù)定義編制部件和畫面定義 編制部件編制的數(shù)據(jù)定義和畫面定義的部件。
15、 如權利要求1至14的任意項所述的源程序編制支持系統(tǒng),其特征在 于,該系統(tǒng)還包括用于驗證所編制的源程序的驗證部件,該驗證部件包括在監(jiān)視屏幕上顯示與應驗證的源程序對應的流程圖,并在所顯示的流程 圖上設定中止設定點和通過設定點的部件,所述中止設定點使源程序的運行 暫時停止,取得處理結果,并顯示通過歷史和處理結果,所述通過設定點僅 取得處理結杲;使應驗證的源程序運行,在與該源程序對應并且^皮顯示了的流程圖上, 伴隨處理的經(jīng)過而顯示通過^f各線的部件;在處理到達中止設定點時,暫時停止處理,并顯示該中止設定點和通過 設定點的通過歷史的部件;以及在處理到達中止設定點時,將預先設定在流程圖上的變量的值作為變量 一覽來顯示的部件。
全文摘要
本發(fā)明提供一種用于能夠容易地編制包含事件處理的源程序的源程序編制支持系統(tǒng)。用于支持在PC屏幕上編制與應編制的源程序對應的流程圖的流程圖編制模塊(10),顯示流程圖中包含的輸入輸出線和框等基本的板的一覽,每次用戶選擇板,并在監(jiān)視屏幕上指定其配置位置時,顯示被選擇在該配置位置上的板。若用于編制事件處理程序的事件框被選擇,則自動地顯示包含了虛擬事件等待框和返回端子的事件流程圖初始框組。流程圖解析變換模塊(40),通過對所編制的流程圖進行解析而變換為源代碼,從而變換為源程序,但在包含虛擬等待框的情況下,讀出事件定義模塊從而嵌入到源程序。
文檔編號G06F9/44GK101379466SQ20068005306
公開日2009年3月4日 申請日期2006年8月29日 優(yōu)先權日2006年3月9日
發(fā)明者本島明 申請人:輔助計算機系統(tǒng)株式會社