Cardinality Control in Link Rules

The Cardinality Values and Uses

In the latest release of Cradle using Cardinality in a cross reference has been introduced. This extends the capability of controlling cross references to the point of how many relationships an item can have.

The Many-to-Many Relationship

This is the default option for a rule when it is first set. This is also the default option when a rule is imported from an older version which does not have this option. This cardinality relationship is applied to:

  • Most of the link rules in the as-supplied Cradle demonstration databases DEMO and SYSM
  • Most of the link rules in the as-supplied default schema and quick-start
Demo Link Rules showing the Cardinality
Showing One to Many and Many to Many Cardinalities

The One-to-Many Relationship

This cardinality is used for parent-child relationships between items of the same type. Furthermore this option is applied to:

  • Parent-child link rules in the as-supplied Cradle demonstration databases DEMO and SYSM
  • Parent-child link rules in the as-supplied default schema default and quick-start

The Many-to-One Relationship

This option will allow many items linked down to a single item. Many users can be assinged to one Requirement.

The One-to-One relationship

This is mainly for links like a single result file to a single test file.

Link Rule Setup options
Showing the Cardinality option within the Link Rule Setup

The new cardinality option is for all item types which includes all the modelling types as well.

Hence if a user tries to set linked items which are against the rule they will see an error which will deny the links and the links will not be created.

Stopped by Link Rule Error Message
Error Message

Restrictions on use

Finally there are restrictions in how this option is accessed. For instance a Link Group cannot be used in conjunction with the Cardinality. Also the options to create or modify cross references must be checked or the Cardinality option will be disabled.

For information on getting started in Link Rules click here

August 2017 Newsletter

Hello August

Wow what a busy month July has been here at 3SL. The last weeks before a release are always complex. So many things to do checking off the release checklist.

Cradle 7.3 is Here

Cradle 7.3
Cradle 7.3

Cradle 7.3

3SL are pleased to announce the new features of Cradle 7.3

  • Cross reference cardinalities in link rules – One to Many, Many to Many, or Many to One, you decide.
  • Categories – Control read-write access by a user’s skills.
  • Frames – Those containing a category picklist can have a default value.
  • Frames – Colour usage defaults for picklist frames.
  • Frames – Extend Find/Replace to also work with RTF frames.
  • Dashboard dials – Support for a ‘Line’ pointer style added.
  • Metrics – Support for  element calculations.
  • InstallShield – Improved and  simplified
  • Configuration Management – Submission of  related items, and integrity checks for baselines
  • Items – Deleting/recovering items will record in the modification date.
  • Items – Set owner can including related items.
  • Cradle URL – Support to optionally specify a view.
  • Views -New Generic Configuration Management system view.

Social Media

Twitter

Welcome new followers. The Lake District became a UNESCO World Heritage Site which caused quite a bit of chatter on Twitter

The English Lake District from Barrow-In-Furness
View of the Lake District from Barrow

Hints of the Month

Need to create a default schema for your new projects? This article New Default Schema tells you how.

Got one of those oops moments or changes of mind? Reverse or rewind the item’s changes.

Let’s chat about this requirement/feature/risk. Why not add a discussion?

If you have lots of projects you need to keep logging in and out of, let Project Manager take the strain.

You can read Hints & Tips in the 3SL Blog.

Cradle 7.3 – Now Available

We are pleased to announce the latest Cradle release!

3SL customers with active maintenance have been sent an e-mail notification of this release, and details of which enhancement requests and bug reports are in it.

Cradle 7.3
Cradle 7.3

New Capabilities

This release contains a range of new capabilities that are described in its release notes:
https://www.threesl.com/downloads/download.php?version=v7.3&section=software&filename=rm00777-V73ReleaseNotes.pdf

Some of the highlights are:

  • Metrics – Calculations on metric results
  • Configuration Management – Related item submissions
  • Categories – Skill based control
  • Link rules – Cardinality control
  • Item Ownership – Set item ownership of item’s related items
  • New Cradle and Toolsuite installers

Download

It is available from our website here:  https://www.threesl.com/downloads/software.php

You need a new Security Code for 7.3, other Security Codes cannot be used. There is a database conversion from 7.2 to 7.3. The converter will run automatically if you install Cradle-7.3 over the top of, in the same directory as, the earlier version of Cradle from which you are upgrading.

You must upgrade all Cradle installations to 7.3. Cradle-7.2 clients cannot connect to a 7.3 server, and a 7.3 server cannot serve Cradle-7.2 clients.

We hope that you will welcome the new capabilities in this new version!

Printing Diagrams using printdiag with c_io.exe

Printing many individual diagrams through WorkBench can be slow and time consuming. Using the option -printdiag in c_io.exe, a user can then print many diagrams at once. Once the first command line has been set up, it can be copied, pasted. The file name and the identity can be altered for each diagram that the user requires printing.

The options to do this are:

printdiag options in c_io.exe
The printdiag options in c_io.exe

Required Options

-printdiag allows a user to set the type of output for the diagram. The types currently used for this are:

  • hpgl – Hewlett-Packard Graphics Language
  • ps – PostScript
  • rtf – Rich Text Format
  • svg – Scalable Vector Graphics

Elective Options

-onlydiag will output the diagram without a surrounding frame and the details which the frame contains.

-catcode will print the category value in the diagrams border.

-portrait will cause the diagrams to be output into a portrait orientation rather than the default of landscape. This option is only used in conjunction with -printdiag, it will not work with any other c_io.exe options.

-file sets the name and location of the file to be output.

-query set the query to being used and as before -qloc sets the location

-identity overrides any identity set within the used query

-printdiag Batch File Examples

"%CRADLEHOME%\bin\exe\windows\c_io.exe" -login admin,ADMIN,demo -printdiag svg -file "C:\Temp\DFD_C.svg" -query "Diagram - Ess DFD" -qloc project  -identity "C"

"%CRADLEHOME%\bin\exe\windows\c_io.exe" -login admin,ADMIN,demo -printdiag rtf -file "C:\Temp\eFFBD_133.rtf" -query "Diagram - Ess eFFBD" -qloc project -portrait -identity "1.3.3" -onlydiag

Helpful other c_io options

There are several helpful options especially when using in a batch file.

-log allows a user to specify a name for a log. This is the log that will have the details of the actions performed during the import.

-noldap allows users to bypass using LDAP when running a command line or batch file.
-errorstack option is for logging any issues with the import

"%CRADLEHOME%\bin\exe\windows\c_io.exe" -login admin,ADMIN,demo -export "C:\Temp\all3.exp" -type all -noldap -errorstack -log "C:\Temp\all4_log.log"
"%CRADLEHOME%\bin\exe\windows\c_io.exe" -login admin,ADMIN,demo -export "C:\Temp\pdb3.exp" -type pdb -noldap -errorstack -log "C:\Temp\pdb3_log.log"

Options not used within a batch file

There are a couple of options that are not used in a batch file. The reason is that they are only useful in a command line, in a command prompt as they show pop ups with information on them.

-ver lets the user see what the version number, date and time of the build they are using.
-help option allows a user to see the command line options.

Related Posts

Read Exporting using c_io in a batch file article for information on how to create data transfer files from Cradle.

My named users have changed, what can I do?

Named User Licences

Named user licences are a simple way of working in a small team. Cradle’s variants support single user, named user and enterprise editions. Additionally there are facilities for SaaS and subscription options.  A single user licence is just what it says, it is for one person on one machine. When there are multiple users of a system, it is usual for the server to reside on one machine and the clients on user’s desktops. In a full enterprise version you can install as many clients as you need and simultaneously use the number of clients purchased in your licence.

Named user licensing is a way of having a team of engineers, working on a project, but  (now don’t tell our boss this, but tell yours) at a lower cost.

The restriction being that each of the users is named and locked to the licence. So whilst you could install numerous clients only those login names would be allowed to connect to the server.

We realise that  staff can change, and with each maintenance renewal you can make any changes you like. If you purchase extra licences you can also change the users for free. 3SL reserve the right to charge for more frequent alterations.

It’s all in a file (and the security code)

The named users are contained in a file. If you have system level access to the Cradle installation all you need to do is drop the new file in. If you change the number of users you would also have to configure a new security code.

contents of the named_users file
Named Users file

Exporting using c_io.exe in a Batch File

All Exporting Options for c_io.exe

Exporting either a whole project or just a query can take a long time if the database is huge. The quickest and easiest way to do this is use c_io.exe in a batch file during down time e.g. night

The options available are:

Export Options for c_io.exe
Export Options for c_io.exe

Required Export Options

So the first option is, of course, the export option that needs the user to specify a location and a name for the exporting file:

-export “C:\Temp\export1.exp”

The Type Options

The -type option is required for the export option and allows users to define the type of export they require:

params will export only this projects parameters (Project Schema)
all will export all items and definition files the user has access to
pdb will export all items the user has access to but not definition files
query export items matching a named query.

Options used with query

-query will specify the query to be used. This is required if the type is set to query
-qloc will specify the location of the query. This is required if the -query option is used.

expformat is for exporting all files set in a saved format.

Options used with expformat

-expname is the Export Formats name.
-exploc is used in conjunction with -expname to state the location of the export format
-identity can be used with -expname and will override the Identity set in a query.

Export UI Identity
Export UI Identity
Query UI Identity
Query UI Identity

basesum requires the user to use -basename with the Baseline Name and -sumformat which allows the user to specify how the data is output either as CSV or standard (Note: the user must have the PROJECT_RO privilege for this option)

Options used with basesum

-basename needs to have a Baseline name currently either open or closed.
– sumformat allows the user to state they format -basesum is output as CSV or standard.

The standard output is <BASEHIST> records in the normal format:

<BASEHIST>
 <BH_BNAME> = BASE1
 <BH_DOMID> =
 <BH_NMSPC> = NMSPACE_START
 MH_IGNOREMODEL
 NMSPACE_END
 <BH_INFTP> = INFO_REQUIREMENT
 <BH_INFST> = NULL_INFOSUB
 <BH_STERT> =
 <BH_TTYPE> =
 <BH_INFRF> = REQ-1
 <BH_VERSN> = 01
 <BH_STATU> = B
<BASEHIST> fields
The CSV output will set the fields from left to right and output the items below this line:

Elective Export Options

Other export options are not required but can be used with –type all and -type pdb:
– since can be used to state a date or date and time since which items were created or modified. The format for this is yyyymmdd or yyyymmddThhmmss so 20170119 (19/01/2017). For example 20170119T183030 (19/01/2017 18:30:30)

-until will only export items that have been modified up to a certain date or date and time or a time after the -since was set. The format for this is the same as -since.

-delete_state allows the user to specify if they want the items being exported to be (Same as in the Export UI):

normal – Not marked as delete
recoverable – Items marked as deleted but can be recovered
all – All items not matter what they are marked as will be exported

Delete state in the Exporting UI
The Delete state in the Export UI in WorkBench.

-scope controls how an item is output either on its own or with all the items cross referencs. Using item will make sure only the item on its own is output. Using item_xref will output the item and any items cross referenced to it.

-binarytodir sets a folder for the binary data. So a user would use -binary “C:\Temp\binary” and all binary data would be output to unique files and the path to this file would be output in the export file next to the binary frame:

<FR_FNAME> = PICTURE
 <FR_VERSN> = 0
 <FR_FTEXT> = C:\Temp\binary\binary_frame0.dat

-sanitise will output items but without any binary frames. It will also change all text including item names, comments descriptions, text frames, change history, diagram symbols, discussions and user defined cross reference attributes.

c_io.exe Batch File Exporting Examples

Exporting Project Schema using -type params

"%CRADLEHOME%\bin\exe\windows\c_io.exe" -login admin,ADMIN,demo -export "C:\Temp\params1.exp" -type params

Using -type all

"%CRADLEHOME%\bin\exe\windows\c_io.exe" -login admin,ADMIN,demo -export "C:\Temp\all1.exp" -type all

Using -type all and -since

"%CRADLEHOME%\bin\exe\windows\c_io.exe" -login admin,ADMIN,demo -export "C:\Temp\all2.exp" -type all -since 20150724 -until 20150818

Using -type all with sanitising

"%CRADLEHOME%\bin\exe\windows\c_io.exe" -login admin,ADMIN,demo -export "C:\Temp\all3.exp" -type all -sanitise

Using -type pdb

"%CRADLEHOME%\bin\exe\windows\c_io.exe" -login admin,ADMIN,demo -export "C:\Temp\pdb1.exp" -type pdb
"%CRADLEHOME%\bin\exe\windows\c_io.exe" -login admin,ADMIN,demo -export "C:\Temp\pdb2.exp" -type pdb -scope item

Using -type query

"%CRADLEHOME%\bin\exe\windows\c_io.exe" -login admin,ADMIN,demo -export "C:\Temp\query1.exp" -type query -query "Accepted Items" -qloc project

Using -type expformat

"%CRADLEHOME%\bin\exe\windows\c_io.exe" -login manager,MANAGER,demo -export "C:\Temp\exportformats1.exp" -type expformat -expname all_since_until -exploc project -identity REQ-20

Using -type basename

"%CRADLEHOME%\bin\exe\windows\c_io.exe" -login admin,ADMIN,demo -export "C:\Temp\baseline1.exp" -type basesum -basename alpha -sumformat standard

Helpful other c_io options

There are several helpful options especially when using in a batch file.

-log allows a user to specify a name for a log. This is the log that will have the details of the actions performed during the  import.

-noldap allows users to bypass using LDAP when running a command line or batch file.
-errorstack option is for logging any issues with the import

"%CRADLEHOME%\bin\exe\windows\c_io.exe" -login admin,ADMIN,demo -export "C:\Temp\all3.exp" -type all -noldap -errorstack -log "C:\Temp\all4_log.log"
"%CRADLEHOME%\bin\exe\windows\c_io.exe" -login admin,ADMIN,demo -export "C:\Temp\pdb3.exp" -type pdb -noldap -errorstack -log "C:\Temp\pdb3_log.log"

Options not used within a batch file

A few of the options not used in a batch file but are in a command prompt. These are pop ups with information on them which why they are not in a batch file.

-verbose lets the user know that c_io.exe has finished
-ver lets the user see what the version number, date and time of the build they are using.
-help is used to see all the command line options.

Related Posts

Read Publishing a Formal Document Using a Batch File article for information of formal documentation.

Importing using c_io,  and exporting a single frame is also possible.

 

 

10 Engs, 1 Mgr, 6 Requirements, 2 SE, 1 Metric and 1 Dashboard

How Does That Work ?

The Flexible Licence Model in Cradle Means it Does

Unlike other software tools the licences in Cradle are concurrent usage licences. It is, therefore, quite possible to have fewer licences than you have people and still be able to do everything you need.

If some of your engineers are involved in writing requirements and others writing tests, there may be no need for them to open the systems engineering diagrams. Why pay for a licence they are not going to use? That’s not to say they may not need to at some point, and as long as there is a licence free at that instance in time, they will be able to open the diagram too. Of course if you want to prevent a particular user ever consuming a licence then you can set module access rights to prevent them acquiring one.

Generally reporting using metrics and dashboards is an infrequent activity. Why have umpteen licences hanging around not being used? Exactly what we say. Don’t buy it if you don’t need it! (hint: It’s a Flexible Licence Model in Cradle)

Are you seriously telling me to spend less money?

Yep! We want you to be clear why Cradle is a better more cost effective choice for your business.

If the project focus changes and more people need metrics do I have to reinstall?

Nope! Just have a word with our sales team and they’ll have a new code prepared. Install this on the server, restart the Cradle Database Server and you have your new compliment of licences. That applies to any of the available modules.

I’m too big for a single user system, but not big enough to afford a full enterprise system, are there only the two options?

No! Falling into this ‘in-between ground’ or having difficulty explaining the benefits of a fully integrated lifecycle management tool to your bosses can be a problem. “Named user licensing”, sorts this out, giving significant cost savings. Instead of being able to have a large pool of engineers, any of whom can seek a connection to the database and acquire a module licence, named user systems lock the connections to a set of named users.

I guess I then have to spend bucket loads of money on upgrades and a premium help line?

No again! With enterprise systems you get as much support as necessary for a fixed annual maintenance fee, based on the size of your system. You get all patch and version releases free during this period.

What do I need to spend money on?

Not much! We offer free and comprehensive help information with your installation and online. We provide demonstration databases so you can see how things work and get up and running. However, if you want to hit the ground running and ensure all users run up the learning curve, we will tailor training courses for your individual needs. Again not a fixed price for teaching you everything in Cradle, you only pay for the parts pertinent to your business. If you want help to set up a database and project to match your business specific work model, then we can offer consultancy at a competitive rate.

What should I do?

Don’t delay, contact 3SL today. You can have a free webinar, a free evaluation and a chance to improve your product lifecycle.

Cradle Enterprise
Cradle (Enterprise edition)

Visit www.threesl.com for Cradle, the simple, flexible and scalable solution for your entire project needs! Ask about the enterprise flexible licence model in Cradle.

From concept to creation, you, Cradle and 3SL!

Do I have to retype my password if I have many projects?

Using Project Manager with Multiple Projects and Passwords

In an environment where you have numerous projects that you switch between, using Project Manager to Login can save retyping your Cradle password.

If you have many projects that you need to switch between and don’t have a limitless desktop to open multiple copies of Cradle or don’t want to lock multiple licences, use Project Manager to look after switching.

Once you Login  to a project through Project Manager your Cradle password is cached for that session. You can then access the project through WorkBench, Web Access, or the Toolsuite applications; Document Loader, Document Publisher or Spell Checker. When you exit a tool, you can open another project through Project Manager as you work through your day. When  you need to re-enter any previous projects, you’ll only need to use the Open command as your login details will be cached.

If you need to clear the cache (for security reasons) then simply use the Clear User Cache option. Alternatively close Project Manager.

Using Project Manager to login
Project Manager Login

LDAP Lightweight Directory Access Protocol

For an alternative way to manage your logins and passwords, see Cradle help LDAP Authentication.

Switch User

Another option to change to a different user is to use the “Switch Identity” option, this can be enabled in the “User Setup” A User Profile’s switch identity can only be set if you have read-write access to the User Profile. If you have no access to a User Profile, you cannot see any part of it, including the switch identity. If you have read-only access to a User Profile, the switch identity is disguised in the same manner as the User Profile’s password.

Article Updated 04/02/2019 – Added swith user

Importing using c_io.exe in a Batch File

Importing

C_io.exe can be useful when importing large files or when a user has a lot of files. When c_io is in a batch file, it can import different files into different projects within one batch file. This file is then run when no one is in the database and so there should not be any issues.

The options available are:

c_io import options
Import options for c_io.exe

Required Import Options

The  first option for importing needs the user to specify a location and a name for the file:
-import “C:\Temp\import1.exp”

All saved Import Formats in WorkBench can be used with -import

-impname is the Import Formats filename. When an Import Format is being used -overwrite, -owner, -ipid, -cpid and -noalerts are set from this file.

-imploc is the location of the Import Format file.

Elective Import Options

-overwrite is used when a user requires any items in the database to be overwritten, merged or not overwritten. If not in the command line the default of off is used.

  • on – all data will be overwritten
  • merge – all items will be merged
  • off – no data will be overwritten and only new items added

-owner sets by whom the items imported are going to be owned by. Depending on the option set depends on the owner of the items:

  • user option is owned by the user in the login option e.g. -login ADMIN the items will be owned by the ADMIN user.
  • File option is the owner as stated in the import file
  • A user can be specified and all items imports will be owned by that user e.g. -owner REQMAN
 Import UI
WorkBench Import UI showing Owner Options

Additional Options

-ipid is the option to let c_io know whether to use the PIDs in the file or in the project it is being imported into.

  • Off means the PIDs will be generated.
  • On means the PIDs in the file will be used.

-cpid allows a user to specify the PID to be used for the items being brought in.

-noalerts option stops alerts from being generated during the import

-ignorelinkrules allows any cross references to ignore projects link rules in the current project but only if the user has the correct privileges. The user must have either ACCESS_BYPASS or PROJECT for this to work.

-noautoid allows the original numbering for items rather than any auto numbering set in the Project Schema.

-nocheckdata option stops data being checked so it is all imported.

-add_itemhist is the same a Auto update modification details and sets the current user, date and time, not what is specified in the file.

-itemhistcomment will include a Change History comment which will include the last modifier, modification date and time

-add_imphist will create a log with the history of the import. It shows the options used, who performed it and the date and time of the import.

-set_modify uses the current date and time instead of the date and time specified in the imported file.

All the above options are from the Import UI:

Import Options
Import Options from the WorkBench UI

c_io.exe Batch File Importing Examples

Using Basic Options

“%CRADLEHOME%\bin\exe\windows\c_io.exe” -login admin,ADMIN,demo -import “C:\Temp\import1.exp” -overwrite merge -owner file -noalerts -ignorerules -noautoid -nocheckdata

Using Import Formats

“%CRADLEHOME%\bin\exe\windows\c_io.exe” -login admin,ADMIN,demo -impname TestImport -imploc project

Using Elective Options

“%CRADLEHOME%\bin\exe\windows\c_io.exe” -login admin,ADMIN,demo -import “C:\Temp\import3.exp” -overwrite on -owner REQMAN -ipid off -noalerts -ignorerules -noautoid -nocheckdata -add_itemhist -itemhistcomment “Imported through c_io” -add_imphist

Helpful other c_io options

There are several helpful options especially when using in a batch file.

-log allows a user to specify a name for a log. This is the log that will have the details of the actions performed during the  import.

-noldap allows users to bypass using LDAP when running a command line or batch file.
-errorstack option is for logging any issues with the import

“%CRADLEHOME%\bin\exe\windows\c_io.exe” -login admin,ADMIN,demo -export “C:\Temp\all3.exp” -type all -noldap -errorstack -log “C:\Temp\all3_log.log
“%CRADLEHOME%\bin\exe\windows\c_io.exe” -login admin,ADMIN,demo -export “C:\Temp\pdb3.exp” -type pdb -noldap -errorstack -log “C:\Temp\pdb3_log.log

Options not used within a batch file

There are a couple of options that are not used in a batch file. The reason is that they are only useful in a command line, in a command prompt as they show pop ups with information on them.

-ver lets the user see what the version number, date and time of the build they are using.
-help option allows a user to see the command line options.

Related Posts

Read the article  Batch File Reporting  for advice on producing reports with c_io.
Exporting using a batch file.
Exporting a single frame from an item allows just one frame of data to be extracted.

 

Creating New Item Types

Do you require more Item Types, maybe you just want a new Item Type with a different name. Cradle lets you create new item types to suit your working methods.

In Project Setup navigate to “Options – Item Definitions” and change the tab to “Item Types“. This dialog presents a list of

  • the predefined types of item available in any and all Cradle projects,
  • those that were in the chosen template schema when the project was created
  • those added by a user.

New user defined types are used to extend a Cradle Database, to encompass new types of information. To create a new item type you need PROJECT privilege to modify the schema.

3SL Cradle New Item Type
Creating a New Item Type
  1. Select the Project tab
  2. Select Project Setup
  3. Set Options to Item Definitions (if not already set)
  4. Select the Items tab
  5. Click New and enter a name for the new item type

Remember you can also add these newly created Item Type to the quick access bar, for more information see “Customise your Quick Access Bar”

For more information regarding item types and Project Setup please see help on Item Types or my article on configuring Item Attributes

Article Updated 04/02/2019 – Removed mentions of project schema