Essay, Pages 30 (7409 words)
Quality Assurance (Qa) Qa Is Process that is use to Create & enforce standard & guideline to improve the Quality of Soiftware Process & Prevent Bug from the Application Quality assuranceis a process in which all the roles are guided and moniteered to accomplish their tasks right from the starting of the process till the end Quality Assurance:- customer satisfication by providing value for their money by always supplying quality product as per customer specification and delivery requirement.
Quality Control: QC is evaluating the product,identifying the defects and suggesting improvements for the same.
It is oriented towards “Detection” eg:Testing. Quality Control is a system of routine technical activites, to measure and control the quality of the inventory as it is being developed. Quality Control includes general methods such as accuracy checks on data acquisition and calculation and the use of approved standardised procedure for emission calculations, measurements, estimating uncertainites, archiving informations and reporting.
Quality Control (QC)Qc is a process that is use to Find Bug From The Product , as early as possible & make sure they get Fixed Quality control is a process in which sudden checkings are conducted on the roles Quality Control :- QC is evaluating the product,identifying the defects and suggesting improvements for the same. It is oriented towards “Detection” eg:Testing. What are 8 principles of total quality management and key benefits the eight principles of TQM: 1. quality can and must be manage 2. everyone has a customer to delight 3.
processes, not the people, are the problem 4. very employee is responsible for quality 5. problems must be prevented, not just fixed 6. quality must be measured so it can be controlled 7. quality improvements must be continuos 8. quality goals must be base on customer requirements. The concept of TQM (Total Quality Management) Total Quality Management is a management approach that originated in the 1950’s and has steadily become more popular since the early 1980’s. Total Quality is a description of the culture, attitude and organization of a company that strives to provide customers with products and services that satisfy their needs.
The culture requires quality in all aspects of the company’s operations, with processes being done right the first time and defects and waste eradicated from operations. Total Quality Management, TQM, is a method by which management and employees can become involved in the continuous improvement of the production of goods and services. It is a combination of quality and management tools aimed at increasing business and reducing losses due to wasteful practices. Some of the companies who have implemented TQM include Ford Motor Company, Phillips Semiconductor, SGL Carbon, Motorola and Toyota Motor Company.
TQM Defined TQM is a management philosophy that seeks to integrate all organizational functions (marketing, finance, design, engineering, and production, customer service, etc. ) to focus on meeting customer needs and organizational objectives. TQM views an organization as a collection of processes. It maintains that organizations must strive to continuously improve these processes by incorporating the knowledge and experiences of workers. The simple objective of TQM is “Do the right things, right the first time, every time”. TQM is infinitely variable and adaptable.
Although originally applied to manufacturing operations, and for a number of years only used in that area, TQM is now becoming recognized as a generic management tool, just as applicable in service and public sector organizations. There are a number of evolutionary strands, with different sectors creating their own versions from the common ancestor. TQM is the foundation for activities, hich include: * Commitment by senior management and all employees * Meeting customer requirements * Reducing development cycle times * Just In Time/Demand Flow Manufacturing * Improvement teams Reducing product and service costs * Systems to facilitate improvement * Line Management ownership * Employee involvement and empowerment * Recognition and celebration * Challenging quantified goals and benchmarking * Focus on processes / improvement plans * Specific incorporation in strategic planning This shows that TQM must be practiced in all activities, by all personnel, in Manufacturing, Marketing, Engineering, R;amp;D, Sales, Purchasing, HR, etc. The core of TQM is the customer-supplier interfaces, both externally and internally, and at each interface lie a number of processes.
This core must be surrounded by commitment to quality, communication of the quality message, and recognition of the need to change the culture of the organization to create total quality. These are the foundations of TQM, and they are supported by the key management functions of people, processes and systems in the organization. Difference between Product Quality and Process Quality 1. Product quality means we concentrate always final quality but in case of process quality we set the process parameterProduct quality means we concentrate quality of product that is fit for intended use and as per customer requirement.
In the case of process quality we control our rejection rate such that in-house rejection is at minimum level. | | 2. Product quality means we concentrate always final quality but in case of process quality we set the process parameter 3. Product quality is the quality of the final product made. While Process quality means the quality of every process involved in the manufacturing of the final product. 4. Product quality is focusing on meeting tolerances in the end result of the manufacturing activities. The end result is measured on a standard of “good enough”.
Process quality focuses on each activity and forces the activities to achieve maximum tolerances irrespective of the end result. Something like a paint can manufacturer, the can and the lid need to match. A product quality focus on whether the paint can and lid fit tight enough but not too tight. This focus would require cans to be inspected and a specific ratio of defective would be expected. Process quality, the can making activities would be evaluated on it’s ability to to make the can opening exactly 6. 000 inches. The lid making would be evaluated on its ability to make lids 6. 10 inches. No cans would be defective if the distribution of output sizes is narrow enough. The goal of process quality is to force narrow variance in product output to be able to expect close tolerances. This focus on process quality typically generates higher product quality as a secondary outcome. 5. When we talk about software quality assurance, we often discuss process measurements, process improvements, productivity increase, quality improvement etc. And when we talk about quality improvement, mostly people think about product quality improvement.
Most of the time people forget about process quality improvement. In fact, people find it difficult to differentiate between product quality and process quality. Let us find out the difference! During software development we have work products like requirement specifications, software design, software code, user documentation, etc. Quality of any of these work products can be done by measuring its attributes and finding of they are good enough. For instance, a requirement specification may be ambiguous or even wrong. In that case, quality of that requirement specification is bad.
So during quality assurance audit (peer review, inspection etc. ), this defect can be caught so that it can be rectified. During software development project, a lot of processes are followed. The top processes are the project processes like project initiation, project planning, project monitoring, and project closure. Then we have development processes like requirement development, software design, software coding, software testing and software release. All of these processes are not executed perfectly on any project. Improvement in these processes can be achieved if we have audits of these processes.
For instance, these audits are done by using standards like CMM (Capability Maturity Model). These standards dictate as to how any project or development process needs to be executed on any project. If any process step is deviating too much from these standards then that process step needs to be improved. The most important job of any software quality assurance department is to audit and ensure that all processes on projects being executed in that organization adhere to these standards and so quality of these processes (project & development) is good enough. Effect of ISO on Society Society
ISO standards help governments, civil society and the business world translate societal aspirations, such as for social responsibility, health, and safe food and water, into concrete realizations. In so doing, they support the United Nations’ Millennium Development Goals. Social responsibility 1 November 2010 saw the publication of ISO 26000 which gives organizations guidance on social responsibility, with the objective of sustainability. The standard was eagerly awaited, as shown by the fact that a mere four months after its publication, a Google search resulted in nearly five million references to the standard.
This indicates there is a global expectation for organizations in both public and private sectors to be responsible for their actions, to be transparent, and behave in an ethical manner. ISO 26000, developed with the engagement of experts from 99 countries, the majority from developing economies, and more than 40 international organizations, will help move from good intentions about social responsibility to effective action. Health ISO offers more than 1 400 standards for facilitating and improving health-care.
These are developed within 19 ISO technical committees addressing specific aspects of healthcare that bring together health practitioners and experts from government, industry and other stakeholder categories. Some of the topics addressed include health informatics, laboratory equipment and testing, medical devices and their evaluation, dentistry, sterilization of healthcare products, implants for surgery, biological evaluation, mechanical contraceptives, prosthetics and orthotics, quality management and protecting patient data.
They provide benefits for researchers, manufacturers, regulators, health-care professionals, and, most important of all, for patients. The World Health Organization is a major stakeholder in this work, holding liaison status with 61 of ISO’s health-related technical committees (TCs) or subcommittees (SCs). Food There are some 1 000 ISO food-related standards benefitting producers and manufacturers, regulators and testing laboratories, packaging and transport companies, merchants and retailers, and the end consumer. In recent years, there has been strong emphasis on standards to ensure safe food supply chains.
At the end of 2010, five years after the publication of ISO 22000, the standard was being implemented by users in 138 countries. At least 18 630 certificates of conformity attesting that food safety management systems were being implemented according to the requirements of the standard, had been issued by the end of 2010, an increase of 34 % over the previous year. The level of inter-governmental interest in ISO’s food standards is shown by the fact that the UN’s Food and Agriculture Organizations has liaison status with 41 ISO TCs or SCs. Water
The goals of safe water and improved sanitation are ingrained in the UN Millennium Development Goals. ISO is contributing through the development of standards for both drinking water and wastewater services and for water quality. Related areas addressed by ISO include irrigation systems and plastic piping through which water flows. In all, ISO has developed more than 550 water-related standards. A major partner in standards for water quality is the United Nations Environment Programme. The Waterfall Model was first Process Model to be introduced.
It is also referred to as a linear-sequential life cycle model. It is very simple to understand and use. In a waterfall model, each phase must be completed fully before the next phase can begin. At the end of each phase, a review takes place to determine if the project is on the right path and whether or not to continue or discard the project. In waterfall model phases do not overlap. Diagram of Waterfall-model: Advantages of waterfall model: * Simple and easy to understand and use. * Easy to manage due to the rigidity of the model – each phase has specific deliverables and a review process. Phases are processed and completed one at a time. * Works well for smaller projects where requirements are very well understood. Disadvantages of waterfall model: * Once an application is in the testing stage, it is very difficult to go back and change something that was not well-thought out in the concept stage. * No working software is produced until late during the life cycle. * High amounts of risk and uncertainty. * Not a good model for complex and object-oriented projects. * Poor model for long and ongoing projects. Not suitable for the projects where requirements are at a moderate to high risk of changing. When to use the waterfall model: * Requirements are very well known, clear and fixed. * Product definition is stable. * Technology is understood. * There are no ambiguous requirements * Ample resources with required expertise are available freely * The project is short. The basic idea here is that instead of freezing the requirements before a design or coding can proceed, a throwaway prototype is built to understand the requirements. This prototype is developed based on the currently known requirements.
By using this prototype, the client can get an “actual feel” of the system, since the interactions with prototype can enable the client to better understand the requirements of the desired system. Prototyping is an attractive idea for complicated and large systems for which there is no manual process or existing system to help determining the requirements. The prototype are usually not complete systems and many of the details are not built in the prototype. The goal is to provide a system with overall functionality. Diagram of Prototype model: Advantages of Prototype model: Users are actively involved in the development * Since in this methodology a working model of the system is provided, the users get a better understanding of the system being developed. * Errors can be detected much earlier. * Quicker user feedback is available leading to better solutions. * Missing functionality can be identified easily * Confusing or difficult functions can be identified Requirements validation, Quick implementation of, incomplete, but functional, application. Disadvantages of Prototype model: * Leads to implementing and then repairing way of building systems. Practically, this methodology may increase the complexity of the system as scope of the system may expand beyond original plans. * Incomplete application may cause application not to be used as the full system was designed Incomplete or inadequate problem analysis. When to use Prototype model: * Prototype model should be used when the desired system needs to have a lot of interaction with the end users. * Typically, online systems, web interfaces have a very high amount of interaction with end users, are best suited for Prototype model.
It might take a while for a system to be built that allows ease of use and needs minimal training for the end user. * Prototyping ensures that the end users constantly work with the system and provide a feedback which is incorporated in the prototype to result in a useable system. They are excellent for designing good human computer interface systems. In incremental model the whole requirement is divided into various builds. Multiple development cycles take place here, making the life cycle a“multi-waterfall” cycle. Cycles are divided up into smaller, more easily managed modules. Each module passes through the requirements, design, mplementation and testingphases. A working version of software is produced during the first module, so you have working software early on during the software life cycle. Each subsequent release of the module adds function to the previous release. The process continues till the complete system is achieved. For example: In the diagram above when we work incrementally we are adding piece by piece but expect that each piece is fully finished. Thus keep on adding the pieces until it’s complete. Diagram of Incremental model: Advantages of Incremental model: * Generates working software quickly and early during the software life cycle. More flexible – less costly to change scope and requirements. * Easier to test and debug during a smaller iteration. * Customer can respond to each built. * Lowers initial delivery cost. * Easier to manage risk because risky pieces are identified and handled during it’d iteration. Disadvantages of Incremental model: * Needs good planning and design. * Needs a clear and complete definition of the whole system before it can be broken down and built incrementally. * Total cost is higher than waterfall. When to use the Incremental model: * Requirements of the complete system are clearly defined and understood. Major requirements must be defined; however, some details can evolve with time. * There is a need to get a product to the market early. * A new technology is being used * Resources with needed skill set are not available * There are some high risk features and goals. Difference between spiral model and incremental model Incremental Development Incremental Development is a practice where the system functionalities are sliced into increments (small portions). In each increment, a vertical slice of functionality is delivered by going through all the activities of the software development process, from the requirements to the deployment.
Incremental Development (adding) is often used together with Iterative Development (redo) in software development. This is referred to as Iterative and Incremental Development (IID). Spiral model The Spiral Model is another IID approach that has been formalized by Barry Boehm in the mid-1980s as an extension of the Waterfall to better support iterative development and puts a special emphasis on risk management (through iterative risk analysis). 4 Reasons to Use Fishbone Diagrams The fishbone diagram, or the cause and effect diagram, is a simple graphic display that shows all the possible causes of a problem in a business process.
It is also called the Ishakawa diagram. Fishbone diagrams are useful due to how they portray information. There are 4 Main Reasons to use a Fishbone Diagram: 1. Display relationships – The fishbone diagram captures the associations and relationships among the potential causes and effects displayed in the diagram. These relationships can be easily understood. 2. Show all causes simultaneously – Any cause or causal chain featured on the fishbone diagram could be contributing to the problem.
The fishbone diagram illustrates each and every possible cause in an easily comprehendible way; this makes it a great tool for presenting the problem to stakeholders. 3. Facilitate brainstorming – The fishbone diagram is a great way to stimulate and structure brainstorming about the causes of the problem because it captures all the causes. Seeing the fishbone diagram may stimulate your team to explore possible solutions to the problems. 4. Help maintain team focus – The fishbone framework can keep your team focused as you discuss what data needs to be gathered.
It helps ensure that everyone is collecting information in the most efficient and useful way, and that nobody is wasting energy chasing nonexistent problems. Agile software development is a group of software development methods based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams. It promotes adaptive planning, evolutionary development and delivery, a time-boxed iterative approach, and encourages rapid and flexible response to change. It is a conceptual framework that promotes foreseen interactions throughout the development cycle.
Rapid application development (RAD) is a software development methodology that uses minimal planning in favor of rapid prototyping. The “planning” of software developed using RAD is interleaved with writing the software itself. The lack of extensive pre-planning generally allows software to be written much faster, and makes it easier to change requirements. Code and fix “Code and fix” development is not so much a deliberate strategy as an artifact of naivete and schedule pressure on software developers.  Without much of a design in the way, programmers immediately begin producing code.
At some point, testing begins (often late in the development cycle), and the inevitable bugs must then be fixed before the product can be shipped. See also: Continuous integration and Cowboy coding What Are the Benefits of Pareto Analysis? A Pareto analysis is an observation of causes of problems that occur in either an organization or daily life, which is then displayed in a histogram. A histogram is a chart that prioritizes the causes of problems from the greatest to the least severe. The Pareto analysis is based on the Pareto Principle, also known as the 80/20 rule, which states that 20 percent of effort yields 80 percent of results.
For example, if an individual sells items on eBay, he should focus on 20 percent of the items that yield 80 percent of sales. According to Mindtools. com, a Pareto analysis enables individuals to make effective changes. Organizational Efficiency * A Pareto analysis requires that individuals list changes that are needed or organizational problems. Once the changes or problems are listed, they are ranked in order from the biggest to the least severe. The problems ranked highest in severity should become the main focus for problem resolution or improvement.
Focusing on problems, causes and problem resolution contributes to organizational efficiency. Companies operate efficiently when employees identify the root causes of problems and spend time resolving the biggest problems to yield the greatest organizational benefit. Enhanced Problem-Solving Skills * You can improve your problem-solving skills when you conduct a Pareto analysis, because it enables you to organize work-related problems into cohesive facts. Once you’ve clearly outlined these facts, you can begin the planning necessary to solve the problems. Members of a group can conduct a Pareto analysis together.
Arriving at a group consensus about the issues that require change fosters organizational learning and increases group cohesiveness. * Improved Decision Making * Individuals who conduct a Pareto analysis can measure and compare the impact of changes that take place in an organization. With a focus on resolving problems, the procedures and processes required to make the changes should be documented during a Pareto analysis. This documentation will enable better preparation and improvements in decision making for future changes. BENEFITS OF CONTROL CHARTS 1.
Help you recognize and understand variability and how to control it 2. Identify “special causes” of variation and changes in performance 3. Keep you from fixing a process that is varying randomly within control limits; that is, no “special causes” are present. If you want to improve it, you have to objectively identify and eliminate the root causes of the process variation 4. Assist in the diagnosis of process problems 5. Determine if process improvement effects are having the desired affects 1st party audit First Party The first party audit is an audit carried out by a company on itself to etermine whether its systems and procedures are consistently improving products and services, and as a means to evaluate conformity with the procedures and the standard. Each second and third party audit should consider the first party audits carried out by the company in question. Ultimately, the only systems that should need to be examined are those of internal audits and reviews. In fact, the second or third parties themselves have to carry out internal or first party audits to ensure their own systems and procedures are meeting business objectives. SECOND PARTY (EXTERNAL) AUDIT
Unlike the first party audit, a second party audit is an audit of another organization’s quality program not under the direct control or within the organizational structure of the auditing organization. Second party audits are usually performed by the customer upon its suppliers (or potential suppliers) to ascertain whether or not the supplier can meet existing or proposed contractual requirements. Obviously, the supplier’s quality system is a very important part of contractual requirements since it is directly (manufacturing, engineering, purchasing, quality control, etc. and indirectly (marketing, inside and outside sales, etc. ) responsible for the design, production, control and continued supportability of the product. Although second party audits are usually conducted by customers on their suppliers, it is sometimes beneficial for the customer to contract with an independent quality auditor. This action helps to promote an image of fairness and objectivity on the part of the customer. THIRD PARTY AUDIT Compared to first and second party audits where auditors are not independent, the third party audit is objective.
It is an assessment of an organization’s quality system conducted by an independent, outside auditor or team of auditors. When referring to a third party audit as it applies to an international quality standard such as ISO 9000, the term “third party” is synonymous with a quality system registrar whose primary responsibility is to assess an organization’s quality system for conformance to that standard and issue a certificate of conformance (upon completion of a successful assessment). Application of IT in supplying Point of sale (POS) or checkout is the place where a retail transaction is completed.
It is the point at which a customer makes a payment to a merchant in exchange for goods or services. At the point of sale the merchant would use any of a range of possible methods to calculate the amount owing, such as a manual system, weighing machines, scanners or an electronic cash register. The merchant will usually provide hardware and options for use by the customer to make payment, such as an EFTPOS terminal. The merchant will also normally issue a receipt for the transaction. Functions of IT in marketing Pricing Pricing plays an important role in determining market success and profitability.
If you market products that have many competitors, you may face strong price competition. In that situation, you must aim to be the lowest-cost supplier so you can set low prices and still remain profitable. You can overcome low price competition by differentiating your product and offering customers benefits and value that competitors cannot match. Promotion Promotion makes customers and prospects aware of your products and your company. Using promotional techniques, such as advertising, direct marketing, telemarketing or public relations, you can communicate product benefits and build preference for your company’s products.
Selling Marketing and selling are complementary functions. Marketing creates awareness and builds preference for a product, helping company sales representatives or retail sales staff sell more of a product. Marketing also supports sales by generating leads for the sales team to follow up. Market segmentation Market segmentation is a marketing strategy that involves dividing a broad target market into subsets of consumers who have common needs, and then designing and implementing strategies to target their needs and desires using media channels and other touch-points that best allow to reach them.
Types of segmentation Clickstream behaviour A clickstream is the recording of the parts of the screen a computer user clicks on while web browsing or using another software application. As the user clicks anywhere in the webpage or application, the action is logged on a client or inside the web server, as well as possibly the web browser, router, proxy server or ad server. Clickstream analysis is useful for web activity analysis, software testing, market research, and for analyzing employee productivity. Target marketing
A target market is a group of customers that the business has decided to aim its marketing efforts and ultimately its merchandise towards. A well-defined target market is the first element to a marketing strategy. The marketing mix variables of product, place (distribution), promotion and price are the four elements of a marketing mix strategy that determine the success of a product in the marketplace. Function of IT in supply chain Making sure the right products are in-store for shoppers as and when they want them is key to customer loyalty.
It sounds simple enough, yet why do so many retailers still get it wrong. Demand planning Demand Planning is the art and science of planning customer demand to drive holistic execution of such demand by corporate supply chain and business management. Demand forecasting Demand forecasting is the activity of estimating the quantity of a product or service that consumers will purchase. Demand forecasting involves techniques including both informal methods, such as educated guesses, and quantitative methods, such as the use of historical sales data or current data from test markets.
Demand forecasting may be used in making pricing decisions, in assessing future capacity requirements, or in making decisions on whether to enter a new market. Just in time inventory Just in time (JIT) is a production strategy that strives to improve a business return on investment by reducing in-process inventory and associated carrying costs. Continuous Replenishment Continuous Replenishment is a process by which a supplier is notified daily of actual sales or warehouse shipments and commits to replenishing these sales (by size, color, and so on) without stock outs and without receiving replenishment orders.
The result is a lowering of associated costs and an improvement in inventory turnover. Supply chain sustainability Supply chain sustainability is a business issue affecting an organization’s supply chain or logistics network in terms of environmental, risk, and waste costs. Sustainability in the supply chain is increasingly seen among high-level executives as essential to delivering long-term profitability and has replaced monetary cost, value, and speed as the dominant topic of discussion among purchasing and supply professionals. Software testing
Difference between defect, error, bug, failure and fault: “A mistake in coding is called error ,error found by tester is called defect, defect accepted by development team then it is called bug ,build does not meet the requirements then it Is failure. ” Error: A discrepancy between a computed, observed, or measured value or condition and the true, specified, or theoretically correct value or condition. This can be a misunderstanding of the internal state of the software, an oversight in terms of memory management, confusion about the proper way to calculate a value, etc.
Failure: The inability of a system or component to perform its required functions within specified performance requirements. See: bug, crash, exception, and fault. Bug: A fault in a program which causes the program to perform in an unintended or unanticipated manner. See: anomaly, defect, error, exception, and fault. Bug is terminology of Tester. Fault: An incorrect step, process, or data definition in a computer program which causes the program to perform in an unintended or unanticipated manner. See: bug, defect, error, exception.
Defect: Commonly refers to several troubles with the software products, with its external behaviour or with its internal features. Regression testing Regression testing is any type of software testing that seeks to uncover new software bugs, or regressions, in existing functional and non-functional areas of a system after changes, such as enhancements, patches or configuration changes, have been made to them. Verification and Validation example is also given just below to this table. Verification| Validation| 1. Verification is a static practice of verifying documents, design, code and program. 1. Validation is a dynamic mechanism of validating and testing the actual product. | 2. It does not involve executing the code. | 2. It always involves executing the code. | 3. It is human based checking of documents and files. | 3. It is computer based execution of program. | 4. Verification uses methods like inspections, reviews, walkthroughs, and Desk-checking etc. | 4. Validation uses methods like black box (functional) testing, gray box testing, and white box (structural) testing etc. | 5. Verification is to check whether the software conforms to specifications. | 5.
Validation is to check whether software meets the customer expectations and requirements. | 6. It can catch errors that validation cannot catch. It is low level exercise. | 6. It can catch errors that verification cannot catch. It is High Level Exercise. | 7. Target is requirements specification, application and software architecture, high level, complete design, and database design etc. | 7. Target is actual product-a unit, a module, a bent of integrated modules, and effective final product. | 8. Verification is done by QA team to ensure that the software is as per the specifications in the SRS document. 8. Validation is carried out with the involvement of testing team. | 9. It generally comes first-done before validation. | 9. It generally follows after verification. | Differences Between Black Box Testing and White Box Testing Criteria| Black Box Testing| White Box Testing| Definition| Black Box Testing is a software testing method in which the internal structure/ design/ implementation of the item being tested is NOT known to the tester| White Box Testing is a software testing method in which the internal structure/ design/ implementation of the item being tested is known to the tester. Levels Applicable To| Mainly applicable to higher levels of testing: Acceptance TestingSystem Testing| Mainly applicable to lower levels of testing: Unit TestingIntegration Testing| Responsibility| Generally, independent Software Testers| Generally, Software Developers| Programming Knowledge| Not Required| Required| Implementation Knowledge| Not Required| Required| Basis for Test Cases| Requirement Specifications| Detail Design| A programmer, computer programmer, developer, coder, or software engineer is a person who writes computer software.
A quality assurance officer implements strategic plans, supervises quality assurance personnel and is responsible for budgets and allocating resources for a quality assurance division or branch. Levels of testing In computer programming, unit testing is a method by which individual units of source code, sets of one or more computer program modules together with associated control data, usage procedures, and operating procedures, are tested to determine if they are fit for use. Intuitively, one can view a unit as the smallest testable part of an application.
Integration testing (sometimes called Integration and Testing, abbreviated “I&T”) is the phase in software testing in which individual software modules are combined and tested as a group. System testing of software or hardware is testing conducted on a complete, integrated system to evaluate the system’s compliance with its specified requirements. System testing falls within the scope of black box testing, and as such, should require no knowledge of the inner design of the code or logic.
In engineering and its various sub disciplines, acceptance testing is a test conducted to determine if the requirements of a specification or contract are met. It may involve chemical tests, physical tests, or performance tests. In systems engineering it may involve black-box testing performed on a system (for example: a piece of software, lots of manufactured mechanical parts, or batches of chemical products) prior to its delivery. Software developers often distinguish acceptance testing by the system provider from acceptance testing by the customer (the user or client) prior to accepting transfer of ownership.
In the case of software, acceptance testing performed by the customer is known as user acceptance testing (UAT), end-user testing, site (acceptance) testing, or field (acceptance) testing. A sample testing cycle Although variations exist between organizations, there is a typical cycle for testing. The sample below is common among organizations employing the Waterfall development model. Requirements analysis: Testing should begin in the requirements phase of the software development life cycle.
During the design phase, testers work with developers in determining what aspects of a design are testable and with what parameters those tests work. Test planning: Test strategy, test plan, testbed creation. Since many activities will be carried out during testing, a plan is needed. Test development: Test procedures, test scenarios, test cases, test datasets, test scripts to use in testing software. Test execution: Testers execute the software based on the plans and test documents then report any errors found to the development team.
Test reporting: Once testing is completed, testers generate metrics and make final reports on their test effort and whether or not the software tested is ready for release. Test result analysis: Or Defect Analysis, is done by the development team usually along with the client, in order to decide what defects should be assigned, fixed, rejected (i. e. found software working properly) or deferred to be dealt with later. Defect Retesting: Once a defect has been dealt with by the development team, it is retested by the testing team.
AKA Resolution testing. Regression testing: It is common to have a small test program built of a subset of tests, for each integration of new, modified, or fixed software, in order to ensure that the latest delivery has not ruined anything, and that the software product as a whole is still working correctly. Test Closure: Once the test meets the exit criteria, the activities such as capturing the key outputs, lessons learned, results, logs, documents related to the project are archived and used as a reference for future projects.
Types of Performance testing Stress testing (sometimes called torture testing) is a form of deliberately intense or thorough testing used to determine the stability of a given system or entity. Usability testing is a technique used in user-centered interaction design to evaluate a product by testing it on users. Volume testing refers to testing a software application with a certain amount of data. This amount can, in generic terms, be the database size or it could also be the size of an interface file that is the subject of volume testing.
Maintenance testing is a test that is performed to either identify equipment problems, diagnose equipment problems or to confirm that repair measures have been effective. When it comes to quality management, IT organisations can take a leaf out of industry’s book. Thanks to the success of companies like Toyota and Motorola, methods such as Total Quality Management (TQM) and Six Sigma are gaining rapid popularity. And with good reason. Quality is a good generator of money, and lots of it. Unlike industry, IT has no physical chain.
This makes it more difficult at first to be able to take concrete steps towards the implementation of quality management. But the parallels are easily drawn. Regard a satisfied end user as the equivalent of a faultless end product, a carefully conceived system of applications as the equivalent of a streamlined production line and so forth. And similar to industry, things can go wrong in any aspect. The faultless implementation of processes leads to significant savings (and not forgetting satisfied end users). What should you focus on to set up quality management for IT within your own organisation and subsequently make money?
The service excellence strategy Organise a strategy of service excellence for the internal IT services, where the optimisation of service to end users receives top priority. After all, poor quality leads to high repair costs. Especially in IT. Resolving incidents costs money (direct costs). And the indirect costs, such as loss of productivity are, though often unobserved, several times these direct costs. Focus on management and service processes The focus within IT is often on the projects and the functionalities of the systems.
But to ensure service excellence, the performance of management and service processes are equally important. If these processes are substandard, it could result in a lack of clarity, unnecessary waiting times and – in the worst case scenario – to malfunctions. A reassessment of processes is vital to prevent these discomforts and reduce relevant costs. Measure the effect of failure and errors The effect of failure and errors at the workplace is rarely measured. Organisations often have no idea how much these mistakes are costing them and what the consequences are for the service to their clients.
The costs of incidents and malfunctions are easy to calculate by using a few simple rules of thumb. When you do this regularly, it will become clear for everyone where savings can be realised (read: how much money can be made). This will suddenly put the investments made towards achieving higher quality in an entirely new perspective. Use simple, service-oriented KPIs The moment you have insight into what causes the direct and indirect failure and error costs, it’s a small step to define a number of simple and service-oriented KPIs.
These KPIs can form the guideline for measuring and improving service quality. Examples of such KPIs are: * The average number of incidents per employee; * The percentage of incidents resolved during the first contact with the helpdesk (the so-called ‘first-time right’ principle); * The percentage of incidents caused by incorrectly implemented changes. Implement a measurement methodology Improvements within a quality system happen on the basis of facts. The collection of facts takes place through measurements within the operational processes, on the basis of preselected metrics (e. . the number of complaints). The key performance indicators (KPIs) show whether a specific objective has been achieved, for example a desired decline in the number of complaints, expressed in percentages. Don’t overestimate the power of ITIL ITIL (IT Infrastructure Library) is a collection of best practices for the structuring of operational processes. Many companies have implemented ITIL in an effort to make their service more professional. ITIL lets you lay a good foundation to make the IT service more professional. But beware: it is no quality methodology.
It might be good for defining IT processes, but offers no scope for actual improvement. So you will need a separate quality methodology in addition to ITIL. Most organisations require a drastic improvement in the quality of their IT services. Perhaps the realisation that this won’t be costing any money, but will instead generate it, offers the incentive needed to set to work earnestly on the issue. The end result means two birds with one stone: a service-oriented IT company that saves costs, and an IT company that truly supports the end users in carrying out their activities optimally.
The Importance of Quality Improvement in Your Business Venture A career in the business industry requires you to be tough and flexible. Business is a difficult venture. You have to make your way through and outperform competitors. Businesses nowadays have also gone global. You have to compete with other business entities from the world over. Because of the tough competition in the business scenes, getting the attention and the trust of customers has become increasingly difficult. This is where quality improvement comes in. Quality plays a vital role in any business.
Consumers want the best and want to pay the lowest possible price for products that are of the greatest quality. Moreover, quality is also one of the main components of being able to stay in the game despite the competition around you. Constant quality improvement is important in keeping you afloat. This has to do with eliminating or reducing the losses and waste in the production processes of any business. Quality improvement most often involves the analysis of the performance of your business, products, and services and finding ways to further improve them. There are certain techniques that can help you in achieving quality improvement.
Knowing these steps can lead you to improved quality in your business. Benchmarking or comparing your company to the best or the top of the field will also be beneficial. You have to identify what makes an organization or company ‘the best’ and why the consumers want to purchase these products or services. Compare the quality and cost of their products with yours. Also include the processes that use to produce them. This can help you in looking for your own business factors that you have to improve upon for success. Setting up your own internal quality checks is important. You have to ensure that in ach step of making your product, you are meeting the standards of the industry and also providing your customers with the best products. This needs to be done with the least amount of waste and as few resources as possible. You need to be rigid about following the quality checks that your company has put forth. This will save you from having to deal with returned items and products. It also helps in guaranteeing the satisfaction of your customers. You need to assess your own production and your products. You need to know if these have passed the international standards on quality for the respective industry you do business in.
Moreover, measure how your product is doing against others in the market. These are important in order to know what aspects you have to improve. You cannot afford to be forgiving when assessing. You need to be honest and blunt when gauging your own company. This will help you in finding needs for improvement. After assessing, you have to take the steps in making the necessary changes that will lead you to improvement. You may need to change your quality policy or do more research about your products and provide better features.
You may also need to conduct training for your employees in order to update them with new methods in your processes. Quality improvement is not just a one-time process. It needs to be continued despite the success that a company or organization is appreciating. Competitors will always try their best to outwit you. And so, you have to continue on improving your products and services in order to offer more to your clients. This will not only lead you to more sales but also to a better reputation in the industry. Keep in mind that it is often more work to stay on top than to get to the top!