智能移动终端应用开发
设计报告
(2013/2014学年第2学期)
题 目 : 手机记账软件 学 院 : 信息与电气工程学院 专 业 : 姓 名 : 学 号 :
设计成绩 :
1 软件需求分析 1.1需求分析
需求分析分为四个方面:问题识别,分析与综合,制定规格说明,评审。需求分析讲究方法,原型化方法,结构化方法,动态分析方法等等。除此之外还要看可行性,可行性的研究可以使最小的付出获得最大的效益。 1.2软件需求分析
在电子信息如此发达的今天,几乎人人都有一部手机或者其他电子设备。我们出门可以忘了带钱,那也一定忘不了手机。智能移动设备在人们生活中的重要性可见一斑。如此快的生活节奏很容易打乱我们的消费情况,很多时候我们都不清楚自己的钱花在了哪里。俗话说:你不理财,财不理你。理财是现代社会每个人都必须掌握的基本技能。随着网络信息化的发展,人们的生活节奏生活质量都在提高,大家都追求的是方便快捷的生活方式。相比传统的笔记本记账,电脑等,人们更喜欢通过手机来记账,这样随时随地都可以记录自己的财务明细,更加及时了解自己的财务状况,而不是很麻烦的用笔记本或者开电脑。除此之外,对于一些想要拥有好的理财观念,但是又不会自主理财的用户,可以起到帮助好习惯养成的作用。所以,对于智能移动的终端开发软件类型之一的手机记账软件设计是非常有意义的。
2 软件总体设计 2.1软件说明
(1)软件名称:轻松理财。
(2)根据个人理财的实际需求,本软件有如下功能:用户登录,并对用户信息进行保密;可随时增加,删除,修改消费记录;可以统计查询出某天某月等的收入支出;可以对各项消费作预算;可以发现一些好的理财方式;备注功能。
1
2.2软件功能模块图 开始 密码验证 添加记录
预算 退出 统计查询 查询 理财 投资 设置 账户注册同步 图 2-1软件功能模块图
2.3软件模块说明
(1)理财记录模块:可以记录收入支出的金额,进行描述,具体发生时间,并且保存;
(2)预算模块:每个月预算,例如基本的花销:吃饭,购物,出行,娱乐,人情的预算,备注就是用来进行提醒,与改进措施的;
(3)查询统计模块:可以查询用户在某天某月的收支记录;
(4)关于理财模块:可以通过链接查看一些新的理财方面的资讯,并且进行投资。 (5)设置模块:设置可以建立用户的账户,管理密码验证功能。 (6)密码验证模块:密码验证后才可以进到软件,具有安保性。
2
3 关键技术分析
java是一种面向对象的编程语言,Android的应用层上的应用程序是用Java编写的,以Java作为开发语言,但是,Java并不等同于Android,因为Android SDK引用了Java SDK的大部分,少数部分被Android SDK所抛弃。 所以,要想从事Android的开发,就必须有Java基础。
手机记账软件设计最重要的还是数据库。这个软件的实体类型有:用户信息类,预算列表类,预算项目类,预算信息类,记账类型类,收入类型类,支出类型类。用户信息包括ID,int型,是用户的唯一标识;用户名密码都是string型。
使用XAML代码创建控件,灵活使用Grid,VerticalAlignment属性,Horizonal属性来控制控件。
大量阅读silverlight设计友好界面的资料,参考其他账本,不断优化界面,保留自己软件的特色时,又不会太冗余。
界面布局是用户界面结构的描述,定义了界面中所有的元素、结构和相互关系。一般声明Android程序的界面布局有两种方法,第一种是使用XML文件描述界面布局,另一种在程序运行时动态添加或修改界面布局。Android 系统提供了在声明界面布局上提供了很好的灵活性,用户既可以独立使用任何一种声明界面布局的方式,也可以同时使用两种方式。
Java:Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司推出的Java程序设计语言和Java平台的总称。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
与传统程序不同,Sun 公司在推出 Java 之际就将其作为一种开放的技术。全球数以万计的 Java 开发公司被要求所设计的 Java软件必须相互兼容。“Java 语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同。
Sun 公司对 Java 编程语言的解释是:Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。
Java 平台是基于 Java 语言的平台。这样的平台非常流行。因此微软公司推出了与之竞争的.NET平台以及模仿Java的C#语言。
3
Java是功能完善的通用程序设计语言,可以用来开发可靠的、要求严格的应用程序。
Eclipse:Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具,所以说只要是关于Java的开发基本上都是在Eclipse上完成的。
Eclipse是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。它主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成,具体包括四个部分组成——Eclipse Platform、JDT、CDT和PDE。JDT支持Java开发、CDT支持C开发、PDE用来支持插件开发,Eclipse Platform则是一个开放的可扩展IDE,提供了一个通用的开发平台。它提供建造块和构造并运行集成软件开发工具的基础。Eclipse Platform允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里结束,而另一个工具功能在哪里开始。
Android SDK: Android是谷歌(Google)公司推出的手机开发平台。与iPhone相似,Android采用WebKit浏览器引擎,具备触摸屏、高级图形显示和上网功能,用户能够在手机上查看电子邮件、搜索网址和观看视频节目等,比iPhone等其他手机更强调搜索功能,界面更强大,可以说是一种融入全部Web应用的单一平台。
Android平台给我们提供了一个SharedPreferences类,它是一个轻量级的存储类,特别适合用于保存软件配置参数。使用SharedPreferences保存数据,其背后是用xml文件存放数据,文件存放在/data/data/ SharedPreferences,它是Android提供用来存储一些简单的配置信息的一种机制,例如,一些默认欢迎语、登录的用户名和密码等。 4 4软件页面设计 进入软件: 图4-1密码验证界面 为了记账软件有很好的保密性,进入前有防盗密码,密码由四位数字组成,简单方便,此功能可以在后面的设置里开启和关闭。 5 图4-2添加记录页面设计 当用户进入软件后,可以看见主界面有几个功能,这是添加记录页面,这里设计了日历,用户不仅可以 看日期,还可以在每天的日期添加记录。 图4-3 添加记录具体项目设计 考虑到用户需求,此处改进一下设计,应该显示出余额,这样记录时心中有数。 图4-4预算页面设计 6 根据用户需要,预算的设计是必不可少的。一般的消费项目如上页面所设计的一样,有了这个可以提醒人们合理的开销。 图4-5统计查询页面设计 统计查询,可以让用户了解自己的消费明细,并且用户可以随意搜索自己的消费记录。 7 图4-6轻松理财页面设计 光记录是不够的,理财也需要聪明的投资,这是参考随手记的软件部分,了解好的理财产品是每个精明消费者必备的意识。 图4-7设置页面设计 设置页面有管理防盗密码功能控制,另外就是关于软件的一些基本信息,还有一个很重要的就是账户同步。账户同步,可以让用户备份自己的信息记录,以免丢失。 8 图4-8账户同步登陆注册 当用户想要账户同步时,可以点击账户同步,注册账号,登录后可以同步以前的信息。 4.3部分代码 <?xml version=’’1,0’’ encoding=’’utf-8’’?> 9 5 软件测试方案 软件测试时为了发现错误而执行程序的过程,软件的测试有四个步骤,单元测试和系统测试。前者是对系统软件的每个模块进行测试后者在前者的基础上进行系统测试看是否可以运行。测试的硬件环境是windows xp操作系统,软件环境是android模拟器。测试方法有白盒和黑盒两种。白盒是针对代码部分,黑盒则是实例测试。例如检测数据合理性等等。这次的设计主要要求思路,总之就是: (1) 搜集软件测试所需要的理论知识; (2) 搜集各类测试工具,测试方法以及实例的详细情况; (3) 测试软件各部分功能是否可实行,不能的话,一直修正到可以正常运行。 6 设计总结 通过这次智能移动软件的设计,学到了很多Andorid与java的知识,感觉设计也非常有趣,对于很多软件都有了新的认识,希望以后可以举一反三。动手能力又提高了一些。不过,这次还是和以往有很多一样的失败的地方,很多地方出错,简直是要崩溃,这让我领悟到了几个道理:一,万丈高楼平地起,一定要有扎实的基础,不要急于求成;二,设计的时候一定要将就合理,不要一把乱抓,这样设计出的软件肯定漏洞百出,多向经典学习,新颖的创意学习可以成长的更快;三,遇到问题不要立马放弃,变得沮丧,应该尝试自己解决,实在不行才可以请教他人。 7 参考资料 [1]Google Android SDK 开发实例大全[M]北京:人民邮电出版社 2010; [2] Android高级编程[M]北京:清华大学出版社 2006; [3] Android2.3应用开发实战[M]北京:机械工业出版社 2011; 10 因篇幅问题不能全部显示,请点此查看更多更全内容