第三个方向:信息工程监理服务

       信息工程监理服务是随着市场的要求,伴随着制定的《信息系统工程监理暂行规定》的推广而兴起的。在此之前,大家只知道一般的建设工程需要建立,虽然在软件项目中遇到了很多问题,但是,因为缺乏相关的法律法规,也没有办法进行信息系统工程的监理工作。

       软件项目因为期项目自身的特殊性决定了它与硬件项目的差异,因此它们的监理过程是不同的。硬件工程是在主体硬件设备已经完成的基础上进行安装测试试运行的过程,而软件工程则是在主体软件没有开发或者尚未开发完成的情况下启动的工程过程,因此两者有着生产制造过程的差异。

       其他工程项目的监理一般都是由监理公司完成的,而目前看来,这些监理公司大都没有有经验的软件技术人员的存在,因此无法完成信息系统工程进行有效可靠的监理工作。因此,信息系统监理工作必然需要一个组织化的形式出现,或者是在现有的监理公司内部形成这样的团队或部门。

       软件咨询公司是肯定可以扛起信息系统工程监理这杆大旗的。因为软件咨询公司的技术人员大都有着多年的软件项目经验,也有着对高新技术的掌握和控制能力。因此,软件咨询公司提供信息系统工程监理服务,也属于义不容辞的业务范围了。

       由此可以看出信息工程监理服务是站在甲方的立场上完成项目的方式。除了为甲方提供的信息系统工程监理服务外,作为监理服务的增值服务项目的规划建议,也将成为软件咨询公司的一个重要工作内容。软件咨询公司将通过前期的对整个项目的可行性研究工作,为甲方提供出关于这个项目的几年内的发展规划和技术应用建议。只有这样,在后期的监理服务中,软件咨询公司才能获取到更多的对用户业务知识和该项目发展状况的了解,来更好的完成对整个项目的监理服务工作。

       因此,信息系统工程监理服务包括两个业务方向:信息系统工程监理服务和可行性研究规划制定服务。

软件咨询中国实践

       2003年,Ivar创建了Ivar Jacobson International有限公司,专做软件咨询顾问业务。现在已经在全球四个有了分公司,新加坡、美国、瑞典、韩国。2005年3月,在CSDN举办的“技术主管圆桌会议”在线聊天活动中,Ivar谈到了他正在积极筹备的雅各布森中国公司。

       Ivar在新加坡和韩国开展咨询业务已经有近一年的时间了,业务增长速度非常快,现在遇到的问题是怎样能够控制发展速度的问题。谈到中国市场,Ivar并不认为在中国有很多UML或者统一过程的专家,更多是UML和UP的研究者,他们主要通过书本自学获得一些知识,然后通过自己摸索的实践取得一些经验。Ivar希望能把这些人招聘到他的中国公司,用原汁原味的思想培训他们,使他们成为真正合格的咨询师,然后到客户那里作咨询。Ivar坚信,雅各布森中国公司一定能够吸引一批的人员加盟,从而使公司获得成功。实际上,目前已经有相当多中国软件工程师在和雅各布森讨论如何合作,从而改进他们内部软件开发过程。

       面对国内目前很多UP、Use Case被误用的情况、甚至在实施的时候被裁减,Ivar指出,这也是他来到中国的目标,是要改变这种状况,帮助这些人正确的使用先进的思想,让越来越多的人能够正确的使用这种方法,使方法能够被项目所用。在雅各布森公司内部,已经不再引用“统一过程”(Unified Progress)这个词,更多讨论的是“统一基础”(Unified Foundation),在统一过程基础上做了一个非常大的简化。

       Ivar认为,永远不要低估开发软件中间所牵涉到的知识和技能,因为作为软件开发来说,是世界上复杂、高智力的集体活动。开发软件是如此复杂的一件事情,所以一定要有好的对实践的指导,这也是咨询公司的价值。

软件大师的咨询生涯

       同为软件大师的Ivar Jacobson和Gerald Weinberg,在职业生涯上有很多相似之处:在软件领域都有超过40年的工作背景;都曾在IBM工作过,后来离开IBM;都有一定数量的高端计算机著作,并因为在某一个领域的贡献而获得大奖;都是开始做开发,后来都转入咨询领域,做咨询师,并开办了自己的咨询公司……他们的咨询生涯或许对国内由开发转入做咨询的人有一定的借鉴意义。

       Ivar Jacobson博士被认为是深刻影响或改变了整个软件工业开发模式的几位大师之一。他是模块和模块架构,用例,现代业务工程,Rational统一过程等业界主流方法/技术的创始人。Ivar Jacobson博士与Grady Booch和James Rumbaugh一道共同创建了UML建模语言。

       1987年,Ivar成立了瑞典Objectory AB公司,之前曾任爱立信公司的首席软件体系架构师。1995年,Objectory AB被Rational收购,Ivar也进入Rational,担任Rational Business Engineering部门的副总裁,直到2003年Rational被IBM收购。

       离开Rational以后,Ivar主要从事的研究和活动主要集中在Active Software和AOP,写了新书,从事一些他个人非常喜欢的软件开发的研究。2003年,Ivar创建了Ivar Jacobson International有限公司,专做软件咨询顾问业务。现在已经在全球四个有了分公司,新加坡、美国、瑞典、韩国,今年正在筹备中国的咨询顾问公司。

       谈起如何走向咨询业的,其中还有一个小插曲。在Ivar创建咨询公司之前,他本人从来没有这个计划进入咨询这个行业,直到两年前,一家韩国公司找上门来,让Ivar来做公司顾问。Ivar在这家韩国公司里面,每当看到他们在产品设计和架构上,非常错误的运用用例、架构设计等技术,都忍不住像看到自己的孩子在外受欺负一样的要哭。在这期间,Ivar还发现,很多非常的软件技术,在全球很多地方在被错误地使用,没有让新技术真正发挥出作用,一方面,这让Ivar感到惋惜,另一方面,这实际上也证明有一个巨大的需求,需要有人来改变这种状况。Ivar因此而决定走进咨询领域。

       Ivar对软件咨询公司的定位是:在一个非常实用、非常接近现实的环境里,教会人们如何来正确的使用或正确的开发软件。“正确地做事”和“做正确的事情”一样重要,而一个好的开发过程或开发模式,应该同时回答了这两个层面的问题。

       Jerry的专业背景是物理学,但是他对计算机非常热衷。1956年他离开学校,去IBM做计算机工作,随后IBM支持他回到学校,在密歇根大学拿到了“通讯科学”(communication science)的博士学位。之后,Jerry又回到IBM工作,在研究院里做研究和给IBM的软件工程师授课。

       离开IBM后,Jerry开始逐步转向做系统开发,投入到美国海军空间项目中,并在项目中担任设计师的角色,负责设计美国空间轨道系统的架构。在多年的开发过程中,Jerry逐渐领悟到,软件开发的根本问题是人的问题,要解决人的问题,要去做人的工作。“编一行代码易,改一个人的脾气难。”在担任过软件开发员、系统设计师、软件项目经理、大学教授、培训师等多个角色后,Jerry和他的人类学家妻子Dani成立了Weinberg & Weinberg 咨询公司,来帮助软件工程组织以更彻底的人性的方式管理软件过程。Jerry也从此开始了他的独立咨询师和培训师的职业生涯,为那些来自美国、欧洲、澳大利亚、新西兰和中国的软件工程师提供培训和咨询服务。

       作为咨询顾问,Jerry对软件工程师的建议是:尝试着将自己知道的东西教给其他人,因为通过这种方式,你们的理解才会更加确切。尝试着将自己知道的东西记录下来,因为当你对某个事物还不是很了解的时候,写作可以使你的思维更加清晰。

       而对于所有咨询顾问,Jerry的建议是,在开始一项新任务时,要牢记住几条咨询法则:(1)无论客户和你说什么,问题始终存在。(2)无论问题初看起来怎样,它始终是人的问题。(3)不要忘记客户是按时间付费,而不是按你的解决问题的程度付费。(4)如果他们没雇佣你,不要为他们解决问题。