安工大软件开发技术报告.docx
《安工大软件开发技术报告.docx》由会员分享,可在线阅读,更多相关《安工大软件开发技术报告.docx(20页珍藏版)》请在冰豆网上搜索。
安工大软件开发技术报告
安徽工业大学
软件开发技术报告
课题名称
高校科研管理系统的设计与实现
学院
计算机学院
专业班级
计102
组长
成员
摘要
本系统采用ASP.NET作为界面,SQLServer2008为数据库来进行设计与开发。
该系统主要的功能是帮助科研相关人员管理学校科研项目。
基本功能包括人事基本信息维护、查询;项目信息维护、申报、审核、查询等。
本文档,简要阐述该系统的开发背景与开发环境,且对系统的构架进行分析,并由此划分出各个模块,有教师信息管理模块、项目管理管理模块、成果管理模块。
详细介绍了系统各个模块与功能的实现原理,本文详细介绍了网上系统的需求分析、功能设计和系统设计等,并通过流程图和文字加以解释说明。
在系统设计中给出数据库的设计和本系统的总体设计方案,在系统实现中具体介绍了各个功能的所能实现的情况和主要代码,同时附有运行界面图,最后总结开发阶段与测试阶段所遇到的问题与解决方法。
关键词:
高校科研管理、SQLServer2008、三层架构、Asp.Net
1.绪论
1.1高校科研理系统概述
1.1.1高校科研理系统系统开发背景
随着国家对科研的投入逐年增加,高等学校的科研工作得到了很大的支持,从而进入高速发展的时期,与此同时,高等学校如何对科研信息进行有效管理己经成为一个突出的问题。
同时在建设数字化校园的时代背景下,科研管理系统也是数字化校园建设中必不可少的一项重要内容。
通过科研管理系统建设,可以实现科研工作的网络化管理,形成一个动态的科研数据中心和科研管理沟通平台,全面、实时、准确提供学校的有关科研信息,服务于高校科研工作人员的工作,辅助领导进行科研管理决策,从而为科研管理人员开展工作提供极大的便利。
本课题研制的是数字化校园中的一个科研信息管理的子系统。
这个系统与共享数据中心交互,可以随时录入科研成果,帮助教师管理好个人的科研信息;同时,科研管理部门也可以即时准确统计结果,完成各种项目的审批和管理,等等。
通过这个科研信息管理系统,不仅可以减少员工的工作量,而且可以减少办公费用,大大提高工作效率。
1.2开发环境与工具介绍
1.2.1MicrosoftVisualStudio2010简介
VisualStudio是微软公司推出的开发环境。
是目前最流行的Windows平台应用程序开发环境。
VisualStudio2010版本于2010年4月12日上市,其集成开发环境(IDE)的界面被重新设计和组织,变得更加简单明了。
VisualStudio2010同时带来了NETFramework4.0、MicrosoftVisualStudio2010CTP(CommunityTechnologyPreview--CTP),并且支持开发面向Windows7的应用程序。
除了MicrosoftSQLServer,它还支持IBMDB2和Oracle数据库。
1.2.2SQLServer2008介绍
SQLServer2008是一个重大的产品版本,它推出了许多新的特性和关键的改进,使得它成为至今为止的最强大和最全面的SQLServer版本。
这篇文章详细介绍了MicrosoftSQLServer2008中的新的特性、优点和功能……在现今数据的世界里,公司要获得成功和不断发展,他们需要定位主要的数据趋势的愿景。
微软的这个数据平台愿景帮助公司满足这些数据爆炸和下一代数据驱动应用程序的需求。
微软将继续投入和发展以下的关键领域来支持他们的数据平台愿景:
关键任务企业数据平台、动态开发、关系数据和商业智能。
1.2.3ADO.NET介绍
ADO.NET的名称起源于ADO(ActiveXDataObjects),这是一个广泛的类组,用于在以往的Microsoft技术中访问数据。
之所以使用ADO.NET名称,是因为Microsoft希望表明,这是在NET编程环境中优先使用的数据访问接口。
1.2.4Linq查询介绍
LINQ,语言集成查询(LanguageINtegratedQuery)是一组用于c#和VisualBasic语言的扩展。
它允许编写C#或者VisualBasic代码以查询数据库相同的方式操作内存数据。
从技术角度而言,LINQ定义了大约40个查询操作符,如select、from、in、where以及orderby(C#中)。
使用这些操作符可以编写查询语句。
不过,这些查询还可以基于很多类型的数据,每个数据类型都需要一个单独的LINQ类型。
经过了最近20年,面向对象编程技术(object-oriented(OO)programmingtechnologies)在工业领域的应用已经进入了一个稳定的发展阶段。
程序员现在都已经认同像类(classes)、对象(objects)、方法(methods)这样的语言特性。
考察现在和下一代的技术,一个新的编程技术的重大挑战开始呈现出来,即面向对象技术诞生以来并没有解决降低访问和整合信息数据(accessingandintegratinginformation)的复杂度的问题。
其中两个最主要访问的数据源与数据库(database)和XML相关。
LINQ提供了一条更常规的途径即给.NetFramework添加一些可以应用于所有信息源(allsourcesofinformation)的具有多种用途(general-purpose)的语法查询特性(queryfacilities),这是比向开发语言和运行时(runtime)添加一些关系数据(relational)特性或者类似XML特性(XML-specific)更好的方式。
这些语法特性就叫做.NETLanguageIntegratedQuery(LINQ)。
2.可行性研究
2.1技术可行性
系统采用B/S模式,以SQLServer数据库为后台核心应用、以管理为目的的信息平台。
人事信息管理,项目管理,成果管理等大部分的功能通过校园内的局域网实现,有利于提高系统的效率和安全性;项目的申报、审核等均可在系统上进行,有利于提高科研相关人员的工作效率。
用户在经过身份确认后,系统按照权限的不同向其不同各种类型用户所对应的功能。
实现系统的各模块功能需要用到Asp.Net开发技术和数据相关技术,以及对用户权限管理的授权机制。
现有的相关技术已经成熟,完全可以实现系统开发目标。
同时系统采用三层架构作为架构设计模式,一定程度上提高了系统的可维护性、可扩展性。
由于采用B/S模式,方便的同时也带来了数据的安全性问题。
对此,系统采用了验证与授权、数据加密、基于角色的访问控制等手段解决安全性问题。
2.2经济可行性
使用该系统能可以大大提高科研相关人员的工作效率,通过系统对科研项目的管理避免人为管理时参生的多种问题,综合多方面考虑,投入远大于收益,因此从经济可行性方面分析可行。
2.3操作可行性
系统开发技术成熟,系统使用者主要是高校教职工,对计算机都有一定的了解。
2.4结论
经上述可行性分析,项目的开发可以立即进行。
3.系统需求分析
3.1用户需求分析
3.1.1用户需求
一般用户使用该管理软件能申报项目,科研成果;对个人所负责的项目查找,修改申请,经费认领申请;对科研成果查看,统计分析等。
相关管理人员利用该软件对申报立项的项目进行审批。
3.1.2系统功能需求
个人信息管理:
用户信息的录入,查询,修改。
个人对自己信息的确认,如果有误提供证明,由管理人员更改。
由个人信息能链接到自己参与的项目信息。
项目管理:
系统初始阶段对各科研项目的录入,确认。
项目申报,对申报项目审核,审批等。
其中审批包含多级审批,由项目能链接到该项目负责人信息。
科研经费管理:
对等待认领的科研经费发布通知,项目负责人申请经费认领,管理员确认审批。
成果管理:
科研成果的录入,查询等。
用户可将自己项目取得的成果进行申报。
科研成果分为一下几种:
论文类、图书著作类、发明专利类、应用类。
3.1.3系统性能需求
能够对系统定期进行维护,进行一系列改动,各表之间交叉的部分可以互相查询,但修改只能在本表中进行。
3.1.4数据分析
3.2系统DFD图
申报书
查询表
项目单
教职工
科研管理人员
统计表
3.3系统E-R图
局部ER图:
教职工
项目
系统全局核心ER图
4.系统设计
4.1数据库逻辑结构设计
表名
字段名
主键
类型
长度
字段说明
FR_FruitType
FruitTypeCode
√
nvarchar
20
成果类型
FruitTypeName
nvarchar
30
FR_Paper
PaperCode
√
nvarchar
20
论文入库号
论文
PaperName
nvarchar
50
论文题目
ProjCode
nvarchar
20
论文依赖的项目
PaperTypeCode
nvarchar
20
论文类型(SCI\IE等)
PaperStatusCode
nvarchar
20
论文状态
SCI
numeric
5
影响因子
WebQueryUrl
nvarchar
50
网络查询链接
FR_PaperStatus
PaperStatusCode
√
nvarchar
20
论文状态
PaperStatusName
nvarchar
30
FR_PaperType
PaperTypeCode
√
nvarchar
20
论文类型编码
论文类型
PaperTypeName
nvarchar
30
FR_Patent
PatentCode
√
nvarchar
20
专利入库号
专利
PatentNo
nvarchar
40
专利号
PatentName
nvarchar
30
专利名称
PatentTypeCode
nvarchar
20
专利类别
ProjCode
nvarchar
20
FR_PatentType
PatentTypeCode
√
nvarchar
20
专利类型编码
专利类型
PatentTypeName
nvarchar
30
FR_Work
WorkCode
√
nvarchar
20
入库号
著作
WorkName
nvarchar
30
著作名称
PublishDate
date
10
出版时间
ProjCode
nvarchar
20
WorkTypeCode
nvarchar
20
著作类别
HR_Degree
DegreeCode
√
nvarchar
20
学位
DegreeName
nvarchar
30
HR_Depart
DepCode
√
nvarchar
20
部门
DepName
nvarchar
30
DepLeadger
nvarchar
20
DepAddr
nvarchar
50
DepTypeCode
nvarchar
20
ParentDep
nvarchar
20
DepDisc
text
2.1E+09
HR_DepType
DepTypeCode
√
nvarchar
20
部门类型
DepTypeName
nvarchar
20
HR_EduBackground
EduBackground
√
nvarchar
20
学历
EduBackgroundName
nvarchar
30
HR_Employee
EmpCode
√
nvarchar
20
教职工
EmpName
nvarchar
30
Birth
date
10
Sex
nvarchar
1
DepCode
nvarchar
20
PositionCode
nvarchar
20
TitleCode
nvarchar
20
NationCode
nvarchar
20
HomeTown
nvarchar
50
PoliStatesCode
nvarchar
20
StaffTypeCode
nvarchar
20
EmpTypeCode
nvarchar
20
Phone
nvarchar
30
Email
nvarchar
30
Graduated
nvarchar
40
GraduatedPro
nvarchar
40
EduBackgroundCode
nvarchar
20
Degree
nvarchar
20
PostCode
nvarchar
20
PerSatus
nvarchar
20
IdNo
nvarchar
30
IdTypeCode
nvarchar
20
SubDirection
nvarchar
30
BankCard
nvarchar
30
TeacherNo
nvarchar
30
HR_EmpType
EmpTypeCode
√
nvarchar
20
教职工类型)
EmpTypeName
nvarchar
30
HR_FruitForm
FruitFormCode
nvarchar
20
成果形式
FruitFormName
nvarchar
30
HR_IdType
IdTypeCode
√
nvarchar
20
证件类型
IdTypeName
nvarchar
30
HR_Nation
NationCode
√
nvarchar
20
民族
NationName
nvarchar
15
HR_PerStatus
PerStatus
√
nvarchar
20
在职状态
PerStatusName
nvarchar
30
HR_PoliStates
PoliStatesCode
√
nvarchar
20
政治面貌
PoliStatesName
nvarchar
30
HR_Position
PositionCode
√
nvarchar
20
职位
PositionName
nvarchar
30
HR_Post
PostCode
√
nvarchar
20
职务
PostName
nvarchar
20
HR_StaffType
StaffTypeCode
√
nvarchar
20
编制类别
StaffTypeName
nvarchar
30
HR_Subject
SubjectCode
√
nvarchar
20
学科方向
SubjectName
nvarchar
40
学科代码
HR_Title
TitleCode
√
nvarchar
20
职称
TitleName
nvarchar
30
HR_TitleLevel
TitleLevelCode
√
nvarchar
20
职称级别
TitleLevelName
nvarchar
20
PM_AuditHistory
ProjCode
√
nvarchar
20
审核记录
ProjStatusCode
nvarchar
20
所批状态
AuditDate
√
date
10
审核日期
AuditUser
nvarchar
20
审核人
AuditResult
nvarchar
30
审核结果
Memo
text
2.1E+09
备注
PM_Project
ProjCode
√
nvarchar
20
项目
ProjName
nvarchar
30
ProjSourceCode
nvarchar
20
状态
ParentId
nvarchar
20
父项目
Leadger
nvarchar
20
负责人
FinanceNo
nvarchar
20
财务账号
SubjectCode
nvarchar
20
学科方向
MatFunds
numeric
18
配套经费
StartDate
date
10
开始日期
EndDate
date
10
结束日期
CreateUser
nvarchar
20
创建人
CreateDate
date
10
创建日期
ChangeUser
nvarchar
20
修改人
ChangeDate
date
10
CloseDate
date
10
ApplyDate
date
10
申请日期
Report
image
2.1E+09
可行性研究报告
ProjBasis
text
2.1E+09
立项依据
ExecResult
varchar
40
预期结果
ResMeaning
text
2.1E+09
研究意义
ResTypeCode
nvarchar
20
研究类别
ProjStatusCode
nvarchar
20
状态
ConMoney
numeric
18
合同金额
PM_ProjFundsClaim
ProjCode
√
nvarchar
20
经费申请
ApplyDate
√
date
10
ClaimDate
date
10
认领日期
ClaimMoney
numeric
18
认领钱
MoneyUse
varchar
50
经费用途
MoneyDepart
nvarchar
40
付款部门
CardType
nvarchar
20
入卡类型
CardNo
nvarchar
20
卡号
ClaimStatus
nvarchar
20
认领状态
Memo
text
2.1E+09
备注
PM_ProjMember
ProjCode
√
nvarchar
20
项目参与
MemberNo
√
nvarchar
20
参与人员编码
ProjMemberTypeCode
nvarchar
20
参与类别
WorkPercent
numeric
5
工作量百分比
PM_ProjMemberType
ProjMemberTypeCode
√
nvarchar
20
参与类型编码
参与类型
ProjMemberTypeName
nvarchar
30
类别名称
PM_ProjResult
ProjCode
√
nvarchar
20
项目成果
FruitTypeCode
nvarchar
20
最终成果形式
ResultFormCode
nvarchar
20
结题形式
ResultMemo
text
2.1E+09
结题摘要
EnMemo
text
2.1E+09
英文摘要
ResultDate
date
10
结题时间
ResultTypeCode
nvarchar
20
结题类型
ProjStatusCode
nvarchar
20
审核状态
FactMoney
numeric
18
实际支出经费
AppliDate
date
10
申请时间
PM_ProjSource
ProjSourceCode
√
nvarchar
20
项目来源编码
项目来源
ProjSourceName
nvarchar
30
来源
ProjSourceTypeCode
nvarchar
20
项目来源类别
PM_ProjSourceType
ProjSourceTypeCode
√
nvarchar
20
来源类别编码
来源类型
ProjSourcTypeName
nvarchar
30
PM_ProjStatus
ProjStatusCode
√
nvarchar
20
项目状态编码
项目状态
ProjStatusName
nvarchar
30
状态名称
PM_ResType
ResTypeCode
√
nvarchar
20
研究类别
研究类别
ResTypeName
nvarchar
30
PM_ResultForm
ResultFormCode
√
nvarchar
20
项目结题形式
ResultFormName
nvarchar
30
PM_ResultType
ResultTypeCode
√
nvarchar
20
结题类型
ResultTypeName
nvarchar
30
4.2功能模块图及分模块功能描述
4.2.1系统的功能模块图
4.2.2项目申报模块顺序图
4.2.2系统功能模块简介
系统管理模块:
新增、删除、查询系统用户;修改用户密码,权限。
人事信息管理模块:
对教职工信息增加,删除,查询,修改。
项目管理模块:
教职工申报项目,科研管理人员审核,批复项目。
申请项目的变更。
经费管理:
申请,审核,认领经费。
成果管理:
申报,查询科研成果,对科研成果排名、等。
5.系统实施
5.1建立数据库
创建系统表:
CREATETABLE[dbo].[RE_TSTC](
[TCode][varchar](50)NOTNULL,
[TText][varchar](50)NULL,
[Assembly][varchar](100)NULL,
[Path][varchar](100)NULL,
[Authorize][int]NULL,
[CreateUser][varchar](