The swArchitect client is a specialized SystemWeaver client which supports the creation and modification of the meta model of a SystemWeaver database. SystemWeaver servers, in turn, use the meta model to control the creation and modification of model data.
- An installation of the SystemWeaver Architect (swArchitect)
- Assignment of the Architect role in the database
Logging in to the Server
Logging in to the server using the Architect client (swArchitect.exe) works in the same way as logging in using the Explorer client.
The SystemWeaver Architect consists of these main parts:
- Menu Tabs and Ribbons
- Title Bar
- Status Bar
Menu Tabs and Ribbons
The File tab is used for general settings and user options.
Opens the Groups Setup dialog, where you can see all user groups and users in the server. This is read-only unless you have the Administrator role.
Create a new SystemWeaver Change Management System (CMS) Project, using the New Project dialog.
Delete CMS projects. Note that only empty projects can be deleted, i.e., projects without any issues.
Logs you out from the server, just like the option on the Welcome tab.
Opens the Options dialog where you can set personal user account options for the swExplorer.
Logs you out and closes swArchitect, just like the Close button in the Title Bar.
The Welcome tab is where you log in and see information about your SystemWeaver environment.
This is the start page for your SystemWeaver experience, and where you login to the SystemWeaver server. It may also display general information about your SystemWeaver environment. (The Home page of the browser can be configured by a system administrator.)
Displays version, 3rd party and extensions information about the swArchitect application that you are running.
The Metadata tab is where you create and modify object types, such as item type, part type, and attribute.
XML Export/Import Menu
The XML Export/Import menu includes options for exporting and importing SystemWeaver meta models in the form of SystemWeaver XML files.
The Reports menu includes options for checking and generating meta model reports.
The Metamodel Tools menu includes options for efficient managing and editing of a meta model.
The Metadata tab displays two panes - Type structure tree and Type display. The panes can be resized using your mouse to fit your viewing needs.
The Type Structure Tree to the left reflects the type structure of the SystemWeaver meta model and includes fixed types of the SystemWeaver meta meta model level, as well as specialized types that can be changed or sub-typed by Architects.
The blue boxes indicate all fixed meta meta level types:
- Obj: Any object in SystemWeaver that has a unique identity.
- Referenceable: Any object in SystemWeaver that has a unique identity, and that can be referred to. Note that the property of being possible to be referred to applies to both the types and instances of the types.
- Base Item: Any abstract object in SystemWeaver that can have an individual version, attributes and parts. The Base Item, and any of its sub-types define the types of such attributes and parts.
- Config Item: Special types used for the configuration of view behavior in clients like the swExplorer.
- Item: Objects where access rights are controlled by Libraries.
- Node: Objects forming special node tree structures representing deep instance structures.
- Part: Objects which represent simple instance structures.
The green boxes indicate the meta level types which, in general, can be changed or extended by Architects. Note, however, that specific SystemWeaver client view functionality may be tied to, and depend upon, the existence of specific meta level types.
The orange boxes also indicate meta level types, but these are special types that affect general view functionality and should not be modified.
More information about the metadata object types and inheritance can be found in the swArchitect Reference Manual in the Help.
Navigating the Type Structure Tree
You can navigate the type structure tree by clicking on a type and either using the expand (-) and collapse (+) buttons or using the down, up, left and right arrows. Information about the selected object type will display to the right.
You can also use the Filter text box located above the tree to filter the tree view by entering a type name or SID:
Tip: If you use the Expert > Add field column option and add the field code 'SID' in the tree, you can view a SID column which can facilitate navigation in case you are unfamiliar with the SIDs of the database:
Note: In versions R30 and later, the SID column is displayed by default.
When you select a type in the tree, the Definition information about the type displays to the right.
The following basic information is displayed in the top section:
SID: Shows the SID of the Item Type. The SID can only be changed by using the Change Type SID refactoring method.
Name: Displays the name of the item type. The name can be changed by editing in the field. Note that since all references to the item type are based on its SID, any change of the name will not cause any problems in SystemWeaver (of course users may be confused unless they are told of the change).
Parent: Displays the item type that the selected item inherits from. This can also be seen in the type structure tree to the left. See Changing Inheritance (Parent).
Icon: Shows the icon that will be displayed for all items of the item type. The icon is also used in the type structure tree. See How to Assign Icons.
Is Deprecated: If selected with a checkmark, the item type will no longer be available. See How to Deprecate an Item or Part. Note that this option should not be confused with the "Is Abstract" option described below.
Edit Config...: Opens a dialog where you can add constraints to the item type. This is further described in the Item Type configuration section of the Help.
Add Sub Type: Used to create a new item type that will inherit properties from the selected item type. Refer to the Create a new Item type section of the Help.
Info: An optional plain text description field for the item, i.e., you can enter who created the type, etc. This information is optional and is normally not seen in other client applications. The info text is edited by typing in the field.
Description: An optional formatted text description field that can be used to describe the item type. This information is displayed in client applications like the swExplorer where available by the Shift+Alt hotkey shortcut. Editing can be done in the field or in a text editor by double-clicking in the field.
Is Abstract: If selected, no items can be created for the selected item type. This option is useful for item types that hold common properties of its sub-item types. The item type can also represent its sub-types as a DefObj in part types (see Create a new Part type in the Help). Sub-items do not inherit the Is Abstract setting. Selection and de-selection is done by clicking in the checkbox. If items of a type exist in the database when the item type is made abstract, these item types will continue to exist, but may not be used as parts.
Inheritance Enabled: If selected, allows items of the item type to inherit item properties from other items, like parts and attribute values. If the option is enabled, a Base item entry will appear, in the Properties view of the item. Note: This property should not be confused with the inheritance of the type structure tree which defines inheritance of attribute types and part types between item types.
This section lists all attributes that will be available, by default, for all items of the selected item type.
The number listed in the # column defines the order in which the attributes will be listed in standard views of the swExplorer client. The attribute with number "0" will be treated as a "Primary attribute", and listed automatically in some views. An example of a Primary Attribute is the requirement number/identification of a requirement.
Inherited Default Attributes are indicated with a yellow background color. Such attributes can only be modified by selecting the item type in the parent structure where they are defined.
In the event that inherited and own attributes have the same order number, the internal order between these will not be defined, and will depend on the specific client implementation.
The Add Default Attribute button can be used for adding existing attribute types as default attributes. In case you need a new attribute type you first must create the type.
The Delete Default Attribute button will delete any attribute that you have selected in the list. Any existing attribute values, for items of the item type, will not be affected by this action. These attributes will instead be indicated as "Additional attributes" in the swExplorer client.
The Part Types pane lists all Part Types of the selected item type, i.e., all part types that will be allowed for items of the selected item type.
Inherited part types are highlighted in yellow while "own" part types have a white background. For example, in the example above, the part type "Description Reference" is inherited, while the rest are not inherited.
The number listed in the # column defines the order in which the different parts will be presented in standard views in the swExplorer client, and will also be the order presented in the 'New' (part) and 'Add' (part) options in the client. This number can be modified by direct editing in the list. (The new list order will, however, not be updated until the next login into the swArchitect.)
If you want to view the definition of a specific part type, just double-click on that part type.
The options to add new parts: Add Simple Part Type, Add Structural Part Type and Add Associative Part Type are described further in Creating a New Part Type.
The option to Delete Part Type is further described in Deleting a Part Type.
The Reports tab displays all item reports that are currently defined for the selected type. The Add Report, Edit Report and Remove Report options are equivalent to the corresponding operations available in the Reports view.
The Description Template tab displays any Description templates that are defined for the item type. You can also add and remove templates via this sub-tab.
The Config Items tab looks up and lists any Config item that has been configured to apply to the selected type. The purpose of this is to review the Definition attribute and search for the use of specific SIDs in a refactoring situation. (similar to when reviewing Item Reports and Description Templates.)
The Referencing Parts tab lists all part types that use the selected item type as a DefObj or RefType. This information is useful when investigating whether, for example, a type is being used before making a decision to delete or deprecate it. The list also includes any Parent type used that way.
If you double-click on any part, you will be redirected to the part type in the type structure tree so that you can more closely investigate the part type.
On the Attributes tab, you can create and modify attribute types. The list of attribute types is presented in alphabetical order.
You can scroll through the attribute type list for what you are looking for or type the initial letters of the attribute type name to hop to it in the list.
The Filter box lets you find an attribute type quickly based on its SID or its name.
You can also sort according to any column by clicking in the column header.
The first columns display the properties defined for the item types: Name, SID, Type, Dimension and Range.
The Info property is intended for meta model administrative purposes while the Description should describe the attribute type to the end users.
The Itemtypes and Parttypes sections at the bottom right of the screen list the item types and/or part types which use the selected type as a default attribute.
You can create new attribute types by right-clicking in the list and selecting the Create option as described in Creating Attributes.
Once you have created a new attribute type, you can edit the Description field by editing directly in the field, or double-clicking in the field to open a description editor.
The Edit option opens the Edit attribute type dialog, for editing of the selected attribute type.
The Delete option is described in Deleting Attribute Types.
The Refactorings tab includes views and options that are useful for refactoring operations. Refactoring deals with the restructuring of existing SystemWeaver data. In the swArchitect, the refactoring is performed as changes to the SystemWeaver meta model with automatic restructuring of the model.
The tab presents a list of refactoring options:
To find out more about each of the refactoring options, refer to the swArchitect Reference Manual in the Help.
Prior to any meta model changes, we recommend that you review Important Notes and Recommendations.
The title in the above example begins with "Variability demo database", which is the name of the main library of the SystemWeaver database. An appropriate name of this library can be used for easy identification of the connected SystemWeaver server. The name of the SystemWeaver server computer is shown within brackets [ ] ("sys7" in the example). "SystemWeaver Architect" is the window title of the swArchitect application.
|The Help button opens the SystemWeaver Help manual.|
|The Ribbon Display Options button allows you to auto-hide the ribbon, show the tabs only or show the tabs and ribbons at all times.|
|The Minimize button minimizes the application window, i.e., removes it from the screen. Clicking on the icon in the Windows taskbar restores the window.|
|The Maximize button maximizes the application window on the screen. In the maximized window the Restore Down button can be used for restoring the size. The window is also restored if you drag the application window.|
|The Close button closes the application.|
The status bar is the deep-blue colored bar at the bottom of the application window. The left part of the row displays information such as the status of the last operation or any exceptional event in the server. The right part of the bar displays extended hints for any operation you try to do.
Browse through the articles in SystemWeaver Architect - Configuration.