Subscribe by Email


Showing posts with label Aim. Show all posts
Showing posts with label Aim. Show all posts

Tuesday, June 19, 2012

What are different characteristics of build verification test?


Build verification test is often abbreviated as BVT and can be defined as a set of tests that are carried out on all the builds that are newly built in order to verify if those builds are testable or not before they are transferred to the testing team for their further testing. 
Generally, the test cases used in build verification test are considered to be the core functionality test cases which are used to keep the stability of the software systems or applications in check and regulate their testing thoroughly. 
The whole process of build verification test takes a whole lot of efforts and time if carried out manually and therefore the whole process is usually automated. If a build fails the build verification, then the same build is again returned to the developer to fix the faults. 

There are other names also by which the build verification test is known as mentioned below:
  1. Smoke testing
  2. Build acceptance testing or BAT
In a typical build verification test, there are two aspects that are exclusively tested and are mentioned below:
  1. Build acceptance
  2. Build validation

Few basics of Build Verification Tests


  1. Build verification tests are a sub set of tests that are used for the verification of the main functionalities.
  2. Some build verification tests are created on a daily basis and some builds are daily tested and if those builds fail the build verification test, they are rejected and returned back to their developer for making the fixes and when the fixes have been done, a new build is released and is gain subjected to the build verification test.
  3. The build verification test has an advantage that it saves the precious efforts of the testing team that are required for setting up a test and testing a build whenever there is a break in the major functionality of the build.
  4. The test cases of the build verification test should be designed very carefully so that they provide the maximum possible coverage to the basic functionality of the build.
  5.  A typical build verification test is run for 30 minutes maximum and not then this limit.
  6. The build verification testing can also be considered as a type of regression testing that is done on each and every build that is new.

Aim of Build Verification Test


- The primary aim of the build verification test is to keep a check on the integrity of the whole software system or application in terms of its build or we can say modules.
- When several development teams are working together on the same project, it is important that the modules that they are developing individually have got good ability for integrating with each other since this is very important. 
Till now so many cases have been recorded in which the whole project failed miserably due to a lack of integration among the modules. There are some worst cases also in which the whole project gets scraped just because of the failure in the module integration. 
- The build release has got a main task i.e., file check in i.e., including all the modified as well as new project files associated with the corresponding builds. 
- Earlier checking the health of the building initially was considered to be the main task of the build verification test. 
- This is called as “initial build health check” and it includes:

  1. Whether or not all the files have been included in the release or not?
  2. Whether all the files are in their proper format or not?
  3. Whether all the file versions and languages have been included or not?
  4. Whether the appropriate flags have been associated with the file or not?


Monday, February 6, 2012

What are different aspects of Software Engineering Institute (SEI)?

ABOUT SEI
- Software engineering institute is often abbreviated and called as SEI.
- The full name of the institute is “The Carnegie Mellon Software Engineering Institute”.
- SEI was established in the year of 1984 and has served the nation since than.
- The institute is funded by the federal government.
- SEI is a part of Carnegie Mellon University.
- The institute also serves as source of information and technologies for other organization apart from inspiring them.
- Apart from US, SEI has branches in Virginia and Germany.
- This engineering institute works in collaboration with the government organizations and defense to make effective software driven systems and improve the existing ones.
- The institute helps organizations as such to improve their software engineering standards within their project budget.
- SEI is involved with the research work for exploring effective solutions for the problems that are experienced in software engineering.
- Another purpose is the identification and coding of the solutions that are discovered.
- It struggles to a build a world of effective software intense systems and technologies.

AIM OF SEI
- SEI aims to continually improve the existing software engineering disciplines and technologies.
- It aims to achieve effective softwares within budget and of course time.
- SEI achieves all this by creating a vast community of software engineers and other professionals in the field.
- It is done with their help creating practical technologies that are feasible enough to be implemented to solve the real world problems.
- SEI seeks to improve the good effects of the software on the world.
- SEI considers excellence, impact and integrity as its guiding values.
- SEI conducts various programs in the field of:

System design
System security
Software development
Acquisition
Process management


DEFINED INITIATIVES OF SEI
SEI has some defined initiatives which are meant for improving the engineering capabilities of the software engineering society:

1. Engineering practices:
- These practices or programs are to continually improve the software engineering capabilities for predicting, controlling and analyzing all the properties of a software system.
- Tools like SEI frame work SPLP (software product line practice), SEI SMART (service migration and reuse technique) and SEI ATAM (architecture tradeoff analysis method) are used.

2. Acquisition practices:
- These practices aim to improve the acquisition practices of the organizations.

3. Management practices:
- On top of all management practices are to manage all other practices effectively.
- It is needed to manage the development process of the software systems to achieve success.
- SEI has its own capability maturity model integration (CMMI) approach which is comprised of training courses, models and appraisal methods.
- The CMMI has improved the organization’s performance incredibly.
- Another management model that the institute uses is RMM or resiliency management model.

4. SQUARE or security quality requirements engineering:
- This method has been developed to generate security requirements in order of some priority.
- Using SQUARE method security is incorporated in to the software system at early stages.
- It is particularly used for systems based on information technology.

5. Security:
- SEI is also the origination of the CERT coordination center which is well known for its computer security programs.
- The main aim of the CERT is to resist the attacks on the computer networks by means of effective measures like appropriate system management practices.
- It is implemented to curb the damage and ensure that the service link is not damaged.

6. Conferences:
- The institute organizes workshops, meetings and conferences from time to time. - Such events are to cover topics like COTS based systems (commercial off the shelf), acquisition practices, research on software processes, CMMI, network security and so on.

7. Membership program:
- This program seeks to help other organizations to join the network.


What are different aspects of Institute of Electrical and Electronics Engineers (IEEE)?

ABOUT IEEE
- The institute of electrical and electronics engineers is often abbreviated and called as IEEE.
- The institute has its head quarters in the city of New York.
- It is a non profit organization and is comprised of professionals from the fields of electrical and electronics engineering.
- The main aim of the association is to continually make excellent technological advancements in the field of electrical and electronics engineering.
- IEEE currently has around 40, 00, 00 members world wide and across 160 plus countries.
- Around 45 percent of the member population is from countries other than United States.
- IEEE was started as a non profit association in the New York City in the year of 1963.
- It was formed as a resultant the merging of 2 great institutes of that time namely the American Institute of electrical engineers (AIEE) and the institute of radio engineers (IRE).
- AIEE and IRE were formed in 1884 and 1912 respectively and in 1963 they merged together to give rise a new association i.e., institute of electrical and electronics engineers.

IRE AND AIEE
- The IRE was mostly concerned with the works regarding radio engineering.
- It was composed several small associations dealing with their own subjects like wireless technology and telegraph engineering etc.
- On the other hand, the AIEE was involved with the technology of wire communications like telephony and telegraphy, power systems, light systems and so on.
- The field of electronics engineering saw a huge rise in 1930s.
- At that time it was obvious for an electronics engineer to become a member of IRE.
- It happened so because with the advent of technological advancements it was getting difficult to keep the technology of IRE and AIEE from mixing with each other.
- The competition between the 2 organizations continued till the end of World War II.
Soon after that the 2 separate organizations were consolidated and a new association IEEE took birth.

FORMATION OF IEEE
- The formation of the IEEE was officially declared on the date of 1st January, 1963.
- Following were some prominent and influential presidents of IEEE:


Elihu Thomson (1890, AIEE)
Alexander Graham Bell (1892, AIEE)
Charles Proteus Steinmetz (1902, AIEE)
Lee De Forest (1930, IRE)
Frederick E. Terman (1941, IRE)
William R. Hewlett (1954, IRE)
Ernst Weber (1959, IRE; 1963, IEEE)
Ivan Getting (1978, IEEE)


AIM OF IEEE
- The main aim of the IEEE is to make theoretical and practical advancements which are educational and scientific and in the field of electronics, electrical, computer engineering, communications, related sciences and arts, and the other allied branches of engineering.

- IEEE also organizes conferences and publishes scientific journals on the related matters.

- IEEE is also responsible for organizing standards in the industrial area like:

bio medical technology
electric power
energy
information assurance
information technology
consumer electronics
aerospace
telecommunications and
nanotechnology


DEVELOPMENT OF IEEE
- Till date IEEE has developed over 900 technical standards.
- Therefore, it can be concluded it is also an organization for standards development.
- It conducts various programs in the institutes of higher learning.
- The merging of the two institutes can be seen in the logo of IEEE.
- It consists of a diamond shape which resembles the kite of Benjamin Franklin.
- In the kite there is an illustration of the right hand thumb rule.
- IEEE is a dual nature institute and has following 2 parts:
1.Technical focus: it refers to the computer society of IEEE.
2.Geography: it refers to the Philadelphia and South Africa section.

Apart from these there is one more unit that is managed by IEEE namely organizational unit IEEE- USA. The purpose of this unit is to implement the strategies and policies.


Tuesday, January 31, 2012

What are different aspects of International Organization for Standardization (ISO)?

ISO is the short form of International Organization for Standardization. The international organization for standardization is well known for the development and publication of the standards pertaining to the international standard.

- The organizations itself constitutes many national networks from across the world.
- It is reported to have 163 countries in its network with one representative from each country.
- The office of the central secretariat of the organization is located in the city of Geneva in Switzerland.
- The purpose of the secretariat is to regulate the coordination in the system.
- It is a private organization and works with both public and private sector organizations. It is a non governmental organization.
- Most of its member organizations are either government organizations of their respective countries or are funded by the government.
- Other member organizations are private and are run in cooperation with the industry associates.
- We can say that ISO lays down a consensus that provides solutions which serves needs of both the business and society.
- The short form “ISO” was taken from Greek word “isos” which means “equal”.

Standards make a good impact on our life and they raise standards of our living too.Standards are very much needed to ensure characteristics like:


- environmental compatibility
- safety
- quality
- reliability
- economical cost
- interchangeability and
- efficiency


We never tend to notice the standard till the services and products are up to our expectations. We notice the importance of standards only when the services are not of the expected level. The products and services are said to work well and efficiently when they meet the standards set for them.

The international organization of standards is responsible for maintaining such standards all over the world.

International organization of the standards serves the following purposes:
1.It makes the manufacturing and development of services and products efficient, better than the previous and safe.
2.It aims at continually improving the marketing standards.
3.It takes are of the supply of services and products to the consumers.
4.It aims at developing a fair trading strategy between different nations of the world.
5.It lays down a basis for products and services for safety and health and environmental legislation.
6.It is responsible for carrying out the conformity assessment.
7.It shares new technological methodologies and management practices with its member organizations to lead innovation ahead.
8.It acts as a safeguard for the consumers of the services and products.
9.It provides solutions for many problems of standardization.

SOME MORE FACTS
- ISO till now has developed and maintained around 18,500 standards on an international level.
- Apart from these 18,500 standards, every year some 1000 new standards are being developed and published.
- The information about all these standards is available on the official website international organization of standards.
- The information center of ISO is operated by ISO itself in coordination with the international electro- technical commission (IEC).
- The ISO/ IEC information center has been developed to provide information regarding matters of standardization to its members and other stake holders.
- All the policies and strategies of the international organization of standards are jointly endorsed by the major governing bodies of ISO itself.
- The policies and strategies that have been serve as a guideline for all the members of the international organization of standards and its secretariat.

The 163 members of the ISO network are divided in to 3 categories which are:

- Member bodies
- Subscriber members
- Correspondent members


Saturday, January 28, 2012

What are different aspects of Game Testing?

Today’s world is fantasized with games. Children and youth both are addicted to games. With the cutting edge technology, gaming technology has reached new heights. Now games have become so exciting with their real world technologies. With the growing demand for games, there always a tough competition between the games developing companies. They struggle with technology to deliver the best quality games. So like software programs and applications, games also have to be tested for quality and performance.

Therefore, game testing is considered to be an important part of game development.

OBJECTIVE OF GAME TESTING
1. Game testing can thought of as a kind of software testing which aims at testing the quality of the games.
2. The main objective of game testing is to find all the errors and bugs in the gaming software and preparing their documentation.
3. Games require very high technology and thus call for the need of analytic competence.
4. It is developed using computer expertise and endurance.
5. There are some critical evaluation skills on which it is based.

WHY GAME TESTING BECAME NECESSARY?

1. In the era of early video games, all the development and testing process was carried out by the developer of the game only since the games were small and primitive technology was used.
2. But, today the games are becoming very lengthy and complex due to the advent of high technologies.
3. So, there is a need for qualitative and quantitative assessment of the games which can be achieved by game testing.
4. Today’s game companies have separate expert game testers.
5. The main aim of game testers is to find note any problems that they discover in the documentations and reports.
6. They should have the skills to finish the games at the most difficult level. Game testing is carried out on the program before releasing its alpha version.

HOW GAME TESTING IS PERFORMED?
A critical component of a game is quality even though there are no standard methodologies to judge the video quality.

1. Different testers and developers have their own methodologies.
2. There is a separate quality assurance staff in game companies to judge the quality of the game.
3. Starting is commenced as soon as the first code of the game is written and it continues till the whole program is completed.
4. The progress of the game is monitored by the QA staff.
5. When the whole program is completed, a test plan is written and test cases are prepared and the testing is carried out accordingly.
6. This is done before alpha stage.
7. As the beta stage approaches, one of the aspects of the game is daily testing according to the plan.
8. List of the features is prepared which are to be included and which are to be excluded.
9. Beta stage testing includes contribution from volunteer testers.
10.The game is played and tested.
11.The discovered glitches are noted down.
12.The game play should be creative since then only most of the bugs will be discovered.
13.There is a time period before the deadline which is termed as crunch time.
14.In this period the features that were added later are tested.
15.The bugs discovered are ranked according to the severity they can cause:

- Critical bugs/ A bugs: that can cause the game to crash.
- Essential problems/ B bugs: bugs that require attention even though the game runs well.
- Obscure problems/ C bugs: these bugs are small but require to be corrected.


The following people are involved in testing of a game:
- Game producer
The person sets the deadlines for testing based upon quality assurance and marketing.
- Lead tester
The person manages list of bugs and most responsible for the quality of game.
- Testers
The person checks the working of the game.
- Software development engineer in test
The person builds automated frame works and test cases.


Friday, January 13, 2012

What are different guidelines for smoke test?

In the field of software testing, smoke testing is defined as a preliminary test for the further testing of the software program or the application.

- The smoke is basically intended to reveal the simple failures but big enough to get prospective and deserving software rejected for release.

- The “smoke” in the term smoke testing is taken to be metaphorical.

- Typically in a smoke testing, a sub set of the test cases (includes all the test cases that have been selected to be performed on the software system or application) are selected and run on the software system or application.

- All the selected test cases cover all the most important functionalities of the components of the software system or application.

- This is done in order to ascertain that whether the most crucial functions of a software system or application are working properly or not?

To make it easy to understand let’s say that the smoke testing involves enquiring about the following questions:

- Whether the program runs or not?
- Whether it opens a window or not?
- Whether clicking on the main button triggers any action or not?

And so on!

- The main aim is to determine the status of the software system or application i.e., whether or not the software system or application is in such a bad or broken state that it requires further testing.

According to the book “lessons learned in software testing” the " smoke testing covers all the features of the software product in a broad manner and also in limited time".

- It also states that if the key features of the software system or application are not working or if the major bugs have not been fixed, then the software developers and testers won’t have to waste their time further by installing the application or testing it.

- A smoke test that is being performed on a particular build is commonly known as a build verification test.

- Performing a daily smoke and build test is now being considered as one of the best practices in the industry of software testing.

- These days the testers now prefer to perform smoke testing before accepting a build for further testing of the software system or application.

- The software giant Microsoft once claimed after the code reviews that the smoke testing can be effectively stated as the most cost effective method for identifying the major bugs and fixing them in software program.

- In the case of Microsoft, a smoke test is usually seen as a process of validating the changes made to the code before they are set in to the source control.

- Smoke testing can be performed either manually or it can be made automated by using an automated tool.

- When an automated tool is used the initiation of the test cases takes place automatically by the same process that is responsible for generation of the build itself.

Smoke tests are categorized in to two major categories namely:
- Functional tests
- Unit tests

The functional tests are responsible for exercising the complete software system or application with various forms of inputs whereas the unit tests are responsible for exercising the individual functions, object methods and sub routines.

The functional tests as well as unit tests behave as a third party products that do not form a part of the whole compiler suite.

Functional tests are usually a scripted series of program inputs whereas unit tests are separate functions embedded within the code or the driver layer itself that links to the source code without making an alteration to the code that is under test.


Tuesday, December 6, 2011

What are different characteristics of destructive testing?

Nothing checks the robustness of a software system or application better than destructive testing.
- Destructive testing is basically to determine the robustness of a software system or application.
- In order to determine the robustness of a software system or application, it is subjected to very harsh tests and attempts are made to make the program crash or hang.
- The aim of the destructive testing is to cause the failure of the program.
- The destructive testing has a typical process procedure. The process has the following aspects:

Waterfall development model or CMMI traditional model

- It is always been a common practice of performing software testing on software system by an independent group of software testers after the functionalities of the software system have been fully developed. D
- Destructive testing is carried out before it is delivered to the client or the customer.
- In this kind of practice, the testing stage is also used as a project buffer in order to compensate for project delays.
- But, this results in compromising with the time being consumed for testing.
- In the same model, there is another testing in which the software testing is started simultaneously with the start of the project and it is continued as a regular process until the project is finished.

Extreme development model or Agile model

- The extreme development model and the agile software development model follow the test driven software development model.
- Following this procedure, unit tests are carried out first by the software developers or engineers.
- These unit tests fail initially and this is expected also.
- As the code is written and subjected to these tests, more and more units of the software system pass those unit tests successfully.
- The test cases being used in the testing are updated regularly for the new faults and errors discovered.
- The tests cases thus updated are also made more efficient with the addition of the regression tests developed during the whole process.
- Unit tests are carried out simultaneously with the development and progress of the source code.
- They eventually become an integral part of the build process.
- This model aims at achieving continuous deployment i.e., to say that the software updates can be easily released for the public.

Although there exist some variations between the different models of testing, the testing cycle is typical and same for every kind of model. The following steps are involved in the testing cycle:

- Requirement analysis
- Test planning
- Test development
- Test execution
- Test reporting
- Test result analysis
- Defect retesting
- Regression testing
- Test closure


Tuesday, March 29, 2011

What are Formal Technical Reviews (FTR)? What is the aim and guidelines for formal technical reviews?

When tasks are performed in software process, the result is a work product. These results contribute to the development of quality software.
A formal technical review (FTR) is a software quality assurance activity performed by software engineers with the following objectives:
- uncover errors in function, logic or implementation of the software.
- verify that the software meets its requirements.
- ensure that the software has been developed according to the standards.
- achieve uniform software.
- make projects manageable.

Each formal technical review is conducted as a meeting and is considered successful only if it is properly planned, controlled and attended.
The purpose of formal technical review serves as a training ground for junior engineers and to promote backup and continuity.
Constraints of formal technical review meeting’s include 3-5 people involvement, advanced preparation not more than 2 hours for each person, the duration of the review meeting should be less than 2 hours and focus on a specific part of a software product.

There are few guidelines while conducting formal technical reviews. They are:
- Work product should be reviewed and not the developer.
- Make a practice to write down notes while conducting reviews.
- Agenda should be planned.
- Minimize the debate and discussions.
- Keep the number of participants to a minimum and insist on preparing for the review.
- The defect areas should be pointed but no solution should be provided.
- A checklist that is to be reviewed is provided.
- Schedule the reviews as part of the software process and ensure that resources are provided for each reviewer
- Check the effectiveness of review.


Friday, March 18, 2011

Team Software Process (TSP) - Strategy and Objectives

The goal of Team Software Process (TSP) is to build a self directed project team that organizes itself to produce high quality software. The objectives of TSP are:
- The TSP is intended to improve the levels of quality and productivity of a team's software development project.
- Using TSP, organizations establish a mature and disciplined engineering practice that produces secure, reliable software in less time and at lower costs.
- Accelerate software process improvement by making CMM level 5 behavior normal and expected.
- Show managers how to coach and motivate their teams and how to help them to sustain peak performance.
- Build self directed teams that plan and track their work, establish goals, and own their processes and plans. To form a self directed team, you must collaborate well internally and communicate well externally.

A self directed team should do the following:
- understand overall goals and objectives.
- defines roles and responsibilities for each team member.
- tracks quantitative project data.
- identifies a team process appropriate for project.
- implementing strategy for the process.
- defines local standards.
- assess risk and reacts to it.
- tracks, reports and manages project status.

TEAM SOFTWARE PROCESS (TSP) STRATEGY


- Provide a simple process framework based on the PSP.
- Use modest, well-defined problems.
- Develop products in several cycles.
- Establish standard measures for quality and performance.
- Provide detailed role definitions.
- Use role and team evaluations.
- Require process discipline.
- Provide guidance on teamwork problems.


Thursday, March 17, 2011

The Personal Software Process (PSP) - Objectives and PSP Model

The developer uses some process to build computer software. The process can be ad hoc, may change on a daily basis, may not be efficient, effective or even successful, but a process does exist.
In the PSP methods included are: following a defined process, planning the work, gathering data, and using these data to analyze and improve the process.
While this sounds simple in concept, it is not easy in practice. This is why a principal focus of PSP introduction is on providing a working environment that supports PSP practices.

- PSP helps software engineers to understand and improve their performance by using a disciplined, data-driven procedure.
- PSP emphasizes personal measurement of both the work product that is produced and the resultant quality of the work product.
- PSP makes the practitioner responsible for project planning.
- PSP empowers the practitioner to control the quality of all software work products developed.
- PSP helps software engineers to improve their estimating and planning skills, make commitments they can keep, manage the quality of their projects, reduce the number of defects in their work.
- PSP helps developers produce zero-defect, quality products on schedule.
- PSP emphasizes the need to record and analyze the types of errors you make, so strategies can be developed to eliminate them.

FRAMEWORK ACTIVITIES USED DURING PSP ARE:
The PSP model defines five framework activities:
- Planning: Isolates requirements and based on these develops both size and resource estimates. A defect estimate is also made.
- High Level Design: External specifications for each component to be constructed are developed and a component design is created. Prototypes are built and all issues are recorded and tracked.
- High Level Design Review: Formal verification methods are applied to uncover errors in design.
- Development: The component level design is refined and reviewed. Code is generated, reviewed, compiled, and tested.
- Postmortem: The effectiveness of the process is determined using the measures and metrics collected.


Friday, October 29, 2010

Software Testing - Validation Phase - Alpha Testing

A software prototype stage when the software is first available for run. The software has the core functionalities in it but complete functionality is not aimed at. It would be able to accept inputs and give outputs. Usually, the most used functionalities are developed more. This test is conducted at the developer's site only. In a software development life cycle, depending on the functionalities, the number of alpha phases required are laid down in the project plan itself.

During this, the testing is not a through one since only the prototype of the software is available. The basic installation and un-installation tests and the completed core functionalities are tested.

The aim of alpha testing is :
- to identify any serious errors.
- to judge if the intended functionalities are implemented.
- to provide to the customer the feel of the software.

A thorough understanding of the product is done now. During this phase, the test plan and test cases for the beta phase which is the next stage is created. The errors reported are documented internally for the testers and developers reference. No issues are usually reported and recorded in any of the defect management or bug trackers.

The role of the test lead is to understand the system requirements completely and to initiate the preparation of test plan for the beta phase. The role of the tester is to provide input while there is still time to make significant changes as the design evolves and to report errors to developers.


Facebook activity