Thursday, May 24, 2012
What are common mistakes and misunderstandings in a unified process?
Posted by
Sunflower
at
5/24/2012 11:55:00 PM
0
comments
Labels: Agile, Application, Developer, Developers, Methodologies, Mistakes, Misunderstandings, Programmers, Programming, Software Development process, Software Systems, TDD, Test Driven Development, Unified Process, UP
|
| Subscribe by Email |
|
Saturday, April 21, 2012
What are different aspects of Crystal Methods?
- Methodologies:
set of elements like tools and practices.
- Techniques:
include skill areas like development of use cases.
- Policies: statements dictating the must
haves of the organizations.
- Interaction
- People
- Skills
- Community
- Communications
- Talents
and so on.
- Crystal
clear
- Crystal
yellow
- Crystal
orange
- Crystal
orange web
- Crystal
red
- Crystal
maroon
- Crystal
diamond
- Crystal
sapphire
- Reflective
improvement which involves taking breaks from the regular development
routine and think and come up with ways of improving the process.
- Personal
safety involves free speaking within a group.
- Easy
access to expert users.
- Frequent
delivery is the measure of the ability of the method to frequently
deliver the iterations of the software product or project. The features to
be included in the iterations are decided up on by the developers and the
designers.
- Osmotic
or close communication involves flow of information among the teams in a
room.
- Focus involves focusing up on direction in which the project development is
taking place and individual task.
- Technical
environment inclusive of the automated tests, frequent integration and
configuration management.
Posted by
Sunflower
at
4/21/2012 08:00:00 AM
0
comments
Labels: Agile Methodology, Aspects, Color, Crystal method, Development, Environment, Focus areas, Formal methods, Methodologies, Methods, Organization, Process teams, Properties, software engineering, Techniques, Types
|
| Subscribe by Email |
|
Friday, February 24, 2012
What is meant by error guessing methodology?
Errors and bugs are perhaps the worst enemy of a software system or application and of course cause a lot of nuisance in the programming and give nightmares to the program developers and testers. Till date several methodologies have been developed to cope up with these errors and bugs but, the problem of errors is something which cannot be rooted. It can only be controlled.
Error guessing and error seeding are two such technologies about which we will be discussing in this article.
CHARACTERISTICS OF ERROR GUESSING
- Error guessing is a self explaining term.
- It can be thought of as a software testing methodology or technique that employs test cases to dig out the bugs buried in the software program.
DIFFERENCE BETWEEN ERROR GUESSING & OTHER SOFTWARE TESTING METHODOLOGIES
Then what is the difference between error guessing and other software testing methodologies? Though they may seem similar, there is a considerable difference which lies in the composition of the test cases.
DIFFERENCE #1:
- The test cases used in other types of software testing methodologies are based up on the requirements specifications of the software system or the application. - But, in error guessing, the test cases involved are based up on the past experiences of the testing as well as on the experience of the program that is to undergo testing.
DIFFERENCE #2:
- These test cases are created by the tester who has been involved in the whole programming of the software system or application.
- The tester has a past experience of the older versions of the programs so that he can easily put forth the situations and conditions that can cause the system failure or give rise to errors like null pointers, division by zero or use of parameters that are invalid.
- Error guessing methodology like exploratory testing does not follow any explicit rules or regulations.
- The tester is free to choose the basis to base the test cases on whether be it on functional or non functional requirements, experience, and situation and so on.
ASPECTS USED BY TESTERS IN USING ERROR GUESSING
Testers who have an experience of using error guessing make use of the below mentioned aspects:
1. Knowledge about the methods and techniques used in the AUT like implementation technology and designing method etc.
2. Past experience of software testing in different phases. Such experience is required during the phase of the regression testing.
3. Past experience of testing similar software system or applications and a knowledge of the factors that caused defects in them.
4. Knowledge of typical errors like those mentioned above in the article which are implemented unknowingly in the code.
5. General Thumb rules of heuristics.
ADVANTAGES OF ERROR GUESSING
- Error guessing when implemented properly can gradually increase the efficiency and effectiveness of your software testing life cycle.
- The error guessing skills of a tester gradually improve with the gradual experience of software testing.
- Error guessing is the easiest software technology that a tester can ever use.
- It is just like a guessing game, you guess where all the errors might be hidden.
- This methodology does not require any specially designed tools.
- Error guessing involves seeding out of errors.
- Error guessing methodology can be applied while carrying all other software testing techniques so as to get much better outcomes since the error guessing helps a great deal in improving the quality of the test cases.
- Error guessing is a technique that roots those defects that appear to be an intuition in the AUT.
Posted by
Sunflower
at
2/24/2012 02:41:00 PM
0
comments
Labels: Application, Aspects, Bugs, Defects, Differences, Error guessing, Errors, Methodologies, Programming, Requirements, Software Systems, Software testing, Technology, Test cases, Tester
|
| Subscribe by Email |
|
Tuesday, February 21, 2012
Explain the differences between SDLC and STLC?
SDLC (software development life cycle) and STLC (software testing life cycle) are two one of the most important cycles in the development of any software system or application. There is much confusion about these two topics and often characteristics of one are mistaken for the other. This article seeks to make the differences between the two confusing concepts clear.
DIFFERENCES BETWEEN SDLC AND STLC
DIFFERENCE #1:
- The systems development life cycle is one of the major concepts in the field of information systems, software and systems engineering, that one needs to understand really well.
- It can be thought of as a process following which the creation or alteration of the information systems, methodologies and other methods takes place.
- It is a cycle that is followed to keep the development of a software system or application on track.
- On the other hand, software testing life cycle is an integral part of the software development life cycle and takes care of the software testing activities.
DIFFERENCE #2:
- All these development and testing processes are not just one single activity.
- They comprise of many constituent activities that are employed for multiple tasks.
- The software development life cycle is comprised many types of different methodologies for software development.
- Usually these software development methodologies together constitute the framework for the software system or application through which the entire development process can be planned and controlled.
- In contrast to the software development life cycle, software testing life cycle is comprised of the activities for testing and certifying the final software product.
DIFFERENCE #3:
- The software development life cycle constitutes the following processes:
(a) Analysis
(b) Design
(c) Implementation
(d) Testing and
(e) Evaluation
- The software testing life cycle constitutes the following processes:
(a) Requirement analysis
(b) Test analysis
(c) Test case development
(d) Environment set up
(e) Test execution
(f) Test cycle closure
Each of the above mentioned processes under software testing life cycle is provided with an entry criteria as well as exit criteria.
DIFFERENCE #4:
- The control of the software development life cycle is taken by the system analyst and is employed for the creation of an information system.
- This cycle also involves other activities like training, validation and stake holder ownership.
- The SDLC takes care of the quality of the software system under development and ensures that it is always maintained at a high level and also that all the user expectations are satisfied.
- It also makes sure that the project is completed with a stipulated period of time as well as budget.
- Similarly the STLC takes care of the successful completion of the software testing.
DIFFERENCE #5:
- The phase of requirements gathering in software development life cycle can be compared with the requirement analysis in the software testing life cycle.
DIFFERENCE #6:
Various methodologies have been designed to implement software development life cycle like:
(a) Spiral
(b) Water fall
(c) Agile software development
(d) Synchronize and stabilize
(e) Rapid prototyping
(f) Incremental etc.
The software testing life cycle is implemented only in two ways i.e., either manually or through automation.
DIFFERENCE #7:
- The software development life cycle is managed by the system and on the other hand, the software testing life cycle is managed by the project manager.
- He/ she is the one who decides the time period for the completion of testing and allots the budget.
- The following aspects are also identified:
(a) Scope of testing
(b) Approach to be followed
(c) Associated risks
(d) Resources
(e) Time schedule
These were some of the basic differences between the SDLC and STLC. Though having many different aspects, these two cycles have many things in common.
Posted by
Sunflower
at
2/21/2012 09:51:00 PM
0
comments
Labels: Analysis, Application, Concepts, Defects, Design, Differences, Errors, Methodologies, Requirements, SDLC, Software Development Life Cycle, Software Systems, Software testing life cycle, STLC
|
| Subscribe by Email |
|
Monday, February 20, 2012
What are Application Testing Methodologies?
First of all, lets be clear with what is application testing actually.
- It is simply the testing of application software. But, it is not so easy to carry out as it sounds like.
- To develop good application software, great efforts and skills are required both of development and testing.
- Testing is needed to check the quality status of application software.
- This is indeed very important for quality assurance and to see that if the application software is meeting the expectations of the consumers or not.
WHY IS TESTING METHODOLOGY IMPORTANT?
- It is obvious that all the aspects of application software cannot be discovered by following just one testing methodology.
- One has to employ many testing methodologies in order to discover most of the hidden bugs and errors.
- Many methodologies have been developed for testing application software.
- Discovery of flaws is the primary aim of any software testing methodology.
- Criticism is yet another aim.
APPLICATION TESTING METHODOLOGIES
1.BOX TESTING TECHNIQUES
- White Box Testing
It includes techniques that are used to test the program or algorithmic structures and working of that particular software application in opposition to its functionalitY or the results of its black box tests.
a) API testing
b) Fault injection
c) Code coverage: Code coverage can be defined as a measure to measure the extent to which the source code of a software system has been tested.
d) Mutation testing
e) Static testing
- Black Box Testing
a) Equivalence partitioning
b) Boundary value analysis
c) Pair wise testing
d) Fuzz testing
e) Exploratory testing
f) Model based testing
g) Specification based testing
- Grey Box Testing
As the grey colour is made from the combination black and white colours, so does grey box testing is made from a combination of both white box testing as well as black box testing.
- Visual Testing
As the name suggests, non destructive testing techniques do not involve vigorous checking of the software structure.
- Unit Testing
- Integration Testing
The units or modules are combined and tested.
- System Testing
- System Integration Testing
- Regression Testing
It basically discovers and unhide the hidden and new errors and flaws.
- Acceptance Testing
There should be some kind of testing that looks in to the contract and verifies whether or not all the requirements have been met. Acceptance testing serves the purpose right. Acceptance is a composition of 3 kinds of tests namely Physical tests, Chemical tests and Performance tests.
- Alpha Testing
The purpose of checking the application software before the release is served by alpha testing on the basis of:
a) Service level agreement or SLA as it is abbreviated.
b)Requirements
c)Specifications
d)Defect rate efficiency (known as DRE in short form).
- Beta Testing
Beta testing is carried out after the successful completion of the alpha testing.
- Performance Testing
- Usability Testing
Usability testing can be defined as a technique which is used in interaction design. This designing is centred around the user and accounts for the evaluation of the software system, application or product by testing it out on the software product users.
- Security Testing
Security testing as its name suggests can be defined as a process to determine that whether or not a software or information system or application is capable of protecting data and keeping it secure.
- Internationalization
Internationalization can be defined as a process of coding and designing a product. This coding is done in such a way that it can perform well almost on any platform after modification for use in different regional standards and languages.
- Localization
Posted by
Sunflower
at
2/20/2012 04:04:00 PM
0
comments
Labels: Application, Application Testing, Black box testing, Defects, Development, Efforts, Errors, Flaws, Methodologies, Quality, Regression Testing, Skills, Tests, Unit Testing, White box testing
|
| Subscribe by Email |
|