软件需求分析就是回答做什么的问题。它是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。本阶段的基本任务是和用户一起确定要解决的问题,建立软件的逻辑模型,编写需求规格说明书文档并终得到用户的认可。需求分析的主要方法有结构化分析方法、数据流程图和数据字典等方法。本阶段的工作是根据需求说明书的要求,设计建
手机软件开发公司

软件需求分析就是回答做什么的问题。它是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。本阶段的基本任务是和用户一起确定要解决的问题,建立软件的逻辑模型,编写需求规格说明书文档并终得到用户的认可。需求分析的主要方法有结构化分析方法、数据流程图和数据字典等方法。本阶段的工作是根据需求说明书的要求,设计建立相应的软件系统开发的体系结构,并将整个系统分解成若干个子系统或模块,定义子系统或模块间的接口关系,对各子系统进行具体设计定义,编写软件概要设计和详细设计说明书,数据库或数据结构设计说明书,组装测试计划。软件开发建立一个干净的内部结构对构建一个易于理解、可扩展和重组、并且可维护和可测试的系统而言至关重要。只有清晰认识系统架构,才有可能发现常见的抽象和机制。利用这种通用性终将使得系统更简单,因此也会更轻巧、更可靠。妥协软件系统的架构愿景会削弱并将终破坏系统,甚至是设计得尽善尽美的系统。拥有一个能够实现愿景和执行合规性的授权架构师有助于确保软件项目的成功。
软件开发者的工作不是“写代码”,而是解决业务问题,“采用的新框架”常常不能解决业务问题。我们与人一起工作,只是有时候写代码而已,所以人际关系是这份工作的重要组成部分。软件开发人员也是人,他们和所有人一样都会受到认知偏差的影响。可以读读关于认知偏差、FAE(fundamental attribution error,基本归因错误)、特别是Kahneman 的书。“别人”写的代码几乎总是无法理解或着写得很差,但并不总是因为代码真的写得不好。有时候这些“别人”就是过去的我们。
有时候在不改变代码的情况下也能解决问题。每一个新框架的出现,是因为前端开发者面临的问题我们没有理想的解决方案。每一个成功的新框架都有其之处,所以得想想“这个框架/库如何改变我们的工作”这个问题。
(作者: 来源:)