高校项目经费到账与评分.docx
- 文档编号:26950570
- 上传时间:2023-06-24
- 格式:DOCX
- 页数:43
- 大小:499.99KB
高校项目经费到账与评分.docx
《高校项目经费到账与评分.docx》由会员分享,可在线阅读,更多相关《高校项目经费到账与评分.docx(43页珍藏版)》请在冰豆网上搜索。
高校项目经费到账与评分
摘要
系统采用ASP.NET与SQLServer2005,按照面向对象的软件工程的步骤进行开发,并充分考虑软件可维护性,软件的模块划分满足高内聚、低耦合的原则。
程序的内部有较详细的注释和统一的编码格式,并充分考虑可扩展性。
设计按标准化、规范化、构件化实现。
采用软件构件化的开发方式,使系统结构分层,业务与实现分离,逻辑与数据分离;以统一的服务接口规范为核心,使用开放标准。
本文对按照软件开发的各个步骤进行具体介绍,其中着重介绍了软件需求分析、概要设计、详细设计中数据库的设计、实现与调试等。
首先,在“前言”中对高校项目经费到账管理系统在现代网络系统中所处的地位进行简要的介绍,使读者对本课题有一个大致的了解;然后,按进行开发过程顺序的描述,其中包括部分主要图表以方便读者的阅读和理解;最后,对整个开发过程进行了总结。
关键词:
构件化;高校项目经费到账管理系统;.NET;
1前言
1.1高校项目经费管理背景
项目经费是科研项目顺利进行的保障,经费管理是项目管理的核心。
针对高校项目经费管理中存在的预算不合理、经费使用缺乏统一管理等问题,提出了完善项目经费预算制度、建立健全经费管理体制等对策。
高校作为我国高层次人才的聚居地,不仅担负着培养祖国栋梁的教育任务,同时还是我国开展科学研究的重要阵地。
近年来高校承担的科研项目、筹措的项目经费大幅提升,如何管好用好这些项目经费,已成为高校项目经费管理工作的重要内容。
本文从四个方面分别阐述了目前高校项目经费管理中存在的问题并给出了相应对策。
获得项目经费是科研项目得以进行的前提和保障,要取得项目经费首先要为科研项目编制预算,但目前我国在预算编制方面存在明显问题,主要表现为立项时的预算不能真实地反映获得预期成果所需要的项目成本。
预算缺乏科学性,约束力不够。
究其原因,有以下几点:
①项目负责人的预算意识淡薄,认为编制预算的主要目的是申报项目,申报成功后便可不按预算执行;②财务部门对科研项目的运行不熟悉,难以对项目经费的执行给予监督;[1]③一些隐性支出难在预算中体现。
所谓隐性支出即政策不支持但现实必须发生的支出。
如劳务费,政策规定大部分项目不允许将劳务费列入预算,但实际上所有项目在操作过程中都存在不同比例的劳务费支出,这就使预算的准确性大打折扣。
从课题的现状来看,我们可以看出这种基于桌面应用程序系统的最大的一个特点,那就是信息之间无法共享,使得信息成了一个孤岛。
为了改善这种信息孤岛模式,我们必须采用一些新技术来解决这些信息孤岛的问题。
而近年来兴起Web技术就给我们带来了时代的变迁,我们可以使用ASP.NET来开发该应用程序,该网站在响应速度上快,同时Web技术的应用,不仅实现了数据的实时性和共享性,而且Web服务的跨平台传输特性使得该软件的通用性更强,实用性更好。
1.2软件构件技术
构件(Component)是指应用系统中可以明确辨识的构成成分。
而可复用构件(ReusableComponent)是指具有相对独立的功能和可复用价值的构件。
可复用构件应具备以下属性:
①有用性(Usefulness):
构件必须提供有用的功能;②可用性(Usability):
构件必须易于理解和使用;③质量(Quality):
构件及其变形必须能正确工作;④适应性(Adaptability):
构件应该易于通过参数化等方式在不同语境中进行配置;⑤可移植性(Portability):
构件应能在不同的硬件运行平台和软件环境中工作。
随着对软件复用理解的深入,构件的概念已不再局限于源代码构件,而是延伸到需求、系统和软件的需求规约、系统和软件的构架、文档、测试计划、测试案例和数据以及其他对开发活动有用的信息。
这些信息都可以称为可复用软件构件。
与传统的软件开发方式相比,基于构件的软件开发方法有什么突破呢?
以下详述用构件化开发本系统的原因。
(1)体系结构:
软件体系结构代表了系统公共的高层次的抽象,它是系统设计成败的关键。
其设计的核心是能否使用重复的体系模式。
传统的应用系统体系结构从基于主机的集中式框架,到在网络的客户端上通过网络访问服务器的框架,都不能适应目前高校所处的商业环境,原因是:
高校过分地依赖于某个新闻的软件和硬件产品。
这种单一新闻使得高校难以利用计算新闻的免费市场,将计算基础设施的重要决定交给第三方处理,这显然不利于高校在合作伙伴之间共享信息。
不能适应远程访问的分布式、多层次异构系统。
封装的应用系统在出现某种组织需要时,难以用定制来维护系统,从而难以满足多变的需求。
不能实现分析、设计核心功能重用,最多只能实现代码重用。
如今,应用系统已经发展成为在Intranet和Internet上的各种客户端可远程访问的分布式、多层次异构系统。
CBSD为开发这样的应用系统提供了新的系统体系结构。
它是标准定义的、分布式、模块化结构,使应用系统可分成几个独立部分开发,可用增量方式开发。
这样的体系结构实现了CBSD的以下几点目标:
能够通过内部开发的、第三方提供的或市场上购买的现有构件,来集成和定制应用软件系统。
鼓励在各种应用系统中重用核心功能,努力实现分析、设计的重用。
系统都应具有灵活方便的升级和系统模块的更新维护能力。
封装最好的实践案例,并使其在商业条件改变的情况下,还能够被采用,并能保留已有资源。
由此看出,CDSD从系统高层次的抽象上解决了复用性与异构互操作性,这正是分布式网络系统所希望解决的难题。
(2)开发过程:
传统的软件开发过程在重用元素、开发方法上都与CBSD有很大的不同。
虽然面向对象技术促进了软件重用,但是,只实现了类和类继承的重用。
在整个系统和类之间还存在很大的缺口。
为填补这个缺口,人们曾想了许多方法,如系统体系结构、框架、设计模式等。
自从构件出现以来,软件的重用才得到了根本改变。
CBSD实现了分析、设计、类等多层次上的重用。
在分析抽象层上,重用元素有子系统、类;在设计层上重用元素有系统体系结构、子系统体系结构、设计模式、框架、容器、构件、类库、模板、抽象类等。
在软件开发方法上,CBSD引导软件开发从应用系统开发转变为应用系统集成。
建立一个应用系统需要重用很多已有的构件模块,这些构件模块可能是在不同的时间、由不同的人员开发的,并有各种不同的用途。
在这种情况下,应用系统的开发过程就变成对构件接口、构件上下文以及框架环境一致性的逐渐探索过程。
例如,在J2EE平台上,用EJB框架开发应用系统,主要工作是将应用逻辑,按sessionBean、entityBean设计开发,并利用JTS事务处理的服务实现应用系统。
其主要难点是事务划分、构件的部署与开发环境配置。
概括地说,传统的软件开发过程是串行瀑布式、流水线的过程;而CBSD是并发进化式,不断升级完善的过程。
(3)软件方法学 :
软件方法学是从各种不同角度、不同思路去认识软件的本质。
传统的软件方法学是从面向机器、面向数据、面向过程、面向功能、面向数据流、面向对象等不断创新的观点反映问题的本质。
整个软件的发展历程使人们越来越认识到应按客观世界规律去解决软件方法学问题。
直到面向对象方法的出现,才使软件方法学迈进了一大步。
但是,高层次上的重用、分布式异构互操作的难点还没有解决。
CBSD发展到今天,才在软件方法学上为解决这个难题提供了机会。
它把应用业务和实现分离,即逻辑与数据的分离,提供标准接口和框架,使软件开发方法变成构件的组合。
因此,软件方法学是以接口为中心,面向行为的设计。
归纳起来,CBSD的软件开发方法学应包括下面几方面:
对构件有明确的定义。
基于构件的概念需要有构件的描述技术和规范,如UML、JavaBean、EJB、Servlet规范等。
开发应用系统必须按构件裁剪划分组织,包括分配不同的角色。
有支持检验构件特性和生成文档的工具,确保构件规范的实现和质量测试。
总之,传统的软件方法学从草稿自顶向下进行,对重用没有提供更多的辅助。
CBSD的软件方法学要丰富得多,它是即插即用,基于体系结构,以接口为中心,将构件有机组合,它把自顶向下和自底向上方法结合起来进行开发。
(4)开发组织机构 :
传统软件的开发组织一般由分析员、设计员、程序员和测试员组成。
对一个小的应用系统来说,一个熟练的开发人员,可能兼顾以上多个角色。
但对CBSD来说,因为构件开发与应用系统集成往往是分开进行的,因此整个开发过程由六个角色来完成,他们是:
构件开发者也是构件供货商,这些大多数是中间件构件提供(续致信网上一页内容)者。
应用构件集成者针对某应用领域将已有构件组合成更大的构件模块或容器,作为系统部署的基本单元。
应用系统部署者将系统部署基本单元放入选定的平台环境或基本框架中,完成软件定制的要求。
开发平台服务器新闻提供服务器、操作系统和数据库等基本软件。
应用系统开发工具新闻提供构件公共设施服务。
系统管理员配置硬件、网络和操作系统,监督和维护应用系统者。
这六个角色的工作专业性很强,要兼顾成为多面手很不容易。
目前已形成构件开放市场,而且还很火红。
这也是当今软件人才大战所遇的一个困惑。
因此,在CBSD中,如何组织好开发队伍尤为重要,必须按本高校所具备人才来组织。
特别重要的是:
开发初期必须选好标准框架,以及统一的开发指导方针,保证在整个开发过程中,各角色能随时互相沟通。
一般来说,CBSD的人员素质决定了构件的重用率。
(5)构造方法 :
传统应用软件的构造是用白盒子方法,应用系统的实现全在代码中,应用逻辑和数据粘结在一起。
而CBSD的构造是用白盒子和黑盒子相结合的方法。
基于构件的框架是用两个概念来支持演变:
第一个概念是构件有很强的性能接口,使构件逻辑功能和构件模型的实现都隐藏起来。
这样,只要接口相同,构件就可以被替换。
第二个概念是隐式调用,即在基于构件的框架中,从来不直接给构件的接口分配地址,只在识别构件用户后才分配地址。
因此,构件用户只要了解接口要求和为构件接口提供的引用后的返回信息(该引用可能是一个构件,也可能是一个构件代理。
对构件用户来说,构件代理就是构件,不用区分)。
构件接口的信息并不存入构件内,而是存入构件仓库或注册处。
这样才能保证构件替换灵活,并很容易利用隐式调用去重新部署构件。
由于构件的实现对用户透明,因此也使构件能适应各种不同的个性化要求。
为此,构件提供自检和规范化两个机制。
自检保证在不了解构件的具体实现时,就能获得构件接口信息。
例如,JavaBean提供的自检机制是Reflection和BeanInfo,通过Reflection可直接获得Bean构件的全部方法,通过BeanInfo可直接获得构件的许多复杂信息。
规范化允许不访问构件就可以修改它,如JavaBean提供的规范化是propertysheet和customizer(定制器)。
通过propertysheet提供一组简单参数,修改Bean的属性。
复杂的修改由用户通过定制器设置参数完成。
1.3系统技术简介
1.3.1.NET框架
Microsoft.NET框架简化了在高度分布式Internet环境中的应用程序开发。
利用.NETFramework可以简化ASPWeb和XMLWebservices等关键技术的开发。
它包括下面几个主要组件[5]。
(1)公共语言运行库
公共语言运行库是.NET框架的基础,在执行时管理代码的代理,它提供核心服务(如内存管理、线程管理和远程处理),而且还强制实施严格的类型安全以及可确保安全性和可靠性的其他形式的代码准确性。
除此之外,它还在开发时期承担如生命周期管理、强类型命名、跨语言异常处理以及动态绑定之类的角色,以减少开发人员将事务逻辑转成可重用组件必须写的代码数量。
基于公共语言运行库开发的代码称为受控代码,它的运行步骤大体如下:
首先使用一种编程语言编写源代码,然后使用针对通用语言运行库的编译库生成独立于机器的Microsoft中间语言,同时产生运行所需的元数据,在代码运行时再使用即时编译器生成相应的机器代码来执行[6]。
(2)Microsoft.NET框架类库
Microsoft.NET框架类库是一个综合性的面向对象的可重用类型集合,可以使用它开发包含从传统的命令行或图形用户界面(GUI)应用程序到基于ASP.NET所提供的最新创新的应用程序(如Web窗体和X】,ILWebservices)在内的应用程序。
由于.NET框架具有良好的特性,开发人员可以选择任意框架所支持的编程语言进行开发,例如VC++.NET,C#.NET,VB.NET,J#.NET等,非常适合规模庞大的项目。
而且.NET集成开发环境还提供了多项目调试、网页调试、存储过程调试等强大功能,在很大程度上提高了调式效率。
此外,开发环境内部集成[7].NetRemoting和webservice技术,使开发远程访问程序变得异常简单,由于它们完全基于DIL和SOAP技术,使得异构环境下的信息通讯与集成也变得非常简单。
.NET框架下的数据库访问引擎使用的是ADO.NET,它封装了五个使用非常方便的效率非常高的数据库访问对象。
数据库服务器采用SQLServer2005,能和.NET很好的工作[8]。
1.3.2.NET平台数据库访问技术
ADO.NET是适应.NETFramework的一种数据访问技术,该技术是由现在的Activex数据对象(ADO)技术发展而来的,在功能上比ADO增进不少,尤其是为Web应用程序的设计提供了一个更稳固、更具扩展性的数据存取技术。
ADO.NET是一组优化访问数据库专用对象集,为ASP.NET提供了完整的站点数据库访问解决方案。
使用ADO.NET的对象(如connection,cooand,DataAdapter,nataset,DataReader,DataView等)可以建立和管理数据库的连接,从数据库服务器获取数据,并执行更新、删除、添加数据等操作。
基于NETFramework的ASPNET通过最新的ADONET数据存取技术来实现对各数据库的操作,ADONET采用离线的方式供用户存取数据,提高了分散式应用程序的效率和可扩展性[9]。
利用ASPNET的对象开发技术设计一些常用的网页配件,将会使我们的工作事半功倍,总之.基于NETFramework的ASP.NET与ADONET技术将使网络开发更加方便快ASPNET技术将成为未来几年中广泛应用的网络开发工具。
在本论文中,采用ASP.NET技术结合ADONET技术进行Web的开发。
ADONET的结构图如图2-1所示。
图2-1ADO.NET结构图
1.3.3C#简介
C#是微软公司开发基于VisualStudo.NET集成开发环境网络平台的较新产品,集成C语言、C++、VB和.NET各语言所长,是一款方便功能较丰富齐全的面向对象编程工具[10]。
该工具包含了.NET开发的各种语言,其中也包括了C#语言。
Csharp是微软公司在2000年6月发布的一种新的编程语言,并定于在微软职业开发者论坛(PDC)上登台亮相。
C#是微软公司研究员AndersHejlsberg的最新成果。
C#看起来与Java有着惊人的相似;它包括了诸如单一继承、界面、与Java几乎同样的语法,和编译成中间代码再运行的过程。
但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NETwindows网络框架的主角。
C#(CSHARP)是微软对这一问题的解决方案。
C#是一种最新的、面向对象的编程语言。
它使得程序员可以快速地编写各种基于MICROSOFT.NET平台的应用程序,MICROSOFT.NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域[11]。
正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选——无论是高级的商业对象还是系统级的应用程序。
使用简单的C#语言结构,这些组件可以方便的转化为XML网络服务,从而使它们可以由任何语言在任何操作系统上通过INTERNET进行调用。
1.4SQLSERVER2005简介
MicrosoftSOLServer2005是Microsoft公司推出的一个性能优越的关系型数据库管理系统,支持多种操作系统平台,性能可靠、易于使用。
即支持小型数据库,也能支持企业级的大型数据库。
MicrosoftSOLServer2005,全面扩展了SQLServer7.0的性能及可靠性和易用性,是一个杰出的数据库平台,可用于大型联机事务处理、数据仓库、以及电子商务等,本课题采用此数据库技术[12]。
SQL(StructuredQueryLanguage),结构化查询语言。
SQL语言的主要功能就是同各种数据库建立联系,进行沟通。
按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。
SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。
绝大多数流行的关系型数据库管理系统都采用了SQL语言标准。
虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select,Insert,Update,Delete,Create,以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作[13].SQLSERVER2005基本信息如下:
SQLServer2005是一个关系数据库管理系统。
它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,于1988年推出了第一个OS/2版本。
在WindowsNT推出后,Microsoft与Sybase在SQLServer2005的开发上就分道扬镳了,Microsoft将SQLServer2005移植到WindowsNT系统上,专注于开发推广SQLServer2005的WindowsNT版本。
Sybase则较专注于SQLServer2005在UNIX操作系统上的应用。
SQLServer2005是一个全面的数据库平台,使用集成的商业智能(BI)工具提供了企业级的数据管理。
SQLServer2005数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。
SQLServer2005数据引擎是本企业数据管理解决方案的核心。
此外SQLServer2005结合了分析、报表、集成和通知功能。
这使您的企业可以构建和部署经济有效的BI解决方案,帮助您的团队通过记分卡、Dashboard、Webservices和移动设备将数据应用推向业务的各个领域[14]。
与MicrosoftVisualStudio、MicrosoftOfficeSystem以及新的开发工具包(包括BusinessIntelligenceDevelopmentStudio)的紧密集成使SQLServer2005与众不同。
无论您是开发人员、数据库管理员、信息工作者还是决策者,SQLServer2005都可以为您提供创新的解决方案,帮助您从数据中更多地获益。
1.5论文的章节安排
整篇论文是基于.NET为背景,从.NET的知识、体系结构等方面,介绍基于Web的商贸管理系统的设计与实现。
具体章节安排如下:
第一章绪论阐明了论文课题的提出、研究现状、意义,以及本课题研究内容。
第二章主要介绍了研究本课题的相关技术和个性技术的特征、功能和应用领域。
第三章介绍系统的需求分析,并重点分析了系统功能需求分析以及系统的UML图等。
第四章介绍系统设计,并对系统的数据库设计进行的重点分析。
本章主要针对系统总体设计、系统数据库设计、系统各模块设计等内容进行论述。
第五章进行系统实现设计的分析,包括界面分析和代码说明。
第六章进行系统测试及其运行效果。
对设计的系统进行测试,并分析运行效果。
第七章是结束语。
总结论文所做的主要工作及取得的研究成果;并对系统和.NET下一步要做的工作进行了分析。
2需求分析
2.1任务概述
2.1.1系统实现目标
本系统是一个基于VisualStudio.Net开发环境的高校项目经费到账管理系统管理平台,采用B/S架构,该系统可以与其他ERP模块的管理系统结合成完整的销售流系统。
为高校提供一个集中的,方便使用,可靠的,易扩展的管理平台。
实现了高校在项目经费到账管理的信息化,提高了高校的效率。
为高校提供了一个比较完整的高校项目经费到账管理系统解决方案。
2.1.2系统用户的特点
高校项目经费到账管理系统适用于中小型高校。
本系统的主要用户有管理员。
管理员需要具备一定的计算机知识,而且熟练撑握SQL语言,能够对数据库进行维护。
另外,管理员可根据本文档对软件在运行过程中出现的错误进行处理,而且可以基于本软件的基础进行扩展。
2.1.3假定和约束
高校项目经费到账管理系统必须在五月中旬完成,而且包括毕业论文。
在开发过程期间,需要与辅导老师进行密切交流。
以便对开发过程中遇到的问题能顺利解决。
在完成用户的全部需求的前提下,合理对系统进行扩展,使系统更加完善。
2.2需要规定
2.2.1对功能的规定
(1)部门管理:
部门基本数据有部门编号、部门名称、描述信息。
对这些数据及时加以维护。
(2)教师信息管理:
教师基本数据有教师档案信息。
对这些数据及时加以维护。
(3)项目信息管理:
根据定义好的项目经费类别和实际情况添加项目经费项,也可以修改和删除项目经费。
(4)项目经费类别管理:
项目经费类别管理,主要经费类别包括指定的集中,添加修改和删除项目经费类别。
(5)用户管理。
2.2.2输人输出要求
对于部份数据类型的数据输入,系统可自动判断其正确性并且给予提示。
例如,字符、数值、日期的类型输入错误等等。
但对于数据输入的格式,就由用户自行决定。
这一方面,系统不作严格要求。
2.3系统运行环境规定
2.3.1硬件环境
●服务端微型计算机配置:
a.操作系统:
Windows2000或WindowsXP;
b.CPU:
:
奔腾三1GMHz或以上
c.内存:
512MB或以上
d.硬盘:
80G或以上
e.数据库:
MicrosoftSQLServer2000或以上
●客户端微型计算机配置:
a.操作系统:
Windows2000或WindowsXP;
b.CPU:
:
奔腾三700MHz或以上
c.内存:
64MB或以上
d.硬盘:
10G或以上
2.3.2软件环境
●开发软件:
MicrosoftVisualStudio.Net2008;
●开发语言:
C#;
●数据库软件:
MicrosoftSQLServer2000;
●文档编写软件:
MicrosoftWord
2.3.3系统用户界面设计
(1)简单明了原则:
用户的操作要尽可能以最直接最形象最易于理解的方式呈现在用户面前。
对操作接口,直接点击高于右键操作,文字表示高于图标示意,尽可能的符合用户对类似系统的识别习惯。
(2)方便使用原则:
符合用户习惯为方便使用的第一原则。
其它还包括,实现目标功能的最少操作数原则,鼠标最短距离移动原则等。
(3)用户导向原则:
为了方便用户尽快熟悉系统,简化操作,应该尽可能的提供向导性质的操作流程。
(4)实时帮助原则:
用户需要能随时响应问题的用户帮助。
(5)提供高级自定义功能:
为熟悉计算机及软件系统的高级用户设置自定义功能,可以对已经确定的常规操作以及系统的方方面面进行符合自身习惯的自定义设置。
包括常规操作、界面排版、界面样式等种种自定义。
(6)界面色彩要求:
计算机屏幕的发光成像和普通视觉成像有很大的不同,应该注意这种差别作出恰当的色彩搭配。
对于需用户长时间使用的系统,应当使用户在较长时间使用后不至于过于感到视觉疲劳为宜。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高校 项目 经费 评分
![提示](https://static.bdocx.com/images/bang_tan.gif)