Search

Sankar Subramaniam

Sharing is caring

Model-Based Testing in the Business Intelligence (BI) World

AAEAAQAAAAAAAAdnAAAAJGEyODI4OTVlLTU3NmEtNDNjMi04NjY4LTE2NzZjZmUzOTExMA.jpg

Efficient and effective testing integration in the implementation process develops confidence and trust among business users in making significant strategic decisions that are based on the generated BI data. Testing BI applications, however, is a bit different from testing traditional applications, as it needs a data-centric approach to testing.

The usual challenges an organization faces when testing BI includes:

  • Data variety, volume, and complexity
  • Data loss while integrating data
  • Data anomalies as a result of disparate data resources
  • Time consuming
  • Specialized skills needed to execute data verification and validation process
  • No reusability, audit trails, methodology resulting in high-quality cost

As intricacies are growing in the IT industry, the quality assurance then holds the bigger risks in aiding businesses to come up with more intelligent and insightful decisions. BI solution’s quality is only as worthy as the quality of data provided and the worth of findings delivered.

Once the quality of those applications is improper, it can lead to:

  • Additional costs of basing a crucial business decision into an incorrect data
  • Increased cost in association with the late detection of defects in the software
  • Loss of confidence and trust in reporting information and enterprise data

Testing BI Solution is thus significant to guarantee information accuracy, data security, and reporting efficiency.

Model-Based Testing (MBT) For a Functional Software Testing 

Model-based Testing is today’s one of the commonly used techniques to automate the execution and generation of tests. Its growing popularity is not just a mere buzz as there are countless reasons for using this type of testing.

  • The time and cost of testing are considered as the major proportion of numerous projects, hence, there is a strong drive to investigate methods including MBT that was believed to decrease the general expenses of the test through designing and executing tests automatically.
  • The intricacies of software applications constantly increase and the aversion of users to software defects tend to be far greater than before. Thus, the functional testing becomes increasingly effective in terms of detecting bugs.
  • MBT approach and the related open source, commercial tools are mature enough to be used in numerous application areas. Empirical evidence also shows that this can generate good ROI.

Model-based testing generally renews the entire process of software testing – from business or enterprise requirements down to test repository, with automated or manual test execution.

This supports the designing as well as generating test phases, documenting test repository, maintaining and producing the traceability matrix that is bi-directional between requirements and tests, and increasing test automation.

What is Model-based Testing? 

Model-based testing can be best described as a testing technique used for automated execution and generation of test cases that are based on the formal models of SUT (System-Under-Test). MBT completely automates the testing process. This can be used at numerous different testing levels.

MBT typical deployment in industry goes through the following steps:

Step I- SUT model is built based on specific documents or given requirements. The model will be used for test cases generation; hence, the needed level of details for test cases generation is added while those that are not needed for abstracted.

Step II – Define criteria based on the requirements to pick test cases. The objective of the criteria is to ensure that the pre-determined set of the test cases is able to detect as much as software defects at an acceptable cost.

Step III – Generating set of test specifications will follow. This is the test cases abstract description, which can be translated to test script.

Step IV – A set of test scripts that are executable are generated through the use of test specification

Step V – MBT final step including the execution of the test case and then recording of output.

Model-Based Testing Important Features

Test Coverage/Test Selection Criteria – Test coverage or test selection criteria enables proper identification of how percent of the software has already been assessed using the set of test cases. The data coverage, on the other hand, helps to determine the way to choose data values from a huge set for testing purpose. Domain analysis and boundary selection have been recommended in the literature. Other criteria for test selection including requirement-based, random, and stochastic selection criteria have been recommended in the literature.

Online – Offline – In an online testing, model-based testing creates and executes test cases but in an offline MBT, the test cases are typically created by MBT tool. However, the test cases are not executed simultaneously.

Algorithm of test generation – MBT’s real advantage lies in the algorithm usage to generate test cases automatically. Generated models from Finite State Machines (FSM), model checking, symbolic execution, and theorem proving, has been proposed for test cases generation.

Model-Based Testing Advantages

MBT can be done with less effort after the creation of system model. This guarantees early testing integration in the development process, which in turn boost quality. Generally, as MBT allows automatic generation of test cases, users can benefit from reducing cost and time. After the test model is created, the test generation can be immediately automated. When there are changes in system design, MBT will lessen the effort for conducting regression testing. The only work that MBT requires is to alter the system model. The rest of testing process can become automated.

MBT generally allows software engineers to finish testing undertakings in parallel with software development.

Advertisements

Agile-DevOps-ITASM – The Three Musketeers – Part 1

Today, most of the digital organizations extends IT practices as well as techniques beyond traditional and ITIL framework. In IT, there are some organizations who keep on relying on some changes in technology, competition, business objectives and personnel that consist evolution in services that are delivered and managed.

ITIL becomes the bible in IT services management for its ability in helping in defining the processes, roles and services that will offer assurance when it comes to cost effective and efficient IT. New theories and practices are supplementing and complementing notion of the best practices in a complex environment. As a result of this, the term DevOps or Agile have find their way in ITSM. It helps in changing the modern IT organization on how to manage services in most businesses.

DevOps is defined as software development method in which it stresses the integration, collaboration and communication between IT professionals and software developers. Both of DevOps and Agile depends on each other when it comes to the world of IT services. It will provide an edge to industries through the use of DevOps.

The rise of Agile software in the development movements is based from the incremental and iterative development wherein the solutions and requirements evolve in collaboration between cross-functional and self-organizing teams. It aims to promote the delivery, development, evolutionary and adaptive planning that can encourage flexible and rapid response to change.

The synergies between ITIL practices and DevOps movement focuses on the lifecycle of services starting from inception to retirement. It provides great practices and guidance for the management of IT services. The DevOps is a kind of movement that is inspired by Lean Methodology while the Agile is development practices that aims in achieving the seamless workflow to the synchronization of products between the operation and development groups. They have the purpose of facilitating superior business agility and deliver more value to the end user. Furthermore, there are also organizations that work and often perform through virtual teams from both groups.

IT organizations are now struggling to remove the silos that can hamper their abilities in working collaboratively. Failure in the collaboration interferes the effective use of the organization’s resources and capabilities that leads to inefficiency and inflexibility in support services and delivery of services.  When this kind of situations happens, the reputation of IT will surely suffer from it. Companies or other non-profit organizations will be dependent on the internet when it comes to the core of the business and speed of innovation. This only means that you can now reach the market dynamic that is based on a large degree of flexibility and agility of the IT department.

Since there are lots of companies relying on the use of ITIL, the foundation of management processes understands the synergies between the DevOps and ITIL that is essential in improving performance and business results. Your company can now standout in the competitive world of business and be on the top of success.

 

 

 

I am in

I am now in wordpress

Create a free website or blog at WordPress.com.

Up ↑