需求与设计的区别究竟是什么? 教科书上的经典答案是:需求关注系统“做什么”,设计关注“如何做”,其实这是一个很模糊的说法。
无论是在结构化方法中还是在面向对象的方法中,需求分析的结果既包括了“做什么”也部分包括了“如何做”,只不过描述“如何做”时抽象的层次比较高或者描述了某个局部需求的“如何做”。客户在提出系统需求时,可能对“如何做”提出一些约束条件,比如客户要求必须采用三层结构,必须采用某个中间件等等。在需求描述文档中,一般称为“设计约束”。开发人员进行需求分析后的结果包括了系统构成元素(无论是称为模块还是称为包)的分解,包括了数据流程图或类图等,这实际上也是在定义系统“如何做”,只不过这里描述的“如何做”应是从客户的角度比较容易理解的。
在需求中包括了:
Ø 系统的目标、范围以及与外部的接口;
Ø 系统的功能、操作流程、处理规则;
Ø 系统处理的数据,数据有属性,数据之间有关系,这些数据可以解释为实体或者类;
Ø 对于系统可以划分为子系统,子系统中再分为模块,子系统、模块只是对系统功能进行分类的一种方法;
Ø 系统的设计约束;
Ø 系统的运行环境等。
另外在需求中还包括了:
Ø 子系统或模块之间的接口关系;
这一部分往往是和设计有交叉的,系统分解为子系统、模块,以及他们之间的接口关系在概要设计中往往也是涉及到的。在需求中对系统的分解是从功能的角度,是从逻辑分类的角度进行系统的拆分,而在设计时对系统的拆分是从实现的角度,比如在设计时将系统分为界面层、中间层、数据层。
在需求中尽量不描述“如何做”实际上是避免对设计进行太多的约束与假设,这样会限制设计方案的选择。设计可以认为是一种决策行为,是一种选择行为。需求确定以后,解决的方案可能有多种,如果在需求里描述了“如何做”,实际上就限制了设计只能选择某一种方案,而这种解决方案却很可能不是最优的。所谓的解决方案可针对整个系统,也可能针对某个具体的功能。
原则上“做什么”是由客户提出来,由系统分析人员进行文档化,“如何做”是由开发人员来确定的并进行文档化。
“做什么”与“如何做”在现实中是实际上是迭代进行,交织在一起的。在项目立项之前进行的可行性分析,包括了系统目标与范围的确定,包括了技术路线的论证,包括了成本、风险、进度的估算等等,在上述的行为中,包括了简单的需求与设计。在项目立项之后,采集了客户需求,进行需求分析,然后考虑系统的解决方案,此时还可能需要修改或增加需求。二者交叉或并行执行。
在需求和设计之间划一条明确的界线其实很难,理解了二者的根本区别,企业可以自己硬性地规定一条界线:即哪些内容在需求中描述,哪些内容在设计中描述。
分享到:
相关推荐
基于Android的行政区域界线界桩巡查系统的设计与实现.pdf
县级界线,行政界线,shp矢量,时效比较新15年前后。空间另有乡镇矢量边界,各省市县的村点~~
全国的乡镇一级的矢量界线,行政界线,shp矢量,时效比较新15年前后。空间另有全国村点~~
15年左右全国的乡镇一级的矢量界线,行政界线,shp矢量,有全国村点,欢迎分享,很全全国乡镇级界线,行政界线,shp矢量.rar
2010年全国乡镇界线 2010年全国乡镇界线地图
中国省界线mat文件
随着界线与不动产测绘领域的快速发展,传统的借助坐标转换软件计算方法得到经纬度,已无法满足界线与不动产测绘领域高效、快速制图的需求。为此,开发了这款专注于界线与不动产测绘领域的专业软件,用户可以快速获取...
中国各级行政界线数据shp数据: 中国国界行政界线数据shp数据; 中国省界行政界线数据shp数据; 中国地市界行政界线数据shp数据; 中国县级行政界线数据shp数据。 使用ArcGIS打开,08年数据。
Echarts 全国乡镇级界线,行政界线 json数据,行政区域时间在2015年左右。
全国行政界线全国行政界线全国行政界线全国行政界线全国行政界线全国行政界线
中国省级行政区划界线,各省的区划界线矢量数据,shp格式
行业文档-设计装置-一种界定竹黄与竹肉界线的方法.zip
国家规范 GB T 17796-2009 行政区域界线测绘规范
2017年全国乡镇界线shp _
市级界线,行政界线,shp矢量,时效比较新15年前后。空间另有县乡镇适量边界,村点~~
县级行政界线矢量图,可以用于全国县级区域的GIS制图。
针对大比例尺行政区域界线数据的应用需求,文中提出应用民政部门权威勘界成果结合基础测绘数字线划图数据,在高分辨率影像上进行标绘生产,并建设行政区域界线数据资料库的方法。该方法充分利用权威勘界成果、多源参考...
1820年全国范围内府级界线GDB数据,可用gis打开,与历史地图爱好者分享。