基于.NET的软件评测管理系统的研究

2018-10-25 11:06刘健
计算机时代 2018年9期
关键词:管理系统数据库

刘健

摘 要: 为了提高软件评测业务效率,开发与设计了基于B/S架构的软件评测管理系统。以.NET为平台,采用B/S架构中常用的MVC设计模式,以及ASP.NET、CSS+DIV 等技术进行系统开发,通过SQL Server建立系统数据库,并由ADO.NET组件实现数据库的操作,完成了软件评测管理系统的报告录入、分配、提交审核、归档等功能。实际应用表明,基于.NET的软件评测管理系统能够实现评测业务的无纸化操作,提升了业务的流转效率。

关键词: .NET; B/S; 管理系统; 数据库

中图分类号:TP315 文献标志码:A 文章编号:1006-8228(2018)09-99-03

Abstract: In order to improve the efficiency of software testing & evaluating, this paper develops and designs a software testing & evaluating management system of B/S structure, which uses the frequently-used MVC design pattern on the .Net platform, uses ASP. Net, CSS+DIV to develop, and builds the database by SQL Server, uses ADO.Net components to access it. This system realizes the function of report input, distribution, submission, verification, filing etc. It realizes the paperless operation for the software testing & evaluating management and improves the efficiency of business flow.

Key words: .NET; B/S; management system; database

0 引言

目前,检验所受理软件评测业务后由人工分发到各工程师,工程师完成评测报告后提交审核,审核通过后归档整理,并由受理人员告知客户评测报告进度,整个过程类似生产流水线。这种传统方式存在一些缺点:评测业务分发到的工程师需人工登记,等待评测的客户联系评测事宜时受理人员需手动翻阅记录本,查找对应工程师,操作上低效耗时,客户体验不佳;宏观上来讲这种方法也不便均衡每个工程师的业务量,不利于监控每个评测业务所处阶段,导致评测报告完成时无法第一时间通知到客户。针对以上存在的弊端,结合计算机网络技术,设计一种信息管理系统,满足软件评测业务的需求,让评测业务流程化运作起来,推动执行力,方便安排任务、跟踪监督任务以及最终评估任务完成情况。

1 总体设计

1.1 系统分析

软件评测管理系统需求上包括以下几个方面:评测业务登记、分发、提交、审核、归档。涉及到的角色有受理人员、分发人员、工程师、审核人员。流程及人员关系如图1所示。

根据实际业务在系统中分发人员由受理人员和组长组成,分发有两个层级,第一层级分发由受理人员将评测业务分配到组长,第二层级分发由组长分配到工程师。系统中共设计受理人员、组长、工程师、审核人员四种角色。

1.2 系统环境

在.NET架构中的公共语言运行库组件提供了对多种语言的支持,如C#、J#、C++、VB.NET等,本文所设计的系统采用C#语言编写,通过局域网网络连接服务器,在客户端使用浏览器实现信息的录入、更新、查询及分析。开发的服务器端软件运行在Windows 2003中,数据库采用SQL Server 2005[1],使整个系统能够兼容,并且还具有安全性及控制能力。

2 软件设计

2.1 系统功能设计

本系统根据需求将功能按角色分配,各角色共有的功能包括系统注册、登录系统、查询评测业务。

受理人员功能:登记评测业务,分配评测业务到组长,归档已完结的评测业务。

组长功能:分配评测业务到组员,提交评测业务。

工程师功能:提交评测业务。

审核人员功能:审核评测业务。

其中查询评测业务具有权限控制,工程师只能查询自己的评测业务,组长可查询组员的评测业务,受理人员和审核人员可查询所有组长及工程师的评测业务。为跟踪业务进度将业务状态分为“尚未分发”、“评测中”、“审核中”、“已完成”、“已归档”,各状态以当前时间所处阶段来划分,时间节点分别为“送到日期”、“分发日期”、“提交日期”、“完成时间”、“归档日期”。如图2所示。

2.2 数据库设计

本文采用的是MVC三层结构[2],前台作页面设计和布局,中间层作业务逻辑处理,后台使用数据库存取数据,因此數据库设计是系统的一个重要环节。根据数据库设计的方法和步骤,首先进行数据的收集与分析,然后在此基础上建立一种抽象的数据模型及E-R图,最后把E-R图转换成相应的关系模式。根据对系统的功能分析,提取出本数据库的几大实体及实体间的联系,通过相互作用形成数据流动[3],如图3所示。

将E-R图转变为SQL Server数据库系统支持的数据模型,从而得到系统需要的信息表及字段,系统主要数据库表如表1-表3所示。

3 系统实现

3.1 母版页的设计与实现

在.NET中,母版页与页面模板一样,使用母版页创建统一的用户界面与样式,可以将Web应用程序中的静态文本,如网站标志、广告条、导航条、版权声明、HTML元素和服务器控件预定义布局等内容整合到母版页中。当用户请求内容页时,将母版页的布局与内容页中的内容组合在一起输出。本文的母版页设计如图4所示。

3.2 数据库连接

将连接数据库的地址、用户名、密码等信息配置到Web.Config文件中的appSettings标签中。每一次的数据库操作都通过读取appSettings中的值实现数据库的连接。

String strCon=ConfigurationSettings.AppSettings

["ConnectionString"];

try

{ SqlConnection conn=new SqlConnection(strCon);

conn.Open();

…… //数据库的读写、查询

conn.Close();

}

catch

{}

3.3 用户登录

以用戶登录的验证为例,如果账户和密码不是空值,那么查询用户账号是否存在的。如果没有存在,提示“用户未注册,请注册后再登录”。如果存在,判断用户名和密码是否相同,如果相同,用户就能够访问系统,如果不相同,提示“密码输入有误”。为保证系统中用户密码的安全性,数据库中存储的密码为加密后的密文,故在判断密码时先要将明文转换为密文。

byte[] result=Encoding.Default.GetBytes

(TextBox_password. Text);

MD5 md5=new MD5CryptoServiceProvider();

byte[] output=md5.ComputeHash(result);

string sCipher=BitConverter.ToString(output).Replace("-", "");

3.4 数据管理

用户能够通过系统页面实现业务数据的管理,包括数据的插入、修改、删除、查询。通过报告录入界面将业务数据写入到数据库,使用SQL语句更新业务所属的工程师和时间节点,同时可在主页中查询业务相关信息,本系统使用GridView控件绑定数据源,如图5。

SqlDataAdapter da=new SqlDataAdapter(strQuery, conn);

DataSet ds=new DataSet();

da.Fill(ds);

GridView_main.DataSource=ds.Tables[0].DefaultView;

3.5 系统的测试

系统的测试[4]主要包括系统的功能、性能、可用性、客户端兼容性、安全性测试,细分为链接、表单、设计语言、数据库、负载、压力、连接速度、导航、图形、整体界面、内容、平台、浏览器、登录、日志安全、超时限制、系统漏洞等的测试。根据.NET 系统的封装及抽象特点,使用黑盒测试,对系统的可用性及功能进行测试。通过不断的调试及反复测试,系统基本满足设计需求,实现了开发目标。系统的功能测试详见表4。

4 结束语

基于.NET的软件评测管理系统具有良好的稳定性,代替了传统的纸质管理,提高了业务分配的公平性和效率。通过研究表明,该系统在信息管理尤其涉及到流水作业方面具有一定的通用性,能够满足用户的基本需求。除了.NET技术还有J2EE等技术架构也可实现类似的管理系统,通过不同技术之间对比,找到各自优劣,实现快速高效地开发,提升系统的扩展性和可维护性始终是我们将来需要进一步探索研究的工作。

参考文献(References):

[1] 龙马工作室.新编ASP.NET 2.0+SQL Server 2005 从入门到精通[M].人民邮电出版社.2008.

[2] Grady Booch,Robert A. Maksimchuk,Michael W.Engel,etal.王海鹏,潘加宇译.面向对象分析与设计(第3版)[M].人民邮电出版社,2009.

[3] 刘敬敬.基于B/S构架的学生信息管理系统的研究[J].无线互联科技,2014.11(6):75-76

[4] 刘晶.基于.NET的学校信息管理系统的研究[J].电子设计工程,2017.25(21):164-168

猜你喜欢
管理系统数据库
基于James的院内邮件管理系统的实现
基于LED联动显示的违停管理系统
海盾压载水管理系统
基于RFID的仓储管理系统实现