• 第三次团队作业:记账软件软件设计


    第一部分数据库设计

    1. 部分功能数据流图(Gane-Sarson)
    2. 记账软件顶层数据流图

      1.1.2 细化记账功能数据流图

      1.1.3 再次细化该数据流图

      1.1.4 数据流图说明

      该记账软件的功能主要分为记收入账和记支出账,记录相应的账单信息后,可以生成账单图表,表格可以在一张表中同时给出收入和支出的账单报告,也可根据用户需求将它们分开展示。

      1.2 用户登录数据流图

      1.3 查询功能数据流图

      1.4 概念数据模型

      1.5 物理数据模型

      1.6 数据字典

                            用户表

      字段名

      中文名

      数据类型

      主键

      外键

      说明

      U_id

      用户id

      int

      PK

       

      不能为空

      Con_id

      配置id

      int

       

      FK1

      不能为空

      U_number

      登录账号

      varchar(20)

       

      FK2

      不能为空

      U_name

      用户名

      varchar(50)

         

      用户昵称

      U_gender

      性别

      char(2)

         

      性别可为空

      U_phone

      电话

      Char(11)

           

                           分类表

      字段名

      中文名

      数据类型

      主键

      外键

      说明

      C_id

      类别id

      int

      PK

       

      不能为空

      type

      类别

      varchar(255)

           

                            配置表

      字段名

      中文名

      数据类型

      主键

      外键

      说明

      Con_id

      配置id

      int

      PK

       

      不能为空

      U_id

      用户id

      int

       

      FK

      不能为空

      key_

      配置信息

      varchar(255)

         

      配置信息按照键值对的形式出现 ,类型是varchar(255)

      value

      配置信息的值

           

      配置信息的值, 类型是 varchar(255)

                                                      登录表

      字段名

      中文名

      数据类型

      主键

      外键

      说明

      U_number

      账号

      varchar(20)

      PK

       

      不能为空

      U_id

      用户id

      int

       

      FK

      不能为空

      U_password

      密码

      varchar(50)

         

      密码要求保密性高

                            消费表

      字段名

      中文名

      数据类型

      主键

      外键

      说明

      U_id

      用户id

      int

      PK

      FK1

      不能为空

      C_id

      类别id

      int

      PK

      FK2

      不能为空

      spend

      消费金额

      int

           

      date

      日期

      Date

         

      默认系统时间

      Comment

      备注

      varchar(255)

           

                            收入表

      字段名

      中文名

      数据类型

      主键

      外键

      说明

      U_id

      用户id

      int

      PK

      FK1

      不能为空

      C_id

      类别id

      int

      PK

      FK2

      不能为空

      earn

      收入金额

      int

           

      date

      日期

      Date

         

      默认系统时间

      Comment

      备注

      varchar(255)

           

                            货币表

      字段名

      中文名

      数据类型

      主键

      外键

      说明

      Cy_id

      货币代号

      Char(3)

      PK

       

      不能为空

      Con_id

      配置id

      int

       

      FK

      不能为空

      Cy_name

      货币名

      varchar(30)

           

      rate

      汇率

      float

         

      各个国家的汇率不一样

      第二部分 功能设计

      2.1 界面原型

      界面的大致框架如上图所示,其中最主要的功能是明细、记账、图表。在软件的右侧面板内,有月份,年份的选项,可以查看相应时间的收入和支出的情况。

      明细:在明细中,默认展示的是当前月份的收入和支出情况,并给出在预算基础上消费的圈形比例图,每部分占比代表着不同的消费类型,占比越大就说明该月在该消费类型上的开销就越大。该比例图如下图所示:

      记账:选择记账功能会弹出新的记账界面。首先是有收入和支出单选按钮,分别进行收入和支出的信息记录。接着,对话框内有输入金额、类别选择、货币选择,如果两次记账的货币类型不一样,系统会自动按照汇率转换成人民币,时间有年、月、日及具体时间,具体时间为当前时间,其它可按照日历上选择所需要的时间。备注则主要记录该笔账单的其它信息,由用户自由记录。

      图表:在右侧面板内选择收入或支出,还可选择报表的类型,报表有柱状图,折线图等,用来统计相应时间内的收入和支出,将情况直观的展现在用户面前。

      设置:在设置中,还有如下功能:分类管理,用户可根据自己的实际情况添加自己所需要的类目;账户,包含着账户的基本信息,如头像、ID、昵称、性别、手机号,并且还有退出登录的选项;备份,即将用户的数据备份到本地当中,还原则将用户本地数据还原到软件中;货币,可以添加用户所需货币的代号,并在今后的消费中,可使用其他国家的货币代号进行消费记录,系统会对其转换成相应国家的金额;对于关于和帮助,上面则记录一些软件的基本信息以及帮助信息。

      2.2 子模块设计

      2.2.1 边界类设计

      类名

      说明

      MainPanel

      MainPanel 是主窗体,左边是一个工具条,右边可分为两个空白的Panel,用来显示不同的功能面板,将明细面板,图表面板,记账面板和设置面板聚合在一起

      IE_DetailPanel

      明细面板

      ReportPanel

      图表面板

      ConfigPanel

      设置面板,将账户面板,分类面板,备份、还原面板,货币面板及帮助面板聚合

      accountPanel

      账户面板

      classifyPanel

      分类管理面板

      recordPanel

      记账面板

      recoverPanel

      还原面板

      backupPanel

      备份面板

      helpPanel

      帮助面板

      currencyPanel

      货币面板

      WorkingPanel

      除了MainPanel,其余都是它的子类,需要继承的方法为updata(),addListener()

      2.2.2 UML边界类图

      UML边界类图用于描述系统中所包含的类以及它们之间的相互关系,可以帮助我们简化对系统的理解。它是系统分析和设计阶段的重要产物,也是系统编码和测试的重要模型依据。边界类是我们初步的构想,还没有将各个边界类的成员及方法设计好,并且,实体类和工具类由于时间关系还没有进行构思,该边界类届时将会根据开发的情况进行适当的改进。

  • 相关阅读:
    Ubuntu各种indicator汇总
    python 命令行参数获取
    python 内置方法的时间复杂度
    SkipList 跳表
    HBase Snapshot功能介绍
    HBase内部操作日志说明
    HBase参数配置及说明
    HBase 在HDFS 上的目录树
    第一章 重构,第一个案例
    shell来start、stop、restart应用程序模板
  • 原文地址:https://www.cnblogs.com/lh02200059/p/7900614.html
Copyright © 2020-2023  润新知