1、ECMA ECMA Technical Report TR/66 June 1994 Standardizing Information and Communication Systems Mapping of PCTE to the ECMA/NIST Frameworks Reference Model Phone: +41 22 849.60.00 - Fax: +41 22 849.60.01 - ECMANEWS: +41 22 735.33.29 - Internet: HelpdeskQECMAXH ECMA Technical Report TR/66 June 1994 EC
2、MA Standardizing Information and Communication Systems Mapping of PCTE to the ECMA/NIST Frameworks Reference Model This Technical Report describes a mapping of Standard ECMA-149 (Portable Common Tool Environment (PCTE) Abstract Specification, 2nd edition, June 1993) with respect to Technical Report
3、ECMA W55 (Reference Model for Frameworks of Software Engineering Environments, 3rd edition, June 1993, published jointly by ECMA and NIST). Phone: +41 22 849.60.00 - Fax: +41 22 849.60.01 - ECMANEWS: t41 22 735.33.29 - Internet: HelpdeskECMA.CH TR66.DOC - 24.08.95 10.51 Brief History This Technical
4、Report describes a mapping of tlie Sta.iidard ECMA- 149, the Portable Coiiiiiion Tool Environment (PCTE), following tlie outlines la,id down in the ECMA TR/.55 document ( NIST Special Publication 500-20 1 ), “A Reference Model for Frameworks of Software Engineering Environiiients7 (third edition). T
5、he R.efereiice Model lias been prepa.red jointly by ECMA/TC33/TGRM, for the Tecliiiica.1 Coiiimittee (TC33) for PCTE standardisation, and by the National Institute of Standards and Technology (NIST) of tlie United Sta.tes Depa.rtineiit of Commerce. PCTE is the specifica.tion of a. public tool interf
6、ace for an open standard repository. It defines a. set of opera.tions that provide basic da.ta integration facilities which can be used by tool and eiiviroiiiiieiit builders. Standa.rd ECMA- 149 describes the Portable Coinmoii Tool Environment in language independent terms. It specifies tlie interfa
7、ce supported by any conforming implementation as a set of abstract operation specifications, together with the types of their parameters and results. These opera.tioiis are referred to in this document, but are not fully described, since for a full description of their specifica.tions the Standard E
8、CMA-149 should be used. Standard ECMA-149 is supported by a number of standard bindings, i.e. representations of the interface in standard prograniiiiing language, however, no particular bindings are referred to in this document. This Technical Report describes a mapping of a framework specification
9、, and does not map any particular implementation of that specification. The forinat and many of the teriris contained within are either those given in the Reference Model document, where compatible, or those of the Standard ECMA-149. This ECMA ecliiiical Itepoit lias Ijeeii adopted by (.lie ECRIA Ge
10、neral Assembly of June 1994. Contents 1 Introduction 1 2 Introducing PCTE and the Reference Model 2.1 Softwa.re Engineering Environments and Frameworks . 2.1.1 Tool Support Interfaces . The Ada Programining Support Environment . 2.2 The Development of PCTE . 2.2.1 2.2.2 Evolution of PCTE 2.3 The Ref
11、erence Model . 2.3.1 Integration 2.3.2 Integration in the Reference Model . 2.4 An IPSE Architecture 2.5 Mapping PCTE 2.5.1 RM service dimensions 3 Object Management Services 3.1 Metadata Service . 3.2 Data Storage and Persistence Service 3.3 Relationship Service . 3.4 Naine Service . 3.5 Distributi
12、on and Location Service 3.5.1 Distribution 3.6 Data Transaction Service 3.7 Concurrency Service . 3.8 Operating Cysteni (OS) Process Support Service . 3.8.1 OS Process Execution 3.9 -4rcliive Service 3.10 Ba.ckup Service 3.11 Deriva. tioii Service . 4 4 4 6 6 m. 1 10 10 14 14 17 18 20 20 46 65 73 92
13、 92 98 100 11T 11; 1 :3 -1 138 139 3.12 Replication and Syiicliioiiisa.tion Service 1-10 3.13 Access Clontrol a.iid Seciirii.y Services 1.1. 1 3.14 I%iictioii i2tta.clziiieii. Scricc .i 7 3.15 Coinmoii Schema . Service l-IX 3.16 Version Service 149 3-17 Composite Object Service 1-19 3.18 Query Servi
14、ce . 155 3.19 State Monitoring and Triggering Service 156 3.19.1 PCTE Notification mechanism . 157 3.20 Sub-Environment Service 159 3.20.1 Schema Definition Sets 160 3.20.2 Schema Management . 160 3.21 Interchange Service 163 4 Process Management Services 164 4.1 Process Definition Service 164 4.2 P
15、rocess Enactment Service . 164 4.3 Process Visibility and Scoping Service . 16.5 4.4 Process Monitoring Service . 165 4.5 Event Management Service . 166 4.6 Process Resource Management Service . 166 5 Communication Services 168 5.1 Communication Service . 168 5.1.1 OS Process Execution 168 5.1.2 Mon
16、itoring OS processes . 168 5.2 Message Queue Service 169 5.1.3 Communication between OS processes . Message Queues . 168 6 User Interface Services 173 6.1 Metadata Service . 173 6.2 Session Service 173 6.3 Security Service 174 6.4 Profile Service . 174 6.rj User Interiace Name and Location Service .
17、 17.5 6.6 Application Interface Service 17.5 6. Dialog Seivice . 6.8 Preseiitatioii Service . 1 (j I (j 6.9 1iiteriiatioiia.lisatioii Service . .I 77 7 Policy Enforcement Services .1 Ma.iidatory Coiiideiitia.lity Service . 7.2 Discretiomry Security Service 7.3 Ma.iida.tory Integrity Service . 7.4 Di
18、scretionary Integrity Service . 4.2.1. Security 7.4.1 Security 7.3.2 Accounting 7.5 Mandatory Conformity Service . 7.5.1 Security .5.2 Accounting 7.6 Discretionary Comformity Service 7.6.1 Security 7.6.2 Accounting 8 Framework Administration and Configuration Services 8.1 Tool Registration Service 8
19、.2 R.esource Registration aiid Mapping Service 8.3 h4etricatiori Service 8.3.1 Monitoring OS processes . 8.4 User Administratioii Service . S 5 Self-Configuration Service S.6 Auditing Service . 8.7 Accounting Service 178 i io 191 191 205 205 20.5 -206 206 207 207 208 -208 209 210 210 210 210 211 211
20、 212 212 215 A Bibliography 225 -1- 1 Introduction This Technical Report provides a. mapping of the PCTE, Standard ECMA- 149 E,CMA 1491 rehtive t.o the Reference Model (R.M) for Fra.ineworks of Software Engineering Environments RM. A mapping of PCTE should include a. description of tlie SEE componen
21、ts defined in PCTE using tlie common reference terms a.nd structures provided by the RM. In this way it will provide a. basis for comparing components of PCTE with other.SEE components and related sta.ndards. Tlie mapping consists of a. section for each of the services described in the RM which are
22、covered by PCTE. The niain pa.rt of this document is struct,ured in a. way corresponding to tlie RM in order to fa.cilitate coiiiparisoiis and references to either other mappings, or with the RM document itself. Tlie services covered by the RM wliicli are relevant to the aims of PCTE are as follows:
23、 o Object Management Services: - Metadata Service - Data Storage and Persistence Service - Relationship Service - Name Service - Distribution and Loca.tion Service - Data. Transaction Service - Concurrency Service - OS Process Support Service - Archive Service - Backup Service - Derivation Service -
24、 Replication and Synchronisation Service - Access Control and Security Service - Functional Attachment Service - Common, Schema Service - Version Service - Composite Object Service - Query Service - S taie Monitoriiig and Triggering Service - Sub- Environment Service - Data. 1nterclia.iige Service o
25、 Comiiiunica.tioii Services: - Da.ta. Sharing Service - Interprocess Coinmuiiication Service - Network Service - Mcssa.ge Service - I3veiit Notification Service e Policy Enforcement Services: - Security Information Service - Identification a.nd Autlienica.tion Service - Mandatory Access Control Serv
26、ice - Discretionary Access Control Service - Integrity Service - Secure Exportation and Importation of Objects Service - Audit Service References are provided in the test to releva.nt sections of the Standard ECMA-149 so t1ia.t more precise information about a service can be easily found should it b
27、e felt by a reader to be necessary. For readers who wish to use this document as a mapping of PCTE with respect to the ECMA/NIST reference model for Frameworks of SEE, it is recommended that you first read the Reference Model document, then simply refer to those services of interest which are descri
28、bed in this document. The only other chapter which is of direct interest for people who wish to use this document for mapping purposes is the concluding chapter which summarises the mapping, describing, primarily, the inter- service relationships of PCTE. In order to produce a document which might b
29、e used by readers as a means of finding out more about PCTE, without necessarily having the RM available, a number of introductory sections are included to give a little background about PCTE and the SEE issues that it addresses. For such readers, it is not recommended that the services be read in t
30、he order laid out by the RM, nor is it necessarily useful to read about all of the services, since some are more necessary for a basic understanding of PCTE than others. For such readers a possible list of services to be read is as follows: o Object Management Services: - Data Storage and Persistenc
31、e Service - Metadata Service - Relationship Service - Name Service - Composite Object Service - Version Service - Distribution and Location Service - Replication and Synchronisation Service - Concurrency Service - Data Transaction Service - OS Process Support Service - State Monitoring and Triggerin
32、g Service e Comniunicadion Services: - Messa.ge Service e Policy Enforcement Cervices - Manda,t,orv Access Cont,rol Service - Discretioiiaxv Access Control Service - :3 - Conventions used in illustrations o bject-type I (. attribute-type _I_) key7 . key .linktype Remarks object type object subtype r
33、elationship attribute type link type, of category (c) composition (e) existence (r) reference (i) implicit link type, of category (d) designation relationship link type -.-.-.) linktype of -) link type of cardinality one cardinality many lower limit is x upper limit is y x Y1 object with link with a
34、ttribute This mapping is the result of work carried out over a period of time which covered the release of different versions of both the ECMA/NIST Reference Model and the PCTE Standard itself. It should not, therefore, be considered at the definitive mapping for PCTE with respect to this Reference
35、Model. Nevertheless, it has been decided that this document is a useful contribution to the growing wealth of information pertaining to PCTE and Software Engineering Environment Frameworks, and has been included as an ECMA Technical Report for this reason. It should not in anyway be consider a.s a.i
36、iytliing other than a technical report aimed at stimulating discussion and research, and at raising awareness. 2 Introducing PCTE and the Reference Model 2.1 Software Engineering Environments and Frameworks The development and maintenance of modern, complex software applications needs the availabili
37、ty of an environment to provide the means of producing the software required for these applications aiid to manage the process of production and evolution. The executable software providing the necessary services for the development projects are called tools. PCTE is itself part of a tool support in
38、terface (or tool interface) that, with the addition of coinplenien- tary components (other tool interfxes providing other services such as a user interface), will provide a. portable tool interface for the definition of a software engineering environment (SEE) framework. The a.ddition of appropriate
39、 tools, will then provide an environment for the development and maintenance of software applications. The approach taken is to factor out those facilities required by tools in order to simplify the development of tools and to be able to integrate them into a given specific environment. These common
40、ly needed features are provided through the creation of a set of tool interfaces, which must be made available as the framework for software development environments. This chapter describes the requirements of such a tool interface, and which aspects of the tool interface PCTE aims to provide. It de
41、scribes the development of PCTE, its relationship with some other tool environments, and investigates a possible architecture for PCTE based SEE. 2.1.1 Tool Support Interfaces As a result of the growth in size and complexity of software applications, and of the increased diversity of software-intens
42、ive systems, software engineers need to respond with high quality software, delivered in a timely manner and meeting the customers requirements. To cope with the resulting increased pressure on the software production process, engineers have realised that the traditional operating .system needs to b
43、e replaced by means to support tools that are both functionally richer and more powerful. Objectives In addition to respecting a set of general model and design goals, the tool support interface inust be capable of providing project support environments with the following facilities: o The interface
44、 should be able to support project support environments for the development of both large and small real- time software systems. The 1a.nguage bindings of the interface should allow interworking of tools written in different languages. The interface should also allow the portability of tools between
45、 different implementations of the iiiterfa.ce. o The interface should provide the ability to manage entities, a.s described in the entity-relationship mo del. o The interface should support a wide range, but integrated set of simple-to-use tools, running either in a ceiitralised coinput,ing framewor
46、k, or on a, network of a.dva.nced workstations. o The interrace should provide a. set of facilities that supports the coiiiplete nia.na.geiiiciit of i111 the elements defined within the interface. The facilities iii turii slioulcl be supported l)y it. set o1 sta.nda.rd laiigimge fea.t.ures provided
47、by the language bindings. Tlie iiiterfa.ce should be inacliiiie a,iid iiiii)leiiieiita.tioii independent,. The interface should coiisist of orthogonal sets of functiomlities t1ia.t can evolve in a sepa,rate if consistent way. The interface should support extensibility by a.llowiiig the re-use of exi
48、sting facilities oi tlie interface. These ca.n be combined to crea.t,ed new liigher-level interfaces and facilities. Not only should the interface present a uniform view to users, but it should also use self- referential tecliniques in the modelling of the interfaces architecture and entity manageme
49、nt, typing information. The interface should provide a. set of progra,m execution facilities that control the a,ctivaa.t,ion a.nd maiiageinent of programs a.nd processes. The interface should provide a level of security that embraces confidentiality, integrity, a.iicl a,vailability or denial of service. Tlie interface should allow tools to control the allocation of resources, and the identification of processes and data, independently of their distribution. It should also allow parts of the network of resources to work in isolation. The interface should support the