小棒棒和小忙忙(纪念一次恶心的软工作业)

小摘要

我们的目的是创造一个面向大学生的帮助平台(比如领外卖、快递啥的),利用帮助积分与现金的不等价互换来达到开发者自身的收益,这样的一个系统。

可行性分析

技术可行性

数据库:阿里云 sql server 2012 r2 管理后台数据
前台界面设计、后台数据库的接口、数据的录入、查询浏览:
Power builder12

需求可行性

对于西电学生,个人空闲时间不确定和许多服务行业营业的局限性,学生不一定在自己有空的时间内,去相应的地方完成自己的事情。我们提出的方案,可以利用互相空闲的时间。从而达到各自的需求。

经济可行性

快递行业的滞留带来大量无形中的仓储成本。大学生人口流动密度大带来大量的空闲人力与个体经济之间存在可协调性。

操作可行性

该系统设计清晰,有良好的用户界面,操作简洁,有完善的异常处理机制和提示信息机制,大学生软件的学习能力较强,因此操作方面可行。

法律可行性

本系统没有违反国家相关法律规定,法律方面可行。

需求分析

系统功能分析

本系统应具有如下功能:

  1. 登录
    用户在登录模块中输入账号和密码,系统根据管理员事先为此账号设置好的权限返回一个确定以后操作的权限参数。
  2. 校园认证:
    需要提供身份证,一卡通等身份信息的认证。
  3. 档案管理
    存储每个人的当前的数据状态。和平台的信息发布状态。
  4. 收费管理
    使用真实货币与虚拟帮助积分的不等价兑换,创造差值收益。即当使用真实货币兑换虚拟帮助积分时:1真实货币兑1积分,但是用虚拟帮助积分兑出真实货币时:1积分兑0.9真实货币。最终实现0.1的差值收益。
  5. 维修管理
    对平台定期进行维护 通过维护来保证住平台的正常运行。
  6. 设备管理
    云端平台作为数据储存库 在云端上进行平台维护来降低设备成本
  7. 综合查询
    对可查询的信息进行综合查询,个人积分状况,平台内的订单状况
  8. 权限管理
    作为一个功能齐备的软件,我们把权限管理作为一个
    独模块列出进行开发。主要用途是通过权限来限制软件操作人员的工作范围和职能。增加平台的安全性
  9. 系统维护
    此模块的功能主要是对系统的数据库进行备份等操作,防止以外情况数据库的破坏而时信息丢失。系统要求在实现上述功能的基础上,力求界面友好美观,操作方便快捷,尽可能地使该系统实用完美。

安全性分析

  1. 用户权限安全性:系统设置了管理员、操作员两个操作级别。管理员能对所有模块进行各种操作,并能给操作员分配权限。操作员只能在管理员分配的权限下进行操作。
  2. 系统的处理过程严格按照事务(Transaction)处理机制执行,对异常操作通常发出警告然后取消操作。同时对输入首先进行合法性检查不合法则发出错误提示,最大限度的满足数据的安全,保证系统的稳定。

系统的数据流图

顶层图

在这里插入图片描述

基本数据流图

在这里插入图片描述

数据字典

任务数据字典

在这里插入图片描述

用户数据字典

在这里插入图片描述

软件概要设计

引言

编写目的

对学生而言,个人空闲时间不确定并且好多时候自己所要办的事对于所在的位置自不如其他顺路的学生方便,学生不一定在自己有空的时间内,去相应的地方完成己的事情。我们提出的方案,可以利用互相空闲的时间。对于一些想兼职的同学,也有可以做的比较自由的事。

背景

快递行业的滞留成本,和学生取快递的时间成本。是一个快递业亟待解决的问题。由此我们提出小棒帮和小忙忙交互网站来解决这个问题。

定义

小帮帮和小忙忙是一个旨在方便同学,同时减少物流滞留问题的一个网站。

参考资料

《软件工程》教科书,《网站编写——从入门到精通》,《java在网站中的应用》

软件结构图

在这里插入图片描述

总体设计

需求规定

可以上网的电脑一台、网页浏览器一个、基本的显示功能和数据处理功能,键盘等输入设备。

运行环境

Windows XP及以上、Macos、Linux、安卓、ios.(由于采用网页形式,对系统的要求不高,可移植性较强)

基本设计概念和处理流程

本网站设计如下:通过想要被帮忙去快递的人(写文述为发布者)提交信息(快递或者相关帮忙请求),通过平台审核后发布到网页上,想要接受任务的人(下文述为接收者)通过自己闲暇时候在网页上读取信息并领取相应任务。完成后由发布者更改信息状态,平台进行操作做的形式,将已经做完的任务从平台取消,并由发布者提供任务完成度评分,最后更改各自的信息状态,如积分情况、信誉度等。(具体可视化模型见图)

结构

结构上大体分为三部分,即发布者、接收者、平台,相关处理包括任务信息发布的传递、任务接收信息的传递、任务完成信息的传递、任务满意度反馈信息的传递、积分的更新、任务的信息更新等。

接口设计

用户接口

本产品为网站属性,在各种系统、设备的兼容性强。只需日常使用的电脑和手机即可,无需额外的用户接口。

外部接口

服务器的接口、数据库的接口、面部识别api(后期的设计中可能加入一些有趣的元素,如人脸识别)等。

内部接口

外部输入接口数据传输接口、已处理完数据的传输接口、内部信息到输出的接口。

运行设计

运行模块组合

任务检验、发布者信息检验、任务发布、接收者认领、接收者信息检验、任务完成度评价

运行控制

任务是否合理、发布者信息是否达标、接收者信息是否达标、任务完成度是否达到要求。

运行时间

1、任务检测:过程比较影响任务的完成效率,但是为了安全我们人工进行评审,安排为每3分钟一个任务检测;
2、发布者信息查询:因为数据库中的会员信息存在,且为定量数据,可直接通过计算机读取基本可以做到实时;
3、任务发布同上;
4、接收者信息检测同上;
5、任务完成度评价:为达到较好的评价标准,采用人工评价和客户评价相结合的形式。时间定为每三分钟一个任务。

系统数据结构设计:

逻辑结构设计

主要是任务信息(时间、地点、大小)、发布者信息(积分、信誉度、地点等)、接受者信息、(积分、信誉度、地点等)、完成情况。(具体见数据流图)。

物理结构设计

1、物理逻辑上发布者和接收者之间存在完成任务时的实际物品交换信息。
2、发布者与平台之间存在任务信息和任务完成反馈信息、积分信息更新
3、接收者与平台之间存在任务信息和任务完成反馈信息、积分信息更新

数据结构与程序的关系:数据结构是程序设计骨架,整个系统围绕数据的传递、数据的交互进行设计。程序是数据的载体,是信息处理的关键。

系统出错处理设计

出错信息与补救措施

可能出现的错误包括任务审查出错、发布者信息审查出错、接收者信息审查出错数据丢失等
1、对于任务审查出错:及时撤下任务并重新回到任务审查环节。
2、对于发布者信息审查出错:如果已被发布,已被认领,及时下架相关任务。并联系接收者。
对于已被发布,未认领成功的重新回到发布者信息审查阶段即可。
3、对于接收者信息审查出错:如果已被发布,未被认领,重新回到接收者信息审查阶段即可。
对于已被发布,已认领成功的,及时联系接收者。

系统恢复设计

每隔五分钟系统保存一次当前的信息状态(确保无误后),如果出现意外,及时回复到5分钟前保存状态的一次数据备份即可。并重新进行这几分钟内所进行的操作(按照正常、正确的流程)。

软件详细设计

引言

在概要设计说明书的基础上进一步明确系统结构,详细的介绍系统的各个模块,为进行后面的编码和测试做准备。

程序系统的组织结构

后端程序主要包括:获取任务模块、获取接收者模块、任务结果产生模块。先是需要获取合格的任务和信誉度达标的接收者,然后再是对于任务进行状态进行展示,对于完成的任务需要发任务者对任务进行评估,然后再根据结果进行积分分配和接收者的信誉度调整

模块设计

后端的模块设计

获取任务模块

模块主要是用来对于输入任务进行筛选,挑出合格的任务来放大任务板上。

伪代码
input:task

while(1)
	if(task_ask == 1)
		if(test(ta k)==possible)
		then init task ,add task in task board
		else do nothing
		end if
	end if
end while
PAD图

在这里插入图片描述

获取接收者模块

模块主要是用来对于输入接收者进行筛选,挑出信誉度合格的接收者,并对任务板的任务进行删除和对任务进行板的任务进行添加。

伪代码
input:receiver

while(1)
	if(receiver_ask == 1)
		if(test_credit(receiver)>=admissible mark)
			then add receiver in the task , delete the task in task board , add the task in  
task_doing_abroad
			else do nothing
		end if
	end if
end while
PAD图

在这里插入图片描述

任务结果产生模块

对正在进行中的任务进行更新,并对完成的任务进行积分分配和信誉度更新。

伪代码
input:task

while(1)
	if(task_doing_abroad!=none)
		for task in task_doing_broad
			if(status(task)==not_finished)
				then updata task status in task_doing_board
				else 
				begin
					delete the task in task_doing_board
					receive and show task evaluation ,
					do point distribution ,
					receiver's credit change
				end
			end if
		end for
	end if
end while
PAD图

在这里插入图片描述

前端的模块设计

登入界面的模块设计

在实际的登录界面中,用户只需要填写学号和密码进行登录,点击登录后会产生以下三种结果:
1.若系统检测到信息检测到信息正确则转向下一界面
2.若系统检测到信息错误则提示用户名或密码错误,并提示重新尝试输入
3.若系统没有检测到有效(已注册)学号的情况下则跳转到注册界面

在这里插入图片描述

注册界面的模块设计

若在登录界面产生结果3则跳转到注册界面
注册界面需要有四个输入:学号,用户名,密码,确认密码
当用户输入完四项后,点击立即注册按钮,系统进行如下操作

  1. 系统判断该学号是否为有效学号,即是否为实际在校生,若是则进行下一步,若不是则输出您不是在校生用户没有限权进行注册。
  2. 系统判断密码和确认密码是否一致,若一致则进行下一步,若不一直则输出密码前后不一直请重新输入。
  3. 系统进行用户创建并进行信息录入。

在这里插入图片描述

任务信息的模块界面

当用户有信息发布的需要是点击信息发布按钮,出现如下界面
用户需进行四步输入

  1. 填写发布人,可以是用户名,也可以是学号
  2. 填写联系方式,可以是电话号码,也可以是QQ微信或者邮箱
  3. 填写本次任务的报酬,输入你想支付的积分数量
  4. 填写任务具体要求,将用户自己想要的需要帮助的任务写清楚,以便小帮帮用户进行帮助。填写清楚后进行任务发布。

在这里插入图片描述

任务公布板块的模块设计

任务发布之后任务名称会被分类到三个地址板块:竹园区,海棠区,丁香区,并显示在首页界面上,所有的用户都会看到。
如果小帮帮用户选择到了适合自己的任务,就点击该任务名称,进行任务信息查看,若满意则点击接受任务,匹配成功。
任务名称会在首页隐藏,小忙忙用户会看到任务被接收,并可以联系小帮帮用户。
若小忙忙用户取消任务,则该任务名称会在首页被删除,也可以重新编辑再发布。
若小帮帮用户取消任务,则该任务名称会重新在首页进行显示并可以被其他小帮帮用户进行选择。

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值