Darioush Jalalinasab

Thesis Title: A Lightweight Approach to Model Based Testing                        


In the modern software era, testing plays an invaluable role in software development as a quality assurance measure. Estimates have been made that up to 50% of effort and resources in software projects are allocated to testing. Model based testing (MBT) is one of the important stages of model driven development (MDD), which involves creating test cases from software models. When test cases are created from models, they reside at a higher level of abstraction, therefore creating and maintaining them will cost less, and will utilize more automation possibilities. Also, MBT takes a systematic route to test generation; this allows for a more goal-oriented and direct approach in achieving desirable test coverage criteria, especially when compared to ad-hoc testing.
Keeping models updated has always been a dire problem in development approaches that are based on models, and MBT is no exception. Also, models that MBT requires, usually involve details that are not considered in normal development processes, or are completely different models than those developed during software analysis and design, which only makes this problem worse.
The goal of this research is to introduce a minimal set of structural and behavioral models that can be used as a basis for MBT. Using models that are normally produced during the development process or simple models developed solely for testing are in priority. These models must be intuitive and tangible for programmers and modelers. Also, the possibility of inferring models from source code or hand-crafted tests and using these models as a basis for MBT will be inspected. This will allow us to take advantage of the benefits MBT offers, while spending the least resources on creating and maintaining extra models. Finally, the quality of these tests will be compared to those obtained from other testing methods.
In the first step of this research, the current situation of MBT will be surveyed. The second step involves an analysis of the existing minimalistic or agile approaches to MBT, with a focus on weak points and problems of these approaches. Finding solutions to the shortcomings of the available approaches, and comparing the solutions against the original approaches comes next. Finally, since the modeling takes a minimalistic approach, the possibility of applying MBT to lightweight and agile development processes, especially those that already advise modeling, will be considered.    

(Progress Chart)

Contact Information

   Email: jalalinasab [at] ce [dot] sharif [dot] edu