Computer-aided software engineering

Example of a CASE tool

Computer-aided software engineering (CASE) is a domain of software tools used to design and implement applications. CASE tools are similar to and are partly inspired by computer-aided design (CAD) tools used for designing hardware products. CASE tools are intended to help develop high-quality, defect-free, and maintainable software.[1] CASE software was often associated with methods for the development of information systems together with automated tools that could be used in the software development process.[2]

History

The Information System Design and Optimization System (ISDOS) project, started in 1968 at the University of Michigan, 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.[3]

Another major thread emerged as a logical extension to the data dictionary of a database. By extending the range of metadata 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 model-driven engineering 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 data that gave rise to the earlier versions of CASE.[4]

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 IBM PC/AT 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 of offerings from companies such as Knowledgeware (James Martin, Fran Tarkenton and Don Addington), Texas Instrument's CA Gen and Andersen Consulting's FOUNDATION toolset (DESIGN/1, INSTALL/1, FCP).[5]

CASE tools were at their peak in the early 1990s.[6] According to the PC Magazine of January 1990, over 100 companies were offering nearly 200 different CASE tools.[5] At the time IBM had proposed AD/Cycle, which was an alliance of software vendors centered on IBM's Software repository using IBM DB2 in mainframe and OS/2:

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 Knowledgeware 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.[7]

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 Computer Associates, 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, Booch, etc. Eventually, these diverse tool sets and methods were consolidated via standards led by the Object Management Group (OMG). The OMG's Unified Modelling Language (UML) is currently widely accepted as the industry standard for object-oriented modeling.[citation needed]

CASE software

Tools

CASE tools support specific tasks in the software development life-cycle. They can be divided into the following categories:

  1. Business and analysis modeling: Graphical modeling tools. E.g., E/R modeling, object modeling, etc.
  2. Development: Design and construction phases of the life-cycle. Debugging environments. E.g., IISE LKO.
  3. Verification and validation: Analyze code and specifications for correctness, performance, etc.
  4. Configuration management: Control the check-in and check-out of repository objects and files. E.g., SCCS, IISE.
  5. Metrics and measurement: Analyze code for complexity, modularity (e.g., no "go to's"), performance, etc.
  6. Project management: Manage project plans, task assignments, scheduling.

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 ER diagrams, Data flow diagram, Structure charts, Decision Trees, Decision tables, 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.[8]

Workbenches

Workbenches integrate two or more CASE tools and support specific software-process activities. Hence they achieve:

  • A homogeneous and consistent interface (presentation integration)
  • Seamless integration of tools and toolchains (control and data integration)

An example workbench is Microsoft's Visual Basic 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 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.

Environments

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:[9]

  1. 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 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.
  2. 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. 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.
  3. 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 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 model–view–controller 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 them.
  4. 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 CADES 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. 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.
  5. 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, 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.

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 language and some kind of methodology (integrated and process-centered environments) or domain (4GL) specificity.[9]

Major CASE risk factors

Some of the most significant risk factors for organizations adopting CASE technology include:

  • 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 diagram conventions and methods for designing object-oriented models were vastly different among followers of Jacobsen, Booch, and Rumbaugh.
  • 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 expectations they will inevitably be disappointed.
  • 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 mission critical and fraught with risk.
  • 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 well.[10]

See also

References

  1. ^ 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.
  2. ^ P. Loucopoulos and V. Karakostas (1995). System Requirements Engineerinuality software which will perform effectively.
  3. ^ Teichroew, Daniel; Hershey, Ernest Allen (1976). "PSL/PSA a computer-aided technique for structured documentation and analysis of information processing systems". Proceeding ICSE '76 Proceedings of the 2nd International Conference on Software Engineering. IEEE Computer Society Press.
  4. ^ Coronel, Carlos; Morris, Steven (February 4, 2014). Database Systems: Design, Implementation, & Management. Cengage Learning. pp. 695–700. ISBN 978-1285196145. Retrieved 25 November 2014.
  5. ^ a b Inc, Ziff Davis (1990-01-30). PC Mag. Ziff Davis, Inc. {{cite book}}: |last= has generic name (help)
  6. ^ Yourdon, Ed (Jul 23, 2001). "Can XP Projects Grow?". Computerworld. Retrieved 25 November 2014.
  7. ^ "AD/Cycle strategy and architecture", IBM Systems Journal, Vol 29, NO 2, 1990; p. 172.
  8. ^ Software Engineering: Tools, Principles and Techniques by Sangeeta Sabharwal, Umesh Publications
  9. ^ a b Alfonso Fuggetta (December 1993). "A classification of CASE technology". Computer. 26 (12): 25–38. doi:10.1109/2.247645. S2CID 954775. Retrieved 2009-03-14.
  10. ^ Computer Aided Software Engineering Archived 2012-01-20 at the Wayback Machine. In: FFIEC IT Examination Handbook InfoBase. Retrieved 3 Mar 2012.

Read other articles:

Kecamatan Indramayu beralih ke halaman ini. Untuk Kegunaan lain, lihat Indramayu (disambiguasi). Indramayu Indramayu KotaKecamatanMonumen Tugu BambuNegara IndonesiaProvinsiJawa BaratKabupatenIndramayuPemerintahan • CamatDrs. Sugeng Heryanto, M.siPopulasi • Total101.940(L: 50,116 P: 51,824) jiwaKode Kemendagri32.12.15 Desa/kelurahan10/8 Rumah sakit Indramayu di sekitar tahun 1925 Indramayu (atau juga dikenal: Indramayu Kota) Carakan: ꦆꦤ꧀ꦢꦿꦩꦪꦸ) adala...

 

 

Giacomo Simoncini Wali Kapten San MarinoMasa jabatan1 Oktober 2021 – 1 April 2022Menjabat bersama Francesco Mussoni PendahuluGian Carlo VenturiniMarco NicoliniPenggantiOscar MinaPaolo Rondelli Informasi pribadiLahir30 November 1994 (umur 29)Borgo Maggiore, San MarinoPartai politik Sosialis Noi per la Repubblica Alma mater Universitas Bologna Universitas Republik San Marino Universitas Ferrara Sunting kotak info • L • B Giacomo Simoncini (lahir 30 November...

 

 

1950 Japanese House of Councillors election ← 1947 4 June 1950 1953 → 132 of the 250 seats in the House of Councillors126 seats needed for a majority   First party Second party Third party   Leader Shigeru Yoshida Tetsu Katayama Party Liberal Socialist Ryokufūkai Seats after 76 61 50 Popular vote 8,313,756 4,854,629 3,660,391 Percentage 29.70% 17.34% 13.08%   Fourth party Fifth party Sixth party   Leader Tomabechi Gizō Hisao Kuroda Kyuichi...

Chronologies Paris quartier latin novembre 1986 Extrait du documentaire « Devaquet si tu savais » de Franck Schneider et Francis Kandel.Données clés 1983 1984 1985  1986  1987 1988 1989Décennies :1950 1960 1970  1980  1990 2000 2010Siècles :XVIIIe XIXe  XXe  XXIe XXIIe Chronologies thématiques Art Animation asiatique, Architecture, Arts plastiques (Dessin, Gravure, Lithographie, Peinture et Sculpture), Bande dessinée, Cinéma, Danse, ...

 

 

Bugulma Air Enterprise IATA ICAO Kode panggil - BGM BUGAVIA Armada11Tujuan4Kantor pusatBugulma, Rusia Bugulma Air Enterprise (bahasa Rusia: Бугульминского авиапредприятия) merupakan sebuah maskapai penerbangan yang berbasis di Bugulma, Rusia. Maskapai ini mengoperasikan penerbangn penumpang sewaan dan terjadwal regional atas hubungan dengan Tatarstan Airlines. Basis utamanya terletak di Bandar Udara Bugulma.[1] Sejarah Maskapai penerbangan ini merupaka...

 

 

 烏克蘭總理Прем'єр-міністр України烏克蘭國徽現任杰尼斯·什米加尔自2020年3月4日任命者烏克蘭總統任期總統任命首任維托爾德·福金设立1991年11月后继职位無网站www.kmu.gov.ua/control/en/(英文) 乌克兰 乌克兰政府与政治系列条目 宪法 政府 总统 弗拉基米尔·泽连斯基 總統辦公室 国家安全与国防事务委员会 总统代表(英语:Representatives of the President of Ukraine) 总...

Genus of birds Montifringilla White-winged snowfinch (Montifringilla nivalis) Scientific classification Domain: Eukaryota Kingdom: Animalia Phylum: Chordata Class: Aves Order: Passeriformes Family: Passeridae Genus: MontifringillaBrehm, CL, 1828 Type species Fringilla nivalis[1]Linnaeus, 1766 Diversity 3 species Synonyms Chionospina Kaup, 1829 Chionospiza G. R. Gray, 1841 (lapsus; non Kaup, 1836) Chionospiza Reichenbach, 1850 Onychospiza Przewalski, 1876 (non Rey, 1872: preoccupied) O...

 

 

Soda GembiraSegelas soda gembiraSajianMinumanTempat asalIndonesiaDaerahNasionalSuhu penyajianDinginBahan utamaes batu, soda, susu kental manis, siropSunting kotak info • L • BBantuan penggunaan templat ini Soda gembira adalah minuman yang terbuat dari soda, susu kental manis, sirop, dan es batu. Minuman ini sangat cocok di hidangkan di kala cuaca sedang panas. Bahan yang dipakai Adapun bahan atau isi dari minuman tersebut bervariasi berdasarkan kreativitas orang atau tempat maka...

 

 

Traditional beremeal bannock, as made in Orkney, Scotland. The separated sector is a scone. This is a list of bread products made in or originating from Britain. British cuisine is the specific set of cooking traditions and practices associated with the United Kingdom. Bread prepared from mixed grains was introduced to Great Britain around 3700 BC.[1] Savoury This is a dynamic list and may never be able to satisfy particular standards for completeness. You can help by adding missing ...

Basketry made from whale baleen Inupiat baleen basket, with an ivory handle (finial), made by Kinguktuk (Kiŋaqtaq 1871–1941) of Barrow, Alaska. Displayed at the Museum of Man, San Diego, California. Inupiat baleen basket, with an ivory polar bear and seal handle (finial), made by George Omnik (1905 - 1978) of Point Hope, Alaska. Displayed at the Honolulu Museum of Art. Baleen basketry is a particular type of basketry, an Alaska Native art made from whale baleen developed in Barrow, Point H...

 

 

1335–1432 Persianate Mongol state in modern Iraq and western Iran Jalayirid Sultanateجلایریان1335–1432Fragmentation of the territory of the Ilkhanate territory into various polities, including the Jalayirids ( ) Capital Baghdad (1335–1358 and 1388–1411) Tabriz (1358–1388) Basra (1411–1432) Common languages Persian (official, poetry)[1][2] Mongolian (government)[3] Arabic (diplomatic)[3] Turkic[4] GovernmentMonarchyHistory&...

 

 

unbioctium ← 'unbiennium' → Utn Bk↑Ube↓Use 129Ube Tabel periodik Keterangan Umum Unsur Nama, Lambang, Nomor atom unbiennium, Ube, 129 Deret kimia Superactinides Golongan, Periode, Blok 3, 8, f Penampilan Tidak diketahui Massa atom 313  g/mol Konfigurasi elektron [Uuo] 5g4 6f3 7d1 8s2 8p1 Jumlah elektron tiap kulit 2, 8, 18, 32, 32, 18, 8, 2 Fase Kemungkinan padat Templat:Elementbox section micellaneous Isotop iso NA waktu paruh DM DE (MeV) DP Referensi Unbiennium Konfigurasi ele...

В полностью разложенном виде В контейнере, Музей армии Welbike — лёгкий военный складной мотоцикл. Разработан в УСО — британской разведывательно-диверсионной службе работавшей во время Второй мировой войны. В период между 1942 по 1945 год было выпущено 3853 штуки, но лишь н�...

 

 

Mountain range in Colorado, United States Cochetopa HillsWindy Peak along the Continental Divide in the Cochetopa HillsHighest pointPeakLong Branch BaldyElevation11,974 ft (3,650 m)Coordinates38°19′20″N 106°28′26″W / 38.3221025°N 106.4738221°W / 38.3221025; -106.4738221[1]GeographyCochetopa Hills CountryUnited StatesStateColoradoCountySaguache[2]Parent rangeSan Juan Mountains, Rocky Mountains The Cochetopa Hills[3] are...

 

 

19 de septiembre de 1945; Marcha de la Constitución y la Libertad. Artículo principal: Unión Cívica Radical La Unión Cívica Radical (UCR) es un partido político de Argentina. Este artículo amplía su historia en el período 1943-1955. En el año 1943 por primera vez en la historia argentina la industria fue más importante que el campo. La II Guerra Mundial hizo estallar la industria y millones de migrantes rurales, diferentes de los anteriores migrantes europeos, se trasladaron ...

Brightest star in the constellation Ursa Minor This article is about the Earth's current north star. For such stars in general, see pole star. For other uses, see Polaris (disambiguation) and North Star (disambiguation). Stella Polaris redirects here. For the military operation, see Operation Stella Polaris. Polaris Location of Polaris (circled) Observation dataEpoch J2000      Equinox Constellation Ursa Minor Pronunciation /pəˈlɛərɪs, -ˈlær-/;UK: /pəˈl�...

 

 

Pisau tempur KA-BAR USMC. Pisau tempur adalah sejenis pisau laga yang dirancang untuk keperluan militer dan terutama diperuntukkan dalam pergumulan satu lawan satu atau pertempuran jarak dekat.[1][2][3] Sejak berakhirnya peperangan parit, kebanyakan pisau tempur militer dirancang untuk keperluan berfaedah lainnya (membabat dedauan, memotong dahan pohon, membuka peti amunisi, dsb.) di samping kegunaan sejatinya sebagai senjata pertarungan jarak dekat, dan dapat dikataka...

 

 

Chemical reaction in which oxidation states of atoms are changed For other uses, see Redox (disambiguation). Sodium gives one outer electron to fluorine, bonding them to form sodium fluoride. The sodium atom is oxidized, and fluorine is reduced. When a few drops of glycerol (mild reducing agent) are added to powdered potassium permanganate (strong oxidizing agent), a violent redox reaction accompanied by self-ignition starts. Example of a reduction–oxidation reaction between sodium and chlo...

يفتقر محتوى هذه المقالة إلى الاستشهاد بمصادر. فضلاً، ساهم في تطوير هذه المقالة من خلال إضافة مصادر موثوق بها. أي معلومات غير موثقة يمكن التشكيك بها وإزالتها. (نوفمبر 2019) كأس يوغوسلافيا 1979–80 تفاصيل الموسم كأس يوغوسلافيا  النسخة 32  البلد يوغوسلافيا  التاريخ بداية:17 أك...

 

 

Osório BanderaEscudo País BrasilSituado en unidad administrativa Río Grande del SurCoordenadas 29°53′13″S 50°16′12″O / -29.886944444444, -50.27Población (2010)  • Total 40906 hab.Índice de desarrollo humano 0.839Identificador de la Gran Enciclopedia Catalana osorioGentilicio osorienseosorienseCódigo de municipio brasileño 4313508Electorado 36614Elevación sobre el nivel del mar 16 metrosSuperficie 663,267 kilómetros cuadradosCódigo posta...