【软工7】软件工程中的文档
2015-11-09 14:06
344 查看
导读:在学习C/S部分,结构化的程序开发中,我们基本上是以文档驱动的形式在做开发。那么,在软件工程中,文档有着什么样的意义呢?文档是从哪里来的,为什么要有文档呢?(每次给徒弟验收,就陪着徒弟,这样子似乎也挺好)
文档作为一个交流和设计的结晶,在文档驱动的程序开发中,应用的最为显著。
附:软件工程文档
注:此文档分类是以文档的产生和使用范围作为依据
2,检验点:利于管理者对开发过程进行评估(进度、质量等)。
3,组成部分:软件=程序+数据+文档,文档是整个软件开发的一部分,为维护和扩充提供依据。
文档的参与者,没有绝对的划分定义,最多不过是一个主要对象而已。
补救:以需求为驱动,原型为辅助,先进行项目的实施,在整个项目完成之后,对于系统文档进行补充。
一、文档从哪里来
在最开始的软件开发过程中,事实上是没有文档这一概念的。那么文档究竟是从哪里来的?从广义上说,文档的产生,是伴随着软件工程而来 的。在初期的软件开发过程中,对程序的设计和管理还不足,所以极大程度上导致了后续的软件危机。文档作为一个交流和设计的结晶,在文档驱动的程序开发中,应用的最为显著。
二、文档是什么
软件文档(源代码文档):是指与软件系统及其软件工程过程有关联的文本实体。包括开发过程中填写的各种图表,以及编制的技术资料和技术管理资料。附:软件工程文档
注:此文档分类是以文档的产生和使用范围作为依据
三、文档的作用
1,工具:文档可以作为整个软件生命周期中的一个重要的交通工具,并将交通结果记录下来。2,检验点:利于管理者对开发过程进行评估(进度、质量等)。
3,组成部分:软件=程序+数据+文档,文档是整个软件开发的一部分,为维护和扩充提供依据。
四、文档的参与者
参与文档的,有编写者和阅读者。事实上,软件工程发展到现阶段,对于具体的每个文档的编写者和阅读者已经没有具体的界限了。从开发文档、用户文档和管理文档这三类的划分来看,那么似乎是管理文档应该由项目组长或者经理来写,可是事实上,一个软件开发的文档,是可以全部交付给第三方或者是机器实施编写的。而对于文档的阅读者,这也没有一定的界限,比如说用户手册,难道就仅仅只是用户才可以阅读吗?文档的参与者,没有绝对的划分定义,最多不过是一个主要对象而已。
五、缺点和补救
缺点:文档在软件工程中的地位是不可被颠覆的,但是,一份精美的文档将是一项巨大的工程。它的迭代工作是非常繁重的,而文档的形成是建立在需求的基础之上,一旦需求不明确或者需要变动,那么文档必须得同步变动。在这一过程中,开发人员不得不花费巨大的精力去进行文档的编写,这项工作将非常不利于需求不明确,复杂的系统开发。补救:以需求为驱动,原型为辅助,先进行项目的实施,在整个项目完成之后,对于系统文档进行补充。
六、感受总结
一个正常的逻辑似乎该是先写文档,再编码实现。即使是在需求变动的情况下,也应该是在文档本身上进行迭代更替。开发和文档同步进行,但是在现实开发中,文档的编写任务往往比开发任务更为的繁杂。于是类似于XP的开发模式衍生,具体情况具体分析!什么时候写文档,或许仅仅只是文档迭代的颗粒度不同罢了。但是,保证文档的版本和系统版本维持一致,我认为这也是一种最基本的要求!相关文章推荐
- 【软工7】软件工程中的文档
- 图片存到本地
- Ubuntu Server 14.04 下root无法ssh登陆
- 未定义的类型
- Eclipse IDE中Build path specifies execution environment J2SE-1.5.There are no JREs installed..
- Android:BLE(Bluetooth Low Energy)开发
- LeetCode---Pascal's Triangle II
- source insight 设置行数、加高亮
- 处理注解@RequestParam的"Required String parameter is not present" 此博文包含图片
- Just about the most alluring details for Diesel-powered see happen to be not bettered together with loan excogitation
- [LeetCode154]Find Minimum in Rotated Sorted Array II
- 【iOS】【FMDB】【sqlite】try catch实现事务处理
- tableview
- hive错误集锦
- Python第三方库代码总结
- 学与用的关系
- Java基础---类的继承
- Spring配置动态数据源
- BIEE报表开发
- 详解JavaScript中的Unescape()和String() 函数