NZ563634A - Method and system for linking electronic artefacts - Google Patents

Method and system for linking electronic artefacts

Info

Publication number
NZ563634A
NZ563634A NZ56363407A NZ56363407A NZ563634A NZ 563634 A NZ563634 A NZ 563634A NZ 56363407 A NZ56363407 A NZ 56363407A NZ 56363407 A NZ56363407 A NZ 56363407A NZ 563634 A NZ563634 A NZ 563634A
Authority
NZ
New Zealand
Prior art keywords
item
tag
electronic
artefacts
artefact
Prior art date
Application number
NZ56363407A
Inventor
Johannes Wijninckx
Original Assignee
Johannes Wijninckx
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 Johannes Wijninckx filed Critical Johannes Wijninckx
Priority to NZ56363407A priority Critical patent/NZ563634A/en
Priority to AU2008202290A priority patent/AU2008202290B2/en
Publication of NZ563634A publication Critical patent/NZ563634A/en

Links

Abstract

A method of linking electronic artefacts comprises: identifying an Item common to a first electronic artefact and a second electronic artefact; defining an Item Identifier, the Item Identifier comprising an Item Type, a Separator and a unique whole Number; storing the Item Identifier in an item database maintained on one or more computer readable media; defining a Tag by encapsulating the item identifier within a pair of tag Delimiters; and inserting the Tag representing the Item into the first electronic artefact and the second electronic artefact. The pair of tag delimiters is indicative of whether the item is Derived, Allocated or Implicit.

Description

10054971374* ;5 6 3 6 3 4 ;NEW ZEALAND PATENTS ACT, 1953 ;No: Date: ;COMPLETE SPECIFICATION ;METHOD AND SYSTEM FOR LINKING ELECTRONIC ARTEFACTS ;I, JOH ANNES WIJNINCKX a Dutch citizen of 23 Walter Road, Lowry Bay, Lower Hutt, New Zealand, do hereby declare the invention for which I pray that a patent may be granted to us, and the method by which it is to be performed, to be particularly described in and by the following statement: ' intellectual property ;OFFfCE OF N.Z ;2 2 NOV 2007 ;- i ;BE CEIVFn ;-2- ;FIELD OF INVENTION ;The invention relates to a method and system for linking electronic artefacts to each other and / or to statements of condition or capability. ;5 ;BACKGROUND ;A typical software development project involves the creation and maintenance of many different types of electronic Artefacts such as documents, source code or other files. ;10 ;Software developers use Requirements to state the condition or capability to which the software to be built must conform. The general accepted principle in the software industry is that Requirements should be identified through a unique identifier. Requirements should also be traceable to each other, and to artefacts in which they are referenced. ;15 ;Software development also involves the creation of work products also referred to as Artefacts. Artefacts include items such as specification, design, test-design, code and test-script. Specification, design and test-design artefacts have the potential to involve tens of Artefacts depending on project size. Code and test-scripts have the potential to involve tens, hundreds or 20 more instances depending on project size. ;Requirements should not only be traceable to each other but should also be traceable to Artefacts to enable change impact assessment and scope control. ;25 It is an object of at least preferred embodiments of the present invention to provide a method and system of linking electronic artefacts in a user controllable and efficient manner, or to at least provide the public with a useful alternative. ;30 ;SUMMARY OF THE INVENTION ;In one embodiment the invention provides a method of linking electronic artefacts comprising identifying an Item common to a first electronic artefact and a second electronic artefact; defining an Item Identifier, the Item Identifier comprising an Item Type, a Separator and a unique whole Number; storing the Item Identifier in an item database maintained on one or ;1169340-6 ;intellectual property ;OFFICE OF M.Z. ;01 MAY 2008 ;I D IT I v / c r> ;-3- ;more computer readable media; defining a Tag by encapsulating the item identifier within a pair of tag Delimiters; and inserting the Tag representing the Item into the first electronic artefact and the second electronic artefact. ;5 The term 'comprising' as used in this specification and claims means 'consisting at least in part of, that is to say when interpreting statements in this specification and claims which include that term, the features, prefaced by that term in each statement, all need to be present but other features can also be present. Related terms such as 'comprise' and 'comprised' are to be interpreted in similar manner. ;10 As used herein "(s)" following a noun means the plural and/or singular forms of the noun. As used herein the term "and/or" means "and" or "or", or both. ;To those skilled in the art to which the invention relates, many changes in construction and 15 widely differing embodiments and applications of the invention will suggest themselves without departing from the scope of the invention as defined in the appended claims. The disclosures and the descriptions herein are purely illustrative and are not intended to be in any sense limiting. ;The invention consists in the foregoing and also envisages constructions of which the following 20 gives examples only. ;BRIEF DESCRIPTION OF THE FIGURES ;The present invention will now be described with reference to the accompanying figures which: ;25 ;Figure 1 is a block diagram of a preferred form system in which the invention operates; ;Figure 2 shows preferred form electronic artefacts that are linked by a method of the invention; 30 Figure 3 shows a preferred form item database in accordance with the invention; and ;Figure 4 shows items marked within individual artefacts in accordance with the invention. ;1169340-6 ;iNreLLimroimra ;|| m 2008 RECEIVED ;-4- ;DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS Artefact and Storage descriptions ;Figure 1 shows at 100 a preferred form system for linking electronic artefacts. The system 5 includes computing device 105. This computing device includes any portable or desk top computing device. A portable computing device includes a laptop or PDA. Computing device includes as shown a display 110 and user input device 115. Computing device further includes secondary storage 120. Secondary storage is typically integral within computing device 105. It is also expected that computing device 105 has one or more docking ports to allow connection of 10 one or more portable memories 125. Portable memory includes any computer-readable media that is able to be removably connected to computing device 105. Portable memory for example includes static RAM devices as well as compact disc and tape devices accessible through appropriate readers/writers. ;15 It is also envisaged that computer device 105 has one or more network ports to allow transfer of data through one or more networks 130. It is envisaged that further computing devices for example 140 and 145 are able to transmit and receive data from computing device 105 through networks 130. It is envisaged that networks 130 include wireless, wire line as well as a combination of wireless and wire line networks. ;20 ;It is envisaged that one or more artefacts for example 150 are maintained on computer-readable media. It is envisaged that these artefacts 150 are stored for example on secondary storage 120, portable memory 125 and/or computer-readable media interfaced to one or more further computing devices 140,145. Artefacts are further described below. ;25 ;System 100 further includes an item database 160. Item database 160 is shown as being stored on secondary storage 120. It is envisaged that item database 160 or at least part of item database 160 could additionally or alternatively be located on portable memory 125 and/or memory interfaced to further computing devices 140 and 145. ;30 ;Figure 2 shows preferred form electronic artefacts that are linked by the techniques described below. ;1169340-6 ;-5- ;Business requirements 205 include for example a vision document, a glossary document and a UseCase list ;Business requirements are associated with business process specifications 210 and software 5 specifications 215. Business process specifications include swim-lane models and one or more electronic documents described as BUC(s), BPRS and others. ;Software specification electronic artefacts 215 include one or more UseCase descriptions, one or more SRS requirements, one or more strategy and STP documents and one or more IRS(s) 10 interfaces/UI/reports. Software specification 215 further includes logical models, HLD, RFC and applicable standards. ;Further types of artefacts that are linked to business process specifications 210 and software specifications 215 include end user material 220, test sets 225 and development sets 230, ;15 ;End user materials 220 include one or more user manuals documents and one or more training material and evaluation records documents as well as procedural input notes. ;Test sets 225 include STD documents and STR documents as well as one or more test 20 suite/scripts documents and test data documents. Test sets 225 further includes test execution/results. ;Development set 230 includes one or more SAD(s)/IDD(s) documents, data migration documents and installation and release notes (RFR) documents. Development set 230 further 25 includes physical models, code and unit tests, and operation notes documents. ;Electronic artefacts further include management documents 235. These management documents include right sizing tool/plan documents as well as DAR records, review records, metrics records, sizing and estimation records, incidents records and T-notes records. Management 235 30 further includes configuration management (code and test). ;1169340-6 ;-6- ;Method Definitions ;An item is any item that needs tracing. Items that need tracing are statements of condition or capability such as change requests, assumption/constraints, to be resolved aspects, requirements 5 and so on. All items are identified by a unique identification referred to as an item identifier. An item identifier comprises an Item type, a Separator and a unique whole number. ;In one preferred embodiment the item type is selected as a character string that is indicative to a human reader of the item type. The length of the character string is 2, 3 or 4 characters. The full 10 set of the item types is configured by the user. Item type is a character string that contains characters in the range A-Z and a-z. ;For example a change request may be represented by the item type "CR". An item type of assumption/constraint may include an item type of "AC". An item of the type "to be resolved" 15 includes the item type "TBR". Furthermore, items that represent software requirement, business requirement and validation rule include item types of "SR", "BR" and "VR" respectively. ;Item identifier further includes a separator. The separator is preferably a single character that is not an alphabet character in the range A-Z, a-z and is not a digit in the range 0-9. The 20 character is a preferred form of separator but it is envisaged that the particular character selected can be changed by the user, as long as this character is not an A-Z, a-z, digit 0-9 or character in use as Tag delimiter. The purpose of the separator is to enable the software to search for a unique distinct pattern in the Artefacts. ;25 Item identifier further includes a unique whole number. The whole number can be any number from 1 to N, so long as it is unique in combination with the associated Item Type. ;Examples of item identifiers include: ;30 CR_6 (change request) ;AC_5 (assumption/constraint) ;TBR_! 6 (to be resolved) ;SR_12 (software requirement) ;BR_18 (business requirement) ;1169340-6 ;-7- ;VR_25 (validation rule). ;It is envisaged that individual item identifiers are maintained in item database 160. In one form, system 100 generates new item identifiers at a user request that are unique within the item 5 database 160. In another form the user defines new item identifiers and these are checked for uniqueness against item identifiers already stored in item database 160. ;Associated data such as description text and attributes are also stored in item database 160. This data is entered and maintained by the user. The item database 160 holds a definitive list of all 10 item identifiers that exist in any of the artefacts. As described above the item database 160 is also used for completeness checking. ;Figure 3 shows an example item database. In this figure the database shows the definitive text making up the statement of condition or capability for each of the captured Item Identifiers. The 15 figure depicts how the statement of condition or capability for each item identifier is maintained in the item database. The item database may also record attributes, values and labels for each item identifier. ;Items are categorised as either derived, allocated or implicit. Derived items originate from or are 20 present in a body of text. Allocated items are allocated to a test statement, design, code file fragment and so on. Implicit items are typically implicitly linked to other items. ;Tags are created by encapsulating item identifiers within a pair of tag delimiters. Tag delimiters are selected so that one type of tag delimiter indicates that the encapsulated item is derived. 25 Another type of tag delimiter indicates that the item is allocated and a further type of tag delimiter indicates that the item is implicit. ;The pair of tag delimiters include a delimiter start character and a delimiter end character. The delimiter start and delimiter end characters are different to each other. Suitable tag delimiter pairs ;30 include: ;<> ;{} ;0 ;J169340-6 ;-8- ;Q #! ;The tag delimiter pairs could include any other combination as long as the characters are not one 5 of A-Z, a-z, 0-9 or the selected separator, e.g. underscore ;In one preferred form "{}" represents a derived item, "Q" represents an allocated item and "0" indicates an implicit item. ;10 It is expected that the delimiter start and delimiter end characters are selected from a set of symbols that does not include alpha numeric characters. The main requirement is that the delimiter pairs yield a unique search criteria. Any selection of characters is suitable as long as there is a unique start delimiter and unique end delimiter of single character tokens that can be searched. ;15 ;The tag formed from the item identifier encapsulated by the tag delimiter pair is then inserted into a first electronic artefact and a second electronic artefact. The tags that comprise an encapsulated item identifier are inserted manually by the user into any of the artefacts that are tracked by the system. The location where the tag is inserted typically signifies the end of the 20 content to which the tag is applicable. The location within an artefact only has meaning to the user not to the system. All the system does in one prepared form is to track that there are tags in the artefacts, and in another form that the Item Identifiers embedded in the Tag match the Item Identifiers recorded in the Item database. ;25 Method definition examples ;Figure 4 shows how items are marked within individual artefacts using tags made up of item identifiers encapsulated by tag delimiters. ;30 The artefact "UC_List" provides an example of software requirements being derived. In this example, from this text two software requirements can be derived, which are shown as {SR_55} and {SR_58} at the end of the description they apply to. ;1169340-6 ;-9- ;The precise text of the statement of condition or capability for each of these items SR_55 and SR_58 is captured in the Item Database. An example of such text for say Item SR_58 could read: "The system shall calculate GST for all non-GST exempt goods, at the rate configured in the system.". ;5 ;The Item (software requirement) SR_58 is then allocated in the artefacts "Test Cases 1" and SAD (software architecture document) and, in accordance with the tag definition, are shown as [SR_58]. ;10 Similarly when the code and actual test script artefacts are created, the User will indicate that these artefacts implement Item SR_58, by marking the point at which the test or the code has fully tested or implemented the GST calculation, using the Tag notation [SR_58]. ;Finally, an example of implicit linking can be found in the artefact "IRS", where the Item 15 identifier UC_1 is shown in the implicit tag notation (UC_1). The items VR_6 and VR_12 are derived {} from the specification following (UC 1) and the software will thus recognise these items as being implicitly linked to UC_1. ;Method use ;20 ;Due to the unique character pattern of each tag, the system is able to search any electronic artefact or file for the occurrence of such tags. Each electronic artefact or file is treated as a sequence of bytes. Knowledge of individual file structures is not required. The search engine establishes a list of tags that each electronic artefact contains. The frequency of occurrences of 25 derived, allocated and implicit tags is preferably also maintained. ;Using the above function, the system can determine whether links are complete. For example, using the tags recorded in item database 160 and the artefact type, the system can determine if all items or tags in the item database 160 are derived at least once in the collection of artefacts 30 making up a specification set of artefacts. If not all items are derived then a report can be generated showing which items are missing. ;1169340-6 ;-10- ;The system further ensures that the items in the item database 160 are complete. This is performed by comparing the items in the item database 160 to the unique set of derived and allocated item identifiers found in all artefacts. ;5 All derived items that must exist as a result of the above checking can be checked to see that they have been allocated at least once in any one of the artefacts. If not all derived items have been allocated then a report can be generated showing which items are missing as allocated in which artefact type. ;10 A check can also be performed to ensure that all allocated items in any of the artefacts have at least been derived once. ;The above information is useful for early software defect prevention. Items that have been specified (derived) but that do not exist (allocated) in the design will not be coded and will 15 therefore result in defects at the end of the project. ;Any items specified (derived) but that do not exist (allocated) in test designs will not be scripted and therefore will not be tested for, other than by the user at the end of the project which is too late. ;20 ;These defects are preventable using the above techniques and associated software thereby significantly reducing rework. Using the derived and allocated information it can be proven that the entire set of items specified and signed off by the client is actually delivered both in code and test. ;25 ;The above techniques permit bi-directional traceability between artefacts. If a user being any person in a development team wants to know where a particular requirement originates in the documentation, it is possible to produce the list of files in which this tag occurs with tag delimiters indicating a derived item. ;30 ;If a user wants to know where a requirement is allocated then the tool provides the list of files where this requirement occurs with an allocated notation. ;1169340-6 ;-11 - ;The system permits implicit links. Tag delimiters representing implicit items are recognised and are implicitly linked to all derived or allocated tags that follow this implicit tag until another implicit tag or the end of file is found. The Implicit links found between Items in the Artefacts, are recorded in the Item database. This functionality ensures that the user is able to maintain 5 essential links between tags in the artefacts themselves where it is most visible by adding tags in the artefacts as required. Therefore the above techniques are used to find and track relationships between say UseCases and requirements or identified components and requirements. ;The above techniques farther provide for suspect items. On changing a file the system can work 10 out if any of the tags has been affected by the changes made in that file. ;The system determines if a tag is suspect on the basis of the number of bytes (Offset) between a tag and the predecessor of a tag or start of file. A further basis for suspect checking is the sum of byte values of all the bytes between a tag and the predecessor of the tag or start of file. By 15 recording the Offset and Checksum for each tag for each scan of a changed artefact, the system can determine which Item Identifier is suspect. ;Using the tags marked as suspect the system is able to present to the user on display 110 the files where each of these tags occur. Using the tag the system can find for the user any of the derived 20 allocated or implicit occurrenccs in any of the files (artefacts) where the tag occurs. ;The user is able to use the suspect item checking feature to assess impacts of changes. If for example a code file has changed, the system will find which tags have become suspect. For each tag occurrence the system finds for the user where else this tag occurs as derived, allocated or 25 implicit. This helps the user for example to analyse if the code was changed in accordance to the specification (derived) and which tests should be rerun (allocated to test scripts). ;The above techniques provide a unique "wrapper" around a requirement identifier whereby it is possible to find where in the artefact set a requirement originates/is derived and where it is 30 allocated. The above techniques have the potential to provide a facility to establish the completeness of the requirements. Furthermore the system allows a user to find in which artefacts an item is derived or allocated. The system allows the user to establish implicit relationships between requirements. For suspect tags the user is able to find where they occur as derived, allocated or implicit. ;1169340-6 ;- 12- ;The foregoing describes the invention including preferred forms thereof. Modifications and improvements as would be obvious to those skilled in the art are intended to be incorporated the scope hereof as defined in the accompanying claims. ;1169340 6 *

Claims (8)

-13- WHAT I CLAIM IS:
1. A method of linking electronic artefacts comprising: 5 identifying an Item common to a first electronic artefact and a second electronic artefact; defining an Item Identifier, the Item Identifier comprising an Item Type, a Separator and a unique whole Number; 10 storing the Item Identifier in an item database maintained on one or more computer readable media; defining a Tag by encapsulating the item identifier within a pair of tag Delimiters; and 15 inserting the Tag representing the Item into the first electronic artefact and the second electronic artefact.
2. The method of claim 1 wherein the Item Type represents one of a change request, an 20 assumption/constraint, a to be resolved item, a software requirement, business requirement, or validation rule.
3. The method of claim 2 wherein the item type identifier comprises a character string in the range A-Z and a-z. 25
4. The method of claim 3 wherein the character string includes characters indicative to a human reader of the Item Type.
5. The method of any one of the preceding claims wherein the item is one of Derived, 30 Allocated or Implicit.
6. The method of claim 5 wherein the pair of tag delimiters is indicative of whether the item is Derived, Allocated or Implicit. 1169340-6 intellectual propipw office OF n.z. D! MAY 20® RECEIVED -14-
7. The method of any one of the preceding claims wherein the first electronic artefact and the second electronic artefact are selected firom specification, design, test-design, code and test-script. 5
8. A method of linking electronic artefacts, substantially as herein described with reference to the accompanying figures. INTELLECT UAL PROP Hi fY OFFICE OF N.Z. 01 MAY 201)8 RECEIVED
NZ56363407A 2007-11-22 2007-11-22 Method and system for linking electronic artefacts NZ563634A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
NZ56363407A NZ563634A (en) 2007-11-22 2007-11-22 Method and system for linking electronic artefacts
AU2008202290A AU2008202290B2 (en) 2007-11-22 2008-05-27 Method And System for Linking Electronic Artefacts

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
NZ56363407A NZ563634A (en) 2007-11-22 2007-11-22 Method and system for linking electronic artefacts

Publications (1)

Publication Number Publication Date
NZ563634A true NZ563634A (en) 2008-06-30

Family

ID=39705118

Family Applications (1)

Application Number Title Priority Date Filing Date
NZ56363407A NZ563634A (en) 2007-11-22 2007-11-22 Method and system for linking electronic artefacts

Country Status (2)

Country Link
AU (1) AU2008202290B2 (en)
NZ (1) NZ563634A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10866963B2 (en) 2017-12-28 2020-12-15 Dropbox, Inc. File system authentication

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6869023B2 (en) * 2002-02-12 2005-03-22 Digimarc Corporation Linking documents through digital watermarking
US6061698A (en) * 1997-10-22 2000-05-09 International Business Machines Corporation Merging tagged documents and scripts having dynamic content

Also Published As

Publication number Publication date
AU2008202290A1 (en) 2009-06-11
AU2008202290B2 (en) 2010-05-27

Similar Documents

Publication Publication Date Title
CN101964036B (en) Leak detection method and device
US20160004517A1 (en) SOFTWARE DEVELOPMENT IMPROVEMENT TOOL - iREVIEW
JP2006285955A (en) Comparison and contrast of business model
Aloraini et al. An empirical study of security warnings from static application security testing tools
Chyrun et al. Web Resource Changes Monitoring System Development.
Firesmith Using quality models to engineer quality requirements
US8886657B2 (en) Associative memory visual evaluation tool
CN103425584A (en) Large-scale application regression testing information processing method based on Java bytecode
CN102498491A (en) Secure audit system and secure audit method
Etien et al. Managing requirements in a co-evolution context
Huang et al. A business process gap detecting mechanism between information system process flow and internal control flow
Cheers et al. A novel graph-based program representation for java code plagiarism detection
US8732109B1 (en) Structured requirement generation and assessment
CN108446235A (en) In conjunction with the fuzz testing critical data localization method of path label data variation
Kazman et al. Categorizing business goals for software architectures
Earls et al. A method for the manual extraction of business rules from legacy source code
US20090327971A1 (en) Informational elements in threat models
Lo et al. Efficient mining of recurrent rules from a sequence database
Forouzani et al. Method for assessing software quality using source code analysis
AU2008202290B2 (en) Method And System for Linking Electronic Artefacts
Fitzgerald et al. Triumphs and challenges for the industrial application of model-oriented formal methods
CN104104659A (en) Communication fingerprint extraction method and device
CN100407199C (en) Lookup method of protecting consistency of contour based on information technology products of relational database
KR20230073056A (en) Malicious event log automatic analysis device and method
Dautovic et al. Automated quality defect detection in software development documents

Legal Events

Date Code Title Description
PSEA Patent sealed
RENW Renewal (renewal fees accepted)
RENW Renewal (renewal fees accepted)

Free format text: PATENT RENEWED FOR 3 YEARS UNTIL 22 NOV 2017 BY AJ PARK

Effective date: 20140806

RENW Renewal (renewal fees accepted)

Free format text: PATENT RENEWED FOR 7 YEARS UNTIL 22 NOV 2027 BY AJ PARK

Effective date: 20140911

Free format text: PATENT RENEWED FOR 3 YEARS UNTIL 22 NOV 2020 BY AJ PARK

Effective date: 20140911