软件设计说明书_第1页
软件设计说明书_第2页
软件设计说明书_第3页
软件设计说明书_第4页
软件设计说明书_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、软件大型实验周一一软件设计说明书1概要设计1.1开发环境数据库服务器:mysql服务器开发语言:java ,c,sql开发工具:myeclipese, Ubu ntu虚拟机,An droid Studio,物联网试验箱开发系统还环境:win dows10,li nux1.2系统功能描述1. 系统综述宠物店系统致力于实现对店内宠物进行时间段的饮食,水的监控,用户可以通过登陆用户端查看交由宠物店里看管的宠物数据,查看在时间段的疫苗接种情况。店主端可以通过殿主账号登陆查看所有用户/宠物信息,并对其进行管理操作2. 数据段的接受与发送服务器打开后向zigbee网络发送请求,传感器将接受到的数据通过协调

2、器发送给服务器,服务器将数据进行简单数据分类,处理后,把数据存储到数据库中。3用户的注册,登陆,修改,查看系统除店主账号此外在首次使用时都需要注册用户个人信息,登录密码,这是完善用户以实现后续操作的的必须。用户同时可以修改个人信息,对自己寄存在在宠物店的宠物进行数据查看性质的管理。4管理员的数据管理,修改,删除,操作执行管理员账号完成登陆步骤后,可以对所有用户信息进行查看/删除等管理操作,也可以根据用户的查询到用户寄存在宠物点的宠物信息,同时也可以对宠物信息进行增删改查等操作5.手机端操作An droid系统进行管理的手机 app,可以通过用户名和密码与数据库信息匹配,并向服务器请求响应数据,

3、实现页面跳转和相应页面的数据回显。1.3.1服务端功能模块设计1. 登录模块类图(1)登录模块类图如图所示图1-3-1登录模块类图(2)登录模块类图说明表1-3-1登录模块类说明表类名说明HttpServlet对数据的请求进行数据处理及反应Log in Servlet对用户输入的用户名密码进行验证返回数据UserDaoImpI实现对用户数据的查询返回布尔值(3 )登录模块类图方法说明表1-3-1登录模块类方法表方法名说明logi nServlet:doget()从界面获取数据调用从数据库查询的方法logi nServlet:doget()调用doget方法相应对数据的处理UserDaolmpl

4、:fi ndByName()根据参数从数据库中找到相应数据判断正误2. 注册模块类图(1) 注册模块类图如图所示HttpServlet+Httprequest+Httpresponse+DoGet()-端4*+DoPost()E-addUserServlet+name+pwd+phone+email+DoGet()+DoPost()图1-3-2登录模块类图(2) 注册模块类图说明表1-3-3登录模块类说明表方法名说明httpServlet对数据的请求进行数据处理及反应addUserServlet对输入的数据进行判定, 若合理,调用将数据插入数据库的方法UserDaoImpl将数据插入数据库中表

5、1-3-4登录模块方法说明表方法名说明addUserServlet:doget()从界面获取数据并判定是否合理的方法addUserServlet:doget()调用doget方法相应对数据的处理UserDaolmpl:addUser()将获取到的数据参数加到数据库对应表中3. 硬件获取数据模块类图(1)注册模块类图如图所示图1-3-3硬件获取数据模块类图(2)注册模块类图说明表1-3-5硬件获取数据模块类说明表方法名说明Thread线程始类ope nThread控制继电器readThread从硬件端获取数据writeThread开启硬件段向服务器发送数据Work外部类获取void ( run)

6、类型方法中数据UserDaoImpI将从硬件段获取到的数据存储到数据库中表1-3-6硬件获取数据模块方法说明表方法名说明ope nThread:r un()从界面获取数据并判定是否合理的方法readThread:r un()调用doget方法相应对数据的处理writeThread:r un()将获取到的数据参数加到数据库对应表中Work:get()从硬件段获取数据并将数据存储到数据库中UserDaoImpl:i nsert_timefood()将获取到的数据插入数据库中UserDaolmpl:creattable()实时每天创建对应表格的方法5.获取数据模块类图(1)获取数据模块类图如图所示图

7、1-3-4获取数据模块类图(2)注册模块类图说明表1-3-7获取数据模块类说明表方法名说明httpServlet对数据的请求进行数据处理及反应se ndPetsServlet调用方法从数据库中获取数据并发送到安卓端UserDaoImpI根据传入的时间参数找到相对应的表获取到数据表1-3-8获取数据模块方法说明表方法名说明sen dPetsServlet:doget()从界面获取数据并判定是否合理的方法sen dPetsServlet:doget()调用doget方法相应对数据的处理UserDaoImpl:fi ndByldFromfood()根据参数id,当前时间值查找到相应List数据1.3

8、.2安卓短功能模块设计1. 登录模块类图(1) 登录模块类图如图所示图1-3-1登录模块类图(2) 登录模块类图说明表1-3-1登录模块类说明表类名说明LoadActivity用于用户管理员登录users用于对用户登录信息进行封装pets用于对宠物信息进行封装NetUtils用于an droid与服务器进行连接(3) 登录模块类图方法说明表1-3-1登录模块类方法表方法名说明LoadActivity:Logi nThread创建线程用于网络通信Pets 与 user 的 get 与 set用于对处理信息进行封装NetUtils:se ndJso n用于向客户端发送信息NetUtils:getj

9、so n用于接收从客户端发送过来的信息2. 注册模块类图(1) 注册模块类图如图所示图1-3-2注册模块类图(2) 注册模块类图说明表1-3-2注册模块类说明表类名说明RegisterActivity用于处理新用户的信息users用于对用户登录信息进行封装NetUtils用于an droid与服务器进行连接(3)登录模块类图方法说明表1-3-2登录模块类方法表方法名说明user的get与set用于对处理信息进行封装NetUtils:se ndJs on用于向客户端发送信息NetUtils:getjso n用于接收从客户端发送过来的信息RegisterActivity:registerThrea

10、d创建线程用于网络通信3. 主页面模块类图(1) 主页面模块类图如图所示LoadActivity -petes -list -listl -et_name -et_password+LoginThread()staff_main -user -pets +shark()Message+thread()L图1-3-3主页面模块类图(2)主页面模块类图说明表1-3-3主页面模块类说明表类名说明LoadActiviy用于用户登录Staff_ma in管理员主界面User_mai n用户端主界面Message管理员消息页面用户消息页面Message_of_user(3) 主页面模块类图方法说明表1-3

11、-3主页面模块类方法表方法名说明LoadActivity:Logi nThread创建线程用于网络通信Staff_mai n User_ma in:shark控制消息灯光闪烁Message:thread用于管理员向服务器发送消息Message_of_user:thread用于用户向服务器发送已知消息4. 管理员管理用户信息模块类图(1) 管理员管理用户信息模块如图所示图1-4-4管理员管理用户信息模块类图(2) 管理员管理用户信息模块类说明表1-4-4管理员管理用户信息模块类说明表类名说明NetUtils用于an droid与服务器进行连接users用于对用户登录信息进行封装pets用于对宠物

12、信息进行封装User_Ma nager管理员管理用户界面Psers on al_pet_Ma nager查看某一用户的宠物MyLi neChart将宠物进食情况用图表描绘出来(3) 管理员管理用户信息模块类方法说明表1-4-4管理员管理用户信息模块类方法表方法名说明Pets 与 user 的 get 与 set用于对处理信息进行封装NetUtils:se ndJso n用于向客户端发送信息NetUtils:getjso n用于接收从客户端发送过来的信息User_Ma nager:thread显示所有用户信息的网络线程User_Ma nager:thread1删除某一用户信息Person al_

13、pet_Ma nager:pers on al_pet显示某一用户的所有宠物信息Pers on al_pet_Ma nager:thread1查看宠物进食情况Person al_pet_Ma nager:thread删除宠物信息MyLi neCha rt:drawChartLi ne画图方法5. 管理员管理宠物信息模块类图(1)管理员管理宠物信息模块如图所示图1-5-5管理员管理宠物信息模块类图(2) 管理员管理宠物模块类名表1-5-5管理员管理宠物信息模块类说明表类名说明NetUtils用于an droid与服务器进行连接users用于对用户登录信息进行封装pets用于对宠物信息进行封装Pe

14、t_Ma nager管理员管理宠物界面Registerpet修改宠物信息界面Add_pet增加宠物信息界面MyLi neChart显示宠物进食情况(3) 管理员管理宠物信息模块类方法说明表1-5-5管理员管理用户信息模块类方法表方法名说明Pets 与 user 的 get 与 set用于对处理信息进行封装NetUtils:se ndJso n用于向客户端发送信息NetUtils:getjso n用于接收从客户端发送过来的信息Pet_Ma nager:thread显示所有宠物信息的网络线程Pet_Ma nager:thread2查看某一宠物进食情况Register_pet_Ma nager:ge

15、tthread回显宠物的所有信息Register_pet_Ma nager:thread修改宠物的信息Add_pet:thread新增宠物的信息MyLi neCha rt:drawChartLi ne画图方法6. 用户管理个人信息模块类图(1)用户管理个人信息模块如图所示图1-6-6用户管理个人信息模块类图(2 )用户管理个人模块类名表1-5-5管理员管理宠物信息模块类说明表类名说明NetUtils用于an droid与服务器进行连接users用于对用户登录信息进行封装pets用于对宠物信息进行封装User_i nfo用户产看修改个人信息User_refact用户修改个人信息(3) 用户管理个

16、人信息模块类方法说明表1-6-6用户管理个人信息模块类方法表方法名说明Pets 与 user 的 get 与 set用于对处理信息进行封装NetUtils:se ndJso n用于向客户端发送信息NetUtils:getjso n用于接收从客户端发送过来的信息User_i nfo:th用户查看个人信息线程User_refact:thread用户修改个人信息线程7. 用户管理宠物信息模块类图(1)用户管理宠物信息模块如图所示图 1-7-7用户管理宠物信息模块类图(2 )用户管理宠物模块类名表 1-7-7用户管理宠物信息模块类说明表类名说明NetUtils用于an droid与服务器进行连接use

17、rs用于对用户登录信息进行封装pets用于对宠物信息进行封装Pet_of_useri nfo查看某一用户的宠物信息MyLi neChart画出某一用户的信息(3)用户管理宠物信息模块类方法说明表1-7-7用户管理宠物信息模块类方法表方法名说明Pets 与 user 的 get 与 set用于对处理信息进行封装NetUtils:se ndJso n用于向客户端发送信息NetUtils:getjso n用于接收从客户端发送过来的信息Pet_of_useri nfo:pers on _pet由于查看该用户的所有宠物Pet_of_useri nfo:thread查看宠物进食情况MyLi neCha r

18、t:drawChartLi ne将宠物进食情况绘制成表格1.4活动图具体设计管理员端图1.4.1管理员端活动图第23页共29页软件大型实验周一一软件设计说明书表2.4信息交流储存说明表第25页共29页用户端图142用户端活动图2数据库设计2.1概念结构设计表2.1用户说明表注释数据库条目数据库唯一性检察必须填写(*)类型姓名n ame*Varchar密码pwd*varchar手机号Phone*varchar邮箱email*varchar编号Id*int表2.2宠物信息说明表注释数据库条目数据库唯一性检察必须填写(*)类型编号Petid*int姓名PetName*varchar健康PHeal*v

19、archar疫苗Pro*varchar种类Ki nd*varchar表2.3用户宠物信息关联说明表注释数据库条目数据库唯一性检察必须填写(*)类型宠物编号Petid*int用户编号Id*Int注释数据库条目数据库唯一性检察必须填写(*)类型用户编号Id*int状态checksit*varchar信息n ews*varchar宠物编号petid*int食物表是时间上的逻辑调用生成,起名以timefood+yyyyMMddhhmmss,所以具体表的个数与表的名字为不定值,其中一表的数据内容如下所示:表2.5从硬件端获取是数据信息说明表注释数据库条目数据库唯一性检察必须填写(*)类型编号Petid*

20、int测试1timefood1varchar测试2timefood2varchar测试3timefood3varchar测试4timefood4varchar测试5timefood5varchar测试6timefood6varchar软件大型实验周一一软件设计说明书第35页共29页Namepwd拥有用户phone联email关关关Petid1宠物PetidKindProHeal宠物关联用户图2.1用户类图timefoodltimefood2食物timefood3timefood4timefood5timefood6图2.2宠物类图3详细设计3.1系统定名中文:宠物店;英文:petsroom功能

21、定位:为无暇照顾宠物的都市忙人提供看管宠物的功能,并为客户在时间段内提供食物, 水方面的数值统计,以及相应疫苗的植入情况。3.2 .1服务器功能模块设计1.账号注册注册模块程序流程图如图所示完成注册丿完丿丿册结束图3.1注册模块程序流程图核心代码从安卓界面以 json形式发生到服务器的user对象,加载进入到addUserServlet调用UserDaoImpI中的addUser()进行验证,若用户输入的信息不存在问题,注册用户的信息成功否则失败,注册成功的用户会被数据库以自增加的方式分配id编号。服务器会根据id编号进行判定身份,并跳转相对应的页面。2. 账号登录(1)登录模块程序流程图如图

22、所示登录成功结束图3.2登录模块程序流程图(2 )核心代码从安卓界面以 json形式发生到服务器的user对象,加载进入到loginServlet调用UserDaoImpI中的indBiName()找到相对应的密码与其进行匹配,完成登录操作,根据根据权限声明,区分为两类管理员与普通用户,而后拥有的权限与进入的页面也完全不同3. 硬件获取数据j结束X.存入到数据库 是./发送开始传输信息f1否图3.3从硬件端获取数据模块程序流程图开始(1)从硬件端获取数据模块程序流程图如图所示(2)核心代码块通过调用writeThread()的run()方法开启硬件端向服务器发生数据的程序,并用readThre

23、ad()类的run()方法接受来自硬件端的数据,在用外部类的方式获取到run()方法中获取到的节点数值字符串,进行简单处理后,调用来自UserDaoImpI的insert_timefood()方法,在这个过程中,调用相应名称的表不存在的情况时,采用timefood+yyyyMMddhhmmss为表名的方式灵活创建表,已完成获取到的数据的插入操作。4. 获取数据库数据模块(1)获取数据库数据模块程序流程图如图所示判定表是否存 在图3.4获取数据库数据模块程序流程图获取当天数据 成功开始(2 )核心代码将数据加载到数据库之后,当安卓端需要将数据制成曲线图时,安卓连接服务器的sendpetsFood中进行加载,对安卓

温馨提示

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

评论

0/150

提交评论