Friday, September 27, 2013
What are the parameters of QoS - Quality of Service?
Posted by
Sunflower
at
9/27/2013 01:48:00 PM
0
comments
Labels: Acceptance, Application, Client, Data, Flexibility, Network, Networking, Operation, Operators, Parameters, Priority, Quality, Quality of Service, Reliability, Services, Specifications, Time, traffic, transmission
![]() | Subscribe by Email |
|
Tuesday, March 12, 2013
What are autonomic systems? What is the basic concept behind autonomic system?
About Autonomic Computing
About Autonomic Systems
- 2 main control loops namely the global and the
local.
- Sensors (required self – monitoring)
- Effectors (required for self-adjustment)
- Knowledge
- Adapter or planner
- Consumes more time
- Expensive
- Prone to errors
- Self–configuration: Responsible for the automatic configuration of the
network components.
- Self–healing: Responsible for the automatic detection and correction of the
errors.
- Self–optimization: Monitors and controls the resources automatically.
- Self–protection: Identifies the attacks and provides protection against them.
- Automatic
- Adaptive
- aware
Posted by
Sunflower
at
3/12/2013 02:00:00 PM
0
comments
Labels: Autonomic Computing, Autonomic Systems, Changes, Characteristics, Complexity, Components, Computing, Development, Distributed, Features, Framework, Network, Operators, System, Users
![]() | Subscribe by Email |
|
Friday, January 6, 2012
What are different mutation testing methods?
Mutation testing is another methodology of software testing. It can be defined as the software testing methodology which involves modification of source code or programs or the byte code of the program in a way that is particularly small but significant.
Mutation is known by two other names:
- program mutation
- mutation analysis.
SOME IMPORTANT FACTS
- The mutated code is tested using various cases and the test suite that doesn’t detects and rejects the code that has been mutated is usually considered to be defective in nature.
- The required mutations are carried out on the basis of some well defined operators known as mutation operators.
- These mutation operators are well known to mimic typical programming bugs or errors and some times they also force the creation of tests which are significantly valuable tests.
- Best example of such test is given by the test which derives each expression to the value zero.
- The purpose of the mutation testing is basically to allow the tester or software developer to develop effective test cases so that the weaknesses or the vulnerabilities of the software system or application can be located or detected in the test data that is being used as the input for the program or in the sections of the program code.
- These sections are chosen as such that they are rarely used and accessed during the execution of the software system or the application.
- The mutation testing is carried out to ensure or verify that the implemented software program or application is correct or not.
Still the creation of the mutation testing poses some doubts.
- The doubt is whether the mutation tests are correct or not?
- Whether they sufficiently cover all the specifications and the requirements that have lead to the origination of the implementation of the test cases?
Mutation testing represents a technological problem of “who will guard the guards?”
- In the 19s, the mutation testing was pioneered to detect or locate the weaknesses and the potential vulnerabilities of the test suites.
- A theory was put forward regarding the behavior of the mutation testing.
- It stated that if a mutation was done without affecting the behavior of the program or output, then it meant that either the code that had been mutated did not execute or the employed testing suite wasn’t able to detect the injected mutation.
- In order to make one mutation work, one has to introduce many mutations all over the program.
- This in turn leads to the compilation of a large number of copies of the program code.
- The increase in the use of unit testing frame works and object oriented programming languages has led to the increase in the creation new mutation testing tools for other programming languages.
METHODS FOR MUTATION TESTING
- Mutation testing is carried out by selecting few mutation operators and then applying them to the source code using one at a time for each correct piece of the program code.
- The resultant of application of a mutation operator is known as mutant.
- If the mutant is detected during the testing, then the mutant is said to be killed.
- Strong mutation testing or strong mutation coverage ensures that the test suite is effective in detecting the mutants.
- Weak mutation coverage or weak mutation testing can be related to code coverage methods.
- It takes less number of calculations to ensure the effectiveness of the weak mutation testing.
- In some cases equivalent mutants are also used.
- In those cases it becomes impossible for a test suite to kill such a mutant.
- Equivalent mutation proves to be the greatest obstacle in the path of practical usage of the mutants.
- Equivalent mutants require more efforts for testing.
- A variety of mutation operators have been discovered by the researchers.
Posted by
Sunflower
at
1/06/2012 01:38:00 PM
0
comments
Labels: Application, Code, Defects, Errors, Methods, Modify, Mutant, Mutated, Mutation testing, Operators, program, Purpose, Software testing, Source, Test cases, Tests, Users
![]() | Subscribe by Email |
|
Tuesday, September 6, 2011
What is Assignment and Logical Comparison in C...
An expression as we all know is composed of one or more operations. When the expression is terminated by a semi colon, it becomes a statement which is the small executable unit in any program. The assignment statements are used to assign a value to a variable. The assigned value can be a constant variable or an expression. An assignment statement can be written in general form as:
A=bcd;
Where A is a variable to whom we are assigning a value and bcd is the assigned value. The “=” sign is called assignment operator. Assignments can be chained together. The assigning operator “=” assigns the value to the left hand operand and returns the value of the assignment. Assignment statements are very much needed for variable initialization since variables are initialized using assignment statements. There are 2 ways to do this:
- Un-initialized variable
- Initialized variable
An un-initialized variable has to be initialized in separate statements whereas an initialized variable combines declaration and assignment in to one statement.
Examples are:
Int a;
a=3; ------------------------uninitialized variable
int a= 3; -------------------- initialized variable
Assignment also follows when you use dynamic initialization. Sometimes variables of different types are mixed with each other. It’s a very common and observed phenomenon. In such cases a type conversion takes place. Here also it follows from the principal of assignment statement that “the value of the right side of the expression or of the assignment is converted to the type of the variable on left side i.e., target variable. Both the sides of assignment should be compatible with each other for type conversion. When conversion takes place from smaller data type to a larger data type no data is lost. Precedence of operators while assigning values with an expression should always be kept in mind.
Some programs need the power of decision making or comparison. This is granted through logical expressions which are nothing but the statements resulting into a 0 (true) or 1 (false) value. These are a combination of constants, variables and logical and relational operators. Be careful that two or more variables and operators should not occur in continuation. A logical expression may contain just one signed or unsigned variable or a constant or it may have two or more also joined by varied relational and logical operators. Following are some valid logical operators: the logical OR operator (||), the logical AND operator (&&) and the logical NOT (!) operator. The OR operator combines 2 expressions as its operands. If either of its operand evaluates to true, the OR operator also evaluates to true. This operator is basically used for testing evaluating expressions. The AND operator combines 2 expressions into one and the operator evaluates to one if and only if both the operands evaluate to 1. The NOT operator works on a single operand since it is a unary operator. It is used to negate or reverse the truth value of the operand. It has a higher precedence than of the relational and logical operators. Therefore, this should be enclosed within parentheses. This operator is useful as a test for zero. OR and AND operators have lower precedence than relational operators. Relational operators are used to define relationships between variables. C provides 6 basic relational operators : < (less than), > (greater than), <= (less than or equal to), >= (greater than or equal to), == (equal to), and != (not equal to). Do not confuse the = and the == operators. “=” is assignment operator whereas “==” is relational equality operator.
Posted by
Sunflower
at
9/06/2011 11:40:00 AM
0
comments
Labels: Assignment, C, C Language, Comparisons, Constants, Conversions, Declaration, Executable, Expressions, Initialization, Logical, Logical comparison, Operations, Operators, Variables
![]() | Subscribe by Email |
|
Friday, September 3, 2010
Mutation Testing : how it is performed, benefits, operators and tools.
Mutation Testing is a powerful method for finding errors in software programs. Mutation testing involves deliberately altering a program’s code, then re-running a suite of valid unit tests against the mutated program. A good unit test will detect the change in the program and fail accordingly. Mutation testing is expensive to run, especially on very large applications. Mutation Testing is complicated and time-consuming to perform without an automated tool.
How Mutation testing is performed?
- Create a mutant software which is different from the original software by one mutation.
- Each of the mutant software has one fault.
- Test cases are applied to the original software and the mutant software.
- Results are evaluated. The test case that is applied is wrong if the mutant software as well as the original software produces the same result. The test case is right if the test case detects fault in the software.
Benefits of Mutation Testing
- Introduces a new level of error detection.
- Uncover errors in code that were previously thought impossible to detect automatically.
- The customer will receive a more reliable and bug free software.
On what factors Mutation testing depends ?
- It depends heavily on the types of faults that the mutation operators are designed to represent.
- Mutation operators means certain aspects of the programming techniques, the slightest change in which may cause the program to function incorrectly.
Mutation Operators and Tools
Some mutation operators for languages like Java, C++ etc. are :
- Changing the access modifiers, like public to private etc.
- Static modifier change.
- Argument order change.
- Super keyword deletion.
- Essay writing services
Tools like Jester, Pester, Nester and Insure++ are some of the tools that are available for mutation testing.
Posted by
Sunflower
at
9/03/2010 07:20:00 PM
0
comments
Labels: Advantages, Benefits, Error Detection, Errors, Factors, Mutant, Mutation testing, Mutators, Operators, Performance, Software, Testing tools
![]() | Subscribe by Email |
|
Sunday, July 18, 2010
Test Script Languages (TSL)
Test Script Language(TSL) is a scripting language with syntax similar to C language. TSL is the script language used by WinRunner for recording and executing scripts.
Features Of TSL :
- The TSL language is very compact containing only a small number of operators and keywords.
- TSL is a script language and as such, does not have many of the complex syntax
structures you may find in programming languages.
- On the other hand, TSL as a script language has considerably less features and capabilities than a programming language.
- Comments : Allows users to enter human readable information in the test script that will be ignored by the interpreter.
- Naming Rules : Rules for identifiers within TSL.
- Data Types : The different types of data values that are supported by the language.
- Data Storage : Constructs that can be used to store information.
- Operations : Different type of computational operations.
- Branching : Avoids executing certain portions of the code unless a condition is met.
- Loops : Repeats execution of a certain section of code.
- Functions : Group of statements used to perform some useful functionality.
There are four categories of TSL functions. Each category of functions is for performing specific tasks. These categories are as follows:
- Analog Functions
These functions are used when you record in Analog mode, a mode in which the exact coordinates of the GUI map are required. When you record in Analog mode, these functions are used to depict mouse clicks, keyboard input, and the exact coordinates traveled by the mouse. The various analog functions available are Bitmap Checkpoint Functions, Input Device Functions, Synchronization functions, Table Functions, Text Checkpoint Functions.
- Context Sensitive Functions
These functions are used where the exact coordinates are not required. In Context Sensitive mode, each time you record an operation on the application under test (AUT), a TSL statement is generated in the test script which describes the object selected and the action performed.
- Customization Functions
These functions allow the user to improve the testing tool by adding functions to the Function Generator. The various customization functions are custom record functions,
custom user interface functions, function generator functions and GUI checkpoint functions. Different context-sensitive functions are Active Bar Functions, ActiveX/Visual Basic Functions, Bitmap Checkpoint Functions, Button Object Functions
Calendar Functions,Database Functions, Data – driven test Functions,GUI related Functions etc.
- Standard Functions
These functions include all the basic elements of programming language like control flow statements, mathematical functions, string related functions etc. The various standard functions are arithmetic functions, array functions, call statements, compiled module functions, I/O functions, load testing functions, operating system functions, etc.
Posted by
Sunflower
at
7/18/2010 06:32:00 PM
0
comments
Labels: Automated Testing, Features, Functions, Keywords, Languages, Manual Testing, Operators, Test Script Language, Testing tools, Tools, TSL, WinRunner
![]() | Subscribe by Email |
|
Monday, August 17, 2009
GIS Data Operations and Problems in GIS
GIS applications are conducted through the use of special operators such as the following :
- Interpolation : This process derives elevation data for points at which no samples have been taken. It includes computation at single points, computation for a rectangular grid or along a contour, and so forth.
- Interpretation : Digital terrain modeling involves the interpretation of operations on terrain data such as editing, smoothing, reducing details and enhancing. Additional operations involve patching or zipping the borders of the triangle and merging, which implies combining overlapping models and resolving conflicts among attribute data.
- Proximity analysis : Several classes of proximity analysis include computations of "zones of interest" around objects.
- Raster Image processing : This process can be divided into two categories (1) map algebra which is used to integrate geographic features on different map layers to produce new maps algebraically; and (2) digital image analysis, which deals with analysis of a digital image for features such as edge detection and object detection.
- Analysis of networks : Networks occur in GIS in many contexts that must be analyzed and may be subjected to segmentations, overlays, and so on.
PROBLEMS OF GIS :
GIS is an expanding application area of databases. As a result, number of problems related to GIS applications have been generated :
- New architectures : GIS applications will need a new client-server architecture that will benefit from existing advances in RDBMS and ODBMS technology.
- Versioning and object life-cycle approach : Because of constantly evolving geographical features, GIS must maintain elaborate cartographic and terrain data - a management problem that might be eased by incremental updating coupled with update authorization schemes for different levels of users.
- Data Standards : Formalization of data transfer standards is crucial for the success of GIS.
- Matching applications and data structures.
- Lack of semantics in data structures.
Posted by
Sunflower
at
8/17/2009 03:16:00 PM
0
comments
Labels: Geographic Information System, GIS, Operators, Problems
![]() | Subscribe by Email |
|