Taming the Complexity Dragon

被引:12
|
作者
Jo, Henriksen [1 ]
机构
[1] Wolverine Software Corp, 3131 Mt Vernon Ave, Alexandria, VA 22305 USA
关键词
simulation; modeling; software design; software implementation; comlexity; validation & verification (V&V);
D O I
10.1057/palgrave.jos.4250029
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
This paper is an expanded version of a talk I gave at the 2006 Winter Simulation Conference, which is the premier annual conference in the discrete-event simulation community. Each year, the conference recognizes a 'titan of the industry,' and that person is invited to deliver a 1-h presentation at a plenary session. I was honoured the titan at the 2006 conference. Since this paper was written expressly for members of the simulation community, concepts and terminology peculiar to simulation are not explained. Readers lacking a simulation background may find some portions hard to understand. The goal of this paper is to present ways in which we can deal with complexity. I believe that the explosive growth of complexity is the computing industry's number one problem. It is the root cause of many other problems, such as computer security. Paradoxically, organizations that are in the best positions to deal with complexity are the ones that are, in fact, creating and expanding complexity. In the first section of this paper, I discuss the pervasive presence of complexity in our society in general, and in the simulation community in particular. Complexity is of particular importance to the simulation community, because reducing complexity is our primary activity. We analyse complex systems, build models of them, run the models, and draw inferences that yield more easily understood characterizations of system behaviour. Reduction of complexity lies at the very core of discrete-event simulation. In the second section, I develop a framework of software traits, of which complexity is the most important. I use the framework in succeeding sections to discuss the traits and to illuminate relationships among them. Following my discussion of the framework, I present four interesting examples of the kinds of complexity I've had to face as a software developer. Next, having discussed the evils of complexity, I present a sequence of 12 techniques for reducing, or at least coping with, complexity. Since model development is a form of software development, we all develop software in one way or another. Some of the techniques are most applicable to software development, while others are more general. Finally, I present my conclusions.
引用
收藏
页码:3 / 17
页数:15
相关论文
共 50 条
  • [1] Taming the dragon
    Lawrence, R
    EUROPEAN CHEMICAL NEWS, 1998, 69 (1820): : 22 - 22
  • [2] Taming the dragon in Dalmatia
    Anon
    Fire International, 2002, (199):
  • [3] Taming the Pedagogy Dragon
    Riggs, Connie J.
    JOURNAL OF CONTINUING EDUCATION IN NURSING, 2010, 41 (09): : 388 - 388
  • [4] Taming the silicon dragon
    Stevens, F
    Pion, PD
    SEMINARS IN VETERINARY MEDICINE AND SURGERY-SMALL ANIMAL, 1996, 11 (02): : 56 - 62
  • [5] TAMING THE SOFTWARE DRAGON
    STUDT, T
    R&D MAGAZINE, 1993, 35 (14): : 25 - &
  • [6] Taming of the casino dragon
    Jawad, Caroline
    Griffiths, Steve
    COMMUNITY WORK & FAMILY, 2010, 13 (03) : 329 - 347
  • [7] China - Taming the paper dragon
    Papercast, 2003, (193):
  • [8] Taming complexity
    Albert-László Barabási
    Nature Physics, 2005, 1 : 68 - 70
  • [9] Taming complexity
    Barabási, AL
    NATURE PHYSICS, 2005, 1 (02) : 68 - 70
  • [10] Taming Complexity
    Reeves, Martin
    Levin, Simon
    Fink, Thomas
    Levina, Ania
    HARVARD BUSINESS REVIEW, 2020, 98 (01) : 112 - 121