资源预览内容
第1页 / 共9页
第2页 / 共9页
第3页 / 共9页
第4页 / 共9页
第5页 / 共9页
第6页 / 共9页
第7页 / 共9页
第8页 / 共9页
第9页 / 共9页
亲,该文档总共9页全部预览完了,如果喜欢就下载吧!
资源描述
Java 信息管理系统可行性研究报告一 可行性研究前提1.1 可行性研究背景及意义利用计算机进行学生信息管理,不仅能够保证准确、无误、快速输出,而且还可以利用计算机对有关信息进行查询,检索迅速、查找方便、可靠性高、存储量大、保密性好。要科学地实现信息化管理,开发一个适合学校的,能够进行信息存储、查询、修改等功能的信息管理系统是十分重要的。本课题就是针对便于学生信息管理的问题而设计的一个管理系统。1.2 实验技术选择本课题设计主要运用的技术有两个:java 项目开发和 oracle 对数据库的操作。这里主要介绍本课题为什么选用这两个开发技术:Java 语言特点 Java 是一种跨平台,适合于分布式计算环境的面向对象编程语言。具体来说,它具有如下特性: 下面我们将重点介绍 Java 语言的面向对象、平台无关、分布式、多线程、可靠和安全等特性。 面向对象 面向对象其实是现实世界模型的自然延伸。现实世界中任何实体都可以看作是对象。对象之间通过消息相互作用。另外,现实世界中任何实体都可归属于某类事物,任何对象都是某一类事物的实例。如果说传统的过程式编程语言是以过程为中心以算法为驱动的话,面向对象的编程语言则是以对象为中心以消息为驱动。用公式表示,过程式编程语言为:程序=算法+数据;面向对象编程语言为:程序=对象+消息。 所有面向对象编程语言都支持三个概念:封装、多态性和继承,Java 也不例外。现实世界中的对象均有属性和行为,映射到计算机程序上,属性则表示对象的数据,行为表示对象的方法(其作用是处理数据或同外界交互) 。所谓封装,就是用一个自主式框架把对象的数据和方法联在一起形成一个整体。可以说,对象是支持封装的手段,是封装的基本单位。Java 语言的封装性较强,因为 Java 无全程变量,无主函数,在 Java 中绝大部分成员是对象,只有简单的数字类型、字符类型和布尔类型除外。而对于这些类型,Java 也提供了相应的对象类型以便与其他对象交互操作。 多态性就是多种表现形式,具体来说,可以用“一个对外接口,多个内在实现方法”表示。举一个例子,计算机中的堆栈可以存储各种格式的数据,包括整型,浮点或字符。不管存储的是何种数据,堆栈的算法实现是一样的。针对不同的数据类型,编程人员不必手工选择,只需使用统一接口名,系统可自动选择。运算符重载(operatoroverload)一直被认为是一种优秀的多态机制体现,但由于考虑到它会使程序变得难以理解,所以 Java 最后还是把它取消了。 继承是指一个对象直接使用另一对象的属性和方法。事实上,我们遇到的很多实体都有继承的含义。例如,若把汽车看成一个实体,它可以分成多个子实体,如:卡车、公共汽车等。这些子实体都具有汽车的特性,因此,汽车是它们的“父亲” ,而这些子实体则是汽车的“孩子” 。Java 提供给用户一系列类(class) ,Java 的类有层次结构,子类可以继承父类的属性和方法。与另外一些面向对象编程语言不同,Java 只支持单一继承。 平台无关性 Java 是平台无关的语言是指用 Java 写的应用程序不用修改就可在不同的软硬件平台上运行。平台无关有两种:源代码级和目标代码级。C 和 C+具有一定程度的源代码级平台无关,表明用 C 或 C+写的应用程序不用修改只需重新编译就可以在不同平台上运行。Java 主要靠 Java 虚拟机(JVM)在目标码级实现平台无关性。JVM 是一种抽象机器,它附着在具体操作系统之上,本身具有一套虚机器指令,并有自己的栈、寄存器组等。但 JVM 通常是在软件上而不是在硬件上实现。 (目前,SUN系统公司已经设计实现了 Java 芯片,主要使用在网络计算机 NC 上。另外,Java 芯片的出现也会使 Java 更容易嵌入到家用电器中。 )JVM 是 Java 平台无关的基础,在 JVM 上,有一个 Java 解释器用来解释 Java 编译器编译后的程序。Java 编程人员在编写完程序后,通过 Java 编译器将 Java 源程序编译为 JVM 的字节代码。任何一台机器只要配备了 Java 解释器,就可以运行这个程序,而不管这种字节码是在何种平台上生成的。另外,Java 采用的是基于 IEEE 标准的数据类型。通过 JVM 保证数据类型的一致性,也确保了 Java 的平台无关性。 Java 的平台无关性具有深远意义。首先,它使得编程人员所梦寐以求的事情(开发一次软件在任意平台上运行)变成事实,这将大大加快和促进软件产品的开发。其次 Java 的平台无关性正好迎合了“网络计算机”思想。如果大量常用的应用软件(如字处理软件等)都用 Java 重新编写,并且放在某个Internet 服务器上,那么具有 NC 的用户将不需要占用大量空间安装软件,他们只需要一个 Java 解释器,每当需要使用某种应用软件时,下载该软件的字节代码即可,运行结果也可以发回服务器。目前,已有数家公司开始使用这种新型的计算模式构筑自己的企业信息系统。 分布式 分布式包括数据分布和操作分布。数据分布是指数据可以分散在网络的不同主机上,操作分布是指把一个计算分散在不同主机上处理。 Java 支持 WWW 客户机/服务器计算模式,因此,它支持这两种分布性。对于前者,Java 提供了一个叫作 URL 的对象,利用这个对象,你可以打开并访问具有相同 URL 地址上的对象,访问方式与访问本地文件系统相同。对于后者,Java 的 applet 小程序可以从服务器下载到客户端,即部分计算在客户端进行,提高系统执行效率。 Java 提供了一整套网络类库,开发人员可以利用类库进行网络程序设计,方便得实现 Java 的分布式特性。 可靠性和安全性 Java 最初设计目的是应用于电子类消费产品,因此要求较高的可靠性。Java 虽然源于 C+,但它消除了许多 C+不可靠因素,可以防止许多编程错误。首先,Java 是强类型的语言,要求显式的方法声明,这保证了编译器可以发现方法调用错误,保证程序更加可靠;其次,Java 不支持指针,这杜绝了内存的非法访问;第三,Java 的自动单元收集防止了内存丢失等动态内存分配导致的问题;第四,Java 解释器运行时实施检查,可以发现数组和字符串访问的越界,最后,Java 提供了异常处理机制,程序员可以把一组错误代码放在一个地方,这样可以简化错误处理任务便于恢复。 由于 Java 主要用于网络应用程序开发,因此对安全性有较高的要求。如果没有安全保证,用户从网络下载程序执行就非常危险。Java 通过自己的安全机制防止了病毒程序的产生和下载程序对本地系统的威胁破坏。当 Java 字节码进入解释器时,首先必须经过字节码校验器的检查,然后,Java 解释器将决定程序中类的内存布局,随后,类装载器负责把来自网络的类装载到单独的内存区域,避免应用程序之间相互干扰破坏。最后,客户端用户还可以限制从网络上装载的类只能访问某些文件系统。 上述几种机制结合起来,使得 Java 成为安全的编程语言。 多线程 线程是操作系统的一种新概念,它又被称作轻量进程,是比传统进程更小的可并发执行的单位。 C 和 C+采用单线程体系结构,而 Java 却提供了多线程支持。Java 在两方面支持多线程。一方面,Java 环境本身就是多线程的。若干个系统线程运行负责必要的无用单元回收,系统维护等系统级操作;另一方面,Java 语言内置多线程控制,可以大大简化多线程应用程序开发。Java 提供了一个类 Thread,由它负责启动运行,终止线程,并可检查线程状态。Java 的线程还包括一组同步原语。这些原语负责对线程实行并发控制。利用 Java 的多线程编程接口,开发人员可以方便得写出支持多线程的应用程序,提高程序执行效率。必须注意地是,Java 的多线程支持在一定程度上受运行时支持平台的限制。例如,如果操作系统本身不支持多线程,Java 的多线程特性可能就表现不出来。 oracle 数据库的特点无范式要求,可根据实际系统需求构造数据库。 采用标准的 SQL 结构化查询语言。具有丰富的开发工具,覆盖开发周期的各阶段。支持大型数据库,数据类型支持数字、字符、大至 4GB 的二进制数据,为数据库的面向存储提供数据支持。具有第四代语言的开发工具(SQL*formS、SQL*REPORTS、SQL*MENU 等) 。具有字符界面和图形界面,易于开发。通过 SQL*DBA 控制用户权限,提供数据保护功能,监控数据库的 运行状态,调整数据缓冲区的大小。 分布优化查询功能。具有数据透明、网络透明,支持异种网络、异构数据库系统。并行 处理采用动态数据分片技术。支持客户机/服务器体系结构及混合的体系结构(集中式、分布式、 客户机/服务器) 。实现了两阶段提交、多线索查询手段。 支持多种系统平台(HPUX、SUNOS、OSF/1、VMS、 WINDOWS、WINDOWS/NT、OS/2) 。数据安全保护措施:没有读锁,采取快照 SNAP 方式完全消除了分布读写冲突。自动检测死锁和冲突并解决。 数据安全级别为 C2 级(最高级) 。 数据库内模支持多字节码制,支持多种语言文字编码。具有面向制造系统的管理信息系统和财务系统应用系统。综上所述,选择 java 作为开发语言,oracle 作为数据库开发工具是个不错的选择。java 语言的面向对象、平台无关、分布式、多线程、可靠和安全等特性,使得开发出来的项目具有健壮性、可维护性、可移植性等特点。Oracle是目前最具权威的数据库产品,它具有的兼容性、可移植性、可联结性、高生产率和开放性的特点,使它成为当今众多的程序开发人员首选的数据库开发工具。所以本课题选择 java 和 oracle 作为开发技术是为今后开发更复杂的项目打下基础,以免到时候遇到相关的技术问题而不知所措。1.3 课题实现技术的简要说明 本课题主要运用了 java 图形编程和 oracle 数据库的操作。Java 图形编程给用户提供了一个直观、易于与用户进行交互的图形界面。在图形编程中,运用了大量的 java.swing 包中的类,之所以选择 swing 包中的类而不选 java.awt 包中的类,主要是 swing 包中的类能给用户提供更好的观感。oracle 数据库的操作这部分内容分成三部分来实现:首先,编写对数据库操作的类,包括:连接数据库、执行 sql 语句、关闭数据库连接等。其次,编写一个用于对学生信息进行数据库操作的类,包括:学生信息的增加、修改、删除和查询等。最后,编写一个用于对课程相关信息进行数据库操作的类,包括:对课程信息的增加、修改、删除、查询等等。通过结合图形编程和数据库编程,从而基本上实现了学生信息管理的基本功能,由于本人技术上的不足,难免有些地方需要改进,这些存在的问题都将成为本人前进的动力,并在日后更加完善本课题的设计。二 可行性研究分析2.1 可行性分析 1. 设计题目:学生信息管理系统2. 功能需求系统开发的总体任务是实现学生信息管理的系统化,规范化和自动化。系统功能分析是在系统开发总体任务的基础上完成的。本次设计的学生信息管理系统需要完成的功能主要有:1) 学生信息的输入,包括学生基本信息、课程信息和成绩信息等。2) 学生信息的修改、删除、统计、查询、显示,包括学生基本信息、课程信息和成绩信息等系统的性质为管理软件,因而数据库的设计与操纵是系统设计的核心。这里从两方面分析技术上的可行性。首先,对于 java 编程部分,java 课已经开过。因此在课题设计中,对 java图形编程方面的问题都能迎韧而解。其次,对于数据库的有关知识,本人运用了大量的时间对相关书籍的阅读以及上机实验,基本上掌握了运用 oracle 数据库技术,具备一定的系统分析与设计能力,熟悉数据库的设计与操纵;因而该系统的实现在技术上是可行的。关于编制 Java 学生信息管理系统的可行性研究报告书关于编制 Jav
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号