二、系统分析 a、系统设计的思想 仓库即时查询信息系统的基本设计思想是把企业业务信息即时供内部员工了解,利用ASP+ACCESS进行编程。此子系统的系统结构如图所示。 b、可行性分析: 可行性分析也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。 (1) 经济可行性:主要是对项目的经济效益进行评价,本系统开发经费对于本单位在经济上是可以接受的,并且本系统实施后可以显著提高工作效率,有助于学院完全实现信息化管理。所以本系统在经济上是可行的。 (2) 技术上的可行性:技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。该管理系统采用了当前新兴的Browser/Server模式进行开发。三层的Browser/Server体系结构具有许多传统Client/Server体系结构不具备的优点,而且又紧密的结合了Internet/Intranet技术,是技术发展的大势所趋,它把应用系统带入了一个崭新的发展时代。数据库服务器选用MICROSOFT的ACCESS数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系统的软件开发平台已成熟可行。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。 (3) 时机可行性:目前,企业内部局域网络早已经假设好,从而满足企业内各职能部门,各直属职员连网需求。企业良好的网络设施为本系统开发企业信息化的系统提供了坚实的基础。 (4) 管理上的可行性:主要是管理人员是否支持,现有的管理制度和方法是否科学,规章制度是否齐全,原始数据是否正确等。规章制度和管理方法为系统的建设提供了制度保障。 综上所述,此系统开发目标已明确,在技术和经济等方面都可行,并且投入少、见效快。因此系统的开发是完全可行的。
c、需求分析: 在可行性分析阶段已经粗略的研究了该项目的需求,并分析了开发平台及软件的可行性,但为了准确的确定目标系统必须做什么,了解用户的明确需求,在企业相关部门进行了详细的调研, 进一步明确了实现系统的功能。 d、系统的主要技术分析: 本系统采用了当前最流行的B/S结构(即Browser/Server结构),Browser/Server的系统中,用户可以通过浏览器向分布在网络上的许多服务器发出请求。Browser/Server结构极大的简化了客户机的工作,客户机上只需安装、配置少量的客户端软件即可,服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。 在Browser/Server三层体系结构下,表示层(Presentation)、功能层(Business Logic)、数据层(Data Service)被分割成三个相对独立的单元: 第一层--表示层:Web浏览器 在表示层中包含系统的显示逻辑,位于客户端。它的任务是由Web浏览器向网络上的某一Web服务器提出服务请求,Web服务器对用户身份进行验证后用HTTP协议把所需的主页传送给客户端,客户机接受传来的主页文件,并把它显示在Web浏览器上。 第二层--功能层:具有应用程序扩展功能的Web服务器 在功能层中包含系统的事务处理逻辑,位于Web服务器端。它的任务是接受用户的请求,首先需要执行相应的扩展应用程序与数据库进行连接,通过SQL等方式向数据库服务器提出数据处理申请,而后等数据库服务器将数据处理的结果提交给Web服务器,再由Web服务器传送回客户端。 第三层--数据层:数据库服务器 在数据层中包含系统的数据处理逻辑,位于数据库服务器端。它的任务是接受Web服务器对数据库操纵的请求,实现对数据库查询、修改、更新等功能,把运行结果提交给Web服务器。 从上面的分析中可以看出,三层的Browser/Server体系结构是把二层Client/Server结构的事务处理逻辑模块从客户机的任务中分离出来,由单独组成的一层来负担其任务,这样客户机的压力大大减轻了,把负荷均衡地分配给了Web服务器,于是由原来的两层的Client/server结构转变成三层的Browser/Server结构。 三、软件开发平台 软件平台:IIS+ASP+ACCESS 开发语言:ASP 数 据 库:ACCESS 服 务 器:WINDOWS 2000 SERVER或更高版本 网络结构: 公司提供一台服务器并接入公司局域网,用以放置ASP系统代码和ACCESS数据库,专人负责维护,以保证数据的有效性,公司所有业务员每人分发一个用户名和密码,并通过IE浏览器登录查询系统。 安全保障: 用户权限分四个级别,分别为:系统管理员、业务总监、仓库管理员、普通员工;系统管理员拥有所有权限;业务总监和仓库管理员可以入库和修改库存情况;普通员工可以查询每天的产品价格和库存情况。
四、数据分析 在仓库即时查询系统中,主要是产品价格、产品库存查询输入的数据信息,并且以适当的方式输出给用户。数据类型决定了处理的方式也就是算法,因此,数据是系统实现分析的起点。在本文中使用数据流图来分析数据的流动和处理。 因为对每一种对象的管理都比较类似,在此仅以产品查询为例,来分析一下本系统中的数据流向。 首先,对普通职员来说,本系统接受职业的查询请求,经过对查询请求的分析得到用户的需要。然后把该需要转化为结构化查询语言SQL语句,送入数据库系统中。数据库根据SQL语句,查询出结果,送回本系统。系统接收到数据库返回的查询结果集,经过一定的分析处理,转化为ASP页面,返回给客户端浏览器。 其次,对管理员用户来说,本系统除了完成普通职员的查询请求之外,还接收管理员用户的数据修改请求。经过对数据修改请求的检查,确定该请求是获得权限的管理员用户发出,即为有效请求之后。对该请求进行分析,得到请求的具体内容。然后转化为结构化查询语言SQL语句,送入数据库系统,更新数据库信息。 五、软件基本功能 1、系统登录 2、产品价格及库存信息表 3、产品查询 4、修改用户登录密码 5、添加产品 6、修改产品库存信息及价格 7、删除产品 8、退出系统 六、数据库设计 a、数据库的引入: 数据库技术从60年代中期至今只有不到40年的历史,但其发展速度之快是其它技术所不及的。它已由第一代的层次型、网状型数据库,第二代的关系型数据库发展到今天以面向对象为主要模型的数据库,即第三代数据库。数据库技术和网络通信技术、面向对象编程技术、并行计算机技术、人工智能技术相互融合、相互渗透,促进了数据库技术的广泛应用。 数据库(Database),是按照数据结构来组织、存储和管理数据的仓库,是用于查询的大量数据的存储区域。使用数据库可以带来许多好处:如减少了数据的冗余度,从而大大地节省了数据的存储空间,实现数据资源的充分共享等等。此外,数据库技术还为用户提供了非常简便的使用手段,使用户易于编写有关数据库应用程序。特别是近年来推出的计算机关系数据库管理系统,操作直观,使用灵活,编程方便,功能强大,环境适应广泛,数据处理能力极强。 数据库的设计是指对一个给定的应用环境,构造数据库模式,建立数据库及其应用系统,满足各种用户需求。作为信息资源开发、管理和服务的一种有效的手段,数据库技术的应用已越来越广泛,从小型的单项事务处理系统到大型的信息系统大都用先进的数据库技术来保持系统数据的安全性、完整性和共享性。对一个实际的系统来说,数据库表的设计在遵循数据库理论的同时,必须能用开发工具来实现用户在各方面提出的功能要求。 一个真正的、完整的站点是离不开数据库的,因为少量的数据,如网页访问人数等完全可以存储在文本文件中,但实际应用中,需要保存的数据远不止这一点点,而且这些数据之间往往还有关联,利用数据库来管理这些数据,可以很方便的查询和更新。可以说一个动态网站的建设是离不开一个设计最优的数据库的。我们现在可以使用的数据库有很多种,如:Fox数据库(.dbf)、Access数据库(.mdb)、DB2、Informix、Oracle和SQL Server等等,在本次设计中,选择了MICROSOFT的ACCESS作为后台数据库工具。 b、数据库的物理结构: 表名:ck 字段名 数据类型 备注 Id 自动编号 主键 Prod_name 文本 产品名称 Prod_num 数字 产品数量 Prod_price 数字 产品单价 Prod_com 文本 供货厂家 Add_date 日期/时间 入库日期 Update_time 日期/时间 最后更新日期 表名:user_info 字段名 数据类型 备注 Id 自动编号 主键 Username 文本 用户名 Password 文本 密码 Department 文本 部门 Job 文本 岗位 Level 数字 权限级别 date 日期/时间 创建日期 c、数据库的完整性 数据库的完整性是指数据的正确性和相容性。数据库管理系统(DBMS)用一定的机制来检查数据库中的数据是否满足规定的条件——完整性约束条件,数据的约束条件是语义的体现,将作为模式的一部分存入数据库中。 本系统中定义了表与表之间的联系有助于实现完整性规则,一般在程序中实现具体的完整性控制。 d、数据库的安全性: 数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏。在数据库系统中,大量的数据集中存放,而且为许多用户直接共享,是宝贵的信息资源,系统的安全保护措施就显得更为重要,它保护数据库防止恶意的破坏和非法的存取。 本系统包括数据库的安全和服务器的安全。采用管理员表示和鉴定的方法实现数据库的安全,此安全管理措施并不在前台开发工具中实现,而是在后台数据库中实现。在登录数据库时,系统让管理员户表示自己的身份,不同的管理员权限不同,系统进行核实,鉴别此管理员是否为合法用户,若是,系统进一步核实用户,通常要求用户输入口令,系统和对用户口令以鉴别用户身份。服务器的安全也是通过用户在登录服务器时输入合法的用户名和密码来实现的。这是一种简单可行的方法,实现起来比较方便。没有采用更加复杂的系统安全管理措施是因为本管理系统是应用在企业内部网中,采用安全管理措施主要是为了防止没有修改权限的用户无意间修改了数据,因此采用用户标识和鉴定的安全管理措施就能够保障数据库的安全性。 七、系统总体功能模块 八、程序设计 现在将讨论怎样具体的实现系统中每个模块的功能,也就是系统的详细设计过程。详细设计的根本目标是确定应该怎样具体的实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。 详细设计阶段的任务在于要设计出程序的“蓝图”,因此,详细设计的结果基本上决定了最终的程序代码的质量。详细设计的目标不仅仅是逻辑上正确地实现每个模块的功能,更重要的是设计出的处理过程应该尽可能简明易懂。结构程序设计技术是实现上述目标的关键技术,因此是详细设计的逻辑基础。 九、程序设计思想 常见的设计思想有两种:结构化和面向对象化,本系统采用的是面向对象的设计思想,下面简单介绍一下两者的不同以及面向对象程序设计的优点。 传统的结构化开发过程包括软件目标的功能分解,以及使用正确的参数和返回值来创建函数。首先分析需求,确定功能,然后以函数的形式进行建模。在一个Web应用中很可能有上千个函数,这些函数能够不受限制的互相调用,因此在访问某个变量时,很难保证它不是正在被其他的函数访问或者修改。用ASP脚本来开发Web应用时就是上面所说的情况。只使用ASP而不使用任何自定义标记,在Web应用的规模比较小时还不会出现太多的问题,但是在Web应用的规模增大时就肯定会出现问题。这些代码也许能够满足功能上的需要,却不能达到非功能性的要求。 在结构化开发方法面临问题的时候,使用面向对象的方法进行分析、设计和开发就可以解决一部分问题。面向对象的分析和设计方法源于现实生活中的模块化的思想。对象是提供一组相关功能的实体,对象之间互相作用从而完成一定的任务。面向对象开发方法包括对目标的模块化,以及用类的形式对数据和函数进行封装。面向对象方法主要有以下四个特征: (1) 抽象性 抽象是对象建模参数的选择,这是进行分析后得到的结果。这意味着是由分析人员来选择一定的参数,以表示对象,这是对象模型化的第一步。 (2) 封装性 由于某些原因,类中的数据和方法不需要对其他的对象公开,我们可以将其隐藏在类的内部,这是对象模块化过程中很重要的一步。这个步骤将确保对象的行为以简单的借口出现,而复杂的执行过程都被隐藏了。比如,ASP就可以为Web网页开发人员提供一个简单的接口。 (3) 继承性 在一个现存对象的基础上创建一个新的对象,这个过程称为继承。这样我们可以不必重写所有的代码,只需在新对象中编写需要更新的代码就可以了。 (4) 模块化 为了减少独立工作小组之间的依赖性,软件系统中必须使用模块。 十、数据库连接技术 本系统在数据库连接方面,使用了数据库ADO技术。首先,在程序中建立一个CONN.INC的文件,里面用来放置数据库连接代码,在代码中先定义conn和connstr变量,conn用来创建数据连接对象,connstr用来存放连接字符串,使用ado中connection对象的open方法就可以连接ACCESS数据库了。具体在程序中引用需要以下代码: dim conn,connstr set conn=server.createobject("adodb.connection")''创建连接对象 connstr="Provider=Microsoft.jet.oledb.4.0;Data source="&server.mappath("data/db.asp") conn.open connstr''开始连接 这样,在数据库连接的方面,运用数据库ADO连接技术能获取比较大的效率。 |