嵌入式软件系统期末大作业_第1页
嵌入式软件系统期末大作业_第2页
嵌入式软件系统期末大作业_第3页
嵌入式软件系统期末大作业_第4页
嵌入式软件系统期末大作业_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、嵌入式软件高级开发技术期末作业姓名:王鹏飞 学号:S 学院:信息学部 专业:软件工程 班级:软件工程2班1. 如何理解嵌入式系统的概念? 嵌入式系统中的软件有哪些特征? 概念:1、 从硬件上理解,嵌入式系统硬件是将传统的基于CPU的外围器件,整合到CPU芯片内部。2、 从软件上理解,嵌入式系统就是在定制操作系统内核里将应用一并选入,编译后将内核下载到ROM中。而在定制操作系统内核时所选择的应用程序组件则是完成了软件的“嵌入”。3、 从实现上理解。把软件内核或应用文件系统等东西写入到嵌入式系统硬件平台中的ROM,就实现了一个真正的“嵌入”。 特征:针对特定的实际专业领域的,基于相应的嵌入式硬件平

2、台的,并能完成用户预期任务的计算机软件。用户的任务可能有时间和精度的要求。2. 简述嵌入式软件开发的一般流程。嵌入式软件开发的一般流程:总体规划、项目立项、需求分析、系统分析、系统设计、系统实现和后续流程等7个阶段3. 什么是设计模式?简述 Adapter 设计模式的原理及其在嵌入式软件中的 实现方法与技术。设计模式(Design Pattern):一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结。使用设计模式的目的:为了代码可重用性、让代码更容易被他人理解、保证代码可靠性。 设计模式使代码编写真正工程化;设计模式是软件工程的基石脉络,如同大厦的结构一样。适配器设计模式(Adapt

3、er Pattern)主要用于接口的转换或者将接口不兼容的类对象组合在一起形成对外统一接口,是一种结构性模式,其本质是是一个中间件,适用于类及其对象。类适配器原理:通过类继承实现适配,继承Target的接口,继承Adaptee的实现。对象适配器原理:通过类对象组合实现适配Target:定义Client真正需要使用的接口。Adaptee:其中定义了一个已经存在的接口,也是我们需要进行适配的接口。Adapter:对Adaptee和Target的接口进行适配,保证对target中接口的调用可以间接转换为对Adaptee中接口进行调用。实现方式:组合(composition)和继承(inheritan

4、ce).4. 采用 ROOPES 方法分析、设计如下的系统(四选一): (1)具有 GPS 定位和计步器功能的个人健康助手 (2)电梯控制系统 (3)(参考微信支付功能)分析设计移动支付系统 (4)(参考 Mobile 单车 APP)分析设计基于 Android 的共享单车系统 需提交:需求分析(用例模型)、对象分析(对象模型)、系统设计(类 图、包图、交互图、顺序图)。答:我选择分析设计基于Android 的共享单车系统基于 Android 的共享单车系统1 总体要求目前,自行车出行所占比例越来越大,公共自行车的管理已经开始融入互联网管理系统。通过对公共自行车使用方式和目前存在的问题进行分析

5、,从中提取出公共自行车的需求,再根据需求进行功能需求分析,从中得出自行车APP软件的功能需求。然后进一步对功能设计模块进行详细设计,同时对单车APP的系统结构和数据库框架进行设计,在Android手机端为公共自行车的使用提供更加方便的解决方案。1.1 实现目标随着互联网的快速发展和智能手机的普及使用,公共自行车的管理开始融入移动互联网,共享单车的使用需要依靠移动APP软件的支持,用户只用在安装这种APP的情况下才能租车使用。因此,基于Android的共享单车系统利用Android手机和GPRS无线网路系统使用户可以进行快速租车,管理人员可以方便的管理公共自行车信息,具体实现目标如下:(1) 用

6、户在安装相应的APP租车软件并且进行注册和登录后可以方便快速的使用自行车。(2) 自行车管理人员可以实时的了解自行车的位置、损坏情况及分布信息,并且在高峰时刻对自行车进行调度。(3) 用户可以利用APP软件实时的查找自行车的存放位置、使用信息和充值信息。1.2 系统框架设计由于共享单车系统在使用过程中需要一定量的数据的存储和传输,通过网络存储数据并且传输是必然的选择;由于使用和管理的需求,在单车APP设计过程中,将APP分为两个不同的入口,即Android用户端和Android 管理端,因此,共享单车系统的框架由Android用户端和Android管理端和数据库服务器组成,并且通过Intern

7、et网络进行传输数据。共享单车系统框架图如下:共享单车系统框架图(1) Android用户端利用安装在手机上的app软件发送使用单车的请求,该请求将会通过网络发送给数据库服务器,数据库服务器判断该用户是否可以使用,如果可以使用,则给单车发送开锁的指令并且修改单车的使用状态,单车开锁,用户骑行操作完成;如果不可以使用,则返回给单车app软件相应的错误提示或反馈信息。用户骑行完成后,关闭车锁,车辆会发送给数据库服务器车锁已关闭的提示,告知数据库服务器用户骑行完毕,还车成功;数据库服务器便改变车辆的使用状态,计算使用资费,并且将信息发送至单车APP软件。(2)Android管理端利用APP软件对单车

8、进行用户的审核和管理,车辆的调度,查看区域车辆情况和和坏车情况、对单车进行调度、坏车保修、管理和维护管理员信息、管理个人信息等功能。1.3 开发需求开发环境:Windows7/10下的Android studio 平台。开发语言:手机APP端采用JAVA语言进行开发,SQL语言用于数据库的调用。运行环境:Android版本的手机。接口:百度地图API,MySQL数据库的连接接口。2 需求分析2.1 确定系统的边界用户使用装有单车APP软件的Android手机,并且在进行注册、登录和充值的情况下,在单车软件中查看附近的自行车停放位置,扫描自行车上的二维码进行开锁,骑行自行车;管理者通过APP软件

9、进行实时监控共享自行车的位置。由图可知,单车系统由Android客户端,Internet网络,Android管理端和数据库服务器组成。2.2确定系统的参与者创建系统用例的第一步是确定系统的参与者。通过共享单车系统的功能需求,可以识别以下三种参与者:(1) 普通用户:普通用户在下载安装共享单车APP软件后就可以利用手机号码进行注册认证,注册后可以进行登录、充值和骑行等活动,并且可以查看自己的骑行和交易信息,还可以通过单车APP上的地图查看附近自行的位置,便于寻找自行车;另外用户还可以利用APP软件对某个被私占单车进行举报和上报坏车的位置。(2) 系统管理员:系统管理员即单车管理端管理人员,可以对

10、单车APP软件进行维护和信息管理,在高峰时刻利用数据分析通知单车调度人员对单车的分布位置进行调整,对单车的位置进行实时的监控,将新投放的自行车的信息进行录入,处理坏车和私占单车的情况,并且解决用户在使用单车时遇到的一些软件问题。(3) 单车调度员:在高峰时刻对管理员指定位置的车辆进行调度,并且利用单车APP软件记录调度的车辆信息。2.3用例模型用例模型是系统既定功能及系统环境的模型,它可以作为客户和开发人员之间的契约。用例是贯穿整个系统开发的一条主线。2.3.1 用户交互用例模型单车用户具有注册(用户身份认证)、登录(手机号登录和社交账号登录)、骑车、还车、查看个人用户信息(交易信息和骑行信息

11、)、利用地图查看附近车辆位置、预约车辆和退出等功能。用户用例如下所示:用户用例图用例描述:(1)用例:骑车还车用例描述:用户利用APP进行骑车和还车操作参与者:单车用户、车辆前置条件:用户已经注册审核通过并且登录单车APP软件行为序列:(1)用户利用单车APP扫描二维码进行租车(2)在使用完毕后,用户将单车停放到附件指定位置并上锁(3)单车APP根据用户使用情况进行消费结算异常:网路异常或用户未通过审核取消:用户退出APP软件,停止租车操作后置条件:用户必须授权相应的支付软件或绑定银行卡等支付工具,确保支付可以完成(2)用例:预约单车用例描述:用户利用APP软件进行单车预约操作参与者:单车用户

12、、车辆前置条件:用户已经注册审核通过并且登录单车APP软件,且单车状态显示可用行为序列:(1)用户利用单车APP软件查看附件车辆位置和状态(2)对状态显示可用的车辆点击预约按钮进行预约操作(3)到单车指定位置扫描单车二维码进行骑车操作(15分钟内)(4)单车APP对预约进行计时操作,若15分钟内预约用户未骑车,则将单车状态设置为可用状态,并将预约失信操作进行记录,并给以用户24小时禁止预约车辆的惩罚。异常:网路异常或单车已坏但未及时报修取消:用户在15分钟内点击取消操作,可以取消单车预约后置条件:用户信用记录良好并且周围车辆可用(1) 用例的补充说明:单车用户进入单车APP软件,可以进行注册和

13、登录。单车用户在发送租车请求给单车APP软件后,单车APP软件发送开锁命令给单车,开锁后,单车返回开锁信息给单车APP软件,单车APP软件将租车信息持久化存储到数据库中,并且单车APP软件返回开锁信息给单车用户。单车用户可以通过地图查看附近车辆,还可以发送预约请求给单车APP软件,单车软件收到预约信息后修改单车的状态,并将预约信息持久化存储到数据库中。单车用户还可以发送管理个人信息请求给单车APP软件,单车APP软件将个人信息存储到数据库中。单车用户和系统交互的顺序图如下所示:用户交互顺序图(2)用例的补充描述用户进入APP软件后,进入登录提示页面。若注册则直接进入单车APP界面,否则,进行注

14、册。用户在单车APP软件的可以预约、租车并且查看单车分布情况。预约和租车使用的状态图如下所示:用户交互状态图2.3.2 管理员用例模型系统管理员拥有登录、用户信息审核、查看区域车辆情况和和坏车情况、对单车进行调度、坏车保修、管理和维护管理员信息、管理个人信息等功能。系统管理员用例图用例描述:(1)用例:查看区域车辆情况用例描述:系统管理员可以利用单车APP的地图功能查看指定区域的车辆情况参与者:系统管理员、单车APP前置条件:系统管理员已经登录单车APP软件行为序列:(1)管理员输入相对应的用户名和密码进行登录系统(2)登录系统后,进入单车地图界面,选择指定的区域和时间段,查看单车的使用情况和

15、位置分布(3)系统管理员查看区域内的坏车情况并且进行统计异常:网路异常或单车出现故障取消:系统管理员退出单车APP软件后置条件:系统管理员必须有相应的操作权限(2)用例:管理员信息管理和维护用例描述:拥有特定权限的管理员用户对管理员信息进行管理和维护参与者:系统管理员、单车APP软件前置条件:系统管理员已经登录单车APP软件行为序列:(1) 管理员登录单车APP软件(2)对管理信息进行操作,添加管理员,修改管理员信息,修改管理员权限,删除管理员等异常:网路异常取消:管理员退出系统后置条件:管理员拥有相应的操作权限(1) 用例的补充描述:系统管理员可以向单车APP软件发送登录和注册请求。管理员可

16、以向单车APP软件发送查看区域车辆信息请求,单车APP软件向数据库发送查询车辆信息,数据库返回车辆信息给单车APP软件,单车APP软件返回车辆信息给系统管理员。系统管理员还可以对单车APP软件发送调度请求,单车APP软件收到请求后返回调度方案给调度人员,同时将调度信息存入到数据库中。管理员还可以申请维护管理员信息,系统管理员和系统交互的顺序图如下所示:管理员交互顺序图(2) 用例的补充描述:系统管理员的状态变迁过程如下所示:管理员交互状态图2.3.3调度人员用例模型单车调度人员可以进行单车调度、登录系统和管理个人信息等功能。单车调度人员用例图用例描述:(1)用例:单车调度用例描述:单车调度人员

17、对单车进行调度参与者:单车调度人员、车辆前置条件:单车调度人员已经登录单车APP软件行为序列:(1)单车调度人员登录系统后,查询需要调度单车调度的位置信息、编号和数量、调度路线和调度时间(2)单车调度人员根据相应的调度信息进行车辆调度(3)单车调度人员调度完成后返回相应的调度信息异常:网路异常或调度出现问题取消:系统管理员取消调度操作后置条件:单车调度人员必须有相应的操作权限2.4系统类图对系统中的实体,都可以抽象出来作为一个独立的类。根据上面的用例图和用例的补充描述,该系统识别出来的系统类图如下所示:系统类图3 系统设计共享单车系统分为用户端和管理员端,管理员端又分为系统管理员和调度人员。系

18、统管理员端使用APP软件对用户的进行实时监管和身份审核,调度人员通过管理员端的入口进行车辆调度和管理,用户端则实现登录注册,骑车还车,预约车辆,查看个人信息,查询周围车辆位置,举报私占车辆和坏车上报等功能。3.1 管理端设计从单车管理的角度出发,管理端主要实现的功能如下:对车辆数量、位置情况的查询和调度;对用户请求信息的审核。功能模块图如下:管理端功能模块图(1)登录管理模块:对管理员的身份信息进行登录验证,为不同权限的管理员导航不同的管理页面,为系统管理员导航到系统管理的页面,而对调度管理员导航到调度管理页面;管理员登录后可以对用户信息进行管理和维护。(1) 查询区域车辆情况模块:管理员选择

19、要茶轩的区域和时间后段后,APP通过网络请求向数据库服务器发送查询请求,数据库服务器收到请求后将所查询到的区域时间段内的可借车数量、租借中的数量和位置信息等信息返回给APP,供管理员分析数据使用。(2) 查询车辆调度信息模块:调度车辆管理员选择负责的区域后,App通过网络从数据库服务器获取分析过的调度信息,显示当前从各个自行车服务点调入、调出数量和路线信息。调度信息定时更新。(3) 用户信息审核模块:用户在注册后进行身份信息验证,会将申请验证的信息上传到数据库服务器上去,管理员收到服务器转发过来的申请信息后,对该信息进行审核,审核通过后,该用户就可以开始使用单车,审核信息分为学生身份验证和社会

20、人士身份验证。3.2 用户端设计用户是该APP的主要使用人员,用户端的主要功能为骑车还车和充值功能;用户端的功能模块如图:用户端功能模块图登录/退出登录模块:用户在注册完成后,就可以使用注册的账号和密码进行登录验证,登录系统,退出系统操作。忘记密码时可以通过接收验证码重置密码。还可以通过社交账号直接登录。注册/身份信息验证模块:用户使用手机号码注册账号,通过填写密码和接收到的验证码实现账号的注册,注册完成后该用户通过网络上传到数据库服务器并且进行保存。在注册完成后,要输入身份信息进行身份信息验证,待审核通过后就可以正常使用单车APP。个人操作模块:该模块包含四个子功能模块:个人信息、我的里程、

21、交易信息和骑行组织模块。(1) 个人信息子模块:显示用户的账号、姓名、性别、昵称、联系方式等信息,并且用户可以对这些信息进行修改,用户还可以进行密码修改操作。(2) 我的里程子模块:从数据库服务器中获取用户的借车次数、骑行次数、出行总里程和预约次数等并显示。(3) 骑行组织子模块:该子模块包含三个功能。加入组织功能实现从数据库服务器获取已成立的骑行组成列表以及相应的资料信息,用户提交申请加入的信息后,系统会给组织创建者发送待加入申请,组织创建者同意后,用户即可加入该骑行组织。用户还可以通过创建组织功能创建一个骑行组织,管理员审核创建信息后组织创建成功,系统将该组织信息加入数据库服务器中,等待接

22、收其他用户的加入。群内聊天功能是用户骑行加入组织后,可以在该功能界面下与组织中的成员进行群聊。群聊功能通过UDP协议实现。(4) 交易信息子模块:用户可以通过该模块获取数据库中的充值记录和消费记录信息;还可以查看积分情况。地图模块:在APP主界面调用地图API显示用户所在区域地图,在地图上通过不同的图表显示不同种类的可借状态的共享单车的位置。点击某单车图标后,显示该车辆的状态,位置和收费信息和预约功能按钮。预约单车模块:用户在通过单车APP的地图查询到附近车辆后,可以对该单车进行预约,预约成功后,该单车状态转换为“已预约”的状态,预约时间为15分钟,在10分钟内预约用户可以租借已预约的单车,如果15分钟内,预约用户未借车,并且在15分钟内也没有取消预约信息,则该预约信息自动失效,单车状态自动恢复到“可借”状态,该用户24小时内不可再次预约;并且将该用户的预约不良行为记录到数据库服务器中,根据累计不良记录的情况对用户进行相应的信用评定。借还车模块:用户打开单车APP软件,可以通过扫描单车上的二维码进行借车,单车借出后,单车状态改

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论