MOD03: Filter&Search - mercal03/TINF21C_Team1_AAS-Server-Webclient GitHub Wiki
Changelog
Version | Date | Author | Comment |
---|---|---|---|
0.1 | 09.05.2023 | Samara Dominik | Created, set up basic structure |
0.2 | 09.05.2023 | Severin Helms | Add Scope |
0.3 | 09.05.2023 | Severin Helms | Add User view |
0.4 | 10.05.2023 | Severin Helms | Add Requirements |
0.5 | 10.05.2023 | Severin Helms | Add Implementation |
0.6 | 10.05.2023 | Samara Dominik | Enhance Scope, add Glossary |
0.7 | 10.05.2023 | Samara Dominik | Added Design |
0.8 | 10.05.2023 | Martin Rittmann | Add Module Context, Analysis |
0.9 | 10.05.2023 | Tom Engelmann | Add Module Tests |
Table of contents
1 Scope
The scope of this module is to enable users to efficiently search and filter assets based on their specific input criteria.
2 Glossary
- AAS: Asset Administration Shell
- AASX: file format to store an asset
3 Module Requirements
3.1 User View
Once the user has entered the site and loaded a server, there is the possibility to filter by year and manufacturer name or search directly for an asset using a search box. If the user clicks on the year filtering, a drop-down menu with sorting options opens. If the user clicks on the manufacturer name, a drop-down menu also opens with the selection of the Manufacturer-Name.
3.2 Requirements
/REQ60/ Sort by year
The user should be able to sort the displayed assets by manufacturer year.
/REQ70/ Filter for manufacturer
The user should be able to filter the assets by manufacturer.
/REQ80/ Search for digital twin
The user can search for digital twins by entering the name of the asset.
/NF30/ Efficiency
The webpage shall add servers and apply filters in the fastest way possible as well as the user being able to find desired results with the lowest possible amount of steps.
/NF40/ Usability
A user searching a specific product shall find that product as fast as possible, intuitively know how the webpage works and there shall be enough online documentation for new users. No further training or experience is required.
3.3 Module Context
This modules responsibility is the processing of data. After loading the data from a server in MOD01 and adding the data to the GUI in MOD02, this module shall now deliver the possibility for the user to find data more easily and therefore limit the entries shown in the application by applying filter and search parameters. Also a sort functionality shall be implemented to find the latest and oldest assets on the server.
4 Analysis
This module delivers the functionality to filter, sort and search the data of the previously loaded server. More precisely this module has three functions, filtering by manufacturer, sorting by manufacturing year and limiting the list of assets by searching for text values. These functions serve the usability and main goal of the project to speed up the finding of assets in a big list.
5 Design
The filtering, sorting, and search functionalities are all positioned in a separated bar below the Webclient-header. This ensures quick and easy access for users.The filtering for manufacturer and sorting by year features have own drop-down menus, providing users with a efficient selection process. The search bar is equipped with input assistance, additionally, an extra button allows users to delete their search query directly, eliminating the need to manually erase the entire entry.
Additional details on our Usability Concept can be found on the Usability-Concept-page.
6 Implementation
All functions are implemented with java script.
/REQ60/ Sort by year
Filtering by year is done via a dropdown menu. The user selects the type of sorting in the dropdown menu. "Oldest first" or "Newest first". With this input, the assets are sorted by year in ascending or descending order and then output. Since there are also assets without dates, they are appended below the sorted array.
/REQ70/ Filter for manufacturer
After selecting a server, the names of the manufacturers are read from the assets and stored in an array. These are then output as a dropdown under the manufacturer filter. The user can then click on a manufacturer name. The clicked name contains an associated value that can be used to query the assets for the manufacturer name. The assets are then displayed with the associated manufacturer name. You can also search for a manufacturer directly using an input field. The user enters a string that is used to check whether a manufacturer name contains this substring, and then all asstes that match it are displayed.
/REQ80/ Search for digital twin
You can use the search bar to search for a Asset. If you enter a value, the Assets are queried for the name and read out. These are then listed as auto-completion under the search bar. The corresponding attachment can be selected there and will then be displayed.
7 Module Tests
The functionalities have been tested in the test suite TS-Asset with the test cases TC-Asset-Search-002, TC-Asset-Filter-003, TC-Asset-Sort-004.
In TC-Asset-Search-002 the functionality of searching for specific assets by their name or by a substring of their name has been tested. It passed the test and produced the expected results.
In <TC-Asset-Filter-003 the functionality of filtering for specific assets by the name of their manufacturer has been tested. It passed the test and produced the expected results.
In TC-Asset-Sort-004> the functionality of sorting the assets by the year of their manufacturing has been tested. It passed the test and produced the expected results.