概要设计、详细设计(三)关键点(Know-How)、运用技巧
1. 关键点(Know-How)、运用技巧
4.1 设计准则
制定设计准则是概要设计阶段的最主要、最关键的工作。在实际工作中往往忽略,多数项目牺牲在这个环节。制定设计准则着眼于如何更好的做设计,设计准则通常要考虑的内容包括:设计的内容、方法、工具、模板、命名规约、模块划分规则(尤其设计粒度)、质量以及效率评估方式等等。我们首先要根据系统的需求、客户能力、项目的特征(成本、规模、进度、质量)以及自身的经验确定设计的内容。对于软件外包类的工程项目,尤其一些国际外包项目,设计准则一般已经制定好了,我们的设计团队只需要学习、理解、制作并符合这些要求的。而另外一些情况,需要我们一项项的定义规则,并同客户达成共识。实际上从某种角度来说,设计准则就代表着设计能力。
1. 设计内容的定义
识别以及定义概要设计、详细设计的内容,在定义设计内容时需要考虑成本、质量、进度、团队能力等方面的因素,同时也要兼顾测试阶段的要求。
例:一般网站系统的设计内容
|
概要设计 |
概要设计书 |
1本 |
系统架构设计 |
|
物理架构 |
|||
|
软件架构&软件层次设计 |
|||
|
子系统(包含共同部分\PACKAGE命名) |
|||
|
接口总设计 |
|||
|
概要设计-同XXX接口设计书 |
若干 |
同各产品的分接口设计 |
|
|
概要设计-网站结构设计书 |
1本 |
网站结构设计(目录结构划分\包含部署设计) |
|
|
概要设计-数据库设计书 |
1本 |
数据库物理/逻辑设计 |
|
|
概要设计-数据字典书 |
1本 |
数据字典 |
|
|
详细设计 |
画面一览表 |
1本 |
所有展示画面一览表 |
|
共同设计 |
1本 |
所有程序级别的共同设计(总合并一本):日志\LOG\消息\SESSION\权限\宏定义\数据库操作规程\画面各组件\专项功能\业务共同 |
|
|
提示信息设计 |
1本 |
日志\LOG\对外消息 所有对外提示信息总集中一起. |
|
|
配置设计 |
1本 |
各种配置项目总体引索 |
|
|
详细设计 |
1本 |
通用规则设计,大多数功能统一设计 |
|
|
详细设计-XX功能 |
若干 |
复杂功能,单独设计.大约30%~50% |
例:监控类系统设计内容
|
编号 |
概要设计内容 |
描述 |
|||
|
1 |
业务方面 |
业务 |
《变电站业务层总体概要设计》 |
1本 |
|
|
2 |
|
《变电站业务层站端概要设计》 |
1本 |
|
|
|
|
|
….. |
|
|
|
|
5 |
|
《画面设计一览表》 |
1本 |
|
|
|
6 |
|
《画面演示Demo》 |
若干本 |
|
|
|
7 |
服务 |
《变电站服务层数据交换标准》 |
总1本 |
|
|
|
8 |
|
《变电站服务层概要设计》 |
总1本(也可以按服务分) |
|
|
|
10 |
信号 |
《全信号一览表》 |
1本 |
信号标准分类/编号/设备信息标准-通讯标准-警报标准-处理标准-性能要求 对应表 |
|
|
11 |
|
《变电站智能设备信息标准》 |
若干本 |
分设备,信号格式规范 |
|
|
|
|
…. |
|
|
|
|
16 |
|
《版本导入信号一览表》 |
1本 |
管理用 |
|
|
17 |
数据 |
《数据库逻辑设计书》 |
1本(按站/市/省分比较好) |
数据库表与字段的逻辑设计 |
|
|
|
|
…. |
|
|
|
|
21 |
|
《系统配置信息规范》 |
总合1本 |
内容是各种配置的说明 |
|
|
22 |
接口 |
《MIS系统接口设计书》 |
1本 |
|
|
|
|
|
|
…. |
|
|
|
26 |
技术方面 |
|
《变电站辅助监控架构设计说明书》 |
1本 |
|
|
27 |
|
《关键技术调查案》 |
若干 |
|
|
|
|
详细设计内容 |
|
|||
|
1 |
业务方面 |
|
《画面设计》 |
若干本 |
|
|
2 |
|
《报表设计》 |
若干本 |
|
|
|
3 |
|
《服务层详细设计》 |
若干本 |
根据服务展开设计(状态管理/控制管理/ADP) |
|
|
4 |
技术方面 |
|
《画面层详细设计》 |
1本 |
画面引擎/结构原型设计 |
|
5 |
|
《服务层详细设计》 |
1本 |
服务引擎/结构原型设计 |
|
|
6 |
|
《系统共通设计》 |
1本 |
|
|
|
7 |
|
《业务共通设计》 |
1本 |
|
|
|
8 |
|
辅助开发/测试工具 |
若干本 |
管理用,辅助效率开发使用 |
|
2. 设计方法以及工具
根据设计的内容以及要求考虑采用何种设计工具进行设计。比如采用ERWIN进行DB设计、Visio进行流程设计等等。另外,有些设计工具还必须对设计团队进行培训才能有效的使用。
3. 制作设计模板
将各设计书制作成对应模板,对格式、内容、图例、文字等做出具体的要求,可以使团队更有效的工作。有的时候,我们会对设计书的1-4级目录都会详细制定,以保证设计更有效的进行。
例 数据模版
注:对于EXCEL之类的模版,可以制作一些宏或工具更便于检索、修改等操作。另外,也可以借助wiki等系统提高设计资料的管理。
4.命名规约、模块划分规则
命名规约可以包含很多的内容,比如设计资料文件的命名、各类术语的命名规则、编号的规则等等。其中,给任何东西都编个合适的号是个好习惯,当然也许有人认为这是属于IT的职业病。当设计资料有数十、百G时,当一个设计人员需要和不同层次的人员,比如客户、用户、业务专家、管理人员、开发人员、测试人员等等进行沟通时,有的时候还不得不用各种语言进行交流,任何人都希望有个完整的命名规约。
2. 质量以及效率评估方式
例,设定质量以及效率的目标
4.2 设计评审
补充
4.3 变更管理
补充
4.4 团队组织
补充
概要设计、详细设计(三)关键点(Know-How)、运用技巧的更多相关文章
- PowerBI入门 第三篇:报表设计技巧
最近做了几个PowerBI报表,对PowerBI的设计有了更深的理解,对数据的塑形(sharp data),不仅可以在Data Source中实现,例如在TSQL查询脚本中,而且可以在PowerBI中 ...
- PowerBI开发 第三篇:报表设计技巧
最近做了几个PowerBI报表,对PowerBI的设计有了更深的理解,对数据的塑形(sharp data),不仅可以在Data Source中实现,例如在TSQL查询脚本中,而且可以在PowerBI中 ...
- kafka学习笔记(三)kafka的使用技巧
概述 上一篇随笔主要介绍了kafka的基本使用包括集群参数,生产者基本使用,consumer基本使用,现在来介绍一下kafka的使用技巧. 分区机制 我们在使用 Apache Kafka 生产和消费消 ...
- Sql Server专题三:SQL操作与技巧
一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- ...
- AngularJS进阶(三十一)AngularJS项目开发技巧之获取模态对话框中的组件ID
AngularJS项目开发技巧之获取模态对话框中的组件ID 需求 出于项目开发需求,需要实现的业务逻辑是:药店端点击查看"已发货""已收货"订单详情时,模块弹出 ...
- AngularJS进阶(三十)AngularJS项目开发技巧之图片预加载
AngularJS项目开发技巧之图片预加载 绪 项目(移动端采用Ionic 框架)开发完毕,测试阶段发现移动APP首页的广告图片(图片由服务器端返回相应url地址)很难加载,主要原因还是网速.如下图左 ...
- 数据可视化之powerBI技巧(三)这个Power BI技巧很可爱:利用DAX制作时钟
周末放松一下,给大家分享一个小技巧,仅利用DAX制作一个简易的时钟. 时钟效果如下: 这个时钟的制作只需一个度量值,你信吗? 事实上确实如此,制作步骤介绍如下: 1,新建参数,生成一个数字序列作为小时 ...
- myeclipse学习总结三(MyEclipse文件查找技巧)
一.查找文件 使用快捷键[ctrl+shift+R]弹出弹出文件查找框,如下图所示: 二.查找包含某个字符串的文件 使用快捷键[ctrl+H]在弹出对话框中选File Search选项,然后在第一个文 ...
- ★10 个实用技巧,让Finder带你飞~
10 个实用技巧,让 Finder 带你飞 Finder 是 Mac 电脑的系统程序,有的功能类似 Windows 的资源管理器.它是我们打开 Mac 首先见到的「笑脸」,有了它,我们可以组织和使用 ...
随机推荐
- hdu 3635
http://acm.hdu.edu.cn/showproblem.php?pid=3635 1-n个城市,对应放着编号1-n的龙珠. 两种操作 T A B 把编号A的龙珠所在城市内的全部龙珠放到有编 ...
- Smart20学习记录----异步通知
异步通知: 阻塞与非阻塞访问.poll()函数提供了较好地解决设备访问的机制(应用程序主动访问) 异步通知:一旦设备就绪,则主动通知应用程序,这样应用程序根本就不需要查询设备状态,这一点非常类似于硬件 ...
- 【题解】【BST】【Leetcode】Unique Binary Search Trees
Given n, how many structurally unique BST's (binary search trees) that store values 1...n? For examp ...
- poj 1190 生日蛋糕
中文题 题目分析 搜索题,非常好的剪枝 由于深度一定(m),所以使用深度优先搜索,自上而下的设定蛋糕序号,最顶层的为第1层,……,最底层的蛋糕为第m层,很明显满足题目条件的前i层的(从顶层(也就是编号 ...
- mysql-server 的一些记录
为避免 innodb 文件的增大.个人倾向于读立表空间.以 innodb_file_per_table=1 参数调整. 不使用默认数据目录的话,须得将 grp own 都循环设置为mysql. 昨天晚 ...
- 正则表达式中参数g、i、m的作用(share)
参数 g g 只影响于 exec.match 方法. 若不指定 g,则:每次调用 exec 都只返回第一个匹配:match 也是只返回第一个匹配. 若指定 g,则:每次调用 exec 都从上一个匹配之 ...
- thrift在windows的编译/安装--c++版
前言: thrift是出于Facebook的rpc网络编程框架, 其对跨平台和多语言的支持优于google protobuf, 但thrift在java/c#语言上应用比较多, 资料也丰富, 在win ...
- crontab 安装 和一些 简单的命令
crontab命 令常见于Unix和Linux的操作系统之中,用于设置周期性被执行的指令.该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供 之后读取和执行.通常,crontab ...
- JS的跨域问题
1.什么是跨域? 跨域问题是由于javascript语言安全限制中的同源策略造成的. 2.什么是同源策略: 同源策略是指一段脚本只能读取来自同一来源的窗口和文档的属性,这里的同一来源指的是主机名.协议 ...
- install kinect driver for ARM---38
原创博客:转载请标明出处:http://www.cnblogs.com/zxouxuewei/ The video describes connecting a Microsoft Kinect to ...