私の勤める会社は、SIer (エス・アイヤー、Solution Integrator)なのですが、大規模ソフトウェア開発を行う際に、ソフトウェア開発の設計工程の呼び方として、概要設計、基本設計、詳細設計と呼んでいます。概要設計は、簡単に言えば大体の設計ですが、お客様にわかる言葉で書く。アメリカでは、High Level Design と呼ばれるものに相当します。基本設計は、ネット上では、Basic Design と訳されていますが、これは、和製英語の直訳です。英語圏には、Basic Designと言う言葉はありません。
基本設計に対しては、Functional Design (プログラムが何をするべきなのかを記述する)が一番近い言葉です。語感的に、Detailed Design とか、Low Level Design とか言われますが、英語自体が曖昧です。
詳細設計は、Technical
Design(機能が、コードレベルでどのように実装されるかを記述する) と言うのがいいでしょう。
この概要設計、基本設計、詳細設計というカテゴリー分けは、IBMからではないと言うことはわかったので、恐らく、NEC、富士通、野村総研のどこかが言い出した言葉なのでしょう。
あるアメリカ人(ソフトウェア産業で生きてきた50歳くらいの人)に対して、「君は、Basic Design という言葉を、自分の今までの経験の中で、使ったことがあるか?」と聞くと、「ある。」と答えた。でも、その時の彼の感覚は、Basic Design Document というドキュメントではなく、Basic Designというフェーズをイメージしている。Basic Design フェーズとは、要件をビジネス・デザインに変換するフェーズのことでであると言う。
ReplyDeleteそれは、要件定義のフェーズから、設計フェーズへの移行の部分を指している。
そして、ここからが英語の肝ですが、デザインと言うものは、ビジネス寄りのハイレベルなものから、詳しいデザインへ落ちていく過程の中で、Basic Design という言葉のニュアンスは、基本的(Basic)な部分を設計(Design)することであり、基本設計書と言う書物をイメージはしていない。
設計の中の基本的な部位をイメージしている。Basic とDesign がびしっとつながっているわけではなく、単なる形容詞として、Basic を使っているだけだという事です。
なので、いくらネットで調べても、Basic と Design がくっついて用語となっている例は、見つからないわけです。
監査などで基本設計や詳細設計の有無を聞かれるのだけど、海外ではRequirement SpecとFunctional Specとなるので、どのように対応させるのかがしっくり来ません。海外に迎合するわけではありませんが、たとえば基本『設計』は何を設計しているのかさっぱりわからない(業務設計なのかI/F設計なのかデータベース設計なのか)ので、Spec(仕様書)のほうがしっくりきます。
ReplyDelete