Knowledge

Computer-aided software engineering

Source đź“ť

158:, including IEW, IEF, ADW, Cayenne, and Learmonth & Burchett Management Systems (LBMS). The other trend that led to the evolution of CASE tools was the rise of object-oriented methods and tools. Most of the various tool vendors added some support for object-oriented methods and tools. In addition new products arose that were designed from the bottom up to support the object-oriented approach. Andersen developed its project Eagle as an alternative to Foundation. Several of the thought leaders in object-oriented development each developed their own methodology and CASE tool set: Jacobson, Rumbaugh, 301:
They provided multiple different design models as well as support for code in heterogenous languages. One of the main goals for these types of environments was "round trip engineering": being able to make changes at the design level and have those automatically be reflected in the code and vice versa. These environments were also typically associated with a particular methodology for software development. For example, the FOUNDATION CASE suite from Andersen was closely tied to the Andersen Method/1 methodology.
69:, initiated a great deal of interest in the whole concept of using computer systems to help analysts in the very difficult process of analysing requirements and developing systems. Several papers by Daniel Teichroew fired a whole generation of enthusiasts with the potential of automated systems development. His Problem Statement Language / Problem Statement Analyzer (PSL/PSA) tool was a CASE tool although it predated the term. 31: 309:
In practice, the distinction between workbenches and environments was flexible. Visual Basic for example was a programming workbench but was also considered a 4GL environment by many. The features that distinguished workbenches from environments were deep integration via a shared repository or common
265:
programming environment. It incorporates several development tools: a GUI builder, a smart code editor, debugger, etc. Most commercial CASE products tended to be such workbenches that seamlessly integrated two or more tools. Workbenches also can be classified in the same manner as tools; as focusing
97:
platform. While, at the time of launch, and for several years, the IBM platform did not support networking or a centralized database as did the Convergent Technologies or Burroughs machines, the allure of IBM was strong, and Excelerator came to prominence. Hot on the heels of Excelerator were a rash
326:
Unrealistic expectations: The proponents of CASE technology—especially vendors marketing expensive tool sets—often hype expectations that the new approach will be a silver bullet that solves all problems. In reality no such technology can do that and if organizations approach CASE with unrealistic
322:
Inadequate standardization: Organizations usually have to tailor and adopt methodologies and tools to their specific requirements. Doing so may require significant effort to integrate both divergent technologies as well as divergent methods. For example, before the adoption of the UML standard the
283:
Fourth generation: These environments are also known as 4GL standing for fourth generation language environments due to the fact that the early environments were designed around specific languages such as Visual Basic. They were the first environments to provide deep integration of multiple tools.
88:
capability. However, the active dictionary did not provide a graphical representation of any of the metadata. It was the linking of the concept of a dictionary holding analysts' metadata, as derived from the use of an integrated set of techniques, together with the graphical representation of such
330:
Inadequate training: As with any new technology, CASE requires time to train people in how to use the tools and to get up to speed with them. CASE projects can fail if practitioners are not given adequate time for training or if the first project attempted with the new technology is itself highly
304:
Process-centered: This is the most ambitious type of integration. These environments attempt to not just formally specify the analysis and design objects of the software process but the actual process itself and to use that formal process to control and guide software projects. Examples are East,
300:
system, and DEC Cohesion. These environments attempt to cover the complete life-cycle from analysis to maintenance and provide an integrated database repository for storing all artifacts of the software process. The integrated software repository was the defining feature for these kinds of tools.
287:
Language-centered: Environments based on a single often object-oriented language such as the Symbolics Lisp Genera environment or VisualWorks Smalltalk from Parcplace. In these environments all the operating system resources were objects in the object-oriented language. This provides powerful
279:
Toolkits: Loosely coupled collections of tools. These typically build on operating system workbenches such as the Unix Programmer's Workbench or the VMS VAX set. They typically perform integration via piping or some other basic mechanism to share data and pass control. The strength of easy
288:
debugging and graphical opportunities but the code developed is mostly limited to the specific language. For this reason, these environments were mostly a niche within CASE. Their use was mostly for prototyping and R&D projects. A common core idea for these environments was the
274:
An environment is a collection of CASE tools or workbenches that attempts to support the complete software process. This contrasts with tools that focus on one specific task or a specific part of the life-cycle. CASE environments are classified by Fuggetta as follows:
242:, etc. Lower CASE Tools support development activities, such as physical design, debugging, construction, testing, component integration, maintenance, and reverse engineering. All other activities span the entire life-cycle and apply equally to upper and lower CASE. 292:
user interface that facilitated keeping multiple presentations of the same design consistent with the underlying model. The MVC architecture was adopted by the other types of CASE environments as well as many of the applications that were built with
610: 334:
Inadequate process control: CASE provides significant new capabilities to utilize new types of tools in innovative ways. Without the proper process guidance and controls these new capabilities can cause significant new problems as
305:
Enterprise II, Process Wise, Process Weaver, and Arcadia. These environments were by definition tied to some methodology since the software process itself is part of the environment and can control many aspects of tool invocation.
284:
Typically these environments were focused on specific types of applications. For example, user-interface driven applications that did standard atomic transactions to a relational database. Examples are Informix 4GL, and Focus.
142:
The application development tools can be from several sources: from IBM, from vendors, and from the customers themselves. IBM has entered into relationships with Bachman Information Systems, Index Technology Corporation, and
92:
The next entrant into the market was Excelerator from Index Technology in Cambridge, Mass. While DesignAid ran on Convergent Technologies and later Burroughs Ngen networked microcomputers, Index launched Excelerator on the
153:
With the decline of the mainframe, AD/Cycle and the Big CASE tools died off, opening the market for the mainstream CASE tools of today. Many of the leaders of the CASE market of the early 1990s ended up being purchased by
49:(CAD) tools used for designing hardware products. CASE tools are intended to help develop high-quality, defect-free, and maintainable software. CASE software was often associated with methods for the development of 221:
Another common way to distinguish CASE tools is the distinction between Upper CASE and Lower CASE. Upper CASE Tools support business and analysis modeling. They support traditional diagrammatic languages such as
280:
integration is also one of the drawbacks. Simple passing of parameters via technologies such as shell scripting can't provide the kind of sophisticated integration that a common repository database can.
607: 296:
Integrated: These environments are an example of what most IT people tend to think of first when they think of CASE. Environments such as IBM's AD/Cycle, Andersen Consulting's FOUNDATION, the ICL
404:
Kuhn, D.L (1989). "Selecting and effectively using a computer aided software engineering tool". Annual Westinghouse computer symposium; 6–7 Nov 1989; Pittsburgh, PA (U.S.); DOE Project.
147:
wherein selected products from these vendors will be marketed through an IBM complementary marketing program to provide offerings that will help to achieve complete life-cycle coverage
266:
on Analysis, Development, Verification, etc. as well as being focused on the upper case, lower case, or processes such as configuration management that span the complete life-cycle.
637: 84:
held, the attributes of an application could be held within a dictionary and used at runtime. This "active dictionary" became the precursor to the more modern
323:
diagram conventions and methods for designing object-oriented models were vastly different among followers of Jacobsen, Booch, and Rumbaugh.
197: 456: 520: 483: 45:) is a domain of software tools used to design and implement applications. CASE tools are similar to and are partly inspired by 446: 289: 201: 183:
CASE tools support specific tasks in the software development life-cycle. They can be divided into the following categories:
370: 54: 250:
Workbenches integrate two or more CASE tools and support specific software-process activities. Hence they achieve:
208: 167: 310:
language and some kind of methodology (integrated and process-centered environments) or domain (4GL) specificity.
360: 428:"PSL/PSA a computer-aided technique for structured documentation and analysis of information processing systems" 642: 350: 94: 85: 564: 163: 66: 375: 214:
Metrics and measurement: Analyze code for complexity, modularity (e.g., no "go to's"), performance, etc.
46: 207:
Configuration management: Control the check-in and check-out of repository objects and files. E.g.,
187:
Business and analysis modeling: Graphical modeling tools. E.g., E/R modeling, object modeling, etc.
155: 122: 107: 162:, etc. Eventually, these diverse tool sets and methods were consolidated via standards led by the 584: 493: 355: 130: 50: 550:
Software Engineering: Tools, Principles and Techniques by Sangeeta Sabharwal, Umesh Publications
117:
of January 1990, over 100 companies were offering nearly 200 different CASE tools. At the time
318:
Some of the most significant risk factors for organizations adopting CASE technology include:
452: 365: 227: 191: 65:
The Information System Design and Optimization System (ISDOS) project, started in 1968 at the
190:
Development: Design and construction phases of the life-cycle. Debugging environments. E.g.,
576: 385: 432:
Proceeding ICSE '76 Proceedings of the 2nd International Conference on Software Engineering
614: 505: 380: 231: 170:(UML) is currently widely accepted as the industry standard for object-oriented modeling. 73: 239: 99: 541:"AD/Cycle strategy and architecture", IBM Systems Journal, Vol 29, NO 2, 1990; p. 172. 631: 345: 235: 144: 262: 121:
had proposed AD/Cycle, which was an alliance of software vendors centered on IBM's
588: 159: 114: 223: 415:
System Requirements Engineerinuality software which will perform effectively.
17: 427: 257:
Seamless integration of tools and toolchains (control and data integration)
81: 77: 217:
Project management: Manage project plans, task assignments, scheduling.
126: 30: 580: 103: 113:
CASE tools were at their peak in the early 1990s. According to the
297: 254:
A homogeneous and consistent interface (presentation integration)
98:
of offerings from companies such as Knowledgeware (James Martin,
134: 118: 72:
Another major thread emerged as a logical extension to the
448:
Database Systems: Design, Implementation, & Management
53:
together with automated tools that could be used in the
89:
data that gave rise to the earlier versions of CASE.
445:
Coronel, Carlos; Morris, Steven (February 4, 2014).
327:expectations they will inevitably be disappointed. 426:Teichroew, Daniel; Hershey, Ernest Allen (1976). 110:FOUNDATION toolset (DESIGN/1, INSTALL/1, FCP). 8: 638:Computer-aided software engineering tools 413:P. Loucopoulos and V. Karakostas (1995). 29: 558: 556: 397: 331:mission critical and fraught with risk. 102:and Don Addington), Texas Instrument's 619:FFIEC IT Examination Handbook InfoBase 501: 491: 451:. Cengage Learning. pp. 695–700. 200:: Analyze code and specifications for 565:"A classification of CASE technology" 7: 477: 475: 261:An example workbench is Microsoft's 608:Computer Aided Software Engineering 39:Computer-aided software engineering 563:Alfonso Fuggetta (December 1993). 25: 482:Inc, Ziff Davis (1990-01-30). 434:. IEEE Computer Society Press. 1: 371:Rapid application development 519:Yourdon, Ed (Jul 23, 2001). 80:. By extending the range of 55:software development process 198:Verification and validation 659: 168:Unified Modelling Language 361:Model-driven architecture 351:Domain-specific modeling 86:model-driven engineering 27:Domain of software tools 621:. Retrieved 3 Mar 2012. 521:"Can XP Projects Grow?" 314:Major CASE risk factors 164:Object Management Group 67:University of Michigan 35: 34:Example of a CASE tool 376:Automatic programming 290:model–view–controller 108:Andersen Consulting's 47:computer-aided design 33: 204:, performance, etc. 156:Computer Associates 123:Software repository 51:information systems 613:2012-01-20 at the 504:has generic name ( 488:. Ziff Davis, Inc. 356:Method engineering 36: 366:Modeling language 228:Data flow diagram 166:(OMG). The OMG's 16:(Redirected from 650: 622: 605: 599: 598: 596: 595: 581:10.1109/2.247645 560: 551: 548: 542: 539: 533: 532: 530: 528: 516: 510: 509: 503: 499: 497: 489: 479: 470: 469: 467: 465: 442: 436: 435: 423: 417: 411: 405: 402: 386:Build automation 232:Structure charts 21: 658: 657: 653: 652: 651: 649: 648: 647: 643:Data management 628: 627: 626: 625: 615:Wayback Machine 606: 602: 593: 591: 562: 561: 554: 549: 545: 540: 536: 526: 524: 523:. Computerworld 518: 517: 513: 500: 490: 481: 480: 473: 463: 461: 459: 444: 443: 439: 425: 424: 420: 412: 408: 403: 399: 394: 381:Test automation 342: 316: 272: 248: 240:Decision tables 181: 176: 74:data dictionary 63: 28: 23: 22: 15: 12: 11: 5: 656: 654: 646: 645: 640: 630: 629: 624: 623: 600: 552: 543: 534: 511: 471: 458:978-1285196145 457: 437: 418: 406: 396: 395: 393: 390: 389: 388: 383: 378: 373: 368: 363: 358: 353: 348: 341: 338: 337: 336: 332: 328: 324: 315: 312: 307: 306: 302: 294: 285: 281: 271: 268: 259: 258: 255: 247: 244: 236:Decision Trees 219: 218: 215: 212: 205: 195: 188: 180: 177: 175: 172: 151: 150: 100:Fran Tarkenton 62: 59: 26: 24: 14: 13: 10: 9: 6: 4: 3: 2: 655: 644: 641: 639: 636: 635: 633: 620: 616: 612: 609: 604: 601: 590: 586: 582: 578: 575:(12): 25–38. 574: 570: 566: 559: 557: 553: 547: 544: 538: 535: 522: 515: 512: 507: 495: 487: 486: 478: 476: 472: 460: 454: 450: 449: 441: 438: 433: 429: 422: 419: 416: 410: 407: 401: 398: 391: 387: 384: 382: 379: 377: 374: 372: 369: 367: 364: 362: 359: 357: 354: 352: 349: 347: 346:Data modeling 344: 343: 339: 333: 329: 325: 321: 320: 319: 313: 311: 303: 299: 295: 291: 286: 282: 278: 277: 276: 269: 267: 264: 256: 253: 252: 251: 245: 243: 241: 237: 233: 229: 225: 216: 213: 210: 206: 203: 199: 196: 193: 189: 186: 185: 184: 178: 174:CASE software 173: 171: 169: 165: 161: 157: 148: 146: 145:Knowledgeware 140: 139: 138: 136: 132: 128: 124: 120: 116: 111: 109: 105: 101: 96: 90: 87: 83: 79: 75: 70: 68: 60: 58: 56: 52: 48: 44: 40: 32: 19: 18:Back-end CASE 618: 603: 592:. Retrieved 572: 568: 546: 537: 525:. Retrieved 514: 484: 462:. Retrieved 447: 440: 431: 421: 414: 409: 400: 317: 308: 273: 270:Environments 263:Visual Basic 260: 249: 220: 182: 152: 141: 112: 91: 71: 64: 42: 38: 37: 527:25 November 502:|last= 464:25 November 246:Workbenches 224:ER diagrams 202:correctness 115:PC Magazine 632:Categories 594:2009-03-14 392:References 494:cite book 131:mainframe 95:IBM PC/AT 611:Archived 569:Computer 340:See also 192:IISE LKO 82:metadata 78:database 211:, IISE. 127:IBM DB2 61:History 617:. In: 589:954775 587:  485:PC Mag 455:  125:using 104:CA Gen 585:S2CID 335:well. 298:CADES 293:them. 179:Tools 160:Booch 76:of a 529:2014 506:help 466:2014 453:ISBN 209:SCCS 135:OS/2 133:and 106:and 43:CASE 577:doi 129:in 119:IBM 634:: 583:. 573:26 571:. 567:. 555:^ 498:: 496:}} 492:{{ 474:^ 430:. 238:, 234:, 230:, 226:, 137:: 57:. 597:. 579:: 531:. 508:) 468:. 194:. 149:. 41:( 20:)

Index

Back-end CASE

computer-aided design
information systems
software development process
University of Michigan
data dictionary
database
metadata
model-driven engineering
IBM PC/AT
Fran Tarkenton
CA Gen
Andersen Consulting's
PC Magazine
IBM
Software repository
IBM DB2
mainframe
OS/2
Knowledgeware
Computer Associates
Booch
Object Management Group
Unified Modelling Language
IISE LKO
Verification and validation
correctness
SCCS
ER diagrams

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑