软件设计可以分为概要设计和详细设计两个阶段。实际上软件设计的主要任务就是将软件分解成模块是指能实现某个功能的数据和程序说明、可执行程序的程序单元。可以是一个函数、过程、子程序、一段带有程序说明的独立的程序和数据,也可以是可组合、可分解和可更换的功能单元。模块,然后进行模块设计。概要设计就是结构设计,其主要目标就是给出软件的模块结构,用软件结构图表示。详细设计的首要任务就是设计模块的程序流程、算法和数据结构,次要任务就是设计数据库,常用方法还是结构化程序设计方法。
软件开发平台源于繁琐的实践开发过程中。开发人员在实践中将常用的函数、类、抽象、接口等进行总结、封装,成为了可以重复使用的“中间件”,而随着“中间件”的成熟和通用,功能更强大、更能满足企业级客户需求的——软件开发平台应运而生。平台是一段时间研成果的汇聚,也是阶段性平台期的标志,为行业进入新的研发领域提供了基础。由于平台对企业竞争力的提升非常明显,国内的管理软件市场,软件开发平台的应用已经成为一种趋势。由于开发环境、开发人员、功能定位、行业背景等的不同,不同品牌的平台存在较大差别。
从管理的角度,即从业务和经济的角度来看,软件的生命周期包括四个主要阶段 [1] :起始阶段-- 有一个好的想法:具体构想出终于产品的设想和它的业务案例,确定项目的范围 。细化阶段--计划必要的活动和所需资源,具体确定功能并设计构架 。构建阶段(Ctruction)-- 构建产品, 发展初的设想、构架和计划,直到一个能够交付给用户的产品(完毕后的设想)完毕。移交阶段(Transition)-- 将产品移交用户使用,包含:制造、交付、培训、支持、维护,直到用户惬意。