+ All Categories
Home > Documents > An Overview Hani Achkar. A little about me: Bachelor Of Engineering (Elec.) – Monash Uni. 1984 ...

An Overview Hani Achkar. A little about me: Bachelor Of Engineering (Elec.) – Monash Uni. 1984 ...

Date post: 11-Jan-2016
Category:
Upload: clifton-mcgee
View: 213 times
Download: 0 times
Share this document with a friend
Popular Tags:
20
An Overview Hani Achkar
Transcript
Page 1: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

An Overview

Hani Achkar

Page 2: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

A little about me: Bachelor Of Engineering (Elec.) – Monash

Uni. 1984 Advanced studies in Systems Engineering

(T&E) –UniSa 1995 US Patent Model Based Testing of

Embedded Systems UK Patent Testing of Embedded Systems

(Via model based techniques) TestOptimal Principal Consultant Test Manager DDI Health

Page 3: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

Software application development suffers from a host of issues, including, but not limited to :Requirements churnScope creepTight to near impossible deadlines Insufficient resources at times – (far too

often) Increasing functional complexityPoor requirement timelinessRequirement ambiguityRequirement ErrorRequirement incompleteness

Page 4: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

Research into the domain of software development shows that:Requirements gathering, analysis and

architectural design accounts for between 60% and 70% of all defects introduced into a software product (from studies conducted by Vassilka Kirova, Ph.D., NJIT)

Coding accounts for 30% to 40% of defects discovered in software products (Kirova)

Up to 80% of all software development time is spent on locating and correcting defects (includes test)(NIST 2002)

Page 5: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

Attempts have been made to eliminate or remove error early in the development lifecycle:Fagan’s review process has shown under

experimental conditions that it is capable of removing 34% of seeded error

Modelling techniques under similar experimental conditions and with the same errors as seeded in Fagan experiments have shown that the error removal rate was 90%

Page 6: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

Traditional testing is challenged by four compounding problems:Time and labour intensiveness in

handcrafting testsQuestionable test quality where other than

formal techniques are used for test derivation

Time and resource intensiveness of manually executing/re-executing tests or even automating tests via scripting

Pesticide Paradox (Beizer) – Tests become stale quickly

Page 7: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

A pragmatic and practical answer is found in Model-Based Testing:Model-Based Testing ensures that there is a

very tight coupling between the generated test sequences and the originating requirements

Model-Based Testing forces the tester to consider the requirements at a very high level of detail

Model-Based Testing employs formal techniques and by virtue of this results in unquestionably better tests

Model-Based Testing provides an opportunity to automate the creation of tests at a minimum and an opportunity to automatically execute those tests as well

Page 8: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

There are very many modeling techniques that may be applied to testing software, and these include: Extended Finite State Machines Control Flow Graphs Binary Search Graphs Truth Tables Classification Trees Decision Tables Equivalence Classes Data Flow Models Entity Relationship Diagrams Message Sequence Charts…..

Many More Besides

Page 9: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

Finite State Machine-example

Page 10: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

Control Flow Graph- example

Cyclomatic ComplexityCalculation – Tells us weHave 42 unique paths throughthis graph so at least 42Test Cases

Page 11: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

Our objective is to harness the power of model based testing with automation. In doing so testing would be in a more powerful place to deal with the issues presented by advanced and advancing Software Applications.

TestOptimal provides a ready solution right now for: Fully modeled and automated testing of any web based

application Creation of test cases from models for manual test

execution Modeling and automation of testing of back-end applications Modeling and automation of testing for Windows

applications (in alpha testing at this time)

Page 12: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

Model Based Testing requires some unique skill sets:Understanding of Finite and Extended Finite

State Machines as a form of formal requirements modelling and test derivation – this is fundamental

Ability to abstract detail without removing the substance of the problem

Ability to design and code – models consume both design and code

Page 13: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

Generating models doesn’t come for free Modelling/coding commences with requirements analysis,

continues during and keeps pace with application development and launches almost immediately upon build delivery (every time) – Fully Automated Progression Testing is now feasible and has been achieved

While generating models/code no “tests” appear, traditional handcrafting looks to lead in this regard (a monumental mistake to believe this) – Don’t measure progress on No. of TC’s, wrong metric!

When models are complete the number of “tests” that can be generated are only limited by the constraints we place on the model

The speed of generating (and executing “tests” when coupled to a framework) is phenomenal

Ability to update tests is extremely rapid by comparison to traditional means (typically under an hour for full regeneration – ready for re-execution)

Regression testing is 100% every time as the models grow so does the regression capability, if it’s modelled it is 100% tested

In modelling requirements are covered comprehensively not only in a singular sense of each requirement being met but also exercised in concert with other requirements which is far more meaningful – this is feature interaction testing at its best.

Page 14: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

You will quickly come to appreciate that: Management needs to be on-board and

supportive, without this support only failure awaits- this cannot be overstated!

Model Based Testing is more about software development for testing than about individual test creation. This is important to recognise. But must be driven by a testing mind set, testers – NOT developers

You cannot/must not view model based testing as just another exercise in testing. You must manage and control your activities and deliverables just as you would manage or control software development and artefacts for in deed you are developing software.

You must not reconcile model based test output with numbers of test cases you may however reconcile requirements covered, states covered, transitions covered

Page 15: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

To setup a Model Based Testing environment Think about: The people The skills to service the framework you

adopt The projects The circumstances that you deploy Model

Based Testing On Again this is not a standard testing exercise,

this is a software development exercise for the purpose of highly adaptive, highly responsive and exceptionally comprehensive testing

Page 16: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

Repurposing is one of the great benefits of modelling especially from within an framework such as TestOptimal: All models can with minimal effort be employed for: Load testing. You can imagine that launching

a model on multiple threads can provide a constant load to your app or web server

Stress testing by utilising for example “searching”, updating, purchasing, copying models (as many as you have created) to push your:

Db server App server

Page 17: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

Why Do I Advocate MBT and TestOptimal In short personal experience and rungs on

the ladder in a hard-core high stress low tolerance test environment – DDI Health (part of the Primary Health Group an ASX listed $5B company).

See what Paul Graham CTO of DDI had to say regarding the TestOptimal MBT tool that I am here to share with you about

Page 18: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.
Page 19: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

Demo

Page 20: An Overview Hani Achkar.  A little about me:  Bachelor Of Engineering (Elec.) – Monash Uni. 1984  Advanced studies in Systems Engineering (T&E) – UniSa.

Questions?


Recommended