基于蓝牙的定位系统的需求分析与概念原型
作者:互联网
前言
本文在《高级软件工程》的课程理论之上,同工程实践项目-基于蓝牙的定位系统相结合,通过软件工程项目中的方法,如需求分析,业务类图,数据模型,概念模型等,进一步提高软件工程实践的能力。
1.项目简介
基于蓝牙的定位系统,通过前期对于信标蓝牙数据和标签数据GPS的采集,在服务器上,通过机器学习建模,以达到在后期能直接通过手机所采集到的蓝牙信标数据,放入模型中,以返回地图与用户在当前时间的位置。
2.用例建模
1.基本步骤
第一步,从需求表述中找出用例,往往是动名词短语表示的抽象用例;
第二步,描述用例开始和结束的状态,用TUCBW和TUCEW表示的高层用例;
第三步,对用例按照子系统或不同的方面进行分类,描述用例与用例、用例与参与者之间的上下文关系,并画出用例图;
第四步,进一步逐一分析用例与参与者的详细交互过程,完成一个两列的表格将参与者和待开发软件系统之间从用例开始到用例结束的所有交互步骤都列举出来扩展用例。
其中第一步到第三步是计划阶段,第四步是增量实现阶段。
2.用例分析
在该系统中,只用1种用户。该系统应满足用户以下需求:
1)登录
2)采集数据并上传(数据通过蓝牙接收,可被保存在本地数据库中,通过网络传递数据,以供服务器训练模型)
3)获取GPS数据
4)请求定位当前位置(通过上传当前所获得的信标蓝牙数据,传递个服务器返回当前位置,并可以在地图上显示)
5)管理信标蓝牙(添加信标的蓝牙设备,修改蓝牙设备的参数,如信标蓝牙的发射功率,广播间隔等等)
3.用例图
3.业务类图
1.业务领域建模过程
业务领域建模是开发团队用于获取业务领域知识的过程。因为软件工程师往往需要工作在不同的业务领域或者不同项目中,他们需要业务领域知识来开发软件系统。软件工程师往往来自不同的专业背景,这可能会影响他们对业务领域的认知。因此业务领域建模有助于开发团队获取业务领域知识形成统一的业务认知。
开发团队获取业务领域知识的过程一般包括收集业务领域相关信息、执行团队头脑风暴、对业务领域相关的知识概念进行分类,最后用UML类图将业务领域知识图形化展示。
2.建模基本步骤
第一步,收集应用业务领域的信息。聚焦在功能需求层面,也考虑其他类型的需求和资料;
第二步,头脑风暴。列出重要的应用业务领域概念,给出这些概念的属性,以及这些概念之间的关系;
第三步,给这些应用业务领域概念分类。分别列出哪些是类、哪些属性和属性值、以及列出类之间的继承关系、聚合关系和关联关系。
第四步,将结果用 UML 类图画出来。
3.业务类图
4数据模型
1.概念模型
2.逻辑数据模型
被本系统主要设计以下几张表
字段名 | 类型 | 注释 |
user_id | int | 唯一标识 |
user_name | string | 用户名称 |
user_passwd | string | 用户密码 |
user_nickname | string | 用户昵称 |
字段名 | 类型 | 注释 |
uuid | string | 设备标识 |
mac | string | 信标设备mac地址 |
name | string | 设备名称 |
pt_power | int | 设备发射功率 |
flags | int | 设备模式 |
device_type | int | 设备类型 |
adevrtising_type | int | 广播类型 |
rssi | int | 信号强度 |
time_interval | int | 广播发送间隔 |
字段名 | 类型 | 注释 |
provider | string | 数据提供者 |
timestramp | timestramp | 获取定位的时间 |
accuracy | int | 获得的数据精度 |
longitude | double | 当前位置经度 |
latitude | double | 当前位置纬度 |
altitude | double | 当前位置海拔 |
speed | double | 速度 |
字段名 | 类型 | 注释 |
mac | string | 数据发送者mac地址 |
timestramp | timestramp | 收集数据的时间 |
rssi | int | 信号强度 |
rssi_1m | int | rssi@1md的信号强度 |
uuid | string | 数据发送者的uuid |
group | int | 数据所在组别 |
5概念原型
概念是人对能代表某种事物或发展过程的特点及意义所形成的思维结论。
概念原型是一种虚拟的、理想化的软件产品形式。
通过上文对项目的分析,我们可以得出该项目的简要的概念原型:
用户打开软件,可以通过采集数据的选项,打开蓝牙,网络,与位置信息,通过在一定范围内活动,来收集空间中所获得的信标设备所发出来的信号强度和mac地址,接着将数据保存到数据库中,并且上传到服务器,供机器学习模型训练。用户可以通过请求gps信息返回当前所在经度和纬度。当收集数据到达一定量后,即模型被建立后,用户可以直接使用软件的定位模型,将收集到的信号强度数据送入模型,得到在当前一片范围内自身所在的位置,并返回地图信息。
6总结
通过对项目进行简要的软件工程过程,如需求分析,业务逻辑,数据建模等和UML建模的方法,我们进一步了解了软件是如何一步一步产生的,但是在通往成为一个软件工程师的道路上,显然还有很长的路要走。
参考资料:https://gitee.com/mengning997/se/tree/master/ppt
标签:string,信标,int,蓝牙,定位系统,业务,用例,原型 来源: https://www.cnblogs.com/zhush/p/14135939.html