ir02 - a knowledge representation language for

Upload: julian-estiven-ruiz-castaneda

Post on 03-Jun-2018

223 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/12/2019 IR02 - A Knowledge Representation Language For

    1/14

    Knowledge Representation language forHAGELSTEIN,EUGENE LAH OU , FRANKPONSAERT, AND

    Requirements engineering, the phase of so ftware developmentere the users needs are invest igated, is mo re and mo re shiftings con cern from the target system to wards its envir onm ent. A newnguages is needed to supp ort the defini t ion of ap-t ion domain know ledge and the behavior o f he un iverseThis paper assesses the applicabili ty of classical know ledg e rep-

    designers nsist on eff ic ient autom atic use of the know l-f expressiveness, two can didates emerge:e combi ned in a anguage called the E R A E model, which is il lus-

    languages.REQUIREMENTSNGINEERING AS A MODELINGCTIVITY

    Requirements engineeringRE) is the part of softwaree-users are inves-

    It is part icularly critical, as the latet expensive modifications to the software system

    The traditional view of E (see, for instance, [21]) focuses

    es, exception handling, design suggestions,tc. We cal lse requirements computer-oriented. A different view

    s now emerging, which ays as much attention to the en-as to the system itself[g IO], [MI, [15].Wecall such requirements world-A first reason for this shift of emphasis i s that require-

    s can only be defined if the application domains welln in-handling ystem without knowing whats typically on

    Manuscr ip t rece ivedMay9,1985; rev isedMay12,1986.Th isworkb y t h e E u r o p e a n C o m m u n i t y u n d e r P r o j e c tMETEOR)of th e European Strategic Program for Research andrmat ion Technology E S P R I T ) .E. Dubois, J . Hagelstein, and A. Rifaut are with Philips Researchratory , 8-1170 Brussels, Belgiu m.E. Lahou and F. Ponsaert are wi th AT T and Phi l ips Telecom -

    an invoice, how to calculate a net pr ice from theross priceand the tax, how many invoices are handled per day, etc.These are ssumptions thathe softwareystem relies upon;they must be included in the requirements document. Asimilar idea made i t s way in to database design, where theconceptual mode1suggested n[30]s adescription of theuniverse of discourse, i.e., the portion of the world re-ferred to by the database contents.

    A second reason for adopting world-or iented require-ments s that the sers expectations are often only satisfiedby harmonious cooperation between theystem and its en-vironment, ncluding he users themselves [20]. For in-stance, a software-control led elevator shouldasically leadits users to the intended floor.o achieve this, he elevatormust react properly to its commands,but the ser must fol-low the r ight procedure o communicate his intent (push-ing buttons,etc.). RE must, therefore, define requirementson the behavior of both the system and its environment.This will avoid the too frequent dissatisfaction ofsers notawareof thechanges implied in theirworking environmentby the introduction of a computer system.

    In this view, requirements subdivide into three parts:1) The overall requirements describe the effect expectedfrom the cooperation of thesystem and its environment.2) Thesystem requirements describe he desired be-havior of the computer system.3) The environment requirements describe the assumptions about the application domain s well as the environ-ments behavior in presence of the system.The overall requirements are the best expression of theusersexpectations. Their fulfillmentan be deduced fromthe two other kinds of requirements.ystem requirementsmust be fulfilled y the developersof the system, whereasenvironment requirements are the users responsibility.These ideas are further developed and applied in [ I q .

    Our emphasis on world-oriented requirements shouldnot be misunderstood. We claim that theyare always use-ful, but not that they can always be completed. There is,indeed, a class of requirements that we doot cover: thosethat constrain the way the target system should be devel-oped. In some cases, the ill-definedness of the problem ssuch that part of the requirements on theystem or i t s en-

    0018-9219/86/1Do(F1431 01.00 @ 1986 IEEE

    OF THEEEE,VOL. 74, NO. 10 OCTOBER1986 1431

  • 8/12/2019 IR02 - A Knowledge Representation Language For

    2/14

    vironment are replaced by requirements of that kind. Forinstance, a program for playing hess is partly specified byits procedure of acceptance: it should defeat some goodlevel chess players. Even in such cases, world-or iented re-quirements are needed, for instance, to describe the rulesof chess, or the desired interface of the program.

    Given this,world-oriented requirementsdescribe knowl-edge of a general nature, unlike computer-oriented re-quirements which describe computer rtifacts: data struc-tures, computations, functions, etc. Languages currentlyavailable to supportRE are likely to be inappropriate in thisbroader framework. (See [40] or a survey.) This paper pro-poses a new language nspired by the work on knowledgerepresentation (KR) in artific ial intelligence. ection I I com-pares the variousKR languages to the specific eeds of RE.The semantic networks and the logical approach emergeasthe bestcandidates, ut still lack importantfeatures. Theyare extended in Section I l l into theERAE model (Entity, Re-lation, Attribute, Event), which is described and illustratedon examples. Section IV compares the ERAE model withother approaches.II. A LANGUAGE FOR REQUIREMENTSENGINEERING

    This section wi ll detail the language features needed inRE, and use them to assess the various KR approaches.A. Overviewof Knowledge Representation Techniques

    This brief overview is only intended to substantiate thediscussion in the rest of this section. More complete in-troductions, as wel l as references, can be found in 4], [35],P91, W I andPI.For this presentation, were subdividing knowledge e presentation techniques nto fourcategories: semantic net-works, ogicalapproaches, frames, and production sys-tems. The subdivision is, however, somewhat arbitrary,because many approaches ould belong toeveral of thesecategories.

    Semantic Networks: This label denotes, in fact, a wholefamilyof approaches, havingn common the useof agraph-ical notation based on nodes connected by links.he nodesrepresent concepts, and he linksexpress associations be-tween them.

    In Fig. 1, John, Mary, and Person are concepts,whereas is-a and likes are links. This exampleses the

    Fig. 1. A semant ic network.

    very common is-a link, which, in this case, denotes therelation of lassification, i.e., membership of individuals naclass. Itmay alsodenotethe relation of generalization,.e.,inclusion of alass in another one e.g., Person is-a Mam-mal ).These relat ions are associated wi th an inferencemechanism whichallows he nheritanceofpropertiesdownward along the links: if aerson hasa name, then Johnand Mary have a name.

    The semantic networksprovide easy access o the knowl-edge: starting from a concept and navigating along theinks,

    one reaches other concepts by a mechanism close to association of ideas.

    A criticism requent ly addressed to the semantic net-works i s their lack of commonly agreed semantics.

    Logic: In the logicalpproach, knowledge s representedby meansofformulas,built up fromredicates, logical conectives, quantifiers, etc. Some approaches limit hem-selves to classical first-order logic, while others advocatethe use of modal logic, fuzzy logic, higher orderogic, etc

    In the xample below,we express that 1)al l persons havea name, and that (2) Mary is a person.

    (1) Vx: person(x) = has-name(x)(2) person(Mary).The logical approaches have the advantage of awellde-

    fined semantics, and the availability f inference rules. Foinstance, from thetwo ormulas above, we may concludethat (3) Mary has a name:

    (3) has-name(Mary).A well-known support for ogical approaches i s the pro-gramming anguage Prolog, implementing the nferencerules for a weakened version of first-order logic.

    The advantage of using logic in knowledge representa-tion has been the subject ofhot debates. A clear problemis the lack of structure, when knowledges represented asa linear collection of formulas.

    Frames: Frames are pieces of knowledgeassociated w ithstereotypical situations.They take t he form of a structurset of components of the situation, called slots. A slomay refer to another frame, thereby establishing an association between the two frames. General associations likegeneralization can also be established.

    The frame represents one's expectations in a situation,and therefore includes ways to obtain information aboutthe slots (default values, inference rules). The following example describes expectations about a bicycle.

    cycle FRAMESPECIALIZATION-OF: moving-means FRAME-WITH

    number-of-motor = 0number-of-wheels: IN {I , 2number-of-seats: IN 7 . 2 )owner: INSTANCE-OF person FRAME

    DEFAULT VALUE 2DEFAULT VALUE 1

    There is not much evidence gathered until now on thi t s and problems of this approach. Their semanticss gen-erally defined by means of an inference engine.

    Production Systems: Product ion systems consist ina setof production ules, stating that if a given conditionolds,a given action could be executed. The actions modify anassociated database of facts. As several conditions may betrue at the same time, a selection trategy must be definefor choosing which of the corresponding actions will beexecuted. The following example describes in three rulessome knowledge about the habits of a swimmer.

    IF (weather sunny) (temperature $x)(sx greater 20)IF (weather sunny) (temperature$x) ($x lower 20)IF (weather cloudy)

    THEN (swim in river)THEN (swim in pool)THEN (swim in pool).

    1432 PROCEEDINGS OF THE IEEE VOL. 74, NO. 10, OCTOBER 1 9 8 6

  • 8/12/2019 IR02 - A Knowledge Representation Language For

    3/14

    Production systems are obviously strong at expressingke the form of state transitions.

    r uniformity of representationmakes them easily mod-ble, by the addition and deletion ofules. The maindis-antages are a lack of internal structure and the depen-

    of deductions on the selection strategywhichakesimes hard to interpret.

    . The Compromise Between Knowledge Acquisit ion and

    The differences between the various approaches reflect,hers, their bias towards either the expression orof knowledge. Semantic networks claim o be nat-

    systems favor moreefficient use of knowledge. The logical family s in the

    We wil l investigate here our needs for an R E languageh respect to these two aspects: what knowledge shouldit will be used for.

    Expression o f KnowledgeKnowledge acquisition i s known to be a difficult prob-

    is particularly true inRE, where the situation i snecessary knowledge is spreadcan answer questions, but do not usually

    iew on his knowledge. Additionally,heset motivated, and feel it an unnecessary ex-

    RE language must set i t s topWe will distinguish two aspects of this task: the identi-

    hea certain real-world phenomenon

    into a basic concept of the knowledge representationan-ge.The latter impliesfurther constrain ing the identif iedi t s possible characteristics. The sep-

    is somewhat arbitrary s the same informat ion couldn one or anotherway, depending on thean-i s used here for presentation purposes.Wewilldiscussthetwoaspectsinturn,anddevoteathird

    part to the structuringmechanisms. The presentation usesinformal examples from two classical RE problems: a dataprocessing application (the management of a library) and

    Ident ification o f concepts: As said before, the knowl-e we want to records of a general nature, andoes notI t s characteristics are listed

    in [I61and are summarized below.1) A well-known tool in organizing knowledges the clas-sification of phenomenanto categories. A subdivisionhatis proposed as natural in many fields (AI, databases, pro-

    uses objectsand associationsbe-n a very broad

    sense, namely, anything that s perceived individually. Oner hand, associations are only perceived if the as-

    sociated objects are perceived themselves.Floors and elevators are objects. is-located-at i s a pos-sible association between them.

    decision to use an bject or n association may be quite

    subjective, but this oes not prevent thelassification frombeing useful.

    It s desirable to urther distinguish different kinds of ob-jects and of associations. For objects, we can distinguishthosewhich areof interestythemselves, likeelevatorsandfloors,from thoseonlyused tocharacterizetheformer, like$7 which is the price ofa given book.

    A distinction betweenassociations i s based on the ameidea. Some associations, such as is-located-at, apply be-tween several objects of interest byhemselves. They char-acterize each of the objects involved.

    In theexample above, is-located-at characterizes theelevator (at which floor s it?),as well as the floor (whichelevator is at it?).

    Other associations apply betweenan object of interestndanother one which is not.

    The association price between a book and 7 is an ex-ample.2 There are individual objects as well as groups of ob-

    jects.The ground floorand the top floorre individual objectsof interest but the group ofll floors i s also interesting.

    Objects often belong o several groups at a time.A book may belong to the group ofooks ofa particularauthor in the library, ando the groupf the lentbooks.

    A group may be considered an object of interestand thusparticipate in associations.Thegroupofbooks in the l ib ra ryhasanas soc ia t ionca l l edmaximum-number, which is the upper imit on thenumbers of books.3) Objects and ssociations are ime-dependent. Objects

    need not exist at ll times, and associations may change ithtime. This providesan implicit concept of tate, formed bythe objects and associations in existence at a given mo-ment.

    Members of the libraryegister andesign, havingtherebya time-dependent membership. The association is-lo-cated-at between elevators and floors is also time-de-pendent.

    The membership of objects in groups i s also time-depen-dent.

    The group o f books owned by the library evolves wi thtime, as books are bought, lost, or destroyed.

    It must be possible o refer to time alues explicitly, for in-stance,todenotethenumberofbooksinthelibraryonApril2 , 1986.

    4) Dynamic phenomena may be perceived eithers statetransitions or as instantaneous objects. The atter, calledevents, areused when a phenomenon i s instantaneous andof interest by itself. This event may establish associationswith other objects.

    An event request-for-elevator i s associated to the floorwhere it was issued.

    A specific use of events i s to distinguish different happen-ings, that would lead to the same state transition.

    et a / . : LANGUAGE FOR REQUIREMENTSENGINEERING 1433

  • 8/12/2019 IR02 - A Knowledge Representation Language For

    4/14

    The events arrival of a new book and return of a lentbook could well result in theame state change, i.e., anadditional book i s now in the ibrary.

    Events may be simultaneous, and neednot have an effect.They are thus not simplynamed state transitions. They in-troduce a further refinement among the objects whichreof interest by themselves.KR languages ful fil l these requirements to various ex-tents. The difference between object and association i srather common.Some semantic networks treat objects andassociations as concepts, without making the dif ference,but others distinguish the twoategories of concepts.Thelogical approach and production rules make it by distin-guishing objects and tuples of objects.rames correspondtoobjects, whereas associations are expressed y slots. Slotsreferencing other frames re associations between objectsof interest. However, a further distinction between differ-ent kinds of objects s uncommon.

    The distinction between individuals and groups, and thepossibility of considering groups s objects i s a basic ideaof semantic networks. The other formalisms are weaker,and provide away to handle generic objects of a group, butnot the group s an object. This is done usingvariables infirst-order logic, using the pattern-matching mechanism inproduction rules, or by means of generic frames.Semantic networks have no special provision for tem-poral aspects, but can consider time values and events asconcepts like all others. Logical approaches can handle timevalues as one of their domains, and add a time argumentto objects andassociations. Another approach is to use al-ternate logics which privilege the handling of time; for in-stance, modal or temporal logic. In connection to rames,scripts deal ith events, actions, and temporal relationse-tween them. Production rules easily represent state tran-sitions, but this is a limi ted way of expressing time depen-dency.

    Statementof constraints: In order toease this part ofthe process of knowledge acquisition, various kinds of con-straints, as well as various styles, should be allowed.We wil ldistinguish stat ic anddynamicconstraints,and or heexpression of the latter, the procedural and declarativestyles.

    1 Static constraints are those whichare true at all times.Examples are numerous, and only few commonones aregiven below.

    Existence of objects: levators are permanent; each bookin the libraryhas a different title.Existence of associations: a book has always an authorand a title.Cardinality of groups: thelevators are three in number.Cardinality ofassociations: a book can be lent toat mostone member, and a member can borrow at most twobooks at a time.2 Dynamic constraints make referenceo several states,i.e., they describe restrictions on the evolution of the ob-

    jects and associations.A book broughtback to the library must ave been lentsome time before.

    We distinguish two broad styles for expressing dynamicconstraints: the proceduraltyle, and the declarative tyle.3) In the procedural tyle, only astate and i t s immediate

    successor maybe referenced. This defines the dynamivolu tion on a state by state basis, where the next state isdetermined from the current one, and possibly from theevents taking place during the state transition.

    If an upwards elevator request is expressed on a floorilluminate the up button on that floor.4) In the declarative style, there is no limitation on the

    states and events thatcan be referenced n the constrainTypical examples are statements such as if this holds instate, this will holdater, this event may not be followedby that one, etc.

    Each elevator request expressedtafl oorw ill result sometime later in a stop ofn elevator at this floor.Each library member borrows t leastone bookper year.The logical approach, intended primari ly at expressing

    statements, is of course good at it, at least for static state-ments. The expression of dynamic statements dependsnhowthe temporal dimensions included. If the logics aug-mented with a time parameter, any kind of dynamic con-straint can be expressed. Modal or temporal logic, on other hand, puts some restrictions on the possible state-ments. The level of expression of the other approachee-pends on the extensions available in he particular an-guage underonsideration. Semantic networks,orinstance, vary from complete bsence of constraints o theexpressive power of logic with time. Production rules ba-sically constra in thestate transition, butcan express moreby including extraneous information in the state. This is,however, heavy and unnatural.

    Structuring mechanisms: Thisquestioncould havebeen ackled under he heading identification of con-cepts. Nevertheless, it is traditionally treated with peciaemphasis. The reason i s that the structuring s particularlyuseful in condensing information, thereby easing i t s r e presentation and use.

    Structuring consists in recognizing and expressing therelation between the details and thessential, for instance:

    the relation between the parts and the whole,the commonality of properties amongeveral objects,the relation between exceptions and general rules.

    Each floor i s equipped with two buttons, one to requean upelevatorandone o equestadown-elevator.Exceptions are the ground floor equipped only withanup buttonand the top floor equ ipped only with a doone.Every library member has a name and an address. Thelibrary i s managed byamembersboard,which i s asubgroup of the members. Therefore, each member ofthe board has a name and an address.In the example above, the concept of group is used to

    express a common ability to participate in some relation.The groups can thus be usedas types, but with importandifferences with respect to the types in ogic or n pro-gramming languages. The membership in groups is time-dependent, whichmeans that an object may be allowed tparticipate in some relations at some point in ime, but noat another. Additionally, there i s no restriction on the in-tersection of groups, and they can be themselves consid-ered as objects.

    Structuring can also help, dur ing RE, in combining he

    1434 PROCEEDINGS OF THEEEE, VOL. 74, NO. 10, OCTOBER 1986

  • 8/12/2019 IR02 - A Knowledge Representation Language For

    5/14

    s always a highercommonality can

    found. For instance, some peopleonly know of ageneralse, whereas others only know of a fewubcases, or evena full structured description will provideSemantic networks and frames provide the structuringnotdistinguishclassificationandgeneralization,by

    same IS-A ink, but most distinguish them. On thed, the logical approach and production rulesys-

    s are lacking structuring mechanisms.Use of KnowledgeWe noted above that knowledge acquisition s an essen-

    E. On the otherand, the use of knowledges less of a problem; building an expert system i s not theKR techniques here i s only tosome important knowledge that is usually

    let every actor agree on it.Four means for mproving communication will be dis-sed in turn: formality , deductive power, abstractiona-Formality: A language is formal f it provides agreedas well as mathemat ical rules or nterpret ing

    languages sed bycomputers-such asming languages-are formal, as thecomputer mustable to reject ill-formed sentences, and to handle the

    way.In RE, formality is advocated, not for use by computers,

    of precise knowledge must be ransferred be-It i s however not realistic to assume that all actors of REl be able to read a formal language. Instead, the formal

    act as a depository of the common knowl-e, only used byexperts. Its use for interacting withna-i s discussed under the heading conversion to-Deductivepower: The deductivepower associated

    h a anguage dependson the availability of rules fore-sentences from givenones. Deductive power s

    ages, which are formal, do not include ru les of deduc-Deductions are useful in RE for several reasons:

    The knowledge that is recorded i s acquired from var-manner, with potential in-

    between contributions. The inconsistencytwo tatements s recognized by showing that they

    mply contradictory statements.There might be inconsistencies in the interpretation ofthe concept ofa book. It mightbe a unique physical ob-ject for some, and an abstract one(e.g., Hamlet, byShake-speare) for others. This can be detected by noting hat,intheformercase,abookcannotmeaningfullybeseveraltimes in the library, whereas it can in the latter case.

    It s not easy to make sure that formal description ap-ay to checkis to deduce new facts from the available nes, and to

    Elevator's doors are closed during a transportation i sa property implied by theact that the closing of doors

    i s a prerequisite to an elevator's move and hat heiropening i s conditioned by the stop of the elevator t afloor.

    As stated in Section I, part of the work in RE i s to es-tablish that the behavior of theystem and itsenvironmentcombine harmoniously, and chieve the desired global ef-fect. This can be proved by deducing this effect from thedescription of the two behaviors.

    In the librarysystem, an objective i s to have the systemknow thata book i s available at most 1 h after its return.This will be achieved if the librarian checks it in within50 min and if theystem handles this information within10 min.The formality and the deductive power of the logicalp

    proach are its main strength.ttheothe r extreme, semanticnetworksdonothaveaformal basisonwhichthereisawideagreement. Some proposals have been made, however, inthis di rection. Frames and production systems have theirsemantics defined in terms of their in ference engine.hisimplies that their deductive powers limited to whatheseengines can do. In particular, it s easy and efficient o verifyfacts, but not to establish general properties.

    Abstraction: Abstraction i s a mechanism that omitse-tails from awhole. Given the representation ofome knowl-edge, one obtains n abstracted version by just suppressingsome parts. This i s of no great use when done arbitrarily,but becomes interesting when combined with the struc-turing mechanisms above. What should be left out inuse-ful abstraction is

    the parts, while keeping the whole,the noncommon properties, while keeping the com-the exceptions, while keeping the general rule.mon ones,

    In the library, books are considered from several view-points: members are interested in knowingwhat booksare currently available, the library board s interested inbooksacquisition,and thelibrarian isconcerned with thebooks whichare currently lent out.Each view deals wi thonly part of the book's characteristics, ands thus an ab-straction of the concept of book characterized by its pur-chase date and price, itsast lending date and borrower,and its last return date.This form of abstraction i s important to ensure a good

    understandingof he argeamountsof nformation n-volved in RE. It permits first looking at the essential, andthen going down the levels of detail-the to pd ow n ap-proach-or conversely, firs t looking t a detailed small piecebefore placingt in a moregeneral framework-the bottom-up approach.Abstraction is also used in RE when isolating the infor-mation belonging to specific person's view. Only this in-formation i s used when communicating with thatperson,because the rest i s unknown to him.

    Semantic networks, and o some extent frames, are bestsuited for abstraction: networks an be merged nto largerones; generalizations or specializations can be extractedfrom part of a network; a mechanism of definition allowsto abstract a network into a single concept. he logic rep-resentation formalism has basically only the ability tode-fine a function or predicate thatbstracts from a complexexpression. This is, however, less useful because it gen-

    t a / . : LANGUAGEFORREQUIREMENTSENGINEERING 1435

  • 8/12/2019 IR02 - A Knowledge Representation Language For

    6/14

  • 8/12/2019 IR02 - A Knowledge Representation Language For

    7/14

    Identificat ion o f Concepts: As requi red inSection I I ob-ts and associations form the basis for classifying con-

    ntities, events,values, whereasassociations are relationsr attributes.

    are the intended meaning of thoseconcepts, whichl be formally defined later.

    An entity i s a concept perceived individually, being finterest by itself, and having a certain duration.An event i s a concept perceived individually, beingofinterest by itself and instantaneous.A value i s a concept perceived individually, which i sonly of interest when associated with an entity or anevent.A relation s a temporary or permanent ssociation be-tween entities and/or events, possibly also involvingsome values.An attribute i s a temporary or permanent associationbetween an ent ity or event, and a value.

    Entities are distinguished from events by heir duration,m values by their intrinsic interest. Relations and

    utes are distinguished from objects by the fact thatare perceived only if the objects theyharacterize areeived. An attribute linksn object of interesto a value.

    Declarations areprovided graphically, i n a style inspiredork diagrams. Entities appear as squareds as rounded boxes, value sets by theirname,

    ns by arrows, and attributes by simple lines. For in-2 declares that there are two entities calledand library,which may be linked bythe relation

    number-of-membersl n t e p e r

    2. Declarat ion of ind iv idu al ob jects .

    ages. The event establishment may be linked toy by a relation called of. The library has an at-

    This example declares only ndiv idual objects and as-It is also possible to declare groups in ERAE.3. It declares the groups of

    and elevators, which are entities, and the group ofor-requests, wh ich are events. The three groups are

    f l o o r s requests e levatorse levatorf ro mS-located-at

    number d l rect lonIn teger (UP. d m 13. Declarat ion of groups.

    A group ofentities i s thus denoted byi s a box with an inner rounded box. Arrows andboxareassoc ia t ionsapp l icab leis the case for numberis the number of membersn the groupfloors.Ar-

    rows and lines connected to an inner box denote associ-ations applicable to all members of the group. This is thecase for instance for is-located-at linking an elevator toa floor.

    In fact, is-located-at may have several occurrences ata time and denotes set of relations. Similarly, directiondenotes a set of attributes. We wi ll sti l l call these sets re-lation and att ribute and use the context to remove theambiguity. We were temptedo use reletionship insteadof relation to emphasize the difference, but there i s nocounterpart for attribute.

    A predefined relation, namedisin, applies between agroup andt s members. Fig.4declares that top floo rmaybe a member ofhe group floors. This relation i s similarto the is-a link in semantic networks (at least when usedfor classification).

    1 1s-In f l o o r stop- f loorFig. 4. The predef ined is in re la t ion.

    As requested i n Section I I objects and associations aretimedependent. Therefore, an association like managesbe tween theen t i t i e s boa rd and l ib ra ry i son lydec la redas being possible. It need not be truet all times. Thiss thecase for all ssociations involving only entities (andalues).As events are nstantaneous, it makes no senseto have theirassociations change wi th time. For nstance, the relationfrom between a given elevator-request and a flooroesnot change with time.

    Objects havealsoatemporal dimension.This i s reflectedby an implicit attribute of every entity and event. For en-tities, it i s an attr ibute exists taking i t s value in theBool-eans (true or alse). This attr ibute associates an ent ity withtrue at acertain moment if that entityexistst that moment.For events, here s an at t r ibu te t imeassoc ia t ing an eventwith i t s time of occurrence. As always for events, this as-sociation does not vary with time.

    Note that the relationisin, expressing membership, streated as any other. It i s therefore timedependent forgroups of entities, but not for groups of events. The ex-ample aboveexpresses only that top-floormay be in thegroup floors at some time. O f course, wn can add theconstraint that this membership i s permanent, but this isnot a declaration any more.

    As requested in Section II, nothing prevents an objectfrom being in several groups at a time.

    Statementof Constraints: The declarationsabove defineconstants and predicatesn atypedirst-order logic. Typingis now meant in the mathematical sense: there are pre-defined disjoint omains, or types, which are Event, Entity,and some value sets (Time, Integer, String, etc.). Al l vari-ables, constants, functions, and predicates take their value(and argument) n a type. Types should be careful ly distin-guished from groups.

    The declaration diagrams define he following symbol:Each entity box-individual or group-defines a con-Each attr ibute or relation not involvingvents definesstant of type Entity.

    t a/.: LANGUAGEFORREQUIREMENTSENGINEERING 1437

  • 8/12/2019 IR02 - A Knowledge Representation Language For

    8/14

    a predicate taking as arguments the various objectsinvolved, and an additional time value.Each attribute or relat ion nvolv ing events defines apredicate takingas arguments the various objects in-volved.

    Those declarations, expressed by diagrams, come inad-diti on to imp lici t declarations associated wi th the prede-fined domains.

    The equality predicate.Thepred icate ex is ts tak inganent i t yandat imeva1ueas arguments.The predicate time takingan event and a ime as ar-guments.The predicate isin taking, either two entities and atime value, or an event and an entity as argument.Constants, functions,andpredicates in he variousvalue sets, such as 0 1 +, e tc.

    Let us illustrate this by an example (Fig. 5 . This diagramdeclares three constants f type Entity: elevators, floors, and

    f ioorsIs-located-at

    numberInteger

    Fig. 5.

    topfloor. It declares two predicates: is-located-at andnumber (isin i s predefined). Here are some well-formed

    formulas:Assume from now on that theariables x,y are typed onEntity, i i s typed on Integer, and is typed onime (whichwe write x,yEntity; iln teger; CTime).isin(x,elevators,t)This predicate i s true if the entity i s a member of thegroup elevators at time tis-located-at(x,y,t)This predicate can only be true if i s an elevator, y i s afloor, and that elevator i s located at that floor at time tnumber(floors,i,t)This predicates true if i s the number f membersn thegroup of floors at time tConstraints are expressed as formulas using hese sym-

    bok and the usual first-order logicconnectives. n theameway that thereare impl icit and explicit eclarations, thereare also impl icit and explicit statements. The former ex-press propert ies known beforehand, and assumed whenwrit ing the diagrams. Examples are:

    All entities and events in thediagram are different.elevators # topfloorelevators # floorsfloors # topfloor.

    A relation can only be true if the objects involvedbe-long to the right roups.Vhis condition i s necessary but no t sufficient.)

    v x,y,t: is-located-at(x,y,t) * isin(x,elevators,t)A isin( y,floors,t).

    A relation or attribute may only be true when i t s en-tity arguments exist.v x,i,t: number(x,i,t) * exists(x,t).The complete l i s t of these predefined statements, as well

    as the precise rules to derive declarations from diagrams,provide the ERAE model with formal semantics. They canbe found in[18].

    We will now show that explicit constraintsan be statedwith the flexibility required inSection II.The following statement expresses that the group of l-evators does not change wi th time, and consequently, hatall elevators are permanent:

    3 t: isin(x,elevators,t) * v t: isin(x,elevators,t).Another example i s the statement that all books in the

    library have different titles:Assume title is declared as attribute of all books andtakes i t s values in String. Let us type the variable s onString (s:String).vx,y,t,s:isin(x,books,t) A isin(y,books,t)

    A title(x,s,t) A title(y,s,t) = x = y.Several shorthand notations an be used to simplifycom-

    mon formulas. The firs t ones to assume that free ariablesin formulas may be omitted. Any external universal quan-tification may thus be skipped. he secondone i s to use asfunctions thepredicates that are known tobe functional.For instance, i f we tate separately that each book has justone title, we may replace

    title(x,s,t) by title(x,t) = s.By combining those two abbreviations, the precedingformula becomesisin(x,books,t) A isin(y,books,t)

    A title(x,t) = title(y,t) = x = y.There i s a further abbreviation that i s frequently useful

    for static constraints: avariableof typeTimemay beomittedif it i s universally quantified overa whole formula, and a ppears only as the last argument of relations and attributesThe formula above now becomes:

    isin(x,books) A isin(y,books)A title(x) = title(y) * x = y.

    A very frequent form of static constraint deals wi th thecardinality of relations or attr ibutes. hese statements canbe expressed as formulas, but here again, we provide anabbreviation which is, this time, graphical. The statementa book can be lent to t most one member, and a mem

    can borrow at most two books at a time appears in thediagram of Fig. 6.

    In general, the notation i-j close to the end o f a linemeans that each object at that end participates t all timesin a number ofassociations comprised between and (in-cluded). The sign N denotes nfinity, and i-i may be

    1438 PROCEEDINGS OF THEEEE, VOL. 74, NO. 10, OCTOBER 1986

  • 8/12/2019 IR02 - A Knowledge Representation Language For

    9/14

    .4+6 . Abbreviation for connectivity constraints.

    i. Absence of such a constraints equiv-0-N and 1 guarantees that an association iss expressed as shown in Fig. 7.The

    booksl7. Abbreviations for a unicity constraint.

    sisin(x,books) = 3 s: title(x) = s .Let us now turn to theynamic constraints, which make

    to the tates at severalmoments. Heres a simple

    A book brought back to the library must ave been lentsome time before. Assume the two groups of eventsbook-returns and book-lendings, wi th a functionalrelation of towards books.ev,,ev,: Eventisin(ev,,book-returns)* 3 ev,: isin(ev,,book-lendings) A of(ev,)=of(ev,)

    A time(ev,) < time(evl).In Section II, we require some flexibility n expressingboth a proceduralIn the proceduraltyle, the constraints give sufficient or

    essary conditions for transition to happen. A ew statedetermined from the one just precedingt, and possibly

    the vents taking place duri ng the tate transition. Ani s if an upwards elevator request s expressed onloor, the up bu tton on that floor should be i lluminated

    8 ) .

    U8.

    ev:Eventisin(ev,elevator-request) A direction(ev)=up* up-button(from(ev),time(ev))=illuminated.i s the time ust after it has

    In a declarative style, there i s no limitation on thetatesnts that can be referenced n the constraint. An x-i s each elevator request expressed at a floor wi ll

    later in a stop of n elevator at his floor9).

    elevators f o o n r e qw t selevatorD.i Is-located-at from

    Fig. 9.

    isin(ev,elevator-request)= 3 t,x: t > time(ev) A isin(x,elevators,t)A is-located-at(x,from(ev),t).

    Structur ing Mechanisms: Classification ofentitiesorevents i s achieved by means of the concept of group. Asnoted earlier, implicit statements express mong others thatrelations and attributes an only be true if theirrgumentsbelong to the right groups. In other words, the ability toparticipate in those relations and attributes s inherited byall elements of the group. For instance, Fig. 10 states thateach floor may havehe attributes pb utt on and down-but-ton,with values in (illuminated,off).This inheritancecan be

    f l m r s

    Fig. 10. Possible attributes of group members.

    refined by means of connectivity constraints on the attri-butes and relations. ig.11states that up-button and down-button are mandatory attributes of all floors.

    II l lumlnated, off1

    Fig. 11. Mandatory attributes of group members.

    This is, however, undesirable,as thegound and top floorsdo not have the two attributes. But we can also state thatall floors, except the ground and topne, have he two but -tons:

    i,j: (illuminated,off)isin(x,floors) A x # top-floor A x # ground-floor* 3 i,j: up-button(x)=i A down-button(x)=j.Asthe membership n groups i s time-dependent, theabil-

    ityof an object toestabl ish ssociations mayvarywith time.The elements of a group can be characterized by other

    properties than the ability to participate in relations andattributes. An example i s the group ing of heterogeneousevents that are part of an action. We can define an actionof adding a new book to the librarys a group consistingof oneevent in the groupilling-identification-card, one insticking-label-on-book, etc. The common point of all thoseevents i s that they are related to the same book.

    Another structuringmechanism i s also available throughthe concept of group inclusion. Theres a predefined pred-icate called isincluded which provides generalization,just l ike is in provided lassification. Of course, isincludedapplies only between groups, and i s time-dependent.Fig.12states that isincludedmay apply between the group

    t a / . : LANGUAGE FOR REQUIREMENTSENGINEERING 1439

  • 8/12/2019 IR02 - A Knowledge Representation Language For

    10/14

    membe r s ofthe board

    addreaStrlngtringnteger

    Fig. 12. The group nclusion structuring mechanism.

    members-of-the-board and the group members. To statethat this inclusion is permanent, we would say:

    isincluded(members,members-of-the-board).The isincluded relation mplies also the nheritance of

    properties. In hisexample,the board members haveanameand an address, because they are members and all mem-bers have those attributes, but they have an addi tional at-tribute age. So, inheritance of general propertiesan becombined with addi tion of specific ones. This i s also truefor classification, as a specific element of aroup may havemore properties than are common to all members.

    B . Use of KnowledgeThis section gives only a broad overview of these of the

    ERAE model, as the subject of th ispaper is more a descrip-tion of the anguage, than guidelines for using it properlyin RE.

    Formality and Deductive Power: The ERAE model i s ob-viously a formalanguage, and itssemantics is precisely de-fined in[18].t s deductive power s that of first-order logic.AsexplainedinSectionI1,deductionsareusedtochecktheconsistency of requirements, s wel l as properties that giveindications of completeness. We will illustrate this by anexample.

    An overall requirement in the library application s thata book must be considered available by the computerys-tem at most 1 h after i t s return. This can only be achievedthrough the cooperation of theibrarian, who informs thecomputer about the return,nd of thecomputer which pro-cesses that nformation. This cooperation i s specified bymeans of the following statements, referring to the dec-larations of Fig. 13:

    Fig. 13.

    br,ci: Event;Librarian axiom: a book must be checked n wi thi nisin(br,book-returns)

    50 min of i t s return.* 3 c i : isin(ci, check-in)h of(br)=of(ci)

    A time(ci) < time(br) 50 mincount within 10 min.Computer axiom: a check-in must be taken into ac-

    isin(ci,check-in) * 3 t : t < time(ci) 10 minOverall axiom: a book i s known to be available within

    one hour of i t s return.isin(br,book-return)

    A isin(of(ci),available-books,t)

    = 3 t: t < time(br) 60 minA isin(of(ci),available-books,t).

    The interesting point s that theoverall axiom s a logicimplication of the two othernes. Thismight seem a simpexample, but it applies to more complex, or less obvioustatements. Examples are given in [Iq.

    Abstraction: An abstracted version of a model is nothinbut a subpart of this model. In the ollowing, we wil l giva brief example of abstraction combined with generalization. This i s a particularly useful combination, which aa top-down presentation of a large piece of knowledge.

    At the highest evel of abstraction (Fig. 14), books onlhave a title and author($. This view is shared by all pesons involved. At a lower levelFig. 15) , for the libraria

    St r lng StrlngFig. 14. High-levelview of books.

    t ft le k + h o r ln meSt r l ng

    St r l ngt r l ng

    Fig. 15. Detailed view of books.

    the current borrower i s an additional piece of informa-tion associated with the book.Of course, abstraction may alsoapply to formulas. In th

    case, it s lessobvious, but can be proved, thatn abstractedview is consistent with a more detailed one.

    Conversion Mechanisms in the Language: The conver-sion of an ERAE description towards a different notation susually preceded by an abstraction, where only some as-pects are kept: those that are of interest, or simply thosethat can be represented in the arget notation.

    We wil l here illustratethis by astate transition diagramwhich i s often found useful for real-time systems, such asthe elevator control . Let us focus our attention on someevents happening on a floor, and their effect on a part othe state. The events are elevator-requests and floor-serv-icings (the event of an elevator stopping at the floor); thestate is limited to the illumination of the button onOn thebasis of the ERAE description, and of rules of conversion, we may derive the Petri-net-like graph of Fig. 16.

    In thisraph, the circles represent he possible states andthe bars represent the transit ions from tate to state. Thereisatoken indicatingthecurrentstateandmovingfromstate

    1440 PROCEEDINGS OF THEEEE, VOL. 74, NO. 10, OCTOBER 1986

  • 8/12/2019 IR02 - A Knowledge Representation Language For

    11/14

    EDUESTE L E ~ A T O RREQUEST16. State transition graph for the llumination of onebutton.

    when transit ions happen. Initially, it i s in the stateThe diagram expresses that, from the tate off, the

    go to thestate on by passing along the tran-on elevator-request. From this new state, the tokent back to

    same state on. The transit ion floor-servicing re-tate off, where a further floor-servicinghas

    effect on thestate.

    COMPARISONITH OTHER APPROACHESThis section gives an overview of existing RE languages,

    requirements i n Section II. These lan-s orig inate from three main fields: database, speci-

    tion languages, and artificial intelligence. We wi ll dis-ss the general ideas from the two firstields only, as thein Section II. We willn investigate, in more detail, two RE languages that were

    same ideas as the ERAE model. One owesideas to knowledge representation techniques, and the

    database conceptual modeling.Database Conceptual Modeling

    The idea of modeling the universe ofiscourse, i.e., theon of the eal world referred to by the database con-I S 0 report [30] i n 1982.report calls a conceptual schema the exp lic it de-

    The Declarations: The concepts of object andssociatione been widely recognized i n conceptual models. (See21 for a survey.) There i s additionally a general

    cy to distinguish objects andssociation of variousr instance, objects of interest are called entitiesn

    ionship model [12], [38], and non-lexical ob-pes in theBinary model [I], [43] or in NIAM47l. Ob-

    hemselves areoften called values,reas associations are grouped in relations or attributes,

    everal objects of interest, orinterest to a value.

    The emphasis i s clearly on groups ofbjects, rather thanduals. These groups bear various names, for instance,

    ity class in [12], [28], or object type in [8]. The fact thats explicit ly recognized in 12],, [38]. Individuals necessarily belong to an enti ty group,s described in the onceptual schema.

    r when one comes to describe the so-information base, .e., facts then happen and arei s however clearly

    tates factsGroupsareneverconsiderednormalobjects. Some-es, however, they may be grouped hemselves in highers the case in ACM/PCM [8] and in SDM

    The concept of event is far less common than those ofentit ies and alues. Examplesof languages proposing themare DSL [5] o r REMORA [39]. Those events however musthave an effect.

    TheStatements:Early conceptual schemata only con-sisted of declarations and acked any statement of con-straint. This was soon recognized as too weak, and staticconstraints were permitted, but o ften in restricted form:cardinali tyof groups, connec tiv ityof associations, etc.Thisis the case in the Entity-Relationship model [12], in ACMlPCM [8], or in NIAM [47l.

    Dynamic statements were considered later, and first in-t r oduced , ina l im i t ed fo rm,v ia theconcep to feven t . I nDSL[5] and INCOD-DTE [2], the effect of an event can only bedescribed in terms of thetates just preceding and just fol-lowing it. Reference to past and future tates i s impossible,as there s no explicit concept ofime. In REMORA[39], timeappears explici tly, allowing referenceo any state f theys-tem. There s still a limitation in thatn event musthave animmediate effect. n order t o express the delayed effect ofan event, here must be traceeft by thisvent in the tateat i t s time of occurrence. The more declarative style ad-voca ted inSec t ion I I i s f ound in [13 ]and [ lO ] .The la t t e rwo rkwill be presented hereafter with more details.

    Structuring Mechanisms: Classification i s limited in theselanguages,because individualscannotbedeclared be-forehand. Generalization i s often provided in the form ofan inclusion relation between groups: subclasses in SDM[28], subsets in INCOD-DTE [2], categories in [19]. In SDM[28], a characteristic predicatemust beassociated with thesubgroup definition. Some authors provide a more restric-tive form of inclusion, i.e., the defin ition of a partition. Agroup G i s said to be partitioned into G . . , G if eachmember ofG i s also a member of one and only one of thegroups Gi. Examplesaregeneral izat ion n [2],orgenerictypein [44] and i n ACMIPCM [8].

    In summary, conceptual schema anguages suffer fromtwo major weaknesses for their use in RE:

    declarations are lim ited togroups, at the exclusion ofconstraints, static or dynamic, can only be stated inindividuals;lim ited ways.

    B Specification LanguagesSpecification languages aim at describing the effect of

    programs in more abstract terms than programming lan-guages. A number of RE languages have included basicconcepts from this field, such as types, functions, controlflow, data flow, state, finite-state machine, state transition,processes, communications between processes, etc.

    We already noted that thoseanguages aimed at describ-ing computer artifacts, rather than at expressing generalknowledge. This obviouslyeads to some inadequacies thatwill now be described in detail.

    Dataflow Models: Dataflow models emphasize the dataprocessing activities. Themain models ofhis category areSADT [41] and SA [14]. The basic objects of interest in theworld are consideredo be activities linked by relations cor-responding to t he data flowing between them. In a dualperception [41], the stress may bepu t on ctivities being n -ary associations between the input and output data. This

    t a/ . : LANGUAGE FOR REQUIREMENTS ENGINEERING 1441

  • 8/12/2019 IR02 - A Knowledge Representation Language For

    12/14

  • 8/12/2019 IR02 - A Knowledge Representation Language For

    13/14

    s from tatements, and ses orthogonal basic concepts.latter leads to prefer events o activities. Availability of

    ret in R M L should be noted.CONCLUSION

    Ashi ftof emphasis is currentlyobserved in requirementsystem i s not any more the ole ob-

    Both the application domain and the sys-RE languages, that owes moreknowledge representation than to the specification of

    A look t artificial intelligence s in order beforeng to define such a language.

    In investigating the specific needs of requirements en-s es-i t s automatic use by a computers less im-

    han n artific ial ntelligence. This has led us toas a basis the techniques that seem the most ap-asy expression of general knowledge:e-

    anguages. In combin inghesesti l l other ideas from database conceptual modeling,me of our own, we have obta ined the E R A E model.

    Yet, thework reported heres only part of a larger project,aims at covering the whole of software developmentth integrated formal methods. This implies that mucht-

    i s devoted to interfacing theR A E model with pec-on languages that are used dur ing design and imple-i s considered one of conversion

    m ERAE to another formal languagewith different prim-aper, the

    Even on the topic of requirements engineer ing,ome as-have not been reported. An important

    is that we aim at defining a methodology, not justlanguage. This means that the process of acquiring and

    ting requirements deserves as much attentionas theWe did not insist on the practical aspects of this work.

    define yet another requirements language,justified as i t may be, wou ld be useless if it were not

    se of theanguage. Case studies have been and re stillon real applications wi th naive systems users.

    support environment s under design and currently com-an editor for graphics and formulas with aatabase

    requirements. Plans include tools for handlingiews onts, for converting ERAE in to various nota-

    for performing deductions, etc.There are plans to improve the ERAE model as well. For

    be included. Another mportant feature isuch as activity, mes-

    ge, process, etc. They wi ll not, however, form an exten-R A E model, but wil l e defined n terms of the

    We would like to thank Fiona Williams for her contri-RAE mode l, and the reviewers fortheire lp

    REFERENCESJ . R. Abrial, Data semantics, in Data Base Management, J .Klimbic andK. Koffemann, Eds. New York, NY: Elsevier, 974.P.Atzeni,C.Batini,V. DeAntonelIis,M. Lenzerini,F.Vilanelli,and B. Zonta, A computer aided tool for conceptual database design, in Automated Tools for lnformation SystemsDesign, H. J. Schneider and A. I. Wasserman, Eds. Amster-dam, The Netherlands: North-Holland, 1982, pp. 85-105.R. Balzer and N. Goldman, Principlesof good software spec-ification and their implications for specification languages,in Specifications of Reliable Software. IEEE Computer SOC.,A . Barr and E. Feigenbaum, The Handbook ofArtificial lntel-ligence, vol. 1 . Los Altos, CA: W. Kaufman, 1981, ch. 3, pp.F. Bodart andY. Pigneur, A model and aanguage for func-tional specifications and evaluation of information systemdynamics, in Formal Models and Practical Tools for lnfor-mationsystem Design. Amsterdam,The Netherlands: North-Holland, 1979.B. W. Boehm, Software Engineering Economics. EnglewoodCliffs, NJ: Prentice-Hall, 1981.A. Borgida, S. Greenspan, and J . Mylopoulos, Knowledgerepresentation as the basis for requirement specifications, E Computer, vol. 18, pp. 82-91, 1985.M. L. Brodie and E Silva, Active and passive componentmodeling: ACM/PCM, in Information System Design Meth-odologies: A Comparative Review, T. W. Olle, H. G. Sol, andA.A. Verrijn-Stuart, Eds. Amsterdam,TheNetherlands:North-Holland, 1982, pp. 41-91.M. L. Brodie, J . Mylopoulos, and J . Schmidt, On ConceptualModeling. New York, NY: Springer-Verlag, 1984, pt. 2 , pp.J . A. Bubenko, lnformation modeling in the context of sys-tem development, in lnformation Processing 80. Amster-dam, The Netherlands: North-Holland, 1980, pp. 395-411.formation analysis, in nformation Modeling, .A. Bubenko,Ed. Chartwell-Bratt Ltd., 1983, pp. 125-169.P. P. Chen, The entity-relationships model: Towards a un-ified view of data, ACM TODS vol. 1 , no. 1 , pp. 9-36, 1976.J .M. V. De Castilho, M. A. Casanova, and A. L. Furtado, Atemporal framework or database specifications, in Proc. 8thlnt. Conf. o n Very Large Data Bases (Mexico City, Mexico,Sept. 1982), pp. 280-291.T. De Marco, Structured Analysis nd System Specification (AYourdon Book). Englewood Cliffs, NJ: Prentice-Hall, 1979.E. Dubois,J . Hagelstein, E. Lahou, A. Rifaut, and F. Williams,A process model for requirements engineering, in ESPRlT85: StatusReport of Continuing Work.Amsterdam,TheNetherlands: North-Holland, 1986, pp. 593-607.2nd Int Conf. on Data Engineering, pp. 646-653, Feb. 1986.E. Dubois, J Hagelstein, E. Lahou, F. Ponsaert, A. Rifaut, andF. Williams, The ERAE Model: A Case Study, in InformationSystems Design Methodologies: mproving the Practice,. W.Ol le ,H.G.So l ,andA.A.Ver r i jn -Stuar t ,Eds . Amsterdam,TheNetherlands: North-Holland, 1986, pp. 87-105.E. Dubois, J . Hagelstein, E. Lahou, F. Ponsaert, and A. Rifaut,The axiomatisation of the ERAE model, Phillips Res. man-uscript, 1986.R. Elmasri,J .Weeldreyer, and A. Hevner, The category con-cept: An extension to the entity-relationship model, DataKnow/. Eng., vol. 1, no. 1 , pp. 75-116 ,1985 .M. S. Feather, Language support for the specification anddevelopment of composite systems, UCS/Information Sci.Inst., Marina del Rey, CA, Apr. 1985.R. L. Glass, Modern Programming Practices (A Report FromIndustry). Englewood Cliffs, NJ: Prentice-Hall, 1982.S. L. Gerhart and S. Lee, AFFIRM users guide, USC/lnfor-mation Sci. Inst., Marina Del Rey, CA, Feb. 1981.S. J . Greenspan and J . Mylopoulos, Capturing more worldknowledge in the requirements specification, in Proc. 6thlnt. Conf. o n Software Engineering (Tokyo, Japan, 1982), pp.S J .Greenspan, Requirements modeling: A knowledge rep-

    1979, pp. 58-67.

    141-222.

    85-273.

    On concepts and strategies for requirements and in-

    A data model for requirements engineering, n Proc.

    225-234.

    et a / . : LANGUAGE FOR REQUIREMENTS ENGINEERING 1443

  • 8/12/2019 IR02 - A Knowledge Representation Language For

    14/14

    12911301

    13111321

    [341

    resentation approach o software requirements definition,Univ. of Toronto, Toronto,Ont., Canada, Tech. Rep. CSRG-155, Mar. 1984.S. J.Greenspan, A. Borigida, andJ . Mylopoulos, A require-ments modeling language andt s logic, Inform. Syst., vol. 1,M. R. Gustafsson, T. Karlsson, and J .A. Bubenko, A declar-no. 1, pp. 9-23 ,1986 .ative approach o conceptual information modeling, in In-formation System Design Methodologies: A Comparativee-view, T. W. Olle, H.G.Sol, and A. A. Verrijn-Stuart, Eds. Am-sterdam, The Netherlands: North-Holland,1982, pp. 93-142.J . Guttag and J . Horning, An introduction to the LARCHshared anguage, IFIP, 1983.M. Hammer and D. McLeod, Database description withSDM: A semantic database model, Trans. DatabaseSyst., vol.Special ssue on Knowledge Representation, Com-puter, vol. 16, no. IO, pp. 12-123, Oct. 1983.ISOiTC97/SC5/WG3,Conceptsand terminologyfor the con-ceptual schema and the information base, .J.van Griethu-isen,Ed.Geneva,Switzerland: International Organizationfor Standardization, Mar.1982.M. A. Jackson, System Development. Englewood Cliffs, NJ:Prentice-Hall,1983.D. A. Jardine andA. R. Reuber, lnformation semantics andthe conceptual schema, Inform. Syst., vol. 9, no. 2 , pp. 147-1 5 6 , 1 9 8 4 .L. Kerschberg, A. Klug, and D. Tsichritzis, A taxonomy ofdata models, in Systems for Large Databases, P. C. Locke-mann andE. J . Neuhold, Eds. Amsterdam,The Netherlands:North-Holland, 1976, pp. 43-64.B. Lundberg, Specifying deductive capabilities in knowl-edge representation, presented atFlP WG8.3 Working Conf.on Knowledge Representation for Decision Support Systems,Durham, England, 1984.G. McCalla and N. Cercone, Guest Editors Introduction:Approaches to knowledge representation, Computer,vol. 16, no. IO, pp. 12-18, 1983.J .Mylopoulos and H. Levesque, An overview f knowledgerepresentation, in On Conceptual Modeling,M. L. Brodie,J .Mylopoulos, and .Schmidt, Eds. New York, NY: Springer-Verlag, 1984, pp. 3-18.

    6, pp. 351-386 ,1981 .

    (371

    14211431

    [ 4 4 1

    1 4 8 1

    P. G.Neumann et a/., On the design of a provably secuoperating system, in Proc. Int. Workshop on Protection iOperating Systems (IRIA, Rocquencourt, France, 1974), ppA. Pirotte, The entity-property-association model: Annfomation oriented atabase model, in Proc.ICs-77, Morlet anRibbens, Eds. Amsterdam,The Netherlands: North-Hollan1977.C. Rolland andC. Richard, The Remora methodology fornformation systems design and management, n InformatioSystem Design Methodologies: A Comparative Review, TOlle, H.G. o l ,andA.A.Ver r i jn -Stuar t , Eds. Amsterdam,TheNetherlands: North-Holland, 1982, pp. 369-426.G-C. Roman, A taxonomy of curent issues in requirementengineering, Computer, vol. 18, no. 1 , pp. 14-24,1985D. T. Ross and K. G.Schoman, Structured analysis for requirements definition, / Trans. Software fng., vol. SE-3no. 1, pp. I -6 5 , 1 9 7 7 .L. K. Schubert, Extending the expressive powerf semantnetworks, Artificial Intell., vol. , pp. 163-198, 1976.M. E. Senko, Data description language in the context ofmultilevel structured description: Diam2ith Foral, in ProIFlP-TC2 Special Working Conf.n Data Description, NijsseEd. Amsterdam, The Netherlands: North-Holland, 1975, ppJ-M. Smith and D. C. P. Smith, Database abstractions: Ag-gregation and generalization, Trans. Database Syst., vol. 2no. 2, pp. 105-133 ,1977 .W. Swartout, GIST English generator, n Proc. AAAI-82, p404-409, Aug. 1982.D. Teichroew and. A. Hershey, PSUPSA A computer atechnique for structured documentation and analysis oformation processing systems, / Trans. Software Fng., vSE-3, no. 1 , pp. 41-48, 1977.G . M. A. Verheijen and J . Van Bekkum, NIAM: An infomationanalysismethod, in lnformation SystemsDesignMethodologies:A Comparative Review, . W. Olle, H.G.Soand A. A. Verrijn-Stuart, Eds. Amsterdam, The Netherlands:North-Holland, 1982, pp. 537-589.P. Zave, An operational approach to requirements specication for embedded systems, E Trans. SoftwareFng.,VOSE-8, no. 3, pp. 250-269 ,1982 .

    161-175.

    239-258.