Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 Early history  





2 Fundamentals  





3 Development using CADES  





4 References  





5 Further reading  














CADES







Add links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 


CADES (Computer Aided Design and Evaluation System) was a software engineering system produced to support the design and development of the VME/B Operating System for the ICL New Range - subsequently 2900 - computers.

From its earliest days, VME/B was developed with the aid of CADES, which was built for the purpose using an underlying IDMS database (latterly upgraded to IDMS(X)). CADES was not merely a version control system for code modules: it was intended to manage all aspects of the software lifecycle from requirements capture through to field maintenance.

It was the design of CADES that paved the way for the Alvey Project in IPSE (Integrated Project Support Environments) and Process Control Engines. Because CADES was used for more than 20 years throughout the development of a large software engineering project, the data collected has been used as input to a number of studies of software evolution.

Early history[edit]

CADES was conceived in 1970 by David Pearson and Brian Warboys when working for ICL's New Range Operating System Technology Centre, OSTECH, in Kidsgrove.[1][2] Pearson, a theoretical physicist by training, had become a computer simulation specialist and joined ICL in 1968 after working in finite-element modelling at Cambridge and simulation research at Imperial College. Warboys had been chief architect for the ICL System 4 multi-access operating system, Multijob.

ICL's commitment to large scale software development for the 2900 Series of computers provided the basis for the Pearson and Warboys early work on a new software development environment which would address the issues of designer/programmer productivity, design integrity, evaluation and testing, version control and systems regression.[3][4]

In designing the initial architecture of the CADES environment, Pearson in particular looked to parallels with the leading hardware computer-aided design systems of the time, even attempting the use of graphics in the design process. The CADES design approach, called Structural Modelling, was rigidly data-driven and hierarchical, and expressed in a formal design language, SDL. Design specifications written in SDL were processed by the Design Analyser, before being input to the CADES Product Database, a design and implementation database supporting its own query language and forming the kernel of the Product Information System.[5][6][7]

The intention was that these designs could be evaluated/simulated using the Animator, and S3 implementation code automatically generated from them using the Environment Processor. Build generation and version control was also based on the Product Database, resulting in a highly disciplined approach to new system builds. System Regression was therefore controlled from a very early stage in the software life-cycle.[8][9]

Fundamentals[edit]

In order to control the development of VME/B, each development was sub-divided for easier management. The structure was hierarchic, with each significant components of VME (kernel, file store, etc.)divided into sub-systems. Development activity on each sub-system created a sequence of versions.

These divisions and sub-divisions of VME/B were reflected in the hierarchical structure of the CADES database. This enabled the reuse of code within VME/B (one of the goals of software engineering). This, coupled with a suite of tools, and the use of SDL (Software Design Language) as the development language, version history and the concept of trusted source code (that is code that has passed QA and subsequently resides within CADES filestore) improved development time whilst providing satisfactory audit trails and QA processes.

CADES adopted the term "holon" to refer to modules of code (such as procedures and macros). The word came from the Greek holo meaning whole, and was lifted from Arthur Koestler's book The Ghost in the Machine. Pearson always claimed that he formulated the architecture of CADES while studying Koestler's book on a beach in Tunisia. Arranged in a hierarchy, holons provide a 'family tree' (for each sub-system), utilising parent/child relationships. Holons also maintained attributes of interaction, enabling one Holon to interact with other Holons, thus enabling more modular development and facilitating reuse. In a similar fashion CADES also retained information with regard to constant values (aka literals), user-defined types and user-defined structures.

Development using CADES[edit]

Development under CADES was achieved using a suite of tools known as MODPRO (Module Processing) which acted as an interface (or broker) between developer and CADES. These tools enabled the developer to focus more on development that administrative, QA or SCM tasks. It was not necessary to know how to manipulate data within CADES, the application generated the required DNL (Data Navigation Language) to achieve the required results.

Development using MODPRO did not require specific knowledge of either S3 nor SCL (target language for subsequent compilation), but SDL, the Software Design Language: an abstraction above the former two. Which when coupled with the enhance-editor EDSDL (EditSDL) interacted with CADES to manage development, or re-work. Then, again with information from CADES, when used with MODPRO tool EPETC (aka Environmental Processor or EP etc.) enabled the resultant file to be correctly targeted for S3orSCL compilation. Subsequent tools within the suite facilitated various steps within development, such as:

The following illustrates the typical MODPRO development route.

Process flow using CADES MODPRO Tools
VME/B development using MODPRO tools

References[edit]

  1. ^ B.C.Warboys "The IPSE 2.5 Project: Process Modelling as a basis for a support environment" International Conference on System Development Environments and Factories, May 1989, Berlin
  • ^ Martin Campbell-Kelly "ICL: A business and technical history" Clarendon Press, Oxford 1989
  • ^ D.J.Pearson "CADES - Computer-aided development and evaluation system" Computer Weekly, 1973
  • ^ D.J.Pearson and B.C.Warboys "Structural Modelling - A Philosophy" OSTC/IN/40 July 1970
  • ^ G.D.Pratten and R.A.Snowden "CADES, support for the development of complex software" EUROCOMP,1976
  • ^ M.A.Firth and Others "Improving a software development environment using object-oriented technology" TOOLS (8), 1992
  • ^ B.W.Chatters, M.M.Lehman and Others "Modelling a software evolution process" Software Process: Improvement and Practice, September 2000
  • ^ D.J.Pearson "The use and abuse of a software engineering system" National Computer Conference, New York 1979
  • ^ Don Leavitt "Development method review held useful" Computerworld June 1979
  • Further reading[edit]


    Retrieved from "https://en.wikipedia.org/w/index.php?title=CADES&oldid=1233649020"

    Categories: 
    Version control systems
    International Computers Limited
    Kidsgrove
    Science and technology in Staffordshire
    Hidden categories: 
    Articles with short description
    Short description with empty Wikidata description
    Use dmy dates from April 2022
     



    This page was last edited on 10 July 2024, at 05:53 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki