OO+UML应该怎么写文档?

最近进入一个软件项目的二期开发小组,每天都在看一期的需求分析、概要设计、详细设计等等文档。结果越看越困惑,每个子系统的文档模版都不一样,而且认认真真的看了几遍文档,大体轮廓是明白了,可是一些具体的问题写得非常含混不清,甚至是不知所云,看的次数越多问题越多。为了看懂文档,我决定不再纠缠于文字描述,重点理解文档内部的一些生产工艺图、流程图等等图表,可是图表给我的信息却非常有限。于是我不禁想找出按照软件工程的规定都缺少了一些什么图表,最后我发现软件工程里的流程图等图跟我们平常用到的图根本就不一样。这时,我回过头来一想,其实我门平时用到的图很多是来自于OO,而不是软件工程。这些图在软件工程里是找不到的(目前了解的情况是这样)。我入行不久,但对规范却是在不断的最求。

    所以我想问这么几个问题:
    1、软件工程跟OO的联系与区别是怎么样的?
    2、应该怎样来编写用OO分析实现的文档?
    3、UML里的图应该怎样组织到文档当中?
    4、反映软件应用领域内各单位如何协调工作的业务流程图应该归向哪个文档?

1:  反问一句,以前没有OO的时候,只有面向过程的时候,有没有软件工程呢?

1983年,IEEE(Institute of Electrical & Electronic Engineers,电气与电子工程师协会)给出了一个更为全面的定义:
  软件工程 是研究和应用如何以系统化的、规范的、可度量的方法去开发、运行和维护软件,即把工程化应用到软件上。

当然有很多这样类似的概念,但我们可以看出来,这个概念中没有任何关于OO的东西.

但为什么OO和软件工程经常会混遥呢?我想有这样的一个原因:
软件工程无非包括
过程、方法和工具三个要素
1、其中方法指导“如何做”,涵盖软件开发的整个生命周期如需求分析,设计,实现,测试等。比如用use case方法进行需求分析,用junit方法进行测试
2、过程是进行一系列有组织的活动,定义了技术方法的采用、工程产品(包括模型、文档、数据、报告、表格等)的产生、里程碑的建立、质量的保证和变更的管理。
比如RUP, XP等
3、工具就更好理解了,就是一些辅助工具,提供自动的或半自动的支持。

处了上面三者外,我还要提出一个"方法论"的概念,方法论是方法的集合,包括语言和过程两个部分.我们经常接触到的UML是OO建模语言,过程有RUP,XP等.

所以语言是方法论的组成部分,可以有不同的语言(比如OO,面向过程等),而方法论是软件工程的组成部分。

因为我们经常接触UML, OO, 但他和软件工程的概念还是很有区别的.

2、应该怎样来编写用OO分析实现的文档?
3、UML里的图应该怎样组织到文档当中?
4、反映软件应用领域内各单位如何协调工作的业务流程图应该归向哪个文档?

我认为不同的软件过程有不同的方式,指导项目应该包括哪些工程产品(包括模型、文档、数据、报告、表格等)。参考一下具体的应用。举个例子,use case diagram应该组织进需求文档中.

你的问题是否可以细化,让大家可以进行讨论.

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值