我认为移动应用程序是个好主意。该应用程序将包含本机移动应用程序,我将拥有一个后端服务器,它将执行各种功能 - 例如刷新数据源并将数据解析到数据库中,响应用户查询等。
在我开始编码之前,我想确保能够绘制出我需要的所有内容,以便确保我有我需要的方向。但是,我不确定我是否应该从类,活动或序列图开始。
我几乎知道前端应该如何工作,我有一些流程图显示了用户如何进行交互的基础知识,但是我想在后端工作并确保一切都是应该的方式。任何帮助表示赞赏!
EDIT 所以我认为我的主要问题是:我有一个应用程序的想法,并绘制了一个基本的流程图。我想在编码之前绘制出所有的进程和活动,这样我就能理解我需要什么对象和函数,以及一切应该如何交互。我的流程图非常简陋,并且有几个并发进程(即用户可以启动某些活动,但在后台服务器可能正在轮询第三方数据源,等等)。计划这个的最佳流程是什么?
答案 0 :(得分:2)
你有没有在没有UML的情况下做过一些软件开发?你做过分析,设计吗?
我问这是因为UML必须对软件方法做很少的事情。它只会为您提供一组视觉上的支持,以支持您的方法论,无论它们是什么。 UML提出了各种不同的图表,允许建模者描绘正在开发的系统的几乎所有方面。
如果您已经拥有自己喜欢的软件方法,特别是如果它适用于您,我建议只使用正式的建模符号和规范(UML)来丰富它,保持相同的过程和步骤。只有你知道你制作了什么样的规格,并且能给你带来好的结果。在这些步骤中使用UML,只更改规范的格式和而不是方法本身。
在学习UML图时,请关注每个图强调的内容(例如,在HW结构上的部署,在用户 - 系统交互上的UC,在协作对象和消息交换上的序列,在过程,任务和数据上的活动)流动等)。 根据您要表达的内容,选择适当的UML图表。
我的建议是慢慢地逐渐将UML纳入您的方法论并坚持坚实的基础。一次学习一两个图,而不是试图使用一切。如果你不确定是否要绘制图表 - 不要这样做。如果你错过了一些规范 - 制作图表。专注于你要展示的内容(内容),而不是使用什么图表(表单)。
答案 1 :(得分:1)
我将描述我们在项目中使用的agile modeling版本。我们正在构建一个大型应用程序(几千行代码),并且一个过程是绝对必要的。在一个小应用程序中,您可能会发现过度杀伤。另一方面,遵循该流程的所有步骤都具有教育意义,可以帮助您澄清系统的某些方面。任何建模技术都旨在帮助您,因此您应该选择您认为有用的任何内容并忽略其余内容。
希望它有所帮助。不要忘记,只选择有助于您构建更好代码的步骤和图表。这些图只有一个目的:帮助您(和您的团队)编写代码。
答案 2 :(得分:0)
尝试绘制Sequence diagram,但您需要完成。
1-数据流图是一个简单的行为图。
2-类图是一个结构图,将帮助您专注 你的申请结构。
然后你可以处理序列图(行为),如果你完成序列图,那么你已经准备好编码了,我建议你在开始编码之前不要去更详细的图表。