(计算机应用技术专业论文)基于数据库技术的化学物质检验软件设计与实现.pdf_第1页
(计算机应用技术专业论文)基于数据库技术的化学物质检验软件设计与实现.pdf_第2页
(计算机应用技术专业论文)基于数据库技术的化学物质检验软件设计与实现.pdf_第3页
(计算机应用技术专业论文)基于数据库技术的化学物质检验软件设计与实现.pdf_第4页
(计算机应用技术专业论文)基于数据库技术的化学物质检验软件设计与实现.pdf_第5页
已阅读5页,还剩60页未读 继续免费阅读

(计算机应用技术专业论文)基于数据库技术的化学物质检验软件设计与实现.pdf.pdf 免费下载

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

文档简介

摘要 近年来,随着计算机技术的发展,社会已经进入了数字化信息时代。但在有 些“化学检验部门依旧在使用人工记忆大量化学资料、手工查询化学典籍、人 工分析化验结果等相对繁琐落后的分析方法。这样人工记忆资料难度大,查询费 时、费力,有时甚至难以查到所需资料,同时,业务人员对于化学物质检验结果, 分析周期很长,且可能产生不同分析结果,给工作带来不便。 “化学物质检验软件 课题在此背景下应运而生。它通过计算机技术和化学 检验技术相结合来解决上述业务难题。本论文阐述了在数据库环境下实现数字化 化学物质和实验数据的过程和方法,详述了未知物质辅助分析算法的建模和改进 过程。 文中首先介绍了软件的研制背景,对化学物质检验方法进行了需求分析,在 此基础上给出了软件的系统构成和管理模型。然后分析了系统的详细设计和数据 库结构设计。并对软件的关键技术解决进行了简要说明,包括未知物质辅助分析 的业务建模、算法设计和充分利用有效标准实验数据的流程设计。 最后,本文展示了“化学物质检验软件”所实现的功能,给出了软件的系统 测试结果和评价,并对本文进行了总结及对今后的工作进行了展望。 【关键词】化学物质检验辅助分析数字化建模 基于数据库技术的化学物质检验软件设计与实现 a b s t r a c t d a t a b a s e b a s e de x a m i n a t i o ns o f t w a r ef o rc h e m i s t r ym a t e r i a l t a n gx i n ( c o m p u t e ra p p l i c a t i o nt e c h n o l o g y ) d i r e c t e db yp r o f e s s o rj i a n gl i n y i n g i nr e c e n ty e a r s ,t h es o c i e t yh a sa l r e a d ye n t e r e dt h ed i g i t a li n f o r m a t i o na g e 、析t l l c o m p u t e rd e v e l o p m e n t h o w e v e ri ns o m ec h e m i s t r ye x a m i n a t i o nd e p a r t m e n t s ,p r i m a r y m e t h o d sa r eu s e d ,s u c ha sm a n u a lm e m o r yf o rm a s sc h e m i s t r yd a t a ,m a n u a ls e a r c h i n g c h e m i s t r yd i c t i o n a r y ,m a n u a la n a l y s i so ft e s t i n gr e s u l t ,e t c i nf a c t ,i ti sv e r yd i f f i c u l tf o r m a n u a lm e m o r ya n ds e a r c h i n g s o m e t i m e s ,n e e d e dm a t e r i a lc a l l tb es e a r c h e d a tt h e s a m et i m e ,a n a l y z i n gp e r i o do fe x a m i n a t i o nr e s u l tt oc h e m i s t r ym a t e r i a li sv e r yl o n ga n d m a y b ed i f f e r e n tr e s u l t sa r eg o t t e n a l la b o v eo p e r a t i o n sb r i n gm u c hi n c o n v e n i e n c ef o r w o r k i n g t h ep r o j e e to fe x a m i n a t i o ns o f t w a r ef o rc h e m i s t r ym a t e r i a li s e m e r g i n ga st h e t i m e sr e q u i r e i tc a ns o l v ea b o v e - m e n t i o n e dd i f f i c u l t i e sw i t l lc o m p u t e ra n dc h e m i c a l t e c h n o l o g y b a s e do nd a t a b a s e ,t h ep a p e rr e a l i z e st h ep r o c e s sa n da p p r o a c ho fd i g i t a l c h e m i c a lm a t e r i a la n de x p e r i m e n td a t a a l s oi td e t a i l e d l yd e s c r i b e sm o d e l i n ga n d i m p r o v i n gp r o c e s so fa s s i s t a n ta n a l y s i sa l g o r i t h mo fu n k n o w nm a t e r i a l f i r s t l y , t h ep a p e ri n t r o d u c e sd e v e l o p m e n tb a c k g r o u n do ft h es o f t w a r ea n da n a l y z e s t h er e q u i r e m e mo fc h e m i c a lm a t e r i a le x a m i n a t i o na p p r o a c h f u r t h e r m o r e ,i ts h o w s s y s t e ms t r u c t u r ea n dm a n a g e m e n tm o d e lo f t h es o f t w a r e s e c o n d l y , t h ep a p e rc o m p l e t e s d e t a i l e dd e s i g n i n go ff r a m e w o r ka n dd a t a b a s ef o rt h es y s t e mi nt h ed e s i g n i n gp h a s e a l s o ,i th a sd e t a i l e d l ys h o w nk e yt e c h n o l o g i e so ft h es o f t w a r ei n c l u d i n gm o d e la n d a l g o r i t h mo fa s s i s t a n ta n a l y s i sf o ru n k n o w nm a t e r i a l ,f l o wd e s i g n i n gw i t ha d e q u a t e l y u s i n gv a l i ds t a n d a r de x p e r i m e n td a t a f i n a l l y , t h ep a p e rs h o w sa l lf u n c t i o n so ft h ee x a m i n a t i o ns o f t w a r ef o rc h e m i s t r y m a t e r i a la n dg i v e st e s t i n gr e s u l ta n de v a l u a t i o n a tt h ee n d ,i t 蚴m a r i z e sa l lw o r k sa n d p u t sf o r w a r df u t u r ew o r k k e y w o r d s a 瑚【鲫艘删a l 躐锄谳舡凼眦锄埘迅喇d 啦q 晌肛蛐 引言 引言 在有些化学检验部门存在如下问题:首先,各种化学资料繁多,人工记忆难 度大,查询资料费时、费力,有时甚至难以查到所需资料;其次,业务人员对于 化学物质检验结果,分析周期很长,且可能产生不同分析结果,给工作带来不便: 最后,如何快速利用其它检验人员的检验结果,进行知识积累和更新,也是化学 检验人员所关心的问题。 国内外相关领域中已有的研究成果还没有满足以上业务需求的。一般相关化 学软件,大多集中在物质查询、数据处理上。物质查询软件如:a t e r i a ls a f e t yd a t a s h e e t s ,它可以查询多种化合物的各种材料( 如物理性质、化学性质等) ,而对于 专用的化学物质基本不包括;数据处理软件如:o r i g i ns i g m a p l o t 等可以根据需要 对实验数据进行数学处理、统计分析、付立叶变换、线性及非线性拟合等,但不 能分析化学检验结果,所以也不满足未知物质检验需求。 明确了业务需求,课题组从技术可行性、解脱繁重的脑力劳动、操作可行性 三方面进行了细致的研究。快速完成了问题定义和可行性研究的工作,形成了申 报书,获得批准立项。课题组把该软件命名为“化学物质检验软件 ,用瀑布模型 管理该软件的开发。 编制时期严格按照“需求分析”、“设计”、“实现 三个阶段进行管理。为了 保证软件开发的正确性,每一阶段任务完成后,都对它的阶段性产品进行评审, 确认之后再转入下一阶段的工作。评审过程发现错误和疏漏后,及时反馈到前面 的有关阶段修正错误、弥补疏漏,然后再重复前面的工作,直至某一阶段通过评 审后再进入下一阶段。在该软件的维护测试时期按照“测试 、“运行维护 两个 阶段进行维护。 “化学物质检验软件 包括数据录入、信息查询、数据导入导出、辅助分析、 系统管理五个主要功能模块,完成对化学物质的描述、储存、查询、分析等关键 技术的解决,其中难点是辅助分析的业务建模和算法设计。在数据库安全机制基 础上软件提供密码分级管理,在硬件上提供加密锁加密功能。本软件主要实现功 能有:资料查询,未知物质检查实验结果辅助分析,有效实验数据积累与传递、 档案管理等,这些正是业务单位的急需。该软件在业务单位试用时,得到业务单 位的一致好评。 本论文正是基于作者主持的“化学物质检验软件 课题的研制开发而撰写的。 本人在软件课题研制初期进行了详细的可行性分析,形成了可行性报告。在开发 过程中,本人和化学检验业务人员进行业务需求分析和业务建模,形成了实际可 基于数据库技术的化学物质检验软件设计与塞理 行的技术方案,特别是单独完成了本软件的需求分析难点,即辅助分析的业务建 模工作,并在业务建模的基础上用d e l p h i 7 建立快速原型,同时进行了算法改进工 作。本人组织并参与了软件的测试工作。 2 第一章绪论 1 1 研究课题的背景 第一章绪论 “化学物质检验软件 课题是部立项的化学软件课题。下面对该软件课题的 研究过程进行简单介绍。 1 1 1 化学物质检验学简介 化学物质检验原理是根据物质性质( 主要是化学性质,物理性质往往也是重 要线索) ,使被检验物质与加入的试剂作用,转变为某种已知物质,或产生某些特 殊现象,从而确定该物质的存在【l j 。 化学物质检验法又称化学分析法。被检物质的某些特性要通过化学反应才能 显示出来,物质的这种性质称为化学性质。采用化学分析法和仪器分析法能够检 测其化学性质。化学分析法又分为定性分析和定量分析,定量分析中又可分为重 量分析和容量分析。此外,还有仪器分析法。仪器分析法可分为光学分析和电化 学分析,是通过检验试样溶液的光学和电化学性质等物理或物理化学性质而求出 待测物组份含量的方法。光学分析法包括了比色分析法、比浊分析法、分光光度 法、发射光谱分析法、原子吸收光谱分析法和荧光分析法等。 化学物质检验属于分析化学范畴,是研究分析被检物质的组成、含量、 结构和形态等化学信息的一门科学【2 】。它的主要任务是采用各种各样的方法和手 段,得到分析数据,鉴定物质体系的化学组成、测定其中的有关成分的含量和确 定体系中物质的结构和形态,解决关于物质体系构成及其性质的问题。同时这项 工作需要完备的分析测试设备为手段,包括:核磁共振波谱仪、红外光谱仪、红 外光谱一气相色谱联用、气相色谱一质谱联用仪、液相色谱一质谱联用仪等高精 尖设备,并且,需要分析技术人员有丰富的理论知识和实践经验【3 1 。 1 1 2 化学物质检验分类 化学物质检验基本分为3 类: ( 1 ) 气体的检验 根据被检物质化学反应所释放的气体的特征性质( 化学和物理的) ,确定被检 物质成分。但要注意:有些现象是某几种气体所共有的,如二氧化碳与二氧化硫 都能使澄清石灰水变浑浊;不少可燃气体( 如氢气、一氧化碳、甲烷等) 的燃烧, 其火焰都是淡蓝色,当它们混有一定量空气时,点燃都会爆鸣;溴蒸气、氯气、 基于数据库技术的化学物质检验软件设计与实理 二氧化氮都能使淀粉碘化钾试纸变蓝等等。因此遇到这些情况,不要过早下结论, 而要综合考虑其它性质和现象。 ( 2 ) 离子的检验 根据实验时生成物所表现出的现象不同,可把检验离子的方法归纳为三种类 型1 4 】o 生成沉淀 如在化学实验里检验c l 离子,加入用硝酸酸化的硝酸银溶液,产生白色沉淀; 检验f e 2 + 离子,可加入氢氧化钠溶液,先生成白色氢氧化亚铁沉淀,在空气中迅 速变成灰绿色,最后变成红褐色氢氧化铁沉淀;检验”离子,通常加入少量氢 氧化钠溶液,产生胶状白色氢氧化铝沉淀,加过量氢氧化钠溶液后,该沉淀溶解 ( 注意:z n 2 + 离子也有类似现象,但氢氧化铝不溶于氨水,而氢氧化锌溶于氨水) 。 生成气体 如检验n h 4 、c 0 3 离子都采用此法。 显现特殊颜色 如用硫氰化钾溶液检验f e ”离子。 ( 3 ) 有机物的检验 通常是从检验官能团入手来确定某有机物的存在。例如,常用金属钠检验羟 基,用银氨溶液或新制的氢氧化铜悬浊液检验醛基,用溴水或高锰酸钾酸性溶液 检验链烃中的不饱和键,用三氯化铁溶液检验苯酚等等。 1 1 - 3 计算机技术在化学物质检验中的应用 作为信息时代的主要标志计算机应用( c o m p u t e ra p p l i c a t i o n ) 技术逐渐深 入到工作和生活的各领域之中,并已对科学研究、工农业生产的变革产生着巨大 的冲击。计算机应用技术同样为化学研究、生产以等各方面带来了全新的变化1 5 】。 计算机与化学的结合,不仅促进了化学的发展,同时也产生了新的边缘学科, 如计算分析化学、化学计量学和计算机化学等。在电子计算机发展的早期,计算 机技术就已经应用于分析化学各分支学科的研究中了。 计算机技术在化学物质检验中的应用是化学学科中一项十分活跃的领域。通 过计算机处理化学实验数据的作用,使得以前单纯提供原始数据上升到直接参与 实际问题的解决。现在计算机技术己经成为化学物质检验中广泛应用的最重要的 工具之一,并且使得化学物质检验逐渐发展成为一门信息与知识相结合的学科。 化学物质检验包含收集与处理试样、制定分析方法、具体分析处理和报告分 析结果等几个部分。解决分析问题就是为了能在最短的时间内获得最可信的结果。 因此采用计算机技术替代人工操作完成以上技术过程,可以在最短时间内获得最 4 第一章绪论 佳的问题解决。应用人工智能技术,通过专家系统进行问题的推理以获得最佳分 析方法和条件。化学物质检验中主要进行实验数据处理( d a t ap r o c e s s i n g ) ,即对大 量的实验数据进行诸如分析、合并、分类、统计等加工处理,并形成有用信息的 过程。如对实验数据进行统计;根据实验数据进行曲线拟合以及绘制;利用最优 化方法研究有关化学平衡的问题或者寻求分析方法的最优化条件;根据实验数据 求解有关常数、含量等等。有别于科学计算的是,数据处理所涉及的实验数据量 庞大,但计算方法相对较为简单。这些数据处理任务虽然算法简单,依靠人工可 以解决,但大量的重复计算较易出错,使用计算机则可在较短的时间内准确完成, 并得到精度较高的计算结果。在已逐步发展为信息科学的化学物质检验中借助计 算机对大量的实验数据进行采集、存储、分析处理,提高了数据的质量与利用率, 并能更充分准确地表达内含信息。 1 2 研究课题的目的意义 编制一套用于化学物质检验中的分析软件,帮助业务人员更好的分析化验结 果,挖掘各种检验方法的实验数据用于推测可能物质,传递各种检验数据和检验 方法,加强各种化学检验资料的电子档案管理,并且是电子版本的化学字典和教 科书。由此可以提高了化学物质检验的工作效率和分析的准确性。 1 3 目前课题已经取得的研究成果 该软件编制已经完成,正在全国业务单位试用,并得到试用单位的好评。 1 4 本论文的结构 本文共分六章,内容组织如下: 第一章为绪论。概要的介绍了论文涉及的项目背景。主要是化学物质检验学简 介和检验方法分类,同时简要说明了项目的意义。 第二章系统分析具体介绍了项目的总体情况。首先介绍了项目的开发管理模 型,然后阐述了项目的可行性,最后对需求分析加以说明。 第三章描述了软件的详细设计情况。包括各功能模块的设计和数据库的设计情 况。 第四章介绍了项目的关键技术解决方法。主要说明了未知物质辅助分析算法的 建模和改进过程。 第五章用项目的实际运行情况对功能进行说明。 第六章是项目的测试情况说明。包括具体的系统测试方法和测试结论。 5 基于数据库技术的化学物质检验软件设计墨塞理 2 1 软件开发管理模型 第二章系统分析 软件的开发管理主要环节包括人员管理、项目管理、需求分析、系统设计、 程序设计、测试、维护等,软件开发模型是对软件过程的建模,即用一定的流程 将各个环节连接起来,并可用规范的方式操作全过程,好比工厂的生产线【6 1 。 2 1 1 几种常见的软件开发管理模型简介 ( 1 ) 边做边改模型( b u i l d a n d f i xm o d e l ) 7 1 许多软件开发都是使用“边做边改”模型来开发的。在这种模型中,既没有 规格说明,也没有经过设计,软件随着客户的需要一次又一次地不断被修改。 在这个模型中,开发人员拿到项目立即根据需求编写程序,调试通过后生成 软件的第一个版本。在提供给用户使用后,如果程序出现错误,或者用户提出新 的要求,开发人员重新修改代码,直到用户满意为止。 这是一种类似作坊的开发方式,对编写几百行的小程序来说还不错,但这种 方法对任何规模的开发来说都是不能令人满意的,其主要问题在于: 缺少规划和设计环节,软件的结构随着不断的修改越来越糟,导致无法继 续修改; 忽略需求环节,给软件开发带来很大的风险; 没有考虑测试和程序的可维护性,也没有任何文档,软件的维护十分困难。 ( 2 ) 瀑布模型( w a t e r f a l lm o d e l ) 1 7 j 1 9 7 0 年v 呖m s t o nr o y c e 提出了著名的“瀑布模型,直到8 0 年代早期,它一直 是唯一被广泛采用的软件开发模型。 瀑布模型将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、 软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的周 定次序,如同瀑布流水,逐级下落。 在瀑布模型中,软件开发的各项活动严格按照线性方式进行,当前活动接受 上一项活动的工作结果,实施完成所需的工作内容。当前活动的工作结果需要进 行验证,如果验证通过,则该结果作为下一项活动的输入,继续进行下一项活动, 否则返回修改。 瀑布模型强调文档的作用,并要求每个阶段都要仔细验证。但是,这种模型 的线性过程太理想化,已不再适合现代的软件开发模式,几乎被业界抛弃,其主 6 第二章系统分析 要问题在于: 各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量; 由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果, 从而增加了开发的风险; 早期的错误可能要等到开发后期的测试阶段才能发现,进而带来严重的后果。 应该认识到,“线性”是人们最容易掌握并能熟练应用的思想方法。当人们碰 到一个复杂的甜非线性 问题时,总是千方百计地将其分解或转化为一系列简单 的线性问题,然后逐个解决。一个软件系统的整体可能是复杂的,而单个子程序 总是简单的,可以用线性的方式来实现。线性是一种简洁,简洁就是美。当领会 了线性的精神,就不要再呆板地套用线性模型的外表,而应该用活它。例如增量 模型实质就是分段的线性模型,螺旋模型则是接连的弯曲了的线性模型,在其它 模型中也能够找到线性模型的影子。 ( 3 ) 快速原型模型( r a p i dp r o t o t y p em o d e l ) 【7 】 快速原型模型的第一步是建造一个快速原型,实现客户或未来的用户与系统 的交互,用户或客户对原型进行评价,进一步细化待开发软件的需求。通过逐步 调整原型使其满足客户的要求,开发人员可以确定客户的真正需求是什么;第二 步则在第一步的基础上开发客户满意的软件产品。 显然,快速原型方法可以克服瀑布模型的缺点,减少由于软件需求不明确带 来的开发风险,具有显著的效果。 快速原型的关键在于尽可能快速地建造出软件原型,一旦确定了客户的真正 需求,所建造的原型将被丢弃。因此,原型系统的内部结构并不重要,重要的是 必须迅速建立原型,随之迅速修改原型,以反映客户的需求。 ( 4 ) 增量模型( i n c r e m e n t a lm o d e l ) 1 7 j 与建造大厦相同,软件也是一步一步建造起来的。在增量模型中,软件被作 为一系列的增量构件来设计、实现、集成和测试,每一个构件是由多种相互作用 的模块所形成的提供特定功能的代码片段构成 增量模型在各个阶段并不交付一个可运行的完整产品,而是交付满足客户需 求的一个子集的可运行产品。整个产品被分解成若干个构件,开发人员逐个构件 地交付产品,这样做的好处是软件开发可以较好地适应变化,客户可以不断地看 到所开发的软件,从而降低开发风险。但是,增量模型也存在以下缺陷: 由于各个构件是逐渐并入已有的软件体系结构中的,所以加入构件必须不破 坏己构造好的系统部分,这需要软件具备开放式的体系结构; 在开发过程中,需求的变化是不可避免的。增量模型的灵活性可以使其适应 这种变化的能力大大优于瀑布模型和快速原型模型,但也很容易退化为边做边改 7 基于数据库技术的化学物质检验软件设计与实理 模型,从而是软件过程的控制失去整体性。 在使用增量模型时,第一个增量往往是实现基本需求的核心产品。核心产品 交付用户使用后,经过评价形成下一个增量的开发计划,它包括对核心产品的修 改和一些新功能的发布。这个过程在每个增量发布后不断重复,直到产生最终的 完善产品。 例如,使用增量模型开发字处理软件。可以考虑,第一个增量发布基本的文 件管理、编辑和文档生成功能,第二个增量发布更加完善的编辑和文档生成功能, 第三个增量实现拼写和文法检查功能,第四个增量完成高级的页面布局功能。 ( 5 ) 螺旋模型( s p i r a lm o d e l ) 1 7 1 9 8 8 年,b a r r yb o e h m 正式发表了软件系统开发的“螺旋模型 ,它将瀑布模 型和快速原型模型结合起来,强调了其他模型所忽视的风险分析,特别适合于大 型复杂的系统。 螺旋模型由风险驱动的,强调可选方案和约束条件从而支持软件的重用,有 助于将软件质量作为特殊目标融入产品开发之中。但是,螺旋模型也有一定的限 制条件,具体如下: 螺旋模型强调风险分析,但要求许多客户接受和相信这种分析,并做出相 关反应是不容易的,因此,这种模型往往适应于内部的大规模软件开发。 如果执行风险分析将大大影响项目的利润,那么进行风险分析毫无意义, 因此,螺旋模型只适合于大规模软件项目。 软件开发人员应该擅长寻找可能的风险,准确地分析风险,否则将会带来 更大的风险。 各种模型的比较 每个软件开发组织应该选择适合于该组织的软件开发模型,并且应该随着当 前正在开发的特定产品特性而变化,以减小所选模型的缺点,充分利用其优点, 表2 1 列出了几种常见模型的优缺点。 表2 1 各种模型的比较 8 第二章系统分析 2 1 2 “化学物质检验软件 课题采用的开发管理模型 “软件生存周期 是指从提出软件产品开始,直到该软件产品被淘汰的全过 程。研究软件生命周期是为了更科学地、有效地组织和管理软件的生产、维护, 从而使软件产品更可靠,更经济。根据软件所处的状态、特征以及软件开发活动 的目的、任务可以将生存周期划分为若干阶段。一般说来,软件生存周期包括计 划时期、运行时期、维护时期三个部分,并可进一步细分为可行性研究、需求分 析、概要设计、详细设计、实现、组装测试、确认测试、使用、维护和退役1 0 个 阶段。在软件的生命周期中,每个阶段都有确定的任务,并产生一定规格的文档, 送交下一个阶段,而下一阶段是在前一阶段评审通过的基础上,继续开展工作。 软件开发要求管理和技术并重。所以该课题采用了以“瀑布模型 为主,结 合“抛弃原型”的开发思路,见图2 1 。 图2 - 1 采用的开发管理模型 9 说明书) 基于数据库技术的化学物质检验软件设计与实现 课题组在研究了各种常见软件开发管理模型后,决定使用瀑布模型的原因有 以下几点: 该课题需求完全确定。同时课题组既是软件的开发者,也是软件的使用者。 瀑布模型的“线性”思路是人们最容易掌握并能熟练应用的思想方法,而且 开发速度也比较快。 瀑布模型是一种文档驱动的模型,开发过程中产生的需求规格说明书文档、 设计文档、代码文档,以及其他文档如数据库手册、用户手册和操作文档等,对 于软件使用和维护是非常必要的。而且课题组申报课题后需要经常向部里进行汇 报课题进展情况,这些资料也是必不可少的。 课题组没有采用传统的瀑布模型,由于用它开发的产品只有到交付使用时才 能对该软件有一定的认识。这样,修改时,只能从需求分析开始从头修改,加大 了软件开发的工作量。课题组提出了将“瀑布模型”和“抛弃原型”组合使用, 以便充分利用两种模型的优点的解决方案。在需求分析阶段,由快速分析而构造 一个小的抛弃型原型,满足用户的要求。使用户在对软件有一个全面认识,因而 逐步确定各种用户需求。这就大大避免了在“瀑布模型”冗长的开发过程中,始 终看不见最终软件产品雏形的现象,避免了许多由于不同理解而造成的错误。 2 2 可行性分析 可行性分析( f e a s i b i l i t ya n a l y s i s ) 也称为可行性研究,是在系统调查的基础上, 针对软件系统的开发是否具备必要性和可能性,对软件系统的开发从技术、经济、 社会的方面进行分析和研究,以避免投资失误,保证软件系统的开发成功【扪。 可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够 解决【9 1 。该系统的可行性分析包括以下几个方面的内容。 2 2 1 经济可行性 经济可行性主要是对软件项目的经济效益进行评价。 本软件系统开发经费由于申报了部立项课题,由部直接拨款开发。本单位对 于该项目也十分支持,提供了开发中所有必要支持。本项目完成后,提高了化学 物质检验的工作效率和分析的准确性,业务单位对于本软件系统十分急需,所以 本系统在经济上是可行的。 2 2 2 技术可行性 技术可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满 1 0 第二章系统分析 足开发者的需要等。 该软件系统采用了m sv b 6 编制,软件语言成熟稳定。数据库选用s q l 2 0 0 0 数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。 它的灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系统的软 件开发平台已成熟可行。硬件方面,科技飞速发展的今天,硬件更新的速度越来 越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足 此系统的需要。 2 2 3 时机可行性 目前,化学物质检验在业务部门方兴未艾,因此也出现了各种急待解决的问 题:如何查询各种化学检验资料;如何分析化学物质检验结果;如何安全的共享 新发现的化学检验方法和实验数据等。而这些问题都可以在本软件中得到了很好 的解决,所以该软件的编制时机已经成熟。 综上所述,此软件系统开发目标已明确,在技术和经济等方面都可行,并且 投入少、见效快。因此系统的开发是完全可行的。 2 3 需求分析 需求分析是软件开发最重要的阶段。开发需求阶段,首先是了解和澄清用户 的需求,然后严格地定义被开发软件系统的需求规格说明书。 软件需求包括三个不同的层次业务需求、用户需求和功能需求,也包括 非功能需求。各组成部分之间的关系如图2 2 所示。 图2 2 软件需求各组成部分关系图 2 3 1 需求分析中采取的几点措施 优秀软件需求过程的标准是:清楚( c l e a r ) 、完整( c o m p l e t e ) 、一致( c o n s i s t e n t ) 可测试( t e s t a b l e ) ,此外还有其他的概念,如可跟踪的、可修改的等。 课题组从这些标准入手,采取了几种措施,使得软件需求达到课题组和用户 都满意。 , 清楚性方面:本软件分析采用了自然语言分析方法。自然语言对需求分析最 大的弊病就是它的二义性。所以,课题组不得对需求分析中采用的语言做某些限 制。例如,尽量采用主语+ 动作的简单表达方式。需求分析中的描述,不采用疑问 句修饰或采用华丽的表达方式。除了语言的二义性之外,课题组还注意了不使用 计算机术语。需求分析最重要的和用户沟通,可是用户多半不是计算机的专业人 士,而是分析化学方面的专家,如果在需求分析中使用了行话,就造成用户理解 上的困难。 完整性方面:再也没有什么比软件开发接近完成时发现遗漏了一项需求更糟 的事情了。需求的完整性是课题组非常重视的,想象一下遗漏需求而不得不返工, 这简直就是恶梦。可是令人遗憾的是,需求的遗漏是很经常发生的事情,不仅仅 是课题组的问题,更多的问题发生在用户哪里,他们不知道该做些什么。要做到 需求的完整性是很艰难的一件事情,它涉及到需求分析过程的各方各面,贯穿了 整个研制过程,从最初的计划制定到最后的需求评审。为此课题组开发了软件的 原型,用了大部分时间和用户进行沟通、修改软件原型和需求。 一致性方面:一致性也是一个比较大的概念,就是用户需求必须和业务需求 一致,功能需求必须与用户需求一致。严格地遵守不同层次间的一致性关系,就 可以保证最后开发出来的软件不会偏离最初的实现目标。在实现过程中,课题组 同多处业务人员沟通,并为此在全国范围召开研讨会,讨论了需求和业务之间的 关系,这使得“一致性”有了很好的保证。 可测试方面:需求分析是测试计划的输入和参照。这就需求分析是可测试的。 事实就是这样,只有系统的所有需求是可以被测试的,才能够保证软件始终围绕 着用户的需要,保证软件系统是成功的。 课题组最直接的经验是在需求分析过程中,用d e l p h i 7 和本地数据库快速开发 了一个抛弃型原型,供开发者和业务人员进行需求分析,得到了较好的结果,具 体工作流程如图2 3 所示。 1 2 第二章系统分析 满意 图2 - 3 需求获取流程示意图 经过和多个用户反复进行上述需求分析过程,该软件具体需求逐渐明确。 2 - 3 2 基本的功能需求 该系统主要功能: ( 1 ) 资料查询 业务部门工作人员通过本软件可以方便地查阅化学物质检验工作中的各种资 料( 如:各种化学资料、各种物质检验方法、物质性质、显色剂性质、载体性质、 仪器的性质用途以及实验数据) 。便于工作人员学习掌握相关知识,起到答疑解惑 的效果。 ( 2 ) 被检未知物质成分辅助分析 软件的专家系统设计,对大量的检验方法数据进行诸如分析、合并、分类、 统计等加工处理,形成可能的未知物质成分排序,并提供进一步检验的方向,为 实验者提供参考,可以极大的提高了工作效率和分析的准确性。 ( 3 ) 数据积累与传递 具有实验数据的传递和积累作用,便于全国各化学物质检验部门工作人员相 互借鉴和参考,提高业务水平。 基于数据库技术的化学物质检验软件设计与实现 2 3 3 系统的要求 系统应该满足以下要求: ( 1 ) 系统应该采用先进的技术框架。 ( 2 )系统能够运行于通用的技术环境。 ( 3 ) 系统能够运行于常见操作系统平台:w i n d o w s 9 8 2 0 0 0 x p 。 ( 4 )系统具有友好的用户交互界面。 ( 5 ) 系统容易维护,功能便于扩充。 2 4 功能分析 2 4 1 系统总体分析 本软件通过数据录入、查询、数据传递、未知物质分析、管理五个主要功能 模块,完成对化学物质的描述、储存、查询、分析、传递数据等关键技术的解决。 实现资料查询,未知物质成分辅助分析,有效实验数据和方法的积累与传递,化 学电子数据档案管理等功能。软件系统结构图见图2 4 。 j 化学物质检验软件 图2 - 4 化学物质检验软件系统结构图 ( 1 ) 数据录入 数据录入部分包括:方法、检样、显色剂、载体、仪器、资料以及与其相关 的各项信息的录入,通过录入信息,根据规定的规则,将各项数据关联起来。 ( 2 ) 查询 实际应用中的查询不可能只遵循几个规则,必定是多样的、复杂的。引入智 能模糊查询的方法,可满足大多数查询的需要。 1 4 第二章系统分析 ( 3 ) 数据传递 软件提供了灵活的数据导入导出方式,用户可以选择以单项或多项的方式导 出数据,也可以选择以库的形式导出数据。软件会根据用户的选择,自动将各种 相关联的数据一并导出。 ( 4 ) 未知物质分析 根据选择的分析数据库和未知检样的实验数据,分析出未知检样可能的成分, 为业务人员进一步分析提供参考。分析模块也可根据用户输入的颜色模糊度增大 或缩小目标可能的范围。 ( 5 ) 系统管理 提供软件系统管理功能,包括:用户添加、编辑、删除;日志管理功能;色 标管理和维护;数据库管理等。 2 4 2 系统总关联图 课题组在用户需求已经明确的时候,采用结构化分析方法对“化学物质检验 软件 课题重新进行了需求分析,图2 5 是系统的总关联图,它描述了外部实体和 系统的接口。 各种化学物质 检验资料录入 各种化学实 验数据录入 图2 5 系统关联图 1 5 基于数据库技术的化学物质检验软件设盐生塞堡 表2 2 描述了用户类和用户特性。 表2 - 2 用户类和用户特性 用户类描述 系统管理人员负责该软件使用的具体人员,他可以给其它使用人员授权。 录入人员由管理员用户授权,可以向本软件录入各种化学资料的业务人员 分析检验结果人员由管理员用户授权,可以使用软件辅助分析功能的业务人员 查询人员由管理员用户授权,可以查询软件中化学资料的业务人员 2 4 3 系统用例分析 系统用例图见图2 - 6 。 非法用户 图2 - 6 系统用例图 系统用例图示形象的说明用户和软件各部分功能之间的使用关系。 1 6 第二章系统分析 2 4 4 部分模块分析 ( 1 ) 录入处理数据流图 ( 2 ) 辅助分析数据流图 图2 7 录入处理数据流图 ( 3 ) 查询处理数据流图 图2 8 辅助分析数据流图 1 7 2 5 系统的运行环境和开发平台 2 5 1 运行环境 图2 9 查询数据流图 硬件需求: c p u :pi i i8 0 0 以上 内存:最小1 2 8 m 硬盘:1 5 0 m 以上自由空间 软件环境i 操作系统:支持w m d o w s9 8 m e 2 0 0 0 x p 数据库:需要m ss q l s e r v e r 2 0 0 0 数据库支持 2 5 2 系统开发平台 电脑配置:c p u :p 43 g 内存:d d r1 0 2 4 m 硬盘:1 2 0 g 操作系统:m i c r o s o f tw m d o w s2 0 0 0p r o f e s s i o n a l 中文版 1 8 第二章系统分析 开发环境:m sv b a s i c6 0 数据库:m ss q l s e r v e r 2 0 0 0 1 9 基于数据库技术的化学物质检验软件设计与实现 3 1 功能模块设计 第三章软件详细设计 3 1 1 软件设计的模块化思想介绍 ( 1 ) 模块化的概念 模块( m o d u l e ) 是系统设计中很重要的一个概念。系统设计中一个非常重要 的步骤就是要设计软件的结构。合理的软件结构应该是分块的结构,也就是说, 软件应该分解成可单独命名的且可访问的部件,这些部件称为模块,所有这些 模块集成在一起以满足问题的需求。这种将软件分成具有二定结构的模块的过 程称为模块化。 ( 2 ) 软件模块化与软件成本之间的关系 软件随着模块数目的增加,开发模块的代价确实在减少。但是,对同一个 问题来说,更多的模块数目意味着会有更多的模块与模块之间的接口工作要 做,也就是说,接口代价会随着模块数目的增多而变大。软件开发总代价是模 块开发代价和接口代价两部分的总和,所以模块划分太少和太多都会使得总代 价增多10 1 。 在软件编制过程中要很好的控制软件和模块之间的关系,使开发的代价和 模块数目间达到最优化。 ( 3 ) 信息隐藏和局部化 信息隐藏是指模块中所包含的信息( 包括数据和过程) 对不需要这些信息的 其他模块是不可访问的。这样,每一个将来可能的改变都会局部于一个特定的 模块,改变模块的内部过程或数据的设计不会影响到其他模块。 模块独立性有两个定性的度量标准:内聚度和耦合度。内聚度越高,模块 的独立性就越强,模块的耦合度越低,模块的独立性越强。 3 1 2 软件包含的主要模块 本软件包含数据录入、查询、数据传递、未知物质分析、管理五个主要功能 模块。 软件模块结构图如图3 1 所示。 第三章软件详细设计 图3 1 化学物质检验软件模块结构图 3 1 3 数据录入功能设计 数据录入功能主要包括:方法录入、检样录入、显色剂录入、实验数据录入、 载体录入、检验仪器录入以及资料录入。 ( 1 ) 数据录入功能设计 录入数据功能:根据软件提示录入各种化学资料和实验数据; 设置功能:根据用户级别选择录入数据库,不选择时默认使用临时数据 2 l 基于数据库技术的化学物质检验软件设计与实现 库; 添加功能:向数据库中添加一条新记录; 删除功能:从数据库中删除一条记录; 保存:添加或更改某一条记录后保存新信息; 过滤、复原功能:过滤功能根据所填写的相关项信息进行记录筛选。复原功 能是过滤后记录恢复到原始状态; 复制粘贴功能:可对某一条记录进行完全复制粘贴操作; 返回功能:退出数据录入功能,返回到主界面。 ( 2 ) 数据录入流程图 数据录入流程图见图3 2 所示。 图3 - 2 数据录入流程图 第三章软件详细设计 3 1 4 数据查询功能设计 ( 1 ) 数据查询功能设计 数据查询功能:根据软件提示,查询检验方法、检样、显色剂、载体查询、 检验仪器以及资料; 设置功能:根据用户级别选择查询数据库,不选择时默认临时数据库和标 准数据库; 查询方法:查询方法是模糊查询: 查询方式:具体查询和整体查询两种方式; 查询原则:首先将关键字和查询条目数据库直接比对,把其中涵盖有关键 字的数据列出;然后将关键字和查询条目数据库中的直接关联信息进行比对,把 其中涵盖有关键字的数据列出;最后将查询数据进行合并处理。 ( 2 ) 查询部分程序流程图 查询程序流程图见图3 3 : 图3 - 3 查询程序流程图 基于数据库技术的化学物质检验软件设计与实现 3 1 5 辅助分析功能设计 ( 1 ) 辅助分析功能设计 未知样品登记功能:对被检样品进行编号和登记等; 设置功能:根据用户级别选择可用的分析数据库; 未知样品实验数据录入功能:录入未知样品实验数据; 复制粘贴功能:可对未知样品实验数据记录进行复制粘贴操作; 模糊度设置功能:对未知样品实验数据颜色模糊度设置; 未知样品成分辅助分析功能:根据所做的未知检样实验数据,对该未知检样 进行鉴定,通过分析得出结果,并提供进一步实验的建议: 打印功能:根据需要,选择辅助分析结果进行打印。 ( 2 ) 辅助分析程序流程图 详见“第四章关键技术解决”部分。 3 1 6 软件管理功能设计 软件管理功能主要包括用户管理、日志管理、色标管理、库管理。管理员应 用这些功能可以对软件相关设定内容进行管理和修改。 用户管理功能:用户信息包括“用户名”、“登录名”、“权限”、“单位”。其 中,“用户名”是实际的操作人名;“登录名 是实际的操作人名登录软件时的代 号;“权限 是实际的操作者能进行查阅和修改的等级,共包括管理员级、一级、 二级、三级、四级、五级六个级别。管理员通过用户管理功能,可以创建、删除、 修改用户信息; 日志管理功能:管理员通过日志管理功能,可以显示用户使用本软件时操作 情况,并可对日志进行“打印、查询、备出”等操作; 色标管理:只有经过专门授权的人员,才能通过特殊的密码进入色标管理系 统,进行添加、删除、修改色标。因为色标体系非常重要,添加、删除、修改色 标将会影响实验数据及辅助分析的结果,以及数据的传递等功能。 库管理功能:管理员通过库管理功能,可以添加、删除、修改各个数据库。 3 1 7 数据导入导出设计 ( 1 ) 数据导出功能 数据导出,用于将软件中除标准库以外的数据库或这些数据库中的某些内容 ( 如:方法、检样、显色剂、实验数据、载体、检验仪器以及业务资料) ,导出到 文件中,以便数据的交流。数据导出中主要注意:相关数据的推导和导出; 2 4 第三章软件详细设计 ( 2 ) 数据导入功能 数据导入,用于将导出的文件数据导入到软件中。数据导入中主要注意:相 同数据的检查和取舍; 3 2 数据库设计 数据库是存储各类信息的地方,数据库是此软件的基础,数据库的设计直接 影响到软件的性能,在此首先介绍数据库的设计。在软件平台中,主要的功能依 赖于数据库中的数据,因此,系统数据库组织、设计与实现如何能更有效的支持 功能上的应用,是本论文数据库设计方面的一个重点。 3 2 1 数据库的总体设计 ( 1 ) 数据

温馨提示

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

评论

0/150

提交评论