毕业设计
图 4.1 系统功能模块图
4.3 系统数据库模型设计
本系统使用Android自身携带的轻量型的数据库SQLite。设计了三个数据表来记录信息,这三个数据表分别是用户信息表、收入支出信息表以及便签信息表。
其中用户信息表用来记录当前已经注册过的用户的信息,在用户使用端实现了多用户相互独立使用此软件的功能。用户的收入和支出的情况则在收入支出信息表中进行保存。而用户在便签模块中记录的生活细节则保存在便签信息表中。 (1) E-R图的概述
E-R图也即实体-联系图,从图上我们可以看出实体性,实体性的属性以及他们之间的联系。E-R常被用来描述现实世界中的概念模型。
E-R方法:是“实体-联系方法”是将概念模型在现实世界进行描述的有效方法。
E-R图的基本构成要素有:实体型、属性和联系。
毕业设计
实体型(Entity):我们将具有相同属性的一个集合称为一个实体,如:教师实体、学生实体、人的实体等等。在E-R图中用矩形表示实体型,实体名写在矩形框内。
属性(Attribute):属性是实体所具有的特性,一个实体可以有多个属性,在E-R图中属性用椭圆来形表示,并且用无向边链接在属性和实体之间。
联系(Relationship):联系是用来反映各实体之间关系的一个抽象概念,在E-R图中用菱形表示,联系名写在菱形的框内。并用无向边将联系和与联系有关的实体相连。同时要将联系的类型标注出来,是1 : 1,1 : n或m : n三种中的哪一种。
画E-R图的步骤: 1) 2) 3) 4) 5)
确定所有的实体集合。
选择并确定实体集中应包含的属性。 确定实体集之间的联系。 确定实体集的关键字。
确定并标出联系的类型,将联系和实体集相对应用无向边连接好后在旁边
注明联系的类型。本系统数据库ER图:
图 4.3 用户信息E-R图
毕业设计
图 4.(4 )收入和支出信息表E-R图
图 4.5 文件信息E-R图
数据库表设计: 编号 表1 表2 表3
各个信息表的详细设计:
表1: dbtable_user 用户信息表
序 号 列 名 数 据 类 型 主 键 说 明 表格名称 用户信息表 收入支出信息表 便签信息表 毕业设计
1 2 3 4
_id Loginid Password Createtime int Varchar Varchar Varchar 是 主键 帐号 密码 注册时间 表格展示的是:登录帐号为:Loginid,登录密码为:Password,注册时间为Createtime。
表2: dbtable_data 收入支出信息表
序 号 1 2 3 4 5
表格展示的是:userid为用户id,收入支出管理的标题为:Title,收入支出的类型是:typeName,创建收入支出记录的时间为:createtime。
表3: dbtable_memo便笺信息表
序 号 1 3 4 5 6 列 名 Id Userid Body Title createtime 数 据 类 型 int Int varchar nvarchar nvarchar 主 键 是 说 明 用户ID 内容 标题 添加时间 列 名 Id userid 数 据 类 型 int Int nvarchar nvarchar nvarchar 主 键 是 说 明 用户id 标题 类型 记录日期 Title typeName createtime 表格展示的是:便签的内容为:Body,便签的标题是:Title,便签的创建时间为createtime。
4.4 工程文件结构设计
在程序的开发阶段首先要确定“基于Android的生活小管家软件”的工程名为LifeButler,然后根据程序模块来设计内容,建立LifeButler项目,LifeButler项目的文件结构如图4.2所示:
毕业设计
图 4.2 工程结构图
为了使开发者查看代码时结构看得更加清晰,下面将LifeButler工程设置成了多个命名空间的工程。分别保存在了用户界面、数据适配器、常用的类库和实体多个包,
程序的源代码名称以及对源代码名称的说明如表4.(3)所示: 包 名 称 com.mm.lifebutler.activity com.mm.lifebutler.activity com.mm.lifebutler.activity com.mm.lifebutler.activity com.mm.lifebutler.activity 文 件 名 LoginActivity.java IncomeActivity.java IncomeEditActivity.java ExpensesActivity.java ExpensesEditActivity.java 说 明 登录界面视图 收入列表界面视图 收入添加界面视图 支出列表界面视图 支出添加界面视图