Ongoing Thesis

Master's Theses

Reliability Analysis of ONOS Releases based onCode Metrics and SRGM


Software Defined Networking (SDN) separates the control and data planes.Control plane can be considered as the brain of the network and it is responsible for configuring flows, finding paths and managing all the network functionalities like firewall,  load balancing,  etc.  For this reason,  the SDN controller became complex.  Furthermore, it is a large software platform, which have many contributors  with  different  experience  level.   As  a  result  the  code  contains  many undetected and unresolved bugs.  If one of these bugs is activated in the operational state, it may cause performance degradation or even collapse of the whole system.

SDN serves to broad range of applications with different requirements.  Some of the application areas like autonomous driving requires high reliability and performance degradation may cause undesired results.  Software Reliability Growth Models (SRGM) are statistical frameworks that are based on historical bug reports  for  reliability  analysis  and  widely  used  to  estimate  the  reliability  of  a software.  Open network operating system (ONOS) is an open source project and it became one of the most popular SDN platforms.  Its historical bug reports are open in their JIRA issue tracker.  Currently ONOS has 23 releases, its first ten  versions  are  investigated  with  different  SRGM  models  [1]  and  found  that different SRGMs fit to the bug detection of different versions of ONOS.

Source code metrics refer to quantitative characteristics of the code.  Those metrics  can  describe  the  size  of  the  code  (lines  of  code),  complexity  of  code (McCabe’s complexity), etc.  They have been used to predicting the number of bugs, identifying possible potential location of bug, etc.

The goal of this work is to analyse the reliability of different ONOS releases. For that purpose, an understanding of the correlation between the structure of source code and the bug manifestation process is crucial to predict the future bug manifestation of the new releases.  First, a state of the art research on the SRGM will  be  done  to  understand  the  software  reliability  and  SRGMs.   Afterwards the  student  should  implement  different  SRGMs  to  fit  the  error  manifestation of  every  release  and  compare  the  results  with  mentioned  research  [1].   Then, different  code  metrics  will  be  obtained  from  each  ONOS  release.   Then,  the correlation between SRGM and code metrics will be revealed.  At last reliability of the release will be analyzed with the best fitting SRGM. The result of this work will be to propose a reliability metric combining SRGM and code metrics that improves the software reliability prediction.



P. Vizarreta, K. Trivedi, B. Helvik, P. Heegaard, W. Kellerer, and C. Mas Machuca, An empirical study of software reliability in SDN controllers,  13th International  Conference  on  Network  and  Service  Management  (CNSM), 2017.


Hasan Yagiz Özkan