Android平台下软件管理系统_计算机专业毕业设计.pdf_第1页
Android平台下软件管理系统_计算机专业毕业设计.pdf_第2页
Android平台下软件管理系统_计算机专业毕业设计.pdf_第3页
Android平台下软件管理系统_计算机专业毕业设计.pdf_第4页
Android平台下软件管理系统_计算机专业毕业设计.pdf_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

xxx 大学毕业设计 论文 毕业设计文档加程序 1840910736 I 毕业设计文档加程序 QQ 1840910736 摘摘 要要 在手机软件泛滥的今天 在手机市场上有着各种各样的软件 让人们眼花缭 乱 装在手机上又无法分清软件归属哪一类 为了改变这种状况 越来越多的人 开始使用手机分类软件 本系统是针对 Android 个人用户遇到的软件管理不便的 问题而设计的 本软件管理系统主要功能为对软件的分类 在分类的基础上提供启动 卸载 权限查看等实用功能 本系统前期经过详细的需求分析 综合考虑了各种用户需求 后期的开发严 格遵循软件开发流程 进行统一规划 分步实施 采用分层架构的方式 本文讨论了系统开发中采用的开发模式以及在系统中使用的技术的介绍 本 次的设计采用 Android 客户端和 Web service 服务器的形式进行开发 采用分层 架构思想 服务器采用 C 语言实现 本系统使用了 SQL Server 和 SQLite 数据库 关键词关键词 软件管理 Android Web service SQL Server SQLite xxx 大学毕业设计 论文 毕业设计文档加程序 1840910736 II ABSTRACTABSTRACT Today in the mobile phone software flood there are all kinds of software which lets people dazzling and impossible to distinguish software which kind of belonging In order to change this situation more and more people begin to use classification software This system is made for individual Android platform users to meet the inconvenience of management problems and design the main function of the classification of software of this software management system is based on the classification to provide such as startup unloading access to check practical functions This system makes detailed analysis of the demand considers the various needs of the user and the development of the late strictly follows the software development process to make unified planning implement step by step the way the layered structure This paper discusses the system development mode and the technology used in the system This design uses Android client and Web service server as the form of development and takes the layered structure thought using C Web service and SQL Server and SQLite server database KEY WORDSKEY WORDS Software management Android Web service SQL Server SQLite xx 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 III 目录目录 前 言 1 第 1 章 理论及技术基础 2 1 1 Android 系统 2 1 2 C 语言 3 1 3 Web service 技术 3 1 4 SOAP 4 1 5 SQL Server 的特点 6 1 6 SQLite 的特点 7 1 7 本章小结 7 第 2 章 系统需求分析 9 2 1 系统基本情况描述 9 2 1 1 Android 客户端系统功能分布图 9 2 1 2 服务器功能分布图 10 2 1 3 数据库维护程序功能分布图 10 2 2 系统功能分析 11 2 2 1 软件分类 11 2 2 2 软件管理 13 2 2 3 其他 13 2 2 4 服务器功能分析 14 2 2 5 数据库维护程序分析 15 2 3 可行性分析 15 2 4 软硬件环境要求 16 2 5 本章小结 16 第 3 章 Android 平台软件分类管理系统总体设计 17 xx 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 IV 3 1 整体功能模块分析 17 3 2 功能模块细分与设计 17 3 2 1 软件分类模块 17 3 2 2 软件管理模块 18 3 2 3 服务器模块 19 3 2 4 数据库维护模块 20 3 3 本章小结 20 第 4 章 详细设计 21 4 1 数据库设计 21 4 1 1 概念结构设计 21 4 1 2 逻辑结构设计 21 4 2 三层架构思想 22 4 3 客户端界面设计 23 4 3 1 客户端主界面设计 23 4 3 2 客户端管理菜单设计 24 4 3 3 客户端主菜单设计 25 4 3 4 客户端服务器设置界面设计 26 4 3 5 客户端关于界面设计 27 4 3 6 客户端退出确认界面设计 28 4 4 数据库维护程序界面设计 29 4 5 本章小结 30 第 5 章 源代码分析 31 5 1 服务器端数据库操做 31 5 2 客户端软件扫描分类 33 5 3 客户端打开 卸载 查看权限功能 34 5 4 网络访问功能 35 5 5 后台更新服务 35 xx 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 V 5 6 软件开机自启动 常驻通知栏 36 5 7 客户端数据库 表生成代码 37 5 8 本章小结 38 第 6 章 系统测试 39 6 1 测试目标 39 6 2 黑盒测试和白盒测试 39 6 3 测试准则 39 6 4 白盒测试 40 6 5 黑盒测试 40 6 6 本章小结 42 第 7 章 结束语 43 致谢 44 参考文献 45 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 1 前前 言言 软件分类管理是一种简单 高效的分类管理方式 当前 应用软件呈现多样 化的趋势 随着软件数量的上升 用户需求的增多 软件的简单 高效管理成为 一个重要的议题 Android 系统现有的软件管理采用统一管理方式 即在应用程序列表中会显示 系统中全部软件信息 其中系统必须组件和用户自行安装软件相互混杂 一般用 户很难讲其中的软件区分开来 这就对用户的软件管理带来不便 本系统的开发 就是为了解决这个问题 本系统的设计是专门针对 Android 设备用户的日常软件管理操作来进行的 力争提高用户管理效率 减少操作复杂度 优化用户使用体验 本系统以软件的 自动分类 管理为中心 包括软件自动分类 软件打开 软件卸载 软件权限查 看等功能 本系统使用 Web service 技术 服务于当前热门的 Android 系统用户 为用户提供方便快捷的使用体验 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 2 第第 1 1 章章 理论及技术基础理论及技术基础 在本系统基于 Android 平台构建 其中用到了两个关键技术 Web service 技 术和三层架构 另外还用到 SQL Server 和 SQLite 数据库 1 1 1 1 AndroidAndroid 系统系统 Android 一词的本义指 机器人 同时也是 Google 于 2007 年 11 月 05 日宣 布的基于 Linux 平台的开源移动操作系统的名称 该平台由操作系统 中间件 用户界面和应用软件组成 它采用软件堆层 Software Stack 又名软件叠层 的架构 主要分为三部分 底层以 Linux 内核工作为基础 由 C 语言开发 只提 供基本功能 中间层包括函数库 Library 和虚拟机 Virtual Machine 由 C 开发 最上层是各种应用软件 包括通话程序 短信程序等 应用软件则由各公司自行 开发 以 Java 作为编写程序的一部分 不存在任何以往阻碍移动产业创新的专有 权障碍 号称是首个为移动终端打造的真正开放和完整的移动软件 Google 通过 与软 硬件开发商 设备制造商 电信运营商等其他有 关各方结成深层次的合作 伙伴关系 希望借助建立标准化 开放式的移动电话软件平台 在移动产业内形 成一个开放式的生态系统 Android 作为 Google 企业战略的重要组成部分 将 进一步推进 随时随地为每个人提供信息 这一企业目标的实现 全球为数众多 的移动电话用户正在使用各种基于 Android 的电话 谷歌的目标是让 移动通讯 不依赖于设备甚至平台 出于这个目的 Android 将补充 而不会替代谷歌长期 以来奉行的移动发展战略 通过与全球各地的手机制造商和移动运营商结成合作 伙伴 开发既有用又有吸引力的移动服务 并推广这些产品 2011 年第一季度 Android 在全球的市场份额首次超过塞班系统 跃居全球第一 数据显示 2012 年 2 月数据 Android 占据全球智能手机操作系统市场 52 5 的份额 中国市场占有 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 3 率为 68 4 1 2 C 1 2 C 语言语言 C C Sharp 是微软 Microsoft 为 NET Framework 量身订做的程序语言 微软公司在 2000 年 6 月发布的一种新的编程语言 C 拥有 C C 的强大功能以及 Visual Basic 简易使用的特性 是第一个组件导向 Component oriented 的程序 语言 和 C 与 Java 一样亦为面向对象 object oriented 程序语言 C C SHARP 是一种最新的 面向对象的编程语言 它使得程序员可以快速 地编写各种基于 MICROSOFT NET 平台的应用程序 MICROSOFT NET 提供了一系列 的工具和服务来最大程度地开发利用计算与通讯领域 C 看起来与 Java 有着惊人 的相似 它包括了诸如单一继承 界面 与 Java 几乎同样的语法 和编译成中间 代码再运行的过程 但是 C 与 Java 有着明显的不同 它借鉴了 Delphi 的一个特 点 与 COM 组件对象模型 是直接集成的 而且它是微软公司 NET Windows 网络 框架的主角 正是由于 C 面向对象的卓越设计 使它成为构建各类组件的理想之选 无 论是高级的商业对象还是系统级的应用程序 使用简单的 C 语言结构 这些组件 可以方便的转化为 XML 网络服务 从而使它们可以由任何语言在任何操作系统上 通过 Internet 进行调用 最重要的是 C 使得 C 程序员可以高效的开发程序 而绝不损失 C C 原有 的强大的功能 因为这种继承关系 C 与 C C 具有极大的相似性 熟悉类似语言 的开发者可以很快的转向 C 1 1 3 3 Web Web s serviceervice技术技术 Web services 是由企业发布的完成其特定商务需求的在线应用服务 其他公 司或应用软件能够通过 Internet 来访问并使用这项在线服务 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 4 它是一种构建应用程序的普遍模型 可以在任何支持网络通信的操作系统中实 施运行 它是一种新的 Web 应用程序分支 是自包含 自描述 模块化的应用 可 以发布 定位 通过 Web 调用 Web service 是一个应用组件 它逻辑性的为其他 应用程序提供数据与服务 各应用程序通过网络协议和规定的一些标准数据格式 Http XML Soap 来访问 Web service 通过 Web service 内部执行得到所需结 果 Web service 可以执行从简单的请求到复杂商务处理的任何功能 一旦部署以 后 其他 Web service 应用程序可以发现并调用它部署的服务 在构建和使用 Web service 时 主要用到以下几个关键的技术和规则 1 XML 描述数据的标准方法 2 SOAP 表示信息交换的协议 3 WSDL Web 服务描述语言 4 UDDI Universal Description Discovery and Integration 通用描述 发现与集成 它是一种独立于平台的 基于 XML 语言的用于在互联网上描述商务 的协议 Web service 具有以下优点 1 跨防火墙的通信 2 应用程序集成 3 B2B 的集成 4 软件和数据重用 同时又有如下缺点 1 单机应用程序 2 局域网的同构应用程序 1 4 SOAP1 4 SOAP SOAP 简单对象访问协议 简单对象访问协议 SOAP 是一种轻量的 简单 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 5 的 基于 XML 的协议 它被设计成在 WEB 上交换结构化的和固化的信息 SOAP 可 以和现存的许多因特网协议和格式结合使用 包括超文本传输协议 HTTP 简单 邮件传输协议 SMTP 多用途网际邮件扩充协议 MIME 它还支持从消息系统 到远程过程调用 RPC 等大量的应用程序 SOAP 包括四个部分 SOAP 封装 它定义了一个框架 该框架描述了消息中的内容是什么 谁应当 处理它以及它是可选的还是必须的 SOAP 编码规则 它定义了一种序列化的机制 用于交换应用程序所定义的数 据类型的实例 SOAP RPC 表示 它定义了用于表示远程过程调用和应答的协定 SOAP 绑定 定义了一种使用底层传输协议来完成在节点间交换 SOAP 封装的 约定 SOAP 消息基本上是从发送端到接收端的单向传输 但它们常常结合起来执行 类似于请求 应答的模式 所有的 SOAP 消息都使用 XML 编码 一条 SOAP 消息就是 一个包含有一个必需的 SOAP 的封装包 一个可选的 SOAP 标头和一个必需的 SOAP 体块的 XML 文档 把 SOAP 绑定到 HTTP 提供了同时利用 SOAP 的样式和分散的灵活性的特点以及 HTTP 的丰富的特征库的优点 在 HTTP 上传送 SOAP 并不是说 SOAP 会覆盖现有的 HTTP 语义 而是 HTTP 上的 SOAP 语义会自然的映射到 HTTP 语义 在使用 HTTP 作 为协议绑定的场合中 RPC 请求映射到 HTTP 请求上 而 RPC 应答映射到 HTTP 应答 然而 在 RPC 上使用 SOAP 并不仅限于 HTTP 协议绑定 SOAP 也可以绑定到 TCP 和 UDP 协议上 SOAP 的优点 1 SOAP 是可扩展的 SOAP 无需中断已有的应用程序 SOAP 客户端 服务器和 协议自身都能发展 而且 SOAP 能极好地支持中间介质和层次化的体系结构 2 SOAP 是简单的 客户端发送一个请求 调用相应的对象 然后服务器返回结 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 6 果 这些消息是 XML 格式的 并且封装成符合 HTTP 协议的消息 因此 它符合任何 路由器 防火墙或代理服务器的要求 3 SOAP 是完全和厂商无关 SOA 可以相对于平台 操作系统 目标模型和编 程语言独立实现 另外 传输和语言绑定以及数据编码的参数选择都是由具体的实 现决定的 4 SOAP 与编程语言无关 SOAP 可以使用任何语言来完成 只要客户端发送 正确 SOAP 请求 也就是说 传递一个合适的参数给一个实际的远端服务器 SOAP 没有对象模型 应用程序可以捆绑在任何对象模型中 5 SOAP 与平台无关 SOAP 可以在任何操作系统中无需改动正常运行 1 1 5 5 S SQLQL S Servererver 的特点的特点 SQL Server 是由 Microsoft 开发和推广的关系数据库管理系统 DBMS 具有 以下特点 1 真正的客户机 服务器体系结构 2 图形化用户界面 使系统管理和数据库管理更加直观 简单 3 丰富的编程接口工具 为用户进行程序设计提供了更大的选择余地 4 SQL Server 与 Windows NT 完全集成 利用了 NT 的许多功能 如发送和接 受消息 管理登录安全性等 SQL Server 也可以很好地与 Microsoft BackOffice 产品集成 5 具有很好的伸缩性 可跨越从运行 Windows 95 98 的膝上型电脑到运行 Windows 2000 的大型多处理器等多种平台使用 6 对 Web 技术的支持 使用户能够很容易地将数据库中的数据发布到 Web 页 面上 7 SQL Server 提供数据仓库功能 这个功能只在 Oracle 和其他更昂贵的 DBMS 中才有 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 7 1 1 6 6 SQLiteSQLite 的特点的特点 SQLite 是一款轻型的数据库 是遵守 ACID 的关联式数据库管理系统 它的 设计目标是嵌入式的 而且目前已经在很多嵌入式产品中使用了它 它占用资源 非常的低 在嵌入式设备中 可能只需要几百 K 的内存就够了 它能够支持 Windows Linux Unix 等等主流的操作系统 同时能够跟很多程序语言相结合 比 如 C PHP Java 等 还有 ODBC 接口 同样比起 MySQL PostgreSQL 这两款开源 世界著名的数据库管理系统来讲 它的处理速度比他们都快 SQLite 具有以下特 点 1 ACID 事务 2 零配置 无需安装和管理配置 3 储存在单一磁盘文件中的一个完整的数据库 4 数据库文件可以在不同字节顺序的机器间自由的共享 5 支持数据库大小至 2TB 6 足够小 大致 3 万行 C 代码 250K 7 比一些流行的数据库在大部分普通数据库操作要快 8 简单 轻松的 API 9 包含 TCL 绑定 同时通过 Wrapper 支持其他语言的绑定 10 良好注释的源代码 并且有着 90 以上的测试覆盖率 11 独立 没有额外依赖 12 Source 完全的 Open 你可以用于任何用途 包括出售它 13 支持多种开发语言 C PHP Perl Java C Python 1 1 7 7 本章小结本章小结 本章主要对系统开发过程中需要用到的相关技术进行介绍 主要包括 Android XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 8 系统 C 语言 Web service 技术 SOAP 协议 SQL Server SQLite 以及三层架 构等相关技术的介绍 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 9 第第 2 2 章章 系统需求分析系统需求分析 随着智能手机操作系统的飞速发展和手机软件的大量出现 如何对智能手机 软件进行智能化 高效率的管理已成为一个重大问题 基于这种广泛的需求 本 次毕业设计开发了 Android 软件分类管理系统 2 2 1 1 系统基本情况描述系统基本情况描述 建立客户端和服务器的交互式软件 通过此软件完成客户端系统软件的分类 管理功能 在使用上要求美观 简洁 适应不同用户需求 2 1 2 1 1 1 AndroidAndroid 客户端客户端系统功能分布图系统功能分布图 Android软件分类管理系统 软件分类软件管理其他功能 系统 游戏 多媒体 办公 生活 社交 其他 ROM组件 运行 卸载 查看权限 界面切换 刷新本地数据 服务器设置 关于 退出 后台更新服务 开机自启动功能 图标常驻通知栏 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 10 图 2 1 客户端系统功能分布图 本系统客户端功能分为三部分 1 软件分类功能 该部分功能将系统中全部软件分为系统类 游戏类 多媒 体类 办公类 生活类 社交类 其他和 ROM 组件 2 软件管理功能 该部分功能提供软件运行 卸载 权限查看功能 3 其他功能 这部分主要提供软件辅助功能 包括界面切换 服务器设置 后台数据更新 图标常驻通知栏 开机自启动 关于 退出功能 客户端系统功能图如图 2 1 所示 2 1 2 1 2 2 服务器服务器功能分布图功能分布图 本系统服务器端主要功能为对网络数据库的操作 并为客户端提供 Web 服务 接口 主要包括 1 数据查询 对客户端 软件类别查询 对数据库维护程序 全部软件信息 查询 类别不明的软件信息查询 2 数据添加 对客户端 查询时遇到的数据库中不存在的软件自动添加 3 数据修改功能 对数据库维护程序 可以修改软件类别信息 服务器功能分布如图 2 2 所示 软件管理系统服务器 数据添加数据查询数据修改 图 2 2 服务器功能分布图 2 1 2 1 3 3 数据库维护程序数据库维护程序功能分布图功能分布图 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 11 数据库维护程序的主要功能是维护 Web 数据库中的数据 包括数据查询 可 查询全部软件信息和类别未知的软件信息 和数据修改 对软件类别的修改 通 过调用服务器 Web service 相应接口获得软件信息 并通过对应接口对类别进行 修改 该部分功能分布如图 2 3 所示 数据库维护程序 数据修改数据查询 查 询 全 部 查 询 类 别 不 明 的 软 件 类 别 修 改 图 2 3 数据库维护程序功能分布图 2 2 2 2 系统系统功能分析功能分析 2 2 2 2 1 1 软件软件分类分类 软件自动分类是本系统的主体功能 其他功能基于已完成分类软件的管理 分类功能的执行效率 稳定性直接决定着系统的整体性能 为了实现软件的自动 分类功能 采用如下方法 客户端扫描用户已安装软件 ROM 组件直接放入该类别 其他软件上传软件信息至服务器 服务器返回软件类别 根据返回信息进行软件 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 12 分类 将结果显示在用户界面上 本系统对软件主要分为以下几类 系统 游戏 多媒体 办公 生活 社交 其他和 ROM 组件 1 系统类系统类 用于显示所有系统类软件信息 例如 金山手机卫士 金山电池医生 360 手 机助手 豌豆荚 2 等 2 游戏游戏类类 用于显示所有游戏类软件信息 例如 愤怒的小鸟 水果忍者 割绳子 泡 泡卡丁车等 3 多媒体多媒体类类 用于显示所有多媒体类软件信息 例如 天天动听 迅雷看看 Android 版 暴风影音 Android 版等 4 办公办公类类 用于显示所有办公类软件信息 例如 有道词典 Android 版 WPS OFFICE 随手记 同花顺等 5 生活生活类类 用于显示所有生活类软件信息 例如 墨迹天气 淘宝 高德地图 8684 公 交等 6 社交社交类类 用于显示所有社交类软件信息 例如 手机 QQ 微信 新浪微博 人人 YY 语音等 7 其他其他类类 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 13 用于显示所有无法分类的软件信息 8 ROM 组件组件 用于显示所有预装在 ROM 中的软件信息 例如 图库 照相机 主题等 2 2 22 2 2 软件管理软件管理 软件管理功能是对已分类的软件进行管理 提供软件打开 卸载 ROM 组件不 提供卸载 权限查看功能 1 运行运行 运行的主要功能是为能打开的软件进行启动操作 对于无法打开的软件 Android 键盘 打包安装程序等 则提示 此软件打不开 2 卸载卸载 对用户自行安装的软件进行卸载 使用时跳转到卸载提示界面 对于 ROM 组件 因为安全性原因 ROM 组件提供系统核心功能 卸载可能导致系统不稳定 甚至崩 溃 不提供该功能 3 权限查看权限查看 对所选择的软件所需要的权限进行查看 点击会提示所有该软件需要的权限 2 2 2 32 3 其他其他 本系统提供的其他功能包括 界面切换 刷新数据 服务器设置 后台更新 开机自启动 图标常驻通知栏 关于 退出 1 界面切换界面切换 本系统提供 2 种界面显示效果供用户选择 列表显示 九宫格显示 用户可 以使用该选项在 2 中效果中切换 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 14 2 刷新数据刷新数据 更新客户端软件列表显示 在联网情况下会更新客户端数据库中的数据 该 功能可能会消耗流量 需注意 3 服务器设置服务器设置 对于可能的服务器地址更改提供本地设置变更选项 使用该项可以修改所连 接的服务器的地址 4 后台更新后台更新服务服务 软件启动后若无其他操作 程序会在后台运行该服务 若检测到服务器可连 接 将会自动更新本地数据 该功能可能会消耗流量 需注意 5 开机自启动开机自启动 软件安装后在开机时会自动启动后台服务 该功能需至少运行一次软件方可 生效 6 图标常驻通知栏图标常驻通知栏 软件启动后会在通知栏常驻图标 方便用户快速进入软件 7 关于关于 弹出关于对话框 显示本软件的基本信息 8 退出退出 退出系统界面 会有退出确认 点击确定后 会退出软件 2 2 2 42 4 服务器服务器功能功能分析分析 本系统的服务器端主要进行对数据库的增 改 查操作 为客户端和数据库 管理软件提供网络数据操作接口 端口使用系统默认的 80 端口 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 15 1 客户端接口功能 为客户端的数据 软件类别 查询提供接口 并在查询过程中对未知软件 进行自动添加操作 2 数据库管理软件接口功能 为管理工具提供数据 软件 ID 名称 类别 查询 并提供软件类别修 改功能 2 2 2 52 5 数据库维护程序分析数据库维护程序分析 数据库维护程序主要功能为对 Web 服务器数据库进行类别更新操作 提供全 部软件信息查询功能 类别信息不明的软件信息查询功能 修改软件类别功能 2 2 3 3 可行性分析可行性分析 在现行系统初步调查的基础上就可以提出新系统目标 即新系统建立后所要 求达到的运行指标 这是系统开发和评价的依据 新系统目标应充分体现用户的 基本需求和执行效率 同时新系统应满足不同版本系统的使用 并未以后的升级 提供空间 新系统的目标确定后 就可以从以下三方面对能否实现新系统目标进行可行 性分析 1 技术可行性 根据新系统目标来衡量所需的技术是否具备 一般可从硬件 软件的性能要求 环境条件 技术人员水平和数量等方面去考虑和分析 其中开 发人员的技术力量应首先考虑能力与水平 并考虑近期内可以培养和发展的技术 人员 2 经济可行性 估算新系统的开发费用和今后的运行 维护费用 估计新系 统将获得的效益 并将费用与效益进行比较 看是否有利 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 16 系统的效益可以从经济效益和社会效益两方面考虑 对于软件分类管理系统 则应着重分析其社会效益 例如 系统适用于哪些用户 用户使用时可以提高多 少效率 操作上是否简单方便等等 3 运行可行性 对软件与现有操作系统的兼容性进行估计和评价 同时还应 考虑现有用户的操作习惯等问题 按上述三方面进行可行性分析 研究后 我们认为该项目是可行的 2 4 2 4 软硬件环境要求软硬件环境要求 1 客户端客户端 软件要求 Android2 2 以上设备 手机 平板电脑 智能电视等 支持连接 2G 3G 或 Wi Fi 网络 2 服务器端服务器端 软件要求 Java 运行环境 JDK5 0 或者以上的版本 VS2010 NET Farmwork 3 5 以上的版本 数据库要求 SQL Server 2008 或以上的数据库 Windows XP 以 上系统 IIS6 0 以上版本 硬件要求 X86 AMD64 架构电脑 内存 1G 以上 3 数据库维护程序数据库维护程序 软件要求 支持 NET 的 windows 环境 2 5 2 5 本章小结本章小结 该章节主要对系统进行需求分析 包括系统的功能分析 系统的可行性分析 软硬件环境要求进行分析 为后边的设计提供参考 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 17 第第 3 3 章章 AndroidAndroid 平台软件平台软件分类分类管理管理系统总体设计系统总体设计 该阶段的基本任务是 概括地回答 怎样实现目标系统 这个问题 3 1 3 1 整体功能模块分析整体功能模块分析 根据需求分析的说明 该 Android 平台软件分类系统应具有基本功能可以总 结为以下几个模块 如图 3 1 所示 软件分类管理系统 软件管理软件分类 图 3 1 系统组织图 根据实际需求 Android 平台软件分类系统应包含两大主要功能 软件分类和 软件管理 3 2 3 2 功能模块细分与设计功能模块细分与设计 在这一部分 我们将各个子系统模块进一步划分子模块 划分的子模块与各 个模块功能说明如下 3 2 1 3 2 1 软件分类软件分类模块模块 软件分类主要是对系统内的软件进行分类显示 包括系统软件扫描 软件分 类 各部分主要功能如下 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 18 1 系统软件扫描 主要功能为对系统内所以已安装的软件进行扫描 并将结 果存储 2 软件分类 主要功能为对上一步已扫描的软件进行分类 并分类存储 方 便以后使用 其数据流图如图 3 2 所示 Android客户端 本地数据库 查询 软 件 名 称 软 件 名 称 添 加 软 件 名 称 到 本 地 数 据 库 WEB 服 务 器 软件类型 软件名称 软件名称 软件类型 更新本地数 据库信息 3 2 软件分类功能数据流图 系统进行分类操作时 首先在客户端扫描所有软件 将软件名称发送给查询 模块 查询模块进行数据库查询 返回结果 如果数据库中无此条目则添加 若 查询结果为 null 则连接服务器查询 3 2 23 2 2 软件管理软件管理模块模块 软件管理 打 开 卸 载 权 限 查 看 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 19 图 3 3 软件管理功能图 软件管理模块 主要提供对软件的管理操作 其中包括软件打开 软件卸载 软件权限查看 方便了用户对软件的管理操作 提高了使用效率 其模块如图 3 3 所示 模块功能如下 1 打开 对指定的软件执行打开操作 即启动该软件 方便用户使用 2 卸载 对指定软件执行卸载操作 即删除该软件 不可恢复 3 权限查看 查看指定软件需要的权限 3 2 3 3 2 3 服务器模块服务器模块 服务器模块主要功能为给客户端的分类功能提供数据支持 使用 C 语言实现 其模块功能如图 3 4 所示 客 户 端 服 务 器 端 口 WEB 数 据 库 软件类别 软件名称软件名称 软件类别 无数据 添加数据 图 3 4 服务器模块图 1 服务器端口 采用 Web service 标准端口规范 使用 C 语言实现 接受客 户端上传的软件名称 返回软件类别信息 2 WEB 数据库 根据软件名称查询软件类别 返回软件类别数据 无论是否 为 Null 若查询结果为空集 则说明数据库中无此数据 这是先添加软件名称到 数据库中 并返回 Null XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 20 3 2 43 2 4 数据库维护数据库维护模块模块 该模块提供对数据库的维护操作 包括数据查询和数据修改 模块功能如图 3 5 所示 数 据 库 维 护 程 序 Webservice 服 务 器 查询软件信息 编号 名称 类别 返回软件信息 编号 名称 类别 修改软件类别 图 3 5 数据库维护模块图 1 软件信息查询 查询全部软件信息或根据条件查询指定信息 并将结果返 回到软件界面上 2 软件类别修改 对选定的软件的类别信息进行修改 并将修改结果提交到 数据库中 3 3 3 3 本章小结本章小结 本部分主要介绍的系统整体的设计 主要包括系统的部分的功能 系统中所 用到的字段 以及对于整个系统的总体框架进行了设计 系统的整体框架的设计对于开发程序者来说会有一个系统的整体的概念 对 于系统的使用这来说 可以尽早的了解系统所具有的模块 这样可以尽早的发现 问题 解决问题 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 21 第第 4 4 章章 详细设计详细设计 详细设计阶段的任务就是把在总体设计阶段提出的比较抽象概括的解决问题 的方法具体化 也就是 应该怎样具体地实现这个系统 在本阶段将包括数据库 的设计和每个模块的详细设计 确定实现模块功能所需要的算法和数据结构 4 1 4 1 数据库设计数据库设计 4 1 1 4 1 1 概念结构设计概念结构设计 软件分类管理系统中信息主体只有软件信息 所以在本系统中具有唯一实体 软件 其具有编号 名称 类别 3 个属性 E R 图如下所示 软件 编号名称类别 图 4 1 实体图 4 1 2 4 1 2 逻辑结构设计逻辑结构设计 1 关系模型设计 关系模型设计 目前 数据库领域常用的数据模型有四种 它们是 层次模型 Hierarchical Model 网状模型 Network Model 关系模型 Relational Model 面向对象 模型 Object Oriented Model 在本系统中 我采用了关系模型的方式 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 22 下面我们把上面的 E R 图转换为关系模型 根据一般的转换原则 转换如下 所示 1 软件 编号 名称 类别 2 数据库表的结构实现 数据库表的结构实现 由各个关系模式和根据需求分析阶段数据字典的数据项描述 给出各数据表 结构 系统各表的结构如表 4 1 所示 表 4 1软件信息表 表名 SoftInfo 软件信息表 列名 注释 数据类型 精度范围 空 非空 约束条件 SoftID 编号 int Not null 主键 自增长 SoftName 软件名称 Varchar 50 Not null 唯一值 SoftType 软件类别 Varchar 20 Null Check 约束 补充说明 4 2 4 2 三层架构思想三层架构思想 三层架构 3 tier application 通常意义上的三层架构就是将整个业务应用 划分为 表现层 UI 业务逻辑层 BLL 数据访问层 DAL 区分层次的目的 即为了 高内聚 低耦合 的思想 1 表现层 UI 通俗讲就是展现给用户的界面 即用户在使用一个系统的 时候他的所见所得 2 业务逻辑层 BLL 针对具体问题的操作 也可以说是对数据层的操作 对数据业务逻辑处理 3 数据访问层 DAL 有时候也称为是持久层 其功能主要是负责数据库的 访问 可以访问数据库系统 二进制文件 文本文档或是 XML 文档 简单的说法 就是实现对数据表的 Select Insert Update Delete 的操作 如果要加入 ORM 的元素 那么就会包括对象和数据表之间的 mapping 以及对象实体的持久化 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 23 该架构优点 1 开发人员可以只关注整个结构中的其中某一层 2 可以很容易的用新的实现来替换原有层次的实现 3 可以降低层与层之间的依赖 4 有利于标准化 5 利于各层逻辑的复用 该架构缺点 1 降低了系统的性能 这是不言而喻的 如果不采用分层式结构 很多业务 可以直接造访数据库 以此获取相应的数据 如今却必须通过中间层来完成 2 有时会导致级联的修改 这种修改尤其体现在自上而下的方向 如果在表 示层中需要增加一个功能 为保证其设计符合分层式结构 可能需要在相应的业 务逻辑层和数据访问层中都增加相应的代码 3 增加了开发成本 三层架构在软件开发中体现了多种优势 在本系统中将采用三层架构设计 4 4 3 3 客户端客户端界面设计界面设计 软件界面也称作 UI User Interface 是人机交互重要部分 也是软件使用 的第一印象 是软件设计的重要组成部分 软件界面设计现在越来越被软件设计 重视 所谓的用户体验大部分就是指软件界面的设计 界面设计是为了满足软件专业化标准化的需求而产生的对软件的使用界面进 行美化优化规范化的设计分支 4 4 3 3 1 1 客户端主界面客户端主界面设计设计 本系统适用于 Android 用户 在界面设计时采用选项卡设计 选项卡中有 系 统 游戏 多媒体 办公 生活 社交 其他 选项 分别显示系 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 24 统类 游戏类 多媒体类 办公类 生活类 社交类和未分类软件 点击选项卡可以切换界面 同时添加滑动效果方便用户操作 为方便用户操作 经考虑将选项卡置于屏幕上方 软件显示部分提供列表和九宫格两种效果 可通过选项切换 具体效果如图 4 2 所示 图 4 2 系统界面效果图 4 4 3 3 2 2 客户端客户端管理菜单设计管理菜单设计 在系统主界面中点击软件名称可以打开软件 长按软件名称弹出管理菜单 如 图 4 3 所示 菜单中有 卸载 查看权限 选项 卸载 点击卸载按钮 跳转到卸载界面 提供软件卸载功能 便于用户快速 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 25 卸载软件 查看权限 点击该按钮 弹出权限显示对话框 显示该软件需求的所有权限 方便用户了解软件权限需求 防止软件后台暗操作 图 4 3 软件管理菜单设计图 4 4 3 3 3 3 客户端主客户端主菜单设计菜单设计 系统菜单中提供切换视图 刷新 联网 ROM 组件 服务器设置 关于 退 出选项 切换视图 提供更换界面效果功能 刷新 联网 刷新本地数据 ROM 组件 显示 ROM 中预安装的软件 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 26 服务器设置 更改服务器地址设置 关于 显示软件信息 退出 退出本系统 用户点击 MENU 按键 菜单将在屏幕底部弹出 方便用户点击选择 菜单效果如图 4 4 所示 图 4 4 菜单效果图 4 3 4 3 4 4 客户端服务器设置界面设计客户端服务器设置界面设计 为方便用户更换服务器地址 本系统提供服务器地址修改功能 点击菜单中 的服务器设置按钮即可进行设置 设置界面的主体部分显示当前服务器地址 下 方提供地址输入窗口 界面效果如图 4 5 所示 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 27 在修改服务器地址时需要填写完整服务器路径 即需要包含 http 开头 和 asmx 结尾 如果服务器地址填写不完整 客户端在连接网络时将无法获取 正确结果 4 3 5 4 3 5 客户端关于界面设计客户端关于界面设计 点击菜单界面关于按钮 可以打开系统关于界面 显示系统相关信息 界面 中显示软件版本信息 界面效果如图 4 6 所示 图 4 5 服务器设置界面效果图 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 28 图 4 6 客户端关于界面效果图 4 3 6 4 3 6 客户端退出确认界面设计客户端退出确认界面设计 点击菜单中的退出按钮 系统会弹出退出确认菜单 点击确定可以退出系统 返回取消退出 返回到主界面 界面效果如图 4 7 所示 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 29 图 4 7 客户端退出确认界面效果图 4 4 4 4 数据库维护程序数据库维护程序界面设计界面设计 数据库维护程序界面包括软件信息显示列表 数据查询按钮 数据修改提交 按钮 界面效果如图 4 8 所示 界面主体部分用于显示软件信息 包含软件编号 软件名称 软件类别三列 数据 界面右侧的 查询全部 按钮功能为查询数据库中全部软件的信息 查询 NULL 按钮功能为查询数据库中类别信息为 Null 的软件信息 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 30 图 4 8 服务器维护程序界面效果图 界面下方的控件显示选中的软件的信息 依次为软件编号 软件名称 软件 类别 其中软件编号和软件名称为锁定状态 不可修改 软件类别可以在下拉列 表框中的 系统 游戏 多媒体 办公 生活 社交 其他 七种 选项中进行选择 点击 更新数据 按钮可以提交类别信息修改数据到数据库中 4 4 5 5 本章小结本章小结 该章节是对主要功能的实现过程进行详细的介绍 其中包括基本功能的实现 三层架构设计思想 重点对软件界面设计进行讲解 XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 31 第第 5 5 章章 源代码分析源代码分析 在完成需求分析 概要设计 详细设计的几个步骤后 接下来的工作就是编 码 在这一部分 我将对软件分类管理系统中的核心代码或比较有特色的部分代 码做相应的分析 5 15 1 服务器端服务器端数据库数据库操操做做 因为在软件分类管理系统中 服务器端只是提供软件类别信息 因此服务器 端提供以下几个函数 数据库连接关闭 软件类别查询 软件信息添加 1 数据库连接关闭 服务器端代码采用 C 编写 使用 LinQ 技术连接数据库 具体代码如下 SqlConnection sqlConn null private void openConnection if sqlConn null sqlConn new SqlConnection CONN CONN为数据库连接字符串 sqlConn Open private void closeConnection if sqlConn null CONN为数据库连接字符串 if sqlConn State ConnectionState Open sqlConn Close sqlConn null XXX 大学毕业设计 论文 毕业设计文档加程序 QQ 1840910736 32 2 软件类别添加 当查询时遇到服务器数据库中不存在的条目时 自动调用添加操作进行数据 添加 同时类别信息为 NULL 等待服务器管理员更新数据 string mysql string Format in

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论