User Tools

Site Tools


gsoc:2017-gsoc-lsb-projects

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
gsoc:2017-gsoc-lsb-projects [2017/03/10 10:21]
khoroshilov
gsoc:2017-gsoc-lsb-projects [2017/03/19 20:25] (current)
khoroshilov
Line 12: Line 12:
  
 Mentors: Alexey Khoroshilov (alexey dot khoroshilov at gmail dot com), Jeff Licquia, Vladimir Rubanov, Denis Silakov (dsilakov at gmail dot com). Mentors: Alexey Khoroshilov (alexey dot khoroshilov at gmail dot com), Jeff Licquia, Vladimir Rubanov, Denis Silakov (dsilakov at gmail dot com).
 +
 +=====Add support for C++11 to LSB=====
 +
 +It is required to capture data of C++11 ABI for [[http://​ispras.linuxbase.org/​index.php/​LSB_Database_Home|LSB database]] using
 +[[http://​ispras.linuxbase.org/​index.php/​LSB_DB_Tools|LSB_DB_Tools]].
 +
 +**Desired knowledge:​** C++, SQL databases, Perl\\
 +Mentors: Alexey Khoroshilov,​ Denis Silakov
  
 =====Development of Rule Specifications for Correct Usage of Kernel Core API===== =====Development of Rule Specifications for Correct Usage of Kernel Core API=====
Line 36: Line 44:
  
 **Desired knowledge:​** C, aspect-oriented programming,​ Linux kernel space API\\ Mentors: Alexey Khoroshilov,​ Vadim Mutilin, Eugeny Novikov **Desired knowledge:​** C, aspect-oriented programming,​ Linux kernel space API\\ Mentors: Alexey Khoroshilov,​ Vadim Mutilin, Eugeny Novikov
 +
 +=====Extend and Update LSB Core Test Suite=====
 +
 +LSB Core tests [1,2] is the main part of LSB certification tests. Originally they were developed for POSIX (IEEE Std 1003.1-1990) and LSB 3.1. LSB specification was expanded since that time ([[http://​linuxbase.org/​navigator/​browse/​status.php|http://​linuxbase.org/​navigator/​browse/​status.php]]). The goal of the project is to fix open issues in the tests, i.e. to fix issues appearing on modern Linux distributions and to accomodate all relevant changes in text of specifications,​ as well as to expand coverage of the test suite to newly added LSB Core interfaces.
 +
 +VSX-PCTS was implemented using TET/VSXgen test harness. The OLVER test suite was developed using model-based testing technology UniTESK. The technology follows well-known Design by Contract approach to represent formal specifications. Program contracts consist of preconditions and postconditions of interface operations and data type invariants. ​ The main advantage of program contracts is that they enable automatic construction of test oracles that check the conformance of the target system behavior to the specifications.
 +
 +Traceability of formal specifications to text of original LSB/POSIX specifications is supported using the following ideas:
 +
 +  * each elementary requirement in original specification obtains a unique identifier;
 +  * each of the requirements is explicitly linked to a fragment of text in the original specification;​
 +  * all checks in preconditions and postconditions are marked by identifiers of corresponding requirements.
 +
 +[1] [[http://​bzr.linuxfoundation.org/​loggerhead/​lsb/​devel/​olver-core-tests/​files|http://​bzr.linuxfoundation.org/​loggerhead/​lsb/​devel/​olver-core-tests/​files]]\\ [2] [[http://​bzr.linuxfoundation.org/​loggerhead/​lsb/​devel/​runtime-test/​files|http://​bzr.linuxfoundation.org/​loggerhead/​lsb/​devel/​runtime-test/​files]]
 +
 +**Desired knowledge:​** C, SEC, model based testing\\ Mentors: Alexey Khoroshilov,​ Roman Zybin
 +
 +=====Develop New LSB Desktop Test Suite=====
 +
 +LSB Desktop tests [1,2] is a part of LSB certification tests. Existing tests do not cover all interfaces included into LSB and LSB specification continues to grow ([[http://​linuxbase.org/​navigator/​browse/​status.php|http://​linuxbase.org/​navigator/​browse/​status.php]]). The goal of the project is to develop tests for newly included libraries and for interfaces that have no tests yet ([[http://​linuxbase.org/​navigator/​coverage/​cov2.php|http://​linuxbase.org/​navigator/​coverage/​cov2.php]]).
 +
 +Gtk3/Gdk3 and friends are at the moment very high on our list of untested items. The test development ideally should be coordinated with upstream projects so the tests can be useful for them as well.
 +
 +[1] [[http://​bzr.linuxfoundation.org/​loggerhead/​lsb/​devel/​desktop-test/​files|http://​bzr.linuxfoundation.org/​loggerhead/​lsb/​devel/​desktop-test/​files]]\\ [2] [[http://​bzr.linuxfoundation.org/​loggerhead/​lsb/​devel/​t2c-desktop-tests/​files|http://​bzr.linuxfoundation.org/​loggerhead/​lsb/​devel/​t2c-desktop-tests/​files]]
 +
 +**Desired knowledge:​** C, Testing\\ Mentors: Alexey Khoroshilov,​ Roman Zybin
gsoc/2017-gsoc-lsb-projects.1489141316.txt.gz ยท Last modified: 2017/03/10 10:21 by khoroshilov