船舶动态管理系统技术手册.doc_第1页
船舶动态管理系统技术手册.doc_第2页
船舶动态管理系统技术手册.doc_第3页
船舶动态管理系统技术手册.doc_第4页
船舶动态管理系统技术手册.doc_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

船舶动态信息管理系统技术手册本技术手册专门为用户编写,手册共分为概述、系统分析、系统设计、编码、测试、维护等六节,囊括了系统开发各阶段的所有技术资料,其内容完备、严谨、详实,为了方便用户使用,在编写中加入了大量的通俗易懂的解释性文字。手册为用户使用和维护系统以及对系统进行功能扩充和再工程提供了有力指南。掌握系统的核心技术一直是用户的心愿,相信用户在读完此手册后,一定会有如愿以偿之感,使您真正拥有系统,成为驾驭整个系统的主人。第一节 概述一、 统的功能与特点系统的功能一般是在开展系统设计之前,根据用户需要进行需求分析后定义好的。在以下的叙述中将给出系统成形后所拥有的功能,和在实基本功能之上的系统特点。本系统能够完成对海洋船舶公司的船舶生产运营信息和公司多项工作信息的录入、维护、查询、统计和报表输出等功能。系统采用SQL SERVER 作为后台数据库,以Windows 窗体程序作为客户端操作平台,客户端程序适于安装在配有 Windows 98 以上版本的操作系统的机器上。系统充分发挥计算机网络信息传输的技术优势,公司内部相关人员不论在任何地点,只需在其计算机上安装本系统,并能与公司内部网络相连,在通过登录验证后,便可对系统进行相应操作。为了保证系统数据的安全性和完整性,系统将数据录入和数据维护分开。数据录入界面只完成对数据的录入操作。开发者在界面设计上充分为用户考虑,凡是具有重复录入值的数据项,几乎都可以用下拉列表框直接选取,省去了每次都要键盘录入的繁琐,也最大限度地减少了由键盘录入可能引入的错误。通过合理地设置界面中各控制件的焦点次序,用户可以键击回车键或Tab键快速地从一控件切换到下一个要操作的控件,并为界面中的每一按钮设置了热键,只需将Ctrl键和相关热键同时按下,即可完成相当于鼠标对该按钮的单击操作。采用以上设计风格,可大大减少键盘操作和鼠标操作的交替次数,降低了用户数据录入的工作强度。数据维护界面可对数据进行修改和删除操作,在设计风格上与录入界面保持一致。除了对已有数据进行维护操作外,数据维护界面也具有数据录入功能。拥有数据维护权限的用户在特殊需要时可以用此界面进行数据的批量录入。查询界面操作简捷,用户只需根据自己的意图输入查询条件,系统即可显示出查询结果。报表输出功能将报表数据统计和数据填写的工作量降为零,用户只需将报表数据生成条件输入,系统将自动完成各类报表数据的分类汇总,并将最终结果以用户所熟悉亲切的形式呈现于电脑屏幕,用户只要再根据预览效果,对页面设置稍作调整就可打印输出。报表输出功能除了在特定时间输出报表外,也可以用作日常的数据查询,而且其屏幕输出结果比简单的查询结果更具有条理性。通过改变数据的生成条件,可呈现出反映任何时段的相关信息结果。系统维护人员可以将一些在数据录入时频繁用到的数据通过系统维护界面一次性输入,为数据录入提供界面数据支持,以减少键盘录入量同时提高数据的正确率。系统的用户信息也要由系统维护界面输入,系统的客户端程序依据用户信息进行客户端身份验证,根据用户权限不同为主窗体的各菜单项设置相应状态,由此可减少用户的误操作。数据服务器管理员亦能根据用户信息对数据服务器的登录进行设置。二、 系统的体系结构在Web技术被广泛应用的今天,B/S(浏览器/服务器)体系结构似乎成为了现代程序的主导体系结构。但B/S体系结构还有一些尚未克服的缺点,如安全性差,结构的中间层次多导致的运行效率低下,适用的客户端构件少功能弱以致不能满足用户的多种需要。基于对上述情况的考虑,本系统还是采用了传统的C/S(客户机/服务器)本系结构。系统在客户端只驻留少量的程序代码,大量的数据和复杂的功能实现放在服务器端。随着网络程序安装和组件版本自动更新技术的发展,C/S本系结构的弱点会在一定程度得到弥补。三、 于构件的软件工程思想构件技术是在面向对对象技术的基上发展起来的,构件完成了对类的包装,对多个类进行有机的组合,构件在功能上强于类,对软件资源的复用粒度大于类。构件定义了完备的外部接口,通过接口可以方便地实施对构件的控制,将多个构件装配起来可以实现复杂的程序功能。开发中所使用的每一构件都是事先经过检验的,由构件组装起来的程序,其可靠性大为增强。复用粒度的增加使软件的开发周期大大缩短,软件的调试也变得方便。四、 新技术的使用1、.NET 框架是用于生成、部署和运行 XML Web services 和应用程序的多语言环境。它包含以下三个主要部分: 公共语言运行库 运行库实际上在组件的运行时和开发时操作中都起作用,尽管名称中没有体现这个意思。在组件运行时,运行库除了负责满足此组件在其他组件上可能具有的依赖项外,还负责管理内存分配、启动和停止线程和进程,以及强制执行安全策略。在开发时,运行库的作用稍有变化;由于做了大量的自动处理工作(如内存管理),运行库使开发人员的操作非常简单,尤其是与今天的 COM 相比。特别是反射等功能显著减少了开发人员为将业务逻辑转变为可重用组件而必须编写的代码量。 统一编程类 框架为开发人员提供了统一的、面向对象的、分层的和可扩展的类库集 (API)。目前,C+ 开发人员使用 Microsoft 基础类,而 Java 开发人员使用 Windows 基础类。框架统一了这些完全不同的模型并且为 Visual Basic 和 JScript 程序员同样提供了对类库的访问。通过创建跨所有编程语言的公共 API 集,公共语言运行库使得跨语言继承、错误处理和调试成为可能。从 JScript 到 C+ 的所有编程语言具有对框架的相似访问,开发人员可以自由选择它们要使用的语言。 ASP.NET ASP.NET 建立在 .NET 框架的编程类之上,它提供了一个 Web 应用程序模型,并且包含使生成 ASP Web 应用程序变得简单的控件集和结构。ASP.NET 包含封装公共 HTML 用户界面元素(如文本框和下拉菜单)的控件集。但这些控件在 Web 服务器上运行,并以 HTML 的形式将它们的用户界面推送到浏览器。在服务器上,这些控件公开一个面向对象的编程模型,为 Web 开发人员提供了面向对象的编程的丰富性。ASP.NET 还提供结构服务(如会话状态管理和进程回收),进一步减少了开发人员必须编写的代码量并提高了应用程序的可靠性。另外,ASP.NET 使用这些同样的概念使开发人员能够以服务的形式交付软件。使用 XML Web services 功能,ASP.NET 开发人员可以编写自己的业务逻辑并使用 ASP.NET 结构通过 SOAP 交付该服务。2、程序集程序集是 .NET 框架应用程序的生成块;程序集构成了部署、版本控制、重复使用、激活范围控制和安全权限的基本单元。程序集是为协同工作而生成的类型和资源的集合,这些类型和资源构成了一个逻辑功能单元。程序集为公共语言运行库提供它要用于识别类型实现的信息。对于运行库,类型不存在于程序集上下文之外。3、元数据元数据是一种二进制信息,用以对存储在公共语言运行库可移植可执行文件 (PE) 文件或存储在内存中的程序进行描述。将您的代码编译为 PE 文件时,便会将元数据插入到该文件的一部分中,而将代码转换为 Microsoft 中间语言 (MSIL) 并将其插入到该文件的另一部分中。在模块或程序集中定义和引用的每个类型和成员都将在元数据中进行说明。当执行代码时,运行库将元数据加载到内存中,并引用它来发现有关代码的类、成员、继承等信息。4、ADO.NETADO.NET 提供对 Microsoft SQL Server 等数据源以及通过 OLE DB 和 XML 公开的数据源的一致访问。数据共享使用者应用程序可以使用 ADO.NET 来连接到这些数据源,并检索、操作和更新数据。ADO.NET 有效地从数据操作中将数据访问分解为多个可以单独使用或一前一后使用的不连续组件。ADO.NET 包含用于连接到数据库、执行命令和检索结果的 .NET 数据提供程序。您可以直接处理检索到的结果,或将其放入 ADO.NET DataSet 对象,以便与来自多个源的数据或在层之间进行远程处理的数据组合在一起,以特殊方式向用户公开。5、XML(可扩展标记语言)“可扩展标记语言”(XML) 提供一种描述结构化数据的方法。与主要用于控制数据的显示和外观的 HTML 标记不同,XML 标记用于定义数据本身的结构和数据类型。 XML 使用一组标记来描绘数据元素。每个元素封装可能十分简单也可能十分复杂的数据。您可以定义一组无限制的 XML 标记。例如,您可以定义一些 XML 标记来声明订单中的数据,如价格、税收、发货地址、帐单地址等等。由于 XML 标记在整个单位中以及跨单位采用,因此来自各种不同数据存储区的数据将更容易交换和操作。XML 是一种简单、与平台无关并被广泛采用的标准。XML 相对于 HTML 的优点是它将用户界面与结构化数据分隔开来。这种数据与显示的分离使得集成来自不同源的数据成为可能。客户信息、订单、研究结果、帐单付款、病历、目录数据及其他信息都可以转换为 XML。6、Visual Basic .NET Visual Basic .NET 是下一代的 Visual Basic 语言,它是一种可简便快捷地创建 .NET 应用程序(包括 XML Web services 和 ASP.NET Web 应用程序)的语言。 Visual Basic .NET 具有许多新功能和改进功能(如继承、接口和重载),这使 Visual Basic .NET 成为功能强大的面向对象的编程语言。其他新的语言功能包括自由线程处理和结构化异常处理。Visual Basic .NET 还完全集成了 .NET 框架和公共语言运行库,.NET 框架和公共语言运行库共同提供语言互操作性、垃圾回收、增强的安全性和改进的版本支持。五、 严格的软件工程规范本次开发严格遵守软件工程中所定义的各项规范,在软件的需求分析阶段采用了系统文本描述,组织结构模型,实体-关系图、数据流图,对软件的功能范围做出了严格的界定;软件的设计阶段采用了UML(统一建模语言)对各个类的关系进行了描述:编码时加入大量的注释文字使源程序便于阅读。各项工作都有完备的文档记录,对软件的维护提供了详细的技术资料。六、 可行性分析可行性分析中包括的内容很多,可以专门作为专门一节进行述叙,但其中相当一部分应由用户完成,所以在此仅就技术上的可行性做一简单的描述。从硬件上讲,用户单位已经配有完整的网络体系,网络的传输速率在 MB/S以上,客户端对服务器的一次请求的信息传输量一般在0.1MB以内,物理网络完全可以满系统的通信要求。目前普通的服务器的内在存大于500MB,CPU主频在1G以上运行现的各种数据服务器软件是绰绰有余的,硬盘容量大于40GB,估计整个系统年产生的数据量在10MB左右,只是硬盘容量的四千分之一。客户端程序经过编译后一般大小在1MB上下,在当前通用的PC上运行上很轻松的。从软件上讲,现在流行的数据服务器软件有几种,选其中的一种作为系统的后台数据服务器是没有问题的,开发客户端数据库程序的开发平台很多,技术是都成熟,可以满足各类开发需要。经过以上简述可见开发此系统要软硬件两方面都有充分的技术保障。第二节 系统分析本节将介绍在系统开发的初期如何运用软件工程中通用的分析工具对用户需求和系统结构进行模型化分析的过程。一、 系统的描述文本描述文本是运用自然语言对用户单有组织结构、运营方式,信息流通和用户对系统的需求的一种概括性文字描述。在描述中不使用专业术语,而是使用生活化的语言。文本也是开发者在与用户进行一系列口头交流后,对其内容进行的整理,文本具有稳定性可以使问题变得明确化。下面给出描述文本:海洋船舶公司的生产运营活动为油田内部、油田外部和自身提供浅海原油生产物资运输,人员接送,抢险救生等多项服务。公司要拥有一个船舶信息管理系统,利用该系统可以完成船舶各类信息的输入、查询和报表输出等多项功能。公司生产运营以龙品为中心,并在桩西又设有一生产基地。运行船舶往返于龙口、桩西、天津等港口和分布于莱洲湾的浅海作业平台。待命船舶停靠于龙口、桩西两港口。公司在龙口,桩西、长岛设有修理基地,可以进行船舶修理维护。公司配有完备的生产调度系统,根据用船单位和公司内部实际之需调度各条船舶。为了协助船舶的生产运营,公司设有为其提供服务的多个三级单位,龙口、桩西还设有部分类似的四级单位。为了协调公司的整体运转,每日公司及各单位有一名或多名领导值班。每条船舶出海,要配有船长、大副、轮机长、大管轮各一名和船员若干。一名船长在多次出航中可以负责不同船舶,同一一船舶在多次的出海也可由不同的船长负责,其他人员与此类似。船舶出海有明确的工作内容和服务对象。任务执行完毕后,船舶负责人应将任务的完成情况,出航的航时、航程、机油消耗、燃油消耗、淡水存量以及在出海中出现的特殊情况报告调度或相应级别的值班领导。生产调度部门应有专人负责将船舶的生产信息记录在案。船舶的状态可分为公司内部出海、油田内部出海、油田外部出海、龙口停靠、桩西停靠、龙口修理、桩西修理和长岛修理等七种状态。船舶的一种状态的持续的时以天计算。船舶在一天中只要出海一次且无论时间长短,该船的当天状态即为出海。船舶只有在全天中处于停靠或修理状态方算作停靠或修理状态。对于船舶在状态信息也要详细记录在案。每天下公司及各单位应按其职能将领导值班情况、前线工作概况、船舶出海信息、船舶状态信息送交系统数据录入人员进行录入。公司及其各级子单位会召开各类会议,为了对各次会议做到有案可查,对每次会议的时间、地点、参加人员、会议内容要指定专门人员将其录入系统。公司的历次抢险救生情况亦需录入系统。数据录入人员应将各生产地点的气象预报在适宜的时间输入系统。公司的各级负责人可以利用系统对上述信息所感兴趣的部分进行查询。信息的直接发生者也可通过信息查询,以核实各项数据对自身情况反映的真实程度,若发现数据中有错误存在。可以向数据的维护人员提出更正要求。数据的维护人员应由熟悉公司各项生产活动的人员担当,定期对数据检查,当发现与实际情存在明显偏差的数据时,要与录入人员共同核实数据,以期及时消除错误。报表负责人员应在公司每天晨会之前,将生产地点晨报和前线生产日报打印足够份数,以备晨会与会者使用。生产地点晨报应包含各生产地点和船舶将要驶向港口的天气预报,前一日出海船舶名称(按用船单位将其分开),停靠、修理船舶(按地点将其分开),以及各单位领导值班情况。前线生产日报应包括前一日各条出海船舶的具体情况、前一日的气象情况、前线生产的总体情况和急需办理事务。以上信息为晨会制定公司当日工作计划提供依据。会后应将今日工作计划录入系统,以形成完整的晨报内容。在每月月底相关负责人员要对公司各条船舶自上月二十一日到本月二十日的运营和物资消耗情况做出统计汇总,形成反映统计结果的三张报表:月度船舶每日状态报表(反映船舶当月的每天状态)、月度船舶状态总体报表(反映每条船舶当月所处各状态的总天数)、月度船舶物耗报表(反映船舶当月各类物资的总消耗量)。二、 船舶生产运营组织框图三、 该表示法是将公司内部与生产运营有关人员、各单位之间的组织管理关系,信息交互关系用框图的形式表示出来。 四级生产辅助单位离船船务人员生产调度公司主管领导公司生产辅助单位在船工作人员四、 实体关系力图(ER图)在E-R图中,用内带文字的方框表示实体,实体是系统中被关注的对象。实体之间的连线表示它们所具有的关系,标准的E-R图连线中间有一菱形并在其中注明关系,为简明此图中将其省略。 生产地点值班岗位生产调度工作安排报表数据维护人员船舶信息系统数据录入人员气象生产辅助单位 公司状态船员任务船舶晨会公司领导 报表负责人系统维护人员生产信息四、数据流图处理后的各类信息各类信息信息管理系统 0经营管理者公司各类信息源 在上面的工作中已经把系统中各实体和实体之间的关系描述出来了,那么数据在实体之间传递过程如何,将对数据做怎样的加工,数据的存放形式又是什么样的,诸如此类的问题要用到数据流图进行分析。在图中用内加文字的方框表示数据的源点和终点;用椭圆并在里面添一条横线表示一个数据加工,横线上方注有此加工的编号,下方有文字注明加工名称;两条横线在其间加入文字表示一个数据文件;带有箭头的线段表示一个数据流及其流向,数据流将上述几种图标连接起来,在线段旁边加有文字以标明数据流名称。在每幅数据流图的左上部有一方框内有文字注明图号,图号从零编起。零号图是对整个系统的一种高度的概括,将系统抽象为一个加工,有一个数据源点和一个数据终点。然后以从上到下,由粗到细的原则,将一个加工逐层分解细化,0号加可以分解为1、2、3号加工,1号加加工进一步分解为1.1、1.2、1.3号加工,其余的依此类推,最终将整个系统用多幅层次和细化程度不同的数据流图表示出来。图号0规范后的录入流船舶信息记录单公司事务记录单气象记录单数据录入人员临时保存处 理1.2数据接收1.1图号1报表负责人身份确认系统维护员录入人员查询用户数据维护员员6数据存储器1数据录入查询处理23数据维护4报表生成5系统维护图号1 多种生产信息数据存储器数据存储器图号3查询条件结果显示视频查询用户查询处 理2.22.3结果显 示2.1查询条件接 收 图号4维护请求信息数据维护人员维护结 果显示3.43.3数据删 除3.2数据更 新 数据存储器3.1数据插入图号5数据存储器报表结果数据报表条件信息报表操作者4.4报表打 印报表预 览4.3报表数据处 理4.24.1接收生成条 件 报表硬拷贝系统维护需求笔记系统维护员5.2数据存储器界面数据维 护用户信息维 护图号6 5.1数据存储器许可信息用户信息各功能模块各类用户激活相应功 能6.3用户信息验 证6.26.1用户信息接 收图号7 五、 数据字典数据字典是在数据流图的基础上,以字典排序的形式对在数据流图中出现的各个元素(术语称之为条目)进行更为详细的注解、分析。数据字典包括数据元素、数据流、数据文件、数据源点和终点、数据加工等五种条目。本字典主要记述数据流、数据加工、数据文件三类条目,每个条目以其名称开始,然后在两条线段之间写明条目各子项及其注解。 (一)、数据流1、 公司工作信息 数据流名称:公司工作信息数据流来源:公司各生产经营活动数据流去向:以各种记录的式形送交数据录入人员 数据流载体:书面笔记组成:工作安排+会议记录+领导值班+前线工况流量特征:一般在各活动完成之后有文字记录送交录入人员形成流量,流量大小与各式各活动的总和有关。2、 气象信息 数据流名称:气象信息数据流来源:天气预报数据流去向:以文字形式送数据录入人员 数据流载体:书面笔记组成:日期+生产地点+天气情况+龙口潮汐流量特征:天气预报得到后,送交录入员时形成流量,天气预报的形式比较固定,流量稳定。3、 船舶信息 数据流名称:船舶信息数据流来源:公司船舶生产运营数据流去向:送交录入人员 数据流载体:书面笔记组成:船舶任务+船舶状态+船舶物耗流量特征:在船舶运营计划、船舶状态、船舶物耗量名确后形成流量。4、 规范后的录入流 数据流名称:规范后的录入流数据流来源:录入员数据流去向:数据录入接收窗体 数据流载体:键盘输入组成:工作信息+气象信息+船舶信息流量特征:录入员在接到各类记录单后形成流量,流量与各信息量有关。5、 查询条件 数据流名称:查询条件数据流来源:用户的查询意力图数据流去向:查询条件的接收窗口 数据流载体:键盘输入组成:多个表字段值流量特征:流量的发生与大小和用户的查询习惯有关。6、 查询结果 数据流名称:查询结果数据流来源:数据存储器数据流去向:查询结果显示窗口 数据流载体:数据存储器通向客户机的组成:其组成依用户的查询条件而定流量特征:在用户发出查询请求后产生流量,流量大小依返回查询结果而定。7、 维护请求 数据流名称:维护请求数据流来源:数据的维护需求数据流去向:数据维护窗体 数据流载体:键盘录入组成:维护类别+更正内容流量特征:当进行数据维护时产生流量,其流量大小与错误发生的频率在关。8、 报表条件信息 数据流名称:报表条件信息数据流来源:报表操作者数据流去向:报表条件接收窗体 数据流载体:键盘录入组成:报表类型+报表条件+制表人姓名+制表日期+审核人姓名流量特征:在需要输出报表时产生流量,流量大小与报表类型,条件复杂度,访问频率有关。9、 报表数据 数据流名称:报表数据数据流来源:报表数据处理子系统数据流去向:报表显示子系统 数据流载体:客户机内部传输线路组成:报表所需的最终数据流量特征:当报表数据处理完成时产生流量,流量大小与报表结果数据有关。10、 系统维护维护请求 数据流名称:系统维护维护请求数据流来源:系统维护员数据流去向:系统数据维护窗体 数据流载体:键盘录入组成:维护请求内容流量特征:流量的产生与大小跟界面支持数据的变更频率有关。11、 用户信息 数据流名称:用户信息数据流来源:登录系统的用户数据流去向:用户信息接收窗体 数据流载体:键盘录入组成:数据服务器名称+用户名+口令流量特征:在用户登录时有流量,流量大小与单位时间登录的用户数有关。12、 许可信息 数据流名称:许可信息数据流来源:键盘录入数据流去向:功能激活模块 数据流载体:子系统信息交互组成:子系统名称+许可权限流量特征:流量与用户成功登录的次数有关(二)、数据文件系统分析阶段还没有明确的数据库文件或其右供系统直接读取的文件。这里说的数据文件只是组机构内部各单位之间传递信息的载体,为了便于分析这里设了一个很抽象的数据存储器,到于它究竟存些什么和如何存等问题会在讨论数据库设计时描述。1、 数据存储器名称:数据存储器简述:存储由数据录入员输入的已经规范化后的各种信息文件的组成:船舶信息+公司工作信息+气象信息+界面支持数据文件的组织方式:以高度规范化的多张数据表组成,数据定义严谨,便于机器操作。2、 公司工作记录单名称:公司工作记录单简述:将公司的各项工作内容以手工笔记的形式形记录下来文件的组成:会议记录+工作安排+领导值班信息+前线工况文件的组织方式:文件在组织上带有较大的主观性,以公司内部长期约定俗成的形式出现。3、 船舶信息记录单名称:船舶信息记录单简述:对有关船舶的各类信息以书面的形式记录下来文件的组成:船舶任务+船舶状态+船舶物资消耗文件的组织方式:文件在组织上带有较大的主观性,以公司内部长期约定俗成的形式出现。4、 气象信息记录单名称:气象信息记录单简述:此信息可以是对气象信息的抄录文本,也可是从气象信息网站上直接拷贝文件的组成:各生产地点天气预报+潮汐文件的组织方式:视信息的来源不同而有所不同。5、 报表硬拷贝名称:报表硬拷贝简述:将公司生产运营的各类信息统计汇总后以表格的形式呈现于纸上。文件的组成:标题+表头+细节+总计+报表注释文件的组织方式:报表组织形式严谨规范,便于查看。(三)、加工条目1、数据接收加工名称:数据接收加工编号:1.1简述:对用户从外设输入的数据进行合理性判断,将明显不符合要求的数据滤除输入数据流:规范化的录入信息输出数据流:经过过滤之后的数据流加工逻辑:将用户输入的数据与一组标准数据进行比较,保正确的数据激发条件:用户的数据输入执行频率:与数据的输入量有关2、数据接收加工名称:数据接收加工编号:1.2简述:在用户的计算机内存中开辟缓存空间,将正确的录入数据暂时保存下来。输入数据流:正确的录入数据输出数据流:XML(扩展置标语言)数据流加工逻辑:将普通录入文本保存并转换成XML数据流激发条件:正确的数据发出暂存请求执行频率:与正确录入的数据量有关。3、查询条件接收加工名称:查询条件接收加工编号:2.1简述:接收查询条件并对其正确性做出判断输入数据流:查询条件输出数据流:形式化了的SQL(结构化查询语言)加工逻辑:将用户的查询条件变为SQL语流激发条件:查询条件被用户提交执行频率:与用户的查询次数有关。4、查询处理加工名称:查询处理加工编号:2.2简述:接收SQL语流,并向数据服务器发出请求输入数据流:SQL语流输出数据流:查询结果数据加工逻辑:根据SQL语流在数据存储器中检索用户所需的信息激发条件:数据存储器接到SQL语流执行频率:与用户的查询次数有关。5、 查询结果显示加工名称:查询结果显示加工编号:2.3简述:将结果数据可视化输入数据流:查询结果数据输出数据流:视频流加工逻辑:把结果数据发往显示控件,在屏幕止显示激发条件:显示控件接收到结果数据执行频率:与用户的查询次数有关。6、数据插入加工名称:数据插入加工编号:3.1简述:将录入数据加入数据存储器输入数据流:维护请求信息输出数据流:SQL语流加工逻辑:将由用户从键盘录入的数据维护请求转换为标准人化的SQL语流并提交数据存储器激发条件:用户提交数据插入请求执行频率:与数据录入人员数据遗漏量有关。7、数据更新加工名称:数据更新加工编号:3.2简述:将错误数据的更新结果提交数据存储器输入数据流:维护请求信息输出数据流:SQL语流加工逻辑:将数据更改请求转换为标准的SQL数据更新语流激发条件:用户提交数据更新请求执行频率:与数据错误发生率有关。8、数据删除加工名称:数据删除加工编号:3.3简述:将数据存储器中的重复或错误的数据库删除输入数据流:维护请求信息输出数据流:SQL语流加工逻辑:将维护请求信息转换为SQL数据删除语流激发条件:用户提交数据删除请求执行频率:与数据重复发生频率和用户对数据的维护习惯有关。9、维护结果显示加工名称:维护结果显示加工编号:3.4简述:在进行数据维护后将数据存储器的维护结果显示给用户输入数据流:数据存储器状态信息流输出数据流:显示数据存储器状态的视频流加工逻辑:将数据存储器的状态可视化激发条件:数据存储处理完维护请求执行频率:与用户对数据的维护率有关。10、接收生成条件加工名称:接收生成条件加工编号:4.1简述:把用户输入的报表生成条件暂时保存,并对其进行规范化输入数据流:用户的键盘输入输出数据流:正确的报表生成条件加工逻辑:对用户输入的条件进行判断,将正确的送入报表数据处理模块激发条件:用户提交报表请求执行频率:与报表的需求量有关。11、报表数据处理加工名称:报表数据处理加工编号:4.2简述:对原始数据根用户的报表请求进行统计处理输入数据流:规范化的报表生成条件输出数据流:报表所需的结果数据加工逻辑:对原始数据进行筛选、排序、分组、求和激发条件:接到规范化的报表生成条件执行频率:与报表的需求量有关。12、报表预览加工名称:报表预览加工编号:4.3简述:将报表结果在屏幕上显示出来输入数据流:报表结果数据输出数据流:视频流和打印控制流加工逻辑:将报表结果数据转换成视频流和打印控制流激发条件:接到报表结果数据执行频率:与报表的需求量有关。13、报表打印加工名称:报表打印加工编号:4.4简述:打印机接收到打印控制流,输出报表输入数据流:打印控制流输出数据流:报表硬拷贝加工逻辑:将打印控制流转换为字符点阵激发条件:打印机接收到控制流执行频率:与报表的需求量有关。14、用户信息维护加工名称:用户信息维护加工编号:5.1简述: 添加用户信息输入数据流:用户信息维护请求输出数据流:规范化的用户用户信息加工逻辑:将各类用户信息添到数据存储器中激发条件:收到用户信息维护请求执行频率:与用户信息的变更频率有关。15、界面数据维护加工名称:界面数据维护加工编号:5.2 简述:维护数据存储器中界面数据输入数据流:界面数据维护请求输出数据流:规范化的各类界面信息加工逻辑:对界面数据进行各种增删、修改激发条件:界面数据维护执行频率:与用户信息的变更频率有关。16、用户信息接收加工名称:用户信息接收加工编号:6.1简述:暂存录入的用户信息,并使其规范化输入数据流:用户信息输出数据流:用户规范化了的用户信息加工逻辑:使信息规范后向验证模块提交激发条件:用户键盘录入执行频率:与用户的登录频率有关17、用户信息验证加工名称:用户信息验证加工编号:6.2简述:对用户的信息进行验证输入数据流:已经规范化的用户信息输出数据流:许可信息加工逻辑:将用户信息与一组标准信息相比较以确定该试图登录者是否为系统用户激发条件:接到规范化的用户信息执行频率:与用户的登录频率有关18、激发功能加工名称:激发功能加工编号:6.3简述:将许可发送到相应的功能模块输入数据流:许可信息输出数据流:功能模块名和相应权限加工逻辑:对权限进行分析,使不同的模块处于不同的可用状态激发条件:接收到许可信息执行频率:与用户成功登录系统的次数有关。第三节 系统设计一、 几点说明本软件在开发过程中采用了构件软件技术和UML,此两项技术是以面向对象技术为基础的。面向对象技术经过二十多年的发展,已经具备了坚实的理论和实践基础,而且还处在进一步的发展和完善之中。构件技术和UML就是对面向对象技术的发展和延伸。面向对象的软件工程早有完备的技术体系,软件工程的各阶段都建立了完整的模型,包括需求模型、分析模型、设计模型和实现模型。上面些概念和方法比较复杂不易理解,因此在前面的一些分析中没有运用面向对象的方法,面是采用了传统软件工程中常用的一些方法。既然在本软件的开发中使用了构件技术,所以在本节还将讲到些面向对象的方法。系统设计是在完成对系统分析之后进行的,它向系统的最终实现更靠近了一步,在分析与实现之间架起了一道桥梁。基于构件的软件工程在设计阶段要完成的任务就是选择和获取一些搭建整个软件系统所需的构件以及类。通常情况下这些东西就存在于软件开发包中,在另有一部分构件本身就是一个独立的程序。获得构件和类之后,需考虑它们之间的关系及在一个系统中如何进行配合。在设计中会用到一些UML的表示方法,UML是一种表示面向对象中各类元素的符号化语言,这些符号表示法将后面陆续进行介绍。二、 系统边界的确定上节中我们分析了系统中的很多实体,其中每一个实体可以抽象为一个类。类是面向对象技术中的重要概念,类是对客观世界中一组具有相似特征事物的抽象和概括。比如公司中的所有船舶就可以抽象为一个船舶类。这个类描述了所有船舶多个共有的属性,如船舶的状态、位置。在类中还要描述些类事物所共有的动作行为,如船舶的出海、停靠。基于构件的软件工程要求在搭建系统的时候,尽可能地使用一些功能强、复用粒度大的构件,如果把系统所涉及的每一实体都构造成类,显然会使系统变得纷繁庞杂。我们利用数据服务器这个大块头的构件,就能把在系统分析中所讨论到的许多实体的动作和属性给保存起来。或者抽换一种思维角度,就是数据服务器帮助我们将多个类给封装起来了,而不需要我们亲自去创建。数据录入人员、维护人员、查询者和报表的操作者通过系统提供的相应接口与系统进行直接会话,其它实体与软件系统间的信息传递是经过他们间接进行的。分析阶段所讨论的系统还是一个很宽泛的系统,本节要把将要在计算机和网络上运行的软件系统划定出来。下面用UML中的用例图将系统表示出来:维护员查询者报表负责人录入员数据维护数据录入数据服务器数据查询报表输出 图中方形边框表示系统的边界,边界外部的人形表示动作者边界内部以椭圆内加文字表示一个用例。用例是从用户的观点看,当系统接收到来自外部的消息后所进行的一系列响应动作。三、 数据库设计 如何将以上提及的各类实体的属性以及各实体之间的关系合理地存储到数据库中,是数据库设计要研究的问题。本系统将用SQLERVER 2000数据服务器作为数据库的载体。一个数据库中包含的元素类型很多,我们把重点放在数据表上。表是一种可以存储一类实体的多个实例一组属性的数据结构。表中包含多个实体实例的记录,如船舶任务是一种实体,那么一条船舶的一次任务就是这种实体的一个实例。一种实体具有多个属性,属性在表中可以用一个字段表示。字段可以选取的类型有多个,每个属性可用一种字段类型来表示,比如船舶任务有任务执行时间、船长、用船单位等属性。执行时间可以用日期型来表示;船长是一个人的姓名可以字符型来表示。在每一张数据表中有多条记录,为了使每条记录区分开来,要为每条记录设置可被区分的标识,相对于一个表来说称其为该表的关键字。关键字可以从表中字段选取,可以是一个字段或者是多字段的组合。比如任务执行时与船舶名称就可以组成一个关键字,但是这个关键字有些长,在向数据表中插入一条记录时,系统要对表中已存在所有记录的关键字进行检查,防止新记录的关键字值与已存在的相同,关键字长了就会降低系统的运行效率。为此给表多加一个ID型的字段,而且让其自动取值,作为整张表的关键字。下面有表格的形式给出数据库中所有表的字段名和每个字段的类型与长度: 1、气象表:weather 记录每日各生产地点气象信息 主关键字:ID 字段名实际名称类型长度IDidID16日期date日期型8地点place字符型20气象weather字符型1002、龙口潮汐表:lk_tide 记录龙口的每日的潮汐情况 主关键字:日期字段名实际名称类型长度日期date日期型8高潮潮时high_time日期型8高潮潮高highwater_hight实型4低潮潮时low_time日期型8低潮潮高lowwater_hight实型43、船舶任务表:task_table 记录各船每日的出航任务 主关键字:ID字段名实际名称类型长度IDidID16日期date日期型8船名ship_name字符型20船长captain字符型20大副chief_mate字符型 20轮机长chidf_engineer字符型20大管轮second_engineer字符型20在船人数worker_count字符型20工作内容task_contnent字符型400用船单位user_name字符型204、船舶动态表:work_dynamic 记录各船航行、油料消耗信息 主关键字:ID字段名实际名称类型长度IDidID16日期date日期型8船名ship_name字符型20航次sail_number整型4航时Sail_time实型4字段名实际名称类型长度航程Sail_long实型4燃油耗消fuel_wastage实型4燃油存量fuel_stock实型4机油耗消oil_wastage实型机油存量oil_stock实型淡水存量warter_stock实型4备注remark字符型5、船舶状态表 :ship_state 记录船舶出航或停靠状态 主关键字:字段名实际名称类型长度idID16日期tade日期型8船名Ship_name字符型20状态代码State_code字符型206、状态名表:state_table 提供状态的汉字名到拼音缩写的转换住信息 字:状态名字段名实际名称类型长度状态名state字符型20状态代码code字符型207、工作安排表:work_plan 将公司每日的工作安排内容记录在案 主关键字:日期字段名实际名称类型长度日期date日期型 8安排plan字符型4008、领导值班表:leader_tudy 记录各岗位的值班领导 主关键字:ID字段名实际名称类型长度IDidID16日期date日期型8岗位station字符20领导name字符809、前线工作情况表:front_situ 记录前线工作情信息 主关键字:日期 字段名实际名称类型长度日期date日期型8日况today_situ字符型400近期安排recent_plan字符型400急办事项instancy_task字符型40010、抢险救生情况表: save_life 记录公司抢险情况 主关键字:日期字段名实际名称类型长度IDidID16日期date日期型8字段名实际名称类型长度内容content字符型400开始时间Start_time日期型8结束时间End_time日期型8参加船舶Join_ship字符型100指挥人员commander字符型10011、会议记录表:meeting 记录开会时间和会议内容 关键字:ID字段名实际名称类型长度Id ID16日期date日期型8地点place字符型30船舶ship字符型100主持人master字符型参加人员join_people字符型100参加人数people_count整型内容content字符型40012、人事简表:employee 对输入界面提供基础数据支持 关键字:ID字段名实际名称类型长度IDidID16姓名name字符型20职称zc字符型20职务zw字符型20单位代码unit_code字符型2013、单位表:unit_table 提供单位汉字名到单位代码之间的转换 关键字:ID字段名实际名称类型长度单位名称unit_name字符型20单位代码unit_code字符型2014、船舶信息表:ship_info_table 提供船舶的名称和简介 关键字:ship_name字段名实际名称类型长度船舶名称ship_name字符型20船舶简介ship_intro字符型2015、天气预报地点表:weather_place_table 提供天气预报地点 关键字:place字段名实际名称类型长度地点place字符型2016、用户信息表:user_info 提供用户登录提供客户端验证依据 关键字:place字段名实际名称类型长度用户名name字符型20口令password字符型20权限powers字符型50四、 窗体设计与数据访问DataFormWindowsFormData AdaptorDataSetDataTableDataRowsDataColumnConnectionCommand客户端程序设计要决定采用怎样的人机接口来满足用户与系统间进行交互的问

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论