业务建模
业务模型具有重要意义,他不但是供软件分析人员了解企业内部工作流程的工具,而且可以发现企业的业务逻辑在信息化过程中存在哪些问题,需要做哪些改进,以加快信息化建设。
对业务逻辑进行分析,分析过程中产生业务逻辑模型,包括业务用例模型和业务对象模型。
识别业务用例,业务角色,业务对象等。
通过业务模型重用达到业务逻辑重用。
域模型
域模型的设计,包括如何从需求中识别出类,找备选类,决定候选类,并建立静态模型。
基于迭代开发决定域模型的例度,反映需求中的主要内容,可以随着项目进展不断细化。
域模型应用于持久化设计,数据库设计,R/O MAPPING 的设计。
用例建模
将系统按功能划分成子系统和模块,建立WBS(工作分解结构)。
识别参与者与用例,合并需求获得用例,以及用例的例度问题。
建立用例图需要注意的问题,用例描述的内容,详细程度,以及细化。
用包来管理用例。
建立需求规格说明书,功能需求重要,非功能需求同样重要,正确描述非功能需求,比如,不要用用户界面友好这类的含糊的描述,要用可测量的语言来描述,如客户学习使用该软件需要投入多少小时等。
需求验证方法,和客户交流,演示原型,给客户讲解需求模型等,需求规格说明书得到一致认可,并划定需求基线(不是里程碑),该基线严格受控,改进需求的流程,提交变更请求,评估,实施等。
分析
健壮性分析具有意义(正确性检查,完整性检查,持续发现对象),识别边界类、控制类、实体类,通过分析图,识别新的类,更新域模型,发现新的流程细化用例描述等。
对用例、场景、结构、状态进行分析,建立交互模型,以上述实体类,控制类和边界类,再引入基础类(J2EE等),进而进行架构设计。
注重架构,架构设计具有重要意义,多层分布式和多层非分布式的系统架构,分别有什么优势,劣势。选择什么样的技术实现更好。
如何选择合适的架构,需要考虑哪些方面(非功能方面:性能,安全,可移植,开放性等),如何权衡与折衷处理。
如何在健壮性分析后对域模型进行改进,形成最终的领域模型。
设计
架构设计,并将业务逻辑划分到实现类中,进行抽象,结合设计模式等。
R/O MAPPING映射的设计。
详细设计细化类的功能和职责,用设计模式设计等。
架构重构,架构迭代过程中需要考虑改进的方面,以及如何进行重构。
编码
需要注意编码规范、名称规范、各种不良编程习惯。建立统一的编程规范具有重要意义。
编写代码要符合OO的编程思想。
单元测试人员,测试用例的编写,测试用例质量的验证方法。语句,分支,覆盖测试,边界值划分等方法。
集成测试,关注类之间,模块之间的接口,并使用用例模型,分析模型来验证代码和功能,选择由谁来进行集成测试也很重要。
代码重构对于提高代码质量具有重要意义。
能力评估
对开发过程的各个阶段和工件进行评估,可从几个角度入手,一个是从成本,进度,质量,客户满意度方面考量;再一个从各个里程碑处的评审,还有阶段评审(迭代点或定时检查)。以及对整个过程的考量,是否执行得当(时间进度,工件完备程度),存在什么问题。
资产评估
对文档,模型及其他工件进行总结,主要是模型和文档的使用情况,改进情况进行分析,总结经验教训,结合案例,增加到组织的知识管理库中。
程序评估
程序架构评估包括整体的一致性,质量(是否符合OO,是否满足全部需求功能)。
程序质量评估程序的易读性,可修改性,可测试性,以及如何提高这些指标。组织规范的执行情况,执行的不好就要进行过程改进。