Six Sigma efforts on softwares

Six Sigma efforts on software’s

Student’s name

Affiliation

Date

Introduction

Many organizations nowadays are faced with pressure o improve due to the growth of global competition. There are many challenges such as low sales, high cost of production and being able to remain relevant in the market. The organizations have devised numerous process enhancement approaches in recent years to overcome these challenges. Many organizations have invested in Six sigma. Today’s competitive arena leaves no room for fault.

Six Sigma

Six Sigma is a statistical word that tends to measures how far a particular procedure deviates from perfection. The Six Sigma method could be applied to many organizations since it has been effectively employed in many large organizations so as to improve the products quality and business methods. Many organizations which have invested in Six Sigma have realized improvement in the working efficiency and product field, direct cutbacks in energy use, air discharges, and reduction of waste, greenhouse gas discharges, and many more environmental effects.

Six sigma has many possible benefits such as eradicating variation, production processes which leads less-defects products which will in turn, help in doing away with waste from processes in ways .This means that less defects reduces the number of products that must be written off. It also mean that the energy, raw materials and consequential waste related with the scrap are done away with in time. It also help in decreasing the quantity of energy, raw material, and rejects that are used or produced to repair substandard products that can be re-done.

Six Sigma is a very important instrument which aids in centering attention on minimizing situations that can cause accidents, spills, equipment breakdowns, reduction in dangerous wastes resulting from spills and leaks. Six sigma aims at producing durable products.

Six sigma in software development has brought a breakthrough in software development. Coming up with software products involves more than just looping programming commands together and having them run on a computer. It also involves meeting client needs at an agreed upon cost and schedule. Software engineers are forced to steadily come up with high-quality programs on schedule and at their agreed cost in order to be successful

Six sigma has proven to be a big breakthrough in software development since there has been many challenges such average cost overrun of 90 percent, schedule overrun of up to 120 percent, and big-project revocation of 25 percent caused by combination of delays, budget overruns, or poor quality of products. Employing Six Sigma tools and methods has seen the reduction of these risks.

Six sigma has also helped reduce requirement failures which in most cases are associated with failed and cancellation of software projects

Six Sigma statistical tools, such as regression analysis, can be applied to the improvement and enhancement of software cost, program, and conveyed quality forecasting. This will take care of problems such as incorrect and overly optimistic estimates which has led to extended delays and huge cost overruns

Execution failures which has resulted to meagre software quality, profoundly back-loaded costs, and very high levels of redoing the work which is apparently 40 percent of over-all cost are some of the factors which has led to failed software projects Defect cost analysis scorecards and Rayleigh effort and defect modeling tools in Six Sigma offer mechanisms which analyze the cost and excellent dynamics of software projects which has enable correct estimating of the cost profit of the intended process improvements.

Enhancements are not apparent unless the best intermediate Six sigma metrics are employed. Unlike manufacturing where dimensions and processes are well understood and variations can be evaluated very quickly. Cycle times for software development naturally take longest time, and repeatability is not a common notion as it is in processing and transactional fields.

Software Test Strategies

Test strategies such as Unit Testing and Integration Testing will help eliminate any software errors. To begin with, specific modules are tested and debugged. After the singular components have been tested and incorporated to the system, integration testing is done. Once the full software product is completed, Verification and Validation are done to ascertain whether the right product is produced and whether the process involved was right.

During the test, Independent Test Group (ITG) should be employed to do away with the conflict of interest inherent when the manufacturer is testing their own product.

Unit Testing

Unit testing is a testing technique that exercise specific control trails to identify errors in each software component individually. It touches mainly in Module interface which are tested to establish proper information flow, Local information are scrutinized to ensure that data integrity is maintained.

Integration Testing

Integration Testing mainly focuses on issues related with verification and program building as components begin interrelating with one another. It involves Top-down integration testing and Bottom-up integration testing.

Top-down integration testing

Top-down integration involves Main control unit used as a check driver and stubs are alternatives for components directly secondary to it. Secondary stubs are substituted one at a time with actual apparatuses

Bottom-up integration testing

Bottom-up integration testing is done where Low level apparatuses are joined into collections that perform a particular software function.

A control program known as driver is written to harmonize test case input and output.

Drivers are then removed and clusters are joined together moving upward in the program arrangement.

Software verses Hardware Testing

Software testing is different from hardware testing since software needs a different set of rules for testing and for quality control as opposed to those used in hardware.

The first step in testing software spins around records. What the new features are, which features are discontinued, what has been altered or been updated. Software testing gets a lot of concentration in software engineering and software static analysis

Hardware testing is also as important because without stable hardware most software will not perform bad hardware is also expensive to maintain and can drain an organization and delay development and frustrate the people involved.

There are many resemblances and dissimilarities between methods employed for testing software and hardware. Since most software programs do not degrade with time, faults existing in the application will just be the same and no new faults will come up unless the particular software is altered. This does not apply for hardware, the hardware might fail with time because of a fault that wan not there at the time the hardware was manufactured or tested.

This difference in the development of faults during manufacturing or over time leads to built-in self-test (BIST) techniques applied to hardware .This can be applied to software but will only sense faults that were present when the last change was made.

Hardware testers produce tests grounded on fault models. For example, using a stuck-at fault model one can use a set of input test patterns to test whether a logic gate is working as expected. The fault being tested for is a manufacturing flaw or might have developed due to degradation over time. Software testers create tests to test for correct functionality. In most cases these tests don’t match any general fault model. A better example is to test whether there is a memory leak in a software, one performs a mixture of stress testing and code examination. A diversity of faults always lead to memory leakages.

Hardware testers use a range of fault replicas at different stages of abstraction. For example, at the lower level there are transistor-level faults. At higher levels there are gate level, circuit level, and function-level fault models. Software testers might or might not use fault models during test generation even though the models exist.

Conclusion

The essential concept of Six Sigma is that improved performance leads to improvement, cycle period, excellence, dimensions, inventory levels, and other key factors as decrease of unwanted, energy sources and setting. This means that improvement of these factors will be a great advantage to both the provider and the client experience greater satisfaction in execution of business dealings. The major tool used to obtain these results is Six Sigma, whose application has been applied in big software and hardware organizations.

Get your Custom paper done as per your instructions !

Order Now