郭朝义,张 驰,刘 杰
(1.泰州口岸船舶有限公司,江苏 泰州 225321;2.武汉理工大学 能源与动力工程学院,武汉 430063)
基于B&S架构的船舶企业文档管理软件设计研究
郭朝义1,张 驰1,刘 杰2
(1.泰州口岸船舶有限公司,江苏 泰州 225321;2.武汉理工大学 能源与动力工程学院,武汉 430063)
针对船舶制造企业产品技术文档的管理中多数文档管理系统还局限在企业内部使用,缺乏对远程协同作业的支持的问题,运用ASP.NET开发框架,结合FTP和文件加解密技术设计实现船舶企业技术文档共享及交互使用平台,可有效地解决跨部门以及远程协同作业等问题。
船舶企业;文档管理;B/S模式;FTP;文件加/解密
近年来,产品文档管理系统是产品工业中发展最快的一种技术,用来管理所有与产品相关的信息(包括零件信息、配置、文档、CAD文件、结构、权限信息等)和所有与产品相关的过程。产品文档管理系统是依托IT技术实现企业最优化管理的有效方法,是计算机技术与企业文化相结合的一种产品,给企业带来了巨大的效益,也是数字化造船和信息化管理的必然要求[1-3]。目前多数产品文档管理系统基于C/S架构,并且一般仅限于企业内部安装使用,软件升级和维护的工作量非常大。当业务人员或设计人员出差在外进行技术谈判,需要实时获得技术文档时,这种方式无法满足要求,需要通过其他手段将相关资料发送给需要的人员,这样需要花费更多的时间,降低了工作效率。运用B/S模式的Web技术为解决这个问题提供了解决思路,但提供外网访问后,必须采取可靠手段来保障文档的授权访问。
C/S(Client/Server),即客户/服务器架构。一般C/S架构是两层结构系统,第一层在客户机系统上,结合了表示与业务逻辑;第二层通过网络结合了数据库服务器。实现原理是:应用程序(客户端)首先依据用户操作形成对应的SQL语句,然后通过网络协议(如TCP/IP等)向数据库服务器发送SQL命令;数据库服务器通过其监听端口实时检测有无服务请求。当检测到有SQL请求时,服务器首先对客户端身份进行验证,验证通过后执行请求客户的SQL命令。为了降低系统升级等维护性问题,产生了三层C/S架构,主要由客户端应用程序、服务器管理程序和中间件三个部分组成,其中服务器一般分为应用服务器和数据库服务器。
B/S(Browser/Server),即浏览器/服务器架构,是一种从传统的二层C/S模式发展起来的新的软件系统结构模式,本质上是一种三层结构。在B/S模式中,客户端运行浏览器软件。浏览器以超文本形式向Web服务器提出访问数据库的要求,Web服务器接受客户端请求后,将这个请求转化为SQL语法,并交给数据库服务器。数据库服务器得到请求后,验证其合法性,并进行数据处理,然后将处理后的结果返回给Web服务器。Web服务器再一次将得到的所有结果进行转化,变成HTML文档形式,转发给客户端浏览器以友好的Web页面形式显示出来。
两种架构的特点及比较见表1。
根据对比,B/S架构在系统的开放性、扩展性和维护性方面存在较大的优势,这也是远程作业所需要的,但是也存在安全性、传输速度以及兼容性等方面的问题。对于安全性问题,可以通过技术手段来改善;传输速度由网络的状况决定;对于兼容性问题,用户可以通过选用合适的浏览器来避免。
表1 两种架构的特点及比较
综合考虑船舶企业业务需求、文件安全性和系统维护性等多方面的因素,确定软件需要实现如下主要功能。
1)按船舶类型分别建立文件根目录,用户可以在根目录下创建一级或多级子目录,便于文件的分类操作和管理。
2)文件的使用和存储分开管理。所有文件夹和文件应有两种名称:①在服务器上真实的名称(惟一),②在用户浏览器上显示的名称。两者之间存在固定的映射关系。
3)文件基本操作功能,包括按树形结构浏览、文件上传和版本说明、文件下载、作废、还原以及过滤等功能。
4)文件加密和解密处理。FTP服务器和用户计算机上应安装专用的加解密软件,不合法的用户则无法对文件进行解密。
5)用户帐号及权限管理。使用人员通过管理员分配的登陆帐号和密码进入系统,系统应能识别合法用户和非法用户,保证数据安全;此外,应对人员角色进行分类并指定不同的操作权限。
软件采用B/S设计模式,在企业局域网和外部互联网中都能使用。为改善数据库的性能,所有文档、图纸资料等文件,都采用FTP方式进行存储,软件的体系结构见图1。采取自上而下的思路对软件进行总体设计,软件的功能模块见图2。
图1 软件体系结构
图2 软件功能模块
软件主要功能的实现方法。
1)文件目录管理。在数据库中建立信息登记表(包括文件夹和文件),每条记录都包含对应的编号、层级以及层级目录字符串,通过这些基本信息可以建立树形文件目录。船型为第一级目录(也称为根目录)。根据单船项目和版本的不同,可建立多级子目录。每一级子目录都包含一个由其上级所有父目录编号和自身编号构成的组合信息,即层级目录字符串。如某三级子目录的编号为k,其上一级目录编号为n,第一级根目录的编号为m,则对应的层级目录字符串为“m, n, k”,由这个字符串可以确定文件在树形结构中的具体位置。
2)文件的命名规则。使用当前时间(精确到千分秒)作为文件夹或文件在服务器上的存储名字,保证文件物理名称的惟一性;文件在软件中的显示名称则由用户输入(如“5 000 t半潜驳”),便于用户阅读和查询。两种名称在数据库中属于同一条记录,通过表的主键产生惟一映射关系,文件下载时程序经过此映射关系从FTP服务器中找到对应的文件。
3)数据的安全性。通过系统登录的方式产生一个Session,作为识别授权用户的依据;未授权用户则没有相应的Session,从而无法进入系统。此外,通过应用服务器将文件上传到文件服务器时,对文件进行加密;下载文件时,再将文件解密。加密/解密软件是专用软件,由系统管理员统一管理,未授权用户无法获得解密的文件。
4)用户的权限管理。根据用户的使用目的不同,将软件的操作权限分为“所有权限”和“查询及下载”两种类型。对于设计人员,具有第一种权限,可以上传文件、修改文件及版本信息、作废文件及取消作废等;对于经营人员及其他相关人员,只需查询和下载文件即可。
5)软件的部署。运用IIS对软件进行发布,通过企业防火墙,将应用服务器的IP地址映射到外部互联网,使工作人员在企业外部通过网络也能使用该系统,从而实现远程作业。
6)软件的使用情况统计。在数据库中建立用户登录信息表和文件下载记录表,并分为内网、外网以及综合使用统计3种类型,系统管理员可以实时查看软件使用记录。
通过基于Web的产品文档管理软件,所有文档存储在同一个FTP服务器上,实现了企业部门与部门,人员与人员之间的资料共享;采用文件集中存储和加/解密技术,既便于管理,又提高了文件的安全性;所有用户都使用各个文档的统一版本,避免了因版本不一致而带来的问题;通过网络技术,企业内部人员在外地办公时能够通过外网访问产品文档管理系统,实时获取所需的文档,较好地解决了传统方式所带来的问题,提高了工作效率。软件已经在船舶企业成功应用,取得了良好的应用效果。
[1] 顾佩磊,张 俊. PDM实施在中国的最佳实践[J].CAD/CAM与制造业信息化,2014(1):27-30.
[2] 刘 杰.基于OLE技术的造船厂信息一体化研究[J].船海工程,2007,36(4):86-88.
[3] 姚玉南.船舶信息管理系统开发研究[J].船海工程,2006,30(4):110-113.
Software Development and Research for File Management forShipbuilding Enterprise Based on the B/S Mode
GUO Chao-yi1, ZHANG Chi1, LIU Jie2
(1 Taizhou Kou′an Shipbuilding Co., Ltd., Taizhou Jiangsu 225321, China;2 School of Energy and Power Engineering, Wuhan University of Technology, Wuhan 430063, China)
For shipbuilding enterprises, the management and security of product technical documents is very important. But many current document management systems is used just in enterprise intranet and lack the support for remote synergetic work. To overcome this problem, the ASP.NET framework is used combined with FTP and file encryption techniques to design and realize a management system of shipbuilding technical documents.
shipbuilding enterprise; documents management; B/S mode; FTP; file encryption
10.3963/j.issn.1671-7953.2015.01.025
2014-10-15
江苏省科技支撑计划项目(BE2013107)
郭朝义(1964-),男,硕士,高级工程师
TP391
A
1671-7953(2015)01-0097-03
修回日期:2014-10-28
研究方向:船型研发及船舶企业信息化应用
E-mail:guocy@cnkasc.com