软件构件库管理系统 毕业论文.doc
《软件构件库管理系统 毕业论文.doc》由会员分享,可在线阅读,更多相关《软件构件库管理系统 毕业论文.doc(91页珍藏版)》请在三一文库上搜索。
1、软件构件库管理系统摘 要目前,基于构件的软件开发是软件产业中的热点,它成为解决重复开发的问题,提高生产效率和质量的现实可行的途径。当软件构件的数量达到一定规模时,采用构件库管理系统对其进行组织和管理是十分必要的,构件库管理系统的组织和管理水平直接决定着构件复用效率。本文系统的介绍了构件库管理系统的开发过程,完成了对构件的发布、查询、修改以及下载功能,还有对用户管理和对构件的评论管理等功能。采用的技术是基于JAVA语言的WEB开发技术,使用Struts框架和Hibernate框架组合,数据库是Microsoft SQLServer 2000关键词 JAVA语言;软件构件;Struts框架; Hi
2、bernate框架;Microsoft SQLServer2000Software Component Library Management SystemAbstractAt present, the component-based software development in the software industry is hot, it developed to solve the problem of duplication, improve production efficiency and quality of the realistic way. When the number
3、 of components to achieve a certain scale, a component library management system and its management is very necessary, component library management system for the organization and management directly determines the efficiency of component reuse. This paper introduces component library management sys
4、tem development process, completed a component of the release, query, modify and download capabilities, and management and user comments on the component management. The technology used is based on the WEB JAVA language development technology, the use of framework and HIBERNATE STRUTS framework comp
5、osition database is Microsoft SQL Server 2000Keywords JAVA; Software Component; STRUTS Framework;HIBERNATE Framework; Microsoft SQL Server 2000目 录摘 要IAbstractII1 绪论11.1 立题背景、目的及意义11.2 软件构件库管理系统的发展情况21.2.1 国外研究动态21.2.2 国内研究动态32 系统开发环境42.1 系统服务器环境要求42.1.1 对硬件的要求42.1.2 对软件的要求42.2 系统客户端环境要求42.2.1 对硬件的要求
6、42.2.2 对软件的要求42.3 开发工具简介52.3.1 Struts框架介绍52.3.2 Hibernate对象关系映射框架介绍52.3.3 SQL Server 2000 介绍62.3.4 系统的开发平台73 需求分析及可行性研究分析93.1 需求分析93.1.1 功能需求93.1.2 数据需求113.2 系统开发可行性分析143.2.1 经济可行性153.2.2 市场可行性153.2.3 技术可行性163.2.4 时间可行性164 总体设计184.1 系统的开发设计思想184.2 系统功能设计194.2.1 系统的功能模块划分194.2.2 系统的类图204.3 数据库设计215 具
7、体实现245.1 查询构件及发表评论255.1.1 查询构件255.1.2 发表评论275.2 用户管理模块实现295.2.1 注册295.2.2 登录305.2.3 忘记密码325.2.4 修改密码335.2.5 修改个人资料345.2.6 发布构件365.2.7 查询我的构件395.2.8 查询构件相应评论415.2.9 删除构件425.3 管理员管理模块实现435.3.1 超级管理员管理模块445.3.2 构件管理员管理模块475.3.3 用户管理员管理模块495.3.4 评论管理员管理模块49结论51致 谢52参考文献53附录1 英文原文及译文55中文译文55英文原文58附录2 程序源
8、代63V 1 绪论1.1 立题背景、目的及意义目前,基于构件的软件开发是软件产业中的热点,它成为解决重复开发的问题,提高生产效率和质量的现实可行的途径。当构件的数量达到一定规模时,采用构件库管理系统对其进行组织和管理是十分必要的,构件库管理系统的组织和管理水平直接决定着构件复用效率。软件复用是在软件开发中避免重复劳动的解决方案。通过软件复用,可以提高软件开发的效率和质量。近十几年来,面向对象技术出现并逐步成为主流技术,为软件复用提供了基本的技术支持。软件复用研究重新成为热点,被视为解决软件危机,提高软件生产效率和质量的现实可行的途径。当前软件构件技术被视为实现成功复用的关键因素之一。软件构件(
9、software component)是可复用的软件组成成份,可被用来构造其他软件。它可以是被封装的对象类、类树、一些功能模块、软件框架(framework)、软件构架(或体系结构 Architectural)、文档、分析件、设计模式(Pattern)等。构件分为构件类和构件实例,通过给出构件类的参数,生成实例,通过实例的组装和控制来构造相应的应用软件。软件构件库管理系统的目的,就是对软件构件的存储、分类、检索和管理,为基于构件开发提供了全面支持。软件工程师可以快速准确地找到需要的构件,同时发布自己的构件,以达资源共享。1.2 软件构件库管理系统的发展情况1.2.1 国外研究动态1968年NA
10、TO软件工程会议,Mcllroy在提交会议的论文大量生产的软件构件中,提出了“软件组装生产线”的思想。从那以后,采用构件技术实现软件复用,采用“搭积木”的方式生产软件,成为软件开发人员长期的梦想。经过这么多年的努力,开发人员提出了基于构件的软件开发(CBSD:Component-Based Software Development)技术,并且工业界中一些主要的软件公司和产业联盟纷纷提出了一些软件构件的建议标准和技术规范。目前,主流的软件构件技术标准有三种:微软公司的构件对象模型(COM),对象管理组织(OMG)的公共对象的请求代理系统结构(CORBA)和太阳微软系统公司的EJB(Enterpr
11、ise Java Bean)。它们为应用软件的开发提供了可移植性、异构性的实现环境和健壮平台,结束了面向对象中的开发语言混乱的局面,解决软件复用在通信、互操作等环境异构的瓶颈问题。在基于构件的软件开发技术中,软件构件库是管理软件构件及促进软件复用的核心机制,有效地对现有构件进行组织和管理,使构件的使用者可以高效而准确地发现满足其需要的可复用构件。软件构件化在发达国家已普及,美国军方与政府已经建立了CARDS、ASSET和DARS等多个大型构件库系统,还有上万个商业软件构件(Cots)、近千个专业构件制作组织和一批商业构件库运作机构,形成了几百亿美元的构件市场。1.2.2 国内研究动态2002年
12、7月,国务院47号文将构件库列为影响软件产业的重大关键性软件。2004年4月,科技部、发改委、商务部、信息产业部、国家标准化管理委员会在“国科发高字”124号文中,把发展“构件库”写进了2005年“加强软件企业技术创新”的目标中。在基于Internet的构件库管理系统、可扩展的软件建模系统等方面取得较大进展,软件开发平台已经形成了系列化软件。构件库系统完成了公共和企业两级构件库管理系统的研发,公共构件库已经在北京、上海、广州、沈阳、长沙、郑州、西安等8个地区部署并对外使用,支持了各地软件园区和863软件专业孵化器的软件构件库建设。2 系统开发环境2.1 系统服务器环境要求2.1.1 对硬件的要
13、求服务器硬盘空间:数据库空间 360M (DB300MLOG 60M) 构件实体空间由用户需求决定 内存:不小于 512M 推荐使用高性能的工作站,并且推荐配备磁盘阵列2.1.2 对软件的要求Microsoft Windows 2000 Server操作系统或更高版本Microsoft SQL Server 2000数据库或更高版本Tomcat5.0 Web 服务器或更高版本2.2 系统客户端环境要求2.2.1 对硬件的要求客户机:Intel586或更高性能的微机 内存:不小于128M2.2.2 对软件的要求Microsoft IE 5.0或更高版本的Web浏览器2.3 开发工具简介2.3.1
14、 Struts框架介绍Struts框架是Apache开源软件联盟(www.apache.org)的一个开源项目Jakarta Struts Framework。Struts框架继承了MVC设计模式的特性,遵守了J2EE的Servlet、JSP等技术规范,并且根据J2EE的特点做了相应的变化和扩展,是J2EE体系架构的一种轻量级实现。作为一款优秀的Java Web应用程序的开发框架,Struts框架凭借其清晰性、灵活性,成为当前最为广泛应用的轻量级Java Web 开发框架。Struts的工作的原理如图2-1所示。图2-1 Struts的工作原理2.3.2 Hibernate对象关系映射框架介绍
15、Hibernate框架是开放源代码的对象关系映射工具(Object-Relational Mapping),是一款基于Java环境的优秀的对象持久化开发框架。它根据O/R(对象/关系)映射技术思想,对JDBC进行了轻量级封装,使开发人员可以使用一种面向对象的方式来操纵和管理关系数据库,所以从技术本质上来说该框架是一种提供面向对象的数据库服务中间件。Hibernate框架位于应用程序的业务化和持久化层,在运行时的体系结构如图2-2所示。图2-2 Hibernate核心接口的层次架构关系Hibernate的核心接口一共有5个,分别为:Session、Session Factory、Transact
16、ion、Query和Configuration。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。2.3.3 SQL Server 2000 介绍Microsoft SQL Server 2000 数据库在分析服务、数据转化服务、数据仓库等方面引入了大量新特性。它为Web标准提供了强劲的支持,并为系统管理和调整提供了很多有力的工具。对于FoxPro、Access等数据库而言,SQL Server是一个功能完备的正规数据库管理系统。SQL Server2000继承了数据库软件设计引擎方面的优势,已经成为新一代网络应用程序的最佳数据库和分析解决方案之一。作为Microsoft.NET
17、 Enterprise Servers的核心组件,它将减少电子商务、在线商务和数据仓储应用程序推向市场时间,并对需要的环境提供可靠的支持。SQL Server2000对XML和HTTP提供充分的支持;提供分割装载和确保时间的特性;提供先进的管理和协调机制,可以自动管理线和任务,降低总体开销。另外,SQL Server2000充分利用了Windows 2000的功能,包括支持活动目录服务,最多支持32个处理器和64GB的内存。它还包括支持开发引擎、标准的SQL语言、扩展的特性等功能,这些是一些大型数据库系统才具备的特性。而存储过程、触发器等特性,也是个人数据库所没有的。总的来说,SQL Serv
18、er2000简单易用,功能全,很适合做开发使用。2.3.4 系统的开发平台根据前面介绍可以看到Hibenate架构只具备数据持久化设计能力,而Struts架构则在模型设计方面能力薄弱,所以将二者结合起来使用,共同搭建系统结构实现Model-View-Contral模型设计,可以达到二者优势互补,从而使系统设计具备低耦合性以及较高的可维护性和可扩展性。本系统就是采用这个思想来开发的,用Struts框架实现视图和控制设计,用Hibernate实现模型设计。在具体的设计过程中,采用“简单工厂设计模式”,将二者完整地结合起来,使系统符合到了“低耦合、高内聚”的程序设计要求,这样程序模块清晰,容易理解,
19、具有很高的复用价值。下面是用图来描述本系统的体系结构如图2-3所示。图2-3 系统体系结构图3 需求分析及可行性研究分析基于构件的软件开发技术,在我国有了初步发展,国家已经在北京、上海、广州、沈阳、长沙、郑州、西安等8个地区建立公共软件构件库并对外使用。构件库系统通过对可复用构件的分类、管理、存储和检索,为面向复用和基于复用的软件开发过程提供全面的支持。 本文所设计的软件构件库管理系统包括如下功能:用户管理、构件发布、构件查询、构件下载等。支持构件的使用者可以高效而准确地发现满足其需要的可复用构件,从而提高构件的复用效率。知识点:l Struts+Hibernate框架的使用l SQL Ser
20、ver2000数据库设计l 构件的分类l 构件的存储l 构件的查询l Office Visio画图软件的应用3.1 需求分析3.1.1 功能需求根据分析可以确定系统有两类参与者普通用户和管理员,管理员分为用户管理员、构件管理员、评论管理员。这两个参与者的具体操作如下。1. 用户的操作l 用户登录、用户注册、查询构件、发表评论。如图3-1所示。图3-1普通用户的基本操作用例图l 发表构件、修改个人基本信息、修改密码、删除所发布的构件、查询评论。如图3-2所示。图3-2用户的操作用例图2. 管理员的操作l 管理员对管理员和用户的管理:查询用户、删除用户、添加管理员、删除管理员、修改管理员权限。如图
21、3-3所示。图3-3管理员管理用户的用例图l 管理员对构件或评论管理:查询构件、删除构件、查询评论、删除评论。如图3-4所示。图3-4管理员管理构件或评论的用例图3.1.2 数据需求软件构件库系统的开发目的就是提供给用户重用构件的平台,即用户可以发布自己的构件,并且可以查找、下载自己所需的构件,以推动软件构件化的发展。由此,系统涉及到的实体有:普通用户、管理员、构件、评论。实体之间有如下联系:l 一个用户可以发布多个构件l 一个构件可以有多个评论l 系统设一个超级管理员,主要是管理系统中其他管理员l 不同的管理员有不同的权限l 用户管理员可以管理所有的用户l 构件管理员可以管理所有的构件以及构
22、件的评论l 用户可以管理自己的构件l 用户可以查询自己构件的评论经过分析画出E-R图,如图3-6所示。图3-6实体关系图根据实际情况的分析,设计出如下实体及其属性。l 普通用户属性:用户ID(personID)、用户名(userName)、密码(userPassword)、真实姓名(trueName)、找回密码问题(userQues)、问题答案(userAns)、性别(sex)、Email(email)、地址(adress)。如图3-7所示。图3-7普通用户的属性l 管理员属性:管理员编号(adminID)、管理员名字(adminName)、密码(adminPassword)、管理员权限(po
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件构件库管理系统 毕业论文 软件 构件 管理 系统
链接地址:https://www.31doc.com/p-3973420.html