SafeHome软件工程概要设计.docx
- 文档编号:11408622
- 上传时间:2023-02-28
- 格式:DOCX
- 页数:21
- 大小:291.82KB
SafeHome软件工程概要设计.docx
《SafeHome软件工程概要设计.docx》由会员分享,可在线阅读,更多相关《SafeHome软件工程概要设计.docx(21页珍藏版)》请在冰豆网上搜索。
SafeHome软件工程概要设计
项目编号
NEW0002
项目简称
SafeHome
文挡编号
文挡版次
0.1
SafeHome
概要设计
XXXX大学
2022年4月
概要信息
最近打印时间
最近保存时间
2022年4月27日星期三16:
10:
17
保存次数
884
修改记录
第1章功能模块清单
序号
模块名称
功能简述
1.
住宅安全功能
门窗监测,烟火监测,水位监测,行人运动,
Internet网上修改等
2.
住宅监视功能
通过摄像头对住宅监视、记录监视、Internet查看
3.
住宅管理功能
用具、家电控制,度假/外出模式
4.
通信管理功能
自动应答机功能,电子邮件,个人电话本,PDA连接
5.
扩展功能
待定
6.
7.
8.
9.
10.
第2章引言
2.1原始需求
1)对safehome(住宅安全)系统进行设计建模,形成概要设计说明书,可以包括部署图、体系结构模型图、safehome部分系统的OCL描述等,以及相关的文字说明。
2)行为模型:
某分析类的状态图、某功能的顺序图。
2.2开发目的
根据《需求规格说明书》,在仔细考虑讨论之后,我们又进一步对《SafeHome》软件的功能划分、数据结构、软件总体结构、数据库有了进一步的认识。
我们把讨论的结果记录下来,作为概要设计说明书,并做为进一步详细设计软件的基础。
2.3项目背景
在计算机技术日益普及的今天,传统的家庭生活模式已经融入了计算机,网络,通信等方面的技术,尤其当今国家对物联网的大力支持、引导,发展新型、智能、安全的家庭模式变得尤为重要。
SafeHome系统软件SFHV1.0是一套功能比较完善的数据管理软件,具有数据操作方便高效迅速等优点。
该软件采用功能强大的数据库软件开发工具进行开发,具有很好的扩展性,可在应用范围较广的Linux,WINDOWS系列等操作系统上使用。
。
2.4开发环境
●一台或多台pc电脑,各种壁挂和/或手持控制面板、各种传感器和用具/设备控制器。
●通过无线协议(802.11b)通信,将在新房屋或者房屋内使用。
●除了新的无线盒之外,所有硬件都不需要单独定制。
2.5参考资料
《软件工程》RogerS.Pressman著郑人杰马素霞白晓颖译,机械工业出版社
《软件工程初级教程》陶华亭主编,清华大学出版社
《软件工程:
theoryandpractice》(美)ShariLawrencePfleeger,(加)JoanneM.Atlee著,人民邮电出版社
第3章总体设计
3.1处理流程
1.住宅安全流程:
2.住宅监视管理流程
3.住宅管理流程
4.通信管理功能
3.2总体结构和模块外部设计
3.2.1总体结构
项目主模块
系统维护模块
1)住宅安全结构
2)住宅监视结构
图:
住宅监视功能图例
3.2.1.1.1住宅监视功能:
a)连接安装在屋内/屋外的一个或多个摄像头
b)摄像头全景/缩放控制
c)设置摄像头监视范围
d)在PC上显示监视图像
e)通过Internet查看监视图像
f)可选择数字化记录摄像内容
g)摄像内容重放
3.2.1.1.2系统启动的使用实例
1.房主观察SafeHome系统的控制面板以确定系统是否已准备好接收输入,如果未准备好,房主必须关闭窗户/门,以使系统就绪。
(未准备好的指示器表明某传感器是开着的,即某道门或窗户是开着的。
)
2.房主使用键盘键入四位密码,和存放在系统中的合法密码比较如果密码不符,控制面板将鸣叫一次并复位等待再次输入。
如果密码正确,控制面板等待进一步的动作。
3.房主选择并键入stay或away以启动系统,stay仅仅启动外围传感器(不启动内部的运动检测传感器),away启动所有传感器。
4.当启动进行时,房主可以观察到一个红色警灯。
以类似的方式开发其他的房主交互的使用实例。
要注意,必须仔细地复审每个使用实例。
如果交互的某些元素是含混不清的,对使用实例的复审将可能指出问题。
每个使用实例提供了参与者和软件间交互的明确的场景,它也用于刻划时序需求或对场景的其他约束。
3.2.1.1.3启动监视功能
在用户输入密码后,屏幕将显示所有的SAFEHOME功能,用户可选择住宅监视功能,系统可能会要求我确认我是谁,要求我的地址或电话号码或其他什么,然后显示一张图片监视功能:
允许房主远距离检查房屋,记录并回放捕获的录像,录像数字的,保存在硬盘上
图:
监控传感器精化后的程序结构
3.2.1.1.4显示摄像头视图
如果房主位于远方,房主可以使用任何计算机上的合适的浏览器软件登陆SAFEHOME产品网站。
输入房主的用户ID和两极密码,一旦被确认,房主就可以访问已安装的SAFEHOME系统的所有功能。
为取得每个摄像头视图,从显示的主功能按钮中选择“监视”,然后选择“选取摄像头”,将会显示房屋内平面的设计图,再选择感兴趣的摄像头。
另一种可选的方法是通过选择了“所有摄像头时”可以同时从所有的摄像头查看缩略视图快照。
当选择了某个摄像头时,可以选择“查看”,然后以每秒一帧速度显示的图像就可以在窗口中显示。
如果希望切换摄像头,选择“选择摄像头”,原来窗口信息消失,并且再次显示房间平面设计图,然后就可以选择感兴趣的摄像头,以便显示新的查看窗口。
3.2.1.1.5监视功能的用例模板
用例:
访问摄像头监视设备—显示摄像头视图
主参与者:
房主
环境目标:
从任何远程地点通过Internet查看遍布房间的摄像头输出
前提条件:
系统必须被完整配置;必须获得正确的用户ID和密码
触发器:
房主出门在外是决定查看房屋内部
场景:
1.房主登录SafeHome产品网站
2.房主输入用户ID
3.房主输入两个密码
4.系统显示所有的主要功能按钮
5.房主从主要功能按钮中选择“监视”
6.房主选择“选取摄像头”
7.系统显示房屋的平面设计图
8.房主从房屋的平面设计图中选择某个摄像头图标
9.房主选择“视图”按钮
10.系统显示一个由摄像头ID确定查看窗口
11.系统在查看窗口中每秒一帧显示视频输出
出现异常及解决方案:
1.ID或密码不正确或不被识别----阅读用例:
“确认ID和密码”
2.没有为该系统配置监视功能----系统显示恰当的错误消息,阅读用例:
“配置监视功能”
3.房主选择“查看所有摄像头的缩略图快照”----阅读用例:
“查看所有摄像头缩略视图快照”
4.平面设计图不可用或还没有配置----显示恰当的错误消息,阅读用例:
“配置平面设计图”
5.满足报警条件----阅读用例:
“满足报警条件”
3)住宅管理模块
3.2.2外部模块设计
1.主模块:
输入:
操作系统传递至的各种消息以及用户的输入数据;
输出:
主界面显示;
2.住宅安全查询功能:
输入:
需要查询监视器的编号;
输出:
监视器的工作状态,当前的状态参数界面;
3.传感器解除/启用模块:
输入:
需要设定传感器的编号及参数;
输出:
传感器关闭/开启后的状态界面;
4.功能退出模块:
输入:
无
输出:
显示主界面功能界面;
5.更改口令模块:
输入:
用户的操作输入
输出:
操作结果显示
6.住宅管理查询功能
输入:
选择需要查看的区域
输出:
查看区域的工作状态,出现问题的,进行相关的处理
7.退出系统模块:
输入:
无
输出:
提示系统退出界面;
3.3功能分配
浏览查看:
住宅安全查询模块住宅管理查询模块
打电话模块
查询功能:
系统维护模块住宅安全查询模块
住宅管理查询模块
留言查询邮件查询
修改功能:
更改口令模块解除/启用模块
关闭/启用相关模块系统对局区域的维护模块
邮件功能:
发送邮件接收邮件
删除功能:
系统维护模块
插入功能:
住宅新进入物件插入模块
3.4接口设计
3.4.1外部接口
1.用户界面
按Windows应用软件用户界面的规范来设计,使用以对话框为主的用户界面,便于用户使用。
1)主功能界面:
用户显示区:
显示当前用户的名称和家庭角色;
功能显示区:
菜单栏上显示住宅安全,住宅监视,住宅管理,通信管理,系统维护,退出
菜单显示具体功能;
信息显示区:
显示紧急告警通知;
2)住宅安全界面:
用户显示区:
显示当前用户的名称和家庭角色;
功能显示区:
菜单栏上显示门窗运动体监测,烟火一氧化碳监测,房屋地基水位监测,屋外行人运动监测,登录Internet安全设置,激活/解除传感器,返回上一级,退出
菜单显示具体功能;查看,设定
信息显示区:
显示通知;
3)住宅安全传感器查看列表界面:
信息区:
网格显示显示功能传感器的采集的图像或参数信息图样;
数据区:
列表显示各传感器传送的量化数据;
报警区:
选择通知对象:
物业,屋主,120.119,110等
设定按钮:
跳转选择的传感器设定界面;
返回上一级:
返回住宅安全界面;
4)住宅安全传感器设定界面:
信息区:
文本框输入参数,选择菜单选择状态;
功能显示区:
显示设定后采集的数据;
5)登录Internet设定界面:
信息区:
文本框输入用户名和密码;
验证区:
验证用户的电子证书;
功能显示区:
提示用户输入的信息;
6)住宅管理界面
用户显示区:
显示当前用户的名称和家庭角色;
功能显示区:
菜单上显示住宅各个区域内的需要管理的物件,灯具控制,用具控制,HVAC控制,视频/音频控制,度假外出“一键控制”模式;
信息显示区:
显示通知,并提醒做出相应处理;
7)住宅管理传感器查看列表界面
信息区:
显示查看区域传感器采集的图像或数字信息;
报警区:
选择通知相关对象,并做相关及时处理;
设定按钮:
跳转选择的传感器设定界面;
8)住宅安全传感器设定界面:
信息区:
文本框输入参数,选择菜单选择状态;
功能显示区:
显示设定后采集的数据;
9)打电话界面:
用户显示区:
显示当前用户的名称和家庭角色;
功能显示区:
菜单栏显示根据关键字或号码查看被拨用户信息,返回上一级,退出
菜单显示具体功能;查看,设定
信息显示区:
显示通知;
10)查看留言信息界面:
信息区:
显示用户留言号码、姓名等信息;
数据区:
显示用户留言时间;
设定按钮:
跳转选择的留言界面;
返回上一级:
返回主界面;
11)发送邮件界面:
用户显示区:
显示当前用户的名称和家庭角色;
功能显示区:
菜单栏显示根据关键字或地址查看发送人地址信息,返回上一级,退出
菜单显示具体功能;查看,设定
信息显示区:
显示通知;
12)查看邮件界面:
信息区:
显示发件人地址、姓名等信息;
数据区:
显示发件人发送邮件时间;
设定按钮:
跳转选择的留言界面;
返回上一级:
返回主界面;
3.4.2内部接口
采用三层架构模式:
程序分为业务层,控制层,数据层。
数据库连接模式:
ODBC连接池模式。
数据库:
建表使用E-R关系模型。
第4章数据结构设计
4.1逻辑结构设计
Family表:
账号(username);每个可进入Home的成员拥有的唯一的账号
口令(password);用户登录系统的密码。
家庭角色(role):
用户分别在家里的角色;
成员状态(status):
1为有效,0为过期。
权限等级(level):
标明用户成员的角色。
IC卡口令(icid);手持卡刷卡信息。
采用双重验证,保证安全。
电子证书号(e_Id):
用于Internet登录的标识号,唯一。
联系方式:
手持电话的链接方式,用于通知。
Email:
用于通知成员Home内各系统的运行状态。
Facility表:
设备类型(f_type):
标明设备的类型。
设备编号(f_id):
对每个受控的设备按功能区进行编号。
设备功能区(f_area):
设备按功能模块划分后的功能区代号。
设备有效性(f_validity):
设备的有效性1为可用,0为受损不可用。
Safe_yun表:
运动体编号(Syun_id):
受传感的门窗以及其他运动体得编号。
传感器编号(Syun_senorId):
标识运动体受控于的传感器的编号;
功能有效性(Syun_validity):
1表示有效,,0表示;
设备功能区(Syun_area):
运动体所属模块的编号。
运行状态(Syun_status);1表示关闭,0表示开启;
监测时间(Syun_time):
监测的时间。
Safe_fire_gas表:
设备编号(Sfg_id):
传感器设备的编号;
温度(Sfg_temperature):
抽样得来的烟火的温度;
烟浓度(Sfg_thickness):
烟或者一氧化碳的浓度;
扩散度(Sfg_diffusance):
烟火、一氧化碳的扩散范围;(1-5级)
检测时间(Sft_time):
传感器的检测时间;
设备状态(Sft_status):
设备当前的运行状态;
Safe_water_level表:
设备编号(Swl_id):
传感器的编号;
测量开始时间(Swl_starttime):
开始时间;
测量结束时间(Swl_endtime):
结束时间;
水基位高度(Swl_height):
高出水平面的高度;
设备状态(Swl_status):
设备的运行状态(1为正在运行;0为未运行)
Safe_灯具表:
传感器编号(Syun_senorId):
标识灯具受控于的传感器的编号;
功能有效性(Syun_validity):
1表示有效,,0表示;
设备功能区(Syun_area):
运动体所属模块的编号。
运行状态(Syun_status);1表示关闭,0表示开启;
监测时间(Syun_time):
监测的时间。
Safe_用具表:
传感器编号(Syun_senorId):
标识物体受控于的传感器的编号;
设备功能区(Syun_area):
运动体所属模块的编号;
物体受损区(Syun_destroy):
物体是否受损,1表示受损,0表示正常。
监测时间(Syun_time):
监测的时间。
Safe_HVAC表:
传感器编号(Syun_senorId):
标识物体受控于的传感器的编号;
功能有效性(Syun_validity):
1表示有效,,0表示;
运行状态(Syun_status);1表示关闭,0表示开启;
监测时间(Syun_time):
监测的时间。
Safe_视频/音频表:
传感器编号(Syun_senorId):
标识物体受控于的传感器的编号;
功能有效性(Syun_validity):
1表示有效,,0表示;
运行状态(Syun_status);1表示关闭,0表示开启;
监测时间(Syun_time):
监测的时间。
Safe_度假外出表(一键控制):
传感器编号(Syun_senorId):
标识物体受控于的传感器的编号
功能有效性(Syun_validity):
1表示有效,,0表示;
运行状态(Syun_status);1表示关闭,0表示开启;
监测时间(Syun_time):
监测的时间。
Telephone表:
联系人类型(T_type):
标明联系人类型。
联系人编号(T_id):
每个联系人的号码。
联系人信息(T_information):
每个联系人的基本情况;
E_email表:
E编号(E_id):
用户的账号是唯一标示用户的。
口令(E_password);用户登录系统的密码。
家庭角色(role):
用户分别在家里的角色;
成员状态(status):
1为有效,0为过期。
权限等级(level):
标明用户成员的角色。
E_address表:
联系人类型(EA_type):
标明联系人类型。
联系人编号(EA_address):
每个联系人的地址。
联系人信息(EA_information):
每个联系人的基本情况;
4.2物理结构设计
采用链表结构,首先考虑顺序链表。
4.3数据结构与程序的关系
主模块:
连接数据库。
登录模块:
连接数据库,查询Family表账号,密码,有效性,角色,权限等级验证用户的角色的有效性,并提示结果。
门窗运动体监测模块:
查询Facility表,设备功能区为Safe_Movement,状态为“正在运行”,设备编号以及采集的数据;并对Safe_yun表中的功能有效性,运行状态做更新。
烟火、一氧化碳监测:
查询Safe_fire_gas表,设备功能区为“Safe_FireGas”,设备状态,并根据传感器采集的数据对表中浓度,温度,扩散度做插入新数据。
房屋水基位监测:
查询Safe_water_level,设备功能区为“Safe_Water”的水基位,监测开始时间,结束时间。
灯具控制模块:
查询Safe_灯具表,设备功能区为Syun_validity,状态为正在运行,设备编号以及采集的数据;并对Safe_灯具表中的功能有效性,运行状态做更新。
用具控制模块:
查询Safe_用具表,设备功能区为Syun_area,状态为用具完好,根据用具的状态,进行相关的功能模块。
HVAC控制模块:
查询Safe_HVAC表,设备功能区为Syun_validity,区域内的各个指标都显示正常,如果某方温度或湿度超出正常控制范围,进行报警,并进行相关其他的功能块。
视频/音频控制模块:
查询Safe_视频/音频表,设备功能区为Syun_validity,运行时1表示关闭,0表示开启,并开放监测时间,到相应时间进行关闭。
度假外出控制模块:
查询Safe_度假外出表(一键控制),设备功能区为Syun_validity,对各区域的设备进行检查,如果没有问题,进行全面的关闭,1表示关闭,0表示开启。
打电话模块:
查询Telephone表,查看用户的电话号码或基本信息以及不打电话。
查看邮件模块:
查询E_Address表,查看用户的邮件地址或用户基本信息以及。
第5章运行设计
5.1运行模块的组合
程序启动后,进入主模块,用户的单击对话框按钮事件触发主模块调用各下层模块,进入对应的子对话框,同样由用户的输入触发这些模块调用其下层模块,完成相应操作。
5.2运行控制
本软件控制流程:
主程序运行,等待用户的输入,根据用户的输入调用各子模块
5.3运行时间
检索业务响应时间<3s;
运行响应时间<1s;
第6章出错处理
6.1出错输出信息
根据不同的出错情况给出不同的出错信息,一般用对话框给出。
6.2出错处理对策
对一般错误,给用户提示信息,让用户重新输入或退出。
对于严重错误,启动备份文件恢复,建议使用帮助文件。
第7章维护设计
由于此项目开发周期比较短,除了严格按照软件工程的科学方法开发软件、认真建立文档、编码阶段写详细的注释外,后续需要对项目进行权限级别的细致控制,以及强化安全性。
让SafeHome更安全。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SafeHome 软件工程 概要 设计