在正式编码之前,需要对系统的架构、数据库等进行设计。
所谓设计,也就是思考如何去用代码实现。设计的好坏决定了代码的质量和最终产品的质量。
按照需求分析结果的脉络,在设计之前,肯定是先按不同的业务条线进行纵深方向的设计,即每条业务线的逻辑、流程、结构等等。再对所有的业务条线进行纵向的分析设计,即分析各条业务线之间的共同之处,这些共同点就是在这个项目中要复用的设计内容或代码。比如,多个业务条线对同一张数据表的操作,对同一界面的使用,等等。在进行横向分析时把这些复用内容都分析清楚了,代码就会变得清晰,不会再临近使用时再随意的增改。
由此看来,设计阶段的主要内容可以包括以下几个方面
1.根据需求业务的特点选择合适的开发语言、工具、框架、数据库、中间件等基础内容。
2.基于以上工具和框架,对每项需求内容进行分解,纵向分析。
3.对于每条业务线进行横向设计,提取共同点,确定公共模块或接口。
4.根据横向设计内容,进行公共模块或接口的详细设计。
5.确定编码阶段的各项规范,如代码规范、接口调用规范,等等。
在进行公共模块或接口的设计时,根据使用对象的不同,可以将这些公共内容分为两类:一类是面向开发人员的,即在编码时会用到的公共内容,如全局常量等等;一类是面向用户的,如根据不同的用户进行的个性化实施内容。对于前者,公共内容主要体现在代码层与配置文件层,对于后者,则需要为实施人员提供灵活的配置功能,以减少为不同用户实施时修改代码的几率。