I. Introduction
Similar to the Requirements as tree script, arKItect allows you to export an Excel file with the tree of functions of the project, as well as the requirements allocated to them. This may also help you having a clear visual of a family of functions, by being able to see their parent/child relationship.
You will be able to select the function family to export, or one/multiple component(s) to see the function(s) allocated to that/those component(s) (there will be one excel file for each selected component).
Additionally, you will be able to select the variants that concern the exported objects, as well as their tagged options.
In the exported Excel file, you will have the functions in a descending hierarchy, going from the higher level functions to the very last function in the tree (leaf functions). You will also decide if you wish to visualize the requirements allocated to each function (as well as its attributes) or consumed/produced flows.
II. Export Procedure
To exemplify the export, we will use the Laptop exercise.
Since the functions were already determined (and the requirements were allocated to them), we may go directly to the view 3.1. Define Functional Architecture.
Once there, go to Project Tools, by clicking on its icon on the menu bar.
Click on Document Generation Tools in order to display all of the scripts associated to this view. You will find Function Export as Tree. Click on it.
The following window will display:
II.1 Start export from
You will be able to do different types of exports, depending on your needs:
Select one/multiple function(s)
You may select a particular function you’d wish to export. On the "Start export from” section, click on Function (it will be selected by default when opening the script).
The button "all" will be selected by default. You may leave it tagged to export all of the functions on the project, or untag it, to select a/multiple particular function(s).
If you decide to untag "all", this action will enable the “Select…” button.
Press on "Select"
A window will display containing the functions under the System object, in this case the Laptop. To visualize its function nodes, you may click on the different functions and see them expand. Select the function node(s) you wish to export and press ok.
Select one/multiple component(s)
When you select a particular component, the exported tree will be based on the functions allocated to that component.
To do this type of export, you may click on Component on the "Start export from” section.
You may select one or multiple components. A file containing the function's tree will be exported for each component. To do this, press on "Select...".
A window will display, showing the components of the project.
Select the desired component(s) and press on ok.
Select one/multiple component(s) with direct/indirect allocations
Given the following example:
a. Direct Allocations: Includes the functions that are directly associated to the selected component. If the user selects Component 1, the tree will have Function_1, Function_4 and Function_6.
b. Direct and Indirect Allocations: Includes the functions that are directly and indirectly associated to the selected component. If the user selects Component 1, the tree will have Function 1 and Function_4 and Function_6 (directly allocated), but also Function_2 and Function_5 (indirectly allocated).

Export a Function + Component combination
It is possible to combine a function and a component filter. All others parameters will still be applied.
For each selected component, all function that are both direct or indirect children of the input list of Functions AND allocated to the component will be exported.
II.2 Image Export
If you wish to export images from the exported functions, you can enable the section "Image Export" of the Function as tree main menu. To do this, select "Image Export"
By doing so, the export image section will be enabled, showing the following export possibilities:
Export using Matdraw images: Tag this option to export the Excel file with sheets corresponding to the individual images of the function trees in a Matdraw view style.
- Export using standard images: Tag this option to export the Excel file with sheets corresponding to the individual images of the function trees in an internal block diagram view style.
II.3 Export additional objects
You will be able to export other objects related to the selected function tree to be exported. To do this, you'll have to select the "Export additional objects" box.
Once you've selected it, the possibility to export requirements or flows will be enabled (you will only be able to select one of them).
- Export requirements: You may decide if you wish to export the requirements allocated to the leaf functions of the selected function trees. If this is the case, select "requirements” on the "Export additional objects" sub-menu.
When exporting requirements, the export will automatically be accompanied by a Dictionary of the exported requirements. This dictionary will include the requirement's attributes and some other relevant information such as relations such as children requirements, owner (component allocation), among others.
a.Select attributes: In addition to the dictionary, you will be able to select which of these attributes you're interested in exporting in the "Tree" tab. This means that they will appear too next to the concerned requirements in the function tree (in addition to appearing in the dictionary). To do this, click on "select attributes".
This action will enable the selection of attributes. The following attributes will be selected by default:
Description
Revision
CSR
ASIL
Flexibility
State
Type
If you wish to make a selection different to the default attributes, click on "...".
A window will pop up, with the attributes list from the dictionary.
The default attributes mentioned before will be tagged. You may then be able to manually select all of the attributes that you're interested in exporting in the "Tree" tab. You may click on "Ok" when you have finished.
Additionally, the column "Component" will always be exported, which will contain the function's allocations to the project's component(s).
2. Export flows: You may decide if you wish to export the flows allocated to the the leaf functions of the selected function trees.
If this is the case, select "flows” on the "Export additional objects" sub-menu.
When exporting flows, the export will always include the following information:
- Type: Physical flow or data flow.
- Direction: In (input) or out (output)
- Name: Name of the flow
- Producer: Name of the producer (if it's type "Input")
- Consumer(s): Name of the consumer(s) (if it's type "Output")
Additionally, the column "Component" will always be exported, which will contain the function's allocations to the project's component(s).
3. Do not export empty functions: This optional feature will enable you to define if only functions with allocated requirements or produced/consumed flows will be exported.
When selecting this feature: If a Function without an allocated Requirement or produced/consumed Flow (depending on the selected additional object) is found, it will not be exported.
To select it, tag on "Do not export empty functions".
II.4 Options / Variants
1. Export Options
This feature will allow you to visualize in the columns next to the exported objects (in the "Tree" tab), a group of selected options concerning each of the exported objects, with an "X" that indicates that the object is tagged with a particular option.
Tree Level | Folder | Category | Option node | Option name 1 | Option name 2 |
---|---|---|---|---|---|
Function 1 | X |
You will be able to choose:
- Option folder
- Option category
- Option node
- Option (leaf)
In the export, folders, categories and option nodes will be exported in gray. Only the leaf options will be marked with "X" to indicate that they are tagged in the project.
If you wish to export this information, you may select "Export options".
By doing so, the "..." button, that will allow you to select the project's options.
The following pop-up window contains all of the options folders, categories, nodes and leaf options of the project. You may select the options(s) that interest you.
Once you have selected the options, press on "Ok".
2. See object's Variants
This feature will allow you to visualize in the columns next to the exported objects (in the "Tree" tab), the variants filters in which that object can be visualized.
The format will be the following:
Tree Level | Variant name 1 | Variant name 2 |
---|---|---|
Function 1 | x |
The object will have an "X" in the cell corresponding to the variants where this object is visualized.
If you wish to export this information, you may select "See object's variants".
By doing so, the "..." button, that will allow you to select the project's variants.
The following pop-up window contains all of the variants Folder names and variants of the project. You may select the variant(s) that interest you.
Once you have selected the variants, press on "Ok".
3. Export Options and Variants
You will be able to select both export options and see object's variants, and they will be both exported in the resulting excel file(s).
II.5 Save attachments / files and Run script
You will be able to export the requirement's attachments and save the resulting excel files with the tree(s).
1. Export attached files
Tag the option "Export attached files" to export all of the exported requirement's attachments.
When you tag this option, the "Save Excel file" option will be automatically tagged (they are both necessary to export attachments).A default excel path will be proposed to save the excel files and attachments. If you wish to change the path, click on "browse" and select the desired path by yourself. The name of the file will begin by FAS followed by the project's name and date/time in YYYYMMDD/HHMMSS format (if export from component is selected, it will also contain the Component's arkiID).
2. Save Excel file
If you are not interested in exporting the requirement's attachments, you may only select "Save excel file". A default excel path will be proposed to save the excel files. If you wish to change the path, click on "browse" and select the desired path by yourself, as well as the excel file's name.
3. Run script
Once you have finished your export's configuration, you may click on "Run".
Wait a moment for the Excel file(s) to export.
III. Result
The Excel file(s) will be generated.
III.1 Example: Functions with Requirements
Configuration:
- Start export from: "all" Functions.
- No image export.
- Export additional objects: "Requirements" with attributes.
- Export options: "All".
- See object's variants: "All".
- Optional: Export attached files / Save excel file.
III.2 Example: Functions with Flows
Configuration:
- Start export from: "all" Functions.
- No image export.
- Export additional objects: "Flows".
- Export options: "All".
- See object's variants: "All".
- Optional: Export attached files / Save excel file.
III.3 Example: Components with Requirements
Configuration:
- Start export from: Components - Select "Motherboard"
- No image export.
- Export additional objects: "Requirements" with attributes.
- Export options: "All".
- See object's variants: "All".
- Optional: Export attached files / Save excel file.
III.4 Example: Components with flows
Configuration:
- Start export from: Components - Select "Motherboard"
- No image export.
- Export additional objects: "Flows".
- Export options: "All".
- See object's variants: "All".
- Optional: Export attached files / Save excel file.
Feel free to explore the different options of exporting the functions trees, and decide for yourself which configuration best applies to your needs.