系统软件编制规范(PB)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
一引言 (1)
1 编写目的 (1)
2 背景..................................................................................................... 错误!未定义书签。
二设计规范. (1)
1 系统规划 (1)
2 文件管理 (2)
2.1 目录管理 (2)
2.2 文件命名规范 (3)
2.3 文件备份机制 (3)
3 程序设计规范 (3)
3.1 界面风格 (4)
3.2 命名规范 (6)
3.3 快捷键的定义 (10)
3.4 编程规范 (10)
3.5 编程风格 (11)
系统软件编制规范
一引言
1编写目的
统一整个软件的界面风格,确定软件编制过程中“库文件”、“控件”、“变量”、“对象”、等的命名规范,增强软件开发过程中的规范性、使用
时的易维护性。
二设计规范
1系统规划
1.1计划制定
1.2计划实施
2文件管理
2.1目录管理
(1)目录
开发过程中程序、文件、文档、备份等按功能要求分别存放在D:\code\app目录下的不同子目录下,具体如下:
程序: D:\code\app\模块名
流程图和文档: D:\code\app\doc\模块名
可执行文件:D:\code\app\exe\模块名
备份文件:D:\code\app\bak\模块名
sql文件:D:\code\app\sql\模块名
图片文件: D:\code\app\bmp\模块名
(2)库文件(PBL)
程序开发过程中的各种对象按功能分别存放不同的PBL中,并附加说明。
(如:有系统管理、计划管理、生产管理、物流分析及控制、采购管
理、仓库管理、财务管理、通用查询、数据通信等模块,各模块主
文件命名规则是模块名的汉语拼音缩写,分别对应如下:
公共应用名称:tyfz
父类组件:inherit.pbl(与业务无关)
公共组件 pub.pbl(与业务有关)
应用一:xtgl
系统管理数据窗口:xtgl_dw.pbl
系统管理窗口:xtgl_w.pbl
系统管理函数及其它:xtgl_func.pbl
应用二:jhgl
计划管理数据窗口:jhgl_dw.pbl
计划管理窗口:jhgl_w.pbl
计划管理函数及其它:jhgl_func.pbl
应用三:scgl
生产管理数据窗口: scgl_dw.pbl
生产管理窗口: scgl_w.pbl
生产管理函数及其它: scgl_func.pbl
应用四:wlkz
物流分析及控制数据窗口: wlkz_dw.pbl
物流分析及控制窗口: wlkz_w.pbl
物流分析及控制函数及其它: wlkz_func.pbl
应用五:cggl
采购管理数据窗口:cggl_dw.pbl
采购管理窗口:cggl_w.pbl
采购管理函数及其它:cggl_func.pbl
应用六:ckgl
仓库管理数据窗口: ckgl_dw.pbl
仓库管理窗口: ckgl_w.pbl
仓库管理函数及其它: ckgl_func.pbl
应用七:cwgl
财务管理数据窗口: cwgl_dw.pbl
财务管理窗口: cwgl_w.pbl
财务管理函数及其它: cwgl_func.pbl
应用八:tycx
通用查询数据窗口: tycx_dw.pbl
通用查询窗口: tycx_w.pbl
通用查询函数及其它: tycx_func.pbl
应用九:sjtx
数据通信数据窗口: sjtx_dw.pbl
数据通信窗口: sjtx_w.pbl
数据通信函数及其它: sjtx_func.pbl
各种对象应分类分别存放在相应的pbl中。
建立dw.pbl存放数据窗
口,建立dd.pbl存放存放下拉式数据窗口,建立func.pbl存放存
放函数,据子系统的复杂程度还可进一步细分。
2.2文件命名规范
文件的命名要具有自解释功能,要体现模块、功能等信息。
2.3文件备份机制
为了开发的顺利进行,要定期的进行数据备份。
这样可以避免或减少由于外界因素和系统故障等多方面的原因带来的损失,减少返
工量,保证系统正常、安全的运行。
3程序设计规范
3.1界面风格
(1)窗口
主窗口类型:MDI类型,框架结构
模块功能窗口类型:popup类型
具体可根据实际情况把握,以有利于用户操作为原则。
主色调:灰底,尽量避免采用刺眼的色调。
按钮:3D raised
text:宋体,9号,黑色,居中
background:灰
(2) 数据窗口
band Height :75 ,width视具体情况而定
维护窗口(style type :grid、freeform)
说明:当维护项目较少时,直接在主窗口数据窗口提供维护(新增、维护等)功能,此时数据窗口采用grid型;反之当维护项目较多时,维
护功能要在另一窗口中完成,主窗口数据窗口则以查询窗口(不打印)
形式出现,参考下项说明,此时抽、提供维护功能的数据窗口采用
freeform形式。
1.head board:
border:3D raised
text:宋体,9号,深蓝,居中
background:灰
2.detail
border:3D lowered
text:宋体,9号,黑色,左靠齐
digital:arial,9号,黑色,右靠齐
background:白、浅绿、灰(浅绿为必录入项,前台
需提供校验,灰色为不可录入或修改项,光标不能进入)
board:3Dlowered
text:宋体,9号,黑色,左靠齐(数字右靠齐)
datawindow background:灰
summary board:3D lowered
text:宋体,9号,黑色,右靠齐
digital:宋体,9号,黑色,右靠齐
background:灰
查询窗口(不打印):(style type :grid)
1.head b oard:
border:none
text:宋体,9号,深蓝,居中
background:灰
2.detail border:none
text:宋体,9号,黑色,左靠齐
digital:arial,9号,黑色(深蓝),右靠齐
background:白
3.summary border:none
text:宋体,9号,黑色(深蓝),居中
digital:arial,9号,黑色(深蓝),右靠齐
background:灰
4.Tabular,grid格式窗口左侧增加序号栏(arial,9号,深蓝,居中)。
查询窗口:(提供打印,一般采用freeform,按用户要求格式输出) 1.head
border:none
text:宋体,10号,黑色(深蓝),居中
background:灰
2.detail border:none
text:宋体,10号,黑色(深蓝),居中
digital:arial,10号,黑色(深蓝),右靠齐
background:灰
3.summary board:3D lowered
text:宋体,10号,黑色(深蓝),居中
digital:arial,10号,黑色(深蓝),右靠齐
background:灰
说明:本项在实际中需灵活把握。
下拉式数据窗口:不设head board,采用freeform形式
detail border:none
text:宋体,10号,黑色,居左
background:白
summary 无
下拉列表:
board:3D lowered
text:宋体,9号,黑色(深蓝),左靠齐
background:白
(3)编辑框
编辑框模式:3D Lowered(单行编辑器等)
色调:白底黑(深蓝)字
(4) 按纽
在窗口中的位置以让人马上能发觉为原则,在数据敞口横向较小时
放在窗口的
右边,竖向排列。
在数据窗口的横向较大时按纽应放在窗口的下面,
横向排列。
在全屏报表中应放在数据窗口上边横向排列。
text:宋体,9号,黑色(可适当调整)
background:灰色
大小:300*80,在同一窗口中大小要保持一致。
对于按纽中汉字多
少较悬殊的情况,以美观为前提可适当调整。
说明:请尽可能采用公共库中提供的按钮对象及其提供的相应功能
函数。
(5)静态文本框
background:灰色,可适当使用其它颜色来美化窗口
text:宋体,黑色(深蓝),9号字,可根据需要适当调整。
border:none
(6) 下拉列表:
board:3D lowered
text:宋体,9号,黑色
background:白色
在下拉列表框中不设head 列
(7)其它控件
参考上述控件,根据需要来设置。
其它仍参考上述原则确定。
3.2命名规范
总体命名原则:对象或控件的命名要具有自解释功能,要体现模
块、功能等信息。
一般是模块的汉语拼音缩写加功能的汉语拼音缩写,常用的可用英语单词及缩写来表达。
(1)数据库(表)命名:
a)数据库(表)
第一部分为模块名。
第二部分为汉语拼音缩写,对有特殊含义的英文单词应替代汉语拼音。
(如:SAVE 等)
如:“系统管理”内的“操作员表”取名如下:
xt_czy
b)属几模块共用的数据库(表)
第一部分为“pub_”
第二部分为数据库(表)名,(汉语拼音缩写)
如
c)视图
第一部分为字母“v_”
第二部分为视图名,(汉语拼音缩写)
如视图“客户资料”为v_khzl
d)存储过程
第一部分为字母“sp_”
第二部分为存储过程名,(汉语拼音缩写)
e)触发器
第一部分为字母“trig_”
第二部分为触发器名,(汉语拼音缩写)
(2)pb命名规范
对象的命名应具有自解释功能。
a). 对象级(power object)
对象的命名体现了模块,对象类型,功能等信息
如:显示错误信息的结构
g_st_errormsg
窗口命名(WINDOW)
第一部分为“w_”
第二部分为模块名(汉语拼音缩写或英文单词)
第三部分为功能名(汉语拼音缩写或英文单词)如:变更登记窗口
w_dj_bg
数据窗口命名:(DATAWINDOW)
第一部分为“dw_”
第二部分为数据窗口(汉语拼音缩写或英文单词)
第三部分为功能名(汉语拼音缩写或英文单词)如:变更登记数据窗口
dw_dj_bg
公共数据窗口命名:
第一部分为“dd_”
第二部分为“pub_”
第三部分为数据窗口名(汉语拼音缩写或英文单词)如:变更登记数据窗口
dd_pub_dj_bg
用户对象命名:(USEOBJECT)
第一部分为“uo_”
第二部分为用户对象(汉语拼音缩写或英文单词)函数命名:(FUNCTION)
第一部分为“f_”
第二部分为函数名(汉语拼音缩写或英文单词)附:常用对象的名称前缀
窗口( windows ) w_
数据窗口(datawindows) dw_
下拉式数据窗口(dropdowndw) dd_
菜单( menu ) m_
函数( function ) f_
窗口级函数(windows function) wf_
对象级函数(object function) of_
菜单函数(menufunction) mf_
全局外部函数() gf_
局部外部函数() lf_
结构( structure ) gstr_ 全局
istr_ 实例
lstr_ 局部
b) 控制级
对象中(被脚本调用的)控件的命名规范控件类型的缩写加功能的英文名或其缩写作为后缀。
如:“存盘”按钮:
cb_save
显示信息的静态文本
st_info
附:常用功能的名称后缀
存盘_save或update
返回_return
增加_insert
删除_delete
修改_modify
检索_browse
上一页_pgup
下一页_pgdn
打印_print
设置_setup
C) 变量级
变量的命名体现了变量辖域,数据类型等信息
如:整型的全局变量次数
gi_count
局部字符串变量纳税人名称
ls_nsrmc
附:1.变量类型前缀
全局变量(globe variable) g_
共享变量(shared variable) s_
实例变量(instance variable) i_
局部变量(local variable) l _
2.数据类型前缀
整型(int) i_
长型(long) l_
字符串(string) s_
双精度(double) db_
日期(date) d_
十进制(decimal) dec_
日期时间(datetime) dt_
图形对象(graphobject) go_
实型(real) r_
时间(time)
3.3快捷键的定义
快捷系统一:
F1 帮助
F2 浏览
F3 存盘
F4 增加
F5 删除
F6 打印
F7~F12 暂时保留
E SC 退出
上翻(上一步)
下翻(下一步)
快捷系统二:
帮助c b_help
增加c b_add ALT+A
删除c b_del ALT+D
存盘c b_save ALT+S
确认c b_ok ALT+O
打印c b_print ALT+P
浏览(检索)cb_retrieve ALT+R
查找c b_find ALT+F
统计c b_stat ALT+T
返回c b_return ALT+B
取消c b_cancle ALT+C
退出c b_exit ALT+F4
打印设置c b_setup ALT +E
3.4 编程规范
(1)前台
PowerBuild前台编程设计中,应尽可能采用类库中的父类窗口、
通用控件、公用函数、用户对象等,避免风格、效率、实现方式
上的差异和重复劳动。
同时不断丰富类库。
类库中的各级对象必
须严格管理和控制,不得随意修改。
(2)后台
对于数据库操作设计,应注意以下问题:
a)数据表应考虑备用字段,以便扩展;
b)系统中关联各数据表的关键字段如工号、客户编号、成品款
号等应考虑建立外键;
c)对于同一数据表的操作,应尽可能根据索引设计where条件
的字段及字段顺序,并保持系统中同类操作的一致性;
d)对数据表进行插入操作时,insert table后必须带字段名;
e)存储过程中应尽量避免采用游标。
对复杂过程可采用临时
表;
f)对于关键业务的多表操作,应考虑采用事务(transaction)
及回滚机制,保证数据的一致性;
g)在编写后台数据库的触发器(trigger),存储过程
(procedure)时,要注意变量声明的可阅读性,段落的层次
性,必要的注释等方面
3.5 编程风格
(1)段落
一般采用段落如下:变量声明、变量赋值、过程处理、提示结果,
段落之间用空行隔开,段落前加注释,且与段首对齐。
(2)缩进
嵌套关系要有层次感,嵌套内层要缩进一个TAB的距离。
(3)注释
a) 程序头:
根据需要,程序头上加上对事件及功能的描述
//========================================
// 事件:(事件名称)
//
// 描述:(注释文字。
)
//========================================
对于函数则说明如下:
//========================================
// 功能:
// 参数:
// 返回值:
//========================================
b)段落注释:
//(注释文字...)
程序段...
c)段落中关键点要有简短说明
程序 //(注释文字。
)
(4) 提示语.
.。