形成研究热点,仍处于非形式化水平
自20世纪90年代后期以来,软件体系结构的研究成为一个热点。广大软件工作者已经认识到软件体系结构研究的重大意义和它对软件系统设计开发的重要性,开展了很多研究和实践工作。
从软件体系结构研究的现状来看,当前的研究和对软件体系结构的描述,在很大程度上来说还停留在非形式化的基础上。软件构架师仍然缺乏必要的工具,这种工具应该是显式描述的、有独立性的形式化工具。
在目前通用的软件开发方法中,其描述通常是用非形式化的图和文本,不能描述系统期望的存在于构件之间的接口,不能描述不同的组成系统的组合关系的意义。难以被开发人员理解,更不能用来分析其一致性和完整性等特性。
当一个软件系统中的构件之间几乎以一种非形式化的方法描述时,系统的重用性也会受到影响,在设计一个系统结构过程中的努力很难移植到另一个系统中去。对系统构件和连接关系的结构化假设没有得到显式的、形式化的描述时,把这样的系统构件移植到另一个系统中去将是有风险的,甚至是不可能的。
软件体系结构的形式化方法研究
软件体系结构研究如果仅仅停留在非形式化的框图阶段,已经难以适应进一步发展的需要。为支持基于体系结构的开发,需要有形式化建模符号、体系结构说明的分析与开发工具。从软件体系结构研究的现状来看,在这一领域近来已经有不少进展,其中比较有代表性的是美国卡耐基梅隆大学(Carnegie Mellon University)的Robert J.A11en于l997年提出的Wright系统。Wright是-种结构描述语言,该语言基于一种形式化的、抽象的系统模型,为描述和分析软件体系结构和结构化方法提供了一种实用的工具。Wright主要侧重于描述系统的软件构件和连接的结构、配置和方法。它使用显式的、独立的连接模型来作为交互的方式,这使得该系统可以用逻辑谓词符号系统,而不依赖特定的系统实例来描述系统的抽象行为。该系统还可以通过一组静态检查来判断系统结构规格说明的一致性和完整性。从这些特性的分析来说,Wright系统的确适用于对大型系统的描述和分析。
软件体系结构的建模研究
研究软件体系结构的首要问题是如何表示软件体系结构,即如何对软件体系结构建模。根据建模的侧重点的不同,可以将软件体系结构的模型分为5种:结构模型、框架模型、动态模型、过程模型和功能模型。在这5个模型中,最常用的是结构模型和动态模型。
(1)结构模型
这是一个最直观、最普遍的建模方法。这种方法以体系结构的构件、连接件和其他概念来刻画结构,并力图通过结构来反映系统的重要语义内容,包括系统的配置、约束、隐含的假设条件、风格、性质。研究结构模型的核心是体系结构描述语言。(2)框架模型
框架模型与结构模型类似,但它不太侧重描述结构的细节而更侧重于整体的结构。框架模型主要以一些特殊的问题为目标建立只针对和适应该问题的结构。
(3)动态模型
动态模型是对结构或框架模型的补充,研究系统的大颗粒的行为性质。例如,描述系统的重新配置或演化。动态可能指系统总体结构的配置、建立或拆除通信通道或计算的过程。这类系统常是激励型的。
(4)过程模型
过程模型研究构造系统的步骤和过程。因而结构是遵循某些过程脚本的结果。
(5)功能模型
该模型认为体系结构是由一组功能构件按层次组成,下层向上层提供服务。它可以看作是一种特殊的框架模型。
这5种模型各有所长,也许将5种模型有机地统一在一起,形成一个完整的模型来刻画软件体系结构更合适。例如,Kruchten在1995年提出了一个4+1的视角模型。4+1模型从5个不同的视角包括逻辑视角、过程视角、物理视角、开发视角和场景视角来描述软件体系结构。每一个视角只关心系统的一个侧面,5个视角结合在一起才能够反映系统的软件体系结构的全部内容。4+1模型如图1所示。
图1 4+1模型
发展基于体系结构的软件开发模型
软件开发模型是跨越整个软件生存周期的系统开发、运行、维护所实施的全部工作和任务的结构框架,给出了软件开发活动各阶段之间的关系。目前,常见的软件开发模型大致可分为三种类型:
(1)以软件需求完全确定为前提的瀑布模型。
(2)在软件开发初始阶段只能提供基本需求时采用的渐进式开发模型,如螺旋模型等。
(3)以形式化开发方法为基础的变换模型。
所有开发方法都是要解决需求与实现之间的差距。但是,这三种类型的软件开发模型都存在这样或那样的缺陷,不能很好地支持基于软件体系结构的开发过程。因此,研究人员在发展基于体系结构的软件开发模型方面做了一定的工作。例如,为了形象地表示体系结构的生命周期,北京邮电大学的周莹新博士建立了一个软件体系结构的生命周期模型,该模型如图2所示。图2 软件体系结构的生命周期模型
软件产品线体系结构的研究
软件体系结构的开发是大型软件系统开发的关键环节。体系结构在软件生产线的开发中具有至关重要的作用,在这种开发生产中,基于同一个软件体系结构,可以创建具有不同功能的多个系统。在软件产品族之间共享体系结构和一组可重用的构件,可以增加软件工程和降低开发和维护成本。
一个产品线代表着一组具有公共的系统需求集的软件系统,它们都是根据基本的用户需求对标准的产品线构架进行定制,将可重用构件与系统独有的部分集成而得到的。采用软件生产线式模式进行软件生产,将产生巨型编程企业。但目前生产的软件产品族大部分是处于同一领域的。
中国电子商务发展的现状
中国电子商务始于1997年。中国商品订货系统(CGOS)、中国商品交易中心(CCEC)、虚拟"广交会"等大型电子商务项目在1997年相继推出,拉开了中国电子商务的序幕。1998年"首都电子商务工程"的展开和1999年"8848网上超市"的出现,标志着中国电子商务开始进入快速发展时期,中国电子商务由此"正式启动"。 据统计,目前全国已有4万家商业网站,其中网上商店700余家。电子商务项目大量推出,几乎每天都有各类电子商务咨询网站、网上商店、网上商城、网上专卖店、网上拍卖等诞生。电子商务应用与发展地域也由北京、上海、深圳等极少数城市,开始向各大中城市发展。据IDC预测,2000年中国大陆网上交易额将达4000万美元,到2003年将达38亿美元。 可以说,中国电子商务已经由表及里、从虚到实,从宣传、启蒙和推广阶段进入到了务实的发展实施阶段。 一、政府推进 环境改善 我国政府正全面、积极、稳妥地推进中国电子商务的发展。1998年以来,政府对电子商务的支持与协调力度明显增加。我国电子商务发展的总体框架(包括整体战略、发展规划、发展措施、技术体制标准以及相关法律法规)的推出,将会使电子商务有一个更加规范有序的应用与发展环境。不少地方政府也都对电子商务给予了前所未有的关注与支持,开始将电子商务作为重要的产业发展方向。 我国电子商务的法律环境依然亟待健全和完善。在中国电子商务法律问题上,应该注意在规范管理与鼓励创新之间求得平衡,既要看到规范电子商务发展的必要性,又要充分认识到电子商务不同于传统商务的特殊性,为中国电子商务的发展营造一个宽松而有序的法律环境。为此,政府应该做的工作是,制订政策鼓励电子商务的应用与发展,鼓励探索,鼓励创新,同时立即着手解决电子商务法律中的紧迫问题,如电子签名和电子合同的法律效力等。 二、制约瓶颈 开始突破 网上支付、实物配送和信用等作为电子商务系统工程中的重要环节,被视为制约中国电子商务应用与发展的"瓶颈"。1999年以来,网上支付"瓶颈"正在迅速得到解决。在这方面较为成功的,有"8848"网上超市提供的包括网上支付在内的多元化支付方式,有首都电子商城电子商务支付平台等。 实物配送在电子商务应用与发展中的重要性,已经得到电子商务业界人士的广泛认同和重视,并尝试以各种不同的方式予以解决。在这方面,出现了一些堪称突破的可喜进展,拥有我国最大传递网络的中国邮政加盟电子商务领域,一些专门为电子商务项目服务的专业配送企业也相继出现。 三、应用模式 日趋多元 在BtoC模式中,网上书店和网上商场在增加网上支付功能、完善各项服务后以更大的势头发展;网上拍卖、网上商城、网上邮购等面向消费者的电子商务网站大量推出。不少电子商务企业和工商企业开始酝酿企业间电子商务。证券电子商务也有所发展,"网上炒股"对于有些股民已经成为现实。 网络是一片独特的天空,中国国情又有其特殊性。怎样将结合Internet和中国国情,充分发挥电子商务的优越性,实现极富意义的电子商务技术和商务模式的创新,是摆在中国电子商务业界人士面前的一大课题。 四、内外融合 渐成大势 具有外资背景的电子商务企业和项目日益增加。其表现形式是双向的:既有海外风险投资直接进入国内的电子商务企业,也有国内企业通过海外上市吸收海外资金。在不少电子商务企业内,外籍或具有外资企业背景的高级管理人员显著增加。与此同时,海外电子商务企业开始直接进入中国市场。随着中国加入世界贸易组织的前景日趋明朗,基于超越国界的Internet的电子商务不可逆转地走上了世界经济一体化的道路。 五、存在问题 不容忽视 "商务为本"观念依然薄弱。中国电子商务是由主导信息技术的IT业界推动的,使得中国电子商务在发展之初就带有浓厚的技术倾向,"重技术、轻商务"的现象比比皆是。事实上,电子商务中的"电子"与"商务"的关是"皮"与"毛"的关系,电子是"毛",商务是"皮","皮之不存、毛将焉附"。电子商务企业有必要树立"商务为本"的观念,将目光转向工商企业和消费者的实际需求,以此其确立电子商务服务方式和电子商务解决方案。 企业和消费者电子商务意识有待加强。企业和消费者的电子商务意识不强严重制约着中国电子商务的发展。目前大多数国企还只习惯于传统的订货会,展销会等对面洽谈的方式,对于上网查询展示企业和产品感到很遥远。以天津为例,有近4000家国有企业具备上网条件。但是当第一批动员132个名牌企业被动员上网时,有回音的不到40家,有的企业甚至明确表示"不感兴趣"。 效益观念过于片面。存在着一种片面强调网络经济和电子商务的特殊性和神奇的力量,严重忽视现实或预期经济效益的倾向。不少电子商务企业或电子商务项目以风险投资收益为唯一目标,片面追求访问量,片面追求上市。此种一厢情愿的思路使很多电子商务企业在经营与发展上进退维谷、举步惟艰,面临极大的经营风险。 物流与信息化基础依然滞后。中国电子商务的顺利发展离不开诸如物流和信息化基础的进步和完善,这一点对主要由于技术推动而形成的中国电子商务应用与发展显得尤其重要。整个社会的物流现代化水平和信息化水平(如通讯网络、带宽、企业信息化等)需要大大提高,否则会继续阻碍中国电子商务的发展。
六、几大方面 应予重视 1、电子商务人才 中国目前从事网络行业的人数超过百万。中国电子商务的急剧发展,使得电子商务人才严重短缺。中国电子商务教育要尽快以各种形式大规模起步,为中国电子商务的发展培养出足够的合格人才。要特别重视培养兼备网络技术和商务知识的复合型电子商务人才 2、企业电子商务 迄今为止,企业间(BtoB)电子商务还没有大的进展。网络的普及使得企业间电子商务成为未来企业评估竞争力及生产力的依据,从企业间的供应链管理、直销、客户服务等,BtoC电子商务只是其中一环。没有良好的企业间电子商务体系,BtoC电子商务的发展也会受到制约,从而影响中国电子商务整体应用与发展。 3、证券电子商务 与其它所有行业相比,中国的金融、证券行业没有所谓"瓶颈"问题,相反却有着那么多的资金、市场和人才等有利条件,是最适宜"电子商务化"的。目前国内已有闽发、国泰君安、海通、华泰等证券公司开展网上交易。相信证券电子商务将在2000年有一个大的发展,成为中国电子商务最辉煌的一片天地。信息产业部计划与证监会共同研究制订网上股票交易法规,并将尽快对外公布实施。移动上网正在成为证券电子商务的又一契机,同样应予以重视。 4、电子商务软件和解决方案 据美国特尔斐集团最新报告,今后几年内全球电子商务软件的销售将有很大增长,市场销售额可望从目前的50亿美元增加到2002年的400亿美元。目前,在中国电子商务应用与发展中占支配地位的软件与解决方案,基本来自IBM等国外企业。无论为了发展适合中国国情的电子商务软件与解决方案,还是抓住巨大的市场机遇发展中国的民族软件产业,中国电子商务软件和解决方案的本地化、产业化都是刻不容缓的。
软件工程专业的发展过程
1960年代末期,计算机程序在复杂度、规模和应用领域等方面的增长引人注目,这导致上千亿资金花费在软件开发上,许多人的工作和生活依赖于软件开发的成果。软件产品帮助人们获得更高的工作和生产效率,同时也给人们提供一个更加安全、灵活和宽松的工作与生活环境。尽管有很多成功之处,许多软件产品在成本、工期、质量等方面存在严重问题。主要原因是:
软件产品是复杂的人造系统,具有复杂性、不可见性和易变性,难以处理。个人或小组开发小型软件非常有效的编程技术和过程,在开发大型、复杂系统时难以发挥同样的作用。
1968年在德国举行的NATO软件工程会议上,为应对“软件危机”的挑战,提出了“软件工程”的术语。这个时期有代表性的软件工程定义是“为了经济地获得在真实机器上可靠工作的软件而制定和使用的合理工程原则和方法”。
1972年IEEE学会的计算机协会第一次出版了《软件工程学报》。此后,“软件工程”这个术语被广泛用于工业、政府和学术界,众多的出版物、团体和组织、专业会议在它们的名称里使用“软件工程”这个术语,很多大学的计算机科学系先后设立软件工程课程。 软件工程早期的发展是理清软件工程过程的各种活动,提出软件生命周期的概念和软件开发的瀑布模型,制定软件生命周期中主要活动的质量标准。
1991年,ACM和IEEE/CS的计算教程CC1991专题组将“软件工程”列为计算学科的九个知识领域之一。
1980年代末到1990年代初,计算机硬件普遍采用大规模集成电路。在单主机计算模式下,基于瀑布模型的软件开发过程和结构式过程语言编程范型占主导地位。软件工程得到巨大的发展。以阶段论看待软件生命周期,给规范和规程的制定、工具研制、预算管理、工程核算、组织质量过程带来极大方便,基于瀑布模型的软件工程的研究在软件需求分析、软件设计、软件测试、软件质量保证、软件过程改进等多个子领域得到深化和扩展,形成了软件工程学科的雏形。 1970年代末期,美国制定研究生教育计划时采纳了IEEE/CS提出的、制定软件工程教程的建议,为软件工程教育打下了基础。
1980年代末和1990年代初,软件工程教育得到卡内基-梅隆大学软件工程研究所(SEI)的培育和支持。他们调查软件工程教育的现状;出版软件工程推荐教程;在卡内基-梅隆大学建立软件工程硕士教育计划;组织和推动软件工程教育者研讨会。
1993年,IEEE-CS和ACM为把软件工程建设成为一个专业,建立了IEEE-CS/ACM联合指导委员会。随后,该指导委员会被软件工程协调委员会(SWECC)替代。SWECC给出了“软件工程职业道德规范”、“本科软件工程教育计划评价标准”和“软件工程知识体”(SWEBOK)。SWEBOK全面描述了软件工程实践所需的知识,为开发本科软件工程教育计划打下了基础。
2004年8月,全世界五百多位来自大学、科研机构和企业界的专家、教授经过多年的努力,推出了软件工程知识体、软件工程教育知识体(SEEK)两个文件的最终版本,标志着软件工程学科在世界范围正式确立,并在本科教育层次上迅速发展。软件工程、计算机科学、计算机工程、信息系统、信息技术并列成为计算学科下的独立学科。 中国的软件工程基础技术研究始于1980年代初。当时,软件开发方法学成为研究热点。1980年在北京召开了中国首届软件工程研讨会,之后,许多高等学校和科研单位陆续开展了软件开发方法学、CASE工具和环境、面向对象技术等软件工程基础技术的研究。“软件工程核心支撑环境”,“软件工程技术、工具和环境的研究与开发(SEP)”等课题列入国家重点科技攻关项目,其科研成果代表了中国软件工程技术研究的水平。与此同时,部分高校面向研究生开设了软件工程课程,开始引进和编写软件工程教材。1984年和1985年,国家科委选择重点高校招收了两批(200人)软件工程硕士,为软件工程教育积累了经验。此后,高等院校开始为本科开设软件工程课程。部分高校从1988年开始试办软件工程专业(后来在学科调整时又归并到计算机科学与技术学科)。
1990年代,软件重用和软件构件技术成为研究热点,面向对象方法和技术成为软件开发的主流技术,软件过程研究及软件企业的过程改善受到广泛重视。随着软件工程技术的发展,高校又增设了面向对象技术,支持面向对象技术的Smalltalk语言、软件过程管理、软件测试技术、软件过程度量等课程,软件工程领域的教学内容不断丰富,教学时数不断增加,教学改革不断深入。
为适应中国经济结构战略性调整,实现软件产业和软件人才培养的跨越式发展,2000年发布了18号文件《国务院关于印发鼓励软件产业和集成电路产业发展的若干政策的通知》,2001年经教育部和国家计委批准,全国成立了35所示范性软件学院。各高校软件学院和计算机学院(系)为培养高层次、实用型、复合型、具有国际竞争力的人才,要求学生在思维创新的基础上,提高技术创新和工程创新能力,提高软件工程实践和软件工程管理能力。这有效地促进了中国软件工程学科的发展,中国软件工程教育开始走向成熟。
什么叫土地利用系统
土地利用系统是一给定的土地单元与特定的土地利用方式的集合。
从系统论观点来看,土地利用就是土地的自然因素系统与土地利用类型及土地利用方式的社会经济系统两者之间的物质交流、循环和生产在一块土地上的集合,即所谓土地利用系统。在一块小的单一的土地单元上一般可能是从事一种用途,即单一的土地利用方式形成较单一的土地利用系统。
但在一个区域,土地组合的类型较多,利用的方式也较多,甚至同一块土地类型的范围内,或同一块土地类型上的不同部位也会形成不同的土地利用类型,形成复合的土地利用方式。所以在一个一定的区域内,往往出现由功能各异而又相互联系的多种土地利用系统,进而集合而成为复杂的土地利用大系统。
什么是开发框架
做为一个程序员,在开发的过程中会发现,有框架同无框架,做起事来是完全不同的概念,关系到开发的效率、程序的健壮、性能、团队协作、后续功能维护、扩展......等方方面面的事情。很多朋友在学习搭建自己的框架,很多公司也在创建或使用自己的框架,网上开源的框架多如牛毛,每年新上线的各种框架也不知多少。而不停的重复造轮子,也让更多的朋友鸟枪换炮,越跑越快,工作效率越来越高。那么什么是框架呢?
什么是框架
度娘上说:框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法; 另一种定义认为,框架是可被应用开发者定制的应用骨架。前者是从应用方面而后者是从目的方面给出的定义。
互联网是个神奇的大网,框架也是一种模式,这里提供最详细的报价,如果你真的想做,可以来这里,这个手机的开始数字是一八七中间的是三儿零最后的是一四二五零,按照顺序组合起来就可以找到,我想说的是,除非你想做或者了解这方面的内容,如果只是凑热闹的话,就不要来了
可以说,一个框架是一个可复用的设计构件,它规定了应用的体系结构,阐明了整个设计、协作构件之间的依赖关系、责任分配和控制流程,表现为一组抽象类以及其实例之间协作的方法,它为构件复用提供了上下文(Context)关系。因此构件库的大规模重用也需要框架。
应用框架指的是实现了某应用领域通用完备功能(除去特殊应用的部分)的底层服务。使用这种框架的编程人员可以在一个通用功能已经实现的基础上开始具体的系统开发。框架提供了所有应用期望的默认行为的类集合。具体的应用通过重写子类(该子类属于框架的默认行为)或组装对象来支持应用专用的行为。
应用框架强调的是软件的设计重用性和系统的可扩充性,以缩短大型应用软件系统的开发周期,提高开发质量。与传统的基于类库的面向对象重用技术比较,应用框架更注重于面向专业领域的软件重用。应用框架具有领域相关性,构件根据框架进行复合而生成可运行的系统。框架的粒度越大,其中包含的领域知识就更加完整。
框架,即framework。其实就是某种应用的半成品,就是一组组件,供你选用完成你自己的系统。简单说就是使用别人搭好的舞台,你来做表演。而且,框架一般是成熟的,不断升级的软件。
简单来讲,软件开发框架可以理解为我们起楼房时,用梁+柱子+承重墙做起来的钢筋混凝土结构框架。而实现的软件功能,也就像在这个框架结构中所要实现的不同类型、功能的房子,比如停车场、商场、酒店、饭店、商住房......
功能强大,结构扎实的框架,可承载的类型就更多,适用性就更强。
不论是什么开发框架,都是为现实不同的业务功能而创建的。好的开发框架能提高企业的竞争能力,包括降低开发成本、提高产品质量、改善客户满意程度、控制开发进度等。同时,开发框架也是某一领域为实现某种业务的知识积累,它是一种持续性的活动,随着特定业务功能实现而创建,且跳出软件开发周期而存活。一个成熟的框架,不单单只是代码而已,它除了将某一领域业务的基础功能以代码的方式实现外,还必须编写对应的文档、模型、流程图、数据字典、开发使用说明.....等一系列的文档来支撑,这样的框架才更加成熟和健壮。
为什么要使用框架
软件系统随着业务的发展,变得越来越复杂,不同领域的业务所涉及到的知识、内容、问题非常非常多。如果每次都从头开发,那都是一个很漫长的事情,且并不一定能将它做好。团队协作开发时,没有了统一标准,大家各写各的,同样的重复的功能到处都是。由于没有统一调用规范,很难看懂别人写的代码,出现Bug或二次开发维护时,根本无从下手。(无框架不堪回首的黑暗日子请看前面章节的讲述)
而一个成熟的框架,它是模板化的代码,它会帮我们实现很多基础性的功能,我们只需要专心的实现所需要的业务逻辑就可以了。而很多底层功能操作,就可以完完全全不用做太多的考虑,框架已帮我们实现了。这样的话,整个团队的开发效率可想而知。另外对于团队成员的变动,也不用太过担心,框架的代码规范让我们能轻松的看懂其他开发人员所写的代码。
搭建框架时,我们要如何定位
是不是框架的扩展性、可移值性、功能越强大就越好呢?
好的框架是相对的,它都有自己特定的应用领域,合适才是最好。
个人觉得在实际开发中要根据具体情况来看的,因为功能越全面它的复杂度就越大,所需要的开发人员能力和技能就会要求更高,付出的成本也就最大。比如做一个还未发展起来的电商网就想 将系统做成像京东那样,直接用京东分模块分布式的框架来开发,那得怎么来组建这个团队?更不用说开发成本了。就算团队有能力做到,也没有那个必要这么去做,因为从成本预算和开发周期等方面来看,得不尝失,更多的可能项目还未完成公司就给拖垮了。
一般来说,一个中小型项目,1到5人左右的开发团队,使用一般的三层结构就可以了,不用去细想框架要分三层还是五层,每个层之间要怎么实现解耦,要用什么设计模式.....因为当今飞速发展的互联网时代,快才是王道,做一个中小型项目能用一周完成的,绝不能拖了一个月还未做完。人工与时间成本才是重点中 的重点,唯有快才能更好的生存下来并壮大。至于扩展功能、接口、分布式、并发、大数据......等等问题,实际上过早考虑太多并不是好事情,有经验的程序员在写这个框架时早已留下扩展方案或思路,而没到这一层次的开发人员你想再多也可能想不明白,还不如先做出来积累一定经验后再慢慢学习,慢慢升级框架。
当然也不是说设计框架时不用考虑高内聚低耦合,而是要根据自己的能力与经验来设计出自己能把控的框架出来。因为框架不是开发出来后就不再变动,它也需要不停的进行升级,将你所学到的新知识新技术融合到框架中,使它的功能更加强大,更加健壮。而对于自己不能把控的框架,在团队协作开发和上生产环境后,你就发现有一大堆的坑等着你去填埋,这种框架只能拿来先练练手,有空再慢慢完善。
框架通过小步快跑,不断的迭代升级来慢慢扩展的,当项目上生产环境后,根据新的需求和所碰到的问题,去不停的调整,最终越来越强大。所有框架都是从1.0版本到2.0、3.0......发展而来,而不是直接跳过最初版本到最终成熟版本。
所以说我们在创建一个框架时,必须根据我们当前个人的技术能力、团队成功技术水平、时间、投入成本、项目现状(规模与需求复杂程度)、以后的发展前景来决定所要开发的框架的最终设计方案。当然也不是说不能一步到位,心有多大世界就有多大,只要个人能力和团队能力配得上,老板资金成本雄厚,时间充足,直接上大项目使用超级框架也完全没有问题。
框架和设计模式
度娘上说:框架、设计模式这两个概念总容易被混淆,其实它们之间还是有区别的。构件通常是代码重用,而设计模式是设计重用,框架则介于两者之间,部分代码重用,部分设计重用,有时分析也可重用。在软件生产中有三种级别的重用:内部重用,即在同一应用中能公共使用的抽象块;代码重用,即将通用模块组合成库或工具集,以便 在多个应用和领域都能使用;应用框架的重用,即为专用领域提供通用的或现成的基础结构,以获得最高级别的重用性。
框架与设计模式虽然相似,但却有着根本的不同。设计模式是对在某种环境中反复出现的问题以及解决该问题的方案的描述,它比框架更抽象;框架可以用代码表示,也能直接执行或复用,而对模式而言只有实例才能用代码表示;设计模式是比框架更小的元素,一个框架中往往含有一个或多个设计模式,框架总是针对某一特定应 用领域,但同一模式却可适用于各种应用。可以说,框架是软件,而设计模式是软件的知识。
框架的主要特点和要求
1、代码模板化
框架一般都有统一的代码风格,同一分层的不同类代码,都是大同小异的模板化结构,方便使用模板工具统一生成,减少大量重复代码的编写。在学习时通常只要理解某一层有代表性的一个类,就等于了解了同一层的其他大部分类结构和功能,容易上手。团队中不同的人员采用类同的调用风格进行编码,很大程度提高了代码的可读性,方便维护与管理。
2、重用
开发框架一般层次清晰,不同开发人员开发时都会根据具体功能放到相同的位置,加上配合相应的开发文档,代码重用会非常高,想要调用什么功能直接进对应的位置去查找相关函数,而不是每个开发人员各自编写一套相同的方法。
3、高内聚(封装)
框架中的功能会实现高内聚,开发人员将各种需要的功能封装在不同的层中,给大家调用,而大家在调用时不需要清楚这些方法里面是如果实现的,只需要关注输出的结果是否是自己想要的就可以了。
4、规范
框架开发时,必须根据严格执行代码开发规范要求,做好命名、注释、架构分层、编码、文档编写等规范要求。因为你开发出来的框架并不一定只有你自己在用,要让别人更加容易理解与掌握,这些内容是非常重要的。
5、可扩展
开发框架时必须要考虑可扩展性,当业务逻辑更加复杂、数量记录量爆增、并发量增大时,能否通过一些小的调整就能适应?还是需要将整个框架推倒重新开发?当然对于中小型项目框架,也不必考虑太多这些内容,当个人能力和经验足够时水到渠成,自然就会注意到很多开发细节。
7、可维护
成熟的框架,对于二次开发或现有功能的维护来说,操作上应该都是非常方便的。比如项目要添加、修改或删除一个字段或相关功能,只需要简单的操作,十来分钟或不用花太多的工夫就可以搞定。新增一个数据表和对应的功能,也可以快速的完成。功能的变动修改,不会对系统产生不利的影响。代码不存在硬编码等等,保证软件开发的生产效率和质量。
8、协作开发
有了开发框架,我们才能组织大大小小的团队更好的进行协作开发,成熟的框架将大大减轻项目开发的难度,加快开发速度,降低开发费用,减轻维护难度。
9、通用性
同一行业或领域的框架,功能都是大同小异的,不用做太大的改动就可以应用到类似的项目中。在框架中,我们一般都会实现一些同质化的基础功能,比如权限管理、角色管理、菜单管理、日志管理、异常处理......或该行业中所要使用到的通用功能,使框架能应用到某一行业或领域中,而不是只针对某公司某业务而设定(当然也肯定存在那些特定功能的应用框架,这只是非常少的特殊情况,不在我们的考虑范围)。
急求一篇对团委学生会工作的建议书
三年前离开中国时,我在《给中国学生的一封信》中,与广大青年学生一道,讨论了一些大家共同关心的话题,并结合自己的学习和工作经历,就青年学生如何对待机遇、学业、工作、他人、自己等问题,阐述了我的个人意见。我提出诚信和正直、主动意识、交流和沟通、努力一生学习这几个个人素质方面值得中国学生高度重视,
在这三年,许多中国学生,经过电子邮件、讲座后的问答、座谈、和其他渠道(例如在电视节目“对话”中),常对我提到“如何成才”的问题。对于这个大家关注的问题,我整理了许多材料,集成这封“第二封信”。
在第一封信力所提到的个人素质或“价值观”是成材的必要的基础。但是,除了素质之外,成才同样的需要领导能力(leadership)。很多人误以为领导能力最重视的是天资、号召力、管理能力。但是,根据我个人的经验,和最近一些研究的结论,如果你想成为一名成功的领导,最重要的不是你的智商(IQ),而是你的情商(EQ)。最重要的不是要成为一个有号召力令人信服的领导,而是要成为一个有 “谦虚”、“执著”和“勇气” 的领导。
这“给中国学生的第二封信”是为那些希望不断提高自己,不断学习事业成功所必需的基本技能和领导艺术的人所写的。第一部分重申了《给中国学生的一封信》中讨论过的有关个人素质的话题;第二部分阐释了领导能力中最重要的情商;第三部分给出了卓越的领导所必须具备的、有别于普通人的基本特质。
如何提高个人素质
诚信和正直
一个人的人品如何直接决定了这个人对于社会的价值。而在与人品相关的各种因素之中,诚信又是最为重要的一点。微软公司在用人时非常强调诚信,我们只雇佣那些最值得信赖的人。去年,当微软列出对员工期望的“核心价值观”时,诚信(honesty and integrity)被列为一位。
在我发表“第一封信”后,曾经有一位同学问我:为什么一个公司要涉入员工的道德呢?我回答:这是为了公司自己的利益。例如,一位应聘者在面试时曾对我说,如果他能加入微软公司,他就可以把他在前一家公司所做的发明成果带过来。对这样的人,无论他的技术水平如何,我都不会雇用他。他既然可以在加入微软时损害先前公司的利益,那他也一定会在加入微软后损害微软公司的利益。
另外有一位同学看了“对话”后问我,为什么我会把诚信放在智慧之前呢?难道我们会去衡量员工的诚信和他们的智慧而给诚信更高的比重?其实,我们的衡量都在直接的工作目标上,并不会对诚信或智慧做直接的衡量。但是,作为第一“核心价值”,诚信是我们对员工最基本的要求。 我们根本不会去雇用没有诚信的人。如果一个员工发生了严重诚信的问题,他会被立刻解雇。
当一个公司这么重视诚信,员工一定更值得信赖。因此,公司对员工也能够完全信任,让他们发挥自己的才能。在微软公司,公司的各级管理者都会给员工较大的自由和空间发展他们的事业,并在工作和生活上充分信任、支持和帮助员工。只要是微软录用的人,微软就会百分之百地信任他。和一些软件企业对员工处处提防的做法不同,微软公司内的员工可以看到许多源代码,接触到很多技术或商业方面的机密。正因为如此得到公司的信任,微软的员工对公司才有更强的责任心和更高的工作热情。
培养主动意识
坦白地说,中国的学生和职员大多属于比较内向的类型,在学习和工作中还不够主动。在学校时,学生们往往需要老师安排学习任务,或是按照老师的思路做课题研究。在公司里,中国职员常常要等老板吩咐做什么事、怎么做之后,才开始工作。此外,许多中国人并不善于推销和宣传自己,这恐怕和中国自古以来讲求中庸的文化氛围有很大关系。
但是,要想在现代企业中获得成功,就必须努力培养自己的主动意识:在工作中要勇于承担责任,主动为自己设定工作目标,并不断改进方式和方法;此外,还应当培养推销自己的能力,在领导或同事面前要善于表现自己的优点,有了研究成果或技术创新之后要通过演讲、展示、交流、论文等方式和同事或同行分享,在工作中犯了错误也要勇于承认。只有积极主动的人才能在瞬息万变的竞争环境中获得成功,只有善于展示自己的人才能在工作中获得真正的机会。
客观、直接的交流和沟通
开诚布公的交流和沟通是团队合作中最重要的环节。人与人之间遮遮掩掩、言不由衷甚至挑拨是非的做法都会严重破坏团队中的工作氛围,阻碍团队成员间的正常交流,并最终导致项目或企业经营失败。
比如,在开会讨论问题的时候,与会的所有人员都应当坦诚地交换意见,这样才能做出正确的决定。如果某个人因为考虑到某些其他因素(比如不愿反驳上级领导的意见)而在会议上不敢表达自己的观点,一味地唯唯诺诺,会后到了洗手间里再和别人说“其实我不同意他的观点”,这种戴着假面具工作的人不但不能坚持自己的观点,还会破坏公司内部的沟通和交流渠道,对工作产生负面的影响。
微软公司有一个非常好的文化叫“开放式交流(Open communication)”,它要求所有员工在任何交流或沟通的场合里都能敞开心扉,完整地表达自己的观点。在微软开会时,大家如果意见的不统一,一定要表达出来,否则公司可能错过良机。当Internet刚开始时,很多微软的领导者不理解、不赞成花太多精力做这个“不挣钱”的技术。但是有几位技术人员,他们不断地提出他们的意见和建议,虽然他们的上司不理解,但是仍然支持他们“开放式交流”的权利。后来,他们的声音很快的达到比尔?盖茨的耳里,促成比尔改变公司方向,彻底支持Internet。从这个例子我们可以看到,这种开放的交流环境对微软公司保持企业活力和创新能力都是非常重要的。
彻底的开放式交流也有缺点。开放式交流有时会造成激烈的辩论甚至是争吵,而吵到气头上有时会说出不尊重别人的语言,会破坏人与人之间的关系。因此,微软公司的总裁史蒂夫?鲍尔默去年在微软的核心价值观中,提出我们要把这种开放式交流文化改进成“开放并相互尊重(Open and respectful)”。这要求我们在相互交流时充分尊重对方。当我们不同意对方的意见时,一定要用建设性的语言提出。
挑战自我、学无止境
从一名大学生到一名程序员,再到一位管理者,在软件人才的成长历程中,学习是永无止境的。在大学期间,我们要打好基础,培养自己各方面的素质和能力;工作以后,我们应当努力在实际工作中学习新的技术并积累相关经验;即使走上了管理岗位,我们也应当不断学习,不断提高自己。软件产业本身就是一个每天都会有新技术、新概念诞生,充满了活力和创造力的产业。作为软件产业的从业人员,如果只知道闭门造车、抱残守缺,我们就必然会落伍,必然会被市场淘汰。
许多中国学生喜欢与别人竞争,但这种竞争更多地表现为一种“零和游戏”,无法使自己和他人得到真正的提高。我建议大家最好能不断和自己竞争——不要总想着胜过别人,而要努力超越自我,不断在自身的水平上取得进步。
在学习的过程中,打好基础最为重要。从软件产业对人才的需求来看,我们必须学好数学和英语这两门基础学科。数学是所有工程科学的基础,无论是软件产品的开发,还是软件技术的研究,都要大量使用数学方法和数学原理。英文则是软件行业中的国际语言,要想了解国际上软件技术的发展趋势,掌握最新的研究成果,或是与国外同行进行技术交流,就必须掌握英文的听、说、读、写,能够在工作中熟练使用英文来解决问题。
情商和领导能力
同学们都希望增进自己的leadership skills(领导能力)。从我的经验和一些最近的研究结果看来,领导能力中最重要的是所谓的“情商”( EQ)。
智商(IQ)反映人的智慧水平,情商则反映了人在情感、情绪方面的自控和协调能力。在高新技术企业中,大家都知道智慧的重要,但是情商的重要性甚至超过了智商。我看过一篇文章,该文的作者调查了188个公司,他用心理学方法测试了这些公司里每一名员工的智商和情商,并将测试结果和该员工在工作上的表现联系在一起进行分析。经过研究,该文的作者发现,在对个人工作业绩的影响方面,情商的影响力是智商的两倍。此外,他还专门对公司中的高级管理者进行了分析。他发现在高级管理者中,情商对于个人成败的影响力是智商的九倍。这说明,智商略逊他人的人如果拥有更高的情商指数,也一样可以获得成功;反之,智商很高,但情商不足的人欠缺“领导能力”,很难成为一个成功的领导。
什么是情商?
在现代社会,如果你只知道智商而不晓得情商的话,你至少在意识上已经落伍了。许多心理学家早已明确地指出,单单使用智商的标准考察一个人在才智方面的表现,并不足以准确预测这个人在事业上可能取得的成就。为了全面考察个人能力,特别是考察个人在社会生活中的适应能力和创造能力,心理学家们提出了情商的概念。
情商主要是指那些与认识自我、控制情绪、激励自己以及处理人际关系等相关的个人能力。在情商所描述的各项能力因素中,自觉、同理心、自律和人际关系是四种对现代人的事业成败起决定性作用的关键因素。
智商是先天赋予的,但是情商是可以培养的。多花功夫理解和应用这四种情商的关键因素。除此之外,因为情商不是自己能看清楚的,我建议可多理解别人对你的看法、多吸取别人(尤其是情商高的人)的意见。
自觉
中国人常说,人贵有自知之明。这实际上是说,社会生活中的每个人都应当对自己的素质、潜能、特长、缺陷、经验等各种基本能力有一个清醒的认识,对自己在社会工作生活中可能扮演的角色有一个明确的定位。心理学上把这种有自知之明的能力称为“自觉”,这通常包括察觉自己的情绪对言行的影响,了解并正确评估自己的资质、能力与局限,相信自己的价值和能力等几个方面。
我的下属中有一个“自觉心”明显不足的人:他虽然有一些能力,但是他自视甚高,总是对自己目前的职位不满意,随时随地自吹自擂,总是不满现状。前一段时间,他认为我不识才,没有重用他,决定离开我的组,并期望在微软其他组中另谋高就。但是,他最终发现,自己不但找不到更好的工作,公司里的同事也都对他颇有微辞,认为他缺少自知之明,期望和现实相距太远。最近,他沮丧地离开了公司。接替他职位的人,是一个能力很强,而且很有“自觉心”的人。虽然这个人在上一个职位工作时不很成功,但他理解自己升迁太快,愿意自降一级来做这份工作,以便打好基础。他现在的确做得很出色。
简单地说,一个人既不能对自己的能力判断过高,也不能轻易低估自己的潜能。对自己判断过高的人往往容易浮躁、冒进,不善于和他人合作,在事业遭到挫折时心理落差较大,难以平静对待客观事实;低估了自己的能力的人,则会在工作中畏首畏尾、踟蹰不前,没有承担责任和肩负重担的勇气,也没有主动请缨的积极性。无论是上述哪一种情况,个人的潜力都不能得到充分的发挥,个人事业也不可能取得最大的成功。
有自知之明的人既能够在他人面前展示自己的特长,也不会刻意掩盖自己的欠缺。谈成自己的不足而向他人求教不但不会降低了自己,反而可以表示出自己虚心和自信,赢得他人的青睐。比如,当一个领导对某个职员说“在技术上你是专家,我不如你,我要多向你学习”的时候,职员不但认为这个领导非常谦虚,也一定会对这个领导更加信任,因为他理解自己的能力。
有自知之明的人在工作遇到挫折的时候不会轻言失败,在工作取得成绩时也不会沾沾自喜。认识自我,准确定位自我价值的能力不仅仅可以帮助个人找到自己合适的空间及发展方向,也可以帮助企业建立起各司其职、协同工作的优秀团队。有自知之明的人让人感觉他是一个自信、谦虚、真诚的人。
同理心
同理心(Empathy)是一个比较抽象的心理学概念,但解释起来非常简单:同理心指的是人们常说的设身处地、将心比心的做法。也就是说,在发生冲突或误解的时候,当事人如果能把自己放在对方的处境中想一想,也许就可以更容易地了解对方的初衷,消除误解。我们在生活中常说“人同此心,心同此理”,就是这个道理。
人与人之间的关系没有固定的公式可循,要从关心别人、体谅别人的角度出发,做事时为他人留下空间和余地,发生误会时要替他人着想,主动反省自己的过失,勇于承担责任。只要有了同理心,我们在工作和生活中就能避免许多抱怨、责难、嘲笑和讥讽,大家就可以在一个充满鼓励、谅解、支持和尊重的环境中愉快地工作和生活。
对于软件企业中的管理者来说,体现同理心的最重要一点就是要体谅和重视职员的想法,要让职员们觉得你是一个非常在乎他们的领导。拿我自己来说,我在工作中不会盲目地褒奖下属,不会动不动就给职员一些“非常好”、“不错”、“棒极了”等泛泛的评价,但是我会在职员确实做出了成绩的时候及时并具体地指出他对公司的贡献,并将他的业绩公之于众。例如,我会给部门内的全体职员发电子邮件说某个员工在上一周的工作中取得了出色的成绩,并详细说明他的工作成果,列举他的工作对于公司的重要价值,给出具体的表彰意见。这种激励员工的方式能够真正赢得员工的信任和支持,能够对企业的凝聚力产生巨大的影响。
同理心也是一种了解和认识他人的有效方法。我被调到新部门担任领导职位的时候,部门中有400多名员工,我都不认识。于是,我每周选出了10名员工,与他们共进午餐。在午餐时,我详细了解了每一个人的姓名、履历、工作情况以及他们对部门工作的建议。这些信息对于一个部门领导来说非常重要。在午餐会后,我立即根据这10名员工对部门的建议,安排部署相关的工作,并给这10名员工一一发回反馈意见,告诉他们我的处理方法。我的计划是在一个不长的时间里,认识并了解部门中的每一位员工,并在充分听取员工意见的基础上合理地安排工作。
自律
自律(Self-Regulation)指的是自我控制和自我调整的能力。这包括:自我控制不安定的情绪或冲动,在压力面前保持清晰的头脑;以诚实赢得信任,并且随时都清晰地理解自己的行为将影响他人。
自律对于领导者来说更为重要。作为软件企业的领导,要管理别人,要让下属信服,就要先从自我做起。这是因为,领导的做法通常是大家做事的目标和榜样,领导的每一次举手投足都会给下属留下深刻的印象,如果处理不好的话,可能会造成负面的影响。特别是当公司或团队处于危急时刻,需要领导带领大家克服困难、冲出重围的时候,如果领导表现得比职员还要急躁,翻来覆去拿不定主意,大家就会对领导丧失信心,公司或团队也会因此而走向失败。
有一次,我见过公司里的两个组即将被合并。第一个组的经理缺少自律,开会时对他的队伍说合并不是他的决定,他自己也不知下一步该怎么办。这个经理对未来没有信心,并猜测自己的队伍可能会被裁员。而第二个组的经理则在合并后告诉他的队伍这次合并对公司的好处。他也坦诚地说自己并不掌握所有的信息,但是他承诺会提醒上级尽快地做决定。并且,第二个经理还告诉大家他会尽其所能,帮助每一个员工安排最合理、最公平的出路。最后的结果是,第一个组的人很快就散了,他们的经理离开了公司,而第二个组的经理接管了合并后的机构。
自律必须建立在诚信的基础上。为了表现所谓的“自律”而在他人面前粉饰、遮掩自己的缺点,刻意表演的做法是非常不可取的。只有在赢得他人信任的基础上,严于律己、宽以待人,才能真正获得他人的尊重和赞许。
人际关系
人际关系包括在社会交往中的影响力、倾听与沟通的能力,处理冲突的能力、建立关系、合作与协调的能力,说服与影响的能力等等。
有些人在人际交往中的影响力是与生俱来的,他们在参加酒会或庆典的时候,只要很短的时间就能和所有人交上朋友。但也有些人并不具备这样的天赋,他们在社交活动中常常比较内向,宁愿一个人躲在角落里也不愿主动与人交谈。
我个人就缺乏人际交往的倾向。以前,我并不认为这有什么不妥,直到我遇到了一位非常具有个人影响力的经理为止。那个经理没有超人的智慧,但是他自称他认识了公司中几乎每一个有能力的人,并和其中的许多人成为了非常要好的朋友。我不知道他是怎么做到这一点的,但我很快就发现,他的这种能力对公司非常有用。比如,我需要在公司内部选拔一些职员到我的部门工作时,我就可以从他那里获得许多有关该职员的详细信息;与公司其他部门协调工作时,他的人际关系网也可以发挥非常大的作用。从那时起,我发现处理人际关系的能力对于一个人,特别是一个领导者来说非常重要,我开始特别注重培养自己在人际关系方面的影响力。
在技术研究和开发方面,沟通和说服的能力也至关重要。比如,我们开发出了一项先进的技术,要把它变成公司的产品。这首先要说服公司的决策层。我们必须细心准备我们的产品建议书,并通过精彩的演讲和现场展示让领导者相信我们研究出的技术对公司来说大有裨益,让决策层认为即将开发的产品可以在市场上取得成功。这些工作都需要我们具备处理人际关系、展示自己、影响他人的能力。
从优秀到卓越
在著名企业管理学家吉姆·柯林斯的《从优秀到卓越》(中信出版社,2002年)一书中,作者通过大量的案例调查和统计,讨论并分析了一家企业或一位企业的领导者是如何从优秀(Good)上升到卓越(Great)的层次的。柯林斯和他的研究小组耗费了10.5个人年,阅读并系统整理了6000多篇文章,记录了2000多页的专访内容,对1435家企业进行了问卷调查,收集了28家公司过去50年甚至更早的信息,进行了大范围的定性和定量分析,得出了如何使公司和公司的管理者从优秀跨越到卓越的令人惊异而振奋的答案。
根据吉姆·柯林斯得出的结论,优秀的公司和优秀的领导者很多,许多公司都可以在各自的行业里取得不俗的业绩。但如果以卓越的标准来衡量公司和个人的成绩,那么,能够保持持续健康增长的企业和能够不断取得事业成功的领导者都非常少。一位企业的领导者在成功的基础上,要想进一步提高自己,使自己的企业保持持续增长,使自己的个人能力从优秀向卓越迈进,就必须努力培养自己在“谦虚”、“执著”和“勇气”这三个方面的品质。
谦虚使人进步。许多领导者在工作中唯我独尊,不能听取他人的规谏,不能容忍他人和自己意见相左,这些不懂得谦虚谨慎的领导者也许可以取得暂时的成功,但却无法在事业上不断进步,达到卓越的境界。这是因为,一个人的力量终究有限,在瞬息万变的商业环境中,领导者必须不断学习,善于综合他人的意见,否则就将陷入一意孤行的泥潭,被市场所淘汰。比尔·盖茨就是一个非常谦虚的人。例如,他在每一次演讲结束后,请撰写演讲稿的人分析一下他的演讲有哪些不足之处,以便下一次改进。
执着是指我们坚持正确方向,矢志不移的决心和意志。无论是公司也好,还是个人也好,一旦认明了工作的方向,就必须在该方向的指引下锲而不舍地努力工作。在工作中轻言放弃或者朝三暮四的做法都不能取得真正的成功。微软公司在Windows 95操作系统取得了巨大的成功之后,比尔·盖茨仍然坚持发展企业级的Windows NT和Windows 2000操作系统。这是因为,他看到了企业级市场的广阔前景和微软在此方面的巨大潜力。经过几年的发展,微软公司的企业级操作系统终于在原本被Unix统治的市场上取得了成功,现在,包括个人操作系统在内的所有Windows产品都已经被构建在了更加安全、可靠的Windows NT架构之上。
成功者需要有足够的勇气来面对挑战。任何事业上的成就都不是轻易就可以取得的。一个人想要在工作中出类拔萃,就必须面对各种各样的艰难险阻,必须正视事业上的挫折和失败。只有那些有勇气正视现实,有勇气迎接挑战的人才能真正实现超越自我的目标,达到卓越的境界。正如马克·吐温所说:“勇气不是缺少恐惧心理,而是对恐惧心理的抵御和控制能力。”
结论
很多人认为,在IT和其他高科技领域内,西方人表现得更为出色,因此中国人只有吸取西方的企业文化才能获得一席之地。的确,IT产业内的一些新观点、新理念,与中国古老的东方文化之间确实有差异(例如,西方文化直截了当的沟通和主动参与的意识)。
不过,从本文中我们不难发现,成功所需要的一些最重要、最基本的素质大多还是中华的传统美德。在故宫里,我看到“正大光明”的匾额,其含义也就是“诚信和正直”;“学无止境”、“人贵有自知之明”、“将心比心”、“严于律己、宽以待人”都是中国历来推崇的道德观;人际关系更是在西方人公认在中国成功的秘诀;而最重要的“谦虚”、“执著”、“勇气”这三点则是中国传统文化的直接体现。因此,我认为中国人的EQ决不低于西方人,我对中国卓越的人才无比乐观。
在今天这个充满机遇和挑战的时代里,在软件产业这个高速发展、不断创新的领域内,只有那些不懈努力、善于把握自己、勇于迎接挑战的人才能取得真正的成功。我个人衷心地希望中国高新技术产业能够在新世纪中蓬勃发展,中国的人才能够在事业上不断取得成功,实现从优秀到卓越的跨越。
如何设置业务员的提成比较合理?
业务员的提成一事说来其实是一个公司内部管理中头等大事,业务,直接联系到整个公司的生存命脉.相信90%的公司业务员的手上或多或少都有公司中不少客户作为自己的私人客户(无疑这是跑业务的根本生存之道,当然,除了个别例外),行业中有句俗话:一个好的业务员是用钱堆出来的,这句话是没错的.业务员的提成应该直接与公司的利益挂钩,但是提成的合理情况也看这个业务员是否有这个资格拿这个钱,准确的来讲,我认为应该把核心业务员和普通业务员的待遇区分对待,为什么?虽然表面上看来,这样会带来负面的影响,但深入来看却可以改变无法平衡的现状,其改变方法可以分为以下几步、作为一个公司的老板
,需要区分开核心业务层及普通业务层,当然除了这,建议另设立一潜力业务层(顾名思义远期培养业务骨干,工资可以按公司普通员工给予、划分出核心业务层及普通业务层,激发团队竞争士气,毕竟都不是集团公司,还没有到团队业务合作的地步、但我相信这点没有多少公司的老板可以做到,如果说每月底薪+(基本业务量完成后)每笔业务利润5-10%的提成+年底公司基本花红上升10-20%的待遇.(仅供参考,但我认为核心业务员的提成必须与公司利润挂钩)而普通业务员可以这样每月底薪+完成基本任务量前提下,一倍底薪作为提成经过以上几点,应该可以比较清楚认识到业务员应如何提成了.业务员与公司的关系就如诸侯与朝廷,是抚或是剿?是中央集权还是诸侯朝贡?
微软的发展史
微软公司是世界PC机软件开发的先导,比尔·盖茨是它的核心。微软公司1981年为IBM-PC机开发的操作系统软件MS-DOS曾用在数以亿计的IBM-PC机及其兼容机上。但随着微软公司的日益壮大,Microsoft与IBM已在许多方面成为竞争对手。1991年,IBM公司和苹果公司解除了与微软公司的合作关系,但IBM与微软的合作关系从未间断过,两个公司保持着既竞争又合作的复杂关系。微软公司的产品包括文件系统软件(MS-DOS和Xenix)、操作环境软件(窗口系统Windows系列)、应用软件MS-Office等、多媒体及计算机游戏、有关计算机的书籍以及CDROM产品。1992年,公司买进Fox公司,迈进了数据库软件市场。
1975年,19岁的比尔·盖茨从哈佛大学退学,和他的高中校友保罗·艾伦一起卖BASIC语言程序编写本。当盖茨还在哈佛大学读书时,他们曾为MITS公司的Altair编制语言。后来,盖茨和艾伦搬到阿尔伯克基,并在当地一家旅馆房间里创建了微软公司。1979年,MITS公司关闭,微软公司以修改BASIC程序为主要业务继续发展。
1977年,微软公司搬到西雅图的贝尔维尤(雷德蒙德),在那里开发PC机编程软件。1980年,IBM公司选中微软公司为其新PC机编写关键的操作系统软件,这是公司发展中的一个重大转折点。由于时间紧迫,程序复杂,微软公司以5万美元的价格从西雅图的一位程序编制者帕特森手中买下了一个操作系统的使用权,再把它改写为磁盘操作系统软件(MS-DOS)。公司目前在60多个国家设有分支办公室,全世界雇员人数接近44,000人。
IBM-PC机的普及使MS-DOS取得了巨大的成功,因为其他PC制造者都希望与IBM兼容。MS-DOS在很多家公司被特许使用,因此80年代,它成了PC机的标准操作系统。到1984年,微软公司的销售额超过1亿美元。随后,微软公司继续为IBM、苹果公司以及无线电器材公司的计算机开发软件,但在91年后,由于利益的冲突,IBM、苹果公司已经与Microsoft反目。1983年,保罗·艾伦患霍奇金氏病离开微软公司,后来成立了自己的公司。艾伦拥有微软公司15%的股份,至今仍列席董事会。1986年,公司转为公营。盖茨保留公司45%的股权,这使其成为1987年PC产业中的第一位亿万富翁。1996年,他的个人资产总值已超过180亿美元。1997年,则达到了340亿美元,98年超过了500亿大关,成为理所当然的全球首富。
微软的拳头产品Windows98/NT/2000/Me/XP/Server2003成功地占有了从PC机到商用工作站甚至服务器的广阔市场,为微软公司带来了丰厚的利润:公司在Internet软件方面也是后来居上,抢占了大量的市场份额。在IT软件行业流传着这样一句告戒:“永远不要去做微软想做的事情”。可见,微软的巨大潜力已经渗透到了软件界的方方面面,简直是无孔不入,而且是所向披靡。微软的巨大影响已经对软件同行构成了极大的压力,也把自己推上了反垄断法的被告位置。连多年来可靠的合作伙伴Intel也与之反目,对薄公堂。2001年9月,鉴于经济低迷,美国政府有意重振美国信息产业,拒绝拆分微软。至此,诉微软反垄断法案告一段落。
微软的组织结构支持公司包括以下核心业务组:个人服务组(PSG):由集团副总裁Bob Muglia领导,致力于为个人用户和商业用户提供更容易的在线连接,并且为各种各样的设备提供软件服务。PSG包含了微软的个人.NET倡议、服务平台部、移动组、MSN的互联网访问服务、用户设备组以及用户界面平台部。
MSN和个人服务业务组:由副总裁Yusuf Mehdi领导,负责网络程序开发、业务发展以及MSN和微软其它服务世界范围内的市场和销售,包括:MSN eShop, MSN Carpoint, MSN HomeAdvisor, the MSNBC venture, Slate和MSNTV平台组,由集团副总裁Jim Allchin领导,负责在各个方面不断对Windows平台做出改进–例如把存储、通讯、消息通知、共享图象及听音乐等变为Windows经历的自然扩展。此外,本组包括.NET企业服务器组、开发工具部和Windows数字媒体部。
办公和商务服务组:由集团副总裁Jeff Raikes领导,负责开发提高生产力和商业流程的应用和服务。工作包括将功能完善且性能强大的Microsoft Office逐步演化为以服务于基础的产品。除Office部门之外,商用工具部门,包括bCentral和Great Plains的商用应用程序部门都将属于该部门。
全球销售、市场和服务组:由集团副总裁Orlando Ayala领导,集成了微软的销售和服务伙伴,以满足世界范围内微软用户的需要。这些用户包括:企业用户、中小型组织、教育机构、程序开发人员和个人用户。此外,本组包括微软产品支持服务、网络解决方案组、企业伙伴组、市场营销组织和微软全球三大地区的业务组织。
微软研究院(MSR):由资深副总裁Rick Rashid领导,负责对今天或明天的计算课题提出创造性的建议和解决方案,使计算机变得更加易于使用。同时负责为下一代的硬件产品设计软件,改进软件设计流程和研究计算机科学的数学基础。关于MSR更详细的信息可参见Microsoft Research Web page。
运营组:由总裁和首席运营官Rick Belluzzo领导,负责管理商业运作和全部的商业计划。包括公司的财政、行政管理、人力资源和信息技术部门。
微软公司(NASDAQ:MSFT, HKEx: 4338)是全球最大的电脑软件提供商,总部设在华盛顿州的雷德蒙市(Redmond,大西雅图的市郊)。公司于1975年由比尔·盖茨和保罗·艾伦成立。公司最初以“Micro-soft”的名称(意思为“微型软件”)发展和销售BASIC解释器。最初的总部是新墨西哥州的阿尔伯克基。史蒂夫·巴尔默(Steve Ballmer)是现在的首席执行官。
使得微软如此令人瞩目的原因有以下一些:
它是全球最大的电脑软件公司在经济学,它是一个惊人的网络外部性的例子它在操作系统和办公软件方面扮演着事实上的垄断者地位它使得它的创立者跻身于世界上最富有的人之列;特别是掌门人比尔·盖茨多年来位居世界首富任何公开买卖公司中,它有最大的公司市值多年来它官司不断,和业界其他公司的明争暗斗已经成为IT文化的一部分。
微软的产品微软生产的软件产品包括了很多的种类:
Windows -称为「视窗」的图形操作系统;它有很多版本。目前桌上版最新版本是Windows XP,服务器最新版本是Windows Server 2003。Windows几乎预装在所有的IBM兼容的个人电脑上。请参看Microsoft Windows的历史获取更多详细资料。
MS-DOS -微软公司的早期产品,它是一个命令行界面。早期的Windows版本要在MS-DOS下运行,但是到了Windows NT以及以后的产品已经可以脱离MS-DOS运行了,但基于用户因软硬件在Windows NT不能正常运作,微软同时间继续推出Windows 95, Windows 98, Windows Me在MS-DOS下运行的过渡产品。
Microsoft Office -它是微软公司的办公软件套件,根据版本不同可能包括Word(文字处理)、Excel(试算表)、Access(桌面数据库)、PowerPoint(幻灯片制作)、Outlook(个人邮件和日程管理)、Project(项目管理)和Publisher(电子排版)等软件。微软也为Apple Macintosh生产使用于苹果电脑的版本。
Internet Explorer -它是微软的网页浏览器。它是目前世界上使用最广泛的一种浏览器,从Windows 95开始,被设置为微软各版本的Windows的默认浏览器。它在Apple Macintosh上也可以使用。微软投资了四亿美元来把这种浏览器预装在苹果机上。
Microsoft FrontPage -它是一款所见即所得的网页编辑软件。
Windows Media Player -它是一个用于播放音频和视频的程序。
微软也生产一系列参考产品,例如百科全书和地图册,使用Encarta的名称。
微软还开发用于应用系统开发的集成开发环境,命名为Microsoft Visual Studio。目前已发布用于.NET环境编程的相应开发工具Visual Studio .NET。
游戏帝国时代(Age of Empires)微软模拟飞行(Microsoft Flight Simulator)微软模拟火车微软模拟货车Halo(Halo) halo2(Halo2)注:《光环》为Microsoft旗下工作室开发.「生态体系」
微软公司试图在其产品周围建立“生态体系”,以为其产品以及品牌增值。
网络产品1990年代中期,微软开始将其产品线扩张到计算机网络领域。微软在1995年8月24日推出了在线服务MSN(Microsoft Network,微软网络)。MSN是美国在线的直接竞争对手,也是微软其他网络产品的主打品牌。
1996年,微软以及美国的广播业巨擎NBC(国家广播公司)联合创立了MSNBC,一个综合性的24小时新闻频道以及在线新闻服务供应商。
1997年末,微软收购了Hotmail,最早以及最受欢迎的webmail服务商。Hotmail被重新命名为MSN Hotmail,并成为.NET Passport,一个综合登入服务系统的平台。
MSN Messenger是一个即时信息客户程序,由微软在1999年推出,是美国在线的AOL Instant Messager(AIM)及ICQ的主要竞争对手。
培训微软创立了多所培训中心,旨在训练出一批低成本、只精通微软产品的雇员。最著名的就是MCSE考核(全称“微软认证系统工程师”)。虽然MCSE确实认证对微软产品的熟悉程度,它却并不是一个工程师的考核。一些苛刻的评论人员将MCSE称作“必须咨询那些有经验的人”(“Must Consult Someone Experienced”)。
硬件产品虽然微软总体上是一家软件公司,它也生产一些电脑硬件产品,通常用来支援其特殊的软件商品策略:
早期的一个例子是微软鼠标,用来鼓励更多用户使用微软操作系统的图形用户界面(GUI)。由于使用GUI而不用到鼠标是很罕见的,因此鼠标的流行会帮助更多用户使用Windows。微软确立了IntelliMouse(中键带滚轮的鼠标)鼠标标准,新增的滚轮方便了用户在浏览网页时上下翻页。
微软还售卖游戏杆等游戏硬件产品。
公司还购买了互联网设备公司WebTV,以支援其MSN互联网服务。
2001年公司推出的Xbox游戏机标志着公司开始进入价值上百亿美元的游戏终端市场,这个市场之前一直由索尼公司(Sony)和任天堂(Nintendo)两家公司主导。
微软历史微软公司创立于1975年,公司创立初期以销售BASIC解译器为主。当时的计算机爱好者也常常自行开发小型的BASIC解译器,并免费分发。然而,由于微软是少数几个BASIC解译器的商业生产商,很多家庭计算机生产商在其系统中采用微软的BASIC解译器。随着微软BASIC解译器的快速成长,制造商开始采用微软BASIC的语法以及其他功能以确保与现有的微软产品兼容。正是由于这种循环,微软BASIC逐渐成为公认的市场标准,公司也逐渐占领了整个市场。此后,他们曾经(不太成功地)试图以设计MSX家庭计算机标准来进入家用计算机市场。
1983年,微软与IBM签订合同,为IBM PC提供BASIC解译器,之后微软又向IBM的机器提供操作系统。微软之后购买了Tim Patterson的QDOS使用权,在进行部分改写后通过IBM向市场发售,将其命名为Microsoft DOS。MS-DOS获得了巨大的成功。
PC硬件上运行的程序在技术上并不一定比其所取代的大型程序要好,但它有两项无法超越的优点:它为终端用户提供了更大的自由,而且价格更低廉。微软的成功也是个人电脑发展的序幕。
微软开发过多种软件产品,包括了:
操作系统程序设计语言的编译器以及解译器文字处理器、数据表等办公软件互联网客户程序,例如网页浏览器和电邮客户端等这些产品中有些十分成功,有些则不太成功。从中人们发现了一个规律:虽然微软的产品的早期版本往往漏洞百出,功能匮乏,并且要比其竞争对手的产品差,之后的版本却会快速进步,并且广受欢迎。今天,微软公司的很多产品在其不同的领域主宰市场。
微软花了大量的精力在市场营销以及产品开发中的可重用工程,并且试图将其产品进一步组合,以提供用户一贯的开发环境。
微软也试图将Windows这个著名品牌扩展到其他领域,例如用于PDA的Windows CE以及「支持Windows」的Smartphone产品。
公众看法很长一段时间内,微软被广泛认可为一个计算机软件市场上的“乖小孩”,提供低廉的软件以取代原先价格高昂的主流UNIX产品。微软也因赚入大笔钞票而受到钦佩。
然而,即使是在早期,微软被指责故意将其MS-DOS与竞争对手生产的Lotus 1-2-3数据表无法兼容。到90年代,微软是“坏小孩”的看法日益增多。主要的批评意见是他们利用在桌上电脑市场上的优势不公平地剥削用户。
最近几年,有人指责微软涉嫌一系列合法性受怀疑的商业行为。
垄断问题微软的Windows产品有效地垄断了桌面电脑操作系统市场。那些持上述看法的人指出,几乎所有市场上出售的个人电脑都预装有微软的Windows操作系统。
一些观察家声称,微软作为一个垄断企业令其竞争对手处境窘困:
一方面,竞争对手不愿意承认微软的垄断地位。因为在一个被垄断的市场,只有一家产品或服务的提供商。因此对竞争对手而言,将微软称为垄断者会将自己置于一个失败者的境地:这样作等于是否定了自己的存在,或否定了自己能够生存、竞争的能力。
另一方面,竞争对手又希望将微软比作垄断企业,因为这样做会给自己带来好处。首先,这有可能导致市场管理者(政府)的介入。其次,被看作是“落水狗”的微软竞争对手有可能在公共关系上取胜,以刺激销售。
无论微软是否是垄断企业,我们可以肯定的是:
在多数微型电脑软件市场,微软是主导企业。这种主导引发很多的不满。
这种不满不仅仅只存在于竞争对手中间。
微软垄断地位的滥用有人批评认为微软试图利用其在桌上计算机操作系统市场上的垄断地位来扩大其在其他市场上的市场份额,例如网页网页浏览器(Internet Explorer),服务器操作系统(Windows NT),办公软件(Microsoft Office),多媒体播放软件(Windows Media Player)。
在微软将Internet Explorer与Windows操作系统捆绑销售后,微软在浏览器市场获得了非常大的份额。正是部分由于这种行为,微软被美国联邦法庭裁定滥用其在美国的操作系统市场的主导优势。(详情参见微软反垄断案)。
在所有这些指控中,微软以满足客户需求为由为自己辩护。
也有人批评微软的“包围再扩展”(embrace and extend)的策略。微软试图在开放、已确立的标准之上加入专利功能,以最终达到利用其市场优势来控制“扩展”的标准。有些人将这种策略称之为“包围、扩展再毁灭”(embrace, extend and extinguish)。
安全性2002年,微软的多项网络以及互联网相关的产品在多次出现安全漏洞后被广受讨论。一些恶意的程序员不断利用微软软件的安全漏洞搞破坏,例如通过互联网创造及发布能够消耗系统资源或破坏数据的蠕虫、病毒以及特洛伊木马。这些破坏行为一般的目标是微软的Outlook以及Outlook Express电邮客户程序,Internet Information Server(IIS)网页服务器,以及SQL Server数据库服务器软件。微软辩解说由于其在互联网软件市场上的领导地位,自然而然的微软的产品会遭到更多的攻击,因为这些微软产品被广泛使用。而有人则反驳说这些攻击也对准那些微软并不占优势的产品,显示微软的产品要比其竞争对手的产品在安全性上要低一筹。
在一些案例中,微软的产品为了让新手更容易使用、设置往往导致了这些蠕虫及病毒的散播。例如,微软的Windows操作系统自1995年起就自动隐藏文件后缀名(档案副档名),这样那些恶意攻击者往往就能够让email收信人打开一些看起来普通却十分危险的附件(最近版本的Outlook以及Outlook Express禁止接收危险的文件类型,这样用户便无法打开)。批评指出微软是在用软件的易用性交换安全性。
盖茨在2002年1月启动了可信赖计算计划(Trustworthy Computing Initiative)。他将其形容为一个长期的、全公司性的计划,以寻找并修正微软产品中的安全以及泄漏隐私方面的漏洞。在该计划下,公司会重新评估和设计原先的一些规范及过程,也延迟了Microsoft Windows Server 2003的上市时间。对可信赖计算计划的反应各不相同,有观察家表扬微软对安全问题的重视,但也提醒公司还有很多工作要做。
微软的政治影响力微软对这些法律威胁以及公众看法的反应就是紧凑的政治游说活动以及撒入上百万美元的政治捐款。根据政治反应中心(Center for Responsive Politics, opensecrets.org)网站的数据,微软在上一次的美国联邦选举的政治捐款中,43%给了民主党,57%给了共和党。
微软产品的优点微软产品的主要优点是它的普遍性,让用户从所谓的网络效应中得益。例如,Microsoft Office的广泛使用使得微软Office文件成为文档处理格式的标准,这样几乎所有的商业用户都离不开Microsoft Office。
微软的软件也被设计成容易设置,允许企业雇佣低廉、水准并不太高的系统管理员。微软的支持者认为这样做的结果是下降了的“拥有总成本”。
微软的软件对IT经理们在采购软件系统时也代表了“安全”的选择,因为微软软件的普遍性让他们能够说他们跟随的是被广泛接受的选择。这对那些专业知识不足的IT经理来说是一个特别吸引人的好处。
微软产品的缺点微软的产品十分倚赖软件的重用。虽然这样做对快速软件开发是十分有效的,它却导致了不同软件包之间的复杂倚赖关系。这可能导致的后果是,举个例子,当微软的浏览器程序崩溃时,会导致操作系统的GUI同样崩溃。
同样的倚赖关系也意味着大多数微软软件的资源能够在其他微软的产品上使用。也就是说,大多数程序可以运行其他程序,即使是在不应当发生类似情况时也是如此。例如,嵌入在电子邮件的文档和HTML中的宏可以运行程序,允许攻击者控制用户的电脑。微软在安全问题上的立场就是“不是禁止就是允许”(permitted unless forbidden)。
这些问题从专门攻击微软程序的蠕虫以及病毒的泛滥中就可见一二。
上面所提到的关于允许雇佣廉价却未有良好训练的系统管理员的优点有可能导致以下问题:
更大的不可靠性,意味着你需要雇佣更多的这类管理员;有可能导致安全漏洞,因为不管使用什么操作系统,只有受良好训练的系统管理员才可能提升系统安全性。
微软的批评者指出运行微软的产品需要花费更大代价,因为微软软件的用户事实上并不拥有他们所使用的软件:这对微软的商业模式是十分重要的。
微软与自由软件的关系微软将自由软件看作是它可能的主要竞争对手,特别是Linux。从万圣节文件(Halloween documents)中我们可以看到,微软已经对自由软件以及开放源代码软件采取了“包围、扩展、毁灭”的策略。
为了在桌上电脑市场上建立其领导地位,微软冒着失去低廉价格以及更多自由度——这正是个人电脑快速发展以及微软自身成功的重要因素——风险。单就价格层面而言,微软很难与自由软件相抗衡。很多相信微软并没有赋予他们选择自由的用户已经从自由软件那里找到了他们所渴望的自由已经开放标准。
传统的微软策略,例如购买竞争对手,或者FUD策略,对于自由软件而言毫无作用。因为自由软件无法被收购或控制,自由软件即使失去了创造它的公司也依然能够生存。
微软首席行政执行官史蒂夫·巴尔默已经将Linux称作一个“坚强的竞争力量……它是非传统的,自由的,而且很便宜。我们必须告诉人们,为什么他们所付(给我们的)其实物超所值。我们的产品曾经都很便宜。我们要比Novell,甲骨文都要便宜。但这次我们不能这样办。”(CRN.com报道,2002年6月17日)
巴尔默在一个微软伙伴的会议上说:“我们曾经十分自豪,自己提供最便宜的产品——我们的价格最低,提供的内容却最多,不论是Novell,Lotus还是其他任何人都比不过我们。但现在我们面临的,是一个独特的竞争对手,Linux。对我们这样的公司而言,这实在是一种新的思考方式。”(VARbusiness 2002年7月15日报道)
对于那些预装Linux的低廉个人电脑,微软的反应是他们不会降低Windows的销售价格。一些观察家指出,这种拒绝进行价格战的行为正是垄断企业的特点。
微软亚洲研究院1998年11月5日,微软公司在北京成立微软中国研究院,并于2001年11月1日将其正式更名为微软亚洲研究院。微软亚洲研究院是微软公司在海外开设的第二家基础科研机构,也是亚洲地区唯一的基础研究机构。
转载请注明出处51数据库 » 软件重用现状 软件体系结构的应用现状