软件开发中怎样有效地进行分析和设计

开发好的软件必然需要进行分析和设计。用文字的方式描述分析和设计成果的弊端在于太过灵活,难以规范,容易带来歧义,不直观。因此,出现了各种建模工具,如powerdesigner,即可拥有数据库建模,也可用于UML建模。采用建模工具的优点就是直观,含义明确,并可直接生成代码或脚本。

而不管是否采用工具,建模都是需要进行分析和设计的有效方式。基于领域模型的设计(DDD)带给我们一整套建模设计的方法论,在接触DDD之后,我恍然认识到,原来我们对需求和设计的复杂性的迷惑,是有前辈给我们探明解决之道的。

  • 在软件分析设计中,我们首先需要识别所工作的领域,尤其要识别核心域,并将核心域分析透彻。这样,我们才可以拥有核心竞争力。
  • 我们需要识别出用户,用户及其所在组织的业务。这可以通过建立业务模型来把握。
  • 通过业务模型,我们可以识别出可以采用软件来改进的地方,这便是软件系统的定位所在。
  • 用户在执行其业务的过程中,可以采用软件来为其提供什么样的功能,这便是用例,用例体现了软件的价值。软件最终要交付的其实就是用例。因此对用例的分析是分析过程的核心。
  • 软件的设计过程,其实就是实现用例的过程。设计的目标是保证用例实现的质量,并降低实现的成本。设计中追求的直接目标是可复用性。复用性高,则可降低成本。
  • 在分析和设计的过程中,充分运用工具会带来很多帮助。StarUML是一款小巧强大的UML建模工具。适合用来画各种分析、设计UML图。我在工作中,主要用到了用例图、时序图、类图、活动图、状态图、组件图、部署图。这些图形可以采用StarUML快速绘制。软件开发中怎样有效地进行分析和设计_第1张图片

你可能感兴趣的:(软件开发中怎样有效地进行分析和设计)