SEsite_top_title TEP_Logo TEP_animation_gif
menu_site menu_whatsnew menu_sejob menu_qa menu_textbook menu_comment menu_english menu_essay menu_lifestyle menu_link menu_registration menu_bbs
 SEの35歳の壁〜その乗り越え方〜NEWSEの心得SEの仕事SEの仕事詳細システム構築業務知識獲得ソフト業界ソフト裏話

    visitors since November 11, 2001.

筆者小林健三からの特別のご案内:
筆者の著作「SEの35歳の壁」〜その乗り越え方〜が4月25日にソフト・リサーチ・センターから出版されました。
あの有名なアマゾンのサイトで、下記の書物のレビューが掲載されています。また、日経コンピュータの書評欄にも掲載されました。
アマゾンのサイトで、これらのコメントをご覧になれます。
アマゾンのサイトでご購入になると、送料が無料です。

システムエンジニアの仕事
特にシステム構築手法について

(上級者向け)

第一版投稿:1998年10月23日
最終更新:2003年9月27日

関連のあるサイトは下記の通りです:

 

第1版投稿:1998年10月23日
一部更新:1999年1月3日
最終更新:2003年9月27日

 

民間企業である某電機会社に入社し,先ずは中央研究所勤務となった。それから10年後,コンピュータシステムを構築することを専業とする製作所に異動し,多くの計算機システムの構築に携わった。そこで学んだことがその後の人生のベースとなった事は確かだろう。その後,一般 論を吸収し,特定のシステム構築に偏ることなく,一般的なシステムを構築するに当たって必要とされる点をまとめた。ここでは, システムとはシステム構築とは問題点などに関して記述してゆく。<未完>

  • システムとは

    <この分は省略可>やはり大規模な製造業務向けのシステムが中心となる。所属したところでは電力会社向けのシステム,特に,電力送電線ネットワーク上の電流,電圧などの動的挙動の解析が中心であったが,私は,鉄鋼業向けのシステムを中心として業務を遂行することになった。

    まだ,計算機は出始めたばかりであり,アナログのシミュレータが堂々と稼働しており,ハイブリッド型のものも出始めていた。これを用いて電力系統のモデルを構築し,この上でシミュレートするのである。シミュレータの能力も限度があり,時間にも限度が有るため,今考えると,相当モデル構築レベルでの簡略化が必要であった。この時代は,システム工学に取り上げられているような,数学モデル構築やらその簡略化が学会での中心的な話題であった。電力系統の安定性が先ずは重要で,それに次いで,効率的な送電の方法,障害発生時の系の切替えの方法などが中心となる。これをこの大規模なシミュレータを用いて模擬して検証をするわけである。実際の系を使用するわけにはゆかないから。

鉄鋼業では,計算機の導入が始まったばかりであり,多くの技術は米国からやって来ていた。当社は,W社という会社からの技術導入で,かなり詳しい資料が入ってきていたので,対応はそれ程困難ではなかったように記憶している。製造業の中でも,中心的存在は,ファインケミカルと鉄鋼業であり,これを抜きにしては製造業を語ることは出来なかったのではないか。中心的存在とは,あの高価な計算機を導入して,系を管理することが出来るだけの経済的な余裕があり,人的資源があり,さらに,業界を劇的に発展させるだけの必要が有った業種という意味である。

その他の業種でも,IBMなどのホスト系の計算機が導入されていた業種として,銀行が挙げられるが,私は詳しくないので省略する。

結論であるが,システムとは,このような業種において,中心となる製造ラインを指し,それを制御対象として,システム的アプローチを行い,顧客の必要とする制御を計算機システム上に構築することである。であるから,システムは上記の業界での複雑な設備の統合からなるものであり,計算機システムとは,対象となるシステムと種々な方法を用いて連結して情報を取得して,目的とする制御を行う計算機システムのことである。現在とは異なり,計算機の能力的な制約が極めて厳しかったので,当然ながらシステム構築は大変に厳しい制約の元に実施する必要があり,そのために「システム工学」と言う学問が生まれたと理解している。(岩波の「基礎工学」シリーズにも詳しく記述されているし,数多くのシステム工学の参考書がこの時代に書かれている。)

 

  • システム構築とは

    もう既に述べたように,システム構築とは顧客の制御対象であるシステムに対して,顧客の要求するような挙動をする制御を実施するような計算機システムを構築することである。これは,極めて極限した言い方であるが,この要求元である「顧客」は何も一般 の市井(しせい)の顧客に限定する必要はありません。また,対象も上記に記述したような大規模なシステムである必要もありません。制御に限定しているが,何も制御に限定する必要はない。CRTディスプレー上の表示で十分である。制御対象システムと計算機システムが別 個になっているが,これも同一の機器内に存在しても構わない。

    ただし,システム構築というと,対象目標システムの設計出力〔伝送)通 信成果/評価,などが存在することが必須となろう。これなくしてシステムを構築したことにはならないであろう。

    これから,これらの,システムを構成する構成要素について順次説明してゆきたいと思うが,一つ一つ困難なことが多いので順次追加してゆく形式としたい。

    1. 対象

      対象は,ここでは鉄鋼業を取り上げたい。鉄鋼業は,鉄鉱石から製銑,製鋼,粗圧延,圧延,精成などのプロセスを含んでおり,最終的な出荷品は,自動車工業向けの薄板鋼板,造船業向けの厚板鋼板,線材,建設業務向けのH型鋼,厚板,棒鋼などがあり,これらを材料として次の製造業が待っている。であるから,鉄鋼業の製品の品質などの目標はこれらの次工程に待っている製造業からの厳しい要求がそのまま我々のシステムに対する目標となるのである。

      ここで忘れてはならないことは,システムを構築するためには,制御の対象となるシステムに関して十分な知識を取得する必要が有るということである。例えば,製銑工程は,鉄鉱石,コークス,石灰石,その他各種の合金を溶鉱炉に装入して,熱風炉からの熱風を吹き込んで長時間かかって製品である銑鉄が出来上がる工程である。

      我々が得意とした圧延工程は,粗圧延工程での製品として製作されたスラブという鋼鉄の塊を,加熱炉で摂氏1,300度程度に加熱し,それを粗圧延機,仕上げ圧延機で圧延して,要求される形状,寸法,強度,仕上がり温度を持った鉄板(厚板,薄板)に圧延することである。であるから,我々はこの工程を構成している種々な機械に関する知識のみならず,加熱鋼鉄に対する物性上の知識をも持つ必要があり,これらの知識を総合して,圧延システムモデルを構築し,要求されている計算機システムに含めることになる。

    2. 目標

      目標は,通常「顧客」から与えられる。ここで言う顧客とは,我々にとっての顧客であり,鉄鋼業のエンジニアリング部門の発注主が文書にして提出する。通 常,鉄鋼業には,優れたSEを多数抱えており,彼らが,彼らの顧客である次工程の製造業〔注文主)から出される製品に対する要求を種々検討して,我々のシステムに対する要求仕様書を作成する。これ自身が,非常に高度なシステムエンジニアの仕事であり,私は携わっていないのでこれに関して記述することは避けたい。(上記のシステム工学の参考書は,鉄鋼業のSEにより記述されたものが多いのでそれを参考にして欲しい。)

      しかし,鉄鋼業のように顧客のSEから要求仕様がRFP (Request for Proposal) の形式で提出されることは,通常は少ない。提案型のビジネスのように,また,新製品開発のように,顧客,市場の求める仕様を自分たちでまとめ,顧客が固定の場合は顧客に提出してある程度の了解を得ることが可能であるが,一般 顧客が対象である商品などでは,その自らが決めた仕様は大きい掛であり,吉と出るか凶と出るかはまさに博打である。しかし,顧客に対するアンケート調査を実施し,これに対して丁寧な統計分析(多変量 解析,要因分析,因子分析など)を実施することによって,今までとは全くことなった仕様のものを顧客が求めていることを知る,推定することが可能となるのである。

      通常は,顧客から業務内容を聴取して,問題点,改善点,などから,これらを解決するために必要なシステムを仕様の形で検討し,文書化し,または計算機によりシミュレーションし,デモシステムを構築し,画面 上に表示し,プリントアウトし,ビデオとして3次元のシミュレーションを行って,これを顧客に提出する。これで,顧客が納得したからといってこの仕様が了解されたと考えるととんでもないことが多い。すなわち,取りまとめの部門との対応でこの仕様の了解を得ている場合は,実際の使用部門で要求している内容と全く異なった仕様であることが多いのである。この場合,実際の使用部門も入れて仕様の了解を得ることが必要であると同時に,できる限り目に見える形でのデモを実施することと,システム構築の段階を追って順次顧客の確認を得ること,さらに仕様の変更に対して柔軟に変更が可能な形でシステムを構築してゆくことが大切である。

    3. システムの設計

      システムの設計は,上記2.で与えられた抽象的な目標を具体的で測定可能な目標を再確認することから始まります。通 常,この目標は多次元ですから,設計段階でこの多次元の目標を最適化するというかなり困難な手法が必要です。これについては省略しますが,概要書を参照下さい。<このサイトから詳細の情報をダウンロードできます。できる限りこのHP内で閉じるように,HPの更新作業中ですので,もうしばらくお待ちください。>

      設計項目を挙げます。当然,制約条件の元で選択できる設計条件を検討する必要があります。システムは,製作を完了した時点で機能すればよいというものではありません。ですから,自分の持ち分の分野のみならず,上流および下流の分野に対しても技術動向を正確に把握しておく必要があります。これを怠ると,Wintelを選択するような愚を犯します。Wintelはほんの短時間のあだ花です。向こう数年間,同じように稼働すると思うととんでもない間違いでしょう。<どうやらこの予想は1999年には的中しそうですね。もちろん,クラアントはWintelを採用するような傾向は変わらないでしょうが,基幹部門にはUNIXを中心としたWS(ワークステーション)系になるのではないでしょうか。それとも,Linuxあたりが幅を利かせるかもしれませんね。>

      これは,2.目標で記述すべきことであるかもしれませんが,技術動向(将来を見据えた)のみならず,顧客の要求の将来動向を鋭いエンジニアリングゲス(engineering guess) (要するに,勘ですね)を用いて,顧客は現在このような要求を出しているが,明日にはこのようなことを要求して,システムがそのように動作しないとクレームを付けるだろうということを想定するのです。この辺りが優れたSEと平凡なSEとの違いでしょう。私は,決してWintelを使用しませんでした。Windows NTも使用しませんでした。OracleもAccessも使用しませんでした。HP-UXを使用し,Sybaseを採用しました。間違っているでのでしょうか。このシステムは急激な利用者の増加に対しても順調に稼働しております。CPUを増やすだけで,負荷の増加に対応が可能です。まともなSMP機能の動作しないどこかのマシンとは生まれが違います。

      設計項目は,従来からのシステムの延長であるシステムを設計する場合と,全く新規なシステムを設計する場合とでは大幅にことなります。しかし,これが決められないようでは,SEではありませんね。

       

    4. 出力

      これが一応設計項目を決める要素です。これは通 常,要求仕様として提出されるものであるし,現在のようなシステムでは,マンマシンインタフェースを使用した複雑な操作シーケンスを用いたものです。

      これなどは,簡単なツールを使用してMMIをシミュレーションすることが可能で,しかも,そのままコードに落ちるすぐれ物があります。このようなツールは積極的に使用することが大切です。

    5. (伝送)通 信

      以前のシステムは,ほとんど通信はBSCなどの古いプロトコルを用いて,チンタラやっていました。ところが,現在のシステムで伝送,通 信を主要な要素としないシステムは少なくなりました。ですから,これは非常に大切な要素です。

      交換回線,専用線,パケット,フレームリレー,ATMこれらのいずれを使用するか,バックボーンは100MbpsのFDDIでいいのか,1Gbpsが必要か,PCとの接続は10/100自動検出のイーサネットを使用するか,直接FDDIを接続するか,TokenRingを使用するか。SNAとイーサとの接続はどうするか。悩みが大きいですね。<ぜひ,私の働いている当社に御依頼下さい。メールを頂戴すれば,担当のものがすぐに飛んでゆきます。>

       

    6. 成果/評価

      評価ほど大切なことはありません。このために,設計の始めの段階で,システムの目標を定量 的な目標を設定しておくのです。システムを構築し,その結果をシミュレーションして性能,機能などの測定値を抽出し,当初定めた定量 値に当てはめて,いくつかのシステム案の中からこの評価値を最大にするようなシステムを選択するのです。

      言い忘れましたが,この文章の守備範囲は,あくまでも設計の段階までです。システム構築と言っても実際にシステムを製造するのではないのです。プログラムも作成しません。システム仕様書をまとまる段階について説明しているのです。

      だから,この評価の段階で,初めて構築すべきシステムの詳細仕様が「システム仕様書」の形式でまとまります。これは,飽くまでも理想的な環境の元ですが,少なくとも何も考えずに能天気にシステムを構築するのとは雲泥の差があります。皆さんのSEとしての才能を十分に注入して,Engineering Guessもやりました。能力の限界まで使用して,将来の技術動向を,自分の守備範囲に限定することなく,上流,下流にわたって推定しました。また,顧客の要求に関しても,将来の要求の変更を想定しました。

      これらの作業が理想的に実現できるか否かは別問題ですが,理想論を述べさせていただきました。これにいくらかでも沿って作業を実施していただければ,御客から叱られるようなシステム,再度構築し直す必要のあるようなシステム,暫くして負荷の増加がちょっとあっただけでも動作しなくなるシステムを構築することが無くなるでしょう。それを希望してこの文章をしたためました。

      実を申すと,私の勤めている会社内のシステムを構築している人も沢山あります。段々Wintelを基幹に使用するようになってきました。非常に心配しているのです。そりゃ価格は安いですよ。でも,何回製作し直しても動かなくなるようなシステムをどう考えますか。やはり,何か考える要素が欠けていたのではないでしょうか。

  • 問題点

    システム構築は種々の問題点を含んでいます。従来は,対象とするシステムが複雑であり,これを十分にシミュレートするだけの計算機の能力がなかったため,モデルを単純化する必要があったことが大きい問題点でありました。現在では,3次元のりジッドのモデルでさえ簡単に構築でき,画面 上に描画することが出来るようになり,機械屋さんにとってはモデル化,設計業務は大変に楽になったと思う。

    しかし,我々システム屋にとっては計算機の能力はそれ程解決にはなりません。もちろん最終的に,構築したシステムが旨く動作するかどうかを試験するためにも計算機の助けを借りることは必要で,この観点から計算機の能力が大幅に増強されたことは嬉しいことです。この最終的な段階に入る前に,ずいぶん多くの作業が必要であるのがシステム構築の特徴です。だから,計算機の能力が大幅に増強されても,支援される業務はほんの一部分であることを強調しておきたい。

個人的な意見

ここに記載された内容は極めて貴重な内容であり,企業の秘密に関するような情報である。しかし,筆者は敢てここの情報を提供したい。
できる限りSEたるものきちんとした情報,技術に基づいて仕事を実施していただきたい。これが筆者の心からのお願いである。
また,この内容はまだまだ未完である。徐々に追加してゆく方針であるが,どなたかきちんとした情報を付加していただけるとありがたい。 筆者まで メールをお願いします。

 

ちょっとお休み

Let's have a break.


本サイトの内容全ての著作権は,作者(小林健三)に所属します。無断の使用はお断りします。
更新情報は, What's new? を御参照下さい。
あなたは 番目の訪問者です。