软件工程设计报告(例子).doc
《软件工程设计报告(例子).doc》由会员分享,可在线阅读,更多相关《软件工程设计报告(例子).doc(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 *研究生管理系统设计报告姓名:*学号:*班级:*日期:*目录1.文档说明11.1.设计文档的目的和文档使用范围11.2.文档的读者11.3.参考资料11.4.缩略语12.系统概述22.1.系统部署图22.2.硬件环境22.3.软件环境32.3.1.OS环境32.3.2.依赖软件32.3.3.开发环境32.4.系统安装32.5.系统启动52.6.系统退出53.关键技术63.1.B/S模式技术点63.2.SSH框架技术点73.3.JDBC技术点84.结构设计105.数据库设计125.1.数据表设计125.2.数据表之间的联系156.功能设计166.1.学生166.2.学生处176.3.教务处17
2、6.4.教师186.5.系统管理员187.界面设计207.1.界面设计的参与者207.2.单功能界面设计208.总结231. 文档说明1.1. 设计文档的目的和文档使用范围该文档根据需求分析阶段所得的需求文档编写,说明对研究生管理系统的设计考虑,包括系统的基本处理流程、组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,同时说明本系统各个层次中的每个模块或子程序的设计考虑和标准,从而为下一阶段的代码实现提供文本依据。1.2. 文档的读者文档的预期读者为用户、开发人员、项目经理、营销人员、测试人员、文档编写人员等。1.3. 参考资料下面表格描述的是与本设计相关的资料。
3、编号相关文档1研究生管理系统需求分析文档.doc21.4. 缩略语下面表格定义了本文所用到的重要的术语、缩写词 或缩略语。缩略语、术语全称、解释$CATALINA_HOMEApache Tomcat的根目录2. 系统概述本节主要从需求的角度描述本系统,描述的输入是用户需求。2.1. 系统部署图下面是本系统的部署图。服务器开启后初始化ServletAction,读取struts-config.xml配置信息。用户发送请求,Servlet查找匹配ActionMapping对象是否存在,如果不存在,则返回错误信息;如果存在,则请求ActionForm对象中数据给Action处理。Action调用Lo
4、gicClass对用户请求做出处理。如果涉及到数据库操作,则通过接口调用数据层的DataClass做处理,并存储到实体中。处理完毕后,返回Action,并返回一个ActionForward对象给ServletAction并撞向某个JSP文件或者一个新的Action对象。如果转向JSP文件,其中涉及到调用ActionForm里的JavaBean类中的set()方法来提交表单数据给用户。ActionForm填充JSP页面,并返回给用户结果信息。本系统采用B/S模式,用户只需使用浏览器访问本系统即可,客户端无需安装其他软件。并且本系统采用MVC三层处理模式,使用Java的SSH框架分别处理MVC三层
5、所有的事务。2.2. 硬件环境下面的表格描述系统的硬件环境,以及对系统有影响的关键硬件信息。硬件名称基本要求推荐配置CPU1G Pentium1.6G Pentium硬盘20G40G内存512M1G显示器1366*7681440*900对于本系统的WEB服务器和数据库服务器推荐使用专用的高配置服务器,以应对可能出现的大量客户同时访问。由于客户端使用浏览器就可以访问本系统,故只需普通个人计算机即可。2.3. 软件环境本系统在Windows 7操作系统中进行部署,使用Apache Tomcat作为WEB服务器,使用MySQL作为数据库服务器。2.3.1. OS环境下面的表格说明操作系统及其版本号。
6、系统名称版本号提供商WindowsWindows 7 旗舰版 SP1MicroSoft2.3.2. 依赖软件下面的表格说明了本系统所依赖的软件、组件、服务信息。软件名称版本号提供商备注Tomcat6.0.26Apache Software FoundationMySQL5.5.31Oracle2.3.3. 开发环境下面的表格描述的是本系统的开发环境。软件名称版本号使用语言提供商备注MyEclipse9.0JavaGenuitec2.4. 系统安装对于Apache Tomcat和MySQl数据库的安装参考官方给定方法。安装Apache Tomcat后,将系统部署到到其中。部署方法有两种,一种是静
7、态部署,另一种是动态部署。1、静态部署静态部署指的是在服务器启动之前部署应用程序,只有当服务器启动之后,才能进行访问。以下3中方式都可以部署:(1)将应用程序根目录拷贝到$CATALINA_HOMEwebapps下,然后启动服务器。这种方式比较简单,但是web应用程序必须在webapps目录下。(2)将应用程序根目录拷贝到任意合适的目录下,同时需要进行一些配置,方法如下:更改$CATALINA_HOMEconfserver.xml文件,在标签内添加标签,并且添加如下:其中reloadable=false表示当应用程序中的内容发生更改之后服务器不会自动加载,这个属性在开发阶段通常都设为true,
8、方便开发,在发布阶段应该设置为false,提高应用程序的访问速度。docBase为路径,可以使用绝对路径,也可以使用相对路径,相对路径相对于webapps。path属性的值是访问时的根地址。(3)将应用程序根目录拷贝到任意合适的目录下,同时在$CATALINA_HOMEconfCatalinalocalhost中添加一个xml文件,并且赋予一定含义的文件名,其内容如下:该方式与第二种方式差不多,但是缺少了path属性,这种方式服务器会使用.xml的名字作为path属性的值。2、动态部署动态部署是指可以在服务器启动之后部署web应用程序,而不用重新启动服务器。动态部署要用到服务器提供的manag
9、er.war文件,如果在$CATALINA_HOMEwebapps下没有该文件,则必须去重新下载Tomcat,否则不能完成以下的功能。要想使用该管理程序必须首先编辑$CATALINA_HOMEconftomcat-users.xml文件,内容如下:这样,就完成了应用程序的动态部署。2.5. 系统启动直接运行$CATALINA_HOMEbinstartup.bat文件可启动Tomcat服务器,进而可以访问本系统。2.6. 系统退出运行$CATALINA_HOMEbinshutdown.bat文件可以关闭Tomcat服务器。3. 关键技术 本系统的技术点列表如下:编号技术点略称状态No.1B/S模
10、式掌握No.2SSH框架掌握No.3JDBC掌握本章将逐个对技术点进行描述,包括每个技术点的内容、解决方法和状态等。3.1. B/S模式技术点B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器(Browser),如Internet Explorer,服务器安装Oracle、SQL Server或MySQL等数据库。浏览器通过Web服务器同数据库进行数据交互。B/S最大的优点就是可以在任何地方进
11、行操作而不用安装任何专门的软件,只要有一台能上网的电脑就能使用,客户端零安装、零维护。系统的扩展非常容易。B/S结构的使用越来越多,特别是由需求推动了AJAX技术的发展,它的程序也能在客户端电脑上进行部分处理,从而大大的减轻了服务器的负担;并增加了交互性,能进行局部实时刷新。1)维护和升级方式简单。当前,软件系统的改进和升级越发频繁,B/S架构的产品明显体现着更为方便的特性。对一个稍微大一点单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。所以客户机越来越“瘦”,而
12、服务器越来越“胖”是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。因此,维护和升级革命的方式是“瘦”客户机,“胖”服务器。2)成本降低,选择更多。当前的趋势是凡使用B/S架构的应用管理软件,只需安装在Linux服务器上即可,而且安全性高。所以服务器操作系统的选择是很多的,不管选用那种操作系统都可以让大部分人使用安装了浏览器的Windows作为桌面操作系统而不受影响。3)应用服务器运行数据负荷较重。由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主
13、要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。因此,需要有数据库存储服务器,以防万一。由于B/S模式已经很流行,并且也已被广泛掌握,因此实现起来风险较小。3.2. SSH框架技术点SSH为Struts+Spring+Hibernate的一个集成框架,是目前较流行的一种Java Web应用程序开源框架。 下面将分别进行介绍。1、Struts框架 Struts是一个基于Sun J2EE平台的MVC框架,主要
14、是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。 2、Spring框架Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的
15、Inversion of Control 容器。然而,这仅仅是完整图景中的一部分:Spring在使用IOC 容器作为构建完关注所有架构层的完整解决方案方面是独一无二的。 Spring提供了唯一的数据访问抽象,包括简单和有效率的JDBC框架,极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了Hibernate和其他O/R mapping解决方案。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事务提供一个一致的编程模型。Spring提供了一个用标准Java语言编写的AOP框架,它给POJOs提供了声明式的事务管理和其他企业事务-如
16、果你需要-还能实现你自己的aspects。这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务。Spring还提供了可以和IoC 容器集成的强大而灵活的MVC Web框架。 3、Hinernate框架Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中
17、取代CMP,完成数据持久化的重任。 总之,Struts 是一个很好的MVC框架,主要技术是Servlet和JSP。Struts的MVC设计模式可以使我们的逻辑变得很清晰,让我们写的程序层次分明。Spring 提供了管理业务对象的一致方法,并鼓励注入对接口编程而不是对类编程的良好习惯,使我们的产品在最大程度上解耦。Hibernate 是用来持久化数据的,提供了完全面向对象的数据库操作。Hibernate对JDBC进行了非常轻量级的封装,它使得与关系型数据库打交道变得非常轻松。 Struts负责Web层。ActionFormBean接收网页中表单提交的数据,然后通过Action进行处理,再Forw
18、ard到对应的网页,在Struts-config.xml中定义了,ActionServlet会加载进来。Spring负责业务层管理,即Service。Service为Action提供统一的调用接口,封装持久层的DAO,并集成Hibernate,Spring可对JavaBean和事物进行统一管理。Hibernate负责持久层,完成数据库的CRUD操作。Hibernate有一组hbm.xml文件和PO,是与数据库中的表相对应的,然后定义与数据库打交道的DAO类。在Struts+Spring+Hibernate系统中,对象之间的调用流程如下:StrutsSpringHibernate JSPActi
19、onServiceDAOHibernate 3.3. JDBC技术点JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开
20、发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。JDBC扩展了Java的功能。例如,用Java和JDBC API可以发布含有applet的网页,而该applet使用的信息可能来自远程数据库。企业也可以用JDBC通过Intranet将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有Windows、Macintosh和UNIX等各种不同的操作系统)。MIS管理员们都喜欢Java和JDBC的结
21、合,因为它使信息传播变得容易和经济。企业可继续使用它们安装好的数据库,并能便捷地存取信息,即使这些信息是储存在不同数据库管理系统上。新程序的开发期很短。安装和版本控制将大为简化。程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,随后任何人就都可得到最新版本的应用程序。对于商务上的销售信息服务,Java和JDBC可为外部客户提供获取信息更新的更好方法。(1)JDBC用途简单地说,JDBC可做三件事:与数据库建立连接、发送操作数据库的语句并处理结果。JDBC是个低级接口,也就是说,它用于直接调用SQL命令。在这方面它的功能极佳,并比其它的数据库连接API易于使用,但它同时也被设计为一种
22、基础接口,在它之上可以建立高级接口和工具。高级接口是对用户友好的接口,它使用的是一种更易理解和更为方便的API,这种API在幕后被转换为诸如JDBC这样的低级接口。在关系数据库的对象/关系映射中,表中的每行对应于类的一个实例,而每列的值对应于该实例的一个属性。于是,程序员可直接对Java对象进行操作;存取数据所需的SQL调用将在掩盖下自动生成。此外还可提供更复杂的映射,例如将多个表中的行结合进一个Java类中。(2)支持JDBC API既支持数据库访问的两层模型(C/S),同时也支持三层模型(B/S)。在两层模型中,Java applet或应用程序将直接与数据库进行对话。这将需要一个JDBC驱
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 设计 报告 例子
限制150内