主要技术 本系统是用于南京港口管理、港口企业管理管理相关工作的专业应用系统,涵盖了南京港口管理、港口企业管理管理涉及的计划执行、数据收集、资料整理、检验测试、工程评定、交竣工验收、人员工作安排、收费统计、汇总分析、质监行业管理等多个方面,系统的范围广,这就要求本系统的开发需要具备整个南京港口管理、港口企业管理行业技术知识。 本系统资料管理采用开放式、可授权、标准化,针对第三方不同机构、部门产生的资料、报告、文档,如:工程监理、原材料、混合料鉴定等,本系统提供开放式应用平台,各种资料可以协同集中处理,并由此生成统一资料库,这就要求本系统的开发需要具备高度的标准化和开放性技术要求。 本系统针对不同南京港口管理、港口企业管理管理环节,提供完备细致的的数据表项,因此,要求本系统的开发需要具备南京港口管理、港口企业管理专业性技术知识高。 从以上几个方面可以看出来,本系统的的主要技术特点集中在这么几个方面:交通工程质监管理全面性、专业性、开放性、灵活性。 课题组在系统研制过程根据南京港口管理、港口企业管理本身的业务应用特点提出并创建了系统自身的专有技术,主要包括:适合本系统的交通工程质监信息化技术,交通工程质监数据结构设计技术,分布式多层应用技术等,这些技术综合应用,并通过程序接口实现在统一平台下协同工作。 下面,就针对这些技术原理和实现做具体说明。 2.7.1 危险货物数据库作为本系统的一个主要功能,是进行危险货物申报,因此,危险货物数据库的建立成为此功能能否实现的关键,危险货物数据库设计的好坏,直接影响到整个系统的工作能力。主要内容包括: 1. 危险货物信息整理:危险货物编号,危险货物名称,英文名,别名,危险货物分子式、危险货物UN.NO. 危险货物CN.NO.,违规分类,物化性质,危险特性,包装标志,包装方法,储运条件,应急处理,灭火方法,污染处理,参见其他,检查标志等信息。 2. 危险货物信息维护:针对权威机构、专家机构、行业机构颁布、颁发的危险货物品名、属性、储运、应急等资料(如:按照GB6944《危险货物分类和品名编号》、按照GB12268-90《危险货物品名表》)进行危险货物定期维护,包括:危险货物属性修改、危险货物救助、新增危险货物等项内容。 3. 危险货物划分类别:按我国目前已公布的法规、标准,有三个国标:GB6944《危险货物分类和品名编号》、GB12268《危险货物品名表》、GB13690《常用危险化学品分类及标志》、将危险化学品分为八大类,每一类又分为若干项,并增加一项其他类别,如下: 第一类:爆炸品,爆炸品指在外界作用下(如受热、摩擦、撞击等)能发生剧烈的化学反应,瞬间产生大量的气体和热量,使周围的压力急剧上升,发生爆炸,对周围环境、设备、人员造成破坏和伤害的物品。爆炸品在国家标准中分5项,其中有3项包含危险化学品,另外2项专指弹药等。 第1项:具有整体爆炸危险的物质和物品,如高氯酸。 第2项:具有燃烧危险和较小爆炸危险的物质和物品,如二亚硝基苯。 第3项:无重大危险的爆炸物质和物品,如四唑并-1-乙酸。 第二类:压缩气体和液化气体,指压缩的、液化的或加压溶解的气体。这类物品当受热、撞击或强烈震动时,容器内压力急剧增大,致使容器破裂,物质泄漏、爆炸等。它分3项。 第1项:易燃气体,如氨气、一氧化碳、甲烷等。 第2项:不燃气体(包括助燃气体),如氮气、氧气等。 第3项:有毒气体,如氯(液化的)、氨(液化的)等。 第三类:易燃液体,本类物质在常温下易挥发,其蒸气与空气混合能形成爆炸性混合物。它分3项。 第1项:低闪点液体,即闪点低于-18℃的液体,如乙醛、丙酮等。 第2项:中闪点液体,即闪点在-18℃—<23℃的液体,如苯、甲醇等。 第3项,高闪点液体,即闪点在23℃以上的液体,如环辛烷、氯苯等。 第四类:易燃固体、自燃物品和遇湿易燃物品,这类物品易于引起火灾,按它的燃烧特性分为3项。 第1项:易燃固体,指燃点低,对热、撞击、摩擦敏感,易被外部火源点燃,迅速燃烧,能散发有毒烟雾或有毒气体的固体。如红磷、硫磺等。 第2项:自燃物品,指自燃点低,在空气中易于发生氧化反应放出热量,而自行燃烧的物品。如黄磷、三氯化钛等。 第3项:遇湿易燃物品,指遇水或受潮时,发生剧烈反应,放出大量易燃气体和热量的物品,有的不需明火,就能燃烧或爆炸。如金属钠、氢化钾等。 第五类:氧化剂和有机过氧化物,这类物品具有强氧化性,易引起燃烧、爆炸,按其组成分为2项。 第1项:氧化剂,指具有强氧化性,易分解放出氧和热量的物质,对热、震动和摩擦比较敏感。如氯酸铵、高锰酸钾等。 第2项:有机过氧化物,指分子结构中含有过氧键的有机物,其本身是易燃易爆、极易分解,对热、震动和摩擦极为敏感。如过氧化苯甲酰、过氧化甲乙酮。 第六类:毒害品,指进入人(动物)肌体后,累积达到一定的量能与体液和组织发生生物化学作用或生物物理作用,扰乱或破坏肌体的正常生理功能,引起暂时或持久性的病理改变,甚至危及生命的物品。如各种氰化物、砷化物、化学农药等等。 第七类:放射性物品,它属于危险化学品,但不属于《危险化学品安全管理条例》的管理范围,国家还另外有专门的“条例”来管理。 第八类:腐蚀品,指能灼伤人体组织并对金属等物品造成损伤的固体或液体。这类物质按化学性质分3项。 第1项:酸性腐蚀品,如硫酸、硝酸、盐酸等 第2项:碱性腐蚀品,如氢氧化钠、硫氢化钙等。 第3项:其它腐蚀品,如二氯乙醛、苯酚钠等。 第九类:不属于上述八项的危险货物。 4. 危险货物标准库。 按照危险货物国家标准、行业标准、国际标准(可选项)整理、归集,主要涵盖: GB6944《危险货物分类和品名编号》、GB12268《危险货物品名表》、GB19270《水路运输危险货物包装检验安全规范》、《化学危险货物手册》。 5. 应急处理。 针对不同类别危险货物的应急处理辅助信息提供能力,包括: 报警和通报的方式、渠道和联络手段、紧急疏散方式和警戒区域建立、现场急救帮助急救手段、泄露处理、火灾扑救。 6. 危险货物包装、储藏和运输说明。 针对不同类别危险货物的包装、储藏和运输说明,包括:包装的基本要求、包装的标志、包装的安全标签、贮存要求、贮存安排及贮存限量、贮存管理。 7. 危险货物索引和查询的建立。 按以上各种不同条件查询索引危险货物相关属性、数据、特征等内容。 2.7.2 基于B/S架构的危险货物查询检索技术2.7.2.1 大数据量的存取及索引危险货物数据数量巨大,对数据库存储和程序检索也提出了比较高的要求,特别是通过B/S架构方式在Internet网上使用,一个好的危险货物存取和索引技术优越性表现的尤为突出。为此,我们在设计数据库、SQL处理语句及组织程序时,充分考虑到执行效率,采用了以下一些处理手段: u 合理使用索引:索引是数据库中重要的数据结构,它的根本目的就是为了提高查询效率。现在大多数的数据库产品都采用IBM最先提出的ISAM索引结构。索引的使用要恰到好处。 u 避免或简化排序:应当简化或避免对大型表进行重复的排序。当能够利用索引自动以适当的次序产生输出时,优化器就避免了排序的步骤。 u 消除对大型表行数据的顺序存取:在嵌套查询中,对表的顺序存取对查询效率可能产生致命的影响。 u 避免相关子查询:尽量避免子查询。如果子查询不可避免,那么要在子查询中过滤掉尽可能多的行。 u 避免困难的正规表达式:这种匹配特别耗费时间。另外,还要避免非开始的子串。 u 使用临时表加速查询:它有助于避免多重排序操作,而且在其他方面还能简化优化器的工作。 u 用排序来取代非顺序存取。另外,在程序组织中,对于一次要获取较多量记录时,我们还采用了分页存储、缓冲更新等多种手段保证更快、更有效地处理数据。 其他效率因素考虑,项目组在系统研制过程中,对执行效率的影响因素除了上面说的因素外,发现还有如下几个方面,并且在整个项目中遵循、执行: l 接口的调用方式上,后期绑定、前期绑定、Diapatch三种方式中,前期前期绑定效率最高,速度最快。 l 函数、方法的参数的效率上,Variant型、具体类型中,具体类型方式的参数效率最高、速度最快。 l 数据引擎对数据库运行效率上,Cach、游标的参数、位置设置对系统的执行效率影响也很大。 2.7.2.2 原文数据的存储与显示原文数据将所有的纸质危险货物说明扫描并存储到文件服务器上,数量巨大,扫描的文件数目达到万级,原文数据作为对系统危险货物数据的一个补充,系统通过结合原文数据实现对危险货物各项属性的最大化兼容,原文数据采用特定的图象方式保存在系统的应用服务器上,原文数据的浏览采用Active控件方式提供用户使用,用户在客户端浏览器只需要下载系统提供的Active控件即可查看原文数据,由于原文数据是系统中危险货物数据最全、最详细的部分,因此,这部分数据量的索引提出了很高的要求。 u 目录唯一性:考虑到大量原文数据可能需要从一个系统迁移到另一个系统,在原文数据迁移地过程中自然地希望保持其原有的目录结构,因为对于海量原文来讲,更改其目录结构将会是非常庞大的工作。此时需要在任何地点、任何系统中产生的原文存储目录都应该是唯一的。 u 目录索引:在索引结构上,利用了Windows的NTFS分区的索引功能,以加速对文件的检索。 u 原文图片的优化显示:在本系统中,采用了一些图象算法实现图像显示、图像压缩、图像转换等多种功能。 u 支持Web方式的Active控件:在本系统中,采用Active控件的方式实现原文数据在用户浏览器(IE)中的显示和控制。 2.7.3 基于XML和RSS技术的知识管理XML即可扩展标记语言(eXtensible Markup Language)。标记是指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等。如何定义这些标记,既可以选择国际通用的标记语言,比如HTML,也可以使用象XML这样由相关人士自由决定的标记语言,这就是语言的可扩展性。XML是从SGML中简化修改出来的。它主要用到的有XML、XSL和XPath等。XML是一种用户定义的、适合人读的数据描述语言,用户使用Web服务发送或接收各种数据、数据集及文档的格式。 XML的先进特性:XML继承了SGML的许多特性,首先是可扩展性。XML允许使用者创建和使用他们自己的标记而不是HTML的有限词汇表。这一点至关重要,企业可以用XML为电子商务和供应链集成等应用定义自己的标记语言,甚至特定行业一起来定义该领域的特殊标记语言,作为该领域信息共享与数据交换的基础。其次是灵活性。HTML很难进一步发展,就是因为它是格式、超文本和图形用户界面语义的混合,要同时发展这些混合在一起的功能是很困难的。而XML提供了一种结构化的数据表示方式,使得用户界面分离于结构化数据。所以,Web用户所追求的许多先进功能在XML环境下更容易实现。第三是自描述性。XML文档通常包含一个文档类型声明,因而XML文档是自描述的。不仅人能读懂XML文档,计算机也能处理。XML表示数据的方式真正做到了独立于应用系统,并且数据能够重用。XML文档被看作是文档的数据库化和数据的文档化。除了上述先进特性以外,XML还具有简明性。它只有SGML约20%的复杂性,但却具有SGML功能的约80%。XML比完整的SGML简单得多,易学、易用并且易实现。另外,XML也吸收了人们多年来在Web上使用HTML的经验。XML支持世界上几乎所有的主要语言,并且不同语言的文本可以在同一文档中混合使用,应用XML的软件能处理这些语言的任何组合。所有这一切将使XML成为数据表示的一个开放标准,这种数据表示独立于机器平台、供应商以及编程语言。它将为网络计算注入新的活力,并为信息技术带来新的机遇。目前,许多大公司和开发人员已经开始使用XML,包括B2B在内的许多优秀应用已经证实了XML将会改变今后创建应用程序的方式。 RSS是一种用于共享新闻和其他Web内容的数据交换规范,起源于网景通讯公司的推"Push"技术,将订户订阅的内容传送给他们的通讯协同格式(Protocol)。中包含的信息就能直接被其他站点调用,而且由于这些数据都是标准的XML格式,所以也能在其他的终端和服务中使用。 RSS的联合(Syndication)和聚合(Aggregation),发布一个RSS文件(一般称为RSS Feed)后,这个RSS Feed中包含的信息就能直接被其他站点调用,而且由于这些数据都是标准的XML格式,所以也能在其他的终端和服务中使用,如PDA、手机、邮件列表等。而且一个网站联盟(比如专门发布新闻的网站系列)也能通过互相调用彼此的RSS Feed,自动的显示网站联盟中其他站点上的最新信息,这就叫着RSS的联合。这种联合就导致一个站点的内容更新越及时、RSS Feed被调用的越多,该站点的知名度就会越高,从而形成一种良性循环。 而所谓RSS聚合,就是通过软件工具的方法从网络上搜集各种RSS Feed并在一个界面中提供给读者进行阅读。这些软件可以是在线的WEB工具,也可以是下载到客户端安装的工具。 在本系统中,项目组结合这些技术,为港口管理信息系统使用者提供知识管理功能,港口管理系统的知识管理包括:法律法规、专业资料、新闻等内容,这些内容通过使用RSS和XML技术实现了信息的发布和订阅。 2.7.4 软件工程化的开发方法南京港口信息管理系统归根揭底是一个MIS系统,在目前的软件工程中,管理信息系统的开发者们通过需求分析运用MIS理论可能会推理出一个比较呆板的MIS模型框架而不一定会得到一个高效、实用的MIS系统。这样的结果对于MIS的建设来说无疑是不成功的。因此,我们考虑在本系统的建设过程中适时地联系软件工程的一些方式、方法,这样,在两种理论的指导下,MIS建设的成功率应该是比单一的MIS理论高出不少。 软件工程是纯粹计算机技术的产物,它是用工程、科学和数学的方法研制、维护计算机软件的有关技术及管理方法。它的目标是在给定成本、进度的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可适应性、可移植性、可追踪性和可互操作性并满足用户需求的软件产品。 MIS也是一种软件,它是软件工程中的事务处理类软件,与其它软件一样,它有自己的一套开发理论,但由于侧重点的不同导致了MIS理论在其实施阶段(软件实施)的论述并不能完全体现软件开发的特点。 MIS建设一般要经历四个阶段,系统规划、系统开发、系统运行与维护、系统更新。 在系统分析阶段,MIS建设理论中阐述的方法一般都是结构化分析方法,通过运用数据词典和数据流图来对系统模型进行结构化阐述,由于系统分析涉及到复杂的组织管理与技术环境,分析过程中要处理的有些问题是结构化分析方法所不能覆盖的。这种分析方法可能就会直接导致系统建设的失败。这时候,我们可以参照软件工程中的一些需求分析方法:如面向数据流和面向对象的方法,引入对象的概念,用对象来描述实体,结合实体—关系图、对象及消息传递图、类结构图、对象状态转换图、主题词结构图等对一些非结构信息进行分析,建立非结构模型,让系统设计人员通过形式化语言很快就能掌握系统分析人员的分析结果和意图,设计出满足用户需求的系统。 对应于系统分析方法,MIS理论在系统建设阶段采用的主要也是结构化的设计方法,与在系统分析阶段遇到的问题基本相同,在系统设计阶段我们同样可以引入软件工程方法中的优秀分子,为MIS建设提供理论依据。我们完全可以把软件工程的一套方法从MIS建设的一开始就引入进来,弥补传统MIS理论的不足,我们在MIS的建设过程中,完全可以大胆地从理论的高度来运用面向对象,使这项已经不算新鲜的技术在MIS建设中继续发挥它的威力。 项目管理是软件工程中一个非常重要的概念,它在软件工程中的任务是:制定项目实施计划;对人员进行组织分工;按照计划的进度,以及成本管理、风险管理、质量管理的要求,进行软件开发,最终完成软件项目规定的各项任务。在MIS中要引入项目管理的概念,除了在系统实施阶段对纯软件的质量进行度量以外,还要求对系统的开发进度进行详细的安排,对系统开发计划进行可行性评估,对系统开发各个阶段资金进行预算,对预算进行评估。 下面就是本项目在开发实施过程中采用的一些工程化手段和措施。 2.7.4.1 需求分析方法南京港口信息管理系统作为一个大型软件系统的体系结构,不能从一个单维的视点来看,而应该从不同的方面或角度来分析: l 使用用例视图:以系统外部使用者(称之为角色)的角度看待系统。通过描述系统与所有外部角色的所有交互(每一个交互称为一个用例),以及对每一个交互过程中系统内部的响应步骤描述,来定义系统提供的功能和系统边界条件。该视图的建立是系统需求分析阶段的主要工作内容之一,交互过程中系统内部响应步骤是通过业务流程分析得出的。为此,项目组针对本系统建立了:港口企业资料管理用例、企业危险货物申报用例、企业普通货物申报用例、港口分布检索用例、管理人员建立电子台帐用例、统计分析用例等用例视图。 l 使用逻辑视图:以系统内部组件或结构来看整个系统。它包含了系统中所有的子系统和功能模块以及其功能划分以及内部涵盖的核心概念。这个视图开始时是通过上个步骤的使用用例,并对这些用例进行整理、归纳和合并形成的,并将在系统设计的高级阶段得到细化和趋于成熟。项目组通过使用逻辑视图,将本系统的数据结构和静态类建立起来。 l 实施视图描述:系统的整体结构、数据结构和静态类建立起来后,需要明确他们之间的协作关系,即实施通信,包括:子系统与子系统间的通信、系统与数据库的通信、接口之间的通信等。通过这样整个系统的内部数据库和系统初步建立起来,并且实现了需求向设计的平滑过度,是原始的业务需求转变为计算机语言。 l 建立物理视图:之后系统即可实现系统的物理节点(应用服务器、接入服务器、数据库服务器)分布和连接图,完成整个系统的需求分析。 2.7.4.2 设计分析方法系统通过使用用例(User Case)和场景(Scenario – 使用用例的实例)来对业务流程建模,用类(Class)来对业务概念建模,用接口(Interface)来对业务关系建立通信协议。使用用例描述系统功能侧面,而业务概念描述系统数据侧面。这种整个系统功能模型和系统数据模型的设计方法体现了OO(面向对象)的方法论。采用UML(统一建模语言)和其使用工具(Rational Rose)软件来描述系统模型,并根据要求生成结果文档。 在系统的设计阶段,项目组将整个系统分解为若干个较大的组件(或子系统)来简化和管理问题的复杂性,并定义组件接口描述组件之间以及整个系统与外部的通信类型和机制。这些组件(Component)是一组相关数据和功能的集合。将整个系统分解为多层逻辑结构并示意如下。该图被称为框架结构模式图,这是因为设计中将按照该模式来划分和定位系统各组件。框架结构模式图是一个多层次的、分布式的体系结构模型,它由用户界面(UI)、界面逻辑(UI Logic)、系统组件(System Component)、业务组件(Business Component)及数据实体(Data Entity)组成。  用户界面(UI)和UI逻辑组件提供用户对系统的访问,UI显示输出并捕获用户输入,UI逻辑通过解释用户输入、用户输入数据校验、调用系统内部服务、产生输出UI并控制UI显示次序来管理用户与系统的交互。UI和UI逻辑组件负责整个系统的表示逻辑。本系统的用户界面(UI)和UI逻辑组件包括:企业部分UI、管理处部分、浏览器本数据校验脚本(VBScript)、图形化处理脚本(Image Map)等。 系统组件(System Component)提供功能服务,它通过UI和UI逻辑组件实现对外部访问或请求的响应。系统组件有描述系统功能的使用用例导入,使用用例过程中的场景(Scenario)和步骤(Step)体现了业务流程,基本上可以描述系统组件的实现过程或算法。系统组件由系统组件接口和系统组件服务构成,接口是指一个系统组件使用者(UI逻辑)和系统组件服务实现者之间的一个约束协定。使用用例中描述的步骤或由系统组件服务实现,或进一步,调用下层的业务组件服务完成。本系统的系统组件包括:数据读写组件、事务处理组件、异常处理组件、系统日志处理组件、标准数据转化组件、第三方数据接口组件等。 业务组件(Business Component)是核心业务概念和业务规则信息、数据的管理、操作的使用和使用的抽象和封装。它由描述核心业务概念、基本数据、基本业务规则等的业务概念模型导入。同样,业务组件由业务组件接口和业务组件服务组成,其接口是一个业务组件使用者(系统组件服务)和业务组件服务实现者之间的一个约束协定。由于业务组件独立于使用用例,它们的运行环境上下文(Context)由系统组件服务提供,它们本身无状态(Stateless),因此,业务组件在分布式部署的时候,可以满足多用户同时使用,软件可以被重用,同时,配合系统组件服务,如:事务管理、池化(Pooling)管理、队列管理,提高业务软件在网络化条件下使用的效率。 最后,数据层是系统使用及产生的各种数据的物理存储,这些数据可能以各种形式存在:如数据库、文件、管道、内存表等。 2.7.4.3 开发调试方法信息管理系统是否有正确、适当的方法指导,对本系统的进度、质量、效益都会有重大的影响。项目组在开发过程中从组织管理和具体开发方法两个方面着手,按照整个系统的规划和要求,建立了适合本系统开发调试的一套方法。本系统作为一个计算机软件系统,可以利用一般管理系统软件的开发方法,但本系统又有其自身的特殊性,因此,需研究和选择适合的开发方法。 本系统采用的开发方法有:生命周期法、原型法、CASE方法、面向对象方法等,这些方法在开发系统中各有其优势和缺漏,现一一剖析。 1.生命周期法 这种思想将计算机管理系统看成是一个纯计算机的技术问题,它将软件的整个生存周期:系统规划阶段、系统分析阶段、系统设计阶段、系统实施阶段和系统运行维护阶段视为一个生命周期,其最大的特点是利用系统的观点,自顶向下进行系统分析与设计,并自底向上完成软件系统。但是现实问题并不这样简单,开发本系统不是一个纯计算机的技术问题,传统的生命周期法已不能完全胜任该项工作。 第一,本系统开发不仅仅是涉及到技术的工程,更是“电子政务系统工程”重要组成部分,所以开发的系统要反映管理部门和企业的客观需求。由于国家政策、港口内部、外部环境的种种变化,使得用户需求常常变更,从而引起系统初始设计的变更,在更坏的情况下,甚至系统必须重新设计,大量人力物力的重复耗费,最终可能会导致系统的开发失败。 第二,生命周期法开发过程中出现的错误具有积累和放大效应。按照生命周期法的阶段性,前一个阶段工作成果是后一阶段工作的基础,前一阶段的错误自然会导致后一阶段的工作结果中相应的错误,因此,错误会积累起来。前一阶段中的一个错误可能造成后一阶段中出现几个错误,因此错误会有放大效应。 第三,生命周期法开发过程中的不同阶段进行错误的修改和补救需要付出的代价随着周期向后一阶段推进付出的代价呈增大甚至几何级增长的趋势。早期阶段进行修改,涉及的面较少,因而代价也较低。而在后期阶段进行修改,涉及的面可能涵盖其前面的所有阶段,不仅工作量大,而且逻辑上也更复杂,因此付出的代价剧增,要去挽救这个错误,可能牵涉到许多人和部门,其代价是巨大的。这是生命周期法经常遇到的难题。 2.原型法 针对“生命周期法”的缺陷,提出“原型法”。其基本思想是:对目标的系统分析不是追求大而全的一次到位,而是凭借系统员对用户需求的理解,在强有力的软件环境支持下给出满足用户基本要求的交互式的初始模型,系统员和用户一起对模型进行评价,根据评价结果再对模型进行修改,如此反复多次,直到双方满意为止。该方法遵循了人们认识事物循序渐进的规律,提供了一套强有力的技术,它可以缩短开发进度,增加用户的满意程度,生产出高质量的产品。 然而,在用原型法开发系统的过程中,开发人员跳过了系统规划和系统分析这两步,对于本系统这样大型的、复杂的、人为因素多、结构庞大的系统开发,将不能得到充分的需求分析,从而难以开发出一个令人满意的系统,也必将使后面的维护工作更加艰难。而且该方法在实施过程中缺乏对管理系统全面、系统的认识,每次反复都要花费人力、物力,如果开发者和档案部门之间的沟通不畅,盲目纠错还会拖延开发过程。因此,也不易单独使用这种方法开发本系统。 3. CASE方法 CASE(Computer Assisted Software Engineer)即计算机辅助软件工程,旨在实现软件开发自动化。CASE方法为系统的分析与设计提供了—系列手段,如方便地生成分析设计过程中的图表和文档、自动生成最终模块等。 在开发系统过程中,运用CASE方法可以大大提高系统开发的效率和质量,然而,CASE方法仅仅是一种辅助的自动化开发工具,不能作为一种完整的开发方法。 4.面向对象方法 从本质上讲,面向对象方法是一种认识客观世界的认知方法学,它同时亦是一种解决问题的思维方法。面向对象的系统开发方法将对象作为需求分析和系统设计的核心和主体,在此基础上,引用科学方法论中的分类思想,将相似的一组对象聚合为类,采用各种手段将相似的类组织起来,实现问题空间到解空间的影射。这种方法描述的现实世界模型贴切、合理,更符合人们认识世界的思维方法。 本系统是一个基于数据的管理系统,这是以结构良好的数据库为基础的,因此数据的总体设计与规划就显得特别重要,但由于数据管理只是整个系统开发的一部分,因此,面向对象方法在整个系统开发过程中也只能作为一种辅助方法。 构建本系统的复合开发方法。 开发本系统是一项十分复杂的工程,不断扩大的信息系统规模,使得单一的某种软件开发方法已不能胜任该项工作。通过对以上一般软件开发方法的分析,根据本系统本身的特点,我们设想构建一种本系统的复合开发方法,即以数据为中心,把开发本系统的生命周期法、原型法、面向对象方法、CASE方法有机地融合在一起,形成开发本系统的复合开发方法。 这种复合开发方法的总体思路是:用生命周期开发方法将本系统划分为5个阶段:系统规划阶段、系统分析阶段、系统设计阶段、系统实施阶段和系统运行维护阶段。在这5个阶段中再将原型法、面向对象法及CASE法这三种方法有机复合进来,从而达到快速有效开发本系统的目的。首先,系统规划和系统分析阶段仍按生命周期法的步骤进行,只在系统设计阶段采用原型法。其次,在开发过程中用CASE工具辅助系统工程活动的实施,从系统的项目计划、需求分析、系统设计、编码调试、测试管理、运行维护,到支持软件的过程管理、质量保证等。这种自动化的系统开发方法,能够缓和在系统分析、设计和实施过程中,制约系统发展的“瓶颈”。最后,将面向对象方法嵌入到系统开发中,把面向对象分析(OOA)、面向对象设计(OOD)、面向对象实现(OOI)三个阶段分别复合到系统分析阶段、系统设计阶段、系统实现阶段。使用面向对象方法将会解决生命周期开发方法中客观世界描述工具与当今面向对象的软件结构不一致的问题,大大地缩短开发周期。 系统开发期需要完成如下工作内容: l 系统基本概念确认,包括:数据、信息、指标和指标体系、记录和数据文件 l 组织结构与功能分析、业务流程分析、数据与数据流程分析、功能、数据分析确认。 l 系统总体结构设计、代码设计、数据结构和数据库设计、输入输出设计、模块功能与处理过程设计、系统设计报告。 l 系统调试:程序单元测试、程序各模块联合调试、程序设计与调试。 l 综合应用:菜单系统开发、建立数据库、定义随机组合查询、报表定义、动态数据交换过程、对象的连接与嵌入、网络文件服务功能、建立文件和基本数据分析、模型定义、计算及分析功能、宏命令、嵌套调用。 l 最终程序提交。 2.7.4.4 实施培训方法本系统实施步骤如下:  1. 现场调查与业务分析 通过对用户现有的管理模式、业务状况、工作习惯和工作流程进行调查,了解目前管理中存在的问题;明晰系统的真正需求和管理目标。 2. 流程配置设计 在现有业务流程、工作流程现状描述的基础上,对各项流程进行分析诊断,确定“关键流程”。用先进信息化技术、行业管理思想进行设计优化。 3. 贯彻始终的培训 系统实施过程中,对不同层次的人员要有针对性地进行不同内容的培训。对管理层人员进行管理思想培训;业务人员进行业务流程培训和新工作流程改造;操作人员进行软件功能操作培训和及日常应用的培训;对系统管理人员应进行系统功能、业务流程描述、数据流程的培训。 4. 基础数据准备 系统上线前,要准备大量的基础数据,基础数据是系统运行的基础,对基础数据的整理要求是全面、准确。 5. 文档控制 项目实施过程中,要准备并保留大量的标准文档。包括标准编码、标准数据文档、标准参数设置文档、标准业务流程文档、用户操作指南文档、分阶段实施计划文档、项目报告及总结文档等。 6. 并行策略 新系统上线后,应有一段时间的并行期,最少以三个月为周期。通过新旧系统的运行,可以验证新系统的数据,逐步明晰新系统的流程,不断熟练操作,为新系统的安全稳健运行奠定基础。 7. 分阶段验收策略 对项目实施过程中的每一个重要阶段(里程碑),都要进行相应的阶段验收,以脚踏实地,一步一个脚印的前进,也是有效控制项目风险的手段。因此划分阶段;确定阶段目标成果;每个阶段结束应进行总结,以稳步推进实施进程。 8. 关注最终目标 实施目标是整个项目组织努力工作的方向,以项目目标为指导,建立行之有效的绩效监控体系和管理评价指标体系,可以督导项目组工作不断改进和改善。 针对用户不同阶段的培训,包括:“系统管理思想培训”、“产品培训”、“专项培训”、“技术支持培训”四个类别的培训。 1. 系统管理思想培训 在信息化工程开始之前,用户方领导需要全面了解系统在其经营管理中的价值,如何实施系统工程,以及如何利用系统优化流程等一系列的问题。为此,本项目将联合专家组和高层领导组针对管理人员进行系统管理思想的培训,帮助用户在系统上线之前,做到心中有数。 2. 产品培训 在系统交付之后,用户需要内部员工熟练掌握系统应用,达到利用系统进行工作管理的目的。“产品培训”面向系统软件新用户,主要讲授软件标准产品的标准应用,是软件新用户的入门必修课。 3. 专项培训 在系统应用过程中的一些特殊岗位,需要使用系统的一些特殊功能来完成相应的工作。因此,项目组特别开设了“专项培训”,有针对性的讲授系统专项应用技能。 4. 技术支持培训 在系统的实施和应用过程中,需要专门培养一批实施、维护等专业人员,来保障信息化建设的顺利进行和稳定运行。 l 如何加强数据安全管理; l 软件系统与操作系统的最佳配置; l 如何配置网络环境; l 如何进行数据库的维护与管理; l 数据管理的常见问题及解决办法; l 日常维护工具与技巧。 应用维护技巧培训:在应用系统的过程中,每一个应用人员都应该掌握一定的应用维护技巧,以便及时排除常见的系统故障,提高工作效率。本培训通过系统地讲解应用维护技巧和常见故障及解决办法,充分提升学员的系统应用维护能力,保证系统正常稳定的运行。 l 信息化业务流程建议; l 应用中的注意事项与要点总结; l 应用工具; l 数据分析工具; l 常见问题与排除方法。 2.7.5 分布式多层系统应用架构开发技术界面和业务的分离是开发可维护、易扩展的应用系统的关键,也是实现多层架构的必经之路,而面向对象开发技术为开发界面和业务分离的系统提供了有效的途径。界面和业务的分离经由逻辑分离、物理分离直至空间分离,最终实现了多层分布式体系结构。 项目制作过程中,我们将系统划分为:界面类、界面控制类、业务逻辑类、数据连接类、数据库。
界面类,界面类的设计专注于用户交互和操作导航,适应多变的业务需求,而不会受业务影响。 界面控制类,负责与界面类通信,并且对用户录入数据进行合法性校验。 业务逻辑类,包括业务对象、服务对象,完成业务逻辑。 数据连接类,封装ADO数据引擎,使应用程序对数据的访问透明。 数据库,存储数据。 组件或构件技术是应用级别的集成技术,其基本思想是将应用软件分解成为一个个独立的单元,将软件开发地过程转变成为类似于“搭积木”的搭建过程,通过组装不同的软件组件单元来实现软件的集成。按照组件技术的观点,应用软件的开发就成为各种不同组件的集成过程。COM是Microsoft提出的组件标准,DCOM(Distributed Component Object Model,分布式组件模型)是Microsoft的分布式计算标准,是对COM的进一步扩展。而集成DCOM与MTS(Microsoft Transaction Server,微软事务服务器)的新技术被命名为COM+。 在交通行政案件处罚(理)辅助系统中的设计中,我们根据需要将整个系统分割成若干的层,每个层根据功能抽象出一些通用的组件,包括内核组件和业务组件。内核组件包括:通用数据访问组件、权限验证组件等。业务组件包括管理组件、数据同步组件、数据校验组件等。 3 完成情况3.1 成果清单完成情况南京港口管理系统软件成果包括: 1. 南京港口管理系统应用程序包; 2. 南京港口管理系统数据库。 3.2 文档清单完成情况南京港口管理系统文档包括:《南京港口管理系统项目方案书》、《南京港口管理系统需求分析报告》、《南京港口管理系统设计报告》、《南京港口管理系统测试报告》、《南京港口管理系统用户手册》。 致 谢 南京港口信息管理系统从项目立项、需求调研、系统分析设计到系统实施的全过程,得到了各级交通主管部门的大力支持,他们给本项目的策划、开发、实施提供了许多良好的建议和意见,谨在此表示最衷心的感谢。没有各级领导部门的大力支持,本项目就不可能顺利完成。 尤其感谢南京市航运管理处的各层领导和相关部门工作人员,他们对南京港口信息管理系统研制工作非常重视和支持。他们在整个系统的调研、分析、设计、实施过程中付出了艰苦的劳动。
|