在软件开发的过程里,概要设计起到了桥梁的作用,它将需求分析和详细设计连接了起来。然而,有很多人对概要设计的职能以及操作方法都不太清楚,这正是我们今天需要去解决的问题。
概要设计的地位
在软件开发流程中,先通过需求分析得出“要解决什么问题”,接着概要设计才开始登场。此阶段所完成的《软件概要设计说明书》明确了软件的总体布局等关键内容。从时间顺序来看,该环节承接在需求分析之后,在整个开发流程中有着举足轻重的地位。例如,在开发一款在线教育软件时,需求分析确定了目标受众和功能要求后,概要设计就需要规划整体的模块布局。倘若很多开发团队不重视这个环节,那么后面的开发过程容易出现混乱。
很多人会把概要设计和详细设计弄混。概要设计主要侧重于整体架构方面,而详细设计则深入到每一个模块的内部。那些处于不同地点的开发团队,或许对这个概念的理解存在差异,然而其本质是不能偏离的。
《概要设计说明书》结构
它主要阐述了需求目标、环境以及局限等方面的内容,就如同一个故事的开头背景铺垫一样。比如在某个办公软件的开发过程中,其背景是办公效率较为低下,环境方面需要能够在多平台上使用,而局限则体现在成本的控制上。这些因素都是该软件开发的大前提。
在总体设计方面,从宏观的角度来介绍总体的构造等内容。就如同一款社交软件一样,对于总体的聊天功能、分享功能、点赞等功能的布局,以及模块之间的关系,都是由这个板块来负责进行勾勒的。
模块设计详谈
模块的描述如下:要明确各个模块分别承担哪些功能。以电商系统为例,下单模块的职责是对用户的购买行为相关功能进行处理。每一个模块就如同一颗螺丝钉,在整个软件机器中都有着独特的作用。
模块的层次结构。它可以用软件框架图来呈现。在游戏开发当中,角色动作、场景管理、任务系统等这些模块的层次结构是非常重要的。
如何使用概要设计
概要设计的一大用处是评价总体设计的可行性。例如设计一个交通调度 APP 时,可通过概要设计来评定其整体架构能否适应高并发等复杂场景。
检查模块的完整性是一个要点。在开发物流管理系统的过程中,概要设计能够起到这样的作用,即可以确保每一个功能都有相应的模块与之对应,像货物跟踪这个功能以及仓储管理这个功能,都不会缺少与之对应的模块。
容易陷入的误区
重视业务流程过度是个问题。一些开发者在进行外卖配送软件的概要设计时,对接单送单的流程过于纠结,而将整体架构设计忽视了,致使后续的开发出现了诸多问题。
过于关注细节的实现是不可行的。对于金融服务类 APP 的开发而言,大多时间不应将精力耗费在界面每一个按钮的细节实现上,而应当把目光聚焦在整体模块架构上。
最后的强调
明白概要设计的职能以及它的操作,能够使你在软件开发的过程中避免走弯路。你是否已经明晰软件概要设计的做法了?倘若觉得这篇文章对你有帮助,欢迎点赞并分享,同时也可以在评论区留下你的观点。