随着大型软件开发越来越多,整体把握软件架构变的越来越重要。需求并不明确的情况下,就要开始做软件,如何防止交付的软件产品和用户的要求差的很远,这就需要软件系统设计师进行恰当的设计。
在应用软件开发中,软件设计师担当承上启下的角色.也就是把用户的需求.基于应用的问题变成计算机系统中可以解决的问题。设计可以分为功能上的设计和技术体系上的设计,但在实际工作中,这两者很难区分清晰。软件设计师的周围也有很多角色,应用专家对应用需求分析了解的更深。还有技术平台的专家,因为尽管设计师对技术平台有一定的了解,但对于细节的内容还要请教技术平台专家的,还需要程序员做出原型并进行验证,通过反馈和评估不断完善。最终用户的反馈也是软件设计师非常重视的。作为应用软件开发中层顶层的角色,软件设计师的能力要求更强,除了具备更强的编程技巧能力外,还帚要了解系统结构、主流软件技术和软件趋势,同时要具备相当的专业知识。
(1)多年编程经验:既包括在专业领域的经验,也包括在软件工程领域的经验。对于一个构架团队,这些素质要求可由各团队成员来分别承担,但其中至少要有一名构架设计师能够把握项目的全局。和任何行业—样.经验是员重要的。软件设计不是纸上谈兵.一个软件设计师首先要是非常好的程序员。软件设计师在编程的时候,用的工具和普通程序员没有任何差别.但使用深度是绝对不—祥的。廖恒毅花了三天写了个处理表格的程序,因为考虑的很巧妙,代码不到一千行左右,但有人写只是画表格单元的代码就有二干多行.这就是经验的差距。做软件设计的时候,肯定要求是可实施和可5il试的,如果没有做过程序员,就无法保证这个设计可实施并进行测试。
(2) 抽象能力:一个程序员刚写程序的时候,无非就是为了解决某个功能而进行代码编写。随着程序编写越来越多,加密软件他对自己所做的应用方面的理解也越来越多。不同的企业有不同的需求,但把这些企业放在—起来看的话,就会发现他们的—些共性。将这些共性提炼出来,这就是抽象的过程。抽象出来的共性形成的模型可以把这些企业的需求都包含进去,这是做通用软件必须要走的一步。
(3) 面向对象的思想:面向对象是软件开发出现以来最伟大的创新之一,这是每个程序员都追求的,但是否真正辈握了面向对象的思想,这是需要探讨的。面向对象并不受开发工具和语言的限制。很多程序员在用c*l写面向对象的代码时候.实际上还是在写c代码。甚至使用co这种完全面向对象的语言写出来的还是流程化的程序。面向对象可以应用的领域非常广泛。不仅在写代码的过程中要考虑到面向对象,实际上在设计和分析阶段也可以用面向对象的方法。
(4) 舍得抛弃:软件设计是一个渐进过程.是通过不断碰壁,不断调整提高的。要想取得突破,就需要舍得抛弃o
(5) 领悟和突破:程序员技术成长一种是通过学习技巧而成长,一种是通过思想领悟而得到成长,后者更为重要。如果不能领倍开发的思想,仅仅攀提了技巧,一旦改换了平台和语言,又要从头学起,所以很多人在转型过程中失败了。而窜退了编程的思想,自动就移过去了。廖垣毅表示:语言本身从来不对我产生任何障碍.各种语言没有任何本质的差别,就像练武一样,刀背也可以当锤子用。。
以上就是由百范文网为您带来的软件设计师工作计划范文,想要了解更多详细内容请关注最新2017年室内设计师工作计划书
最新2017年平面设计师工作计划书