软件开发与定制范例6篇

前言:中文期刊网精心挑选了软件开发与定制范文供你参考和学习,希望我们的参考范文能激发你的文章创作灵感,欢迎阅读。

软件开发与定制范文1

“软件危机”问题日益严重,主要表现在:软件开发效率低,开发周期长,开发成本高,可维护性和适应性差,不能很好地满足用户个性化和频繁的业务变化的需求.而日益激烈的市场竞争和经济全球化,赋予软件工程以新的特征:有效率有效用地满足用户个性化需求的定制化,快速响应和适应市场及业务的变化,以及低成本高收益等.

在软件行业,大多数开发单位还处于手工劳动阶段,软件开发活动是针对单一用户的具体需求,面向单个产品来组织的.近年来,产业界将“软件作坊”转变为“软件工厂”的呼声越来越高,试图将软件开发作为一种生产制造过程,像在生产线上生产物质产品一样,大规模生产软件产品.但目前的现状并没有达到期望的目标,当软件开发项目比较大时,软件危机依然存在,其中一个主要的原因是,认识一个系统的过程和方法同用于分析、设计和实现一个系统的过程和方法不一致,对软件开发过程的认识不够明确,同时,也缺乏合理和实用的软件过程模型.为了解决软件开发过程中的瓶颈问题,提高软件业的竞争力,人们提出一些旨在促进软件工程化的开发思想和方法,如软件复用、过程重组面向对象的软件工程基于构件的软件工程和领域工程等.本文在这些软件工程方法的基础上,提出面向大规模定制的软件开发模式(softwaredevelop?mentformasscustomization,SDMC),将大规模标准化软件开发与面向单个用户定制开发有机结合起来,既满足用户的个性化需求,又达到规模经济的效益.

2面向大规模定制的软件开发模式

1970年,托夫勒在其《FutureShock)(未来的冲击)一书中提出了一种以类似于标准化或大规模生产的成本和时间,提供满足用户特定需求的产品和服务的生产方式的设想.1987年,StanDavis在《FuturePerfec)(未来的理想生产方式)一书中首次将这种生产方式称为“masscustomization”,即大规模定制生产,简称mc.这种能满足用户的真正需求而又不牺牲效益和成本的新的生产方式目前在制造业得到了较快的发展,并作为一种有效的竞争手段逐渐被企业所采纳.简单地说,大规模定制是以大规模的生产成本和时间满足用户的个性化需求,其基本思想是:将个性化定制产品的生产问题通过产品重组和过程重组转化为或部分转化为批量生产问题.

与物质产品相比较,软件产品的生命周期更短,受市场和客户需求变化的影响更大,特别是领域应用软件,每个企业的产品结构、规模大小和管理方式都不一样,业务流程也各不相同,而且随着市场的变化,企业重组和持续业务过程改善,都造成业务过程的动态不稳定.这要求软件产品不仅在开发过程中要满足多样化的业务需要,而且在企业应用过程中,要能动态适应不断变化的业务过程.因此,软件产品应比物质产品更具有柔性和可定制性.根据不同软件产品的特点,存在两种软件开发形式,如图1所示.

①标准成品软件(off~the~shelf)开发.面向较大规模的客户群,开发和销售成本低,相对价格便宜,交货迅速,但满足用户特殊需求的集成和修改费用高.

②单个软件定向开发(one^ff).完全按用户需求组织开发,能贴近用户需求,但开发费用高,周期长,而且可维护、可升级性差.面向大规模定制的软件开发模式是以上两种开发方式优点的结合,既可以快速响应个性化客户需求,又可以实现标准软件开发的效率和成本.

如图2所示,SDMC除继承领域工程和基于构件的软件工程方法的特点外,还将并行工程的思想融于产品开发过程中.SDMC改变了传统的面向单个软件的开发方法,是对某一领域现在和未来市场、整体和细分市场以及相应的用户群体进行分析,开发出对该领域现存和潜在用户均有良好适应性和定制性的系列产品,即面向产品族开发,以实现范围经济与规模经济的结合.可重用构件是实现SDMC的基石.采用基于构件的开发方法,可以将一个复杂的软件产品分成多个构件的集合,相当于将复杂的单一问题简单化,因此更便于软件的管理、维护和升级.理论上,构件是与具体产品无关的相互独立的单元,可以在广泛范围内共享和重用,是解决大规模软件工程问题的有效方法.构件可以外购,还可以外协构造,这样可以充分利用外部资源,缩短开发周期.

SDMC运用并行工程的思想,集成地、并行地开发软件产品和过程,从软件开发的开始就充分考虑软件生命周期中所有因素,包括时间、成本、质量和用户需求等.

综上所述,SDMC继承和发扬了领域工程、基于构件的软件工程和并行工程的思想和方法,在系统方法指导下,用全局优化的观念,充分利用内外部资源,以大规模生产软件的效益,开发满足用户个性化需求的软件产品.其目标是:

①缩短产品开发周期,以实现快速响应;

②提高开发规模,降低开发成本,以实现规模经济;

③满足用户个性化需求,以实现范围经济.

     3面向大规模定制的软件开发过程

传统的软件开发过程模型是针对单个产品开发而提出的,将软件开发过程分成需求分析、设计、编码、测试和交付等串行的几个阶段.文献分别给出了面向重用的过程模型.文献[7]将制造业的产品生产过程分为新产品形成过程和订单产品制造过程.本文根据SDMC的目标和特点,给出如图3所示的面向大规模定制的软件开发过程模型.与制造业一样,将软件开发过程分为面向市场的新产品开发和面向用户的定制两个循环.

图3面向大规模定制的软件开发过程模型

面向市场的新产品开发是根据市场的现在和未来需求收集信息,运用相关知识构造某一应用领域问题的解决方案,开发新的产品.新产品开发不是面向单个产品,而是面向产品族,建立面向产品族的领域框架和可重用构件,并在过程设计环节,设计以领域框架和构件为基型的软件定制过程,为定制具体应用系统打下基础.这一循环,所需时间相对较长,称之为慢循环.面向用户的定制过程是根据用户的具体需求,在新产品开发过程中形成的面向产品族的领域框架和定制过程的基础上,利用已有构件,进行配置设计和定制开发,形成满足客户个性化需求的软件产品.这一过程在客观上必须是一个快循环,以快速响应用户需求,称之为快循环.

SDMC主张软件开发单位通过业务过程重组,将软件开发的两个循环相互分离:新产品开发部门负责面向市场的新产品开发,同时为软件定制准备基型;定制部门利用可变型的基型,按订单定制,快速满足用户的个性化需求.两个循环相辅相成,能否完善结合的关键是可定制的领域框架和可重用的构件.每个循环均强调并行,并适时将演化模型[1]融入并行开发和定制过程中.

一般说来,软件开发单位对两个循环都应重视.新产品开发循环具有创新性,将给开发单位带来创新的产品,增强竞争优势.定制循环虽然不会有重大创新,但其优势是在“快”上,能快速响应用户的个性化需求.

4面向大规模定制的软件产品族

可定制的产品族模型是实现SDMC的关键.因此,SDMC重点在于研究建立合理的产品族结构的软件设计方法,不再每次只设计一个产品,而是同时完成一组产品的设计,即对整个产品族进行综合设计,从而可以挖掘出产品族中的相似性信息,设计出面向产品族的可定制的领域框架和可重用构件.并利用并行工程的观点,以时间、成本用户满意度为目标,集成地并行地设计产品族及定制过程,同时尽可能考虑到影响软件定制过程的约束条件和条件约束下的软件配置机制.

软件产品族是利用共享资源构造的某一具体领域软件产品的集合,是一系列相似产品的统一表达.软件产品族对具体领域的相似问题进行归类,用相似的解决方案来解决,并试图覆盖同一业务领域的所有现实或潜在需求.面向大规模定制的软件产品族体系结构如图4所示.

软件产品族由领域框架、构件、定制过程和定制机制等部分组成.按照从用户需求到软件产品形成,在业务定义、技术方案和物理实现3个层面上建立领域框架模型和构件模型,层与层之间存在映射关系,右边层次的模型是左边层次的模型的变换,这样从左到右,形成一种生成、推导和约束关系.

(1)业务模型.是根据用户和市场需求,对业务对象、业务过程、业务服务和业务规则进行形式化描义莫型.在软件产品族体系结构中,业务层面上描述的领域框架和构件,分别称为领域框架业务模型和构件业务模型.

(2) 技术模型.是对适应业务模型的应用系统技术解决方案的一致性描述.在软件产品族体系结构中,技术层面上描述的领域框架和构件,分别称为领域框架技术模型和构件技术模型.

(3) 实现模型.是对实现技术模型的物理系统的一致性描述.在软件产品族体系结构中,技术层面上描述的领域框架和构件,分别称为领域框架技术模型和构件技术模型.

(4) 领域框架.是针对某一具体领域,包括构件及构件之间相互关系和约束规则,可定制、可扩展领域通用的软件产品族架构.

(5) 构件.是在定义好的体系结构相关环境中具有明确功能的独立的、可替代、可重用的系统组成部分.

(6) 定制过程.针对具体的开发环境所制定的,个性化定制具体应用系统的规程,包括与应用系统实现过程相关的规范、工具及相关文档.

(7) 定制机制.包括约束条件^配置机制以及业务模型技术模型和实现模型之间的映射关系.约束条件是约束应用系统定制的环境因素和对定制过程的考虑,配置机制是条件约束下的对领域框架实例化和对构件进行配置的规则和推理机制.

基于产品族的软件开发目标是提高产品族中的构件的通用性,从总体上降低开发成本,缩短交货期.对现有客户需求的理解和对未来需求的预测,及对客户群需求的系统分析,是产品族规划的关键,而产品族规划又是面向产品族软件开发的重要环节.

5面向大规模定制软件开发的产品集成过程模型

传统的软件开发方法强调软件实现技术,而忽略了对软件开发过程的规范和管理.近年来,软件开发过程越来越受到产业界和学术界的重视,如CMM(能力成熟度模型)就旨在显着提高软件开发过程管理能力[8].本文在制造业面向大规模定制的集成产品和过程模型基础上,结合软件产品的特点,给出了如图5所示的面向大规模定制软件开发的产品集成过程模型.

如图5所示,面向大规模定制软件开发的产品集成过程模型呈二维结构.时间维描述的是从客户订单到产品交付的过程,即软件开发过程(包括新产空间维描述的是将不同产品的相似部分进行归类处理,以增加软件开发规模,可采用产品模型(包括领域框架模型构件模型和应用系统模型)来描述.

SDMC在时间维优化的关键是有效地将定制分离点(customizationdecouplingpoint,CDP)后移.CDP是软件开发过程中由与订单无关的、面向市场的预测型大规模开发转向面向用户的定制的转换点.推迟CDP可以减少由于用户订单特殊需求而进行定制在时间和资源上的开销.最理想的作法是在交货点定制,即接到用户订单后,及时在用户现场根据用户需求完成产品开发和交付.实现CDP后移,需要准确预测市场需求,构建好可定制的领域框架,预制足够的可重用构件,为产品定制做好充分的准备.时间维优化可以显着提高开发效率.

SDMC在空间维优化的关键在于如何通过相似性原理和标准化技术有效扩大构件和框架的优化范围并提高它们的可重用性.在软件行业,大约65%的开发成本花费在重复系统开发上.对不同应用系统进行分解,可以发现存在大量相似性,可以对这些相似性内容进行归类,形成领域内或领域间共享的

6面向大规模定制的敏捷软件开发组织

根据SDMC的二维优化模型,显然在一个地区或行业推广实施大规模定制软件要比仅在一个开发单位实施可以取得更好的效果.大规模定制软件的最佳的模式应是在全球范围进行推广实施.事实上,软件行业的全球化和专业化分工也正在促使大规模定制软件开发扩展到全球范围.如何组织广泛范围内的软件大规模定制?本文主张将敏捷制造思想应用到软件开发中,建立面向大规模定制的敏捷软件开发组织.

敏捷制造是为实现企业生产制造的敏捷性,采用现代通信手段,通过快速配置各种资源,以有效和协同的方式响应用户需求的一种企业发展战略.虚拟组织是实现敏捷制造的重要组织手段.虚拟组织是一些相互独立的开发单位通过信息技术(例如互连网)连接的暂时性的开发单位网络,这些开发单位在软件开发过程中贡献出自己的核心能力,以实现技能利润共享和成本风险共担,迎合和把握快速变化的市场机遇.

充的动态组织.根据产品族设计中规划好的领域框架和构件,进行工作任务分解(分解为不同类型的构件),按照各个公司或公司内某些部门的核心业务能力,动态组合资源、技术和人员最佳配置的虚拟组织.虚拟组织成员接受工作任务后,按照各种合作形式(如供应链式、策略联盟式、合资经营式转包加工式和虚拟合作式等[13])进行合作,在基于Internet的敏捷开发环境下,共享资源和技术,完成各自的工作任务(完成构件开发).根据客户订单要求,将领域框架实例化形成满足订单要求的应用系统框架,并如图6所示,虚拟组织是可重构、可重用和可扩对虚拟组织成员提供的构件进行装配,最终形成满足用户需求的应用系统.

7结论

软件开发与定制范文2

云计算、大数据、移动化和社交化趋势的发展给软件开发企业带来的最大挑战是什么?ThoughtWorks中国区总经理张松表示:“我们不提供公有云平台,而是专注于让传统企业更好地使用云计算。”传统企业通常拥有庞大的IT系统,而且存在了几十年。在面对新的业务需求时,如何继续发挥原有IT系统的优势,面对不同类型的应用,更充分地利用云计算,实现更快、更安全的应用部署是用户和软件开发企业都必须面对的严峻挑战。

“我们要帮助企业设计一套新的架构,让它更适合云的环境。”张松举例说,“我们通过Microservice可以将传统企业的业务分割成不同的服务模块,这些模块可以独立开发,并部署和运行在云平台上。这是我们推荐的一种新的架构模式。”

在澳大利亚和美国,ThoughtWorks是亚马逊AWS的重要合作伙伴,并且通过了亚马逊AWS的金牌认证。如果有用户想将应用迁移到亚马逊AWS的云平台上,ThoughtWorks可以提供相应的迁移服务。

作为高端软件定制开发企业,ThoughtWorks一直根据用户的实际需求提供定制化的软件开发服务。经过多年的积累,ThoughtWorks不仅在金融、零售等诸多领域拥有了大量客户和实践经验,而且对这些行业客户的需求也有了深入了解。ThoughtWorks完全可以对以往的产品开发经验进行总结,推出自有品牌的针对某些行业或特定应用场景的解决方案。

张松表示,ThoughtWorks已经开始进行这方面的尝试。“我们已经推出了一个云计算的平台ScaleWorks,它可以运行在第三方的公有云平台之上,能够帮助客户在企业环境中更好地使用云计算和其他企业级虚拟化平台,比如VMware或微软的云计算平台。”ScaleWorks的好处是可以隐藏企业应用开发中的复杂性,让用户更容易使用,同时可以实现企业软件在、部署和开发测试等环节的管理自动化,减少开发和测试的工作量。

虽然ThoughtWorks已经推出了像ScaleWorks 这样的可以大规模商用的产品,但是ThoughtWorks并没有像其他IT公司那样急于进行大规模的商业推广。

张松表示:“我们现在的做法是选择一些我们认为具有创新精神的客户来试用这个产品,在得到反馈并对产品进一步优化之后,再对产品进行大规模的商业推广。目前,已经有两三家客户在试用ScaleWorks。我们公司内部也在全面使用这套系统。”

软件开发与定制范文3

关键词:信息化 软件项目管理

中图分类号:TP391 文献标识码:A 文章编号:1007-9416(2012)05-0250-01

1、引言

在国家提倡“两化融合”的大环境下,众多生产制造企业为提升自身竞争能力、扩展发展空间,不断加强信息化方面人力和资金的投入,利用现代信息技术对自身信息资源进行深化开发。生产制造企业的软件项目是具有针对性的定制需求软件项目,不论是合作开发还是整体外包,往往存在着技术、人才等方面的不足,特别是软件项目管理的不足使企业无法完全有效利用软件系统的功能和消化吸收软件在设计和应用上的知识体系,容易出现需求无法控制、功能重复开发、应用效率低、运维和移植成本高等实际困难。

2、企业软件项目技术管理中遇到的问题

2.1 软件需求定义模糊

软件需求是整个软件项目最关键的一个输入,软件需求具有模糊性、不确定性、变化性和主观性的特点。软件需求的提供人员普遍缺少软件需求的必要知识,提出的需求定义不充分、不全面、不准确,导致在系统测试和运行阶段会出现大量的需求变更,影响系统设计结构,造成补丁摞补丁的软件程序。

2.2 项目参与者沟通强度不足

沟通不足常常是企业软件项目成功的最大的威胁。软件需求提出者在项目建设初期对信息化理念了解不深,表达不够深入,提出的功能需求浮于日常工作表面。而企业软件开发人员或外包商因为对业务了解不够深刻,没有有效的项目沟通计划,无法充分考虑业务需求,不能对软件系统给出规划建议或细节,造成项目需求的余量规划准备空间不足。

2.3 定制带来的软件自身内在的高复杂度

对于企业定制软件的开发,由于生产业务自身的复杂度,导致了定制软件的复杂度,特别是业务的组合,造成系统间和模块之间耦合度较高。

2.4 文档资料缺失,知识无法有效继承

在软件项目中,相对于项目进度和软件开发,项目成员不太注重知识的收集和积累,仅能提供项目主要文档资料,而这些资料往往没有跟随软件变更进行及时更新。导致系统的使用、维护知识仅为少数开发和参与者掌握,无法将个人的隐形知识转化为共享的显性知识,给系统的后续升级、维护造成很大困难。

3、在企业软件项目管理过程中的经验

企业的定制软件项目是用有限的资源、有限的时间根据特定的业务部门需求,优选各种技术和产品进行设计开发,将各个分离的“信息孤岛”连接成为一个完整、可靠和有效的整体,并使之能彼此协调工作达到整体优化目的的工作。一个良好的企业项目软件,成熟优秀的软件项目管理是必不可少的。在软件项目建设和全生命周期中,如要减少上述问题的发生,企业可以做好以下几个方面:

3.1 强化软件项目需求控制

在软件项目管理范围内,需求控制和管理是其中重要的一环,特别是对于针对企业自身生产经营流程所定制的软件系统,需求贯穿了项目的整个生命周期。从企业走上ERP信息化道路之后,随着员工对系统了解不断加深和企业自身管理水平提升,很多因素都可能使软件系统的需求不断变化。如果不能有效处理需求变更,势必会很大程度上增加开发和运维的压力。

3.2 加强需求相关方参与项目的深度

不仅是在软件项目初期需求收集和概要设计中,在整个软件项目的生命周期内都必须强调项目需求相关方即业务部门的参与。由于软件系统实施将改变企业员工的工作方式,因此,业务部门的管理者和将来的使用者必须在项目策划阶段就能了解系统应用对其工作方式带来的影响,他们必须制定相应的政策、流程等以准备应对这个即将到来的变动。目前部分ERP项目之所以失败,重要的一个原因是人们误认为ERP项目仅是一个信息系统项目,该项目带来的仅仅是一个信息产品。其实,ERP项目带来的是一新的运营方式,如果企业在没有做相应调整的情况下强行引入ERP,业务流程重组不到位,将会使企业运行的混乱速度加快。事实表明,促使软件项目成功的最重要的要素莫过于需求相关方的全过程参与。

3.3 培养企业内复合型人才,扩展项目管理知识领域

企业定制软件项目需要掌握项目管理技术、熟悉企业流程并对了解软件开发关键技术的人员作为项目的管理者,首先要扩展企业内部软件项目管理人员的知识面,一个高效的项目管理者来说至少要能理解和使用五方面的知识领域:

(1)项目管理知识体系;(2)应用领域的知识和标准;(3)项目环境知识;(4)通用管理知识技能(采购、合同、后勤、人事管理、安全等);(5)管理软技能(处理人际关系技能)。

3.4 将项目沟通上升到技术和管理层次

由于企业内软件从业人员较年轻,缺乏一些沟通、社交等方面的软技能,习惯使用专业术语,更擅长跟机器打交道,所以在项目建设中会出现沟通不充分的情况。软件项目沟通管理是软件项目管理中的一个重要组成部分,可以使软件人员和业务人员有效的建立彼此相互了解的关系,并且能通过沟通的行为和过程达成共识,可确保及时、正确的产生、收集、分发、存储和最终处理项目信息。

软件项目沟通管理包含三个主要内容:(1)编制沟通计划,确定哪些人是项目干系人(项目干系人是指积极参与项目,或利益会受项目执行结果正面或负面影响的个体),分析他们对实施项目的影响程度。根据干系人信息需求的汇总进行沟通需求分析,对不同层次的项目干系人制定不同的沟通计划。(2)以合适的方式向项目人员分发信息,一个企业的各个项目应该采取统一格式模板记录信息以及进行传递,有助于信息格式标准化,降低沟通成本。(3)对项目沟通过程进行管理,改善软件人员沟通的软技巧,努力做到沟通内外有别,对外一致,一个团队要一种声音说话,采用对方能够接受的沟通风格,注重非正式环境下沟通所获得的信息,建立高效的会议方案,明确团队内部思考方式等工作。

4、结语

软件项目管理的发展像任何其他学科的发展一样,其成长和发展需要有一个相对漫长的过程,而且是永无止尽的。只有不断提升软件项目管理成熟度,使企业软件项目管理向多元化、专业化发展,才能取得项目的成功,最大的满足企业自身向整体信息化转型的需求。

参考文献

软件开发与定制范文4

在软件开发的过程中,每个人都想知道,项目当前的进展情况如何?我们下一步将走向何方?下一阶段工作的推进是否可控?我们有哪些资产可以复用?而上面这些问题,呼唤的正是一个统一协作的工作平台。

“一个软件开发团队的工作非常类似于乐队的演奏,每个人既要构建高质量的代码,更要关注别人在干什么,以便项目中各个部分最终能够完美地结合在一起,这就是‘Jazz’平台的由来。”IBM大中华区软件集团Rational总经理夏然说。

Jazz是IBM Rational面向软件交付技术的下一代协作平台,专门面向全球化和跨地域的团队开发,以提高软件交付的协作性、效率和透明度。在一个开发团队中,存在着项目经理、分析师、架构师、开发人员、测试人员、经理等多种不同角色,这些角色无不面临着沟通协作的难题:因为时间、地理位置或部门人事关系等的不同,使得协作变得非常重要。

Jazz以Eclipse开源项目的工作成果为基础,其体系结构具有良好的开放性和可扩展性,具有开放的中间件接口,无论是IBM的产品如Websphere、DB2、Lotus,还是开源中间件如Tomcat、Derby、Jabber,甚至是第三方供应商提供的产品如Oracle,都可以安装基于Jazz的产品。

开发团队也可以在项目的生命周期内,定制流程,建立自己的流程模板库。“太松散或太严格的管理流程都存在着弊端,而Jazz平台允许开发者引入新的协作流程,或者裁剪冗余的流程。”IBM中国开发中心新兴技术研究院开发经理李璐介绍说。

软件开发与定制范文5

 

1 平台背景

 

高速动车组技术的发展推动着列车网络控制技术的发展。列车网络控制技术是动车组技术的核心关键技术,司机显示屏技术是列车网络控制技术的重要组成部分,司机显示屏HMI软件开发平台的构建,直接影响列车网络控制系统的开发。构建开放、可扩展的司机显示屏HMI软件开发平台,对打造完全自主的列车网络控制系统、对动车组技术的发展具有至关重要的意义。

 

2 平台要求

 

平台须符合下述要求:

 

2.1 开放性

 

平台应具备丰富的应用接口,可以根据需求扩展平台功能、进行二次开发;可以与不同的列车网络控制系统平台、显示屏硬件平台、显示屏软件平台无缝对接。

 

2.2 灵活性

 

可以灵活选取操作系统、硬件平台、软件平台来构建司机显示屏HMI软件开发平台,而不会影响到平台的功能和性能。

 

2.3 可扩展性

 

可扩展性是平台构建的原则之一,它以添加新功能或修改完善现有功能来考虑平台的未来成长。可扩展性是平台优劣的重要影响因素。

 

3 平台构建

 

司机显示屏HMI软件开发平台主要由操作系统、硬件平台、软件平台三部分构成。构建开放的司机显示屏HMI软件开发平台需要综合考虑这三方面内容:

 

3.1 操作系统

 

列车显示屏是对实时性和稳定性要求比较高的设备,嵌入式操作系统因其在实时性和稳定性方面的俱佳表现,而广泛应用于嵌入式设备。当前主流的嵌入式操作系统有Linux、QNIX、VxWorks、Windows XPE等。

 

3.1.1 Linux。Linux是基于POSIX和UNIX的多任务、多用户、支持多CPU和多线程的操作系统,是一套免费使用和自由传播的类UNIX操作系统。

 

Linux操作系统的特点:(1)多用户、多任务。Linux支持多用户,保证了各用户之间互不影响。多任务使多个程序同时并独立地运行;(2)支持多种平台。Linux可以运行在多种硬件平台上,同时Linux也支持多处理器技术;(3)良好的界面。Linux同时具有图形界面和字符界面;(4)开源免费。Linux是一款开源免费的操作系统,可以免费获得。

 

3.1.2 QNX。QNX操作系统是加拿大QSSL公司设计开发的一种实时操作系统,它是一个真正意义上的微内核嵌入式实时操作系统。它的特点是微内核、多任务、多线程、高可靠性、实时性、可扩展性、可移植性。并且性能上有很大提升,在对实时性有严格要求的领域得到广泛应用。

 

3.1.3 VxWorks。VxWorks是由美国风河公司推出的一款具有高性能、高可靠性、可裁减的嵌入式实时操作系统。它以其卓越的实时性和可靠性被广泛地应用于军事、航空航天、通信等高精尖技术及实时性要求较高的领域中。

 

多任务内核、任务间通信、任务机制和中断处理机制等,是VxWorks操作系统的核心。

 

3.1.4 Windows XPE。XPE是基于Windows XP Embedded的操作系统。系统具有微内核、资源占用少、启动速度快、高可靠性、增强写保护等桌面XP系统所不具备的功能。XPE和Windows XP专业版拥有相同的核心,拥有Windows XP专业版的所有功能和属性,具备Windows XP专业版所有应用软件的兼容性。

 

综上,QNX和VxWorks操作系统具有良好的实时性、卓越的可靠性,但属于付费操作系统;Windows XPE操作系统在稳定性方面要差一些,不适合反复重启的司机显示屏设备;Linux操作系统实时性好、稳定性高,开源免费,又与其他操作系统具有相似性,是构建开放司机显示屏开发平台的首先操作系统。

 

3.2 硬件平台

 

硬件平台的搭建主要是显示屏的选择问题,选择的显示屏稳定性要好、可维护性要高,并可提供多样的技术支持和技术服务。

 

主要的显示屏供应商国外有PIXY、DEUTA;国内有盛博科技。

 

3.2.1 PIXY。帕克西(PIXY)是全球轨道交通行业移动显示设备领域领先的生产制造商。帕克西这一品牌代表着在全球交通系统,特别是轨道交通系统中的高质量的硬件及软件产品。所有生产的显示设备以高度集成、坚固耐用、精密等特点著称,特别适用于恶劣的交通和工业环境。

 

帕克西显示屏主要应用于地铁、中低速动车组等

 

领域。

 

3.2.2 DEUTA。德国德意达(DEUTA)公司致力于国内外铁路及城市轨道交通车载设备的引进、开发、生产和服务。公司以领先的技术和服务,使公众享受轨道交通带来的安全、舒适和便捷作为企业使命。主要产品有雷达传感器及测试系统、指针仪表、多功能显示终

 

端等。

 

德意达显示屏主要应用于地铁、监测系统等领域。

 

3.2.3 盛博科技。北京盛博协同科技有限公司,是专业从事嵌入式计算机硬件、软件及相关产品开发、生产、销售及服务的高新技术企业。多年来,坚持走自主开发、合作双赢之路,不断推出客户适用的产品和系统解决方案。

 

产品广泛应用于交通运输、网络通讯、智能仪器等领域。

 

上述显示屏供应商,可提供的显示屏有按键屏、触摸屏;尺寸为10.4寸或12.1寸;分辨率为640*480、800*600、1024*768;IO接口有串口、LAN、MVB、CAN、USB、Audio。亦可根据用户需求定制。

 

帕克西公司显示屏以稳定、可靠、可定制,以及完善的技术支持和技术服务,受到用户的广泛好评,逐渐成为显示屏开发平台的首先硬件平台。

 

3.3 软件平台

 

司机显示屏HMI软件开发主要是图形界面的开发。因此,采用跨平台、可移植、图形库丰富的Qt为图形界面开发框架,以Qt Creator为开发工具。

 

3.3.1 Qt。Qt是奇趣科技开发的一个跨平台的C++图形用户界面应用程序框架。它既可以开发GUI程序,也可用于开发非GUI程序。它为应用软件开发者提供了建立美观图形用户界面所需的所有功能。Qt允许真正地组件编程,并且很容易扩展。

 

(1)跨平台性。Qt支持的操作系统包括Microsoft Windows、Linux、QNX、SunOS、SCO、HP-UX等;(2)丰富的API。Qt包括200多个C++类,还提供基于模板的serialization、collections、file类;(3)面向对象。Qt通过良好的封装和重载机制,使得Qt的模块化程度得到提升,可重用性得到提高;(4)支持2D/3D图形渲染,支持OpenGL。

 

3.3.2 Qt Creator。Qt Creator是一款新的轻量级的跨平台的Qt集成开发环境(IDE)。它的设计目标是使开发人员能够利用Qt这个应用程序框架更加简便、快速地完成开发任务。此IDE能够跨平台运行,支持Windows、Linux、Mac OS X等操作系统。

 

Qt Creator集成了Qt Designer、Qt Linguist、Qt Assistant、qmake构建工具等,包括C++代码编辑器、项目生成向导、浏览文件及类的工具、图形化的GDB调试前端等。

 

4 结语

 

以Linux为操作系统,以基于Inter X86架构的帕克西Inc70系列显示屏为硬件平台,以Qt Creator为软件平台构建司机显示屏HMI软件开发平台。为未来开发平台的灵活配置和扩展留出了足够的空间,符合当前构建司机显示屏HMI软件开发平台要求。

软件开发与定制范文6

didoos是一个安卓定制系统。didoOS是由koobee(深圳酷比通信设备有限公司)深圳研发中心推出的基于安卓(android)深度定制的、一款更快、更稳、更好用的智能手机操作系统。

Android是由Google公司和开放手机联盟领导并开发的一种基于Linux的自由且开放源代码的操作系统,主要使用于移动设备。其最初由AndyRubin开发,后被Google于2005年8月收购。之后Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟,共同研发改良Android系统,完成开发后,Google以Apache开源许可证的授权方式,了Android的源代码。Android一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成。

(来源:文章屋网 )