软件开发人员如何成为软件设计师
2006-02-07 19:20:45
来源:星星生活

我们很多的软件开发人员 (Programmer/Developer) 在职业发展过程中,都会将软件设计师(Software Architect)作为自己的一个目标。因为设计师在一个软件产品和系统应用的开发中是一个举足轻重的角色,不但能够根据商业应用的需求对技术的应用能权衡利弊作出切实可行的设计方案,同时也会根据技术的应用条件对系统的功能产生影响。从职业角度看,设计师职位不仅具有一定的重要性,同时具有比普通的开发人员更多的挑战性。

一个系统设计的好坏是基于设计师对这个系统认知的深浅。 但将系统设计得尽可能地简单不是一件容易的事,这取决于设计师对该系统所在的领域(Domain)的行业知识、 设计方法、以及技术的了解程度。不必要的复杂性不仅会增加出错的可能性,也会增加系统的测试和维护的费用。正如墨菲法则(Murphy’s Law) 所说,在设计中,每增加一层复杂性,出错的可能性就会更加增大。

近年来,随着Java技术日益广泛使用,愈来愈多的开源项目的出现,以及愈来愈多的更有效的 RUP 的软件开发方法的使用,使得我们的软件项目开发有很多现成的框架和功能模块可以使用,不需要一切都从头开始,从而使编程实现的时间大大缩短了,但是,用于系统分析和设计(Elaboration)的时间却相对增多了。从另一个侧面也说明,现在的软件系统和应用对系统设计师在非技术领域的要求越来越高,系统设计师是一个公司的关键人物,一个好的设计师不仅要有很强的专业技术背景,而且对所在的领域的行业知识有深入的了解,同时也需要有很强的领导和交流沟通的能力。

在进行系统结构设计时,侧重点往往不在于具体详尽的设计和实现,而是分析和了解系统所需要实现的功能,并从实际的功能,应用对象,和应用环境出发,分析系统在非功能性的服务质量方面的切合实际的性能指标,然后才能基于具体的性能指标,制定出系统的总体设计方案和概要的设计。系统的非功能性的服务质量方面的性能指标包括有:可靠性,可用性,可伸展性,可维护性,可扩展性,运行速度,安全性,易管理性,易支持性,易移植性,易升级性和国际化支持等。显而易见,能综合满足这些性能指标越多的系统,它的质量当然也越高,相应地,它的开发成本也随之越高。但是,对于不同的项目来说,它在系统性能指标的需求的侧重点也会不一样,能够在考虑有限的资源和时间的条件下,设计出既符合功能需求又满足性能需求的系统是体现一个设计师的功力和造化。

做一个合格的软件设计师并不是一件容易的事,尽管有许多现成的技术和工具可以用,但也不一定能结合实际需求制定出一个合身得体的方案。在J2EE人才济济的今天如何能够傲立群雄,考取SUN Architect证书则成为重中之重,因为只有获取证书才能通过权威证明一个程序员在Java技术上掌握的程度和水平。美国CRN公司曾做过调查,拥有SUN Architect证书不仅仅可以获得更多的就业机会,而且拥有该证书的程序员的平均工资高于没有证书人员的37%。可见,取得SUN Architect证书将使您的职场生涯发生质的转变。

新概念“SUN Certified Java Architect证书班”已成功开设多期,堪称是多市IT培训界最著名的课程,通过讲解J2EE、UML、Design Pattern、OOAD等IT工作必备的技术,使您在短时间内真正融汇、贯通,到达另一种层次,论您是想找工作、考证书还是获得提升,这门课都会让您心想事成。

在广大朋友的强烈要求下,新概念决定于2月11日(周六)4:00pm再次推出“SUN Certified Java Architect证书班”新班公开课,地点: 45 Sheppard Ave East,Suite 510 ;新概念培训学院电话: 416-482-9558;网站:www.nctol.com。

(本文由新概念培训学院提供,授课老师:Mr.Jiang)

收藏

发表评论