Free Essay

Model Based Testing

In:

Submitted By Manojpmat
Words 2784
Pages 12
MODEL BASED TESTING

Manoj Philip Mathen manoj.mathen@outlook.com
Abstract:
This paper is a quick glance into what is Model Based Testing, its evolution, its current state, who should use it, the techniques and tools involved and what will it mean to the enterprise in terms of the cost incurred. The paper starts with a brief exploration into some of the building blocks of MBT, followed by an attempt to define Model based Testing. This is followed by an argument on the need of Model Based Testing, and a quick overview on Model Based Testing and the approach. Next, we walkthrough 2 example scenarios, where certain models have been exhibited to showcase testing benefits. This also shows the different techniques and methods in MBT. Finally the author describes some common challenges in Model based Testing and some best practices.
Introduction
Model Based Testing (MBT) is very common in validating embedded systems, phones, switches etc. The model based testing was very successful and has yielded good results in these areas. This could have been the reason why practioners tried exploring the feasibility of the same in other areas of Software validation. There are many research studies that are ongoing and many QA schools have embarked on the MBT journey. The results from those who are travelling the MBT journey are encouraging, but not conclusive. There has to be more exhaustive research / analysis.
MBT is very similar to the abacus based approach in teaching kids the concept of addition. The entire complexity of the concept itself is simplified in a model – the abacus. Teaching addition / subtraction using models (i.e. fruits, sweets, abacus counters etc) makes it very easy for the end-user (student) to understand the concept and the system itself. This might also answer the common questions kids ask, if 2+2 = 4, how come 3+1 is also 4!

Figure 1

The results indicate that the model based approach increases the effectiveness of learning as well as reduces the cost of learning. Does this hold true in Software Testing?

What is Model based Testing.
System Models are very common in the aviation, telecom industry. When Boeing designs a new aircraft such as the 787 Dream line or the 747-8, they model the aircraft in software and it is run in simulated runways, skies to understand the aircraft behavior in varying environmental conditions. Models thus explain what otherwise we don’t understand fully. It abstracts and simplifies things. It helps us answer what-if questions. The very task of modeling forces the designer / modeler to break down the complex issues into easily assimilable form.
Model based Testing is thus a natural way to approach any system/concept or solution. Models can be as simple as a graph or a flow chart. Complex models can be created using visualization tools or pseudo code. The use of such ‘models’ in validating a system is usually called as model based testing. A model alone will not suffice the testing requirements, hence the existence of ‘test models’ that can generate test cases. MBT takes ‘modeling’ to the next level. Models are used not just to simplify/abstract systems, but also to auto generate use/test cases.
Models: The Building Blocks
Finite State Machines
A Finite State machine (FSM) is a mathematical abstraction used to design digital logic, business workflow or compute programs. It is a behavioral model composed of states, events and transitions. Finite State machines are used widely in problem solving, artificial intelligence, circuit designs etc. The below is a FSM depiction of an electric switch. The switch has only 2 different states - ‘ON’ and ‘OFF’. There are 2 Events – ‘Switch On’ and ‘Switch Off’ and the process of ‘state change’ is known as transition. The Switch is currently in ON state. An event ‘Switch off’ can change the state to OFF state. Figure 2
The Finite State Machines thus describes a collection of states and their associated transitions.

Finite State Diagrams
The finite state machines can also be represented using state diagrams. A state diagram is a tabular representation of the machine. The above State machine can be depicted as below:

Figure 3
The above ‘switch’ example is a very simple one, depicting only 2 states. The switch has to be either in a switched on state or switched off state. The above table shows that if the Current State is ‘ON’ and if the ‘switch on’ activity is performed, there will be no change in the state. If the Current State in ‘ON’ and if the ‘switch off’ activity is performed, the state will be changed to ‘OFF’.
The FSM and the state diagrams will be used throughout this paper to explain the Model based Testing concepts. Creating a model is thus not so difficult, more difficult is the question what to model and what not to model.

Example Scenario
Consider a simple web based sales application. This has a home page, which has content about the sales application and other details. It has 3 links (L1, L2 and L3) which takes us to the Inventory page, Sales page and the Payment Page. Figure #4 shows the State diagram for our sales application.
From any page (except Payment.html), the user can go to the home page (using L8, L9). A user on the payment page cannot come to the Inventory page directly. Below depicted is the state diagram for the same and we see there are 4 states and about 9 transitions. The state diagram helps us understand the web based system more easily. It also helps us in asking questions around new / possible transitions.
Negative test scenarios can also be tested using the State Diagram. For ex, the below state diagram depicts that a user on the Payment page cannot go back to the home page. This design might be due to security concerns. Similarly, a user cannot go from the Payment page to the Inventory page directly.

Figure 4

Model Generation
Building a model is time consuming. But this is a one time activity and experience makes it easier. Building a model helps you in exploring the application in more depth. It makes you think “What-if” at all states. This helps you in finding out all possible use-cases, which in turn will help you find gaps in the requirement at a very early stage itself. The cost-benefit of finding a defect in the requirements phase it is very evident.
Automating Models
Automation for models focuses on automating the transitions and verifying the states. The business intelligence behind state transitions will be inbuilt into the model and the state transformations need to be verified in an automated manner. The automated validation checks should also validate that at any point, the model is in an acceptable / predefined state. Models can be automated in different technology. A UML based model is easy to decipher and built-upon. A complete automated model will, do the following. Mimic the system behavior based on varied inputs. Validate the output.
A big assumption is that the model is an very similar replica of the system. To facilitate this, the model generator should have the entire/abstracted business logic/use cases built-into it. This in short, is the model creation effort. A subject matter expert involvement is recommended at this state. If the model is not capable of validating the outputs or generating testcases, then it is just a model, and may not be of much use for testing. However such models are still a very powerful tool for the design/development team.
Bayseian Graphical Modeling (BGM)
This is a modeling technique where a graph denotes the conditional dependency between various factors. They are commonly used in statistics and machine learning. If the network structure of the model is a directed, non-cyclic graph, the model represents a factorization of the joint probability of all various factors.
e.g.: if the Events are X1, X2,….Xn, then the joint probability is
P[X1, X2,……, Xn] = ∫▒∫_(i=1)^n▒〖P[Xi/pai]〗
Let us take an example. The Build Quality assessment of a particular deliverable. Before we start testing, we can guess how much of an effort will be required – factoring the build quality. Now this depends on multiple factors like Code Complexity, Testing accuracy, Defects detected during design review etc.

Benefits of Model Based Testing (MBT)
Models are gaining importance in Software Development. It helps in understanding requirements, validating requirements, building designs and guiding other SDLC activities. Modeling languages like UML come handy in modeling software.
The benefits realized from Model based Testing is numerous. The increased focus on the same is a testimony. The below table illustrates some of the common benefits of Model based Testing.

Benefits of Model based Testing
1 Best way to Communicate within the team.
2 Economical means of knowledge capture.
3 High Degree of Automation feasible.
4 Ability to Generate Regression Suites
5 Early Defect Detection.
6 Good Reference.

Testing can be very productive using Models. Most of the black box testers today use models unknowingly. E.g. : a tester drawing the functionality of the system that they are testing on a whiteboard, tracing the program flow etc. If these testers use the Model based approach in a more structured and scientific manner, the benefits that will befall on them are numerous.
Let us explore the benefits of Model based testing in more detail.
Best way to communicate within the team.
Often it so happens that isolated pockets of knowledge do exist in large project teams. The development team might miss the big picture of the system. They will have the ‘depth’, but ‘width’ might be missing. The testing team might have the width, but it might be too shallow so, they may not be aware of some of the need-to-know details of the system. Having a model is a good way of ensuring everyone has the same bird-eye’s view. The process of model creation Is also an interesting activity. A lot of learning happens in this phase.
Economical means of knowledge Capture.
The model will be a one-point reference for any new joinees within the team. Complex system details are usually transitioned multiple times, especially when there are late entrants into a project team. Modeling has a significant 1-time effort, however in the long run the investment will be justified. The model also is a one-stop place to understand the system.

High Degree of Automation feasible
System behavior is predicted by the model and it also generates test cases. Executable test cases can be auto generated from these models. The benefits are mostly seen in systems having complex features. The traditional test design methods used to generate test cases became too expensive and labor intensive when the applications/system became increasingly complex.
Ability to Generate Regression Suites.
Once the test cases are auto generated, a subset moves into the regression bed. Since a working model is available, the same can be validated against the model. Subsequent releases will introduce new changes into the model and this will have to be updated in the model.
Early Defect Detection. Testers are involved from the beginning, this forces testability into the design, complete test coverage and coverage of complex functionality. The cost pressure in the industry introduces a constant in the cost equation. This constant is the cost for cost reduction. Factors such as early defect detection will ensure such costs are negated.
Good Reference.
A good model is a good reference for the system. It reflects the capabilities of a system, its core functionalities. It also is a good study-aid for anyone doing a system study or analysis. However, the model should be continuously updated to reflect any major change in the system.

Model Based Testing, is capable of automating the test design itself. Normally, the test engineer designs the test cases from Requirements. The test cases thus developed can vary based on who designed/developed the test cases. Understanding of the requirements might differ amongst different people. In a model based scenario, the test engineer doesn’t jump into test cases directly. Instead, he understands the requirements first, and creates a model of the software application. In this process of ‘modeling’ the software itself, many a defects and missed requirements are caught. A defect detected as early as in the requirement phase is the least expensive defect to fix. Once a model is created, test cases can be auto generated. Some schools treat Flow charts, Data Flow Diagrams, Use Cases, State transition tables etc. also as models.

Normal Scenario

Model Based Testing

The ability to abstract at the right level will be the key for a successful model. A model shouldn’t have too much of an information, neither too less. Creating a working model from the requirement is the most crucial step. Once the model is created, test cases can be auto generated from the same. The time taken to create the model might be lesser than the time to create the test cases manually. Modeling a system also calls for a systematic testing of the same. Modeling also helps in base lining the requirements. E.g.: What happens when you click on submit with ‘xyz’ as inputs. This maynot have been even thought of.
The finite state machine / finite state diagram(s) can be used to depict the various states within a model. These states refer to the different ‘co-ordinates ‘that a system reaches during operation. Different algorithms, like the Chinese Postman algorithm can be used to generate test/use cases that traverse all these states/co-ordinates.

Model based testing also involves many challenges. Lack of awareness about the system, skill set challenges, management support, tools availability are few of them.

Awareness
The concept of Model based Testing itself is not very common among the tester community. Many test cycles get completed even without a thought on MBT feasibility. Trainings & Seminars will help on this front. The tester should be made aware of this concept in the first place. The benefits and how it addresses many a pain point should be explained.
Complicated model - State Explosion.
While modeling a system, ‘level of granularity’ is very important. It shouldn’t be fine grained or too much coarse grained. Usually, the modeler gets so much information about some area and he depicts all of them in excitement. This results in too many states and transitions in the model. This state is known as state explosion.
Lack of Information
Many a time, during the modeling phase, sufficient information may not exist to facilitate an optimal model. This might either delay the modeling process or result in an incorrect model. The latter is more risky. Modeling should be seen as a phase where requirement/design validation happens.
Questions on ROI
Management questions the effort/cost associated with this extra task of modeling the system. The return on this investment maynot be easily visible or well-articulated. This is mainly an awareness challenge and the modeling concept should be familiar to both the developer and tester community. Many a time, management refuses to make a one time investment in creating the model. The cost inc urred maynot justify the need.
Tools used for Model based Testing Nmodel from Microsoft Spec Explorer for Visual Studio. A traditional method is to use Visio to call out all the states and the associated variables,outputs from each state etc. UML Pad. MaTeLo. This tool uses markov chains for modeling thetest.

Conclusion
Model based testing is thus a growing area. The benefits of MBT are many and it has to be socialized with the testing community. Fitment analysis of MBT is also a key. Knowing the concept of MBT shouldn’t result in in-corpora ting MBT anywhere and everywhere. Some candidates will be core applications, legacy systems, systems with costly upstream interfaces etc. Right model (right level of abstraction/granularity) is one of the key to success with MBT. Virtualization in modeling is a growing area and the benefits are manifold. This brings the benefits of models & virtualization together. Research and studies are in progress on this front.

Author Biography
Manoj Philip Mathen, is a Sr.Project Manager and a consultant for Specialized testing with one of leading IT organization. He comes with rich experience in Middleware Testing and Development. An author, speaker at various forums, he has authored multiple white papers in websites & magazines. His domain exposure includes Transportation, Banking and Insurance. Manoj has handled projects for various US & UK based customers both at customer & offshore locations. His current interests include model based testing , services interoperability & service governance.
The author can be reached @ manoj.mathen@outlook.com

_____________________________________

Similar Documents

Free Essay

I Just Want to Join !!!

...hofstede@wur.nl Catholijn M. Jonker Delft University of Technology c.m.jonker@tudelft.nl Tim Verwaart LEI Wageningen UR tim.verwaart@wur.nl Keywords: trade, culture, agents, uncertainty avoidance, negotiation Abstract A model is presented of the way that our cultural attitude towards the unknown influences the decisions we make in trade. Uncertainty avoidance is one of Hofstede’s five cultural dimensions. The paper presents a model of how this dimension affects trade. This influence has been explicated for the decisions regarding trade: partner selection, negotiation behavior, trust, and the interpretation of the trade partner’s behavior. It has been verified in simulations showing that the generic tendencies as attributed to uncertainty avoidance are reflected in the simulation results. Our approach is an example of instantiating generic knowledge on the influences of culture on decision-making in general. INTRODUCTION The international food economy is rapidly changing. Important issues are concentration and globalization, growing information intensity, consumer demands, and social responsibility [Kinsey 2001]. An important issue in current food trade research is the emergence and performance of international supply chain networks [Lazzarini et al. 2001]. Agent-based modeling extends the understanding of processes in society and economy. It enables simulation of the emergence of macro-level phenomena from micro-level interactions between individual agents [Tesfatsion and Judd 2006]...

Words: 6864 - Pages: 28

Free Essay

Learning English

...The same holds for collisions between agents: on each cell at most one agent is allowed and thus, both agents remain on their positions, if they would collide. This rule implies, that only one agent can pass the small opening at a time! An episode ends either if both agents are situated on their goals region or after imax iterations. Exercises 1. Discuss the following strategies for giving reward and choose one for your model / your implementation: a) Each agent gets an individual reward, i.e. agent Aj gets reward rj when it reaches goal Aj . b) Both agents get an identical reward r if both agents are on their correct goals. 1 Goal A2 Goal A1 1 2 Start A1 Start A2 Figure 1: Mulitagent scenario. What are pro and cons of these strategies? How can they influence the speed and the quality of learning? Justify your choice. Provide values for the reward function: What reward is given for reaching the goal(s), what value is given for other situations, are there intermediate rewards for partially reached goals? [4 p] 2. What is a useful model for this scenario / the...

Words: 810 - Pages: 4

Premium Essay

Emergency Management Research Paper

...phases of emergency management: mitigation, preparedness, response and recovery. 3D modeling can provide realistic models of buildings, infrastructure and the surrounding topography. These models can provide emergency managers and first responders with valuable information about where to look for damage, people and sensitive materials, as well...

Words: 1500 - Pages: 6

Free Essay

Multi Agent System

...Volume 2, No. 4, April 2011 Journal of Global Research in Computer Science RESEARCH PAPER Available Online at www.jgrcs.info A MULTI AGENT BASED E-SHOPPING SYSTEM Sougata Khatua*1, Zhang Yuheng 2, Arijit Das 3 and N.Ch.S.N. Iyengar 4 School of Computing Science and Engineering, VIT University, Vellore-632014, Tamil Nadu, INDIA sougatakhatua@yahoo.com*1, yuer.zhang1987@gmail.com2, arijitdasmid@yahoo.com3and nchsniyengar48@gmail.com4 ------------------------------------------------- Abstract: Current e-shopping systems use the Internet as its primary medium for transactions. e-shopping has grown in popularity over the years, mainly because people find it convenient and easy to buy various items comfortably from their office or home. This paper has proposed a personalized e-shopping system, which makes use of agent technology to enhance the automation and efficiency of shopping process in Internet commerce. The agent technology is used to enhance the customer‟s needs which include availability, speedy response time, and efficiency. Agent for e-Shopping creates connectivity on an anytime-anywhereany-device-basis to provide the specific goods required by the consumers based on transaction cost optimization and scalability. The client agent connects with the controller agent which controls all the agent information. The controller agent sends the item information to the client agent and the client chooses items and puts in to the shopping cart. Finally the conclusion shows...

Words: 4773 - Pages: 20

Premium Essay

Software Testing

...Software Testing Techniques Manpreet Kaur1 and Rupinder Singh2 1 Department of CSE CGC, Gharuan Mohali, India 2 CSE CGC, Gharuan Mohali, India Abstract Software testing is important to reduce errors, maintenance and overall software costs. One of the major problems in software testing area is how to get a suitable set of test cases to test a software system. We identify a number of concepts that every software engineering student and faculty should have learned. There are now many testing techniques available for generating test cases. This set should ensure maximum effectiveness with the least possible number of test cases. The main goal of this paper is to analysed and compare the testing technique to find out the best one to find out the error from the software. Keywords: Software testing; process model; testing techniques; 1. Introduction Software testing is a process or a series of processes designed to verify computer code does what it was designed to do. According to ANSI/IEEE 1059 standard [1, 2], Testing can be defined as ―A process of analyzing a software item to detect the differences between existing and required conditions (that is defects/errors/bugs) and to evaluate the features of the software item. Another more appropriate definition is this: [3] Testing is the process of executing a program with the intent of finding errors. The concept of testing is as old as coding and is change along with time. Gelperin and Hetzel [4] proposed the concept of the testing process...

Words: 4928 - Pages: 20

Premium Essay

Agile Testing

...Traditionally, efforts to improve the quality have centered on the end the product development cycle by emphasizing the detection and correction of defects. There are two types of software testing that people usually refer to. The first one is through Waterfall Model and the second one is Agile Testing. Both of these models have their own advantages and disadvantages. By weighting the advantages and disadvantages between these two concepts, we will then be able to decide on which one that we can use as a referral to do software testing. Before we begin to decide on which concepts that we can refer to, let’s take a look at each of the concepts. Waterfall Model Waterfall model is known as a sequential model. Once the stage has completed then developers can move on to the next step. This model requires an extensive plan so that we can minimize the error of going back to the previous stage. To be able to complete the project using the Waterfall method, both sides should be able the requirements and able to present what is should look like after completing the project in the beginning. Waterfall model consist of eight stages. They are: System requirement, Software requirement, Analysis, Design, Coding, Test and Use. Figure 1.0 – Waterfall Model The real purpose of software testing is to verify whether the completed software package functions according to the expectations defined by the requirements/specifications. The objective is not to find every software bug...

Words: 3602 - Pages: 15

Premium Essay

Nhpp Bases Srgm

...NHPP Based Software Reliability Growth Models Stochastic processes are used for the description of a system’s operation over time. There are two main types of stochastic processes: continuous and discrete. Among discrete processes, counting processes in reliability engineering are widely used to describe the appearance of events in time (e.g., failures, number of perfect repairs, etc). The simplest counting process is a Poisson process. The Poisson process plays a special role to many applications in reliability engineering. As a general class of well-developed stochastic process model in reliability engineering, NHPP models have been successfully used in studying hardware reliability problems. They are especially useful to describe failure processes which possess certain trends such as reliability growth and deterioration. Therefore, an application of NHPP models to software reliability analysis is then easily implemented. The model provides the expected number of faults/failures at a given time. Schneidewind [1975] proposed an error detection model. Goel & Okumoto [1979] proposed the time dependent failure rate model. Ohba [1984] proposed the inflection S-shaped model. Musa [1975] and Musa & Okumoto [1984] proposed the basic execution time model and Log Poisson model respectively. Yamada, Ohba & Osaki [1983] proposed a model based on the concept of failure observation and the corresponding fault removal phenomenon. Goel [1985] modified his original model by introducing...

Words: 2507 - Pages: 11

Premium Essay

Istqb Advance Level Exam

...ISTQB Advanced CTAL Exam – S tudy Guide (Part 1) Q. 1: What is Configuration management? Software configuration management encompasses the disciplines and techniques of initiating, evaluating, and controlling change to software products during and after the development process. It emphasizes the importance of configuration control in managing software production. Configuration management is an integral part of the software development process across all phases of the life cycle. It functions as a controlling discipline, enabling changes to be made to existing documentation and products in such a way as not to destroy the integrity of the software. Since configuration management extends over the life of the product, and since tools, techniques, and standards exist solely aimed at its proper execution, configuration management can stand alone as a module within a graduate curriculum. > Q. 2: What are the Requirements for the Success of Configuration Management? The key requirement for success of configuration management is the commitment of all levels of management to enforcing its use throughout the project lifetime. Configuration management, like other parts of software engineering perceived as being tedious, may require some coercion for success. A further requirement is the availability of a clearly stated configuration management plan. > Q. 3: How can we say that Configuration Management is a Cost Saving Tool? By helping to maintain product integrity, configuration...

Words: 10058 - Pages: 41

Free Essay

Who Care About the Goodwill

...themes The academic research Is goodwill impairment testing relevant? Is goodwill impairment testing effective? What are the difficulties? Do we need all of these disclosures? What are some of the alternatives? We have three unanswered questions A call to action Appendix 1: The interviewees Appendix 2: References and notes Acknowledgements © 2014 KPMG IFRG Limited, a UK company, limited by guarantee. All rights reserved. Who cares about goodwill impairment? | 1 TIME TO ENGAGE On 30 January 2014, the IASB launched the public phase of its post-implementation review of business combinations accounting when it released a Request for Information.1 We believe that a key aspect of the review is the impairment-only accounting model for goodwill, which was introduced in 2004. Comments are due to the IASB by 30 May 2014, so now is the time for all stakeholders to provide their feedback on this emotive topic. The Request for Information essentially asks three questions in relation to goodwill impairment testing. • How useful have you found the information obtained from annually assessing goodwill for impairment? • Do you think that improvements are needed regarding the information provided by the impairment test? • What are the main implementation, auditing or enforcement challenges in testing goodwill for impairment? With this in mind, we interviewed a sample of stakeholders to find out what they think about goodwill impairment testing – its relevance, its effectiveness, the difficulties...

Words: 7709 - Pages: 31

Premium Essay

Statistics Course Outline

...discrete probability distributions and their characteristics To develop the concept of mathematical expectation for a discrete random variable To introduce the covariance and illustrate its application in finance To present applications of the binomial distribution in business To present applications of the Poisson distribution in business 02  Counting Techniques 03  Continued 04  Conditional Probability 05  Discrete probability distribution. 06  Mathematical Expectation of Discrete Random Variable 07  Properties of mean and variance of a discrete random Variable. 08  Binomial Distribution. 09  Poisson Distribution. 10. The Normal Distribution and Sampling Distribution  Introduction  Mathematical Models of Continuous Random Variables To...

Words: 1396 - Pages: 6

Premium Essay

Software Engineering

...presented topic. Please let me know in case of errors or missing information: contact.benjaminsommer.com [SOFTWARE ENGINEERING LECTURE NOTES] October 21, 2011 OVERVIEW SOFTWARE PROCESSES SOFTWARE PROCESS MODELS PROCESS ACTIVITIES COPING WITH CHANGE THE RATIONAL UNIFIED PROCESS AGILE SOFTWARE DEVELOPMENT AGILE METHODS PLAN-DRIVEN AND AGILE DEVELOPMENT EXTREME PROGRAMMING AGILE PROJECT MANAGEMENT SCALING AGILE METHODS REQUIREMENTS ENGINEERING FUNCTIONAL AND NON-FUNCTIONAL REQUIREMENTS THE SOFTWARE REQUIREMENTS DOCUMENT REQUIREMENTS SPECIFICATION REQUIREMENTS ENGINEERING PROCESSES REQUIREMENTS ELICITATION AND ANALYSIS REQUIREMENTS VALIDATION REQUIREMENTS MANAGEMENT SYSTEM MODELING CONTEXT MODELS INTERACTION MODELS STRUCTURAL MODELS BEHAVIORAL MODELS MODEL-DRIVEN ENGINEERING ARCHITECTURAL DESIGN ARCHITECTURAL DESIGN DECISIONS ARCHITECTURAL VIEWS ARCHITECTURAL PATTERNS APPLICATION ARCHITECTURES DESIGN AND IMPLEMENTATION OBJECT-ORIENTED DESIGN USING THE UML DESIGN PATTERNS IMPLEMENTATION ISSUES OPEN SOURCE DEVELOPMENT SOFTWARE TESTING DEVELOPMENT TESTING TEST-DRIVEN DEVELOPMENT RELEASE TESTING download.benjaminsommer.com | 1 3 5 5 7 10 13 16 16 17 17 19 20 21 21 23 24 25 26 29 30 31 32 32 33 34 35 37 38 39 39 42 44 45 47 48 50 51 52 56 57 October 21, 2011 USER TESTING SOFTWARE EVOLUTION EVOLUTION PROCESSES PROGRAM EVOLUTION DYNAMICS SOFTWARE MAINTENANCE LEGACY SYSTEM MANAGEMENT DEPENDABILITY AND SECURITY [SOFTWARE ENGINEERING LECTURE NOTES] 58 59 60 61 62 65 67 67 68 70...

Words: 24348 - Pages: 98

Premium Essay

Docs

...Cloud Databases Abstract: The cloud database as a service is a novel paradigm that can support several Internet-based applications, but its adoption requires the solution of information confidentiality problems. We propose a novel architecture for adaptive encryption of public cloud databases that offers an interesting alternative to the tradeoff between the required data confidentiality level and the flexibility of the cloud database structures at design time. We demonstrate the feasibility and performance of the proposed solution through a software prototype. Moreover, we propose an original cost model that is oriented to the evaluation of cloud database services in plain and encrypted instances and that takes into account the variability of cloud prices and tenant workloads during a medium-term period. KEYWORDS: Cloud database, confidentiality, encryption, adaptivity, cost model. LIST OF CONTENTS Page No List of Figures viii List of Tables ix 1. Introduction 1.1 Purpose 1.2 Scope 1.3 Motivation 1.3.1 Definitions 1.3.2 Abbreviations 1.3.3 Model Diagrams 1.4 Overview 2. Literature Survey 2.1 Introduction 2.2 History 2.3 Purpose 2.4 Requirements 2.5 Technology Used ...

Words: 17343 - Pages: 70

Premium Essay

Report Strength of Mydin

... Waterfall vs. Agile Methodology Contents Waterfall vs. Agile Model Comparison .........................................................................................3 Conceptual Difference.................................................................................................................3 Efficiency ....................................................................................................................................4 Suitability ....................................................................................................................................4 Waterfall Model Diagram .............................................................................................................5 Explanation of the Waterfall Model ..............................................................................................5 Phase I: Requirements................................................................................................................6 Phase II: Analysis .......................................................................................................................6 Phase III: Design.........................................................................................................................6 Phase IV: Coding ........................................................................................................................6 Phase V: Testing...............................................................

Words: 3023 - Pages: 13

Premium Essay

Gtp Sow Functional Testing-Detailed-Emea

...EMEA Global Testing Practice Statement of Work Statement of Confidentiality EDS Internal - EDS Internal information comprises most EDS business information. This information could be of a sensitivity and/or value to EDS that disclosure externally could be inappropriate or problematic. 1. INTRODUCTION 7 2. PROJECT/PROGRAMME SPONSORSHIP/MANAGEMENT 7 3. MANAGED SERVICE OVERVIEW AND SCOPE 7 3.1. EMEA GLOBAL TESTING PRACTICE MANAGED SERVICE SCOPE STATEMENT 7 3.1.1 Testing Management 7 3.1.2 TESTING TECHNIQUES 8 3.1.3 TEST LEVELS 8 3.1.4 PRODUCTION ENVIRONMENT 9 3.1.5 TESTING ENVIRONMENT 9 3.1.6 OUT OF SCOPE 9 3.2. Detailed Requirements and List of Deliverables 9 3.3. Acceptance Criteria 10 3.4. Additional Services 11 4. CHANGES TO SERVICE 11 5. EMEA GLOBAL TESTING PRACTICE TESTING MANAGED SERVICE RESPONSIBILITIES 11 6. CHANGE CONTROL 12 7. ASSUMPTIONS 12 7.1. GENERAL ASSUMPTIONS 12 7.2. PROJECT SPECIFIC ASSUMPTIONS 13 7.3. PERFORMANCE TESTING SPECIFIC ASSUMPTIONS 13 7.4. AET SPECIFIC ASSUMPTIONS 14 8. COMMUNICATION 15 9. RESOURCE PLANS 15 10. RISK ASSESSMENT 15 11. FINANCIAL INFORMATION 16 11.1. PRODUCTIVITY SAVINGS 16 11.2. TRAINING COSTS 16 11.3. SOFTWARE/HARDWARE/SERVICE/OTHER COSTS 16 12. BASELINE TESTING MANAGED SERVICE SCHEDULE 17 13. QUALITY PLAN 17 14. PROJECT HANDOVER 17 14.1. Replication, Delivery and Installation 17 15. PROBLEMS AFTER...

Words: 6145 - Pages: 25

Free Essay

Assignment of S/W Eng..

...Abhishek Mr. Amandeep sir Section: E - 3004 Roll_No: RE3004B58 Group : 2 Part – A Q1: Take a suitable example to develop a software and implement the waterfall Model technique in it to develop the software ? Ans: The waterfall model shows a process, where developers are to follow these phases in order: 1. Requirements specification (Requirements analysis) 2. Software Design 3. Integration 4. Testing (or Validation) 5. Deployment (or Installation) 6. Maintenance In a strict Waterfall model, after each phase is finished, it proceeds to the next one. Reviews may occur before moving to the next phase which allows for the possibility of changes (which may involve a formal change control process). Reviews may also be employed to ensure that the phase is indeed complete; the phase completion criteria are often referred to as a "gate" that the project must pass through to move to the next phase. Waterfall discourages revisiting and revising any prior phase once it's complete. This "inflexibility" in a pure Waterfall model has been a source of criticism by supporters of other more "flexible" models. The waterfall model proceeds from one phase to the next in a sequential manner. For example, one first completes requirements specification, which after sign-off are considered "set in stone." When requirements are completed, one proceeds to design. The software in question...

Words: 1387 - Pages: 6