时间:2023-05-24 17:22:47
序论:写作是一种深度的自我表达。它要求我们深入探索自己的思想和情感,挖掘那些隐藏在内心深处的真相,好投稿为您带来了七篇软件设计与开发范文,愿它们成为您写作过程中的灵感催化剂,助力您的创作。
关键词:医疗辅助软件 WPF Blend
中图分类号:TP316 文献标识码:A 文章编号:1007-9416(2012)02-0132-02
无锡尚沃生物科技有限公司开发了应用于呼吸系统检测仪器“纳库仑一氧化氮分析仪”,产品在投入市场后,发现儿童在使用仪器时与成人有很大的不同,存在不配合性、数据采集时间不同等情况。企业急需一套能够被医疗兼容,又能够让不同年龄段的儿童适用的软件。根据企业提出的相关业务需求,并且为配合医疗仪器的使用,开发制作的侧重点在于开发出一些适合于儿童,并带有简单游戏性质的故事情节的游戏软件。为此,我们选择了Visual Studio 2010下的WPF(Windows Presentation Foundation)技术。本文对WPF以及WPF在项目中的实际运用进行了介绍。
1、WPF体系架构及特点
WPF的全称是Windows Presentation Foundation,是未来十年里Windows平台GUI开发的最主要的技术之一。它是微软开发的一款基于.NET(目前最新版本为.NET Framework 4.0)平台的最新的软件界面显示系统。为用户界面、文档和多媒体等等,提供了统一的描述和操作方法。而相对于以往的通用编程方式GDI(Graphics Device Interface),这个已经应用于十多年的技术在.NET框架中已经被微软进行了多次的扩充,但是对它的种种扩充已经不能很好的满足当前软件开发中对越来越复杂、越来越趋向于完美的软件界面的需求,为了在完成相同界面时能够达到更好的效果,同时也为了能够满足下一代操作系统的兼容。为此,了这一新的程序界面开发技术。
1.1 WPF体系架构
WPF主要是由Presentation Framework、Presentation Core和mil core三层组件构成,它们是WPF的子系统。其中Presentation Framework、Presentation Core这两者是托管组件,而mil core却是非托管组件。而托管组件Presentation Core提供了像事件处理、布局等一系列的功能。在组件Presentation Core提供的基本功能上,组件Presentation Framework实现了WPF的各种外观,例如图像效果的实现、按钮控件的实现等.而非托管的mil core是以非托管代码来编写的,其目的是实现与DirectX的交互,从而来提高效率。体系架构中的User32、DirectX和Kernel是Windows子系统。如WPF应用程序运行过程图1所示。
1.2 XAML语言
XAML是eXtensible Application Markup Language缩写,名为可扩展应用程序标记语言。从名称可以看出它是一种标记语言,也就意味着它具有其他标记语言所具有的诸多特点。 XAML是微软创建的一款新的描述性语言用来构建应用程序用户界面,即用来编写WPF(Windows Presentation Foundation) 的应用程序。XAML引入了XML中的名字空间、属性等多个元素,即XAML是基于XML的。并且它和XML的使用方式很接近,所以对XAML来说它本身就是一个很好的XML文档。
在以往的程序编写中,我们常常为使内部数据与界面很好的联系在一起而大伤脑筋,而WPF提供了数据绑定这一有效的方法,从而很好的解决了这一难题。在XAML中使用数据绑定,而使用数据绑定的关键就是去创建System.Windows.Data.Binding这样一个实例对象。当然,该对象也可以在C#中被创建。数据绑定其实是使界面显示的数据值与内部数据值保持相同,而数据绑定这一功能的使用,使得我们项目组的开发人员在很大程度上提高项目开发工作的效率。
1.3 Microsoft Expression Blend
Microsoft Expression Blend是一个全新的、全功能的专业设计工具,用于创造基于Microsoft Windows平台的易于使用且丰富的应用界面。使用它的首要和最终目的是作为一种可应用于WPF的设计界面工具。Microsoft Visual Studio 可以与Microsoft Expression Blend 完美的相结合在一起使用.Expression Blend 自动生成 WPF应用程序,也就是说,所显示的界面设计都可以由XAML代码来表示。当然,也可以将可扩展应用程序标记语言(XAML)导入到Expression Blend设计界面中。
2、WPF应用程序在实际开发项目中的运用
基于WPF的特点以及相关技术,本文创建了医疗辅助系统软件项目。下面介绍利用Microsoft Expression Blend创建医疗辅助系统应用程序的基本过程。
(1)打开Microsoft Expression Blend,并新建名为Balloon的项目。
(2)我们进入了Microsoft Expression Blend的工作区,打开工具箱,添加背景(backimage)图片、气球(balloonimage)图片、滑动轴(silder)控件、提示使用者检测失败的文本(txbfailed)控件和成功的文本(txtSucessed)控件、移动路径([path])、设置下拉菜单(MenuItem)、设置下拉菜单下的起始无效时间(Startinvalid)控件和成功时间(Succeedtimer)控件、开始按钮(btnStart)控件等。初始状态下令文本txbfailed控件可见,设计应用程序界面。
(3)Microsoft Expression Blend将自动生成 Windows Presentation Foundation (WPF)应用程序,是由 XAML代码来表示的。在成功的添加诸多控件的基础上,并在代码窗口里实现事件响应代码的编写。
(4)应用程序运行效果。开始检测时,进入游戏系统界面,点击设置下拉菜单(MenuItem),设定下拉菜单下的起始无效时间(Startinvalid)和成功时间(Succeedtimer)的有效值,例如,起始无效时间为2秒,成功时间为5秒。点击开始按钮(btnStart),根据吹气时的气量大小,滑动轴(silder)左右移动。当气量小时,滑动轴(silder)向左移动,同时气球降落;当气量大时,滑动轴(silder)向右移动,气球上升。成功时间达到已设定的有效值时,提示使用者检测成功的文本(txtSucessed);相反,当成功时间未达到已设定的有效值时,提示使用者检测失败的文本(txbfailed),当儿童完成游戏的同时,完成了检测。利用Microsoft Expression Blend技术可以使得WPF应用程序更加方便、更加出色的完成。
3、结语
WPF给Windows应用程序的开发带来一次划时代的革命,它提供了一种全新的、全功能的开发模式。为企业的医疗仪器提供这一相配套的儿童检测软件,可以使得不同年龄段的儿童克服不安定心理,更好的配合医疗检测,从而提高治疗的效果,并增加了企业仪器的新服务人群,开拓了新的医疗市场。
参考文献
[1]张晗雨.WPF全视角分析[M].北京:机械工业出版社,2008.
[2]technet.省略/zh-cn/office/ms750441(v=VS.95)
作者简介
关键词:计算机;软件设计;嵌入式
计算机软件设计对嵌入式实时软件有一定的需求,拓宽了软件开发的范围,为计算机软件开发提供稳定的基础,体现嵌入式实时软件的实践性。计算机软件具有复杂的特性,其在设计的过程中遇到诸多困难,全面推行嵌入式实时软件的运用,目的是规范软件的规划,避免其在计算机运行中出现缺陷,维护软件使用的可靠性。
1计算机软件设计中的嵌入式实时软件
嵌入式实时软件,能够以程序设计的方法,融入到被设计的软件对象中,按照需求面向需要设计的软件,促使软件设计的调用过程中,逐渐朝向独立、安全的方向发展,全面提高软件设计的质量,发挥嵌入式实时软件在设计中的可靠性优势。
目前,嵌入式实时软件在计算机软件设计中,可以降低软件设计的失误率,消除潜在的缺陷,嵌入式实时软件的开发流程如图1所示,严格按照软件设计的需求进行,提高软件的设计质量,保障软件设计的产品,更加符合计算机系统的需求,尽量在性能和质量上,为计算机软件设计提供基础的保障和根本的需求,强调计算机软件设计的标准。
2计算机软件设计中嵌入式实时软件的开发流程
计算机运行中,设计可用的软件,需要规范嵌入式实时软件的开发流程,决定了软件使用的质量和性能。结合嵌入式实时软件的实际情况,分析开发流程中的内容如下:
2.1开发结构
嵌入式实时软件在计算机软件开发结构的设计中,主要分为3个阶段。首先分析软件的需求,掌握软件在计算机中的运行功能,根据需求加强软件的管理力度,落实开发结构中的管理工作;然后是代码编写、功能测试的环节,发挥实施控制的作用,软件功能的模块化处理过程中,需要开发子模块结构,在代码或测试的过程中,还要规范模块程序的开发过程,便于执行相关的开发任务;最后是任务地址的设计,保障计算机软件达到时效性的要求。
2.2硬件设计
按照嵌入式实时软件的需要,分析计算机软件中的硬件配置,一般情况下,使用AT91RM9200微处理器,构成如下图2所示。AT91RM9200的外部接口比较多,处理器与控制器需要保持协同的状态,方便规划计算机的软件设计,即使计算机软件设计中存有突发事件,也能迅速访问到事件的功能,确保软件具备充足的响应时间,还要保障软件响应的实时性。
2.3软件设计
计算机软件设计中的嵌入式实时软件,其在软件设计方面,需要面向模块设计,提高计算机软件设计的开发能力,重点控制实时软件的操作流程。软件设计中,比较重要的是组件接口,其可根据计算机软件的需求,接入更多的服务信息,或者构建高级别的组件系统。软件中的组件,独立性高,其可参与到计算机软件系统开发的过程中,保持计算机软件的实时性特征,加强软件设计的控制力度,达到计算机软件开发的实践要求。
2.4程序设计
基于嵌入式实时软件的计算机软件程序设计中,采用了C++语言,把嵌入式实时软件写入到软件设计的程序内,通过编程控制软件的运行。不同的计算机软件设计,对嵌入式实时软件程序设计的要求不同,编程也明显不同,按照计算机软件设计的实践,编写程序,遵循软件设计的基本原则。
3嵌入式实时软件在计算机软件设计中的运用
嵌入式实时软件在计算机软件设计中的运用,主要体现在5个方面,规范计算机软件的开发过程,发挥嵌入式实时软件的设计优势。
3.1划分任务
嵌入式实时软件的最高层,是指应用软件部分,与软件的功能存在直接的关系。嵌入式实时软件在划分任务方面,比较注重操作系统的应用,负责资源管理、任务分配等多项工作。计算机软件设计将嵌入式实时软件的任务划分环节,做为基础的部分,提供基础的服务平台,有目的的规划计算机软件的系统,保持软件开发的独立性。嵌入式实时软件在开发计算机软件的任务时,应该注重系统的协调性,分析计算机软件设计中的应用程序,分配需要进行转换的数据,确定转换数据的顺序,任务划分要注意两个方面的内容,如:(1)设计软件的内部功能,包括接口、控制项目等,在激活事件后整合其余的任务,采取事件驱动的方法,降低软件设计的难度;(2)I/O功能,I/O事件在计算机软件设计中,占据了很大一部分的cpu资源,需要利用中断方式驱动I/O事件,在实时性要求上达到计算机软件设计的要求。
3.2布局和组织
嵌入式实时软件的布局和组织,是指通过存储映像的方式,保障数据之间的连贯性,连接计算机软件设计中的各项任务,注重计算机软件设计的逻辑性控制。布局和组织在软件开发设计中,对嵌入式操作系统的要求比较高,促使系统内的数据可以存储到ROM、Flash内,维持系统的稳定性,必须根据布局和组织,优化计算机软件设计中的组织。因为计算机软件设计中,需要考虑到存储映像规划,所以嵌入式实时软件主动调取程序命令,选择原有的物理地址,设计执行代码,提高ROM的启动速度,把中断数据存储到零地址以后,提高计算机软件的处理速度。
3.3实时性控制与调度
嵌入式实时软件在计算机软件设计中的调度和实时性控制,体现在硬实时性与软实时性2个方面。硬实时性是指计算机软件在规定时间内需要执行并完成的指令,而软实时性是指既可以在规定时间内,也可以出现适当的时间延迟。硬实时性和软实时性的相互配合,提高了计算机软件的工作效率,计算机软件设计在调度方面,按照优先级的调度原则,当优先级调度的任务增多时,系统的微内核,能够按照任务的性质,增加优先级,把调度的任务划分到不同的队列中,降低系统任务的响应时间,保障计算机软件的操作效率和时效性。
3.4时钟服务
计算机软件设计中的时钟服务,是建立在任务与时钟间通信的基础上的,采用嵌入式实时软件,规范时钟服务的设计,在软件设计中提供独特的时钟,有效的控制计算机软件中的执行命令。嵌入式实时软件的时钟服务过程里,应该根据软件设计的要求,规范时钟服务的执行动作,促使计算机软件具有恰当的时钟服务,有效控制时钟服务的过程。嵌入式实时软件的时钟服务方面,能够在信号量、队列等方面,提供控制机制,保持软件与计算机操作系统的同步性,协调软件和系统的时钟服务。
3.5系统初始化
软件设计在系统初始化方面,利用嵌入式实时软件的方法,执行软件的初始化。嵌入式实时软件根据计算机软件的实际要求,编写抽象的初始化代码,以此来处理硬件和微内核的各项任务,指示系统准确的完成初始化的任务。计算机软件设计对嵌入式实时软件的应用,使用BIOS,通过固定的指令,辅助软件进行初始化,特别是处理器、RAM方面,加载实时软件时,设计程序指令,方便计算机软件设计中的任务调度。系统初始化是计算机软件开发中的一项工作,关系到软件的运用,所以,嵌入式实时软件在软件的初始化设计中,需要注重性能与质量的设计,落实并完成系统的初始化。
对嵌入式实时软件在计算机软件设计当中的应用,概况分析主要包括应用原理、应用特点以及应用前景。
1)应用原理嵌入式实时软件被应用在计算机软件设计当中,其基本原理主要是将实时处理技术与计算机科学技术进行全面融合,进而构建CORBA模型[1]。与此同时,在计算机软件设计的远程调用环节,能够通过嵌入式的实时软件实现更多的设计服务,进而对整个设计环节进行优化,增强计算机软件设计的系统独立性要求。
2)应用特点对嵌入式实时软件应用特点分析,将其具体运用到计算机软件的预测指令执行、动态分配、缓存机制等相关的设计环节当中,增强整个计算机软件的协调处理能力,保证处理科学性与处理实时性的基本目标得以实现。在嵌入式实时软件的本质结构上分,包括软件与硬件两个部分。软件的正常运行,主要是通过应用程序进行控制,结合计算机的操作实现程序的编写,进而做到软件与硬件之间的交互。嵌入式微处理器是整个实时软件的核心,能够支撑软件系统多任务执行与操作,具有较强的交互功能与存储区的保护功能。并且嵌入式实时软件处于一种模块化的结构形态,便于维护与处理,具备良好的拓展性。可见,嵌入式实时软件在计算机软件设计中的应用,能够表现出良好的设计特点。
3)应用前景由于嵌入式实时软件在计算机软件的开发过程中具有很强的便利性和高效性,并且这一软件能够在很多计算机软件的设计中得到应用,即这一软件的设计领域很广。因此具有极高的使用价值,这也意味着嵌入式实时软件具有极高的开发前景和应用前景。除此之外,嵌入式实时软件具备较强的灵活性特点,能够表现出环境层面的良好交互能力。该技术在计算机软件设计方面的应用,已经逐渐取得良好的发展效果,并且凭借着良好的自身拓展功能,逐渐在合理规划的基础之上,增强硬件规划与软件方面的灵活性因素,使得嵌入式实时软件的价值得以突显。综上所述,在计算机软件设计的过程中,嵌入式实时软件能够促进企业软件开发的效率,具备较强的社会效益与经济效益。
2嵌入式实时软件的设计要点与开发流程
嵌入式实时软件的设计与开发流程明确,是优化计算机软件设计的关键环节。设计要点,主要是针对计算机软件开发的各个环节进行处理,对嵌入式实时软件的应用各个关键点进行控制,旨在对各个环节实现优化。开发流程,则需要依据开发顺序,实现具体应用环节的有效控制。
2.1设计要点
嵌入式实时软件在计算机软件设计当中的应用,需要明确具体的设计要点,进而保证应用的规范性与准确性,增强计算机软件设计的能力。涉及的设计要点主要表现在以下几个方面:
1)计算机软件设计的过程中,需要基于一定需求的基础之上展开设计与分析,进而使得计算机软件的设计能够符合相关标准及要求。同时,嵌入式实时软件作为软件设计的重要工具,在计算机软件设计之前需要对嵌入式实时软件需求进行解析。
2)明确需求之后,对计算机软件设计系统进行设计,并将应用程序代码进行编写。
3)计算机软件的设计人员充分发挥出主观能动性,对计算机性能进行完善与优化。在这一过程中,嵌入式实时软件能够增强系统流畅性,使得软件的开发流程得到全面优化,增强软件设计的效率与可靠性。计算机软件设计是一项系统性的工程,嵌入式实时软件作为计算机软件设计的关键性工具,准确地把握设计要点,在充分保障计算机软件设计实现的同时,能够发挥出内在价值与优势。
2.2开发流程
开发流程是计算机软件设计的核心所在,良好的开发流程掌握对软件设计的正确性作用显著。结合实际软件设计状况,应该尽量的避免人为设计所出现的失误状况。例如,对计算机软件设计中的结构设计,软件设计人员应该注意将计算机硬件结构与软件设计进行分离,降低计算机软件设计对硬件方面的依赖性,在缓解这一现象之后,为计算机软件设计的实效性提供基础保障。在另一个角度分析,嵌入式软件在计算机软件设计当中的应用,有助于格式化的数据结构与初始化的软件数据得以实现。遵循开发流程实现的软件设计,在软件操作过程中,可直接对软件资源以及硬件设备进行操作,增强计算机软件设计的实效性。由此可知,计算机的开发流程决定着整个计算机软件的设计状况,良好的开发流程能够增强软件的设计功能。
3计算机软件设计中嵌入式实时软件具体应用
作为计算机软件设计当中的关键性工具,在具体应用的过程中,主要表现在划分任务、任务组织及存储布局、应用实时与任务调度、任务与时钟间通信以及系统初始化等多方面。嵌入式实时软件的作用及效果已经得到充分明确,对计算机软件设计的作用显著,下面对具体应用做出探究,旨在为嵌入式实时软件的应用广泛性奠定基础。
3.1划分任务方面的应用
应用软件作为嵌入式系统的最高层,在整个系统功能当中具有重要的作用。在计算机操作系统当中,任务管理、任务控制、任务之间的互相通信环节的实现都需要依据嵌入式的微处理器内核得以实现[2]。在这一基础之上,计算机软件设计应用程序的基础平台则是嵌入式的微内核。嵌入式实时软件为主导设计工具,需要将各个计算机系统划分为不同的处理环节,通过独立任务的形态,对系统运行进行全面协调,在系统优化的基础之上使得简化目标得以实现。划分任务方面的应用,对应用程序数据转换实现深入的分析,最终按照数据并行转换与执行的顺序,以此作为标准实现对任务的转换与归类。当然,嵌入式实时软件工具的应用,应该充分注重两个方面的基本内容:一方面,计算机软件系统的内部功能。对计算机软件的内部并行任务进行划分处理,具体分为周期任务、异步任务以及同步任务、应用控制任务、用户接口任务,通过多任务模式的划分,使得软件各个协同的功能能够健全与完善。将同一时间段完成系统功能与时间激活任务的事件进行激活,发挥出整合效用。在整合成一个独立的任务之后,进而发挥出任务驱动的基本目标,最终满足对计算机实现的资源共享。另一方面,充分运用应用程序轮询与中断的方式,验证计算机软件系统的I/O事件驱动。该方式的处理要求,主要是计算机软件在运行的过程中,CPU资源会被应用程序所占用。通过轮询与重点方式进行操作处理与验证,根本目标是满足系统实时性与实用性方面的要求。
3.2任务组织与存储布局应用
嵌入式实时软件完成对任务的划分之后,需要对任务进行组织管理。当然,在任务组织的过程中,受到数据转换关系以及任务相互之间的逻辑因素的影响。主要表现在操作系统对任务组织与管理功能方面的限制。对于嵌入式的实时软件而言,其任务组织以及管理功能的实现,主要是在ROM以及FLASH上得以保存[3]。对计算机的软件系统进行优化,确保整个计算机软件的协调运作与发展。软件设计过程的存储器设计是关键,存储映像的合理布局是整个计算机系统布局的关键控制点,计算机软件系统将程序的指令进行调用,执行物理地址当中的执行代码。ROM的初始化过程位于物理零地址,将终端向量存储在零地址之后,通过协调与处理中断向量之后,使得软件在调取数据的过程中,发挥处理器调取存储数据的效率,增强计算机软件操作实效[4]。
3.3应用实时与任务调度
关于嵌入实时软件的应用,主要包括有软实时性与硬实时性两种嵌入式的实时性。其中关于软实时性方面,表现在可以允许软件操作过程存在一定的延迟。在选择环节,尽量选择具备优先级的调度方式,对整个计算机系统实现任务调度。如果软件系统具备较多的优先级,则需要依据任务目标及要求对优先级的级数进行控制,可适当增加优先级。在实现对任务拆分之后,提高关键任务的响应时间[5]。可见,在应用实时以及任务调度方面,应该增强系统响应时间,发挥出良好的价值与作用。
3.4任务与时钟间通信
嵌入式实时软件在计算机软件设计过程中的应用,需要充分发挥出时钟服务的内在价值与要求。进而使得系统能够设计自己的时钟,对执行动作进行控制与处理。通过软件自行的设计自己的时钟,定期对执行动作进行处理。针对嵌入式实时软件系统实现对信号量、信号以及列队等机制进行处理,做到实现软件资源以及系统任务方面的同步,满足通信要求[6]。在这一基础之上,保持良好的价值与内在优势。
3.5系统初始化
对于软件的系统初始化要求,应该在嵌入式操作系统的底层硬件和微内核之间的硬件抽象层编写初始化代码要求,最终满足对整个系统的初始化与引导作用。关于嵌入式的实时软件系统,应该确定固定的执行指令,满足初始化的操作要求。在系统初始化的过程中,主要包括转换处理器状态、初始化RAM变量、设置异常中断等,进而在接入口都处于明确的状态下,对嵌入式的软件系统进行处理,实现程序指令的有效设置,便于嵌入式实时软件在计算机软件设计过程中的任务调度要求[7]。
4结论
关键词:计算机;软件开发;难点;策略
【中图分类号】G623.58
【文献标识码】B
【文章编号】2236-1879(2017)15-0294-01
引言
计算机软件的质量优劣对于计算机的整体水平有着决定性的作用,软件的生存期一般都包括分析、设计、测试和运营维护等,计算机软件的设计需要按照一定的规范和要求进行,最终建立起适应某项系统的同一层次的模块结构。当前我国计算机软件开发的研究成果丰硕,出现了多种多样的设计软件方法和支持软件设计的工具,给软件开发带来便利的同时也存在着不利影响。软件设计的过程是一个并发性、在线性、实时性同步的过程,对于软件设计工作具有一定的影响,面临许多难题。
1目前主要的软件设计方法
1.1数据流设计法。
数据流设计法应用的领域最为广泛,通常都是结合具体的领域加以设计和开发。数据流设计法的突出优势表现在能够有效解决工程和科技领域的应用问题,它采用面向数据流信息的方法,利用阶段使用的结构分析产生的数据流图,对数据流图的信息特征加以检查、分析和判断,对信息流的性质进行分辨,以此通过变换分析和事物分析设计出软件结构。
1.2面向对象设计法。
面向對象的设计法是将程序以及模块等程序当作对象的概念加以分解,用自然语言将问题内容进行陈述,同时运用简易的运行规则将问题加以约束和处理,最终对对象和对象上的属性进行确定,同时实现在对象上的相关操作,获得用对象表示现实的最终模型。接下来映射该模型,获取所需的对象模型,以此解决软件设计中的难点。
1.3模块化设计法。
模块设计法是一种运用时间较长的方法,该方法的优势在于通过减化繁杂的程序避免软件系统的复杂性,通过分解整体设计过程为一个个具体的小的程序问题,从而轻易地将小问题各个击破。模块化设计法呈现出的具体形态是模块化的层次结构,设计过程中只能看见接口部分,因为内部的操作、数据是隐藏者的。
模块化的设计法能够容纳多人的同时参与,在编程、测试和集成的环节,由于多人参与能够提高程序设计的可读性和可修改性。设计出的软件随着分解系统和思想准则的不同而不同。
1.4数据结构设计法。
数据结构设计法主要包含Warnier和Jackson这两种,前者提供详细设计过程的主要方式是采用图;后者表示数据结构的主要方式是层次图,所以说二者具有一定的相似性。数据结构的主要应用范围是商业的数据处理。
数据结构设计法的主要宗旨是面向问题,通过发现问题、解决问题的思路进行工作。基于问题以及问题的解决方式之间必然存在一定的联系和规律的前提,直接在数据结构上建立程序结构,最终获得程序结构的过程描述。主要的设计结构方式包括顺序、重复和选择。
2计算机软件开发设计的难点
2.1计算机软件不能有效地结合实际。
软件的更新换代速度很快,市场上软件的开发规划不是建立在用户的需求上,而是通过理想化的推断来进行,导致软件的用户体验性差。造成这种现象的主要因素有软件设计开发人员限于地域、时间、成本等因素而缺乏对实际情况的考虑,对软件实际应用中的各种情况和问题的重视度不够,影响软件的质量。
2.2缺乏良好的开发环境。
我国计算机软件的开发事业取得了巨大的进步,但是相较于发达国家还有着很大的差距,造成这种差距的一个主要原因在于我国缺乏一个良好的软件开发的环境。软件开发的过程中缺乏正规的商品化开发工具,这对软件的开发工作有着不利影响。
2.3计算机软件开发测试工作需要规范化。
在软件正式被投入运营之前需要对其进行充分的测试,当前的软件测试现状是总体水平良好,但是不够规范。一些软件开发人员不重视标准化的软件检测,为了客户的具体需求增设了许多软件功能,导致软件程序过于复杂,为软件的后期运用埋下隐患。
2.4新特性的不断增加。
软件在正式运营的过程中会不断增加新的特性,对软件程序造成不良的影响,使其变得混乱、复杂。针对这种状况,软件设计人员要尽量避免添加新的需求;如果不得不添加新的需求就要及时更改软件计划。
3软件开发设计的策略
3.1对设计需求加以合理分析。
在软件设计之前要对用户的需求进行市场调研,从而以用户需求为导向制定软件的具体设计内容,制定与之相配套的软件设计计划,最终将软件开发过程中的笼统问题化为清晰的解决对策,避免不可被测试的问题的发生。
3.2提供一个良好的工作环境。
首先提供给设计人员以良好、舒适的工作环境,使软件设计人员保持愉悦的工作心情。其次给设计人员配备正规化的开发工具,通过硬件上的服务为设计人员开发出合格、优质的产品提供支持和服务。
3.3根据实际需求切实规划软件设计。
为了最大限度地节约人力和物力,在最短的时间做出最有效的成果,需要提前按照规范要求制定出切合实际的软件设计规划。详细制定软件设计的具体内容,明确软件设计的重点、难点,合理安排软件设计的具体行程,减少与软件无关紧要的事项与环节。
结束语
中图分类号:TP31 文献标识码:A
随着经济的快速发展和科技的进步,嵌入式实时软件已经广泛应用于社会发展的各个行业,在计算机软件设计中使用嵌入式实时软件,能有效的提高软件的质量,降低软件存在的缺陷,嵌入式实时软件在计算机软件设计中有不可替代的作用。
1 嵌入式实时系统的基本特征
嵌入式实时系统是一种计算机系统操作方式,嵌入式实时系统的主要影响因素有时间、可靠性、及工作环境。时间是嵌入式实时系统的重要管理资源,任务的分配和调度必须在规定的时间内完成,时间还会对计算机的正确性造成影响;可靠性是嵌入式实时系统的关键,如果嵌入式实时系统出现错误,很可能造成严重的经济损失;工作环境是嵌入式实时系统的重要组成部分,只有保证有安全、稳定的工作环境,才能确保嵌入式实时软件安全、稳定的运行。嵌入式实时软件要具有一定的鲁棒性,当系统出现故障或错误的操作时,还能提供应有的服务,嵌入式实时软件是一项工业自动化和计算机技术相结合的产物,在日常生活、仪器仪表、办公设备、软件开发等各领域中有十分广泛的应用。
嵌入式实时软件的时限可以分为十分严格、比较严格、宽松三种情况,如果不能符合时限的要求,会给系统造成灾难性的影响,这个时限是十分严格时限;如果时限一到,任务产生的结果就没有用,并且造成的后果不是很严重,这个时限是比较严格时限;如果时限不属于上述两种情况,则这个时限是宽松时限,宽松时限产生的结果会随着时间的推移而减少。
2 嵌入式实时软件在软件设计中的特点
嵌入式实时软件和生活的联系十分紧密,在日常生活中,许多通信设备和电器系统都是有嵌入式系统组成的,例如数码相机、手机、数字电视等都是嵌入式系统。由嵌入式系统组成的计算机,无论是键盘、硬盘,还是鼠标、耳机,都比普通计算机的功能良好。嵌入式实时软件是一个运作平台不能独立进行软件开发,需要依靠其他硬件和软件,嵌入式实时软件具有良好的实时控制能力,在计算机软件设计中有十分广阔的应用前景。
嵌入式实时软件在计算机软件设计中,能设计的系统有动态分配、缓存机制、预测指令等,嵌入式实时软件能有效的提高软件设计产品的质量和软件的可靠性。在计算机软件设计中,嵌入式实时软件最重要的部分是嵌入式微处理器,嵌入式实时软件可以用于软件和硬件同步设计,嵌入式实时软件在计算机软件设计中能支持多任务的实时,能在短时间内中断多任务,具有良好的保护功能,能进行软件检测和修复。嵌入式实时软件在计算机软件设计中有极其重要的作用。
3 嵌入式实时软件在计算机软件设计中的应用方法
3.1 划分各程序的职责
为保证软件系统的实时性功能,在进行嵌入式实时关键设计时,要划分各程序的职责,避免软件和硬件出现脱离现象,在计算机软件设计过程中,要根据不同的程序的功能在软件中安排特定的位置,在系统中使用优先有序的分配模式,从而减少系统对任务的反应时间。
3.2 嵌入式实时软件的控制
在进行计算机软件设计时,嵌入式软件的要求会更高,在软件运行过程中,如果出现时间偏差,就可能对整个软件造成严重的影响,因此,在进行嵌入式实时软件设计时,要严格的控制时间,创建一个良好的嵌入式实时软件运行环境,确保计算机软件安全、稳定的运行。
3.3 嵌入式实时软件开发的作用
在进行嵌入式实时软件设计过程中,需要和系统的软件和硬件紧密的结合起来,将实时处理技术融入软件开发中,利用实时机制进行事件处理,可以实现CORBA及相关模型,还可以在远程调控中增加多种服务。在计算机软件面向组件的设计过程中,嵌入式实时软件能有效的增强软件的独立性和重用性,
4 软件设计实例
在本次计算机嵌入式实时软件设计中,选择能提高嵌入式实时系统的响应时间,可以同步控制的AT91RM9200微处理器。软件设计使用到的系统有C++语言、数字信号处理器、微机保护系统、IO设备等。本次计算机软件设计是在软件和硬件的系统同时进行设计开发的。在进行计算机嵌入式实时软件设计过程中,要先分析的系统的需求,然后进行计算机软件设计、软件测试固化、代码生成等步骤。在进行计算机嵌入式实时软件设计时,将软件系统的功能分成多个模块,将软件设计开发模块化,从而将系统中不同任务区分开来,建立硬件和软件交互系统,从而提高软件设计的稳定性。
本次计算机嵌入式实时软件的设计,中断驱动方式采用可以提高嵌入式系统实时性的事件驱动方式,在进行计算机嵌入式系统内部功能设计时,为确保系统内部功能的积极响应,将设计任务周期化。在软件设计过程中,为实现软件内部资源共享,将控制任务转换成图形结构,从而简化设计流程。在设计计算机嵌入式实时软件结构时,要控制好软件和硬件结构的脱离现象,降低硬件对普通计算机软件设计的影响。软件设计过程中将每个任务设计在软件系统中制定的位置中,从而提高系统对任务的响应时间。最后使用C++语言进行嵌入式实时软件编程。
5 嵌入式实时软件的应用前景
嵌入式实时软件具有良好的灵活性和现实环境交互能力,在社会生产中有很广泛的应用领域,在进行计算机软件设计时,嵌入式实时软件能用于微处理器、程序编程、图形控制器等硬件和软件系统中,能有效的提高软件产品的质量和软件的可靠性,嵌入式实时软件的实时性强、操作性和易控性强,在计算机软件开发中有十分广阔的应用前景。嵌入式实时软件有效的解决了系统布线复杂的问题,控制过程中能源消耗比较少,能满足市场客户的要求,具有很强的应用价值。
结语
嵌入式实时软件系统能有效的提高软件的质量,降低软件存在的缺陷,嵌入式实时软件在计算机软件设计中有不可替代的作用。将嵌入式实时软件应用在计算机软件设计中,能有效的提高软件的实时性和可操作性,保证软件的多任务操作功能,嵌入式实时软件在计算机软件设计中有极其广阔的应用前景。
1 软件开发的条件及现状
当今世界,全球化和信息化已经成为不可抵挡的发展趋势。信息网络技术飞快发展,科学技术前进脚步加快,促使我国计算机事业的发展,软件开发技术也在不断的提升。但与世界其他发达国家进行对比,我国的计算机技术还是比较落后的,尚且处于发展的初级阶段,并且在开发设计过程中还存在较多问题。因此,找出我国计算机软件开发设计的问题和难点,进而提出有效的解决对策,这样才能为计算机软件设计工作的顺利进行提供保障。
2 开发设计中存在的问题
2.1 缺乏分析
目前,我国计算机开发人员能力不足,在具体开发过程中,设计人员无法对软件开发进行分析和研究,因而导致在实际运用过程中出现大量问题。例如用户数据容易丢失、计算机程序被破坏,计算机联网不稳定等。这些问题的出现,对于计算机软件开发企业的发展造成了阻碍,还会使计算机软件使用者的个人信息泄露,严重的甚至会影响生活。寻根究底,这主要是因为开发人员对于开发工作不重视造成的,他们不充分分析开发流程和设计涉及的数据信息,使得用户电脑所安装的程序不稳定,没有达到设计预算要求的效果。此外,一些软件开发人员对于开发过程中涉及的项目数据和使用目的不进行分析,使得开发设计环节笼统性大,数据不完整,从而降低计算机软件用户的使用效率,这在一定程度上阻碍了我国计算机软件的开发进程。
2.2 质量得不到保障
与其他产品的设计相比,计算机软件开发设计是一项较为复杂,并且要将多个程序组合起来的工作。在实际的开发操作中,工作人员切不可马虎大意,如果开发人员工作不认真或是没有按照相关的要求和标准开展工作,那么软件开发设计工作是得不到有效规划的。例如一些软件程序的开发正常情况下只需要半小时就能完成,但相关的开发人员没有遵循相关规定程序工作,这样就会延长软件开发的时间,而软件的质量也会大打折扣。软件开发设计复杂,需要开发人员按照国家相关法律法规的标准进行开发,这样才能保证开发的效率和工程的质量。
3 开发设计问题的解决对策
3.1 方法模块化
计算机软件开发设计的方法模块化是软件开发工程未来发展的方向和目标。从我国当前软件开发的情况看,由于开发人员工作疏忽,并且没有按照相关的规定对软件开发所涉及的数据信息进行实质性的分析,这样就使软件设计的质量得不到提升。而模块化设计方法则解决了这一问题。
3.1.1 模块化设计方法的优势
随着网络科技的发展,模块化软件设计方式是计算机软件设计领域发展的趋势,运用模块化设计方法,不仅可以保证计算机软件的使用效率,还能够提升软件开发人员的工作效率。模块化设计方法具有很大的优势,这主要体现在利用这种方法设计的计算机程序可以随意的更改软件程序内容,这一定程度上能够降低软件设计的复杂性。
3.1.2 模块化方法的工作原理
模块化软件开发设计方法将整个设计程序分为若干个小的程序,开发人员完成小程序设计后,需要将小程序逐个组合起来,从而形成完整的计算机软件程序。但在这个方法的使用当中,软件开发设计人员需要注意,设计小程序的过程中,要把小程序作为独立个体进行设计,并且保证设计的小程序的正确性,这样才能保证大程序的顺利组合。
3.1.3 模块化设计方法的缺陷
虽然模块化设计方法能够提高软件设计人员的工作效率和软件质量,但这种模式也存在一定缺陷。它是一种独立存在的形式,如果计算机系统发生自动分解,那么很多的程序就只能够根据分解的具体情况都程序进行修改、删减或增添,而计算机的下级模块就无法调试为更高级别的模块。因此,计算机软件设计人员必须严格遵循相应的统计原则,这样才能保证模块化设计方法在软件开发设计中的使用。
3.2 层次化设计
数据结构信息是计算机软件开发设计工作中的重要一部分,也在计算机系统中占有重要地位。从我国目前计算机软件设计发展情况看,大多数企业已经实现了软件设置程序结构化,并且对设计结构进行层次化,但大部分企业却没有对数据结构进行层次化,这就容易使软件设计数据信息流失或是出现图文信息特征不明确的问题。因此,加快数据信息结构层次化是当前要考虑的主要问题之一。通过信息的全面采集和调整优化内部数据结构,再以详细的图文和信息流特征为基础对软件数据结构进行准确分析,得出合理的软件设计结构。另外,还需要控制好影响数据结构设计的祸合和内聚,这样才能解决数据结构难点问题。
3.3 设计多元化
目前,Warnier是我国计算机软件数据结构设计的方式,它不仅能够利用图标结构将计算机软件中数据难点直观的表达出来,还能根据相应的数据结构设置控制结构,为计算机软件中的难点问题提供解决办法。数据结构设计主要有三种类型,表现为重复、顺序以及选择。数据结构设计操作流程分为四步,一是分析数据结构,二是得出相关结论,建立程序控制结构,三是列出数据结构设计的整个过程,四是将数据结构分配到对应的内部系统中。总之,重视计算机数据结构设计这一环节,并且加大投入力度,对于解决开发中的难点问题很有帮助,同时还能够使数据结构向多元化方向发展。
4 结语
综上所述,随着科技发展步伐的加快,我国计算机软件开发技术也在不断的提升,与发达国家还有一定的距离,并且处于初步发展阶段。为此国家出台了相关的法律法规保障计算机软件开发工作的顺利进行,与此同时,企业也制定了发展的相关措施,利用模块化设计方法,确保层次化的实现,达到提升计算机软件设计效率和质量的目的。
关键词:计算机;软件开发;规范化
中图分类号:TP3 文献标识码:A 文章编号:1009-3044(2014)11-2537-02
Abstract: The new century, with the development of modern information technology, application of computer software technology more widely, computer software development to promote the development of computer technology became an important foundation link, and how to strengthen the standardization of computer software development also become a major social concern. In this paper, based on the current status of computer software development, focusing on analysis should be enhanced from what computer software development standardization in order to effectively regulate plus computer software development to provide some references and recommendations.
Key words: Computers; Software Development; Standardization
现代信息技术的快速发展加快了我国金融市场信息化建设的进程。而信息化发展是建立在不断更新和发展的计算机软件开发技术基础之上的。努力提高计算机软件开发人员的专业技术水平、积极促进计算机软件开发规范化的落实是目前一个十分重要的课题。从某方面来说,计算机软件开发的规范化程度决定了软件的生存周期的长短。加强计算机软件开发的规范化的主要内容是指在特定条件下对计算机软件的运行环境进行设定,在满足软件的应用性能和质量需求的基础上,拟定完善的软件用户须知准则,并对软件开发和应用进行必要的说明。要规范计算机软件开发,首先必须对用户对软件的需求进行详细的了解,对计算机软件的运行环境进行分析和评估,在此基础上明确软件开发的规则。
1 计算机软件开发存在的问题
目前,我国的计算机软件开发还存在一些问题,尤其是软件检测不够规范给计算机软件开发留下了比较大的漏洞。软件检测不规范问题主要表现在这几个方面:一、软件检测程序不规范,措辞模糊不清。软件检测不规范,呈交给领导的检测报告不够清晰、明了,此外,没有对检测出来的错误进行登记划分,例如应该按照检测错误的性质将其分为一般性错误、警告性错误以及致命性错误这三种。在发现错误后,也不能及时对错误进行分析并提出相应的修改意见。大多数检测修改意见几乎都是大同小异,没有什么有建设性的意见。这样的检测报告是非常容易引起研发部门以及领导层的反感的,也不利于软件开发的顺利进行,对软件的质量也会产生一定影响。二、软件检测过程模糊。软件检测报告不能详细、完整地呈现检测错误发生的环境和过程,增加了软件修改和调整的难度,此外也影响软件研发部门的修改。可能出现因为一个极小的表格错误而给整个系统造成难以修复的损坏。
2 软件设计研发标准
计算机软件设计主要包括概要涉及和详细设计这两个方面的内容。作为软件设计的重要组成部分,概要设计和概要设计一般为合成为软件涉及,而在实际的操作过程中,软件设计具有结构化的特点。软件设计是在对用户需求和市场环境进行详细分析的基础上获取产品的设计风格、软件构造以及制作流程等方面的内容。获取软件设计的研发标准能够促使计算机软件设计更加标准化。
2.1 软件设计中的概要设计研发标准
概要设计的标准就是根据软件的功能需求,建立能够联系各大模块的目标软件系统,给各个模块的接口以及控制接口下定义。建立一个能够控制全局的数据库,对软件设计的功能范围进行设定,并且拟定软件检测方案。软件设计的概要设计研发标准对创建全面的系统构造进行了合理的规定,软件各功能模块必须满足高内聚度和低耦合度的要求,只有这样,才能使得系统持续保持优良的形态。而在进行整体的系统目标构建时,要尽可能使模块的接口趋于简单化。在进行具体操作时,模块接口一定要满足软件目标系统共的整体构造。在进行大型软件的系统设计工作时,可以将软件的核心部门分成若干个小的子系统,再对子系统进行功能模块的创设并且建立它们之间的关系,还要对功能接口进行注解,为功能系统建立一个数据库。而对一般性质的软件功能系统,则不需要进行子系统的划分,可以直接创设功能模块以及它们之间的关系,在对数据接口进行注解,建立系统数据结构,拟定系统检测策略。此外,软件设计所创设的系统必须包含产品的全部信息需求。对系统各模块的性能以及它们之间的关系进行明确,还要明确个接口的控制特性,保证软件检测文件的全面性。
2.2 软件设计中的概要设计研发标准
软件设计中的详细设计研发标准是对概要设计研发标准进行细化,它需要对概要设计中的内容进行更详细的解释,能够系统地、精细化地阐述概要设计的功能模块。详述系统功能模块的内部细节,必须把握好算法以及模块的内部构造这两个方面的内容。算法和内部构造的明确能够对拟写源代码起到一定的有益影响。因此,软件设计的研发标准,一定要围绕算法和内部构造这两方面的内容来规定。对模块输入输出等性能的处理一定进行细化和区分,在完善的详细设计研发标准的前提下进行规范化的软件设计。对每个模块进行程序划分,并对检测报告进行准确的检测和评估,保证模块接口的精准性。保持计算机软件设计的渐进性、一步一步地求精求好是软件设计最重要的一项要求。
3 软件检测的规范化
一般来说,在规模比较大的软件开发实施过程中,犯错是难以避免的,而要有效地消除错误,在软件生存周期中进行软件检测是十分必要的,它几乎是软件研发过程中一个不可或缺的阶段,软件检测决定着软件的生存周期以及其产品的研发质量。加强软件检测的最主要的目的是根据软件研发的需求规定中的功能和性能需求以及检测计划等内容来对软件的功能系统进行检测,看起是否达到质量要求,还要提供相应的用户使用需求准则和应用操作说明书等。规范软件检测的过程,首先,必须要有用户代表一起加入软件检测;其次,必须对软件系统的各功能模块进行完整的检测测试;再次,要对检测数据、预期结果等进行预留存档;最后,还要建立相对独立的软件测试小组对软件性能等进行最后的确认测试。软件检测结束后,要写项目总结报告,对检测结果进行分析、评估。
4 进一步加强对软件开发规范化的认识
软件设计检测标准的规范程度依赖于软件检测环境的规范化发展,通过建立完善的检测环境来提高软件功能检测性能。软件检测部门应该对软件研发人员提供更多的技术支持。目前,随着科技的进一步分站,软件检测工具也有了比较大的变化,许多企业的软件检测都有过去传统的手动检测发展到现如今的自动化检测,检测标准也逐渐过度到以量化标准为准,而随着软件检测标准的不断完善,软件检测工具的应用也更趋于全面。目前,越来越多的企业开始趋向于由检测方为研发方提供检测工具,让软件研发人员的开发行为更加顺畅。此外,检测方还很乐于为软件研发方提供软件检测的教育指导,以此来促进软件检测标准的完善化发展。这种两个部门之间的合作关系有利于软件研发方在进行软件开发的过程中充分落实软件检测制度,也能够有效减轻研发方的软件检测压力,促使软件研发过程更加标准化,这样通过检测方与研发方的合作一起提升软件产品的研发质量和研发标准,保证软件产品最终实现软件研发和软件检测双向水平的提升和发展。
5 软件维修的规范化
计算机软件维护是保证软件生存周期的一个重要内容。软件维护的主要任务是对软件的任务系统进行维修,对在计算机研发阶段未被检测出来的错误进行改正,使得软件系统能够正常运行,保证其功能和性能的良好状态。软件维护阶段的规范化要求维修必须在严格的规范和相关准则的规定下进行,不能出现旧的错误没有解决,又出现新的错误的情况,尽可能地减少软件爱你维修的负面效果。软件维修应该在严格的规范和制度控制下按部就班地进行,维修步骤和过程必须有详细的记录,即填写规范化的维修检测报告。此外,软件维修人员还要对维修检测报告进行评估分析,主要包括检测软件原有的问题是否得到解决、维修所需要的人力物力资金以及软件维修所需要的时间周期等内容。在确认检测后,填写最后的维修检测确认报告,通知用户软件维修已结束。
现代社会,随着计算机技术的广泛应用,计算机软件开发成为计算机技术应用发展过程中的一个中内容。只有加强对计算机软件开发规范化的要求,才能让计算机软件技术更好地适应市场经济的发展要求。
参考文献:
[1] 陈妍.计算机软件开发的规范化探析[J].软件,2013(7).
[2] 范中平.计算机软件的深度开发应用[J].才智,2012(12).