浅谈三大文档——需求、概要及详细

        当今,电脑已经走进了千家万户。而用360清理电脑,好像已经是每家每户经常干的事情。而我的一个远亲更为夸张,家里电脑上装满了360的套装。从浏览器到安全卫士再到杀毒软件。清理电脑清理的频繁极了,而且人家还非常关注360软件的更新,虽然他不知道是怎么回事儿,软件一有更新,就更上瘾似的去更新。


       下面我们想一个问题:为什么360能够通过不断的升级程序,达到程序的更新,而有的程序一有新的业务,就非得推倒重来呢?


       当然,初期软件的架构非常重要了。然而无论在软件设计之初,还是在软件的使用过程中,维护过程中,项目经理级别的人物交流等等,等等都离不开的,就是文档。


       说到文档,就必须得说需求、概要、详细三大文档。俗话说:万事开头难,这需求分析文档,就是该系统的头儿,它主要解决“做什么”的问题。需求分析时,系统分析员和软件工程师对客户的需求进行充分理解,然后把业务需求理解整理成文档。该文档便供架构师对该系统进行架构,包括后续的画UML图,编写概要设计文档和详细设计文档。


       个人认为,需求分析文档中可以有用例描述。用例描述,是用户与开发人员之间最好的语言,一般情况下,开发人员很难向听出来用户想要什么系统,而用户用自己的语言描述半天也表述不清自己要的是啥。而用例图能够使他们两者达成共识。


需求分析里面,还应该放置用户特点。俗话说:知己知彼,百战百胜。只有知道了用户的特点,才能对症下药,制定出符合他们的需求系统。


       当然需求里面也需要放一些其他的东西,比如关于性能描述,非功能性要求等等,这里不多少说,大家可以去百科里面查。下面说概要。


       那么,什么是概要设计文档,写完之后又要给谁看呢?


       个人认为,概要设计文档的编写就是要根据需求文档的要求,把系统具体化。将系统的功能进行模块划分,建立模块的层次结构调用关系、确定模块之间的接口和人机界面等等。


        那么概要设计文档完成后要给谁看呢?经过昨天激励的讨论,大家一定都知道了。首先,概要设计首先要给项目经理级别的人看的,他通过该文档能够了解该系统的全局以及该系统的特色和亮点。然后,概要设计也可以拿给用户看,用户经过简单的培训,大体上读懂文档应该没有问题,他们能够通过该文档了解到这的系统是不是他们所需要的系统;再然后,概要设计还可以起到唬人的作用。比如公司之间外包项目,可以拿概要设计文档对自己项目的两点和难点吹嘘一番,给人眼前以震惊的感觉。


       我们知道了概要设计文档要给谁看,那我们的概要设计要包含哪些内容呢?


       概要设计文档需要有该系统的功能介绍,但是不是功能的具体实现。当然,我们可以在里面放用例图。我们可以将我们建模的用例图放到概要设计里面,使参看该文档的人能够对系统的功能一目了然。


       另外,我们更可以把系统的主要功能界面放在该文档中,阅读者多图的吸收能力远远大于文字,简单的几幅功能图片,能够将你系统的主要功能概述出来。


       此外,我们也可以将数据库的框架设计、表设计以及系统的整体架构体(也就是包图),放在概要设计里面。目的还是一样,让用户能够从全局了解该系统。


        同时,我们也可以将我们的编程规范统一在概要设计文档中。


       个人认为,概要设计就好像人的脸一样,它就是系统的脸。通过这张脸,我们能够看到这个系统到底漂亮不漂亮,到底值多少钱,到底有没有面子,能不能唬人。


        有了概要设计,下面我们来看详细设计。


        详细设计文档一定要细致。因为它主要是给编程开发人员看的,大家要严格根据详细设计文档来编写代码,所以该文档的准确性一定要高,可以说该文档出问题,那么系统就一定会有问题。


        详细设计文档中,要包含各个层次之间的接口。比如我写UI层的代码,那么我就必须知道BLL有哪些类,有哪些方法、及其它的参数,返回值等。那么这些就都必须在详细设计文档中有详细的中文说明、英文名称。


        这是接口,那么详细设计中还需要放写什么呢?我们还可以将时序图放在里面。我都知道,时序图是对指定功能的具体实现,将该系统的主要功能的时序图放在详细设计文档中,使开发人员对层与层之间的调用关系,方法名、参数、返回值等更加了解。


        另外,系统的其他方面的具体细节,也应该在详细设计文档中声明。比如系统的精度问题、程序必要的功能、性能的描述等。


        概要设计文档给系统分了模块,而详细设计就要把这各个模块逐步细化,直到开发人员能够较轻松的看懂为止。


  • 7
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 28
    评论
本课题的研究背景 ............................................................................................ 1 1.2 本课题的研究意义 ............................................................................................ 1 1.3 本论文的目的、内容及作者的主要贡献 ........................................................ 1 1.3.1 本论文的目的 .......................................................................................... 1 1.3.2 本论文的内容 .......................................................................................... 1 1.3.3 作者主要贡献 .......................................................................................... 2 1.4 国内外相近研究课题的特点及优缺点分析 .................................................... 2 1.5 现行研究存在的问题及解决办法 .................................................................... 2 1.5.1 需求分析问题 .......................................................................................... 2 1.5.2 数据库设计问题 ...................................................................................... 2 1.5.3 三层结构设计问题 .................................................................................. 3 1.5.4 代码实现问题 .......................................................................................... 3 1.5.5 页面设计问题 .......................................................................................... 3 1.6 本课题要达到的设计目标 ................................................................................ 3 1.6.1 实现后台数据库的设计与实现 .............................................................. 3 1.6.2 实现用户信息的管理 .............................................................................. 3 1.6.3 实现学生成果信息的发布与管理 .......................................................... 4 1.6.4 实现对学生信息及成果信息的查询 ...................................................... 4 1.6.5实现用户间学习交流的留言、评论功能 ............................................... 4 第二章 系统分析 .................................................... 5 2.1 系统需求分析 ............................................................................................. 5 2.2 采用的关键技术介绍 ........................................................................................ 6 2.2.1 ASP.NET简介 .......................................................................................... 6 2.2.2 SQL Server 2000 简介 .............................................................................. 6 2.3 可行性分析 ........................................................................................................ 7 2.2.1 技术可行性 .............................................................................................. 7 2.2.2 操作可行性 .............................................................................................. 7 第三章 系统概要设计 ................................................. 8 智能卡技术课程设计报告 II 3.1 系统总体设计 .................................................................................................... 8 3.1.1 运行环境 .................................................................................................. 8 3.1.2 系统流程 .................................................................................................. 8 3.1.3 系统结构 ................................................................................................ 10 3.2 系统接口的概要设计 ...................................................................................... 10 3.2.1 用户接口 ................................................................................................ 10 3.2.2 外部接口 ................................................................................................ 12 3.3 数据库概要设计 .............................................................................................. 12 3.3.1 逻辑结构设计 ........................................................................................ 12 3.3.2 物理结构设计 ........................................................................................ 13 3.4 系统出错处理设计 .......................................................................................... 14 3.4.1 出错信息 ................................................................................................ 14 3.4.2 补救措施 ................................................................................................ 14 3.4.3 系统维护设计 ...................................................................................... 14 第四章 系统详细设计 ................................................ 15 4.1 表示层即系统界面的详细设计 ...................................................................... 15 4.1.1 母版页的详细设计 ................................................................................ 15 4.1.2 客户首页的详细设计 ............................................................................ 16 4.1.3 成果发布界面的详细设计 .................................................................... 17 4.1.4 学生留言信息管理界面的详细设计 .................................................... 18 4.1.5 页面权限设置的详细设计 .................................................................... 19 4.2 业务层的详细设计 .......................................................................................... 19 4.3 数据库详细设计 .............................................................................................. 20 4.3.1 表的详细设计 ........................................................................................ 21 4.3.2 表间关系图 ............................................................................................ 23 第五章 系统实现 .................................................... 24 5.1 系统开发环境 .................................................................................................. 24 5.2 系统实现 .......................................................................................................... 24 5.2.1 客户端系统实现 .................................................................................... 24 5.2.2 后台管理系统实现 ................................................................................ 26 5.3 系统运行环境要求 .......................................................................................... 27 5.3.1 服务器端要求 ........................................................................................ 27 5.3.2 客户端要求 ............................................................................................ 27 III 5.4 系统部署 .......................................................................................................... 27 5.4.1数据库设置 ............................................................................................. 27 5.4.2 服务器端运行设置步骤 ........................................................................ 27 第六章 性能测试与分析 .............................................. 28 6.1 测试实例(测试集)的研究与选择 .............................................................. 28 6.2 性能分析 .......................................................................................................... 29 第七章 课程设计总结 ................................................ 31 7.1 系统总结 .......................................................................................................... 31 7.1.1 系统特点介绍 ........................................................................................ 31 7.1.2 系统存在的问题 .................................................................................... 31 7.2 系统改进建议或设想 ...................................................................................... 32 7.3 课程设计心得体会 .......................................................................................... 32 参考文献 .......................................... 错误!未定义书签。
评论 28
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值