Why Do We Need Modeling?

Why Do We Need Modeling?

A successful software organization is one that consistently deploys quality software that meets the needs of its users. An organization that can develop such software in a timely and predictable fashion, with an efficient and effective use of resources, both human and material, is one that has a sustainable business.

一家成功的軟體公司要不斷地將符合客戶需求的軟體送交給客戶。而一家軟體公司要能以及時且可預期的方式, 透過人力和材料資源的有效運用來開發這樣的軟體,如此才是一家拥有可持续的軟體公司。

There's an important implication in this message: The primary product of a development team is not beautiful documents, world-class meetings, great slogans, or Pulitzer prize—winning lines of
source code. Rather, it is good software that satisfies the evolving needs of its users and the business. Everything else is secondary.

这个信息有一个重要的含义:开发团队的主要产品不是美丽的文档,世界级的会议,伟大的口号,或普利策获奖的 源代码。一套好的軟體應該要滿足使用者以及客戶的需求為主, 其他一切都是次要的。

Unfortunately, many software organizations confuse "secondary" with "irrelevant." To deploy software that satisfies its intended purpose, you have to meet and engage users in a disciplined fashion, to expose the real requirements of your system. To develop software of lasting quality, you have to craft a solid architectural foundation that's resilient to change. To develop software rapidly, efficiently, and effectively, with a minimum of software scrap and rework, you have to have the right people, the right tools, and the right focus. To do all this consistently and predictably, with an appreciation for the lifetime costs of the system, you must have a sound development process that can adapt to the changing needs of your business and technology.

不幸的是,很多軟體公司都將以上「次要」的工作,認為是「不必要」的工作。要建置一套系統以滿足該系統所欲達成的目的則必須與使用者不斷召開會議,並且要和使用者不斷地溝通協調,如此才可以發掘出這套系統的真正需求。为了开发持久质量的软件,您必须创建一个坚实可靠的建筑基础,以适应变化。而要以快速、有效的方式開發軟體,並降低軟體重製或再製的的成本的話,一定要不斷地以可預期的方式預估整個軟體專案生命週期所需花費的成本,您一定要有套好的軟體開發程序才可以應付企業和技術的不斷變更。

Modeling is a central part of all the activities that lead up to the deployment of good software. We build models to communicate the desired structure and behavior of our system. We build models to visualize and control the system's architecture. We build models to better understand the system we are building, often exposing opportunities for simplification and reuse. We build models to manage risk.

軟體塑模是建置一套好的軟體所有活動中最重要的核心部份。我们建立模型来传达我们系统的理想结构和行为。我们建立模型来可视化和控制系统的架构。我们建立模型以更好地理解我们正在构建的系统,经常会发掘出可以简化和重用的机会。我们通过建立模型来管理风险。


Other related article

其他相關文章

results for ""

    No results matching ""