• 検索結果がありません。

HIDIC V90/50ソフトウェア開発支援システム

N/A
N/A
Protected

Academic year: 2021

シェア "HIDIC V90/50ソフトウェア開発支援システム"

Copied!
6
0
0

読み込み中.... (全文を見る)

全文

(1)

∪・D・C・占81・32・0る・002:[る81・323.012.014‥る81.5〕:519.る8

HIDIC

V90/50ソフトウェア開発支援システム

IndustrialRealtime

Software

Deve10Pment

Support

SYStem

for

HIDIC

V90/50

計算機制御システムの開発ソフトウェア量は,制御規模の拡大と複雑化に伴って 急増しており,ソフトウェアの生産作,仁言束削隼及び保守性の向_1二は,解決を急がね ばならない殻も重要な課題の一つとなっている。 日良二製作所では,従来からソフトウェアエンジニアリングの観止から各椎ソフト ウェアツールの開発に取り組んできたが,HIDIC V90/50では, ̄更に一歩進めて, 高件能ハードウェアの_卜に,「作I)やすいソフトウェア+,「使いやすいソフトウェ ア+,「管理・保守しやすいソフトウェア+を目.指して,計算機制御システムの設計 段階から保守段ド皆までを首尾‥貰した思想で支援する強力なソフトウェアツール群 を開発・年別旨し,体系化した。 l】 緒 言 近年,計算機制御システムは,マルチコンピュータ化や機 能分散ネットワーク化など,ハードウェアの技術革新に伴い, 制御規模・範囲が急速に拡大しているが,これらを支えるた めのソフトウエア人[]の伸びは停滞している。一方で投資の 早期回収の観点からシステムの早期稼動の要請が強い。 このような厳しい環境下にあって,与えられた期限と費用の 中で所期の目的を達成するシステムを信頼性高く作り上げ,効 率良く保守していくには,従来の手工業的なソフトウェア作りを 近代的なソフトウェア作りに変革してゆくことが必須である。 HIDIC V90/50(以+F,H-V90と略す。)では,この課題にこ たえるために, (1)作りやすいソフトウェア (2)使いやすいソフトウェア

(3)管理・イ米守しやすいソフトウェア

を目指し,高件能ハードウェアの上にソフトウェアエンジニ アリング手法を駆使した強力な支援ツール群を開発し,ソフ トウェア開発支接システムとして開発・整備し,体系化した。 白

ソフトウェア開発支援システムの体系

ソフトウェア開発支援システムは,図1にホすように,開 発初期の設計支援から,開発完了前のテスト,硬=二は保守に 至るまでの全開発過程に対し幅広く体系的に文枝するもので, これにより制御用アプリケーションソフトウェアの開発が, イ三相性高くかつ効率良く行なえるようになっている。ヰニシス テムでは,これらのねらいを達成するために,以下に述べる 「バーチャルシステムア【キテクチャ+,「ユニコンセ7・-・トシス テムアーキテクチャ+、「ビンブルソフトウェアアーキテクチ ャ+を三つの基本思想として採用し,その具現化を図った。 2.1 バーチャルシステムアーキテクチャ ハードウェアデバイスの物理的なデータ構造や,制御 ̄方式 を意識してプログラムを作成するのでは,プログラム自体が 複雑なものとなり,作成効率及び出来上がった7`'ログラムの イ三根惟も低し-ものになる。H-V90では,ソフトウェア開発支 援システムの基本アーキテクチャとして,

(1)デバイスごとに異なるハードウエア特有の物理デ【タ構

大島啓二*

∬吋i∂5んJⅧ 林 利弘* TのざムfムけⅥ〟叩α5んJ 堀 雄太郎* m紬r∂〟or土

中所武司**

九鬼pざん∼Cん滋ぶん0 造や制御方式から,アプリケ【ションプログラムを解放する。 (2)プログラムの構造や処理を変更することなく,プログラ ムの作能(応答作,処理惟)の調整を可能とする。 ことをトけ旨す「バーチャルシステムアーキテクチャ+の考えを 大中副二採用L,「作りやすいソフトウェア+の実現を図った。 このための与主体策として,図2にホすように「問題向きプ ログラミング言語+によるシステム環J菟仕様忘三義を,従来の 「手続き向きプログラミング言語+によるプログラムの処坪手 続き記述から分離・独立させる方式をとった。 2.2 ユニコンセプトシステムアーキテクチャ たとえツール白身の機能が豊富であっても,ツールごとに その操作の仕方がまちまちであっては,ツールを傾う際,操 作ミスを起二しやすく,またツールの機能も十分発揮されず 効率も憩い。更にツ【ルが有機的に関連づけられていないと,作 成したプログラムやデータの有効利用が図れないことになる。 H-V90では, しい ツール北越の強ブJなコマンド体系 (2)ツール間ファイルの一ノ亡管理機能 のJ導入によってこの間題の解決を図った。 これらユニコンセプトシステムアーキテクチャの採用によ って, (1)共通コマンドを用いて,だれにでも簡単に支援ツールが 催し、こなせる。 (2)大量のプログラムを高速にコンパイル・テストするときは

「バッチ処理+を,短いTAT(Turn Around Time)が必要な 場合には「対話処理+を,それぞれ同、-のコマンドインタフ ェースで使用できる。

(3)作成したプログラムやデータをツール間共通ファイル経由

で相互に利用し合うことが可能となるため,単に操作惟が向 上するだけでなく,校数ツールによる相乗効果が期待できる。 など,「使いやすいソフトウエア+の実現を可能とした。 2.3 ビジプルソフトウェアアーキテクチャ リアルタイムシステム建設の成否は,大勢の人々によって 作られる膨人なソフトウェアを,予定された期間と費用でい かにうまく組み立てるかというプロジェクト管理にかかって * 日立製作所大みか.丁場 ** 日立製作所システム開発研究所

(2)

870 日立評論 VO+.63 No.12(198112) 開発フェーズ 支援横能分類 システム設計 ソフトウェア設計 プログラム製作 テスト・デバッグ 調 整 保 守 ソ フ 卜 ウ エ ア 設 計 設計 ツ ール lTSDLl トップダウンPADl (テーブル設計ツール) (プログラム設計支援技法〉 ンストラクチャードプロ うミング言語 手続向き プログラミング 語 l SP+ 語) ロセッサ)

l

(制御用高級言 (汎用言語) (会話形言語) (汎用マクロフ (アセンブラ) PCL FORTRAN BASIC ll HIDICV90・50 lll AMP ASS プログラミング 】 (文字テキストエディタ) 製 作 支 援 エーアイリアイ lSLTリ (行テキストエディタ) H汀ACM,lBM370, 303×シリーズ ll HID】CV90ノ50 H什ACM,旧M370, 303Xシリーズ プログラム 結合・編集 ツール (オブジェクトモジュー ルライブラリ編集システム) (リンケージエディタ) (プログラムローダ) OMLUl LEDTl ーIしOAD ,B川LD 専 用 プログラミング ツール l (マンマシンデータ定義言語JMDDL l l l ll l (プロセスデータ定義言語)pDD+ l テ ス 卜 テナ ノヾ lノ ク'、 支 援 機能テスト ツ ー ル (モジュールテストシステム) (システムテストシステム) プロセスシミュレーションテストシステム) L■HITESTFMTSlll ー."HITESTF- STSl■l 1 】H汀EST■F-PSTS デバッグツール (オンラインデバッグ支援システム) l ▲■HITEST-DEMO'' l 保 守 支 援

t(トップダウンPAD串ステム)

(ソフトウェア構造ドキュメント自動作成システム) _llspしSTRUCTll ▼llsp+.・■PADll l (システム障害解析支援システム) HIDAS 注:略語説明 TSD+(Tab】eSpeclficatio[DescrLPt10nLang]age) PAD SPし PCJ AMP ASS TXED SLT〕 ProblemA[alysISD】agram) So仙arePro山Ct10[La〔g]age) ProcessConlroIL即gUage)

Ad〉anCed Macro Processor)

Assembleり

TextEdltOr)

So]rCe+加arYTape Update)

OMし〕(ObleCtMo仙e LlbrarY Update)

LEDT(山[kage EdltOr) +OAD(ProgramLoader) B川LD(SystemBullder) MDDし(Ma〔-m∂ChLneD∂ta□escrlPt10n+∂[糾age) P□DL(ProcessData□escrlP仙nJan糾age) 叫HITESTM("HlほCh11ntegratedTesISYStem”) ■`H】TESTF、1(、`HITESTF][Cl10[1') 図I HIDIC V90/50ソフトウェア開発支援システム体系 おり,二の体系にン合って各種ツールが開発・配備されている。 システム機能・性能仕様 処理手続き記述 lF PO78…・ THEN セッテイ・・ バルブ・= ELSE CRT二‥ 手続き向き言語プロセッサ 実行プログラム MTS(Mod]leTesISYStem) STS(SYSlemTestSyslem) PSTS(Process Simuraい0nTestSYStem) DEMO(Determlnate Eva】]al10[,Monl10randO]tP]†SYStem)

SPL STR]CT(SPL SoflwareStrucl]re Doc]menlat10n SYStem)

HIDAS(HID】CDla帥OSISAssISta[tSYStem) このシステムは,システム設計から保守までを一貫した形で支援できるように体系化されて 環境仕様定義

回コ五重匹正]:]

匝Ⅰ至Ⅰ江亘Ⅰ二]ニ入出力点名

m

‥入力レンジ

ロⅡm‥芸‡ラリング

問題向き言語プロセッサ 環境仕様データ ●CRT画面仕様 ●プロセス入出力点仕様 CRT タイプライタ プロセス入出力装置

注二略語説明 CRT(Calhode Ray Tube)

図2 バーチャルシステムアーキテクチャによるプログラムの「処 理手続き+と「環境仕様+の分離 バーチャルシステムアーキテクチ ャの採用により,個々のプログラムはハードウェアを意識せず論理レベルで入 出力実行が行なえる。また,プログラムの処王里手兼禿きの変更なLに性能調整が 可能となる。 いるといっても過言ではなし、。 このプロジェクト管王翌の難しさは「ソフトウェアそのもの が目に見えない+ところにあり,この間題を解決するには, ソフトウェア開発支援システムの【いに しい プロジェクトリーダから常にソフトウェア全体が見える ようにL,不具今山が早期に発見できるような設計・製作手 法がとられていること。 (2)前フェーズの作業結果が後フェーズの作業者に的確に伝 わ1),関係者による作成プログラムのレビューが容易に行な えるような支托機能が備わっていること。 が重安である。 またこう Lて出来上がったシステムは,設置後10年以上に わたって使用されるのが普通で,この間種々のソフトウェア の改造・寺山転が行なわれる。特に,リアルタイムシステムは, タスクと呼ばれる数多くのプログラム群の有機的関連により 槻能しており,その保守を的確に行なうためには,更に支援 システムと して,

(3)個々のプログラムの処理内容だけではなく,むしろシス

テム全体の動きが正確に把握できる機能をもっていること。 が必≠員である。 H-V90では,ソフトウェアの設計から保守に至るまでのす べての支援ツールにこの思想を反映させ,「管理・保守しやす いソフトウェア+の実現を図ることとした。

(3)

ソフトウェア開発支援ツール 3.1 設計支援ツール ソフトウェア設計作業では,システム設i汁でぎ央起されたソ フトウェア機能仕様書に湛づき,共通テーブル及びプログラ ム仕様の設計を行なう。これらの作業では,設計者の思巧・の 流れを自然な形でオーイドL,かつこのソフトウェア設計の結 架が次フェーズのプログラミング作業へ一対一にスムーズな 形で展開してゆけることが長安である。 3.t.1 テーブル設計記述言語 計算機制御システムで紋別御対象である設備環鳩情報は, テーブル仕様に放映される。TSDL(Table Specification Description Language:テーブル仕様記述言語)1)では,こ

の設計作業をFIF(FillIn the Form)シートにより標準化す

るとともに,テーブル仕様書の作成やテーブルに関するプロ 概略(WHAT)レベル TSDLによる設計 SPL環境モジュール HtD】C V90/50ソフトウェア開発支援システム 871 グラミング作業を自動化し,テーブル設計作業の烏信頼化と 高効率化を可能にしている。図3にTSDLを用いた階層的 テーブル設計と環境モジュールコードの日動生成の様-f一をホ す。 3.l.2 プログラム設計支援技法 プログラム設計支援技法トップダウンPAD(Problem Analysis Diagram)2)は,処理手続きであるプログラム設計 の定型化を目的とLた記法である。トソプダウンPADを用し、 れば,図4にホすようにプログラミング言語の詳細な文法構 造を知らなくても,階層的に偶造化プログラムの設計ができ, 設計結米が一対 一の形で実プログラムに反映されるので,プ ログラムの生産性,仁相件及び保笥二伸がIr小上二する。 3.2 手続き向きプ白グラミング言語 手続きIfりきプログラミング言語としては,棺々の使用JJ向 を考慮して,図】にホす六つを用意している。ここで,アセ 段階的詳細化 詳細(HOW)レベル 法3 10 か くか 1瓜 2 3 10 a) :》 4() 】1、A 止L 広 J l 1、 A bL E -jl、ヒニ 1-1ヨウオウiノ 千㌣〉9 ウイフ∂ l T N A 比 A で N 人M 丘 ㌔tてヨ州,′

ム 舐0 維 Y u L U d A ん 井 ム も K u 0 由 入1U 絹 β U ゝⅠ 0 郎 L 0 U A M u. \tO 上l¥ OLU 上iA上 山U 工.K COM㍊ON じUO入i\lUN LOU A

8 A S 〔 〉 泌 咄 U ( 8▲5日U( )ぶQU( l U U 之 Nu 3 与 ■ t▲宅著芸賢妻2

t ̄1

比 E 12 NO 3 6 ・】1牌2

1lNA姐u

L/

パーI川名

/

比 ぷ 7 也ム広州広Nで 1 A ( 1もA 岳 J 7 日し比M且Nで :航 A一 礼 1 A u RÅ 【 iも 7 つ ヒ 力 j ノ l P 月だ T S 7 ∂ βd 1暮 1 71、ヒユ ニIt∃り  ̄仇叩9 タイプ○ 三ゝ、ヨウ式ウ l Z 丘 ブ ワ 卜 ヒ メ ノ イ コ ヨ スウ 月H E 2 、ウコ 州t二′コ■'ウ 1卜jU \ 3 ヒンら\、うユウ 穴 山K 4 ∃ 7 N F 0 足 4 】シシキヒヨナ Ⅰ 1 .L・._▼-I…1小__-_.--_2__-_▼▼…_王_______▼-ん_________5…_◆_____ら_____}_■_7R_▼___…_角 _L一一一一一__トー_一___-_∼_●-__∼▼__さ____…__一々__1_--___ら________■与-______▼-相 __ _■_a Dこし乙ゆT18Uしく〉 白ODOOフロ0 こ◆・・◆=・◆◆◆◆・・・・◆◆◆・・◆=・◆◆・・‥・・◆◆◆・・◆◆・◆・◆◆◆◆十=◆◆・◆◆・◆◆◆◆◆◆・◆◆◆◆◆・・◆ロ¢OeO750 こ◆▼A已Lヒごフーヒンヘンリチーフー山 ◆8000¢aDO DCLi 00¢OHう0 :◆・・◆・・・・◆・・・・・・・・・・・・・・・・・・◆・・・・・・・・・・・・・・◆・・◆◆・・・◆・・・・◆・◆◆・・◆・・・・・・・◆08001叫0 こ◆TA8は;フ●ヒンシ,ヲウ由ウノナ●-タグイ7■ ◆000¢1450 こ◆…司Pコ与E:シリーウシ十 フ¢こシ ラーヨウホウ オ わク/つ 7み ・00000卓50

ミ◆P岬PDSE:フ●ヒンリ壬つ払ウノ 事●-,タイフ●I門つズ ・00001うOD

こ◆べE叫ぺK51】ノ苧・コリー:ハうと巾ヒ○ノシ●ヨつホウjlわクノつサレナ† ◆00Dq8900 3ヒ◆ヒンノシーぅつ爪うJtSPÅREず-フ一弘Iサンショつノ〕ナ ◆○¢000950 こ◆REI仙只XS:1つ-トーノ夢■一夕ユウモイ■”ウス ●00¢01S50 こ■◆・◆◆・◆◆◆◆十◆・,◆◆◆◆◆●・●◆◆◆◆…◆◆◆◆◆◆◆◆◆◆…◆◆◆◆◆●◆◆●◆◆◆◆◆◆◆◆◆◆◆・◆◆◆◆◆◆●●◆0㈹81bO甘 こ◆・◆◆◆◆◆◆◆◆◆◆・◆◆◆◆◆◆◆◆◆◆◆◆◆●◆◆◆◆◆◆◆◆◆◆◆◆◆‥◆◆◆◆←◆◆…●◆◆◆◆◆◆◆◆●◆◆◆◆◆◆◆◆◆00801 TYPE シ■ヨウ巾ウ E /} フl亡>シーきウホウ ノI■,タ タイプ● ¢00Dlらう0 山k PART5 (l(〉08) /輯 フ声ヒシ カンリ テ・)◆ル 好/088 う¢ (SINロ :別丁(SI /書ソケ⊃ll・>コーウ り 80001ア08 (N▲VE ;(HAR(ム〉 ノ裾 フ・ヒ⊃ メ′ショり 斗/e ロ110¢ 8R▲Nく

ど8IT(らI - ′J亡シシツう⊃ク ★ノ ○川017さP

Nコ ;lNT ′対 フlヒン ノ ユーつ セノ 00Dl150 i⊃ ;8汀iヰ) 〉i/■・ンシ事ヒョウ d/0¢帥1880

lヾrOqM :シー5つ九つ )呈 ハE プ◆ヒシ シーヨうホ1 姑′ 808¢1200 ヒNDi oD081850 El寸〇i 1250 P的Fi oooo _し__-____1____…-_-?_-_I_____さ▼___…_▼_キー_-______5-▼■____■■†___-_▼▼▼_7R__▼__-__P ENDPTENV; 8¢001900 ーL一一--一-_ユ.-_-.--・一2--.-◆---_うー-_・-†一-■4______.…ら____…-.▼ら_・____…_?R_-__-_._8

図3 TSD+によるテーブル設計とコード自動生成 テーブル仕様はFIF(F川ln the Form)形式で記述できる。階層的なテーブル設計が可能であり,

このシートからSPLの環境モジュールコードが自動生成される._. トップダウンPAD記法 SP+によるコーディング 概略(WHAT)レベル 段階的詳細化

詳細(HOW)レベルl

古でA也γ 起Nl一札y A8♪JR批叫ビバYU艮Ul i=1・10㊤I=∫轟日の削伽?〈Yぶ…MAL→pNYUKO; ぶXエT8N】

(至う

凡ぢ11U上L八 U払Tに入庫処ぜ申メッセ¶ノ表示 人月監制定ゆ処腰 人簾可結か? 成花嵐かブ郡占も名か与リカ込む 野品な倉庫フ7イル†て登嶽 C見で㌢こ入庫完了メ ッセーノ表示 棚 Iu比℡与こ=-ムメタセーノ如 丘八山

PR8亡E与S れ†UKロINYUl:8E)l ¢001IO`)‡○ 一L■---トーーーー…-一卜一--M---ち-…---▲---5---一--ムーーーーーーーー?Rt---一書

ーL一一---トーーーーーーーー2一---◆-ユー---▲--一一--一一一宇1-一----一ムー--_-_---▼I_-一一----8 fu∼亡▼l¢k こ1ウコ 几)y▼ ノ ぎヨサ くl村▼u上q) 8■T(0l■El); ○帥¢Ot80 FU耶†18一 月Yl暮KOF ニ1ウ⊃ ショー タスタ OP†川▲lⅣ〉J qO【〉廿 一入打 IqYけIロ ーⅠ〃▼ 7 /暮 =ユウ⊃llプチ†〉” ̄(¢リ†p一丁) ●/や0080190 ⊂ ○¢lO 〉▲丘 Ⅰ ;王叫T; /lサー 八一ユーーウ t/00800之00

(且▼ =′9セ_ツー('事●lくこま” シヨ,▼10> 事=りIヒ予_シー袖; 008¢0050 t 00008210

=1クコ れつナイ ノ ブヨり tr刈Y11■□); D808¢8▲0 †N▼りくOt ▲8打柑L; 00叫○∼之8

IF 一打▼けK8.星q.H8一円▲L (1001】0070

一触 1Il.10q 削:■首▲T (l00002う○

TR古山 セケIイ爪")ヨり } ̄ヒ)メイ 寸Il⊃ム; 08000(〉80 1F Tl如IrLrl)▼音▼▲T小島.モー.モM戸†Y Q0880之◆○ 71●もユ ッケ⊃ フタイ■ =†サロクえ■; け〃000090 ▼H∈打 FHYUK8 胡81M▲L; 廿8p08∼50 【一丁 = ′ツt_シ、(一=事 く =1サー セユ▼きう > =暮りlヒヨノー1■; 0010¢ EXIT D対1 008082dO ∈LS亡 亡RIこ メツしシ ̄(I=t く=ユウュ フカノウ }l=リ ∫ ヒヨJ一入■;q08 0 丘■8; 00Q¢02一心 E叫8; 舶800I2 F肋 8吋; ○心00凸280 C Q8凸○く‖さカ 々⊆マリ舟M1 80000290 STO事; 080b01●q 亡¶可 =ユうっ 旨 ○別l凸○}bO 空々■HYけてOr】 08808150 F▲丘E; d¢0¢【‖d¢ ーL一一一--一一書--一---一-一之≠---ち---一-1▲一一一---一号---一-一点----一一---Tt一一---▲ F▲ぷ亡; 0¢080}10 ーL---一小一-トーーーーーーーt∼---一-ち---一-▲一--1---一一事--一川…--●---≠---一J7l一-一一◆---8 図4 トップダウンPAD記法によるプログラム設計とSPLのコーディング プログラムはトップダウンPAD記法により階層的に設計され,しかも, SPLプログラムは設計結果と一対一の形で作成できる。逆に,SPLプログラムから保守ドキュメントとしてのトップダウンPAD図作成も可能である。

(4)

872 日立評論 VOL.63 No.12=98l-12) ンブラはハードウエアに近い制御ソフトウェアや,特に性 能が問題となるソフトウエアを作成する場合に,FORTRAN は他機種との間でプログラムの移行性が問題となる場合に, BASICは性能は問題とならなし、が手軽に会話形でプログラ ミングを行ないたい場イナに,それぞれ有用となる。制御用高 級言語PCL(Process ControILanguage)は,FORTRAN をベースに,制御用に必要な機能を付加し,高級言語ベース でアプリケーションソフトウェアを能率良く開発できるよう に設計,開発された言語である。 一一方,制御用 トノブダウンストラクチャードプログラミン

グ言語SPL(Software Production Language)3)は,PCLの

もつ各種リアルタイム制御用機能は包含しながら,更にソフ トウェアの本質的高信束副生,高保守性及び標準化のしやすさ といったソフトウェアエンジニアリング的な機能を大幅に強 化した新しい思想の言語である。SPLのねらいと主な機能を 匡15に,コーディング例を先の区13及び図4に示す。 このSPLの機能による7dログラミング作業は,次のように なる。 (1)テーブルコーディング SPLのもつ「手続きとデータの独立コンパイル機能+によ って,先に述べたTSDLを用いれば,テーブル設計の結果が 自動的にテーブル宣言プログラムとして出力されるので,宣 言 ̄丈に関するコーディングは不要である。 (2)70ログラムコーディング プログラムのコ【デイングは,SPLの段階的詳細化機能に より,トソプダウンPADのドキュメントと一対一に対応した 形で機械的に行なうことができる。出来上がったプログラム は構`造化されており†言轍件が高い。また,プログラムリスト も自然語ふう記述機能,自動インデンテーション機能により 見やすく保守性の高いものとなっている。 SPLは更に,共通データ・共通手続きの一元管王里機能,モ ジュール間インタフェースチェック機能など,高信舜貞化のた めの豊富な機能をもっており,重複記述をさせないこと,プ ′rl′

苧;ご窒素菱餅家来簑妻…豪寮凄艶≡こを

′′r′、:′≡淫鱒垂藩灘繊≧桑三;′′′、て 、′r ●データ郎の詳細化(新データ形) ●手続き部の詳細化 トッ7Qダウン ス  ̄ ㌧′、ニ、、′…滋壬ご孜ニ′′′ノ、′′蕗′類′′謙′、,∫碓′泌、㌧ニ′ご フ ヤ プログラミング ′∼ミ′芸㌔ご乙ミ‡、′、

望寒蒸葉夢嚢瀬寮率孝養肇潅嫁ご窮三

′…与′≧、藩≦寝離榔菱≡言≡ふ窯琴、、ン′、∵′柔′′、。′三才′′三くミご三ニ、

安藤幾重孝養孝義轟療真ゞ′ぎ

ノ′′宅′芸 標準化,問題向き 言語化

;ミ凍寒轢牽窪凍寒幾重療醸鮭姦…宴

●インライン展開 ●内部サブルーチン展開 ●外部サブルーチン展開 リアルタイム ●構造体,ビット形,ポインタ形ほか プログラミング

賓養家拳索業容準弊≡妻惑羞秦三鍔孝三

ノ1‡を、 メェr′′エ:立r∴∧守設√乃、小′′∧㍍≒∼;′ゞ三7

、言;′′三柳津寮準繁繁牽素養贅索準粍

そ の

き′蕃轟棄素滋養蛮療秘事察季夏三宝蓉、′γ㍍∼、たミリ′′ガ′′、′㌔、

1、ノ′111手篭エ1′′ ●モジュール間インタフェースチェック 図5 制御用トップダウンストラクチャードプログラミング言語 SPLのねらいと機能 SPLは段階的詳細化機能により,トップダウンプ ログラミング言語と標準化(問題向き)言語を表裏一体のものとLて扱うことが できる。 表l マンマシンデータ定義言語MDD+の機能と具体例 二れら の機能は,パッチ形・会話形共に用意されており.ユーザーは.マンマシンデ ータを効率良くかつ信頼性高く作成・修正できる。 No. 分類 機 能 代 表 的 な 具 体 例 1 固 形 作 成 (1)卜∴ソトパターン 作 成 機 能 (カ国形呼出し機能(3) (2)文 字埋込 枚 能 (3)図形呼出 し機能 (CRT)

凄垂皿血照明 (4)図形複写 機 能 ◎ (5)図形変色 機 能 (マクロシンボルライブラリ) ②図形複写機能(4) (6)図形登毒喜・削除機能 (7)B G 画 面 登毒量・削除機能 (CRT)

t

2 F G 画 面 変 化 仕 様 定 義 (8)交 替 図 形 仕様定義機能 (9)メッセージ入力 仕様定義機能 (CRT) ③交替図形表示(8) (CRT) (10)メッセージ出力 仕様定義機能 (11)バーグラフ 仕様定義機能 (12)トレンドグラフ 仕様定義機能 ◆ 殴匠]皿′、団 =3)変化仕様呼出し機能 最大255個の図形 ④バーグラフ表示(11)

鮎(。。,)

(14)変 化 仕 様 登絹・削除機能 3 そ の 他 (15)作画ソースリスト 出 力 機 能 (16)マンマシンデータ リスト出力機能 ↑

虹肝∃巨

(17)マンマシンデータ オフノジェクト 入出力機能 4タイプのバー 注:略語説明 BG(Background),FG(Foreground) ログラム不良を後フェーズにもち込ませないこと,によって システム開発全体としての大幅なイ言束副生・生産性の向_Lを実 現している。 3.3 問題向きプログラミング言語

MDMS(Man一皿aChine Data Management System:マン

マシンデータ管理システム)4)及びPDMS(Process Data

Management System:プロセス入出力管理システム)は,そ

れぞれ,CRT(Cathode Ray Tube)をはじめとするマンマ

シン入出力装置,及び制御用に特有なプロセス入出力装置を

介しての入出力アクセスを効率良く行なえるようにしたシス

テムである。これらのシステムでユーザープログラムからの

論理レベルの入出力を可能とするためのインタフェースを記 述する問題向きプログラミング言語として,MDDL(Man・

machine Data Description Language:マンマシンデータ定

義言語),PDDL(Process Data Description Language:プ

ロセスデータ定義言語)を導入した。これらは先に述べた「バ

ーチャルシステムアーキテクチャ+の中核を成すものである。

3.3.1MDDL(マンマシンデータ定義言語)

マンマシンデータにはCRT画面仕様やタイプライタ,ライ

(5)

HIDIC V90/50ソフトウェア開発支援システム 873 ンでCRT側面や帳票を入山ブJする際は,CRTとそれ以外の 人出力機器でもっているハードウエアの機能・什能が大きく 異なるため,終々にんLじた処理方式をとらねばならなかった。 しかL,入汁1力する帖報そのものは「マンマシン情報+とい う′ミ‡で.釦即小二は本田的な相違はない。MDDLではこの孝一え 方をべ【スに,CRT画l由と帳票をマンマシンデータとLて同 一に扱えるようにしている。 MDDLの特技は,次に述べるとおりである。 (1)CRTへの画面人山力とタイプライタなどへの帳票人山力 とに関して,共通のデータベースを使用L,設計から保守ま でを一貫し,かつ体系的に支桟Lている。 (2)複雑なCRT睡j面データを,バッチ的に正確かつ効率良く 作成し,会話形コマンドにより柔軟に帽止できる。

(3)CRT画面をその什宮守から,システム構成図のように変化

Lない情報からなるBG(Background)画面と,プロセス状態 数値のように変化する情報から成るFG(Foreground)画廊と に分けて体系立てて作成できるt) MDI)Lの機能を表1にホす。 3・3・2

PDD+(プロセスデータ定義言語)

プラントから計算機へ取り込まれるプロセスデータは,そ のままではレベルの低い生データであり,これをユーザ【プ ログラムで眼I)扱うのに便利な工学他などグ)プロセスイメー ジデータへ変捜する必要かある。PDDLはPDMSのデータ牛 成・保守のサブシステムであり,工学愛検・各柁計算といっ た複雑・多様なプロセスデータ処理を統一一的に管理するデー タベ【スを生成・イ米守できるようにL,ユーザープログラム からはプロセス入出力楽音琵や工業計着岸といったハードウェア を意識しない,論理レベルグ〕人JlけJを行なえるように文枝す る間堪向き言語である。 PDDLの特尉ま次に述べるとおりである(, (1)データ生成・保守機能は (a)システム仕様て右養 (b)プロセス入出力装置構成仕様定義

棄薫饗宴寒≡薫整妻転ミ∨≡雲

システム仕様定義 処壬劉生 ●スキャニング周期の指定 ●位相調整 プロセス入出力装置 構成仕様定義 入出力点仕様定義 応答性 ●スペックファイルの物理配置の選択 (主記憶・ディスク)

凄妻賓妻妾婆緩鍵薮ニ、

●プロセス入出力装置の物王里構成 ●物理アドレスと論理番号の対応付け

真峯芸恵≡喪焉喪章轟き

●エ学変換仕様 (リニア変換・開平変換・折れ線近†以変創 ●補正仕様(冷接点補正・温圧補正・密度補正)

蔓嚢譲寒琴憂…簸妄

●多点和算出 ●多点平均値算出 ●多点最大・最小

窒妻妾…袈整2賓窪藩‥萎芸

●フロセス上下限検定 ●プロセス変化率検定 図6 PDDL(プロセスデータ定義言語)の機能 FIF形式の簡単な 言語で・プロセス入出力点ごとの処‡里仕様を正確かつ効率良く作成できる。ま た・システム仕様定義によってプロセス入出力処理の性能(処理性,応答性)を 調整することもできる「) (トー←∽山ト≡一▲)エペ小山推挙 (=止ト∽山ト≡一一)エK小山紙型 モジ ュ ール テストシステム (MTS) ム ム テ テ”吋 ストS ス( シテ ス ン ム

セ詔叩.

ロユ▲卜▲け. ,: ス 一ノ.ソ 】丁 ン〃ノム

㍗榊叫

ン /援叩 オデ支 ●非破壊テスト ●連続テスト ●テスト手順記述 ●プロセスモデル記述言語(・PMDL) ●タスクトレース ●OSマクロトレース ●コアフロックトレース ●CPU,M/D負荷測定・表示 ●コアブロック占有率測定・表示 ●タスクリソース使用量測定・表示 ●タスク応答性測定・表示 図7 制御用ソフトウェア一貫テストシステム"H什EST”の構成と 機能 "HITEST”は,性能テストと機能テストをそれぞれ一貫Lた形で支援 するシステムで,特に,機能テスト手続きを記述するための専用言語TP+をも つているr_、 (c)入山力点仕様定義 に分かれており,システムエンジニアや,プラントエンジニ アが各々の専門分野にJ心じて最適なデータ生成・イ米守を効率 良く行なうことができる(図6)。 (2)ホストコンピュータ側から分散配置された端末計算機で のプロセスデータ処理の定義データを,統一的に生成・保守 できるので,機能分散システムでもプロセス入出力管理を信 頼怪鳥く行なえる。 (3)FIF形⊥〔の簡単な言語であり,変換・計算仕様のデータ を簡単かつ間違し、なく生成・保守できる。 3,4 テストデバッグ支援ツール ソフトウェア開発作業の半分以上が,機能上,作能上グ)バ グ(不具でナ点)を発比するためのテスト作業と,発見されたバグ の原因を迫■求L対策を行なうデバ、ソグ作業とに頸されている。 したがって,テストデバッグ作業の効率を_卜げることは, 全体の生産性向_Lに大きく寄与するとともに,完成したソフ トウエアのイ言頼性向卜にも直結する。 このような観′・.‡から開発したのが,"HITEST'1(-`Hitachi

Integrated Test System'':日立制御用ソフトウェアー貰テ ストシステム)5)である(図7)。 3.4.1 機能テストツール 通′乱 機能テストはモジュール単体及び組合せ,タスク組 合せ,総合といった過程に分けて実施される。機能テストシ ステム"HITEST/FI'(`▲HITEST/Function”)のテスト支援 機能部は,これらのテスト過程に対応して三つのサブシステ

ム,すなわちMTS(Module Test System:モジュールテス

(6)

874 日立評論 VOL,63 No.12(柑引-12) タ入ク 乃ン t一事"ヨ わ⊃ケースn 群0. タ え タ メ ′ tイ◆ヽ∋ ノーわ"レ シ ス テ ム ユ ウ シ) フ、、つ 才 ヨ ヒ" タ ユ タ メ イ わ"√フ、● ‡ドゥ ▲8P丹▼ RL亡■S qUEgE(書卜ゝウ ヨウ′J) SUSP 穴SUH ▼lM∈雫(▼ンシ、しケープ.事ト"ウ

l ▲H▲LGT く-・・・・・・・・・・・・・・・・・・・・・・・・-・・・・ R⊆ST▲粋T Pl/0 亡RT心SP FDl】MPT GFRE∈Z

MSGSひT MSGSD▼ (rAぐTl ) E▲L九拝H E▲LARM

亡ALARH CRTDSP(F▲亡Tl) EAしARM(FA(T∼)

l▲LL ▼▲LL F8UMPT く 王

.FAC

2 亡穴TD$P く▼・-▼一▲・・▲・・・・・-8PECON †OUIIPT MTSCAN ÅrJALGT(FA亡Tl ) lN月L【.T r八LA良M ANAし6T 亡AL▲舟朽 Ft〉UMPT く 2 ,F▲C ___.,._-_> lN▲LGT LClTGT L〔毛TGT(F九〔丁 〉 しC良一T▼(FACT) lNILGT ∫▲LL さ EIL■8托 く■・・・・・・・・・・・・・ FOβMP▼ AHALGT AJiALCT(FACT2)

し0(;Gト汀(FÅこT 〉 ANALGT > M∀DRuM 月COPYT L〔JGGMT 一入LL ヰ FDU11P▼ < AH′L【.T EAlÅRM AHALGT ∈ALÅRM 入〟AL6T(ち ,FA亡T∼ ) ▲柑ALGT 亡虫丁8SP(2 .FACTl ) 図8 ソフトウェア構造 ドキュメント自動生成シ ステムSPL/STRUCTで 生成したドキュメント例 システムを構成する全タスク に対Lて.それらの間の制御 関係が一覧できる。また,各 タスクの処理の概要が把一腹で きる。

トシステム)及びPSTS(Process Simulation Test System: プロセスシミュレーションテストシステム)から成っている。

このうち,MTS,STSには機能テストを-一一貫した形でサポー

トできるようにするため,共通のTPL/Il(Test Program Language/ⅠⅠ:テスト手続記述言語)を用意している0 また, PSTSにはシミュレーションモデルを谷玖に作成できるよう

にするため,PMDL(Process ModelDescription Lan-guage:プロセスモデル記述言語)を用意している。 3.4.2 デバッグツール 制御用計算機のソフトウェアデバ・ソグ作業では,タスクを 並行動作させて試験する組合せテスト以降でのデバッグが最 も難しい。これら作業での複雑なバグの牧t勾究日月を迅速かつ 正確に行なえるようにするためのデバッグツールとして,リ アルタイムモニタ下でのタスクの動きを総介的に1f三:こ祝しなが ら,各椎情報を会話指定により収集し,妃やすい形で「‡1力す るオンラインデバッグ支揺システム`-HITEST-DEMO''

("HITEST】Determinate Evaluation,Monitor and

Out-put system'')がある。この"HITEST-DEMO''の機能には 二大のようなものがある。 Jノ 機能デバッグ支援槻能 (a)タスクの実行順序トレース (b)タスクl勺のOSマクロ(人出プJマクロ,タスク制御マク ロなど)の発行,状ラ兄のトレース (C)コアブロック使用二快音妃のトレース (2)件能デバッグ文枝機能 (a)CPU(CentralProcessing Unit:中央処理装置), M/D(Magnetic Disc:磁1ミディスク)の負荷の測定・表示 (b)コアブロック占有やの測走・表ホ (c)タスクごとのリソース他州状汎1応答件の測従・表ホ 3.5 保守支援ツール 3.5.1ソフトウェアドキュメント自動生成システム システムの保守山当者は必ずしもそのシステムのソフトウ エア開発対当者とは限らない。したがって,ソフトウェアの 保守をイ言根性高く,効率良く行なうためには,システム全体 の構成とタスクごとの処理内容が100%正確に把握できる保 守ドキュメントが必≠員である。H-V90では,そのためにSPL/

STRUCT(SPL/Software Structure Documentation

System‥ソフトウェア構造ドキュメント自動生成システム)1) とトップダウンPAD自動作成システムSPL/PADとを用意し ている。 SPL/STRUCT,SPL/PADで自動生成されるドキュメン トには,次に述べるような特長がある。 け)タスク間,タスク∼共通テーブル間のリンケージなど, システムを鳥観できる横断的保守情報が図表形式で図8にホ すように見やすい形で得られる(SPL/STRUCT)。 (2)タスクの処理が概略レベルから詳細レベルへと階層的に ドキュメントされ,第∴老に分かりやすい(SPL/PAD)。 (3)ドキュメントは,すべてSPLソースプログラムをもとに 作成されるため正確であり,ドキュメント間の矛盾がない。 3.5.2 システム障害解析支援システム システム障害は,ソフトウエア,ハードウェアの要因が橡 雄に絡みでナっていて原凶の究明が[勾雉なことが多い。システ

ム障二吉解析 ̄支技システムHIDAS(HIDIC Diagnosis

Assist-ant system)は,システム障害時,必要なデータを即時に収 集した上で分かりやす〈編集し,見やすい形でドキュメント 出力することによって,障害原因の的確な究明と迅速な対策 を可能とし,システム稼動率の大幅な向上を目指すもので ある。 n 結 言 HIDIC V90/50で,従来の、ソ【ルの適用経験を踏まえ6), 「作りやすい+,「使いやすい+,そして「管理・保守しやすい+ ソフトウェアの実.呪を目指して,設計からイ末寺に至る全ソフ トウェア開発プロセスに対し,-・買した思想で幅広い支援を 行なうことのできる強力なツール群を,ソフトウェア開発支 招システムとして開発・ヲ三器條L,体系化した。 LI立製作所は,今授,適用経験をフィードバックし,使い やすさのいっそうの向上を図るとともに,新しい技術を取り 人れソフトウェア開発支援システムとしてより完全なものに 近づけるため不断の努力を積み重ねてゆく考◆えである。 最後に,このシステムがユーザーのソフトウェア開発の高 仁i娘化と生産性のド】j上に寄与することができ,また,世界の ソフトウェア工学の進歩にし、ささかでも貢献できるとすれば, 二れに降る喜びはない。 参考文献 1)森,外:制御用ソフトウエア一毘プログラミングシステム ーSPLとその周辺システムー,日立評論,62,12,889-892(昭55-12) 2)二村,外:プログラムの木構造図面"PAD'',日立評論,62, 12,871∼874(昭55-12) 3)林,外:制御用トップダウンストラクチャードプログラミン グ言語-SPL一,日立評論,60,3,235-240(昭53-3) 4)政井,外:マンマシンデータ生成・保守支援システム"MDMS'', 日立評論,62,12,899-902(昭55-12) 5)大島,外:制御用ソフトウェア機能一貫テストシステム "HITEST/F'',日立評論,62,12,893∼898(昭55-12) 6)林:制御用ソフトウェアー貰生産支援システムによる品質向 上支援,日科技連「ソフトウェア生産における品質管理シン ポジウム ̄+(第1回),(昭56-7) 7)中西,外:HIDICV90/50基本制御ソフトウェア,日立評論, 63,12,863∼868(昭56-12)

参照

関連したドキュメント

[r]

試験区分 国語 地歴 公民 数学 理科 外国語 小論文 筆記試験 口述試験 実技試験 出願書類 高大接続プロ グラム課題等 配点合計. 共通テスト 100

Harry : Japanese people think the spirits of old family members are important?. Sakura :

Why does riding a road bike help you lose weight more than jogging..

はじめに 中小造船所では、少子高齢化や熟練技術者・技能者の退職の影響等により、人材不足が

らぽーる宇城 就労移行支援 生活訓練 就労継続支援B型 40 名 らぽーる八代 就労移行支援 生活訓練 就労継続支援B型 40 名

記録表 ワークシート 作品 活動の観察

本センターは、日本財団のご支援で設置され、手話言語学の研究と、手話の普及・啓