铁大课表 详细设计说明书

铁大课表

详细设计说明书

 

 

 

 

 

 

 

 

 

第七小组:闫立新、曹锦锋、李夏蕾、

苏海岩、王伟光、杨世超

 

2014414

1引言... 4

1.1编写目的... 4

1.2背景... 4

1.3定义... 4

1.4参考资料... 4

2程序系统的结构... 5

3数据库模块设计说明... 2

3.1模块描述... 6

3.2
系统E-R图_______________________________________________________________6

3.3功能... 6

3.4性能... 6

3.5输人项... 6

3.6输出项... 6

3.7设计方法... 7

3.8流程逻辑... 7

3.9接口... 7

3.10注释设计... 8

3.11限制条件... 8

3.12测试计划... 8

4添加模块设计说明... 9

4.1模块描述... 9

4.2功能... 9

4.3性能... 9

4.4输人项... 9

4.5输出项... 9

4.6设计方法... 9

4.7流程逻辑... 10

4.8接口... 10

4.9注释设计... 11

4.10限制条件... 11

4.11测试计划... 14

5壁纸模块设计说明... 12

5.1程序描述... 12

5.2功能... 12

5.3性能... 12

5.4输人项... 12

5.5输出项... 12

5.6设计方法... 12

5.7流程逻辑... 13

5.8接口... 13

5.9注释设计... 13

5.10限制条件... 13

5.11测试计划... 13

4


1引言


1.1编写目的

概要设计主要是利用比较抽象的语言对整个需求进行概括,确定对系统的物理配置,确定整个系统的处理流程和系统的数据结构,接口设计,人机界面,实现对系统的初步设计。我们根据需求分析得到的数据流图,将之转化为软件结构和数据结构,建立起目标系统的逻辑模型。使软件编程人员能对目标系统有一致的认识。

1.2背景

a. 待发的软件系统的名称:铁大课表;

b. 本项目的任务提出者、开发者:闫立新、曹锦锋、李夏蕾、苏海岩、王伟光、杨世超

用户:石家庄铁道大学在校学生

实现该软件的计算中心或计算机网络:学生android手机;

c. 该软件系统同其他系统或其他机构的基本的相互来往关系:该软件系统与手机操作系统、与android内置SQLite数据库系统。

1.3定义

SDK(Software Development Kit, 即软件开发工具包
)一般是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。

SQL(Structured Query
Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。同时也是数据库脚本文件的扩展名。

课表:只学校对学生上课过程中的课程安排,具体指什么时候在哪儿上什么课。

1.4参考资料


  1. 《软件工程》 孙家广, 高等教育出版社;

  2. 《软件工程及软件开发应用》 施一萍,清华大学出版社;

  3. 《Android手机程序设计入门、应用到精通》孙宏明,中国水利出版社;

  4. 《疯狂android讲义》(第2版)李刚,电子工业出版社。

2程序系统的结构

 








FileDB.java


+create()









Link.java


+doWork()

+doSelect()

+doSelectterm()

+doClose()









ScheduleAppWidgetProvider.java


+onUpdate()

+onDeleted()

+onDisabled()

+onEnabled()

+onReceive()









View.java


+onCreate()

+onPreferenceClick()

+onPreferenceChange()









Main.java


+onCreate()

+onCreateOptionsMenu()

+onOptionsItemSelected()

+onStop()

+insertView()

+onResume()

+deallayoiut()

+onStart()









Setting.java


+onCreate()

+onPreferenceClick()

+onPreferenceChange()

+onKeyDown()

+onPause()









R.java


 








SystemSet.java


+onCreate()

+onPreferenceChange()

+onPreferenceClick()









MySQLiteOpenHelper.java


+MySQLiteOpenHelper()

+onCreate()

+onInsert()

+onUpgrade()

+onSelect()

+tableis()









BuildConfig.java



3数据库模块设计说明


3.1模块描述


数据库模块是本系统的核心模块,学生通过界面将自己的课程信息存入数据库,并显示出来, 通过界面进行添加和修改数据库的内容,增删自己的课表。

3.2系统E-R图

3.3功能


保存学生通过界面添加的课程信息,通过星期几和第几节课来查询上课内容,并进行添加,删除,和修改等基本操作。

3.4性能

因为是单表查询,不用做连接或笛卡尔积,因此查询速度很快。响应时间在1秒之内。

3.5输人项

Day         星期

No           课节

Name       课程名

Address     上课地点

Homework   课堂作业

3.6输出项

满足星期,课节的所有课程属性的一组的课程信息。

3.7设计方法

采用android自带的listview的方法,并设计了相应的适配器adapter,采用在表格布局中嵌套线性布局,采用自带menu组件设计菜单,调用android的sms实现短信分享功能。通过识别手势给数据库参数以天为单位的星期数给数据库获得当前天的课程信息。

3.8流程逻辑

3.9接口


l  SQLiteDatabase安卓自带的本地数据库。

l  FileDb()该接口实现了数据库存取。

l  Content 该组件提供本地数据库的存取的辅助功能。

l  onInsert()插入课程信息到数据库。

l  onselect() 通过该接口实现读取数据库中的课表记录。

l  HashMap 安卓组件将课表信息存成键值对。

l  SQLiteOpenHelper用来管理数据库的创建和版本。

l  onUpgrade()允许我们再创建和升级数据库时,进行自己的操作

3.10注释设计















FileDB

用来在数据库中保存和读取课程信息

onInsert()

插入课程信息到数据库

onSelect()

读取数据库中的所有课程信息

SQLiteOpenHelper

获得SQLiteDatabase对象,通过该对象可以对数据库进行操作,提供了onCreate()、onUpgrade()两个回调函数,允许我们再创建和升级数据库时,进行自己的操作


3.11限制条件

数据库的存储容量有一定的限制,课程信息的表超过一定容量后将不能进行存储和查询,在同时执行多次查询的时候容易引起冲突,不能满足超过一定量的查询要求。

3.12测试计划

本模块的测试主要采用多次查询和读取来测试数据库的性能,其实,用多个用户使用的同时也增加了数据库的查询量,另外多用户同时查询也是对数据库查询的一个考验和测试。

4.添加模块程序设计


4.1模块描述

在这个模块中,通过菜单选项进入添加界面,首先选择星期,在之后选择课节,之后才能添加课程名称,上课地点,和课堂作业,返回后会直接在界面上显示出来。

4.2功能

从界面添加课程信息至数据库,数据库接受课程数组,解析后将信息显示在界面上,显示课程的详细信息

4.3性能

系统具有自己获得当前日期的功能,自动出现当天的课程,通过界面的箭头来调节星期几,并显示那天的课程。

4.4输人项

Day          星期

No           课节

Name        课程名

Address      上课地点

Homework    课堂作业

4.5输出项

满足星期,课节的所有课程属性的一组的课程信息。

4.6设计方法

采用android自带的listview的方法,并设计了相应的适配器adapter,采用在表格布局中嵌套线性布局,采用自带menu组件设计菜单,通过给数据库参数以天为单位的星期数给数据库获得当前天的课程信息。

4.7流程逻辑

4.8接口


l  onSelect ()显示课表的主函数,在主界面显示课程的详细信息。

l  onOptionsItemSelected ()显示菜单的主函数,输入初始化后的菜单,显示在屏幕上。

l  onIntert()添加数据到数据库。

l  onCreateOptionsMenu()创建菜单项目。

4.9注释设计















onSelect

查询数据库中的信息并显示出来

onOptionsItemSelected

菜单项目

help()

显示帮助信息

onCreateOptionsMenu ()

创建菜单项目

4.10限制条件


主要是界面并不能通过滑动来进行,必须需通过上面的箭头来进行,添加页面通过菜单项目进行。

4.11测试计划

本模块的测试主要是进行添加的功能,添加不同形式的课程进行测试。

5.壁纸模块程序设计


5.1模块描述

在这个模块中,通过菜单选项进入更换壁纸的功能界面,并更换课表的背景图片。

5.2功能

更换课表的背景图片

5.3性能

系统通过用户的触摸选择,接收到更换壁纸的选项,并选择更换何种壁纸,进行设置。

5.4输人项

num   壁纸的号码

5.5输出项

满足壁纸号码的那张背景图片

5.6设计方法

采用android自带的LinearLayout的功能,对num进行赋值,并选择相应的壁纸。

5.7流程逻辑

5.8接口


l  deallayoiut ()背景图片函数。

l setBackgroundResource
()更换背景图片

5.9注释设计









deallayoiut

背景图片函数

setBackgroundResource

更换背景图片

5.10限制条件


只有四种图片可以更换,并没有涉及太多。

5.11测试计划

看看是否可以更换图片

时间: 2024-08-06 14:21:12

铁大课表 详细设计说明书的相关文章

铁大课表 概要设计说明书

铁大课表 概要设计说明书                   第七小组:闫立新.曹锦锋.李夏蕾. 苏海岩.王伟光.杨世超   2014年4月8日 1引言... 2 1.1编写目的... 2 1.2背景... 2 1.3定义... 2 1.4参考资料... 2 2总体设计... 2 2.1需求规定... 2 2.2运行环境... 2 2.3基本设计概念和处理流程... 3 2.4结构... 3 2.5功能器求与程序的关系... 3 2.6人工处理过程... 3 2.7尚未问决的问题... 3 3接

铁大课表 项目开发总结报告

    铁大课表 项目开发总结报告                 第七小组:闫立新.曹锦锋.李夏蕾. 苏海岩.王伟光.杨世超   2014年5月16日           目录 1引言... 3 1.1编写目的... 3 1.2背景... 3 1.3定义... 3 1.4参考资料... 3 2实际开发结果... 4 2.1产品... 4 2.2主要功能和性能... 4 2.3基本流程... 4 2.4进度... 5 2.5费用... 5 3开发工作评价... 5 3.1对生产效率的评价...

铁大课表 用户手册

铁大课表 用户手册                   第七小组:闫立新.曹锦锋.李夏蕾. 苏海岩.王伟光.杨世超   2014年5月14日   目录 1引言... 3 1.1编写目的... 3 1.2背景... 3 1.3定义... 3 1.4参考资料... 3 2用途... 4 2.1功能... 4 2.2性能... 4 2.2.1精度... 4 2.2.2时间特性... 4 2.2.3灵活性... 4 2.3安全保密... 4 3运行环境... 4 3.1硬设备... 4 3.2支持软件.

铁大课表 测试分析报告

铁大课表 测试分析报告                   第七小组:闫立新.曹锦锋.李夏蕾. 苏海岩.王伟光.杨世超   2014年5月9日   目录 1引言... 3 1.1编写目的... 3 1.2背景... 3 1.3定义... 3 1.4参考资料... 3 2测试概要... 4 3测试结果及发现... 4 3.1测试1:课表添加测试... 4 3.2测试2:作业添加测试... 5 3.3测试3:背景图片切换测试... 6 3.4测试4:系统时间同步测试... 7 4对软件功能的结论..

铁大课表 团队分工及任务管理

铁大课表 团队分工及任务管理                   第七小组:闫立新.曹锦锋.李夏蕾. 苏海岩.王伟光.杨世超   2014年4月4日 1工作任务的分解与人员分工 任务内容 主要负责人 参与人员 计划与分配项目 闫立新 闫立新.苏海岩 编写文档 曹锦锋 曹锦锋 软件架构设计 李夏蕾 所有人员 界面设计 苏海岩 苏海岩.王伟光.杨世超 代码复审 王伟光 所有人员 软件测试 曹锦锋 所有人员 后期维护 杨世超 杨世超 2团队绩效考核表 绩效考核表 考核说明: (一)  整体为100分,

铁大课表 测试计划书

铁大课表 测试计划书                   第七小组:闫立新.曹锦锋.李夏蕾. 苏海岩.王伟光.杨世超   2014年5月6日 目录 1引言... 4 1.1编写目的... 4 1.2背景... 4 1.3定义... 4 1.4参考资料... 4 2计划... 5 2.1软件说明... 5 2.2测试内容... 5 2.3测试1:课表模块... 5 2.3.1进度安排... 5 2.3.2条件... 5 2.3.3测试资料... 5 2.4测试2:作业模块... 6 2.4.1进度

软件详细设计说明书

软件详细设计说明书 1.引言 1.1.编写目的 根据我们在上课找教室就的尴尬状况,我们团队决定开发课堂派派软件.每当去上课找教室时,会很找不到教室,导致迟到,或者走错教室,我顿感忧伤,实难想到跑了如此远的路,浪费如此多的时间,还影响到正常的学习,我的心被刺穿了,我想能不能有一款软件可以让我不再如此浪费宝贵时间,能不能有一款软件让我在百忙之中还可以查看到教室信息,于是课堂派派的想法诞生了. 1.2.背景说明 a.待开发的软件名称:基于Andriod的课堂派派 b.本项目的任务提出者:大家讨论的结果

概要设计和详细设计说明书的区别

1.需求分析--产生软件功能规格说明书,需要确定用户对软件的需求,要作到明确.无歧义.不涉及具体实现方法.用户能看得明白,开发人员也可据此进行下面的工作(概要设计). 2.概要设计--产生软件概要设计说明书,说明系统模块划分.选择的技术路线等,整体说明软件的实现思路.并且需要指出关键技术难点等. 3.详细设计--产生软件详细设计说明书,对概要设计的进一步细化,一般由各部分的担当人员依据概要设计分别完成,然后在集成,是具体的实现细节.理论上要求可以照此编码. 概要设计与详细设计的区别 概要设计就是

国际软件设计文档——详细设计说明书

1 引言 1.1 编写目的 说明编写这份详细设计说明书的目的,指出预期的读者. 1.2 背景 说明: a.  待开发软件系统的名称: b.  本项目的任务提出者.开发者.用户和运行该程序系统的计算中心. 1.3 定义 列出本文件中用到专门术语的定义和外文首字母组词的原词组. 1.4 参考资料 列出有关的参考资料,如: a.  本项目的经核准的计划任务书或合同.上级机关的批文: b.  属于本项目的其他已发表的文件: c.  本文件中各处引用到的文件资料,包括所要用到的软件开发标准.列出这些文件的