Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.
Qt Metrics 2 Backlog: Difference between revisions
mNo edit summary |
m (Status of the items updated to reflect implementation v1.0) |
||
(18 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
This is the backlog for Qt Metrics 2 site currently under development. | This is the backlog for Qt Metrics 2 site that is currently under development. | ||
The priority **** items are the core functionality and would be the target prior to launch or wider use. | |||
The priority *** items are considered content/functionality for basic use as requested by the key stateholders. | |||
In case of proposals or improvement ideas please contact [[User:Juha|Juha Sippola]] (report builder, database) or Tony Sarajärvi (parser). | In case of proposals or improvement ideas please contact [[User:Juha|Juha Sippola]] (report builder, database) or Tony Sarajärvi (parser). | ||
=== | === Data reliability and completeness (database and parser) === | ||
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
Line 9: | Line 13: | ||
! Status !! Priority !! Item | ! Status !! Priority !! Item | ||
|- | |- | ||
| | | DONE || **** || Show the actual testset parent (not the Qt5 where it was run) ([https://codereview.qt-project.org/#/c/114432/ Code Review]) | ||
|- | |||
| DONE || **** || Change build_number (int) to build_key (string) for the new-CI ([https://codereview.qt-project.org/#/c/115251/ Code Review]); UPDATE: type changed to 64bit int, BIGINT in MySQL ([https://codereview.qt-project.org/126506 Code Review]) | |||
|- | |- | ||
| | | DONE || *** || Get testfunctions from xml ([https://codereview.qt-project.org/126148 Code Review]) | ||
|- | |- | ||
| | | DONE || *** || Get testrows from xml ([https://codereview.qt-project.org/126148 Code Review]) | ||
|- | |- | ||
| | | DONE || *** || Change testset_run.testcases_xxx to total_xxx (terminology change) ([https://codereview.qt-project.org/#/c/115251/ Code Review]) | ||
|- | |- | ||
| | | DONE || *** || Database indexing and query optimization (for performance) | ||
|- | |- | ||
| idle || | | idle || * || Database normalisation: result fields in the *_run tables should have a separate table instead of the enums (could also make the naming more flexible) | ||
|- | |- | ||
| idle || ** || | | idle || * || Database normalisation: db_status table does not have a primary key (table holds just one row with the latest data) | ||
|- | |||
| idle || * || Database normalisation: conf.features is not perfect design, instead a separate feature table should be used (how this information will be used in the end) | |||
|} | |} | ||
=== | === Pages and views === | ||
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
Line 30: | Line 38: | ||
! Status !! Priority !! Item | ! Status !! Priority !! Item | ||
|- | |- | ||
| | | DONE || **** || Home page modifications (implemented as part of the Overview, Project, Platform and Testset page changes) | ||
|- | |- | ||
| | | DONE || **** || Overview page ([https://codereview.qt-project.org/#/c/115677/ Code Review]) | ||
|- | |- | ||
| | | DONE || **** || Project pages for build project (Qt5) and testset projects ([https://codereview.qt-project.org/#/c/115677/ Code Review]) | ||
|- | |- | ||
| | | DONE || *** || Project pages: Link to log file ([https://codereview.qt-project.org/122768 Code Review]) | ||
|- | |- | ||
| | | DONE || **** || Platform page ([https://codereview.qt-project.org/#/c/115679/ Code Review]) | ||
|- | |- | ||
| | | DONE || *** || Platform page: Link to log file ([https://codereview.qt-project.org/122768 Code Review]) | ||
|- | |- | ||
| | | DONE || ** || Platform page: Configuration flag identification ([https://codereview.qt-project.org/122759 Code Review]) | ||
|- | |- | ||
| idle || | | idle || * || Platform page: Identification of configurations where insignificant or force success could be removed | ||
|- | |- | ||
| idle || | | idle || * || Platform page: Filtering mechanism | ||
|- | |- | ||
| | | DONE || *** || Configuration page ([https://codereview.qt-project.org/122759 Code Review]) | ||
|- | |- | ||
| | | DONE || *** || Configuration page: Link to log file ([https://codereview.qt-project.org/122768 Code Review]) | ||
|- | |- | ||
| idle || * || Branch page | | idle || * || Branch page | ||
|- | |- | ||
| | | DONE || **** || Top failing testsets page ([https://codereview.qt-project.org/#/c/113921/ Code Review / UI], [https://codereview.qt-project.org/#/c/114211/ Code Review / parser]) | ||
|- | |- | ||
| | | DONE || **** || Top flaky testsets page (see Code Review links for Top failing testsets page) | ||
|- | |- | ||
| | | DONE || **** || Testset page ([https://codereview.qt-project.org/#/c/115675/ Code Review]) | ||
|- | |- | ||
| | | DONE || *** || Testset page: Link to log file ([https://codereview.qt-project.org/122768 Code Review]) | ||
|- | |- | ||
| | | DONE || *** || Testset page: Testset flag identification ([https://codereview.qt-project.org/122763 Code Review]) | ||
|- | |- | ||
| | | DONE || ** || Testset page: Testset run times ([https://codereview.qt-project.org/#/c/115675/ Code Review]) | ||
|- | |- | ||
| idle || * || Testset page: Filtering mechanism | | idle || * || Testset page: Filtering mechanism | ||
Line 72: | Line 78: | ||
| idle || * || Testset page: Identification of testsets where insignificant could be removed | | idle || * || Testset page: Identification of testsets where insignificant could be removed | ||
|- | |- | ||
| | | DONE || *** || Testset page: Test function information ([https://codereview.qt-project.org/126149 Code Review], [https://codereview.qt-project.org/126151 Code Review]) | ||
|- | |||
| DONE || *** || Testset page: Test function flag identification ([https://codereview.qt-project.org/126149 Code Review]) | |||
|- | |- | ||
| | | DONE || ** || Page to identify test functions where blacklisting could be removed ([https://codereview.qt-project.org/126176 Code Review], [https://codereview.qt-project.org/126294 Code Review]) | ||
|- | |- | ||
| | | DONE || ** || Page to identify test rows where blacklisting could be removed ([https://codereview.qt-project.org/126295 Code Review]) | ||
|- | |- | ||
| | | DONE || ** || All pages: Link to build directory and xml file ([https://codereview.qt-project.org/126166 Code Review]) | ||
|- | |- | ||
| | | DONE || *** || Test function page: Test row information ([https://codereview.qt-project.org/126152 Code Review]) | ||
|- | |||
| DONE || ** || Top failed testfunctions page ([https://codereview.qt-project.org/126170 Code Review]) | |||
|- | |||
| DONE || ** || Top testset execution duration page ([https://codereview.qt-project.org/126505 Code Review]) | |||
|- | |||
| DONE || ** || Top test function execution duration page ([https://codereview.qt-project.org/126505 Code Review]) | |||
|- | |||
| idle || ** || Trends for top failed/flaky lists | |||
|- | |||
| idle || ** || Failing tests in branches filtered by platform os (target configuration) | |||
|- | |- | ||
| idle || | | idle || ** || Project/Platform/Testset pages: Way to expand or filter the range of builds (shows all by default), or allow configuration to be visible when scrolling horizontally | ||
|- | |- | ||
| idle || | | idle || * || Testfunction page/information: Find skipped testfunctions | ||
|} | |} | ||
=== | === Graphs === | ||
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
Line 93: | Line 111: | ||
! Status !! Priority !! Item | ! Status !! Priority !! Item | ||
|- | |- | ||
| idle || ** || Build phases by configuration (like | | DONE || ** || Summary graph (dashboard) of current CI status ([https://codereview.qt-project.org/126628 Code Review], [https://codereview.qt-project.org/126629 Code Review]) | ||
|- | |||
| idle || ** || Build phases by configuration (like on the old metrics page) | |||
|- | |- | ||
| idle || * || Build phases by configuration: Tick box to select if idle times are included or not in the Build phases graph | | idle || * || Build phases by configuration: Tick box to select if idle times are included or not in the Build phases graph | ||
Line 108: | Line 128: | ||
|} | |} | ||
=== | === Other features === | ||
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
Line 114: | Line 134: | ||
! Status !! Priority !! Item | ! Status !! Priority !! Item | ||
|- | |- | ||
| | | DONE || **** || Web security ([https://codereview.qt-project.org/#/c/115252/ Code Review]) | ||
|- | |- | ||
| | | DONE || *** || Performance and user experience <br /> | ||
utilising Ajax for selected pages [https://codereview.qt-project.org/125354 Code Review]<br /> | |||
other changes: database query change [https://codereview.qt-project.org/121193 Code Review], HTML compression [https://codereview.qt-project.org/121197 Code Review], HTML minification [https://codereview.qt-project.org/121198 Code Review] | |||
|- | |- | ||
| | | DONE || *** || Take template engine into use ([https://codereview.qt-project.org/115659 Code Review]) | ||
|- | |||
| DONE || *** || Align the UI with Qt brand guidelines ([https://codereview.qt-project.org/126510 Code Review], [https://codereview.qt-project.org/126779 Code Review]) | |||
|- | |||
| DONE || *** || Admin: Remove old data from the database (timescale fixed or selectable), keeping the referential integrity in mind ([https://codereview.qt-project.org/126144 Code Review]) | |||
|- | |||
| DONE || *** || Admin: Remove branch, keeping the referential integrity in mind ([https://codereview.qt-project.org/126144 Code Review]) | |||
|- | |||
| DONE || ** || Admin: Archive a branch by tagging it archived so that it is not shown on the views without deleting the data ([https://codereview.qt-project.org/126164 Code Review]) | |||
|- | |||
| DONE || ** || Indication on content loading ([https://codereview.qt-project.org/121194 Code Review]) | |||
|- | |||
| DONE || ** || Indication on database refresh / log parsing ([https://codereview.qt-project.org/126155 Code Review]) | |||
|- | |||
| DONE || ** || Save the external libraries used as git submodules ([https://codereview.qt-project.org/126720 Code Review], [https://codereview.qt-project.org/126714 Code Review]) | |||
|- | |- | ||
| idle || * || Link(s) to other related Qt Metrics | | idle || * || Link(s) to other related Qt Metrics | ||
Line 141: | Line 177: | ||
|} | |} | ||
=== | === Documentation === | ||
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
Line 147: | Line 183: | ||
! Status !! Priority !! Item | ! Status !! Priority !! Item | ||
|- | |- | ||
| | | in progress || *** || Implementation solution description | ||
|- | |||
| in progress || *** || Database design | |||
|- | |||
| DONE || ** || Site map ([https://codereview.qt-project.org/122764 Code Review]) | |||
|- | |- | ||
| | | DONE || ** || Documentation links into header ([https://codereview.qt-project.org/126157 Code Review]) | ||
|- | |- | ||
| | | idle || * || Class documentation | ||
|} | |} |
Latest revision as of 07:45, 1 October 2015
This is the backlog for Qt Metrics 2 site that is currently under development.
The priority **** items are the core functionality and would be the target prior to launch or wider use.
The priority *** items are considered content/functionality for basic use as requested by the key stateholders.
In case of proposals or improvement ideas please contact Juha Sippola (report builder, database) or Tony Sarajärvi (parser).
Data reliability and completeness (database and parser)
Status | Priority | Item |
---|---|---|
DONE | **** | Show the actual testset parent (not the Qt5 where it was run) (Code Review) |
DONE | **** | Change build_number (int) to build_key (string) for the new-CI (Code Review); UPDATE: type changed to 64bit int, BIGINT in MySQL (Code Review) |
DONE | *** | Get testfunctions from xml (Code Review) |
DONE | *** | Get testrows from xml (Code Review) |
DONE | *** | Change testset_run.testcases_xxx to total_xxx (terminology change) (Code Review) |
DONE | *** | Database indexing and query optimization (for performance) |
idle | * | Database normalisation: result fields in the *_run tables should have a separate table instead of the enums (could also make the naming more flexible) |
idle | * | Database normalisation: db_status table does not have a primary key (table holds just one row with the latest data) |
idle | * | Database normalisation: conf.features is not perfect design, instead a separate feature table should be used (how this information will be used in the end) |
Pages and views
Status | Priority | Item |
---|---|---|
DONE | **** | Home page modifications (implemented as part of the Overview, Project, Platform and Testset page changes) |
DONE | **** | Overview page (Code Review) |
DONE | **** | Project pages for build project (Qt5) and testset projects (Code Review) |
DONE | *** | Project pages: Link to log file (Code Review) |
DONE | **** | Platform page (Code Review) |
DONE | *** | Platform page: Link to log file (Code Review) |
DONE | ** | Platform page: Configuration flag identification (Code Review) |
idle | * | Platform page: Identification of configurations where insignificant or force success could be removed |
idle | * | Platform page: Filtering mechanism |
DONE | *** | Configuration page (Code Review) |
DONE | *** | Configuration page: Link to log file (Code Review) |
idle | * | Branch page |
DONE | **** | Top failing testsets page (Code Review / UI, Code Review / parser) |
DONE | **** | Top flaky testsets page (see Code Review links for Top failing testsets page) |
DONE | **** | Testset page (Code Review) |
DONE | *** | Testset page: Link to log file (Code Review) |
DONE | *** | Testset page: Testset flag identification (Code Review) |
DONE | ** | Testset page: Testset run times (Code Review) |
idle | * | Testset page: Filtering mechanism |
idle | * | Testset page: Identification of testsets where insignificant could be removed |
DONE | *** | Testset page: Test function information (Code Review, Code Review) |
DONE | *** | Testset page: Test function flag identification (Code Review) |
DONE | ** | Page to identify test functions where blacklisting could be removed (Code Review, Code Review) |
DONE | ** | Page to identify test rows where blacklisting could be removed (Code Review) |
DONE | ** | All pages: Link to build directory and xml file (Code Review) |
DONE | *** | Test function page: Test row information (Code Review) |
DONE | ** | Top failed testfunctions page (Code Review) |
DONE | ** | Top testset execution duration page (Code Review) |
DONE | ** | Top test function execution duration page (Code Review) |
idle | ** | Trends for top failed/flaky lists |
idle | ** | Failing tests in branches filtered by platform os (target configuration) |
idle | ** | Project/Platform/Testset pages: Way to expand or filter the range of builds (shows all by default), or allow configuration to be visible when scrolling horizontally |
idle | * | Testfunction page/information: Find skipped testfunctions |
Graphs
Status | Priority | Item |
---|---|---|
DONE | ** | Summary graph (dashboard) of current CI status (Code Review, Code Review) |
idle | ** | Build phases by configuration (like on the old metrics page) |
idle | * | Build phases by configuration: Tick box to select if idle times are included or not in the Build phases graph |
idle | * | Build phases by configuration: Configuration result to the Build phases graph (e.g. to conf title) |
idle | * | Build phases by configuration: Add tooltips into Build phases graph (e.g phase name and value) |
idle | * | Visualize CI performance via testset execution time (to visualize sequential and parallel runs) |
idle | * | Visualize CI performance via the trend of phase duration (one, or several if feasible) across the last 20 builds in selected Project Configuration |
idle | * | Improvement progress trend graphs, e.g. on build success rates, build execution times, Configuration and Autotest force success and insignificant flag removals. |
Other features
Status | Priority | Item |
---|---|---|
DONE | **** | Web security (Code Review) |
DONE | *** | Performance and user experience utilising Ajax for selected pages Code Review |
DONE | *** | Take template engine into use (Code Review) |
DONE | *** | Align the UI with Qt brand guidelines (Code Review, Code Review) |
DONE | *** | Admin: Remove old data from the database (timescale fixed or selectable), keeping the referential integrity in mind (Code Review) |
DONE | *** | Admin: Remove branch, keeping the referential integrity in mind (Code Review) |
DONE | ** | Admin: Archive a branch by tagging it archived so that it is not shown on the views without deleting the data (Code Review) |
DONE | ** | Indication on content loading (Code Review) |
DONE | ** | Indication on database refresh / log parsing (Code Review) |
DONE | ** | Save the external libraries used as git submodules (Code Review, Code Review) |
idle | * | Link(s) to other related Qt Metrics |
idle | * | Associate gerrit change ids with builds |
idle | * | Include the bug id’s for test cases. This requires first a database or other solution where to get the data. |
idle | * | Log file parsing helper (a way to find things in the last n logs) |
idle | * | Register to receive error reports to a certain module (plus unregister) |
idle | * | Report generator to create a detailed text & graph report from a view. This would be applicable for such data that takes long time to extract and format. |
idle | * | Data export to excel/pdf from a view |
idle | * | Identify which CI build machines failed most often and which CI builds take the longest time to execute |
idle | * | Add Google Analytics to get information on the portal usage |
idle | * | Support for https |
Documentation
Status | Priority | Item |
---|---|---|
in progress | *** | Implementation solution description |
in progress | *** | Database design |
DONE | ** | Site map (Code Review) |
DONE | ** | Documentation links into header (Code Review) |
idle | * | Class documentation |