WO2004088505A2 - Method and apparatus for using a sequence of commands respecting at least one rule - Google Patents

Method and apparatus for using a sequence of commands respecting at least one rule Download PDF

Info

Publication number
WO2004088505A2
WO2004088505A2 PCT/CA2004/000484 CA2004000484W WO2004088505A2 WO 2004088505 A2 WO2004088505 A2 WO 2004088505A2 CA 2004000484 W CA2004000484 W CA 2004000484W WO 2004088505 A2 WO2004088505 A2 WO 2004088505A2
Authority
WO
WIPO (PCT)
Prior art keywords
tree structure
sequence
items
commands
command
Prior art date
Application number
PCT/CA2004/000484
Other languages
French (fr)
Other versions
WO2004088505A8 (en
Inventor
Deca Radu
Omar Cherkaoui
Original Assignee
Transfert Plus S.E.C.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Transfert Plus S.E.C. filed Critical Transfert Plus S.E.C.
Publication of WO2004088505A2 publication Critical patent/WO2004088505A2/en
Publication of WO2004088505A8 publication Critical patent/WO2004088505A8/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Abstract

A method and apparatus is disclosed for using a sequence of commands respecting at least one rule where a tree structure corresponding to the sequence of commands is built and further wherein an operation is performed on the tree structure to provide a new sequence of commands.

Description

METHOD AND APPARATUS FOR USING A SEQUENCE OF
COMMANDS RESPECTING AT LEAST ONE RULE
CROSS-REFERENCE TO RELATED APPLICATIONS
This patent application claims priority over Provisional US Patent Application N°60/458,364 that was filed March 31, 2003.
TECHNICAL FIELD
This invention relates to the field of computing science. More precisely, this invention pertains to the field of using a sequence of rule-dependent commands.
BACKGROUND OF THE INVENTION
Processing units are often controlled via an operating system which acts as an interface between the hardware and a user.
As known by the skilled addressee, operating systems evolve depending on at least one of hardware improvements and user applications .
While graphics interfaces have been introduced in order to provide more user-friendly interfaces between applications and the hardware of the processing units, prompt commands are still often used for configuring and using the processing devices.
While it is appreciated that prompt commands are simple tools to use, it is well known that using them is not easy for various reasons and that their use may further be with consequences . In the field of telecommunication equipment' it is known to use CLI (Command line interface) to provide commands in order to configure/control ; the telecommunication equipments. The skilled addressee will appreciate that many limitations are found when using prompt commands .
For instance, the execution of a command is conditioned by the context in which it is executed, i.e. the command path or the directory where the command is invoked or executed. Furthermore, the command is dependent on arguments, which means that ■ the success in the execution of a command depends on the correct number and order of its parameters and options .
Furthermore, a command depends on the successful execution of other specific commands. A failed or missing pre- requisite command causes the failure of a subsequent command, which depends on the former. The order or sequence of commands is important in this kind of dependency. Executing the two commands in reversed order will cause the failure of the dependent one.
Furthermore, some parameters of commands are logically dependent on or are in a logical inter-dependence relationship with, parameters of other commands. This means that, even if individual commands are correct syntactically by themselves, their aggregation is incorrect or does not have the desired effect. E.g. the value of some parameter (s) of a command must be set to be. equal or in a specific relationship with the value (s) of one or more parameters of other commands, executed on the same or on different equipments. Usually, a set of commands are executed to achieve an equipment setup that corresponds to an equipment function or usage goal. In this context, when a specific parameter is set up with a value, the inter- dependent parameters' values must be set up accordingly; moreover, when one of these values change, the rest of them must change accordingly to preserve the setup correctness and consistency. The Command Line Interface (CLI) does not reveal those inter-dependencies nor signal the causes of this kind of inconsistencies. Instead, only the effect of the problem is perceived, i.e. the absence of the desired functionality and there is no available corrective indication .
The skilled addressee will appreciate that in the case where the command line interface is used to configure a plurality of telecommunications equipment such drawbacks and their inherent consequences have a tremendous cost on organizations.
There is therefore a need for a method and apparatus that will overcome the above-identified drawbacks .
SUMMARY OF THE INVENTION
It is an object of the invention to provide a method for using a sequence of command respecting at least one rule.
Yet another object of the invention is to provide an apparatus for using a sequence of commands respecting at least one rule.
According to one aspect, of the invention, there is provided a method for using a sequence of items respecting a set of rules, said method comprising providing the sequence of items, building a tree structure of the provided sequence of items, the tree structure having nodes wherein each node comprises an item, performing an operation on the tree structure to produce a modified tree structure, converting the modified tree structure into a new sequence of items and using the new sequence of items.
According to another aspect of the invention, there is provided an apparatus for using a sequence of items respecting a set of .rules. The apparatus comprises a tree structure providing unit for providing a tree structure of the sequence of items, the tree structure having nodes wherein each node comprises an item; a tree structure manipulating unit for receiving the tree structure of the sequence of items and an indication of an operation to perform on the tree structure and for further providing a modified tree structure; a tree structure converting unit for receiving the modified tree structure and providing a new sequence of items representative thereof.
BRIEF DESCRIPTION OF THE DRAWINGS
Further features and advantages of the present invention will become apparent from the following detailed description, taken in combination with the appended drawings, in which:
Fig. 1 is a block diagram which shows one embodiment of an apparatus for using a sequence of commands respecting at least one rule; the apparatus comprises a tree structure building unit, a tree structure storing unit, a tree structure manipulating unit and a tree structure converting unit;
Fig. 2 is a flowchart which shows how the apparatus for using a sequence of commands respecting at least one rule' operates;
Fig. 3 is a diagram which shows an example of a sequence of commands; Fig. 4 is a diagram which shpws a tree structure representative of the sequence of commands shown in Fig. 3; and
Fig. 5 is a block diagram which shows an embodiment where the ' apparatus for using a sequence of commands respecting at least one rule is advantageously used.
It will be noted that throughout the appended drawings, like features are identified by like reference numerals.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT Now referring to Fig. 1, there is shown an embodiment of an apparatus 7 for using a sequence of commands respecting at least one rule .
The apparatus comprises a tree structure building unit 12, a tree structure storing unit 14, a tree structure manipulating unit 16 and a tree structure converting unit 18. An interface 10 is further used as explained below.
The interface 10 is adapted for providing a sequence of rule-dependent commands to the apparatus 7.
In one embodiment, the interface 10 may be a user input interface, such as a console. The user may then, via the user input interface, provide the sequence of rule- dependent commands .
Alternatively, the interface 10 may be a unit adapted for providing the sequence of rule-dependent commands from an existing configuration file, for instance.
Alternatively, the interface 10 may be a unit adapted for providing the sequence of rule-dependent commands by accessing the parameters of the equipment's configuration. Alternatively, the interface 10 may be a unit adapted for providing the sequence of rule-dependent commands from a repository that stores and provides sequences of rule- dependent commands .
The tree structure building unit 12 receives the sequence of rule-dependent commands from the interface 10 and provides a modifiable tree structure.
In fact, the tree structure building unit 12 performs a conversion of the sequence of rule-dependent commands into a tree form as explained below.
In one embodiment, the tree structure building unit 12 operates automatically using the received sequence of rule- dependent commands while in another embodiment, the tree structure building unit 12 is operated by a user.
In the preferred embodiment of the tree structure building unit, the concrete commands are automatically recognized, identified and matched, based on pre-existing command definitions and the corresponding tree structures are retrieved from a pre-existing repository and enriched with the information existing in the concrete commands. Thus, concrete tree structures are built up, containing the information, such as parameters, values, sequences,, dependencies, rules, of the rule-dependent commands.
The tree structure manipulating unit 16 receives the modifiable tree structure and a signal indicative of an operation to perform on the tree structure. The tree structure manipulating unit 16 may further receive a stored tree structure from the tree structure storing unit 14.
The tree structure manipulating unit 16 performs at least one operation according to the signal indicative of an operation to perform on at least one of the received modifiable _ tree structure provided by the tree structure building unit 12 and the stored tree structure provided by the tree structure storing unit 14.
At this point it should be understood that an operation may be performed using a single tree structure as well as using a plurality of tree structures .
The operation performed is selected in accordance with a specified application for which the apparatus 7 for using a sequence of commands respecting at least one rule is intended to be used.
The skilled addressee will appreciate that an algebra defining tree structure manipulation operations will be defined according to the operation to perform on the tree structure.
In the preferred embodiment, the tree structure manipulating unit 16 performs the operation on, and modifies, the tree structure, taking into account the rule, on which the commands depend, and using specific scripts, algorithms and intelligent logic.
The tree structure manipulating unit 16 provides a modified tree structure after performing the operation.
The modified tree structure is provided to the tree structure converting unit 18.
The modified tree structure may also be stored in the tree structure storing unit 14.
The tree structure converting unit 18 receives the modified tree structure and provides a new sequence of commands indicative of the modified tree structure. In the preferred embodiment, the tree structure converting unit 18 is an automatic tree structure converting unit which identifies the tree structure nodes and subtrees, based on pre-existing tree structure definitions and retrieves the corresponding command definitions. Those are transformed into concrete commands by introducing the values of the parameters from the tree structures.
Now referring to Fig. 2, there is shown how the apparatus 7 for using a sequence of commands respecting at least one rule operates.
According to step 20, a sequence of commands respecting at least one rule is provided to the apparatus 7.
Now referring to Fig. 3, there is shown an example of the sequence of commands provided via the interface 10. In this simple example, the commands do not have ' parameter sequences. It will be appreciated that an example with some commands and parameters may be also provided, in which case the tree building procedure would have a similar result.
The sequence of commands comprises command A 30, command B 32, command C 34, command D 36, command C 38, command G 40, command E 42, command F 44, command H 46, command F 48, command I 50, command K 52, command F 54 and command M 56.
The command A 30 is first provided. The command B 32 is then provided followed by the command C 34 and the command D 36.
The command C 38 followed by the command G 40 are then provided followed by the command E 42.
The command F 44 is then provided followed by the command H 46. The command F 48 is then provided followed by the command I 50 and by the command K 52.
The command F 54 is then provided followed by the command 56.
In one embodiment, the sequence of commands is provided using the interface 10.
Referring back to Fig. 2 and according to step 22, a tree structure of the provided sequence of commands is built.
In the preferred embodiment, the tree structure of the provided sequence of commands is built using the tree structure building unit 12.
Now referring to Fig. 4, there is shown a built tree structure 59 corresponding to the sequence of commands shown in Fig. 3.
As shown in Fig. 4, the built tree structure 59 comprises a root 61 and a plurality of nodes, also referred to as tree nodes .
A tree node represents a command name or a parameter of a command. Figure 4 shows an example of a specific tree structure where the nodes represent commands. A tree example may also be provided, in which some of the nodes represent commands and others represent parameters. The nodes and trees are transparent with regard to the nature of the represented element, whether it is a command or a parameter.
In fact, it should be appreciated that a tree node comprises two types of information. A first type of information is intrinsic information which relates to the content of the node and structural information which relates to the link and relationship of the node with respect to the other nodes of the tree. It will be appreciated that the intrinsic information is characterized by several attributes such as data, which consist of a type (or name) and a value, and complementary data information, such as default and possible values or value range (of the commands, parameters) , node manipulation operations, which define node behavior, environment information, which is indicative of software and/or hardware for which the node is defined, and node environment operations, which manipulate the environment information.
The structural information is characterized for instance by a path data consisting of the data of the ancestor nodes from the root up to the node itself and data relates to children nodes.
A node type represents a class or category of modes, contexts, commands or parameters, while a node value represents the value of the command or parameter modeled by the node. The node data represents the type and value of the node
Still referring to Fig. 4, command A 60, command B 62, command C 68 and command F 66 and linked to the root 61.
Linked to the command C 68 is command D 70 and command G 72. Linked to the command G 72 is command E 74.
Command H 76, command I 78 and command M 80 are linked to the command F 66.
Command K 82 is linked to the command K 78. In fact, it will be appreciated that each feature of the sequences of commands such as contact and parameters dependencies of the commands are captured.
Moreover, a subtree is a portion of the tree structure that includes all the descendants of a given node.
For instance, the command E 42 shown in Fig. 3 is dependent upon the command G 40 which in turn is dependent upon the. command C 38. Element 64 is a subtree comprising the command C 68, the command' D 70, the command G 72 and the command E 74.
Accordingly and as shown in Fig. 4, the command E 74 is shown in a subtree dependent upon the command G 72 and the command C 68.
In the preferred embodiment, the parameters and keywords of the commands are placed in children or descendents of the node which comprises the command name. The skilled addressee will appreciated that since the model puts the parameter nodes in a hierarchy according to their dependencies, several commands having similar names and common parameters may have their common parts bundled together.
Now referring back to Fig. 2 and according to step 24, an operation using at least the built tree structure is performed in order to provide a modified tree structure.
In fact," the operations comprise node manipulation operations, which take into account the node information and either modify the node value or add/remove the node, and its subsequent subtree, based on the node information existence/nonexistence 'of a node having a specific data, default and effective values of the node. Such node operations may be performed on one or more nodes from the same or different tree structures, according to the user's selection in an interface window, for instance.
It will be appreciated that the rule that applies to the input commands may also be stored in, and retrieved from, the tree structure providing unit. In such case, the operation is derived from the rule.
As explained above, the operation performed depends on a desired application. For instance, the apparatus 7 for using a sequence of commands respecting at least one rule may be used to validate a configuration for instance.
It should further be understood that the operation may be performed using a plurality of sequence of commands provided, as well as using a single sequence of commands.
The operation to perform on the tree structure may comprise for instance at least one validation rule.
In fact a validation rule comprises at least one condition that at least one sequence of commands must satisfy.
The validation rule may be performed using at least one of the value and the type of a tree node.
It should be also understood that a validation rule may be dependent on at least one of an ancestor node, a child node and a sibling node of a given node.
The skilled addressee will therefore appreciate that various mathematical operations may be developed according to an operation to perform on the tree structure.
According to. step 26, the modified tree structure is converted into a new sequence of commands. In the preferred embodiment, the modified tree structure is converted into the new sequence of commands using the tree structure converting unit 18.
Alternatively or in complement to providing a modified tree structure, it should be understood that an indication of the result of the operation performed using the at least one built tree structure may be provided.
The indication of the result of the operation may be provided to a user via the interface 10, a file or the like.
The skilled addressee will therefore appreciate that the new sequence of commands may be advantageously used for various applications in relation to the test operation performed.
For instance in the case where the apparatus 7 is used for performing a validation of a plurality of sequence of commands each for a defined processing device, the new sequence of commands may be used for a given processing device .
Now referring to Fig. 5, there is shown an example where the apparatus 7 for using a sequence of commands respecting at least one rule is advantageously used.
In this embodiment, a plurality of network processing devices are used by an entity. The plurality of processing devices comprise a first network processing device 92, a second network processing device 94 and a third network processing device 96.
In this case, it is assumed that each network processing device may operate according to various operating systems. It is further still assumed that, for its operation, each network processing device requires a sequence of commands.
A network processing device configuration unit 90 may be used . to configure the plurality of network processing devices.
In fact, in such case, the apparatus 7 for using a sequence of commands respecting at least one rule is advantageously used as explained below.
The network processing device configuration unit 90 provides a sequence of rule dependent commands for each of the plurality of network processing devices to the apparatus 7.
The apparatus 7 then performs a validation of the sequences of rule dependent commands for each of the plurality of network processing devices. It fact it should be understood that a given network processing device may be dependent another given network processing device.
The apparatus then provides an indication of a result of the validation of the sequences of rule dependent commands for each of the plurality of network processing devices.
Using the indication, the network processing device configuration unit 90 provides to each of the first network processing device 92, the second network processing device 94 and the third network . processing device 96 a corresponding sequence of rule dependent commands.
Alternatively, the apparatus 7 may provide directly the corresponding sequences of rule dependent commands .
Alternatively, the apparatus 7 may be implemented in a single processing device such as a computer in order to - In validate a sequences of rule dependent commands which are used for a dedicated hardware and/or software element of the computer.
The embodiments of the invention described above are intended to be exemplary only. The scope of the invention is therefore intended to be limited solely by the scope of the appended claims .

Claims

I CLAIM:
1. A method for using a sequence of items respecting a set of rules, said method comprising: providing said sequence of items; building a tree structure of said provided sequence of items, said tree structure having nodes wherein each node comprises an item; performing an operation on said tree structure to produce a modified tree structure; converting said modified tree structure into a new sequence of items; and using said new sequence of items .
2. The method as claimed in claim 1, wherein said item comprises at least one of a command and a parameter.
3. The method as claimed in any one of claims 1 to 2, wherein said providing of said sequence of items is performed via an interface.
4. The method as claimed in any one of claims 1 to 2, wherein said providing of said sequence of items comprises retrieving said sequence of items from a database .
5. The method as claimed in any one of claims 1 to 3, wherein said building said tree structure is performed automatically.
6. The method as claimed in any one of claims 1 to 3, wherein said building of said tree structure is performed by a user.
7. The method as claimed in any one of claims 1-6, wherein said performing an operation on said tree structure comprises performing an operation on at least one node of said tree structure.
8. The method as claimed in any one of claims 1-7, wherein said ' providing said sequence of items comprises providing a plurality of sequences of items respecting a set of rules, further wherein building a tree structure comprises building a plurality of tree structures corresponding to said plurality of sequences of items, and further wherein performing an operation comprises using at least one of the corresponding plurality of tree structures.
9. The method as claimed in any one of claims 1-8, further comprising storing said modified tree structure .
10. The method as claimed in any one of claims 1-9, wherein said using comprises validating a configuration comprising said sequence of items respecting said set of rules.
11. An apparatus for using a sequence of items respecting a set of rules, said apparatus comprising: a tree structure providing unit for providing a tree structure of said sequence of items, said tree structure having nodes wherein each node comprises an item; a tree structure manipulating unit for receiving said tree structure of said sequence of items and an indication of ,an operation to perform on said tree structure and for further providing a modified tree structure; a tree structure converting unit for receiving said modified tree structure and providing a new sequence of items representative thereof.
12. The apparatus as claimed in claim 11, wherein said item comprises at least one of a command and a parameter.
13. The apparatus as claimed in claim 12, wherein said tree structure providing unit comprises at least one of a tree structure building unit for building said tree structure using said sequence of items and a tree structure storing unit for providing a stored tree structure.
14. The apparatus as claimed in any one of claims 11 to 13, wherein said tree structure manipulating unit provides an indication of a result of said operation.
15. The apparatus as claimed in any one of claims 11-14, wherein said tree structure providing unit provides a plurality of tree structures of a corresponding plurality of sequence of items; further wherein said tree structure manipulating unit receives said plurality of tree structures and performs said operation on at least one of said plurality of tree structures.
6. The apparatus as claimed in claim 11, wherein said tree structure manipulating unit performs a node manipulation operation which takes into account a node information and which further performs one of modifying the node value and adding/removing said node .
PCT/CA2004/000484 2003-03-31 2004-03-31 Method and apparatus for using a sequence of commands respecting at least one rule WO2004088505A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US45836403P 2003-03-31 2003-03-31
US60/458,364 2003-03-31

Publications (2)

Publication Number Publication Date
WO2004088505A2 true WO2004088505A2 (en) 2004-10-14
WO2004088505A8 WO2004088505A8 (en) 2005-12-15

Family

ID=33131785

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CA2004/000484 WO2004088505A2 (en) 2003-03-31 2004-03-31 Method and apparatus for using a sequence of commands respecting at least one rule

Country Status (1)

Country Link
WO (1) WO2004088505A2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2440378A (en) * 2006-07-26 2008-01-30 Motorola Inc Generating and validating a sequence of network configuration change commands
CN1925482B (en) * 2005-09-01 2013-03-27 中兴通讯股份有限公司 Transforming method and device for human-machine order format

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
No Search *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1925482B (en) * 2005-09-01 2013-03-27 中兴通讯股份有限公司 Transforming method and device for human-machine order format
GB2440378A (en) * 2006-07-26 2008-01-30 Motorola Inc Generating and validating a sequence of network configuration change commands
GB2440378B (en) * 2006-07-26 2008-07-09 Motorola Inc Apparatus and method for network configuration

Also Published As

Publication number Publication date
WO2004088505A8 (en) 2005-12-15

Similar Documents

Publication Publication Date Title
US11868226B2 (en) Load test framework
KR100994638B1 (en) Database object script generation method and system
US7624089B2 (en) Communications services provisioning method and apparatus and object programming language for developing provisioning models
Tribastone et al. The PEPA eclipse plugin
AU732374B2 (en) A management interworking unit and a method for producing such a unit
US20010047402A1 (en) Method for developing web applications, development support system, and storage medium for storing programs developed according to the method
US20040160464A1 (en) System and method for providing a graphical user interface and alternate mappings of management information base objects
US8027997B2 (en) System and article of manufacture for defining and generating a viewtype for a base model
US11144307B2 (en) Service interface creation and modification for object-oriented services
US20040117333A1 (en) Method and apparatus for building algorithms
US20040158571A1 (en) System and method for manipulating and automatically updating enterprise application deployment descriptors
US6219802B1 (en) System for generating test data
US8700374B1 (en) System and method of using an active link in a state programming environment to locate an element in a graphical programming environment
WO2004088505A2 (en) Method and apparatus for using a sequence of commands respecting at least one rule
US7039900B2 (en) Method for implementing a plurality of object interfaces
US20040194022A1 (en) Kernel configuration tool
CN108228161B (en) System and method for extending structured command line
JP3385222B2 (en) Network control system design method
Takeda et al. MERA: Meta language for software engineering
DeLine et al. Lessons on converting batch systems to support interaction: Experience report
Murillo et al. Distributed Seismic Unix: a tool for seismic data processing
Benslimane Protocol validation: A parallel technique to reduce the reachability tree
Shen A Gentler Introduction to Unix
Heerjee et al. Retrospective software specification
Swaminathan et al. Hierarchical correctness proofs for recursive distributed algorithms using dynamic process creation

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): BW GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
D17 Declaration under article 17(2)a
122 Ep: pct application non-entry in european phase