前言:我们精心挑选了数篇优质计算机软件开发方法文章,供您阅读参考。期待这些文章能为您带来启发,助您在写作的道路上更上一层楼。
1计算机软件系统的定义简介
1.1关于软件。自从19世纪中后期以来,计算机软件系统的创新以及运用从原本的人工写录计算机的程序发展到了更加高端、更加方便的水平。如今计算机技术得到提升,新型技术如雨后春笋,而且得到了人们一定的关注和认同,在生产中得到了使用。计算机的运用也更加普及,在生活中、工作中、学习中各个方面,都离不开计算机的帮助。计算机倾向于更加简易方便的趋势,而软件的使用也更加普遍,没有以前的限制和约束。软件开始有了官方科学的概念,指的是计算机通过采用一定的方式或是规则,满足一定的需求,在计算机正在使用的过程中供给所需要的数据。
1.2软件工程技术。上个世纪九十年代,所使用的软件工程技术还是人工进行编写,不但效率不高,而且容易出现错误的情况,不易于核查和更改。首先,耗费了大量的人力资源,程序编写员的劳动工作强度高,软件较为复杂,不利于大规模的传播推广,软件的开发时间过长,不易修改和改良。因此,软件工程技术还是存在许多不足之处。
2开发方法
开发软件首先应当具备一定的技术创新团队,并且按照一定的技术发展原则,设计与应用并重,保证科学的开发方法,减少一些传统的开发方法带来的弊端。
2.1生命周期方法。这种方法主要是调整软件系统开发的周期,将开发的整个时间进行细化,并对开始和结束的定义重新定义,确保这种方式准确科学,有着严格标准的定义要求,上一个阶段的结束之后才能开始下一个阶段,这样的方式有利于减轻开发人员的工作压力,并且有利于整体目标的实现,对每一个阶段的工作进行准确的定义,防止不明确自己的任务而引发的问题。
2.2原型化开发方法。如果在进行设计的最初阶段,设计人员对于产品并没有一个明确的定义,或者是缺乏一定的研究材料,则可以使用原型化开发的方法。先确定对于开发产品的大概模型,在此模型的基础上进行加工。
3发展方向
3.1服务。现如今,软件系统更偏向于用户体验这方面,为了给用户带来更加优良的服务体验,符合用户的需求,软件系统将更加直接,满足用户的需求,带给用户更好的服务。
3.2更加网络化。网络化是21世纪的主旋律,计算机软件技术应该面向世界、面向未来,开发的过程中应该将眼光放远一些,考虑到国际之间的联系,争取运用更加先进的技术,满足各个地区各个国家的用户的需求。
3.3更加智能化。人工智能的概念一经提出就受到了广泛的关注和热议,将人工智能技术运用到软件开发中,能够有效减少前期的人力物力的投入成本,缩短开发时间,根据具体情况的需要进行更新和改良,有利于大规模的生产和运用。随着人工智能技术的不断成熟,两者相互促进,将会带来更大的收益,这也是一项划时代的举措。
3.4更加开放化。为了实现资源共享,软件的开放化是十分重要的,这项举措有利于技术不断更新和发展,开放人员通过这个进行交流,不断进步,吸取对方创意中的长处为我所用,发现自己不足之处并加以改良,优化产业结构,有利于产品创新发展,开放化一举有着极为重要的意义,其方便快捷、易于沟通、信息交互便捷、利于数据的存储和利用。
4结束语
关键词:软件工程方法;计算机软件;应用策略
引言
随着互联网技术的不断发展,人们迎来了大数据信息时代,计算机的适用范围也变得越来越广泛,因此,对于计算机软件开发技术的要求也越来越高。以往的软件工程方法已经满足不了当前发展的要求,所以要对新的软件工程方法进行探索,并将其应用到计算机软件开发中去。
一、软件工程方法的优势
(一)提高开发效率
在以往的计算机软件开发项目中,经常会有软件开发后的整体效果以及软件质量达不到预期标准的现象发生。这样一来,就会造成需要对软件进行重新开发的后果,消耗过多的人力物力,同时还会降低计算机软件的开发率,并影响对后续软件开发工作的开展和实施。但软件工程方法的应用,有效地解决了这一问题,软件工程方法可以在计算机软件开发的过程中,进行实时监督,一旦某个环节产生偏差,可以及时地发现,并让开发者对其进行修改,提高开发效率。
(二)优化产品体验
软件使用者的用户体验,是衡量一款软件设计的是否成功的标准,只有获得广大用户的好评,才是对软件开发者的创意和技术的肯定。并且在计算机软件进行开发之前,也要对用户的需求和想法进行调研,这样才能开发出一款产品体验效果最好的软件。例如:系统漏洞较少、可以在短时间内完成应用任务、智能化处理问题等功能,都是高质量计算机软件的标准。而软件工程方法恰恰可以實现这一系列的条件,为使用者带来更舒适、更人性化的用户体验。
(三)降低对计算机硬件和网络的压力
软件工程方法在计算机软件开发中的应用,可以很好地减轻开发过程中,对于计算硬件和整个网络系统的压力,因为软件工程在进行应用时,实现了对于计算机软件开发程序的精心设计,可以更为有效的优化整体的网络系统,进而使计算机软件开发的质量得到提升,同时提高网络资源的利用率。除此之外,软件工程方法不断优化软件的功能,还能促进整个开发系统的发展,同时增加软件开发系统的储存量,减少开发者调试的频率,让开发工作的速度得到提升[1]。
二、软件工程方法在计算机软件开发中的应用策略
(一)重视需求分析
计算机软件开发最为重要的就是对于用户需求的分析,软件开发的本质意义就是为使用者提供服务,因此对于用户需求的分析,一定要充分、全面。软件工程方法在计算机软件开发中的应用,就是帮助开发者更好地进行用户调研和需求的分析。开发者可以首先对用户进行调研,每个软件都有对应使用的用户群体,因此可以先对这些用户进行一个全面信息的收集,并对这些信息进行分析,找出其中有效数据,进而根据数据来对计算机软件的基本功能提出一个设置。再经过后续对于大部分用户群体进行的调研数据,明确该软件开发的设计标准,并制定开发目标。这样一来,开发者对于计算机软件的开发就能更加符合用户群体的需求,这也就意味着该软件在设计上是成功的,并且在计算机软件开发过程中,充分地发挥了软件工程方法的作用。
(二)重视系统分析
加强对于整体计算机系统的分析,就是在将软件工程方法应用到计算机软件开发工作中时,将软件开发工作的任务和需求进一步的设置和细化,这样可以分析出更多样化的解法,来解决开发工作中出现的突发性问题。不光如此,还要对数据结构进行系统化、抽象化的设计,将其中所包含的有效数据信息进行转化设计,变成一个具体的设计方案,将此方案作为标准,进行软件的系统建模。同时,对于数据流程图的绘制,也要做到仔细和精确,数据流程图是后续软件开发的重要依据,一旦出现偏差就会影响整个软件开发工作;除此之外,对于数据操作模式也要有一个严格的规范,保证计算机软件开发工作的严谨性。
(三)加强系统测评
在分析数据和系统设计的工作进行完毕后,软件开发者要利用软件工程方法,对计算机软件的系统规范书和部份模块进行测试和评价工作。以往的软件工程方法对于调研工作并不重视,常常会忽视对于软件开发工作的测试和评价工作,因此导致在规范书不完整的情况下,进行软件的设计和编程开发,进而产生许多了问题和漏洞,这也是计算机软件开发过程中存在的最大隐患。
基于此,为了改进这个问题,在开发者将软件工程法运用到计算机软件开发中的时候,一定要重视对于开发系统的测试和评价工作,这样才能保证计算机软件开发的质量可以达到预期效果,使软件系统最大程度的满足用户需求,并且使软件系统的运转,更具有稳定性和安全性,降低风险的发生,也可以让使用者有更好的用户体验[2]。
结论
计算机软件的开发是当前信息时代大背景下的重点工作,因此,在将软件工程方法应用到计算机软件开发工作中时,要充分结合软件工程方法的优势和特点,让其在计算机软件开发中发挥出最大的价值,并探索和创新出更多有效途径,让计算机软件开发工作更好地发展,进而促进我国科技事业的进步。
参考文献
[1] 苏红.软件工程方法在计算机软件开发中的应用解析[J].南方农机,2020,51(07):224.
关键词:软件工程方法 计算机软件 开发运用
1.软件工程方法概述
1.1软件工程方法的概念分析
软件工程属于软件学科,其主要是采取工程化的方法建立先进的软件学科,包括的内容较多广泛,例如程序语言设计、数据库、软件开发技术、系统平台、设计模式以及设计标准等。在信息化背景下,办公软件、操作系统以及嵌入式系统等在各行业逐渐得到广泛的应用,这些行业包括工业、农业以及金融业等,促使行业工作效率和质量得到提高,对社会经济的发展也产生积极的影响。
过去的60多年,大量软件工程方法被推出,例如结构化方法、面向对象方法以及形式化方法等。在这些软件工程方法中,结构化方法也称作生命周期方法,可将软件生命周期分成各个阶段,采用结构化技术促使各阶段目标得以完成。面向对象方法是数据紧密结合操作,能够实现软件开发过程的有效过渡。形式化方法是通过形式化数学变换进行软件的开发,促使系统说明能够得到执行。
1.2软件工程方法的优势
1.2.1提高软件智能化水平
软件工程方法运用于计算机软件开发中,能够使软件性能升级更加迅速,促使软件的整体功能更加先进,从而提高软件系统存储量。并且,用户的使用也可避免调整与修改的繁琐,有利于软件智能化水平的提高。
1.2.2使网络硬件的压力减轻
软件系统的优化可以促使软件对网络硬件的压力有效减轻,如果软件未能实现优化,将会导致网络硬件的压力加重,在系统中占据较大的空间,造成网络资源的严重消耗,并且对硬件的使用寿命和用户的体验带来不良影响。
1.2.3加快软件开发效率
如果不将软件工程方法运用于计算机软件开发中,则软件的整体性能将很难得到提高,需要重新进行新软件的开发,从而导致开发成本增加,也造成软件开发效率低下。计算机软件开发中运用软件工程方法,可以促使整体性能更加强大,使软件开发检测更加高效。
2.计算机软件工程的应用
2.1在现代企业工程项目管理中的应用
将信息系统应用于企业运行的过程中,主要是通过现代科技对相关的业务信息进行收集整理、认证识别,以及存储传递、及时处理、方便检索等应用模式。信息系统被用于企业的发展中,无论是企业发展战略还是竞争过程都结合了信息系统的优势,它相比于其他的技术具有无可比拟的优点,可以说是积极地推动了企业的发展。信息系统的覆盖,使得科学技术的应用更具适用性和较强的渗透能力,同时结合着信息系统的概括面,使得当前的企业发展布局在科学技术的知识推广过程中,产生的经济和社会效益相对明显,特别是其发展的速度更加快速、尤其是业务执行的周期缩短、体现了信息系统的高速时效性,体现了现阶段信息系统对企业经济的发展具有积极地推进作用。
2.2在通讯设备中的应用
随着生活水平的日益提高,手机等通讯工具成为必不可少的生活用品之一,科学技术的普及使得计算机软件技术融入到现代电子产品中,例如微信、QQ等,还有手机APP的风靡,也极大地便利和丰富了人们的日常生活,提高了通讯效率,也极大地方便了人与人之间的沟通,成为生活中必不可少的组成部分。在飞速发展的现代科技技术的同时,新时代的通讯工具数不胜数,通过网络信息传播的速度和范围显著增加,现代化营销方式有效快捷地集中信息受众,通过智能手机上的APP应用程序或平板电脑等通讯工具可以进行快速沟通和充分交流,商家可以通过多媒体方式如影音视频展示商品信息。利用多种信息技术进行展示,如视频让人切身感受、3D技术让人进入虚拟世界,人机互动让人感受多样全面,智能手机扫二维码即可快速获取全面多样的信息,智能终端可以保持进一步联系与了解,提高交易完成的几率,支付方式多样化且方便好操作,以移动互联网技术为依托建立网上交流交易平台。
2.3在教育教学活动中的应用
现阶段教育发展的要求逐渐被提上一个科技指标的行列,已经不单单只是建立在浅显层面的教育,而是与科技相结合的教学资源共享方式。这样的方式能够将所有的资源通过一个简单的方式进行整合,对于教学来说,资源的整合是时代的要求,也是当前资源共享的基础。网络技术的发展在现阶段的发展中,逐渐被广泛利用起来,特别是它能够实现资源的利用与共享,而许多机构对网络资源的使用都是通过整合各方的资源建立形成涵盖课程资源库、信息资源库等专业平台的方式实现资源的共享和利用。
3.计算机软件开发设计方法
3.1面向对象设计
在计算机软件开发设计中,运用面向对象设计方法,可以发现软件设计难点,在此基础上探究解决难点的对策,优化设计,同样能够得到高度可靠、有效的软件。面向对象设计方法的具体应用是面向设计对象,对其进行分析,如此可以得到软件设计程序的各个分解部分,再利用非形式化的方式阐述对象的功能,确定对象的属性及操作方式。基于此,设计各个分解部分的模型,通过分析模型应用、模型组装等方方面面来确定此部分设计难点,以此为依据探究优化设计方法,从而规划此部分的设计规划。按照以上流程,对其他分解部分进行设计,最终组合,可以开发出应用性较强的计算机软件。
3.2数据流设计
对设计对象的各方面进行分析,并进行相关数据信息采集,以此为依据,构建结构化的数据流图,进而了解它的特征及数据流的特征,判断数据流的类型,根据数据流的类型来进行软件开发设计,如此可以使软件设计结构独特且完整,提高计算机软件的应用性。例如,在科技下乡的主题下,有人提出构建研发类似于微信公众平台的软件,从而方面国家农业部为农民推送农业常识和信息。这个想法非常好,但是要考虑到老少边穷地区的互联网覆盖程度和农民的受教育程度。
3.3营造良好的软件开发环境
营造良好的软件开发环境是促进计算机软件开发设计行业高速发展的重要条件。为了营造良好的软件开发环境可以从以下四个方面着手。第一,提高国内计算机软件的研发水平。第二,为计算机软件开发设计提供良好的政策条件。第三,为计算机软件开发设计提供必要的资金保障。第四,加强对各大高校软件专业的学科建设关注程度。
结语
计算机软件工程研发和建设已经走过了漫长的发展历程,但是要像其他工程学科一样成熟,仍然还有很长的路要走。在计算机软件开发方面,必须研究与其他工程学科项目开发类似的地方,学习其先进的项目管理经验,针对软件开发项目中遇到的独特题确定开发策略、使用技术和开发工具。
参考文献
[1]林雪海,吴小勇.计算机软件开发的基础架构原理研究[J].电子制作,2016,Z1:65-66.
[2]董海,叶永利.计算机软件开发的JAVA编程语言分析[J].数字技术与应用,2016,01:240-241.
关键词:计算机辅助设计平台 硬件 软件 开发方法
一、计算机辅助设计平台系统的硬件和软件构成
1、计算机辅助设计平台系统的硬件
(1)主机
主机的核心部分是中央处理器(CPU)和内存储器。CPU由两部分组成:控制器(CU)和运算器(ALU)。它管理主机所有组成部分的运行,并对数据进行算术逻辑运算。
(2)存储器
在计算机系统中,用以存黜程序和数据的装置,成为存储器。存储器可分为两类:内存储器(主存储器)和外存储器(辅助存储器)。内存储器通常设计为计算机的一部分,并直接与中央处理机连接。内存储器可以存贮两类信息:由控制器执行的程序指令和由运算器处理的数据。外存储器是为了弥补内存容量有限的缺点,适应于大量数据的处理与存贮而使用的。它主要用于存放当前不参与运行的程序和数据,在需要时再成批地与内存交换。其特点是:存储量大,价格低,存取速度较快。
(3)一般输入/输出设备
这些设备一般包括键盘、显示终端和打印机等。除了上述的设备外,还经常用到其他设备,如:光笔、鼠标器、图形输入板、数字化仪、扫描仪和图形显示设备等。
2、计算机辅助设计平台系统的软件
计算机辅助设计平台系统功能的实现是系统硬件和软件协调作用的结果,没有软件的支持,硬件是无法工作的。归纳起来,计算机辅助设计平台系统的软件基本上可以分为三类:即系统软件、支撑软件和应用软件。
(1)系统软件
系统软件是计算机辅助设计平台系统最低层次,为用户提供开发图形软件和应用软件的软件环境。系统软件是指操作系统及语言语言处理程序等,它着眼于计算机资源的有效管理,用户任务的有效完成以及操作上的方便等,目的在于构成一个良好的软件工作环境,供应用软件的开发使用。
现在常用的操作系统有MS-DOS、Windows系列操作系统和UNIX操作系统等。其中MS-DOS、Windows系列操作系统主要是应用于PC机上面,UNIX操作系统能在微型机到大型机的各种机器上运行,已成为当今世界上最流行的多用户操作系统。
在计算机辅助设计平台系统软件的开发中,汇编语言的使用已大量减少,目前主要是采用FORTRAN、C、VC、VB、C++Builder等。在人工智能方面应用较多的LISP,Prolog等。
(2)支撑软件
支撑软件是在系统软件的基础上,为用户自行开发应用软件提供技术支持的软件,从功能上可以分为三类:第一类是几何图形设计软件;第二类是工程分析与计算软件;第三类是文档处理软件。
(3)应用软件
计算机辅助设计平台系统的功能最终要反映在解决具体产品和工程问题的应用软件上,应用软件的开发是建立在系统软件和支撑软件基础之上的。归纳起来,应用软件应该具有下列特点。
a. 功能齐全,能满足具体产品或工程设计要求,以获得最佳的设计效果。
b. 能充分利用计算机辅助设计平台系统的软、硬件资源,具有较高的效率。
c. 应用软件应实现规范化和模块化。
d. 移植性强,便于在各种计算机上运行,并易于与有关软件连接。
e. 具有良好的人机交互界面和人机友好程度。
f. 使用方便,可靠性强,便于维护。
由于应用软件应用于各个领域,涉及的专业性很强,所以,一般情况下需要用户自行开发。相关学科的技术人员协作研制和开发,可以解决各种工程或产品日益复杂的工程技术问题,以满足现代计算机辅助设计平台系统的要求。
二、计算机辅助设计平台系统的开发方法
1、软件工程方法
一个功能完备的计算机辅助设计平台系统的建立,需要充分利用计算机的软、硬件资源,考虑各方面的需要,协调系统内部各独立模块之间的关系,以期发挥计算机辅助设计平台系统的优良设计能力。这并不是很容易的事情,它涉及的内容非常多,如果没有科学的设计方法作指导的话,设计出来的计算机辅助设计平台系统不可能达到令人满意的程度。
随着CAD/CAM技术的发展,应用软件开发的规模越来越大,复杂程度越来越高,水平也不断提高,以至于如果还是采用传统的开发技术难以保证所开发应用软的质量和水平。为此,开发者开始采用工程化的方法从事软件的开发,并逐步在实践的基础上形成了软件工程学这一技术学科。
软工程学的诞生和发展使软件的开发和生产成为一种工程问题,而不是个人的艺术创作。它主要研究软件结构、软件设计方法论、软件工具、软件工程标准和规范,以及相关的理论。
从软件生产管理来看,软件工程学大致包括以下内容:
(1)软件的需求定义和分析技术;
(2)软件设计和审查技术;
(3)软件描述技术;
(4)软件调试技术;
(5)软件可靠性技术极其评价方法;
(6)软件扩充和维护;
(7)软件成本估算等。
2、计算机辅助设计平台系统的开发
就计算机辅助设计软件而言,由于真正实用、功能齐全的计算机辅助设计软件一般都比较复杂,程序在万行以上,不同模块之间关系复杂繁多。因此,必须采用软件工程的方法从事工程化的计算机辅助设计软件开发,这样才能保证开发过程清晰、要求明确、任务具体、质量高、时间短、费用少,并且便于检查和维护。
基于上述情况,一般情况下,在工程化的计算机辅助设计软件的开发过程中,必须考虑下列要求:
(1)硬件支持环境;
(2)软件支持环境;
(3)设计要求;
(4)实用化要求;
(5)保证软件质量;
(6)测试验收严格;
(7)文档编制通俗;
在开发计算机辅助设计平台系统时,必须很好的参照这些要求,各个行业的设计者可以把这些要求与本行业具体生产情况结合起来,真正使软件工程思想和软件工程开发方法贯彻到行业计算机辅助设计平台系统中去,务求保证软件的质量,提高软件开发的效率。
计算机辅助设计平台系统的开发过程如图。
参考文献:
[1]王吉明.计算机辅助设计的技术应用探究[J].科技与创新.2014(21).
关键词:全球卫星定位系统;平地机;农田平整;计算软件
中图分类号:P228.4+1 文献标识码:A 文章编号:0439-8114(2017)06-1146-04
DOI:10.14088/ki.issn0439-8114.2017.06.039
Abstract: Before using the Global Positioning System(GPS) field grading operation, we should measure the topographic features and calculate the earth volume of grading operation, including the excavation volume and filling volume, and then calculate the design elevation of grader according to the principle of equal amount of excavation and filling volume. The design elevation was then input into the automatic control system of GPS grading machine, which provide a more accurate height setting, as well as automatic control of grader work. As the manual calculation of earthwork and elevation design method is too complicated, a software for calculating the earth volume and design elevation of grader was developed based on VB 6.0 programming software in order to improve the computational efficiency. Field leveling test,showed that the software could improve the efficiency of flat ground operation.
Key words: Global Positioning System; grader; field grading; calculate software
S着高精度全球卫星定位系统(Global Positioning System,GPS)农田平地机的推广应用,需要开发与之配套的土方量及设计高程计算软件,为GPS平地机作业计算出土方量,并为GPS平地机自动控制系统提供设计高程。GPS平地机在作业时,要根据农田地块实际高程与设计高程间的差异进行挖方或填方作业,从而尽量利用农田地块内的土方进行土地平整,以减少将农田地块内多余的土方外弃,或运载外面的土方进入农田地块进行填方。使用GPS平地机自动控制系统时,需要输入精准的设计高程。GPS平地机使用此设计高程进行平地作业,可以使平地作业所产生的挖方量和填方量基本相等。基于此,根据GPS平地机农田平地作业实际需求,研究了GPS平地机平地土方量及设计高程计算方法,并使用VB 6.0编程软件开发出了GPS平地机土方量及设计高程计算软件。该软件能够充分利用农场或农村农机合作社现有车载高精度GPS接收机,对作业地块测量所采集到的三维数据进行处理和分析,得到地块的三维地形图;根据三维地形图计算出作业地块平均高程,依据高程差计算出作业地块挖方量和填方量,根据挖方量和填方量相等原则得出设计高程。这样无需使用价格昂贵的全站仪,降低了测量作业成本[1]。该软件主要有以下功能:①可以比较准确的计算出平地作业所产生的挖方量和填方量。根据平地作业所产生的土方量计算GPS平地机的工作量,为平地作业结算提供准确的数据。②为平地作业提供农田地块地形图,供作业农机技术人员进行作业路线规划参考,便捷地将土方从高处向低洼处实施推运。③计算出GPS平地机自动控制系统所需要的设计高程,为平地机平地作业提供作业高程基准,以最小的土方运送量,达到较高的土地平整精度。GPS农田平地机土方量及设计高程计算软件窗口如图1所示。
1 国内外状况
1.1 国外农田平地作业计算软件
目前国际上农田平地作业计算软件主要为美国约翰迪尔(JOHN DERRE)公司的ApexTM软件、美国凯斯(CASE)公司AFS软件和日本拓普康(TOPCON)公司AGForm-3D软件。
1.1.1 美国约翰迪尔公司ApexTM软件 ApexTM软件是美国约翰迪尔公司为其农机具推出的软件,有各种版本,分别可以在PC机和手机上运行,还可以在约翰迪尔公司的Green Star车载计算机上运行,操作人员在作业现场驾驶带有GPS接收机的拖拉机作S形运动时,车载计算机自动记录作业地块的数据,通过车载计算机中的ApexTM软件对数据进行分析,然后得出最优解决方案,从而帮助操作人员进行平地作业。
1.1.2 美国凯斯公司AFS软件 美国凯斯公司AFS软件是农机配套的软件,它可以和凯斯拖拉机配套使用,AFS软件中有AFS Water Control模块,该模块可以对作业地块进行分析、土方量计算,还可以进行自动化地形测量、坡度设定等,通过坡度平地作业来有效的分配水资源,提高水资源利用效率,降低用水成本,从而节约灌溉用水。
1.1.3 日本拓普康公司AGForm-3D软件 日本拓普康公司AGForm-3D软件能够对拓普康公司GPS农田平地机采集并记录的农田地块相关信息进行处理,从而提高平地作业效率。其无需进行人工测绘作业就能完成农田地块地形测量,自动完成作业地块设计图的绘制。
1.2 国内农田平地作业计算软件
发达国家的农田平地作业计算软件经过多年的实际应用已经比较成熟,并可以进行商业化应用,但因为价格和使用习惯等原因,无法在国内进行大规模的推广应用。近年来,国内的一些高校和科研单位应用地理信息系统平台进行了土方量计算软件研究与开发,先后开发出了基于GPS平地机的土方量计算软件,取得了较好的应用效果。
1.2.1 南方测绘公司CASS系列软件 南方测绘公司CASS系列软件对于工程中常见的情况提出了各种土方量计算方案,包括利用DTM模型、断面、方格网、等高线等几种方法,可以应用于各类设计面,如平面、斜面以及三角网等[2]。
1.2.2 超图公司Super Map Deskpro软件 超图公司Super Map Deskpro软件能适应各种复杂地形以及场地实际情况,具有良好的交互性,界面友好,贴近操作人员设计思路,能够在最短的时间内计算出土石方量;其提供了6种土石方量计算方法,对于土方挖填量的结果可进行分区域调配优化,解决了平地土方量平衡要求。
2 土方量及设计高程计算软件研究与开发
为了满足平地作业实际需求,课题组应用VB 6.0软件研究开发了土方量及设计高程计算软件,为自行研制的GPS农田平地机配套使用,其可为GPS农田平地机自动控制系统提供设计高程,使其能够移动最少的土方量完成土地平整作业。
2.1 土方量及设计高程计算方法
农田平地土方量计算是GPS平地机进行平地作业前的一个重要的步骤;在进行平地作业之前需要根据作业地块的实际情况,计算出平地作业所产生的挖方量和填方量。
数字高程模型(Digital Elevation Model,DEM)是用一组有序数值阵列形式表示地面高程的一种实体地面模型,其是用数字形式的X、Y、Z轴坐标来表示作业地块的地形[3]。使用DEM计算农田平地作业所产生的土方量,要根据实地测量的坐标(使用RTK差分GPS接收机进行测量)X、Y、Z和设计高程,计算每一个网格(图2)的填方量和挖方量,最后将所有的网格作业所产生的土方量进行累计,得出作业地块总的挖方量和填方量。
DEM主要有两种表示方式,一种是基于规则方格网的DEM(Grid Based DEM),另一N是基于三角网的DEM(Triangle Based DEM)。而其中规则方格网法计算土方量更有利于使用GPS测量数据,方格网法计算相对简单,并且便于进行VB 6.0计算机程序设计,所以在本研究中使用DEM方格网法作为农田土方量及设计高程的计算方法。
DEM方格网法是将作业地块划分为若干个面积相等的方格,方格一般为边长10~20 m的正方形。在进行土方量计算时,可以在作业地块上使用高精度的车载GPS接收机测量每个方格网点高程,然后根据平均高程与方格网点高程之间的高程差,求出各方格的填挖土方量[4]。
在进行平地作业之前,根据方格网各网点高程使用加权平均法,求整个作业地块的平均高程(Hev)。使用VB 6.0编制的土方及高程计算软件对GPS接收机测量的地形数据进行处理及分析,生成作业地块DEM方格网,然后对每一个方格网点的高程进行加权平均计算,得出作业地块加权平均高程[5]。其计算公式为:
Hev=■, (1)
式中,Hev为作业地块加权平均高程(m);Hi为各方格网点高程(m);Pi为各方格网点权重;n为方格网点个数;然后根据作业地块平均高程(Hev)和方格网地块高程(Hi)差计算出平地作业的挖方量和填方量,若Hi>Hev,则该方格网需要进行挖方作业;若Hi
V=S(■+■+∑Hcf(m)), (2)
式中,V为方格网地块的填挖土方量(m3);S为方格网的面积(m2);Hcf(c)为方格网角点高程(m);Hcf(s)为方格网旁点高程(m);Hcf(m)为方格网中间点高程(m)。将所有网格的挖方量和填方量进行累计,即可得到作业地块总的挖方量和填方量。然后对平均高程进行微调,使用软件计算出的挖方量和填方量基本相等,即可得到该作业地块的设计高程。
2.2 计算软件设计
使用手工计算土方量及设计高程比较复杂,费时费力,所以设计开发了基于VB 6.0的土方量及设计高程计算软件,用于计算农田平地作业所产生的土方量及设计高程,评估平地作业前后所产生的挖方量和填方量;这里无论采用哪种方法计算挖方量和填方量,都可以视作计算平地作业所移动土壤的体积[3]。使用土方量及设计高程计算软件计算GPS平地机平地作业所产生的土方量的流程见图3。从图3可见,使用方格网法对农田地块土方量计算步骤包括数据输入、生成方格网、切分方格网、作业地块高程差计算和方格网土方量计算5个步骤。
平地机GPS高程自动控制系统能够精准控制平地铲的高程;平地作业前,需要向自动控制系统输入精准的设计高程。该软件还可以为GPS农田平地机自动控制系统提供设计高程,同时还可以生成GPS农田平地机作业轨迹散点图,具体见图4。从图4可见,软件运行步骤包括GPS数据文件导入、数据格式检查、挖方量及填方量计算、计算设计高程并生成作业轨迹散点图。
2.3 农田平地应用实例
为了验证GPS平地机土方量及设计高程计算软件的使用效果,2014年10月,在黑龙江省八五三农场五分场二队约0.43 hm2旱田地块,使用自行研制开发的GPS农田平地机进行了平地测试试验。
在进行平地作业之前,为了得到农田作业地块的地形数据信息,操作人员使用拖拉机牵引安装有高精度的车载GPS接收器的平地机,在作业地块上进行S形轨迹的行走,进行作业地块地形数据的采集,测量作业见图5。由于农田地形测量作业无需专业技术人员及使用全站仪等价格昂贵的设备,充分利用了农场或农村农机合作社现有的高精度GPS接收机,所以降低了农田地形测量作业成本。
车载GPS接收机把采集到的地形数据存储到车载计算机中,测量完成后,将GPS数据从车载计算机中导出,导入到PC机中进行数据处理和分析,生成后缀为.txt的纯文本数据文件,试验数据见表1。
GPS平地机土方量及设计高程计算软件可以直接利用.txt格式纯文本数据文件进行农田土方量和设计高程的计算,无需将其转换为数据库格式的文件,如Access、SQL Server,或其他格式文件,所以操作简单,使用方便。将测量作业数据导入GPS平地机土方量及设计高程计算软件中进行数据处理和分析[6],经软件格式检查和降噪处理后,生成平地机行走轨迹离散点平面图(图6)。然后对平地机行走轨迹离散点平面图进行离散点网格化,生成方格网图(图7),再对方格网化的农田作业地块面积进行计算[7],得出的农田作业地块面积为4 275 m2,大约为0.43 hm2。
本软件还能够根据作业地块每一个网格的高程使用加权平均算法求出作业地块的平均高程,然后计算出加权平均高程作为设定高程所产生的挖方量和填方量,此时,挖方量和填方量之间有一定的误差,根据挖方量和填方量相等时产生的土方量最小原则,对平均高程进行微调和优化,通过计算调整后得出最优设计高程[8]。当设计高程不同时,农田地块平地作业产生的挖方量和填方量见表2。从表2可见,当设计高程为83.172 6 m时,挖方量和填方量之间差值最小,为0.06 m3。也就是说,GPS农田平地机使用此设计高程进行平地作业,所产生的土方量最小。
3 小结
课题组比较了农田平地作业所产生的填方量和挖方量及设计高程计算方法,设计开发了基于VB 6.0的土方量及设计高程计算软件,用于计算农田平地作业所产生的土方量及设计高程。通过在农田地形测量、填方量和挖方量及GPS农田平地机设计高程计算中使用本软件,取得了很好的应用效果,提高了工作效率,满足了农田平地作业实际需要。
参考文献:
[l] 乔瑞波.基于GPS高程离散点的土地平整土方量计算方法[J].河北农业科学,2009,13(8):171-172.
[2] 刘建英.南方CASS软件土方量计算方法的探讨以及特殊地貌土方量的计算[J].城市勘测,2008(5):139-141.
[3] 徐敬海,李明峰,刘伟庆.一种基于DEM的土方计算方法[J].南京建筑工程学院学报(自然科学版),2002(1):26-31.
[4] 张海印.土方精度与方格网边长之关系的研究[J].华东地质学院学报,2000(3):69-73.
[5] 吴敬文,周丰年,赵 辉.基于方格网节点的土方量算方法研究[J].测绘通报,2006(11):43-57.
[6] 庄卫东,汪 春,王 熙.基于MATLAB的农田信息可视化实现[J].农机化研究,2011(6):137-140.
在金相分析的技术上以及准确性上,数字图像处理技术又进入了一个新的发展领域,当然也在材料科技学科给予了一种全新的研究方式。这篇文章就是把数字图像处理技术投入到金相应用中来,对这样的跨方向的科技创新开展了深入的剖析。这篇文章的主要内容就是将图像处理技术使用到定量金相剖析中来,而且使用VisualC++6.0编程来研究了金相构成计算机剖析系统。这篇文章勾勒出了金相图像分析系统的大致的结构和使用方式、创新图像预处理的算法等,并且说明这些结构的最终用处是配合金相图像的研究工作。
【关键词】金相分析 图像处理 图像分割 金相参数检测
1 绪论
在国外,金相图像自动分析系统的探索要比我们国家投入研究的早。早在1960年左右,就有很多生产商抓住商机将其投入到生产中。这类产品有很多,如英国剑桥仪器企业的T系列、美国Buahc&Lomb公司的QMs系列等等,这样的比较有年代感的商品使用了光导管扫描装置来获得图像,量化级别相对较低,就像QTM,只有64级灰度。
数字图像处理在许多的领域都投入使用,而且也已经在人民群众的生活中得到普及,在国家的安全方面以及经济进步方面、日常的生活中也越来越发挥不可替代的作用。以后的图像处理技术也会在应用以及研究中得到进步。而且进步的方向大致有四个领域。必将向着快速、高分辨率以及多媒体化、立体化、科技化和高性能化这样的领域逐步前进,实时图像处理的思想以及探索也会不断地得到完善。
2 计算机定量金相分析系统设计
2.1 硬件系统结构
一般情况下,计算机定量金相分析系统的主要工作就是使用图像采集卡来对各种图片进行收集,所收集到的图片大部分都是电子显微镜下看到的图片,而且把它变换为数字图像,然后在储存到硬盘里;另外一种方式就是通过数码照相机拍摄到的图片,保存到电脑中,目的是为了接下来的研究以及剖析;与此同时还使得计算机能简单的完成显示以及处理任务。系统的硬件结构如图1所示。
2.2 软件系统构造
2.2.1 面向对象的程序研究方案
在一般的结构化程序研究中就是将软件划分为各个部分的模块来完成的,这样能够将程序框架变得更加的清楚,有利于研究以及优化,然而模块之间不是所谓意义上的各个独立。然而其内部之间都是有非常错综复杂的关联。所以很明显这样以编码为中心的比较基础的结构化程序构建方式早就不符合要求。然而一定会使用面向对象的语言来完成。其最重要的特点如下:
(l)对象的类描述;
(2)封装性;
(3)多态性;
(4)继承性。
2.2.2 本软件构造的根本思想
本软件使用的是软件工程模型的线性模型,即使这个软件太过于简单和不可实现性,早就无法适应和满足当前软件发展的需求了。然而,相关设计人员在设计本软件的时候,就充分考虑到了这个问题,并建立了线性模型,具体如图2。
软件的最本质的性能以及由于对软件优化以及保护需求,本软件系统大体设计思路如下所示:
(1)文件储存;
(2)金相参数评估;
(3)图像处理;
(4)图像预处理;
(5)框架与结构;
(6)帮助功能。
图3是软件结构,图4是界面设计。
2.2.3 编程环境
从整体上说,C语言并不是一个单纯只面向对象的语言,其中包含有大量的概念机制,能够对对象概念进行编程;Visua1C++这个平台具有三个明显的特点,分别是高度集成、交互和可视化编程,所以在选择本软件编程环境的时候,毫不犹豫地选择了ViusalC++.60。该系统能够让用户直接使用代码,而不需要考虑具体的使用细节,这样一来,使用者就可以将更多地精力放在图像处理的算法方面,这样程序的设计效率得到了大幅度提升。MFC库具有非常多的功能,通过MFC库写出的程序,维护、移植、扩充等都非常简单。
2.2.4 具体实现设计
系统用到的设计主要包括:
(1)应用类;
(2)主框架类;
(3)子框架类;
(4)视图类;
(5)文档类;
(6)处理图像类;
(7)金相组织类。
本软件处理的对象主要集中在设备无关位图(DIB)方面,但是在MFC库中却没有专门针对该类型的类,并且在整个Win32SDKAPI中,涉及到的处理函数数量非常少,基本上无法满足处理的具体要求。所以在本软件的设计中,专门设计了CDib。但是在MFC库中,已经有了一个可以对设备相关位图(DDB)进行操作的ciBtm。原先计划把该类当成父类,通过父类派生输出具体的CDib,但是如果从长远发展的角度来看,这种做法并没有太大的用处。不仅如此,cobject类还有两个不得不说的优点,那就是最低限度的成员数据和函数,派生花费得到了大大的降低。
3 金相图像预处理技术及其实现
3.1 图像的数据结构和运算
图形的画面存储形式具有非常明显的特点,根据这个特点可以很轻松地对其进行区别:图像不是矢量结构,而是栅格结构的。所谓栅结构就是将图像均匀地分成若干个栅格(像素),并对每一个栅格的光度值进行了记录;像素的坐标通常会有规则地进行隐藏,并呈规则排列,最常见的一种排列方式就是矩阵排列。由此图像可用基于位置坐标的三维函数来表示:
图像的形式有两种,即黑白和彩色。黑白图像就是说在该图像中,每一个点都不是彩色的,而是红、绿、蓝颜色平等地分布开来,即
对于黑白图像来说,f(x,y)所代表的是(x,y)所在点的灰度值。
计算机只能够对一些离散的数据进行处理,所以处理那些连续图像函数的时候,就需要事先进行扫描、采集、量化的采集工作,之后才能进行转化,使之成为数字图像。数字图像的表现方式为:由采样点的值所组成的矩阵。具体如下:
3.2 图像的存储格式
图像在某种程度上可以被看成是简单的数组,但是图像在际存储格式方面却并不简单,有着复杂多样的格式,而且不同格式都有独特的工作机理和优缺点。本系统的图像格式为BMP格式,这是一种比较常用的一种格式。该格式也被称为位图(DIB),和设备没有任何关系,有时候还会以BMP或者DBI为后缀。其结构如图5。
3.3 图像处理及其功能和原理
数字图像技术主要有两种目的,第一个目的是让人能更清晰地看到图像,第二个目的就是让图像的内容能够更明确清楚地展现出来。第一种被称为图像处理,通常会经过变换和增强滤波和信噪比来实现;有些图像信息微弱,对于这种图像来说,最好的办法就是进行灰度变换,提高对比度;对于那些非常模糊的图像来说,如果想要实现图像的恢复,那么就需要进行相应的几何校正工作。通过这些处理的办法,可以在很大程度上改善图片的质量,让人更容易识别。第二种被称为图像分析或图像识别。这种方式进行的基础是图像处理,在一些数学理念的基础上对图像进行区域分割、,并对其中的特征进行提取,之后,通过定量的描述建立起参数关系,从而为进一步分类和测量提供参考。
在金相图像的分析中,出现了很多灰度差异的问题。造成这种问题的主要原因在于,金相试样制备是残留了过多的磨痕、抛光粉等异物。这种情况还会造成图像分析的误差,因此,就需要进行图像增强和平滑锐化等预处理。
4 结论与展望
在计算机图像处理技术发展的同时,逐渐和材料学进行了融合,并出现了金相组织计算机分析系统,该系统的出现时必然的,是充分结合了计算机技术、图像处理、定量金相等技术的综合性系统。该系统涉及的技术较多,所以在很多的时间内并不能做到尽善尽美,其中还存在很多问题需要我们一起去研究:
(1)软件问题:很多软件的功能还需要进一步地进行加强并提升其功能,尤其是金相参数测量方面。
(2)在理论方面,要将重点放在图像分割方面。金相图像是个微观显示图像,弱边缘的问题非常明显,所以,不能用通常情况下采用的边缘检测方式来进行。
(3)在图像分割技术的支持下,模式识别将会实现对金相组织的自动识别。综上所述,随着我国机械行业的不断向前发展,对材料的性能要求也日益增强,在金相分析中也出现了很多图像处理技术,共同推动其不断向前发展。
参考文献
[l]李志敏,吴建军等.计算机处理技术在晶粒度测量中的应用[J].压点与声光,2002:168-170.
[2]周长发.精通Visual++图像编程[M].北京:电子工业出版社,2000.
[3]石锐.高仲英等.晶柱度评级中晶界的自动修复[J].中国体视学与图像分析,1997:82-84.
[4]汪守补.金相分析基础[M].北京:机械工业出版社,1986.
[5]秦国友等.定量金相[M].四川科学技术出版社,1987.
作者简介
刘静(1982-),女,江苏省泰兴市人。2009年毕业于中国矿业大学计算机科学与技术专业,工程硕士学位。现为江苏联合职业技术学院徐州财经分院信息技术系教师、讲师。研究方向为计算机应用。
主要的软件工程开发方法有SASA方法、Pamas方法、面向对象的软件开发方法等。其中,面向对象开发方法是目前使用最为频繁的一种软件开发方法,它是目前计算机领域中最为关心的重点,是90年代软件开发领域的主要潮流。从其概念与应用来看,面向对象已经远远超越了软件开发和程序设计,范围拓展的非常宽。面向对象的优点有很多方面,例如与现实世界之间的距离更加接近,更加符合人类的逻辑思维,开发出的程序更加合理稳定。
二、计算机软件工程的应用
近年来随着科学技术的不断发展,网络技术目前已经得到了快速的普及,逐渐深入到人们的工作与生活中,计算机软件以其执行命令更加准确、运行效率更高、操作更方便等优点得到了人们的认可和欢迎,并在短时间内被人们应用在活动的各个层面上,换句话说人们的各项活动已经不能离开计算机软件了。现在具有代表性的软件主要由电子邮件、计算机操作系统以及各种网游软件等,在社会经济发展的各领域中,例如农业、金融、企事业单位等部门中的很多工作都需要依靠计算机来完成。随着计算机应用程度的逐渐加深,计算机软件工程已经发展成为一项意义深远的工程技术,在软件开发商业加入更多人性化的因素。与机械制造业中的生产方式不同,软件工程生产应该体现出一定的个性化特点,并对其设计思维与功能进行不断的更新和完善,在软件开发工作中,设计人员应该结合客户需要,对各方面的因素进行综合考虑,将大家的智慧汇集到一起,这样次啊能设计出成功的计算机软件。因为软件系统本身的应用性非常广泛,设计人员应该对各种可能发生的问题进行提前的考虑,一旦出现故障将会为客户带来无法估量的损失,因此,要想将计算机软件工程研发工作做好是非常困难的。计算机软件设计存在功能化、人性化等特点,目前计算机软件已经在现实生活中得到了极为广泛的应用,并在现代企业经营管理中发挥着至关重要的作用,目前生产、销售等环节已经实现了信息的交流,以方便经营策略变动的进行。例如在金融机构以及商场等管理中,应该通过软件系统针对消费信息进行统计和确认,利用金融系统完成支付,大大避免了携带现金带来的麻烦。软件系统隐藏在计算机中,其管理能力非常强大,使人们的工作方式与生活方式发生了重大的改变。
三、结语
关键词 计算机 软件开发 开发技术
中图分类号:TP31 文献标识码:A
1计算机软件开发概述
计算机软件具备较高的社会价值,在社会各界、各个领域均得到了广泛应用,在提高工作效率、实现信息共享、提升管理水平等方面发挥着重要作用,同时也给软件开发商带来了良好的经济效益,有力地推动了计算机软件产业的快速发展。随着用户对计算机软件功能需求不断提高,计算机软件越来越复杂,从而使得开发商必须投入更多的人力、物力以及时间研发软件。换言之,计算机软件的复杂性决定了软件开发时间和精力投入。此外,由于计算机软件存在被修改和复制的风险,所以开发人员在开发完成后必须对计算机软件采取保护措施,以防止软件遭到窃取或破坏。计算机软件是开发人员的智慧成果,其实用价值不仅决定着经济效益目标的实现,而且还影响着软件在市场上的占有率,关系到软件开发商的生存和发展。计算机软件开发主要分为应用软件开发和系统软件开发两种。应用软件开发是指为了解决实际应用问题而进行的软件开发工作;系统软件开发是指为了控制、管理、维护计算机外部设备,以及提供人机操作界面而进行的软件开发工作,如数据库管理系统、信息管理系统、操作系统、语言处理程序等等。当前,计算机软件开发必须严把以下关口:在软件开发前制定科学的开发计划,构建分阶段生命周期模型;在软件开发过程中要严格把控开发质量,确保软件功能的实现;在软件开发后期要做好评审工作,采取科学手段对软件进行分阶段评审,以保证软件的实用价值。
2计算机软件开发的技术方法及其应用研究
2.1软件开发方法
计算机软件开发是一项较为复杂且系统的工作,在开发的过程中需要应用到一些开发方法,虽然每一种开发方法特点各不相同,但其最终目标都是为了开发出一款性价比高的计算机软件。目前,比较常用的计算机软件开发方法有以下几种:
2.1.1基于生命周期的软件开发技术
软件的开发都有一个特定的周期,通常情况下,这个周期可分为定义、开发、维护等几个过程,每个过程都有属于自己的执行标准,这些过程综合到一起就是一个计算机软件的生命周期。常规的计算机软件的生命周期一般不超过6个月,大致可分为6个基本阶段,每个阶段所解决的问题均不相同,但上个阶段都是为下个阶段作铺垫,直至完成软件开发的整个生命周期。
2.1.2原型开发法
因为基于生命周期的软件开发有着十分严格的定义和预说明,并且开发设计人员需要在实际开发前对用户的具体需求进行全面的调查分析,以此来把握将要开发的软件的整体功能。如果是在用户未给出详细的功能要求或是开发设计人员无法准确判定软件的适用范围时,则可以利用原型化的方法来确定软件开发需要满足的基本要求,然后再通过对待开发软件的基础构建,便可以逐步完成整个软件的开发。
2.1.3自动式开发
随着科学技术的不断发展和完善,软件编程语言的功能越来越强大,利用相应的编程软件,可以开发出各种各样的计算机软件,这对于软件开发技术的提高具有非常重要的现实意义。同时,这种方法进一步简化了软件开发的步骤,使开发过程中变得更加简单、效率更高、速度更快,其已成为当前计算机软件开发的主流趋势。在进行具体开发的过程中,只需要开发设计人员按照实际需求进行自动编写程序,编程软件就能够按照需要自动生成所需的应用软件。
2.2软件开发技术的具体应用研究
计算机软件技术改变了人们的生活、生产方式,已经成为人们生产、生活中必不可少的部分。下面通过两种开发技术对同一产品进行开发:一种是利用单机版运行的VB6.0+Acess开发软件,该软件安装要求系统具备良好的兼容性;另一种是采用高级数据库服务器开发软件,该产品的安装步骤较多,使得软件应用较为繁琐。第一种软件虽然安装简单,但是当用户人数增多时就会减慢软件运行速度。第二种软件安装的限制条件较多,尤其在用户访问过程还需要经过复杂的访问步骤,严重影响软件使用的便捷性。所以,计算机软件开发技术还需要不断发展和完善,急需一大批软件技术人才,开发出功能齐全、性能高、弊端少的软件。
3结论
总而言之,计算机软件开发是一项极为复杂且系统的工作,软件的功能是否强大、应用效果是否良好全都与开发技术方法有关。所以想要开发一款功能强大的计算机软件,除了要选对开发技术方法之外,还需要设计开发人员的不懈努力,只有这样,才能不断开发出更好、更实用、更强大的软件,这对于促进人类社会的进步具有非常重要的现实意义。
参考文献
[1] 盛雪.基于网络层传输的计算机软件开发技术探讨[J].计算机光盘软件与应用,2012(12).
1)注重构件重用度提升。在软件构件构造过程中,应结合实际应用,实施功能构件的分离,为满足各类应用实际需求,还可将可变部分进行参数化与数据化。同时,注重抽象级别提升,建立其结构标准;
2)可理解性原则。抽象化是构件的一大特点,基于此,在构件构造过程中,应提供一些可理解的方法结构、属性、操作,或设置有完整的说明,以便复用;3)方便演化。在构造过程中,数据及其结构使封装为一个整体的,可在数据构件对象中存储数据,以便数据对其结构的解释。
2基于构件技术的计算机软件开发
面向构件的计算机软件开发是指以相应的构件模型为重要支撑,对构件库中的软件构件进行重用,并实施软件构件的组合,构造更高层次的软件系统。本文以某物业管理公司管理信息系统开发为例,以MIS系统为主要载体探讨面向构件的计算机软件开发。
2.1面向构件的计算机软件开发方法
快速原型法、自顶向下法、自底向上法是传统的计算机软件开发的三种主要的方法,相异于这些方法,面向构件的计算机软件开发从分析设计到其运行实现等各个阶段的开发工作不再是零基础,而是在CBSD的引导下,实施计算机软件系统的集成。也即是基于构件技术的计算机软件系统开发是以组装为主导的软件开发过程。其开发方法如图一所示:
2.2面向构件的计算机应用软件系统开发
结合以上基于构件技术的软件系统开发方法,在该公司的软件系统开发过程中,首要步骤即是分解该信息管理系统的功能模型,以确定出满足系统管理需求的软件构件。该物业管理公司开发的信息管理系统模型主要目的在于实现对小区日常物业高效管理的需求。基于此,该信息管理系统的主要功能模块则可分解为文件管理、维修环卫、园林绿化以及保安部等。而在这些功能模块中,都涉及查询、添加、编辑、报表、打印、删除等数据,可见在这一应用软件系统的开发中,可确定它们是能够复用的操作构件。
2.2.1软件构件分析
软件构件分析主要针对系统的构架选型、业务构件需求以及数据模型、可复用服务构件等进行分析。其中,数据模型分析应注重概念数据模型与物理数据模型的设计。设计人员在物理数据模型设计中,应重视储存参数、约束条件、定义表、视图、表空间等的设计。在该公司的信息管理系统开发过程中,根据其应用管理的实际需求,可将其体系结构划分解为三个层次:一是数据服务层。该层主要负责数据的定义、更新、访问、维护等。在服务层次中,主要包括系统数据(系统安全数据等,如用户的账号、密码等数据)、业务数据(维修环卫等涉及系统业务的数据)与控制数据(用以应用软件系统业务修改的数据);二是应用服务层。该层主要对应用软件系统的主要业务应用程序进行封装,实现系统的应用功能构件,如组织管理构件、日常考勤构件等;三是客户服务层。该层主要根据用户需求,提供满足其应用需求的可视化界面。
2.2.2软件开发
关键词:软件开发 方法 演变 创新
随着软件规模的不断扩大,应用领域的不断延伸,软件产品所面临的应用环境开始从静态封闭逐步走向动态开放,软件开发的焦点和难点集中于产品和项目的三个特征:第一,高速度;第二,高度变化;第三,高度不确定性。软件的核心就是可变,高速变化的原动力不是规模,而是源自对象(问题)系统的复杂性以及软件产品开发过程的特殊性。面对这一情况,传统的软件理论、方法和技术在处理复杂软件开发时遇到了一系列挑战,软件开发方法的变革正在成为新一轮软件工程领域研究的重点。
一、关于软件开发
软件开发方法的研究是软件工程领域长期争论不休的问题,这实际上是要解决一个如何认识对象以及如何开发出一个实际系统的问题。由于软件技术可以极大地提高软件开发过程中的生产效率和质量,并能大幅度降低软件的开发成本与开发维护的周期,从而成为软件工程领域中的一个重要的研究方向。著名权威人士曾指出软件开发是利用已有的软件制品进行组装与合成新系统的一项技术,从而说明了“为了重用而开发”与“基于重用的开发”之间的关系以及新的软件开发理念。
软件在再次利用资源方面可以促进了基于COTS的软件开发与应用,并将传统的从“用户需求、分析、设计、编码到测试”这一开发过程转化到了根据“用户需求对可重用的软件进行选择、客户化、扩展、外包和组装”这一个新的开发过程。从而使得软件的开发过程从简单的作坊式开发、过渡到基于内部流程式的开发,并向“工厂化”的大规模协同化的软件开发过程进化。工厂化的软件开发模式提供了一种集成化的环境来实现特定产品的快速开发、配置与重用,从而为实现全球化、分布式协的开发过程奠定了基础。为了实现软件工厂化开发,探索通过软件再次利用来增强软件开发过程中的资源利用效率,就需要将软件开过程中的不同环节进行有效地集成并建立起整体的价值模型,以实现对整个开发过程中不同增值活动的定量化分析和整体优化。
二、软件开发方法演变
软件是为了解决客户的问题而开发的,所以客户需求分析和定义是软件开发的开端。需求被分为三个层次:业务需求、用户需求、功能和非功能需求。需求分析和定义过程包括对客户需求的引出、分析直到可以得到需求定义和编制规格,说明书,即文档化。不同的软件开发方法在文档化的认识上具有显著的不同。
从人的主观因素来看,起初人们研究软件开发方法的目的是为了解决软件危机,软件危机得到缓解之后,人们研究软件开发方法的目的是为了提高软件开发的效率、降低软件开发和维护的成本、保证软件的质量和可靠性。为了实现以上目的,在研究软件开发方法时,需要人们改变传统的观念和采用新的思维方式,需要人们借鉴其它工程领域的成功经验和有效方法。而当人们改变了传统的观念、采用了新的思维方式、借鉴了其它工程领域的成功经验和有效方法之后,势必导致软件开发方法发生演变。
从外界的客观因素来看,随着计算机应用的普及和深入,不断出现需要计算机处理的新问题和新领域。例如:软件规模增大、软件复杂性增强、软件可靠性要求提高、新系统(如嵌入式系统)的出现、开发工具的更新、互联网的快速发展等等。对于解决新问题和应用于新领域所需要的计算机软件原有的软件开发方法无法胜任,迫使人们改进原有的软件开发方法、推出新的软件开发方法。
三、软件开发的创新方法
⑴找出软件开发活动中存在着的问题。
软件开发活动中的个体化特征非常严重,编写程序时个人随心所欲,过分追求程序编写技巧,没有一个行之有效的、大家共同遵循的开发准则。错误地认为开发软件只是编写程序,对编写程序之外的其它软件开发环节没有给予重视。传统软件开发方法将数据和施加在数,据上的操作分离成两个独立的部分,导致问题空间和解空间的结构不一致,从系统分析到系统设计和实现的过渡不自然,软件重复使用的粒度小不利于大型软件的开发,模块的信息隐藏和独立性不好,软件可维护性较差。
⑵为了解决问题而进行思维观念创新。
编写程序时不能个人随心所欲地过分追求程序编写技巧,必须将可读性、清晰性和可理解性放在首位,必须考虑程序的可维护性,要使用三种基本结构(顺序、选择、循环)来实现程序。将数据和施加在数据上的操作封装在一起,形成类和对象的概念,用对象分解取代传统方法的功能分解,所有对象被划分成各种对象类。
⑶按照新的思维观念来构建结构化软件开发方法的核心部分。
核心部分是结构化程序设计方法,通过Pascal语言和C语言为代表的结构化程序设计语言的推出和完善。同时也可通过,Smalltalk语言的推出和完善,通过C++和Java等许多面向对象语言的推出和完善,面向对象程序设计方法逐渐形成并完善。
⑷按照新的思维观念来完善结构化软件开发方法。
完善的内容主要是将新的思维观念应用于系统分析和系统设计过程,在结构化程序设计方法基础上,逐渐形成结构化分析和结构化设计方法(SA/SD方法),使结构化软件开发方法得以完善。
软件开发方法是软件工程理论的重要内容之一,在软件开发方法中,对于开发软件时“做什么”和“如何做”,给出了明确的、详细的回答。人们在不同时期为了解决各种不同的软件开发问题,推出了多种不同的软件开发方法,并且每种软件开发方法还有灵活多样的表现形式。
参考文献:
[1]高禹,冯相忠.软件开发方法演变的几个主要因素[J].自然辨证法通讯, 2007, 29(5): 88-93.
[2]庞岩梅,晏海华.基于工作流技术的软件过程定义和追踪机制.计算机工程与应用,2003. 26.q
目前我国计算机软件工程管理工作还没能引起充分重视,仍存在着一些问题。究其原因,主要是由于人们传统的思想观念,再加上软件工程尚属于新兴学科,很多问题还处于探索与研究阶段。另外,由于软件产品具有一定特殊性,其管理工作也涉及诸多方面,如何强化计算机软件工程的管理工作,更好地发挥应用效果,是当前值得思考的话题。
1、软件工程概述
软件工程是应用计算机科学、数学、逻辑学及管理科学等原理,开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本和改进算法。其中,计算机科学、数学用于构建模型与算法,工程科学用于制定规范、设计范型、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。
软件工程的目标是在给定成本、进度的前提下,开发出具有适用性、有效性、可修改性、可靠性、可理解性、可维护性、可重用性、可移植性、可追踪性、可互操作性和满足用户需求的软件产品。追求这些目标有助于提高软件产品的质量和开发效率,减少维护的困难。
2、软件工程管理的方法与对策
2.1构建完善的计算机软件工程管理体系
首先,构建计算机软件工程管理的人才体系,意识到人才在工程进展中的积极作用,加强人力资源管理,调动工作人员的主观能动性,确保工程各项目标的顺利落实;其次,加强对计算机软件工程相关知识的学习与渗透,对项目管理人员、工作人员等进行专业化的培训,了解最新软件工程知识,做到理论与实践相结合,运用到具体的工程项目中,增强计算机软件的开发水平与利用价值,提高工程项目管理效率;再次,为了更好地调动工作人员的主动性和积极性,应加强制度规范建设,全面落实奖惩制度,以更好地实现计算机软件工程效益目标。
2.2加强计算机软件工程的风险管理与进度管理
首先,构建完善的风险管理制度体系。作为计算机工程项目的管理工作人员,应树立风险意识,学习风险管理知识,能够客观识别 风险并进行量化分析,有针对性地采取风险防控方法,提交计算机软件工程管理的风险报告。其次,定期做好计算机软件工程项目的风险预控与识别。对于一个完整的计算机软件工程项目来说,应该将风险管理贯穿于整个工作过程中,应对随时可能发生的风险,将风险产生的损失降到最低。一般可采取规避、减缓、转移等手段处理风险。最后,还应加强对计算机软件工程的进度管理,提高工程效率水平,合理控制开发成本。结合计算机软件工程项目的实际情况,制订科学、完整、有效的进度管理工作表,对工程项目的进展状况进行实时监督,确保各项工作有条不紊地进行。
2.3强化计算机软件工程项目合作团队的管理
一个良好的团队是实现计算机软件工程管理的根本保障,强化团队管理工作,对实现工程目标起到积极作用。其一,加强工作人员的沟通与联系,在整个工作团队范围内渗透沟通意识,在团队内实现合作;其二,明确各岗位人员的分工,结合计算机软件工程的实际情况,进行合理、明确的任务分配,将具体的责任落实到个人,确保各项工作的有序开展;其三,充分调动团队内部的主动性与积极性,确保每个人都能够全身心地参与到计算机软件工程建设中,激发团队动力,共同做好计算机软件工程管理工作。
3、软件工程的开发方法
软件工程的开发方法有Parnas方法、SASA方法、面向数据结构的软件开发方法、问题分析法、面向对象的软件开发方法、可视化开发方法、ICASE、软件重用和组件连接等,其中面向对象开发方法是现代常用的开发方法。面向对象是当前计算机界关心的重点,它是90年代软件开发方法的主流。面向对象的概念和应用已超越了程序设计和软件开发,扩展到很宽的范围。如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。面向对象的优点有:和现实世界更接近,更符合我们人类的思维逻辑;开发出的系统容易维护和修改;适用于开发复杂、庞大的系统;开发出的程序更稳定合理;由于继承、类的机制,更容易实现重用,减少冗余;由于实现数据和逻辑的分离,维护和扩展变得更加容易。
面向对象的开发包含Booch、Coad、OMT等方法。Booch最先描述了面向对象的软件开发方法的基础问题,指出面向对象开发是一种根本不同于传统的功能分解的设计方法。面向对象的软件分解更接近人对客观事务的理解,而功能分解只通过问题空间的转换来获得。Coad方法是1989年coad和YourdOn提出的面向对象开发方法。该方法的主要优点是通过多年来大系统开发的经验与面向对象概念的有机结合,在对象、结构、属性和操作的认定方面,提出了一套系统的原则。该方法完成了从需求角度进一步进行类和类层次结构的认定。尽管CoadYY法没有引入类和类层次结构的术语,但事实上已经在分类结构、属性、操作、消息关联等概念中体现了类和类层次结构的特征。OMT方法是一种新兴的面向对象的开发方法,开发工作的基础是对真实世界的对象建模,然后围绕这些对象使用分析模型来进行独立于语言的设计,面向对象的建模和设计促进了对需求的理解,有利于开发得更清晰、更容易维护的软件系统。该方法为大多数应用领域的软件开发提供了一种实际的、高效的保证,努力寻求一种问题求解的实际方法。
4、软件工程的应用
随着计算机与网络技术不断发展并广泛应用,计算机软件工程体现出良好的精准性、便捷性,在社会发展的各个领域广泛运用。典型的计算机软件包括办公软件、操作系统、数据库、人机界面等,在我国工业、农业、金融业、政府部门等各个领域发挥重要作用。在计算机软件工程中,融人了开发人员的智慧,计算机软件的不断更新、不断升级,推动了计算机软件的系统化、细致化、普及化发展。
当前,计算机软件已经在人们的工作、学习、生活中普遍应用。例如,在企业中使用办公软件,提高各项管理工作效率与质量水平,在企业内部实现信息资源共享,确保各项信息的上传下达;在校园建设中,计算机软件也发挥了重要作用,包括在教学过程中使用的计算机软件,便于师生之间的交流;同时,学生学籍管理、学费管理、收费管理等都需要通过计算机软件而实现,确保校园内各项工作的有序性。总之,当前计算机软件已经无处不在,改变了人们的工作、生活方式,给人们带来诸多便捷。加强对计算机软件工作的管理,研发更多实用性强、操作性强的软件,非常重要。
信息安全环境是一种相对的安全环境,并不是完全杜绝信息安全事件。当今社会网络信息技术的发展,使信息安全已经涉及世界经济、政治、文化、军事、外交等方面。建设安全的信息环境,只能尽量避免信息安全事件的发生,减少信息的泄露和风险的发生,把信息安全的威胁降到最低。信息安全环境的构建是一个复杂的系统工程,需要从观念上进行转变,不断地进行规划、设计、管理,使之成为可持续的发展过程。要想构建安全的信息环境必须加强安全管理并且制定科学的安全管理机制。安全管理包括风险管理、安全教育和安全策略三方面,降低安全风险必须从这三方面加强安全管理。在安全管理中必须重视人的因素,人是信息安全的关键因素,也是最薄弱的环节,要时刻加强对人的管理。建立安全管理机制必须加强对人的管理,遵循多人负责制、任期有限制、职责分离制等原则,加强对信息的管理,保障信息环境的安全。
二、计算机软件开发应用技术
(一)计算机软件开发应用技术的重要性
计算机软件的开发和应用是软件工程的一项关键技术,对计算机的发展起着十分重要的作用。没有计算机软件的开发利用,就很难有计算机网络技术的发展创新,不利于网络支持和远程控制技术的发展。计算机软件的开发利用使计算机网络形成共存性开发性的网络模式,促进了计算机网络的发展。计算机软件的开发利用还能够提高软件的性能,使计算机运行更加安全高效。计算机软件安全性、可靠性、便捷性的提高也离不开计算机软件的开发利用。
(二)计算机软件开发方法
目前常用的计算机软件开发利用方法主要有原型化方法、软件生命周期法、自动形式的系统软件开发方法三种方法。在进行软件开发利用之前要对软件的开发进行严格的定义和说明,软件开发人员和用户对软件系统的整体功能以及信息需求进行全面、深刻、准确的认定。如果用户给出的软件目标不能对输入处理和输出处理需求进行详细的描述,或者软件的开发者不能确定系统适用性、算法效果或未来使用的人机界面形态,这时就可以用原型化方法进行软件的开发设计。软件生命周期法是从时间的角度对软件进行开发设计,把软件的开发维护分成若干的阶段,并且严格控制每一阶段的开始和结束的标准。自动形式的系统开发方法能够根据系统的要求自动进行设计和编码,它要求软件开发者说明软件实现的内容和目标,不需要说明如何实现。通过这三种常用的软件开发技术,对软件进行开发利用,促进计算机信息网络的发展。
三、信息安全环境下计算机信息加密技术研究
随着计算机网络的发展,计算机信息安全性面临极大的威胁,计算机安全问题变得越来越突出。现代计算机中众多的危险、隐患和可能遭受的攻击都具有一定的隐蔽性和潜在性,他们以隐蔽的形式存在于计算机技术中,影响着计算机技术的开发应用。信息加密技术是信息安全防卫的有效技术,它能够对非法用户的窃听和入侵进行一定的防护,也能有效地防止恶意软件的入侵,使计算机信息更加具有保密性、完整性和真实性。即使在信息安全环境下也应该加强对信息加密技术的研究与探索,促使信息环境更加安全,更加有利于计算机软件的开发利用。
(一)信息加密技术
信息加密技术是指在计算机信息储存和传输工程中,利用一定的信息加密计算方法,把信息明文变成不可读取的密文,要想读取信息必须知道信息解密的方法,这样就能有效防止非法入侵者读取机密信息。把计算机明文信息转化成不可读取的密文的过程就是信息的加密,信息读取者把密文转化成信息明文的过程是信息解密,信息的解密需要相应的密钥,没有解密密钥要想读取加密的信息是很困难的,所以信息加密技术是保障信息安全十分有效的方法。
(二)信息加密的分类
信息加密技术因为加密目的的不同分为存储加密技术和传输加密技术。存储加密技术是为了防止信息存储中信息的泄露而进行的加密,主要有密文存储和存取控制两种表现形式。密文存储主要通过对加密算法的转换、附加密码以及加密模块的设定等形式来实现的。存取控制主要是通过辨别用户来判断是否具有合法性,主要倾向于对资格、权限等的审查和限用。传输加密是对信息传输过程的加密,防止信息传输过程中的泄露和非法用户的入侵。这种加密主要包括线路加密和端到端的加密两种形式,前者是在各个不同的线路上设置不同的加密密钥,这种加密手段能够有效防止信息传输线路上信息的泄露,但是容易忽视信源和信宿的安全。端到端的加密手段,在信息的发送端进行自动的加密,被加密的信息传输到制定接收端时会自动地重组、解密,使加密的信息重新成为可读的信息。
(三)信息加密技术的应用分析
1.密钥的应用管理
密钥是信息加密的重要表现手段,也是保密和窃密的主要对象。密钥是私密的非公开性的,但是由于计算机信息交换中使用的密钥数量较多,有许多相同的密钥,这样一旦个人的密钥被第三方得知,那么其与其他用户的信息交流就很有可能被第三方窃取,威胁到个人的信息安全。同一密钥使用的次数越多,用这种密钥保密的信息泄露的可能性就越大,要想提高信息的保密性,防止信息的非法窃取,需要在密钥的使用过程中不断更换密钥,减少密钥的暴露。为了确保密钥使用的安全性可以在互联网上建立一个可以提供安全可靠的的密钥的分配中心,每个用户只知道一个可以和分配中心对话的密钥。这样既能满足用户信息保密的需要,也能使密钥重复率降低,保障密钥的安全可靠。
2.量子加密技术
量子加密技术是判断计算机信息是否受到攻击的一项技术手段,利用这一技术可以实现传统的密码体制的全光网络,而且能够把密钥交换和信息的加密提高到光纤一级。一旦有非法的入侵者想要检测并且接受用户所发的信息,就会对用户的量子状态造成影响,用户就可以根据量子状态的变化判断信息是否遭受攻击,及时采取措施,避免更多的损失。
四、结束语
计算机软件是指能够满足行业发展需求的应用型或操作型软件,可以解决行业中的日常问题。根据计算机软件的应用发展设计开发技术,优化计算机软件的运行环境,提供可靠的运行方式。
1 计算机软件开发的方法
计算机软件开发技术应用的核心是开发方法,通过开发方法保障计算机软件的准确应用,排除潜在的问题。结合计算机软件的开发过程,分析比较常见的开发方法,如下:
1.1 原型化法
原型化法可以全面了解信息行业对计算机软件的要求,促使开发人员意识到开发技术的目的,了解开发技术在信息行业中应该有的功能。原型化法主要应用在计算机软件开发技术的初期,开发人员通过大量的数据计算,经由修改后完善计算机软件的基础,达到计算机软件开发技术的标准。
1.2 自动开发技术
自动开发技术在计算机软件开发的过程中,提供真实的服务内容,其可根据信息行业的需求,设计符合需求的软件开发代码,而且是在自动化状态下完成的,具有准确、科学的特点,不会出现错误或缺陷代码,有利于稳定计算机软件开发技术的应用基础。
1.3 周期法
计算机软件开发方法中的周期法,以软件的时间周期为依据,利用评估、维护的方法实行阶段性的开发,确保计算机软件开发的每个周期都能达到规范标准,由此才能在计算机软件开发的整个周期中体现出完善性。
2 计算机软件开发技术的应用分析
计算机软件开发技术的应用主要是为信息行业提供高质量的服务,落实软件技术。结合信息行业的实际需求,着重分析计算机软件开发技术的实际应用,如下:
2.1 计算机软件开发技术的应用背景
计算机软件在信息行业中的应用,暴露出诸多制约性的问题,无法保障计算机软件的应用效益。因此,计算机软件开发者意识到了开发技术应用中的缺陷,找出影响计算机软件开发技术应用的问题,才能为开发技术提供必要的应用条件。
以某项计算机软件开发技术为研究案例,分析开发技术的应用背景。该计算机软件开发技术中选择了两种开发技术,第一是VB6.0+Access,第二是Web+Xml+ActiveX,两种开发技术均投入安装测试,安装测试的过程中需要借助客户机,实际都存在一些明显的缺陷,第一种方法的缺陷是运行空间不足,在长时间运行后容易产生冗余数据,不利于计算机软件开发技术的运行速率,第二种方法的缺陷是必须有ActiveX安装组件的支持,才能实现开发技术的运行。
2.2 计算机软件开发技术的应用
计算机软件开发技术不仅要解决开发中的问题,更要满足其在信息行业中的应用。计算机软件开发技术的应用主体是形成技术性的工具,符合信息行业的运行需求,提供信息化的服务。
软件开发技术的应用,需要结合信息行业的实际情况,由此才能保障开发过程的稳定与安全,排除计算机软件开发中的各项问题,提升开发技术的应用价值。
计算机软件开发者应该充分认识开发方法和技术,确保其在开发中的应用地位,一方面保护计算机软件开发技术的应用环境,另一方面强化开发技术应用的实践能力。
3 数据库管理
3.1 数据库管理的内容
(1)不同的数据和程序都具备一定的独立性,以数据模型的形式描述数据之间的关系和数据本身的特点。
(2)以部门或企业为单位,开展以数据为中心的相关的数据组织工作,以形成统一的综合性较强的数据库系统,从而对数据进行有效控制与管理。
(3)具有良好的用户口接口,以使用户能对相关数据进行更好的使用与开发。
(4)结合相关的要求对不同的应用程序进行管理,并从数据库中获取相关的数据信息,从而使数据的重复储存得到一定减少,此外,还能使新的数据结构得以形成,进而使数据具有一定的统一性。
3.2 数据库管理存在的问题
3.2.1 操作系统自身出现问题
导致数据库系统在管理运行过程中出现安全问题的根本原因是计算机的操作系统自身存在着一些安全故障和隐患。其中最常见的安全风险即计算机病毒。
在计算机的正常运行过程中,残留的木马病毒会对入驻程序的密码进行修改,而入侵者就能通过木马病毒随时获取系统的最新密码。
此外计算机在运行过程中,数据库操作系统会存在一定漏洞,而这些漏洞是无法避免的,它是对数据库系统的某些特征参数进行设置时产生,正是因为有了这些漏洞存在,才给那些电脑黑客们留有机会。另外计算机中的操作系统同数据库系统之间有着密切的联系,因此,要想保证数据库系统的运行安全,应确保计算机中操作系统的运行安全。
3.2.2 管理不合理、不完善
数据库系统是信息系统的衍生物,也是各种信息资料以及数据文件的存储器,而这些信息资料以及数据文件的制造及使用者都是由人来管理的,因此在使用过程中,用户如果缺乏一定的安全保护以及防护意识,没有对网络信息的安全性产生一定的重视,又或者是没有采取有效的安全保护措施,就很容易在操作以及使用过程中发生安全事故。
因此,用户在操作和使用数据库系统时,对其存储的内容利用加密技术进行相应加密,是保证数据库系统正常管理运行及存储内容不被外泄的有效途径。
另外,要随时做好数据备份及保存工作。
4 结束语
计算机软件开发技术是信息时展的有效手段,在行业中发挥重要的价值,有利于行业的信息化发展。
计算机软件开发技术在各类方法的支持下,完善开发技术的应用,同时软件开发技术遵循创新的发展原则,提高计算机软件开发技术的应用水平,拓宽其在行业应用中的范围,推进了计算机软件开发技术的持续性发展,体现了开发技术的应用优势。
随着社会发展与现代信息技术的发展,计算机已近被广泛应用与各行各业,且发挥着重要的作用。在二十一世纪,我国的计算机事业也取得了空间的突破与进展,而计算机软件作为一门新兴学科,在短短几十年的发展历程中也取得了辉煌的成就。计算机作为人们日常生活中的重要工具,其软件开发技术对于人们工作效率的提升以及日常生活的便捷都具有重要意义。在本文中,笔者将从实际的工作经验出发,综合分析当前计算机软件开发技术的应用,并展望其未来的发展趋势。
【关键词】计算机 酸碱开发 应用 展望
计算机是现代科技发展的杰出产物,由硬件与软件两大部分组成,硬件设备是软件得以运行的前提与基础,软件能够通过逻辑运算实现真正意义上的计算机工作,计算机软件的开发技术对于计算机科学的发展而言具有非常重要的意义。对于计算机软件开发人员,究竟如何才能通过创新推进技术的应用,并顺应计算机软件的发展趋势,是当前我们应该重点思考的问题。
1 计算机软件开发技术的基本概况
1.1 计算机软件开发技术的发展进程
计算机软件开发始于上个世纪五六十年代,当时的软件开发仍停留在手动设计阶段,由于人工操作的系统尚未统一与完善,导致开发出来的软件应用率较低,出错率却很高,随后,计算机软件开发经历了萌芽、发展、完善以及新阶段,计算机技术的发展以及研发人员的投入,使得计算机软件的研发进程不断推进,难度系数也逐步减低,应用性的提升进一步推广了计算机软件,使其被广泛应用与人们生活、工作的多个领域。从设计阶段到软件设计再到软件工程阶段,研发人员的创新思维以及现实需求是促进其发展进步的重要动力。
1.2 计算机软件开发方法技术分析
在发展进程中,计算机软件的开发方式也经历了从原型化开发方式到系统研发再到生命周期研发法的转变。首先是原型化开发方法,主要是基于三种具体的软件开发形态,分别是工作原型、纸上原型以及现有原型。纸上原型是最简单的也是最直观的,利用墨水和纸张就能够模拟出软件开发具有的特征;而现有原型则需要借助于已经完成开发的软件,通过继续完善或升级换代完成软件开发。其次是生命周期法,将一个计算机软件的开发科学划分为多个阶段,各个阶段之间互相约束,前者是后者的前提,后者是前者的延续。最后是当前应用最广泛的系统研发方法,所指是计算机自动编码、完成设计的过程。
2 计算机软件开发技术的应用
2.1 计算机软件开发技术的应用分析
我们知道,之所以进行计算机软件开发,主要目的在于通过更加高效便捷的软件设计方便用户的使用,所以从这个层面上来看,软件的应用性是衡量其质量的重要参考标准。基于这一因素,计算机软件开发首先要考虑的就是增加使用的便捷性,其次要兼具可扩展性、安全性、可维护性以及稳定性等特性。根据笔者的工作经验来看,有些软件在设计时就是没有考虑到这一因素,导致好的设计却缺乏广泛的使用市场。其次,伴随着计算机软件更新换代速度的加快,软件在开发设计时还应该考虑到版本兼容的问题,同时还要拥有数据自动恢复的功能,只有这样,才能够占据更高的市场份额,也才能够进一步推广使用。
2.2 计算机软件开发应用的具体表现形式
全球化经济的发展推动了互联网技术与产品的应用,计算机软件作为科技时代的产物能够缩短人们之间的距离,实现资源共享,也为实时互动交流提供了可能。正是基于这些功能,计算机软件才能在保持多个用户独立性的前提下实现统一连接,通过更加宽广的数据分析处理平台的提供,使人们的使用与操作更加高效便捷,推动了数据时代的到来。除此之外,计算机软件开发技术通常还与信息处理设备、移动通信设备联合使用,真正做到便捷用户操作的应用性。
3 计算机软件开发技术的未来发展趋势
3.1 计算机软件开发的网络化与智能化趋势
随着信息化时代的到来与个人计算机的普及,网络化也成为不可逆转的计算机软件的发展潮流与趋势。互联网的发展使得世界各国之间的距离不断拉近,不同国家之间人们的信息交流与共享也推动了网络化的进一步发展。只有基于网络化发展方向,计算机软件才能为世界各国的人们提供更加便捷的、优质的信息服务。而人工智能技术已经被应用于了社会生活的各个方面,也取得了新的进展与更广泛的应用。随着人们对计算机软件需求的不断提升,计算机软件的智能化方向也是不可逆转的必然趋势。从宏观角度来看计算机软件开发技术的智能化进程的推进,对于整个现代化计算机时代的发展具有重要的意义。
3.2 计算机软件开发的开放化和融合化趋势
计算机软件的开放化趋势也是不可避免的,所指是用于软件开发的软件源代码以及软件产品的设计标准等进一步公开化,并通过共享促进软件开发人员之间的交流与创新。软件开发是一项需要创新思维的工作,行业人员之间通过互相交流与学习达到共同进步,也有助于产业的发展与提升,并逐步走向成熟。计算机软件开发的融合是指软件开发科学与其他相关科学如电气化、自动化以及机械化等相融合,并融入网络化、数字化以及智能化等计算机核心理念与技术,实现计算机软件开发产业整体水平与市场竞争力的提升,从而能够占据更高的市场份额,也造福于广大计算机软件用户。而随着计算机软件更加贴近人们的日常生活,计算机软件的开发也更加以客户的需求为主,所展现与提供的优质服务也是智能化与融合化的必然结果。
4 结语
计算机的出现给人们的工作和生活带来了翻天覆地的变化,计算机软件更是推动了智能化时代的到来,对人类生活的各个方面都产生了深远的影响。计算机软件的应用是一个动态的实时更新的过程,其发展完善需要在实践中不断总结,从而实现完善、演化与升级。计算机软件开发技术是一项庞杂的工程,在软件开发的过程中要有针对性地采取适宜的技术方式,从而真正提高开发效率,增强软件的应用性,也推动计算机学科的发展。
参考文献
[1]沈继文.关于计算机软件开发技术的相关探究[J].电脑迷,2014(01).
[2]刘婷.计算机软件开发技术及应用探究[J].科学研究,2014(01).
[3]陈宇.计算机软件开发技术及应用[J].读与算:教育教学研究,2014(10).
作者简介
杨向辉(1991-),男,陕西省渭南市人。现为西安文理学院数学与工程学院2011级在读学生。
(一)结构化方法
结构化程序设计方法中的思维创新被认为是程序开发方法发展中的重要飞跃,并且其成功也在很大程度上推动了结构化设计方法以及结构化分析方法的发展,在20世纪七八十年代,结构化方法在软件开发方法中占据了主导的地位并有效的对软件危机蔓延起到了遏制的效果,既是在今天,结构化方法的这种作用仍旧在发挥着。从当前来看,结构化方法具有成熟的技术并且使用简单,所以其应用也十分的广泛,但是在一些复杂的或者大规模的软件工程项目中,结构化方法却不能很好的对软件重复使用问题进行解决而难以对软件工程需求的变化进行适应,并且结构化软件开发方法在软件维护方面具有着较强的复杂性。
(二)面向对象方法
面向对象方法的基本原则以及出发点是对人类思维方式的模拟,从而让软件开发的整个过程最大化的接近于人类对世界认识的过程,从方法论方面看,面向对象的软件开发方法将系统看做是一个由很多对象互相作用、互相联系而形成的整体。面向对象的软件开发方法包括分析方法、设计方法以及程序设计,其中面向对象程序设计方法是面向对象方法的重要核心内容。在软件工程中,软件由文档和程序两部分组成,程序是由算法和数据机构共同构成,在传统程序开发的过程中,操作以及数据被分离为独立的内容,但是事实上,客观世界中的实体都具有静态和动态两种属相,对于软件工程而言,数据则是静态的属性,而操作则是动态的属性,二者具有密切的关系,而传统程序开发中将二者的分离在一定程度上是软件开发所面临的难度进一步的增加。而面向对象方法则强调了不同元素的共同组成,数据以及操作被看为是一个整体,而这种理念优势在于对软件的重复使用,同时也是代码更容易理解,但是在面向对象的方法中,软件开发过程中的划分相对模糊,所以在软件分析、软件设计以及软件设计的过程中会产生多次迭代。
(三)形式化方法
随着科技的发展以及人类对软件工程需求的不断提高,计算机软件开始执行会引发严重后果甚至威胁人类生命的重要任务,如对核反应堆进行监控、飞船的发射以及对一些交通设施进行安全监控等,而这些需求下的软件一般都具有较强的复杂性,在此背景下,在软件本身复杂性不断增加的基础上保证软件在执行任务时的精确、安全和可靠是十分重要的内容,而形式化方法就是为了满足这样的需求而产生。形式化软件开发方法所依据的是计算与数学模型来对软件系统的特性以及行为作出验证和描述,其中这些特性与行为包括设计、需求规格以及实现等,由此可见,严格的数学是形式化软件开发方法的重要基础特征。但是形式化软件开发方法也有其自身的缺陷,如在过程中所使用的数学模型或者数学工具并不能保证完全的安全与正确,并且是对同样的数学规范,在不同的软件工程背景下也会产生不同的后果,这种情况是由于不同领域在解释和相容规范过程中的不同而产生的。
二、软件工程中软件开发方法的趋势
在软件工程发展的过程中,繁琐复杂的开发过程、文档维护难度的加大以及软件开发过程中的反馈问题等逐渐的暴露出来,并且人们对软件提出了智能化的需求,而面对这些问题和需求的出现与改变,软件方法的研究与更新也引起了很大的重视与关注,许多新的方法出现并体现出了很大的发展潜力。
(一)敏捷软件开发方法
敏捷软件开发方法包括ASD、FDD、DSDM、XP等,敏捷软件开发作为一种以人为核心、循序渐进、迭代的开发方法,它把软件项目的整体构建划分为许多个子项目,而这些子项目本身在测试后也验证具有可运行以及集成的特征。敏捷软件开发方法强调了人的作用以及对变化情况的使用,同时强调反馈有效性和简单化,同时重视生产效率的提高,在软件开发过程中,小项目可以分别完成并可以独立运行,软件可以始终处于能够进行使用的状态。它的12条实践原则能够在一定程度上体现出它自身的特性:一是获得客户的满意最为优先,需要持续的、尽早的交付有使用价值的软件;二是在软件开发过程中的后期也可以改变对软件的需求;三是交付可使用的软件要具有经常性,交付的时间需要控制在最短的时间范围之内;四是开发人员以及业务人员在项目开发中需要始终共同工作;五是需要为被激励的个人提供必要的支持与环境,并信任他们能够完成软件开发工作;六是在团队工作中,面对面交谈是左右效率的信息传递方法;七是首要的进度标准是可以工作的软件;八是可持续的提高开发速度;九是强调优秀设计与技能在提高敏捷能力方面的作用;十是简单;十一是最好的需求、构架与设计来源于自组织的工作团队;十二是在一定时间内,工作人员要针对如何提高工作有效性进行反省并对工作行为作出调整。当前敏捷软件开发方法尚处于发展阶段,所以并不如面向对象方法成熟。