在万物成为“企业”之前,有一段时间,万物都是“结构化”的。大约20年前,结构化分析和结构化设计(SADT)以及CASE工具 promise 可以帮助许多IT专业人士。
当时的炒作-像其他任何炒作一样-来了又去了,我很惊讶地发现几乎没有SADT的痕迹。实际上,我相信应受如此的命运并没有那么糟糕。我特别喜欢它强调了系统的功能方面,即,您将清楚地了解系统产生的内容(无法使用SADT指定只写系统),该范例在函数式编程中也很普遍。
我的问题是:
最佳答案
“几乎不再看到SADT的痕迹” :关键字实际上是“虚拟”。我们的“现代”概念,例如“内聚性”和“耦合”,大部分来自SADT [Edward Yourdon-Larry L.Contantine]。从现代软件文献到旧的SADT文献,甚至还有一些有趣的引用。例如,肯特·贝克(Kent Beck)在他的《实现模式》一书的“书目”部分中说:
尤丹和君士坦丁在那本书中说:
Meilir Page-Jones说:
如今,在软件开发中,我们的目标仍然是相同的... :-)
为什么世界放弃了SADT?
好吧,我们比时尚行业有更多的变化:-)。
我们今天构建的系统和约束条件与二十多年前相比有所不同。我认为,当我们开始开发更多的“面向数据”的系统时,功能复杂性不再受到关注,诸如结构图-数据流程图之类的SADT实践对于某些系统来说“失去了”它们的效率。方法和表示。
但是实体关系图和数据字典的概念仍然存在。
有关Yourdon的有趣观点,请查看他的博客:Watching “agile”...
有趣的是,Yourdon仍在更新结构化设计 Material 。检查:
Modern Structured Analysis
什么取代了SADT?
好...对于面向对象的系统..
假设我们有责任驱动设计(在其中凝聚力和耦合仍然很重要),以便在我们的系统中找到最佳组件及其互连。
而且,UML通常为我们提供了很好的视觉思维工具,用于查找这些组件和关系。
现在,我们了解到软件开发是实验事件。
我们应该根据进化的要求进行迭代和增量开发。
似乎没有魔术般的“方法”可以像成功的“收据”那样遵循。
常规建模:
图-模型只是思维工具。
有一些尝试,例如MDA(模型驱动的体系结构),尝试自动从模型中生成可执行代码:因此,我们只需要对系统建模,然后一切都会自动生成。但是我们意识到这也不现实。现在,我们的重点更多地放在更加实用和现实的领域特定语言上。
关于architecture - 是什么代替了SADT?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16316399/