步骤:
1.需求分析:需求分析有分为业务需求、用户需求、功能需求三种。
业务需求:反映了组织机构或客户对系统、产品高层次的目的要求,它们在项目视图与范围文档中予以说明。
用户需求:文档描述了用户使用产品必须要完成的任务,这在使用实例文档或方案脚本说明中予以说明。
功能需求:定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了业务需求。
2.软件设计概要设计:开发者需要对软件系统进行概要设计,即系统设计。
概要设计需要对软件系统的设计 进行考虑,包括系统的基本处理流程、系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为软件的详细设计提供基础。
业务需求和用户需求是软件需求分析的基础,也是软件构建的前提。
系统分析员通过对业务需求和用户需求的分解,将其转换成形式化描述的软件功能需求。
3.测试测试编写好的系统:在详细设计中,描述实现具体模块所涉及到的主要算法、数据结构、类的层次结构及调用关系,需要说明软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑,应当保证软件的需求完全分配给整个软件。
以便进行编码和测试。
4.培训及上线:开发软件系统最为困难的部分,就是准确说明开发什么。
这就需要在开发的过程中不断的与用户进行交流与探讨,使系统更加详尽,准确到位。
这就需要确定用户是否需要这样的产品类型以及获取每个用户类的需求。
详细设计在概要设计的基础上,开发者需要进行软件系统的详细设计。
软件系统可行性分析包括如下方面:
1.经济可行性:进行成本效益分析,从经济角度判断软件系统开发与运行是否合算。
2.技术可行性:进行技术风险评价,从开发者技术实力,以往工作基础,问题复杂性等出发,判断系统开发在时间,费用等限制条件下成功的可能性。
3.法律可行性:确定系统开发可能导致的任何侵权,妨碍和责任。
对于任何一个软件开发人员来说,架构师都是一个令人向往的角色。
就连世界首富比尔盖茨在2000年卸任公司CEO的同时,也担任了微软公司的荣誉角色“首席软件架构师”,可见“架构师”这一称谓的吸引力。
架构师是公司的“金领”,有着非常高的收入,很少需要考虑生存的问题,从而有更多的精力思考关键技术问题,形成“强者愈强”的良性循环。