小春网

 找回密码
 注册账号
楼主: piglittle
收起左侧

[经验分享] 日汉专业会话 - 软件工程开发实例

[复制链接]
发表于 2007-7-22 18:40:00 | 显示全部楼层
QUOTE:以下是引用piglittle在2006-4-7 12:26:00的发言:不知道能不能对做软件工作的朋友们有点用处,下面奉上中文翻译。
クラス図を書く 会話の背景: ここにきて、やっと詳細設計に入る。 オブジェクト指向技術をベースにした開発する場合は、クラス図は詳細設計のベースとして位置づけられる。クラス図では、モデリング標準のUMLに従って、クラスおよびそれらの関係を表現し、各クラスの主な属性や操作などを記述する。
登場人物: 近藤 - システムアーキテクト 鈴木 - 開発チームリーダー 山田、田中 - 開発チームメンバー 会話: 鈴木:こんにちは。          今週から詳細設計に入ります。予定としてはクラス図、シーケンス図、状態図、それとデータベース設計を中心に作業してほしいです。今日は近藤さんにクラス図の作成方法などを説明してもらいます。          それでは、近藤さん、よろしくお願いします。
近藤:承知しました。ここ数年まえから、オブジェクト指向やUMLなどはすでに分析設計の常識になってきました。説明するため、まずUMLについてちょっと触れたいです。UMLとはUnified Modeling Languageの略称で、言い換えると統一モデリング言語です。 山田:そうすると、UMLはすでに国際標準になっているわけですか? 近藤:そう言っても間違えないと思います。20世紀末の90年代にはたくさんのモデリングの提案が出まして、その後Booch、RumbaughとJacobsonの三人が揃って、統合的なUMLを提案した、この提案はOMG(Object Management Group)が1997年に発表しました。        今、UMLは単に設計モデリングだけではなく、プロセスの定義言語、テストのフレームワークなどさまざまな分野へ展開しています。 田中:私もこの前1つのUMLコースを勉強しましたが、UMLとは、単に設計図を書く記号にすぎないと感じましたけど。 近藤:UMLはもちろん設計図を書く記号ですが、しかし設計の意図を正しく、正確に伝えるため、やはりこの記号の後ろにあるオブジェクト指向技術をマスターしなければなりません。 田中:これはクラスやオブジェクトのことを指していますか? 近藤:そうです。          本質的なのはオブジェクト指向の考え方です。オブジェクトというのは、現実的なものをコンピューター世界へ反映させた表現です。たとえば、現実には車両があり、われわれのシステムではCarというオブジェクトで表現します。また、車両販売の現場では見積書があり、システムではそれに対応したQuotationオブジェクトが存在します。 山田:それならば、このQuotationオブジェクトは現場での見積もり情報の集まりでしょうか? 近藤:そうとも言えますが、それは、オブジェクトのある1つの側面です。オブジェクトとはデータを持つだけではなく、振る舞いも持ちます。データと振る舞いを統合することはオブジェクトの特徴ですね。 山田:なるほど。今回のクラス図はデータと振る舞いのどちらを表現するのでしょうか? 近藤::UMLでモデリングするには大きくわけると2種類のモデリングがあります。すなわち、静的なあるいはStaticなモデリングと動的なあるいはDynamicなモデリングがあります。今日話したいクラス図は静的なモデリングの一種です。         クラス図は主にクラスの名前、属性、および操作を定義し、そのクラス間の関係付けを記述します。 田中:クラスの関係は複雑でしょうか? 近藤:そうでもありません。クラスの関係は大きく分類すると、継承関係、集約関係、それと関連関係という3種類があると思います。          継承関係とは基本的には同じタイプのものに対して、汎化性を抽出し、スーパークラスに定義します。特殊性はサブクラスになり、スーパークラスの持っている属性と操作を継承しながら、特別な属性や操作を記述します。 田中:それで、集約関係と関連関係の区別はなんでしょうか? 近藤:まず、関連関係とは、単にオブジェクトの関係をクラスレベルで表現したものです。たとえば、PersonというクラスとCarというクラスとの間には、「運転する」という関係があります。         集約関係は関連の特殊なものとも言えます。詳しくいうと、部品を表すクラスと、それを用いて組み立てられるクラスとの関係です。集約関係の特徴は、部品側オブジェクトが組立側オブジェクトに依存することです。 鈴木:例をあげると、自動車(Car)というクラスがあって、一般的には自動車ですが、日産社製自動車(NissanCar)とトヨタ社製自動車(ToyotaCar)はそれぞれ自動車に継承関係を持ちます。自動車(Car)が見積(Quotation)クラスや注文(Order)クラスとは関連関係を持っています。それと、自動車(Car)とタイア(Tyre)クラスは関連関係とも言えますが、依存関係がありそうなので、集約関係を持つことも考えられます。        このような考えはよろしいでしょうか? 近藤:なかなかいい例ですね。            分析の初期には、1つは継承関係の定義を慎重に使ったほうがいいと思います。なんでもかんでも継承関係をつけることはいけませんね。また深い継承関係も避けてください。2つ目は関連関係か集約関係かなどを悩む必要はありません。もしはっきりわからなければ、とりあえず関連関係でもいいですから。属性や操作を定義しながらわかってくると思います。         最後に言いたいことは、クラス図を書くときには、システムが大きすぎると1枚の紙で書き切れないこともよくありますから、クラスをグルーピングすることが必要です。        われわれが今回開発しようとする車両販売管理システムの場合は、いまのところのユースケースやコンセプト図を読むと、大体60個以上のクラスがあると思います。そうするとおそらく3つまたは4つぐらいのグループに分割すればいいと思います。 鈴木:そうですね、確かにグルーピングすることは必要ですね。わたしのイメージでは、たとえば車両や部品などのクラスは品物グループで、お客さん、メーカー、商社、営業マンなどは組織のグループになると思います。最後は、請求書、納品書、注文書などのクラスはまた1つのドキュメントグループになるかもしれません。 田中:わかりました。 鈴木:それでは。今日のミーティングはここまでです。近藤さん、どうもありがとうございました。        皆さん、ありがとうございました。 皆:どうもありがとうございました。

回复

使用道具 举报

发表于 2007-7-22 23:33:00 | 显示全部楼层
好东西,收藏了,希望能经常看到这样的文章。
回复

使用道具 举报

发表于 2007-7-23 17:41:00 | 显示全部楼层
真是好东西啊,辛苦了,你说上海出版了这样的一本书,书叫什么名字,在哪里能买到阿
回复

使用道具 举报

发表于 2007-8-28 08:02:00 | 显示全部楼层
日语的繁体字怎么学?~~~~~
回复

使用道具 举报

发表于 2007-9-14 00:56:00 | 显示全部楼层
好人啊,我顶~~~~~~~~~~~~
回复

使用道具 举报

发表于 2007-9-14 10:41:00 | 显示全部楼层
背之!
回复

使用道具 举报

发表于 2007-9-20 12:58:00 | 显示全部楼层
真是不错的一段例子呢
回复

使用道具 举报

发表于 2007-9-29 21:17:36 | 显示全部楼层
好东西 呵呵~~~~
回复

使用道具 举报

发表于 2007-10-1 17:14:01 | 显示全部楼层
好帖子 帮助好大啊
回复

使用道具 举报

发表于 2007-10-2 16:15:37 | 显示全部楼层
真是难得的好帖子!顶上去!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

小春网
常务客服微信
微信订阅号
手机客户端
扫一扫,查看更方便! 快速回复 返回顶部 返回列表