是什么取代了SADT?

时间:2013-05-01 10:22:39

标签: architecture analysis case-tools

在一切都成为“企业”之前,有一段时间,一切都是“结构化”的。大约20年前,结构化分析和结构化设计(SADT)以及CASE工具承诺为许多IT专业人员提供救助。

虽然当时的炒作 - 就像任何其他炒作一样 - 来了又走了,我惊讶地看到几乎没有SADT的痕迹了。事实上,我认为值得这样的命运并不是 。我特别喜欢它,它强调系统的功能方面,即你将清楚地了解系统产生什么(你不能指定只有SADT的只写系统),这是一个范例,它是在函数式编程中也是无处不在。

我的问题是:

  • SADT的现代等价物是什么?
  • 是否有UML绘图样式(上下文图除外)提供类似的抽象级别和可比较的细化可能性。
  • 你知道为什么世界放弃了SADT吗?
  • 您是否了解任何允许进行SADT的CASE工具,这些工具不仅仅是绘图工具,例如允许一致性检查的层次图

2 个答案:

答案 0 :(得分:7)

“几乎看不到SADT的痕迹”:关键字是“虚拟”。我们的“现代”概念,如“凝聚力”和“耦合”主要来自SADT [Edward Yourdon-Larry L.Contantine]。甚至还有来自现代软件文献的有趣参考资料旧的SADT文献。例如,Kent Beck在他的 Implementation Patters 一书的参考书目部分中说:

  

Edward Yourdan和Larry Constantine,结构设计,......,1979。

     

本书介绍了软件的物理定律   设计并讨论发展经济学的讨论。[   Kent Beck,实施模式]

在那本书中,雅丹和康斯坦丁说:

  

结构化设计是设计系统组件的艺术   这些组成部分之间的相互关系是最好的   方式。

Meil​​ir Page-Jones说:

  
      
  • 结构化设计使用工具,尤其是图形工具,使系统易于理解。 [Meilir Page-Jones-实用指南   结构化系统设计]
  •   

今天在软件开发方面,我们的目标仍然是......: - )

为什么世界放弃了SADT?

嗯,我们有比时尚界更多的变化:-)。

我们今天构建的系统和约束条件与二十多年前不同。我认为当我们开始开发更多“面向数据”的系统时,功能复杂性不那么令人担忧,SADT的结构图 - 数据流图这样的实践“失去了”它们对某些系统的效率。然后,面向对象的风格有了它自己的方法论和陈述。

但实体关系(ER)图和数据字典的概念仍然存在。

有关Yourdon的一个有趣观点,请查看他的博客:Watching “agile”...

有趣的是,Yourdon仍在对结构化设计材料进行更新。检查时间: Modern Structured Analysis

什么取代了SADT?

嗯......对于面向对象的系统..

假设我们有责任驱动设计[其中内聚和耦合仍然很重要],以便在我们的系统中找到最佳组件及其互连。 UML通常为我们提供了很好的视觉思维工具,可用于查找这些组件和关系。

现在我们知道软件开发是实验活动。 我们应该根据进化要求进行迭代和渐进式开发。

似乎没有神奇的“方法”,可以像成功的“收据”一样遵循。

一般建模:

图表 - 模型只是思考工具。

  

用UML或其他方法在纸上设计整个系统是不现实的   实际上,我们的真实模型是“源代码”,可以是   执行和测试。

有一些尝试,如MDA(模型驱动架构)尝试自动从模型生成可执行代码:所以我们只需要对系统建模,然后一切都将自动生成。但我们意识到这也是不现实的。现在,这只是一些工具供应商的梦想。现在我们更关注领域特定语言,这更加实用和现实。

答案 1 :(得分:0)

我使用C ++与SADT合作开发了一个新的气象卫星。我发现它对算法的功能方面(如问题中所述)的描述非常有价值。尝试使用搜索字词:“GOES-R SADT”查找:http://www.goes-r.gov/downloads/GUC-7/poster-sessions/4-06_Ivan_Pathfinder.pdfhttps://ams.confex.com/ams/91Annual/webprogram/Manuscript/Paper184496/SADT-UML-Extended-Abstract%28Submitted-20110223%29.pdf