当前位置:文档之家› 家校通概要设计说明书

家校通概要设计说明书

软件概要设计说明书 (2)1.引言 (2)1.1编写目的 (2)1.2定义 (2)1.3参考资料 (2)2.范围 (3)2.1系统主要目标 (3)2.2主要软件需求 (3)2.2.1 家长需求 (3)2.2.2 学校需求 (3)2.2.3 教师需求 (4)2.3设计约束、限制 (4)2.3.1(数据库)表编号与命名定义 (4)2.3.2 编程规范 (5)2.3.3注释书写规定 (9)3.软件系统结构设计 (15)3.1复审数据流、控制流 (15)3.2软件体系结构 (15)3.2.1 软件程序结构图 (15)3.2.2模块命名规则 (15)3.2.3模块描述 (16)3.3功能需求追溯 (21)4.复用策略 (22)5.数据设计 (22)5.1数据字典复审 (22)5.2数据项 (22)业务信息表d_operation_info (22)5.3.数据库结构设计 (23)5.4.文件设计 (23)6.接口设计 (23)6.1.用户界面设计规则 (23)6.1.1 字体 (23)6.1.2 控件 (23)6.2内部接口设计 (24)6.3外部接口设计 (24)7.出错处理设计 (25)8.系统维护设计 (25)软件概要设计说明书Software Preliminary Design Description1.引言1.1 编写目的在分析《管理信息系统的基础》上,华迪公司Android项目小组对该系统进行了概要设计。

主要是基于以下目的编写此说明书。

1、对系统概要设计的阶段任务成果形成文档,以便阶段验收、评审,最终的文档验收。

2、对需求阶段的文档再次确认过程,对前一阶段需求没有做充分或错误的提出修改。

3、明确整个系统的功能框架和数据库结构,为下一阶段的详细设计、编码、和测试提供参考依据。

4、明确编码规范和命名规范,统一程序界面。

预期读者:详细设计人员、概要设计评审小组、研究院领导。

1.2 定义MIS: 管理信息系统系统: 管理信息系统质量技术交底:对一个工程项目开始时提出的要达到的质量要求。

人力强度:一个工程项目每个时间段投入人力的分布。

1.3 参考资料书2.范围2.1 系统主要目标华迪家校通(Hwadee Families School Communication,简写:Hwadee-FSC)是指利用无线通信技术和网络技术搭建的家校互通平台,为家校之间提供充分、准确、及时的沟通方式,为全面监控学生和学生成长提供有效的途径,该平台运行于移动终端,家长、学生、教师、领导都可以通过智能手机、平板电脑等媒介进行沟通和信息传递。

2.2 主要软件需求2.2.1 家长需求2.2.1.1 子女情况监控1.可以通过平台查看学生考勤、奖罚、评语、成绩、学生管理、作业等信息2.2.1.2 交流和留言功能1.能通过文字进行沟通2.能发送语音进行沟通2.2.1.3 具备二维码扫描功能2.2.2 学校需求2.2.2.1 建立学校微网站所有用户可以查看学校简介、机构设置、通知、公告、新闻等。

2.2.2.2 与学校现有数据对接将学生的考勤(门禁)、奖罚、评语、成绩、作业信息进行整合。

2.2.2.3 信息主动推送将学生的考勤、奖罚、评语、成绩、学生管理、作业信息推送给家长。

能发布新闻、通知信息,并推送给老师、家长、学生。

2.2.3 教师需求2.2.2.1 作业发布将课后作业信息发送给家长和学生。

2.2.2.2 信息交流能通过平台与家长、学生进行沟通交流,支持语音。

能发布新闻、通知信息,并推送给家长、学生能发布学生活动照片,所有家长均可以浏览和留言。

采用高稳定、高扩展性的开发平台,建议使用Liferay平台。

客户端支持IOS和Android两种移动操作系统,推荐前期先开发支持Android的移动APP2.3 设计约束、限制2.3.1(数据库)表编号与命名定义2.3.1.1 表编号定义:9000a).9 1位,表示表的类型;1代表码表2代表数据存放表3临时表4视图2.3.1.2 表命名定义:AB_ + 表的英文名称a).A 表示表的性质,‘无’代表用户表(与业务处理直接相关的表)S 代表系统表(为完成业务而建的对用户非透明的表)b).B 表示表的类型,C 码表(包含唯一代码,一次性生成,很少改动)D 数据存放表(业务数据、控制、设置、记录系统信息等)T 临时表(程序动态生成)V 视图c).表的英文名称表示表的英文名称,可缩写;d).举例用户码表:c_bank系统码表:sc_user2.3.2 编程规范2.3.2.1 对象命名规范对象类型2.3.2.1.1 PBL对象命名(类+)对象类型前缀+ ‘_’ + 对象英文名如:uo_process_rendercw_process_ancestor2.3.2.1.2 控件对象命名对象类型前缀+ ‘_’ + 对象英文名如:pic_backgroundsle_password 2.3.2.2 变量命名规范变量类别2.3.2.2.1 数据变量类型2.3.2.2.2 对象变量类型2.3.2.2.3 变量命名变量类别+ 数据类型变量/对象类型变量+ ‘_’ +变量英文名如:g s_usernamelpic_background2.3.3注释书写规定2.3.3.1 PBLa).PBL注释PBL库的注释必须标明该库的类别及其功能。

格式:库类别(10个汉字,不足用‘-’补齐)+ 功能。

如:公用库--------------公用函数业务逻辑-----------汇缴处理用户界面-----------归集查询分析b).PBL内对象注释PBL内对象的注释应标明该对象所属的业务、作者及其功能。

格式:所属业务(10个汉字,不足用‘-’补齐)+ 作者名(3个汉字,不足用‘-’补齐)+ ‘--’+ 功能描述如:公用函数------------惠兴海--以给定分隔符合并字符串汇缴处理------------喻兵-----汇缴用户界面,处理正常汇缴业务2.3.3.2 Script注释a).注释符号‘//’不许使用’/* */’作注释符。

b).函数注释每个函数都应描述该函数的名称、功能、作用范围、入口参数的类型和传值方式及参数含义、返回值类型及返回值的含义。

格式:////Function: 函数名//Purpose: 用途//Scope: 作用范围//Args: 入口参数(列表) 类型传值方式含义//Returns: 返回值类型(可确定值列表)含义//c).非函数注释注明该模块的作用格式:////功能//d).程序行间注释在程序行的每一个处理单元前作注释。

格式://注释e).注释举例////Function: F_FindObject//Purpose: 按照控件名在可视化主对象中查找主对象内的可视化控件。

//Scope: Public//Arguments: ls_name String Value 将要查找的控件名// lpbo_object PowerObject Value 可视化主对象// lpbo_find PowerObject Ref 存放并返回查找到的控件,返回NULL则表// 示可视化主对象内无控件或可视化主对象不能包含// 控件//Returns: Boolean True 表示找到该控件// False 表示未找到该控件//Integer li_loop,li_totalWindow lw_objectUserObject luo_objectString ls_control_nameObject lo_typeli_loop = 1//取得lpbo_object的类型lo_type = lpbo_object.TypeOf()//根据lpbo_object的类型分别处理Choose Case lo_typeCase Window!//Window类型lw_object = lpbo_objectli_total = UpperBound(lw_object.control[])If li_total < 1 ThenSetNull(lpbo_find)Return FalseEnd If//查找Do While li_loop <= li_totalls_control_name = lw_object.control[li_loop].ClassName()If ls_control_name = ls_name Thenlpbo_find = lw_object.control[li_loop]Return TrueEnd Ifli_loop ++LoopSetNull(lpbo_find)Return FalseCase UserObject!//UserObject类型luo_object = lpbo_objectIf NOT luo_object.objecttype = CustomVisual! ThenSetNull(lpbo_find)Return FalseEnd If//可视UserObject类型li_total = UpperBound(luo_object.control[])If li_total < 1 ThenSetNull(lpbo_find)Return FalseEnd If//查找Do While li_loop <= li_totalls_control_name = luo_object.control[li_loop].ClassName()If ls_control_name = ls_name Thenlpbo_find = luo_object.control[li_loop]Return TrueEnd Ifli_loop ++LoopSetNull(lpbo_find)Return FalseEnd Choose//非Window和UserObject类型SetNull(lpbo_find)Return False2.3.3.3 Script书写规范2.3.3.3.1 大小写a).大写以下项目必须用大写书写:1).SQL关键字,如:INSERT、SELECT、USING等2).逻辑运算符,如:NOT、AND、OR等b).小写以下项目必须用小写书写:1).各种对象名2).各种对象的属性3).各种变量4).数据表拥有者名称,如:dba5).数据表名6).字段名c).匈牙利书写法以下项目必须用匈牙利书写法书写:1).用于定义变量的对象类型,如CW_Process_Ancestor2).枚举值,如:KeyF1!,Question!,WriteMode!3).除逻辑运算符之外的所有PB关键字4).函数名称(包括系统函数、用户函数、外部函数和存储过程)2.3.3.3.2 局部变量声明的位置局部变量的声明必须写在该模块中所有可执行代码之前(游标定义除外)。

相关主题