机房重构总结之路---需求分析和数据库设计

   机房总算做完了,但是还需要一个系统的总结过程,现在我的总结之路开始了!

   

一:需求分析

做软件首要的就是做需求分析,因为是第二次做机房,所以对于需求这一块还是比较了解的。下面我们来分析一下我们的机房:

1.机房收费系统用户是:机房的老师,学生。

2.机房收费系统的主要功能:

    学生:修改密码,查询充值记录,查看上机记录,查看充值记录,学生上机状态查看

    操作员:注册,充值,退卡,收取金额查询,金额退还查询,学生基本信息维护,学生上机统计查询,操作员     

                      工作记录

   管理员:添加删除用户,基本数据设定,正在值班老师,结账,日结账单,周结账单


 

3.机房主要功能的ER


 

二:数据库设计

  虽然之前做过机房,但是数据库不是自己设计的,这次自己设计的数据库,经过修改之后还是比较满意的。我的表包括:User表,Student表,Database表,Card表,Line表,Recharge表,ReturnCard表,Bill表。


User表:  任何系统都需要用户,我们的机房收费系统也不例外。需要的信息是:用户ID号,用户名(唯一识别一条记录),用户密码(用于保护个人账户的安全),用户级别(不同的级别有不同的权限),所以我们需要的字段有UserID,UserName(主键)Password,Level.

 

Student:机房收费系统主要是管理学生上机,结账,所以学生表就是一个客户比较关键的表了。需要的信息是:学号,学生姓名,卡号(主键),密码,性别,系别,年级,班级,卡余额,使用情况,学生级别,所以需要的字段是:stuNo,stuName,cardNo,password,sex,department,grade,class,balance,state,level


Database表:在计算消费的时候必须得设置基本的数据,再根据公式来进行计算,所需要的字段是:固定用户消费时间单价,临时用户消费时间单价,最低消费,准备时间,最低消费时间。


Card表:学生需要刷卡上机,所以卡表很重要的一张表。卡表需要的信息:卡号,姓名,购卡时间,退卡时间,使用状态,操作员ID,需要的字段有:cardNo,name, buytime, returntime,state,operatorID.


Line:这张表最重要的是学生上机时间和消费金额的计算。这里我改掉上次做机房时候用的表的状况,把上机表和下机表合并成一张表。需要的字段是:cardNo,userName,onDate,onTime,offDate,offTime,costTime,costMoney,BalanceUsestate,AcoountState,operatorID


Recharge表:记录学生充值状况。需要的信息:卡号,充值金额,充值时间,操作员ID,字段为:cardNo,rechargeMoney,rechargeTime,operatorID

ReturnCard表:这张表和充值表很像,这里主要的是学生退卡状况。需要字段是:cardNo,returnTime,returnMoney,operatorID

Bills表:主要是做结账的时候需要用到的,每天的结账后的信息保存在账单表中。需要的信息是:上期余额,充值金额,退卡金额,消费总额,收入总金额。


三:总结

      数据库是我们做的软件系统的核心,把大量的数据组织起来,然后供我们使用。数据库设计分三个阶段,概念设计,逻辑设计和物理设计。通过三个阶段谨慎的来设计我们的数据库,建立主键和外键,处理好各个表的关系。我们的数据库做好了,我们的软件才能够做好!

   欢迎大家指正!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 16
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值