软件设计师是指能根据
软件开发项目管理和
软件工程的要求,按照系统
总体设计规格说明书进行软件设计,编写程序设计规格说明书等相应的文档的
实用性人才。还能够组织和指导程序员编写、
调试程序,并对软件进行优化和
集成测试,开发出符合系统
总体设计要求的高质量软件;具有工程师的实际工作能力和业务水平,可聘任工程师职务。2004年人社部将高级程序员更名为软件设计师
软件设计师考试属于
全国计算机技术与软件专业技术资格考试(简称计算机
软件资格考试)中的一个中级考试。考试不设学历与资历条件,也不论年龄和专业,考生可根据自己的技术水平选择合适的级别合适的资格,但一次考试只能报考一种资格。考试采用笔试形式,考试实行全国统一大纲、统一试题、统一时间、统一标准、统一证书的考试办法。
◇ 标准化意识,标准化组织机构,标准的内容、分类、代号与编号规定,
标准制订过程
软件设计师的工作,受到
系统架构师的影响。当系统架构师决定了整个系统架构后,软件设计师
会试着实作一个系统原型。
系统原型的目的,在于验证系统架构师提出的架构。当架构过于复杂,或
开发成本过高时,软件设计师必需要求系统架构师,修改提出的架构,因为在实务上,由于成本、技术等关系,是无法在经济的状况下达成。
软件设计师,必需对软件技术十分专长,也必需对客户的需求有一定程度的了解。在系统原型中,软件设计师会实作多个程式范型(Program Pattern),每个程式范型,对应到一种
客户需求的程式类型。
系统
原型开发成功后,后续的团队,就可以使用完成的程式范型,快速地将客户的需求,转化为系统程式。
“软件设计师”的概念,它与电子、机械、建筑行业的设计师有着同样的职责,可以只输出一种经过严格约束,并有着明显业务领域特色的设计说明与流程,而交给别人去实现,达到了很高的软件
生产效率。
大多数企业只是对“
系统分析员”与“
软件工程师”做了明显的界定,“系统分析员”的职责在不同的企业区别较大,其
工作范围涉及
需求分析、
功能设计、软件结构设计、接口设计等内容,有相当部分的“系统分析员”要承担一定程度的系统设计工作,但他们一般不参与编程与模块详细设计的工作;而绝大多数软件工程师则同时承担模块详细设计与编程的工作。