转自robin
一。需求分析(抽象Use case + 分析Use case之间的关系)
分析软件需求,以用户的角度来使用软件,找出发生的scenerio,抽象成为一个一个Use Case,分析出Use Case之间的关系,这一步是非常重要的,这一步做好了,设计就成功了一半。Use Case的抽象有一些可以遵循的原则,这里不详细谈。
然后用语言描述每一个Use Case,描述用户使用一个Use Case发生的主事件流以及异常流。
这样就完成了需求分析阶段。
二。概要设计(找出实体 + 分析实体类之间的关系 + 提取控制类 + 画序列图)
接下来做概要设计,针对每个Use Case,读Use Case的描述,看事件流,找出所有的实体类,这也有一些可以遵循的原则,例如找出所有的名词,画表格排除等等方法。
然后分析实体类之间的关系,是包含,聚合还是依赖,是1:1,还是1:n,还是其他....,根据这些关系,就可以得出实体类和别的实体类想关联的属性,然后再找出每个实体类本身重要的属性。
然后再次分析Use Case的事件流,一方面check实体类的设计是否合理,另一方面你可以找出动词,分析对实体类的控制逻辑,这样就可以可以设计出业务控制类,一般你可以一个实体类一个控制类,也可以业务逻辑相关的实体类由一个Facade Session Bean(非EJB含义)来统一控制,这里面的控制类的颗粒度就由你自己来掌握了。一般来说先可以设计一些细颗粒度的控制类,然后再按照模块,用粗粒度封装细颗粒度的控制类,提供给Web层一个Facade。
然后你可以画序列图,就是用序列图来表达事件流,在这个过程中,你需要不断回到类图,给控制类添加方法,而序列图就是控制类的方法调用。
至此,你已经在Rose里面完成了概要设计,当然你不可能一次设计完善,会有很多次迭代,因此你不能一开始把类设计的太详细,只抓住主要的属性和方法,特别需要注意的是,是抽象的设计,不要用具体的编程语言来表达类。
三。实施(结合xdoclet和Schema工具自动生成代码)
然后你就可以抛开Rose了,转到Eclipse+Togehter里面,根据那些类,规划一下package层次,然后在Together里面进行类的详细设计,所有需要的属性一一写上,当然你还是不可能一下把所有的属性方法写全,不过没有关系,把重要的写好就行了。
然后类框架已经生成好了,给所有的实体类加上xdoclet,然后生成hbm,然后用Hibernate的ExportScheme生成DDL,运行一遍自动创建好所有的表。这样所有的实体相关类全部做好了。
你现在就集中精力把控制类那些方法里面的代码填写上就OK了,在这个过程,你会发现有些实体类缺属性,没有关系,加上属性,然后写好xdoclet,运行一遍,自动生成hbm,自动创建好表,然后继续写你的方法,也有可能你发现控制类缺方法,那么就加上。
基本上实体类就是getter/setter,和少量的实体相关方法,所有的控制逻辑都写在控制类里面。
最后你的软件就基本写好了,用Eclipse生成好一堆你的testCase运行测试,反复修改,除bug。
看看使用OOAD的设计思路,是多么的爽的事情阿!你只需要把精力放到Use Case的抽象,实体类的关系总结,控制类的归纳。而当你使用Eclipse+Together之后,你所需要写的代码只不过是控制类的方法实现代码,其他的都已经生成好了。另外可能需要写少量工具类。
分享到:
相关推荐
液压系统设计步骤
"控制系统设计步骤" 控制系统设计步骤是指在设计控制系统时需要遵循的一系列步骤,以确保控制系统的正确性和可靠性。本文将详细介绍控制系统设计步骤,并以煤矿地面生产系统为例,说明了控制系统设计步骤的应用。 ...
工资支付系统设计步骤 工资支付系统设计是一种复杂的系统设计,需要考虑多个因素,包括数据源配置、身份验证、连接配置等。下面我们将逐步介绍工资支付系统设计的步骤。 步骤一:配置 SQL Server 数据源 配置 SQL...
计算机控制系统设计原则与步骤, 计算机控制系统设计原则与步骤, 计算机控制系统设计原则与步骤, 计算机控制系统设计原则与步骤, 计算机控制系统设计原则与步骤, 计算机控制系统设计原则与步骤,
【地理信息系统设计与开发的步骤】是信息技术与地理科学相结合的重要领域,涉及到多个阶段和复杂的流程。以下是对这些步骤的详细解析: 1. 可行性研究:此阶段旨在确定建立GIS系统的必要性和可能性,主要通过现状...
PLC控制系统设计步骤设计实例
6. 清洁度传感器系统设计步骤 清洁度传感器系统的设计步骤主要包括Labview 编程解析、模拟仿真和Labview 与智能仪表通讯等几个方面。这些步骤可以帮助设计和实现一个高效的清洁度传感器系统。 7. Labview 编程解析...
二、交通信号灯的自动控制系统设计步骤 交通信号灯的自动控制系统设计的步骤包括: 1. 采用PLC控制 2. 根据动作时序图画出顺序功能图 3. 进行PLC地址分配 4. 完成PLC外围电路 5. 完成PLC程序设计 三、交通信号灯...
* 系统设计步骤包括总体方案确定、硬件电路设计、软件设计、调试和测试等。 * 系统设计步骤需要严格按照设计要求进行,以确保系统的稳定性和可靠性。 知识点八:参考文献 * 参考文献是设计文档的重要组成部分,...
系统设计步骤包括:系统需求分析、系统设计、系统实现、系统测试等。其中,系统需求分析主要是分析系统的功能需求和性能需求,系统设计主要是设计系统的架构和功能模块,系统实现主要是使用硬件和软件来实现系统,...
这一步骤是系统设计的基础,旨在理解机械、电气和液力元件间的相互作用及其对控制系统的要求。分析结果将被用来提出对PLC控制系统的具体控制要求,例如,对于精度、速度、稳定性和可靠性等。之后,需要确定控制方案...
课程设计的主要任务是设计和实现基于STM32的无线通信系统,包括硬件资源的选择和设计、软件资源的编程和调试、调试环境的准备和使用、系统设计步骤的实施等。 在该课程设计中,我们首先需要进行需求分析,了解系统...
该设计课题涵盖了硬件资源、软件资源、调试环境准备与使用、系统设计步骤等多个方面。 首先,我们需要了解课程设计的目的和要求。课程设计的主要目的是让学生掌握STM32微控制器的应用,学习无线通信系统的设计和...
本资源主要讲解任务综合布线工作区子系统设计的相关知识点,涵盖了综合布线系统工作区设计要求、综合布线系统工作区子系统设计要点、综合布线系统工作区子系统设计步骤等方面。 综合布线系统工作区设计要求 在设计...
下面仅对伺服系统设计的一般步骤和方法作一简单介绍。 伺服系统的结构组成 机电一体化的伺服控制系统的结构、类型繁多,但从自动控制理论的角度来分析,伺服控制系统一般包括控制器、被控对象、执
嵌入式系统设计步骤包括系统需求分析、体系结构设计、硬件/软件协同设计、系统集成、系统测试等步骤。这些步骤都是嵌入式系统设计的关键组成部分。 嵌入式系统硬件体系结构 嵌入式系统的硬件体系结构包括SOC、...
液压系统设计步骤并无严格的顺序,各步骤间往往要相互穿插进行。一般来说,在明确设计要求之后,大致按如下步骤进行: 1. 确定液压执行元件的形式 2. 进行工况分析,确定系统的主要参数 3. 制定基本方案,拟定液压...
计算机控制新版系统最小拍控制专业课程设计旨在培养学生的计算机控制理论和实践能力,涵盖了控制系统设计、控制算法实现、Simulink模拟、系统稳定性分析和控制系统设计步骤等方面的内容,为学生提供了一个系统的学习...
PLC 课程设计题目样本涵盖了 PLC 控制系统设计、PLC 控制应用场景、PLC 控制系统组成、PLC 控制系统设计步骤、PLC 编程语言、PLC 控制系统故障处理、PLC 控制系统安全性、PLC 控制系统网络通信、PLC 控制系统应用和 ...
本文叙述了在进行PLC控制系统设计时应该注意的事项。 一、硬件选购 目前市场上的PLC产品众多,性价比越来越高,可选范围越来越大,为此,我们在选购时应从下面几个方面综合考虑,合理选购PLC产品: 1.1、...