This document provides an overview and table of contents for a guide about acceptance testing. The guide aims to provide guidance on how to make the important decision to accept software and help avoid misunderstandings and disappointments. It discusses acceptance testing as a process and includes perspectives from various roles involved in software development and acceptance. The guide is the first in a series that will present foundations, practices, and examples of acceptance testing.
Agilität ist in aller Munde – von den einen abgöttisch geliebt und es soll noch andere geben, die sie nicht so gerne mögen. Jedem das Seine. Doch wie sieht die agile Landschaft in der Schweizer IT Community aus? Laden Sie die Agile Trends & Benchmarks 2012 herunter ziehen Sie Ihre eigenen Schlüsse daraus.
Stephanie WroteA lean organization understands customer value a.docx
Stephanie Wrote:
A lean organization understands customer value and focuses its key processes to continuously increase it. The ultimate goal is to provide perfect value to the customer through a perfect value creation process that has zero waste.
To accomplish this, lean thinking changes the focus of management from optimizing separate technologies, assets, and vertical departments to optimizing the flow of products and services through entire value streams that flow horizontally across technologies, assets, and departments to customers.
Eliminating waste along entire value streams, instead of at isolated points, creates processes that need less human effort, less space, less capital, and less time to make products and services at far less costs and with much fewer defects, compared with traditional business systems. Companies are able to respond to changing customer desires with high variety, high quality, low cost, and with very fast throughput times. Also, information management becomes much simpler and more accurate.
A popular misconception is that lean is suited only for manufacturing. Not true. Lean applies in every business and every process. It is not a tactic or a cost reduction program, but a way of thinking and acting for an entire organization.
The term "lean" was coined to describe Toyota's business during the late 1980s by a research team headed by Jim Womack, Ph.D., at MIT's International Motor Vehicle Program.
Mary Wrote:
· What is the lean concept and why is it important to study?
With fewer resources lean creates more value for customers. The idea of maximizing customer value while minimizing waste. Lean is important to study because there are so many benefits such as through lean there is a cost benefit. we can increase quality and reliability. Reduce operating costs, boost staff productivity and reduce the length of production cycles.
· How can lean be applied to manufacturing and service processes?
TOYOTA is the best example of a company that use lean processes and implement them. Toyota is the first major company to use lean ideology in their manufacturing processes. They have eliminated wasted and using techniques to get rid of faulty products that do not interest the customers. They use two processes, one is Jidoka and the other one is JIT or just in time. Jidoka is used to check the quality of the product and can stop the machines themselves down when there is an error. JIT/ just in time leads to the next step once the previous step is finished.
https://www.lean.org/whatslean/
https://refinedimpact.com/4-good-examples-of-companies-that-use-lean-manufacturing/
Project Management
Processes, Methodologies, and Economics
Third Edition
Avraham Shtub
Faculty of Industrial Engineering and Management
The Technion–Israel Institute of Technology
Moshe Rosenwein
Department of Industrial Engineering and Operations Research
Columbia University
Boston Columbus San Francisco New York Hoboken
Indianapolis London Tor.
This document provides an overview of how human-computer interaction (HCI) affects the software development process. It discusses how usability engineering promotes interactive system design and the software life cycle. The software life cycle involves requirements specification, design, implementation, testing, and maintenance. Iterative design and prototyping are important to overcome the limitations of traditional software development models. Usability metrics and standards help specify and test usability requirements. While iterative design has benefits, initial design decisions and a lack of understanding problems can limit its effectiveness.
The document discusses strategies for effectively planning and implementing Aras Innovator. It recommends using an iterative approach divided into phases of inception, elaboration, construction, and transition. Key activities include developing requirements and use cases, creating visual and behavioral prototypes, testing in iterations, and training users for transition to production. Regular releases for user feedback and validation are emphasized.
Behavior-driven development (BDD) is a hot topic in the development community. Not only does a properly implemented BDD process help drive increased automation and quicker development cycles, it also facilitates better collaboration between departments and reduces siloed communication. An ideal partner of continuous integration/delivery, BDD can help solve many testing bottlenecks associated with DevOps. For all its benefits, BDD is underadopted. Only 10–25 percent of development organizations have implemented or are experimenting with a BDD process. Organizations are hesitant to transition to BDD from their current approach for many reasons, typically focusing on people, process, and technology changes. Kevin Dunne presents a successful framework for considering any potential roadblocks, evaluating your readiness for change, and making a seamless transition. Agile is an approach centered around continuous improvement, and Kevin provides plenty of takeaways for teams who are just learning about BDD, for teams who have undergone a stable transition—and for those teams that are somewhere in between.
The Corporate Start-Up, Scrum Methodology, Devops and eBay's 5 Minute Deals
The topic for this presentation is The Corporate Start-Up, Scrum Methodology and practices, Devops and eBay's 5 Minute Deals but more importantly is the theme of our presentation which is Standing on the Shoulders of Giants. This is a reflection of the idea that companies are well positioned to spawn new products and that these products can be more rapidly implemented through the use of Scrum and Development processes.
To support this theme we will be referencing the project that we delivered under two months for eBay called the 5 Minutes Deals project.
Most Advanced Software Testing Solution Providers of 2022.pdf
This edition features a handful of business Software Testing Solution sectors that are at the forefront of leading us into a digital future.
Read More: https://insightssuccess.com/most-advanced-software-testing-solution-providers-of-2022-november2022/
This document discusses efficient software deployment and value realization. It provides an overview of software deployment challenges, including ownership issues, organizational challenges, technical challenges, and other barriers. It emphasizes the importance of measuring both tangible and intangible returns on investment. The document also discusses IBM's software deployment method and roles, including preparing for deployment, executing the deployment plan, and measuring success. It provides endorsements from IBM executives on the importance of successful deployment.
Lightweight processes are beginning to replace more formal methods. The motivation for this transition is based on many factors. The Internet, time to market, cost reduction, quality increases, market pressures, as well as the popularization of these programming methods. This series of articles will investigate the various lightweight methods, their impact on the management of software development projects and the processes by which managers can determine the appropriateness and usefulness of
the various processes.
Becoming the Docker Champion: Bringing Docker Back to Work
This document provides tips for becoming a Docker champion by building an advocate team within an organization. It discusses assessing needs and scoping a Docker project. Common hurdles for getting different teams like app development, IT operations, and security on board are outlined. Tips from other customers are provided for each team. The document then discusses how Docker can help with issues like faster development and deployment, increased server density, reduced maintenance time, and security. Specific products in Docker Enterprise Edition are highlighted for providing a common platform and reducing risks. Metrics for measuring before and after a Docker implementation are suggested.
Traditional business intelligence solutions are costly, complex, and fall short of enabling organizations to achieve their goals of improved efficiency and effectiveness. They focus only on reporting and analysis of key performance indicators, rather than integrating with business processes to drive changes. Open source solutions are needed that are less expensive, more customizable, and that integrate business intelligence with workflow and process management to address business problems as complete solutions.
This document discusses productivity improvement initiatives in the software industry. It examines challenges in measuring software productivity, including why it should be measured, who should collect data, and what should be measured. Some key factors that affect productivity are identified, such as product characteristics, the development process, and work environment settings. Approaches like Lean are presented as ways to eliminate waste and improve flow. A case study example demonstrates specific measures taken by a company to enhance productivity, such as process optimization and testing improvements. The conclusion is that understanding software productivity factors can help organizations implement effective initiatives to reduce costs and improve quality.
This document discusses running acceptance tests as monitors in production environments. It describes why this can be useful for failure detection, capacity planning, and gaining business insights. However, care must be taken to avoid polluting data or sending unnecessary alerts. The author demonstrates a tool called atam4j that treats acceptance tests as a microservice, similar to other applications, making them easier to deploy and monitor in production.
This document provides an overview of business process modeling notation (BPMN) and business process simulation (BPSim). It defines what BPMN and BPSim are, why they are important standards, and their current status. It also demonstrates some basic and advanced BPMN modeling concepts, and how BPSim can be used to parameterize and simulate BPMN models to analyze business processes. Key information covered includes the core elements of BPMN, an example BPMN model, how BPSim scenarios are structured, and an example of parameterizing a BPMN model with temporal values for simulation.
DevOps defines a set of roles and responsibilities focused on reducing risk in IT deployments and projects. By connecting development and operations, enterprise IT departments can begin to break down silos in order to:
- maximize automation;
- eliminate or significantly reduce human error;
- increase consistency; and
- reduce time spent on the outages, error detection and prevention caused by unstable environments
Gunnar Menzel, President of ODCA, Chief Architect of Capgemini Infra, outlines the ODCA perspective on the DevOps concept, focusing on key challenges it can help resolve and the benefits it can provide.
Download the white paper today http://opendatacenteralliance.org/article/devops-magnifying-business-value/
The document summarizes a presentation given by Tom Humbarger from iRise on business analysis. It discusses what business analysts do, including analyzing problems, understanding business needs, communicating effectively, and more. It also covers requirements management challenges like defects caused by poor requirements and the importance of early user involvement through testing. Different requirements documentation approaches are briefly outlined.
To help you choose the best DiskWarrior alternative, we've compiled a comparison table summarizing the features, pros, cons, and pricing of six alternatives.
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
Cybersecurity is a major concern in today's connected digital world. Threats to organizations are constantly evolving and have the potential to compromise sensitive information, disrupt operations, and lead to significant financial losses. Traditional cybersecurity techniques often fall short against modern attackers. Therefore, advanced techniques for cyber security analysis and anomaly detection are essential for protecting digital assets. This blog explores these cutting-edge methods, providing a comprehensive overview of their application and importance.
The integration of programming into civil engineering is transforming the industry. We can design complex infrastructure projects and analyse large datasets. Imagine revolutionizing the way we build our cities and infrastructure, all by the power of coding. Programming skills are no longer just a bonus—they’re a game changer in this era.
Technology is revolutionizing civil engineering by integrating advanced tools and techniques. Programming allows for the automation of repetitive tasks, enhancing the accuracy of designs, simulations, and analyses. With the advent of artificial intelligence and machine learning, engineers can now predict structural behaviors under various conditions, optimize material usage, and improve project planning.
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
Six months into 2024, and it is clear the privacy ecosystem takes no days off!! Regulators continue to implement and enforce new regulations, businesses strive to meet requirements, and technology advances like AI have privacy professionals scratching their heads about managing risk.
What can we learn about the first six months of data privacy trends and events in 2024? How should this inform your privacy program management for the rest of the year?
Join TrustArc, Goodwin, and Snyk privacy experts as they discuss the changes we’ve seen in the first half of 2024 and gain insight into the concrete, actionable steps you can take to up-level your privacy program in the second half of the year.
This webinar will review:
- Key changes to privacy regulations in 2024
- Key themes in privacy and data governance in 2024
- How to maximize your privacy program in the second half of 2024
These fighter aircraft have uses outside of traditional combat situations. They are essential in defending India's territorial integrity, averting dangers, and delivering aid to those in need during natural calamities. Additionally, the IAF improves its interoperability and fortifies international military alliances by working together and conducting joint exercises with other air forces.
Kief Morris rethinks the infrastructure code delivery lifecycle, advocating for a shift towards composable infrastructure systems. We should shift to designing around deployable components rather than code modules, use more useful levels of abstraction, and drive design and deployment from applications rather than bottom-up, monolithic architecture and delivery.
Mitigating the Impact of State Management in Cloud Stream Processing Systems
Stream processing is a crucial component of modern data infrastructure, but constructing an efficient and scalable stream processing system can be challenging. Decoupling compute and storage architecture has emerged as an effective solution to these challenges, but it can introduce high latency issues, especially when dealing with complex continuous queries that necessitate managing extra-large internal states.
In this talk, we focus on addressing the high latency issues associated with S3 storage in stream processing systems that employ a decoupled compute and storage architecture. We delve into the root causes of latency in this context and explore various techniques to minimize the impact of S3 latency on stream processing performance. Our proposed approach is to implement a tiered storage mechanism that leverages a blend of high-performance and low-cost storage tiers to reduce data movement between the compute and storage layers while maintaining efficient processing.
Throughout the talk, we will present experimental results that demonstrate the effectiveness of our approach in mitigating the impact of S3 latency on stream processing. By the end of the talk, attendees will have gained insights into how to optimize their stream processing systems for reduced latency and improved cost-efficiency.
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Have you noticed the OpenSSF Scorecard badges on the official Dart and Flutter repos? It's Google's way of showing that they care about security. Practices such as pinning dependencies, branch protection, required reviews, continuous integration tests etc. are measured to provide a score and accompanying badge.
You can do the same for your projects, and this presentation will show you how, with an emphasis on the unique challenges that come up when working with Dart and Flutter.
The session will provide a walkthrough of the steps involved in securing a first repository, and then what it takes to repeat that process across an organization with multiple repos. It will also look at the ongoing maintenance involved once scorecards have been implemented, and how aspects of that maintenance can be better automated to minimize toil.
Sustainability requires ingenuity and stewardship. Did you know Pigging Solutions pigging systems help you achieve your sustainable manufacturing goals AND provide rapid return on investment.
How? Our systems recover over 99% of product in transfer piping. Recovering trapped product from transfer lines that would otherwise become flush-waste, means you can increase batch yields and eliminate flush waste. From raw materials to finished product, if you can pump it, we can pig it.
Measuring the Impact of Network Latency at Twitter
Widya Salim and Victor Ma will outline the causal impact analysis, framework, and key learnings used to quantify the impact of reducing Twitter's network latency.
Transcript: Details of description part II: Describing images in practice - T...
This presentation explores the practical application of image description techniques. Familiar guidelines will be demonstrated in practice, and descriptions will be developed “live”! If you have learned a lot about the theory of image description techniques but want to feel more confident putting them into practice, this is the presentation for you. There will be useful, actionable information for everyone, whether you are working with authors, colleagues, alone, or leveraging AI as a collaborator.
Link to presentation recording and slides: https://bnctechforum.ca/sessions/details-of-description-part-ii-describing-images-in-practice/
Presented by BookNet Canada on June 25, 2024, with support from the Department of Canadian Heritage.
We are honored to launch and host this event for our UiPath Polish Community, with the help of our partners - Proservartner!
We certainly hope we have managed to spike your interest in the subjects to be presented and the incredible networking opportunities at hand, too!
Check out our proposed agenda below 👇👇
08:30 ☕ Welcome coffee (30')
09:00 Opening note/ Intro to UiPath Community (10')
Cristina Vidu, Global Manager, Marketing Community @UiPath
Dawid Kot, Digital Transformation Lead @Proservartner
09:10 Cloud migration - Proservartner & DOVISTA case study (30')
Marcin Drozdowski, Automation CoE Manager @DOVISTA
Pawel Kamiński, RPA developer @DOVISTA
Mikolaj Zielinski, UiPath MVP, Senior Solutions Engineer @Proservartner
09:40 From bottlenecks to breakthroughs: Citizen Development in action (25')
Pawel Poplawski, Director, Improvement and Automation @McCormick & Company
Michał Cieślak, Senior Manager, Automation Programs @McCormick & Company
10:05 Next-level bots: API integration in UiPath Studio (30')
Mikolaj Zielinski, UiPath MVP, Senior Solutions Engineer @Proservartner
10:35 ☕ Coffee Break (15')
10:50 Document Understanding with my RPA Companion (45')
Ewa Gruszka, Enterprise Sales Specialist, AI & ML @UiPath
11:35 Power up your Robots: GenAI and GPT in REFramework (45')
Krzysztof Karaszewski, Global RPA Product Manager
12:20 🍕 Lunch Break (1hr)
13:20 From Concept to Quality: UiPath Test Suite for AI-powered Knowledge Bots (30')
Kamil Miśko, UiPath MVP, Senior RPA Developer @Zurich Insurance
13:50 Communications Mining - focus on AI capabilities (30')
Thomasz Wierzbicki, Business Analyst @Office Samurai
14:20 Polish MVP panel: Insights on MVP award achievements and career profiling
An invited talk given by Mark Billinghurst on Research Directions for Cross Reality Interfaces. This was given on July 2nd 2024 as part of the 2024 Summer School on Cross Reality in Hagenberg, Austria (July 1st - 7th)
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
Your comprehensive guide to RPA in healthcare for 2024. Explore the benefits, use cases, and emerging trends of robotic process automation. Understand the challenges and prepare for the future of healthcare automation
How Social Media Hackers Help You to See Your Wife's Message.pdf
In the modern digital era, social media platforms have become integral to our daily lives. These platforms, including Facebook, Instagram, WhatsApp, and Snapchat, offer countless ways to connect, share, and communicate.
Cloud Scars: Lessons from the Enterprise PioneersDave Roberts
Cloud computing is revolutionizing the IT market. But if you aren't careful, you're cloud project can end in disaster. This presentation gathers some lessons learned by the early adopters, so you can avoid their mistakes and double-down on their successes.
TAPUniversity Use Cases / RUP for Vendor SelectionDave Kohrell
This document describes a three-step process used by a government project to evaluate vendor proposals and select a solution during the Inception phase of an RUP project. Step one involved evaluating vendor written proposals using a standardized evaluation guide with weighted questions derived from use cases. Step two consisted of on-site vendor demonstrations evaluated using the same guide. Step three was finalizing contract discussions and signing with the selected vendor. By basing the evaluation on requirements gathered during Inception, the process ensured the selected solution accurately met needs and could withstand scrutiny.
White paper quality at the speed of digitalrajni singh
Our modern testing practices help speed up the current scope of quality assurance with help of a cognitive approach. Here is the link to download my published whitepaper on "Quality at the Speed of Digital" https://www.nagarro.com/qa-at-the-speed-of-digital #qualityassurance
Agilität ist in aller Munde – von den einen abgöttisch geliebt und es soll noch andere geben, die sie nicht so gerne mögen. Jedem das Seine. Doch wie sieht die agile Landschaft in der Schweizer IT Community aus? Laden Sie die Agile Trends & Benchmarks 2012 herunter ziehen Sie Ihre eigenen Schlüsse daraus.
Stephanie WroteA lean organization understands customer value a.docxrjoseph5
Stephanie Wrote:
A lean organization understands customer value and focuses its key processes to continuously increase it. The ultimate goal is to provide perfect value to the customer through a perfect value creation process that has zero waste.
To accomplish this, lean thinking changes the focus of management from optimizing separate technologies, assets, and vertical departments to optimizing the flow of products and services through entire value streams that flow horizontally across technologies, assets, and departments to customers.
Eliminating waste along entire value streams, instead of at isolated points, creates processes that need less human effort, less space, less capital, and less time to make products and services at far less costs and with much fewer defects, compared with traditional business systems. Companies are able to respond to changing customer desires with high variety, high quality, low cost, and with very fast throughput times. Also, information management becomes much simpler and more accurate.
A popular misconception is that lean is suited only for manufacturing. Not true. Lean applies in every business and every process. It is not a tactic or a cost reduction program, but a way of thinking and acting for an entire organization.
The term "lean" was coined to describe Toyota's business during the late 1980s by a research team headed by Jim Womack, Ph.D., at MIT's International Motor Vehicle Program.
Mary Wrote:
· What is the lean concept and why is it important to study?
With fewer resources lean creates more value for customers. The idea of maximizing customer value while minimizing waste. Lean is important to study because there are so many benefits such as through lean there is a cost benefit. we can increase quality and reliability. Reduce operating costs, boost staff productivity and reduce the length of production cycles.
· How can lean be applied to manufacturing and service processes?
TOYOTA is the best example of a company that use lean processes and implement them. Toyota is the first major company to use lean ideology in their manufacturing processes. They have eliminated wasted and using techniques to get rid of faulty products that do not interest the customers. They use two processes, one is Jidoka and the other one is JIT or just in time. Jidoka is used to check the quality of the product and can stop the machines themselves down when there is an error. JIT/ just in time leads to the next step once the previous step is finished.
https://www.lean.org/whatslean/
https://refinedimpact.com/4-good-examples-of-companies-that-use-lean-manufacturing/
Project Management
Processes, Methodologies, and Economics
Third Edition
Avraham Shtub
Faculty of Industrial Engineering and Management
The Technion–Israel Institute of Technology
Moshe Rosenwein
Department of Industrial Engineering and Operations Research
Columbia University
Boston Columbus San Francisco New York Hoboken
Indianapolis London Tor.
This document provides an overview of how human-computer interaction (HCI) affects the software development process. It discusses how usability engineering promotes interactive system design and the software life cycle. The software life cycle involves requirements specification, design, implementation, testing, and maintenance. Iterative design and prototyping are important to overcome the limitations of traditional software development models. Usability metrics and standards help specify and test usability requirements. While iterative design has benefits, initial design decisions and a lack of understanding problems can limit its effectiveness.
The document discusses strategies for effectively planning and implementing Aras Innovator. It recommends using an iterative approach divided into phases of inception, elaboration, construction, and transition. Key activities include developing requirements and use cases, creating visual and behavioral prototypes, testing in iterations, and training users for transition to production. Regular releases for user feedback and validation are emphasized.
Making the Move to Behavior-Driven DevelopmentTechWell
Behavior-driven development (BDD) is a hot topic in the development community. Not only does a properly implemented BDD process help drive increased automation and quicker development cycles, it also facilitates better collaboration between departments and reduces siloed communication. An ideal partner of continuous integration/delivery, BDD can help solve many testing bottlenecks associated with DevOps. For all its benefits, BDD is underadopted. Only 10–25 percent of development organizations have implemented or are experimenting with a BDD process. Organizations are hesitant to transition to BDD from their current approach for many reasons, typically focusing on people, process, and technology changes. Kevin Dunne presents a successful framework for considering any potential roadblocks, evaluating your readiness for change, and making a seamless transition. Agile is an approach centered around continuous improvement, and Kevin provides plenty of takeaways for teams who are just learning about BDD, for teams who have undergone a stable transition—and for those teams that are somewhere in between.
The Corporate Start-Up, Scrum Methodology, Devops and eBay's 5 Minute Deals GLiNTECH
The topic for this presentation is The Corporate Start-Up, Scrum Methodology and practices, Devops and eBay's 5 Minute Deals but more importantly is the theme of our presentation which is Standing on the Shoulders of Giants. This is a reflection of the idea that companies are well positioned to spawn new products and that these products can be more rapidly implemented through the use of Scrum and Development processes.
To support this theme we will be referencing the project that we delivered under two months for eBay called the 5 Minutes Deals project.
Most Advanced Software Testing Solution Providers of 2022.pdfInsightsSuccess4
This edition features a handful of business Software Testing Solution sectors that are at the forefront of leading us into a digital future.
Read More: https://insightssuccess.com/most-advanced-software-testing-solution-providers-of-2022-november2022/
This document discusses efficient software deployment and value realization. It provides an overview of software deployment challenges, including ownership issues, organizational challenges, technical challenges, and other barriers. It emphasizes the importance of measuring both tangible and intangible returns on investment. The document also discusses IBM's software deployment method and roles, including preparing for deployment, executing the deployment plan, and measuring success. It provides endorsements from IBM executives on the importance of successful deployment.
Lightweight processes are beginning to replace more formal methods. The motivation for this transition is based on many factors. The Internet, time to market, cost reduction, quality increases, market pressures, as well as the popularization of these programming methods. This series of articles will investigate the various lightweight methods, their impact on the management of software development projects and the processes by which managers can determine the appropriateness and usefulness of
the various processes.
Becoming the Docker Champion: Bringing Docker Back to WorkDocker, Inc.
This document provides tips for becoming a Docker champion by building an advocate team within an organization. It discusses assessing needs and scoping a Docker project. Common hurdles for getting different teams like app development, IT operations, and security on board are outlined. Tips from other customers are provided for each team. The document then discusses how Docker can help with issues like faster development and deployment, increased server density, reduced maintenance time, and security. Specific products in Docker Enterprise Edition are highlighted for providing a common platform and reducing risks. Metrics for measuring before and after a Docker implementation are suggested.
Traditional business intelligence solutions are costly, complex, and fall short of enabling organizations to achieve their goals of improved efficiency and effectiveness. They focus only on reporting and analysis of key performance indicators, rather than integrating with business processes to drive changes. Open source solutions are needed that are less expensive, more customizable, and that integrate business intelligence with workflow and process management to address business problems as complete solutions.
This document discusses productivity improvement initiatives in the software industry. It examines challenges in measuring software productivity, including why it should be measured, who should collect data, and what should be measured. Some key factors that affect productivity are identified, such as product characteristics, the development process, and work environment settings. Approaches like Lean are presented as ways to eliminate waste and improve flow. A case study example demonstrates specific measures taken by a company to enhance productivity, such as process optimization and testing improvements. The conclusion is that understanding software productivity factors can help organizations implement effective initiatives to reduce costs and improve quality.
This document discusses running acceptance tests as monitors in production environments. It describes why this can be useful for failure detection, capacity planning, and gaining business insights. However, care must be taken to avoid polluting data or sending unnecessary alerts. The author demonstrates a tool called atam4j that treats acceptance tests as a microservice, similar to other applications, making them easier to deploy and monitor in production.
This document provides an overview of business process modeling notation (BPMN) and business process simulation (BPSim). It defines what BPMN and BPSim are, why they are important standards, and their current status. It also demonstrates some basic and advanced BPMN modeling concepts, and how BPSim can be used to parameterize and simulate BPMN models to analyze business processes. Key information covered includes the core elements of BPMN, an example BPMN model, how BPSim scenarios are structured, and an example of parameterizing a BPMN model with temporal values for simulation.
DevOps defines a set of roles and responsibilities focused on reducing risk in IT deployments and projects. By connecting development and operations, enterprise IT departments can begin to break down silos in order to:
- maximize automation;
- eliminate or significantly reduce human error;
- increase consistency; and
- reduce time spent on the outages, error detection and prevention caused by unstable environments
Gunnar Menzel, President of ODCA, Chief Architect of Capgemini Infra, outlines the ODCA perspective on the DevOps concept, focusing on key challenges it can help resolve and the benefits it can provide.
Download the white paper today http://opendatacenteralliance.org/article/devops-magnifying-business-value/
Neumont Presentation to Roles Class - 050108Tom Humbarger
The document summarizes a presentation given by Tom Humbarger from iRise on business analysis. It discusses what business analysts do, including analyzing problems, understanding business needs, communicating effectively, and more. It also covers requirements management challenges like defects caused by poor requirements and the importance of early user involvement through testing. Different requirements documentation approaches are briefly outlined.
Similar to Acceptance test engineering guide vol i rc1 full 102609 (20)
Comparison Table of DiskWarrior Alternatives.pdfAndrey Yasko
To help you choose the best DiskWarrior alternative, we've compiled a comparison table summarizing the features, pros, cons, and pricing of six alternatives.
Advanced Techniques for Cyber Security Analysis and Anomaly DetectionBert Blevins
Cybersecurity is a major concern in today's connected digital world. Threats to organizations are constantly evolving and have the potential to compromise sensitive information, disrupt operations, and lead to significant financial losses. Traditional cybersecurity techniques often fall short against modern attackers. Therefore, advanced techniques for cyber security analysis and anomaly detection are essential for protecting digital assets. This blog explores these cutting-edge methods, providing a comprehensive overview of their application and importance.
Best Programming Language for Civil EngineersAwais Yaseen
The integration of programming into civil engineering is transforming the industry. We can design complex infrastructure projects and analyse large datasets. Imagine revolutionizing the way we build our cities and infrastructure, all by the power of coding. Programming skills are no longer just a bonus—they’re a game changer in this era.
Technology is revolutionizing civil engineering by integrating advanced tools and techniques. Programming allows for the automation of repetitive tasks, enhancing the accuracy of designs, simulations, and analyses. With the advent of artificial intelligence and machine learning, engineers can now predict structural behaviors under various conditions, optimize material usage, and improve project planning.
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-InTrustArc
Six months into 2024, and it is clear the privacy ecosystem takes no days off!! Regulators continue to implement and enforce new regulations, businesses strive to meet requirements, and technology advances like AI have privacy professionals scratching their heads about managing risk.
What can we learn about the first six months of data privacy trends and events in 2024? How should this inform your privacy program management for the rest of the year?
Join TrustArc, Goodwin, and Snyk privacy experts as they discuss the changes we’ve seen in the first half of 2024 and gain insight into the concrete, actionable steps you can take to up-level your privacy program in the second half of the year.
This webinar will review:
- Key changes to privacy regulations in 2024
- Key themes in privacy and data governance in 2024
- How to maximize your privacy program in the second half of 2024
INDIAN AIR FORCE FIGHTER PLANES LIST.pdfjackson110191
These fighter aircraft have uses outside of traditional combat situations. They are essential in defending India's territorial integrity, averting dangers, and delivering aid to those in need during natural calamities. Additionally, the IAF improves its interoperability and fortifies international military alliances by working together and conducting joint exercises with other air forces.
Kief Morris rethinks the infrastructure code delivery lifecycle, advocating for a shift towards composable infrastructure systems. We should shift to designing around deployable components rather than code modules, use more useful levels of abstraction, and drive design and deployment from applications rather than bottom-up, monolithic architecture and delivery.
Mitigating the Impact of State Management in Cloud Stream Processing SystemsScyllaDB
Stream processing is a crucial component of modern data infrastructure, but constructing an efficient and scalable stream processing system can be challenging. Decoupling compute and storage architecture has emerged as an effective solution to these challenges, but it can introduce high latency issues, especially when dealing with complex continuous queries that necessitate managing extra-large internal states.
In this talk, we focus on addressing the high latency issues associated with S3 storage in stream processing systems that employ a decoupled compute and storage architecture. We delve into the root causes of latency in this context and explore various techniques to minimize the impact of S3 latency on stream processing performance. Our proposed approach is to implement a tiered storage mechanism that leverages a blend of high-performance and low-cost storage tiers to reduce data movement between the compute and storage layers while maintaining efficient processing.
Throughout the talk, we will present experimental results that demonstrate the effectiveness of our approach in mitigating the impact of S3 latency on stream processing. By the end of the talk, attendees will have gained insights into how to optimize their stream processing systems for reduced latency and improved cost-efficiency.
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Chris Swan
Have you noticed the OpenSSF Scorecard badges on the official Dart and Flutter repos? It's Google's way of showing that they care about security. Practices such as pinning dependencies, branch protection, required reviews, continuous integration tests etc. are measured to provide a score and accompanying badge.
You can do the same for your projects, and this presentation will show you how, with an emphasis on the unique challenges that come up when working with Dart and Flutter.
The session will provide a walkthrough of the steps involved in securing a first repository, and then what it takes to repeat that process across an organization with multiple repos. It will also look at the ongoing maintenance involved once scorecards have been implemented, and how aspects of that maintenance can be better automated to minimize toil.
Sustainability requires ingenuity and stewardship. Did you know Pigging Solutions pigging systems help you achieve your sustainable manufacturing goals AND provide rapid return on investment.
How? Our systems recover over 99% of product in transfer piping. Recovering trapped product from transfer lines that would otherwise become flush-waste, means you can increase batch yields and eliminate flush waste. From raw materials to finished product, if you can pump it, we can pig it.
Measuring the Impact of Network Latency at TwitterScyllaDB
Widya Salim and Victor Ma will outline the causal impact analysis, framework, and key learnings used to quantify the impact of reducing Twitter's network latency.
Transcript: Details of description part II: Describing images in practice - T...BookNet Canada
This presentation explores the practical application of image description techniques. Familiar guidelines will be demonstrated in practice, and descriptions will be developed “live”! If you have learned a lot about the theory of image description techniques but want to feel more confident putting them into practice, this is the presentation for you. There will be useful, actionable information for everyone, whether you are working with authors, colleagues, alone, or leveraging AI as a collaborator.
Link to presentation recording and slides: https://bnctechforum.ca/sessions/details-of-description-part-ii-describing-images-in-practice/
Presented by BookNet Canada on June 25, 2024, with support from the Department of Canadian Heritage.
UiPath Community Day Kraków: Devs4Devs ConferenceUiPathCommunity
We are honored to launch and host this event for our UiPath Polish Community, with the help of our partners - Proservartner!
We certainly hope we have managed to spike your interest in the subjects to be presented and the incredible networking opportunities at hand, too!
Check out our proposed agenda below 👇👇
08:30 ☕ Welcome coffee (30')
09:00 Opening note/ Intro to UiPath Community (10')
Cristina Vidu, Global Manager, Marketing Community @UiPath
Dawid Kot, Digital Transformation Lead @Proservartner
09:10 Cloud migration - Proservartner & DOVISTA case study (30')
Marcin Drozdowski, Automation CoE Manager @DOVISTA
Pawel Kamiński, RPA developer @DOVISTA
Mikolaj Zielinski, UiPath MVP, Senior Solutions Engineer @Proservartner
09:40 From bottlenecks to breakthroughs: Citizen Development in action (25')
Pawel Poplawski, Director, Improvement and Automation @McCormick & Company
Michał Cieślak, Senior Manager, Automation Programs @McCormick & Company
10:05 Next-level bots: API integration in UiPath Studio (30')
Mikolaj Zielinski, UiPath MVP, Senior Solutions Engineer @Proservartner
10:35 ☕ Coffee Break (15')
10:50 Document Understanding with my RPA Companion (45')
Ewa Gruszka, Enterprise Sales Specialist, AI & ML @UiPath
11:35 Power up your Robots: GenAI and GPT in REFramework (45')
Krzysztof Karaszewski, Global RPA Product Manager
12:20 🍕 Lunch Break (1hr)
13:20 From Concept to Quality: UiPath Test Suite for AI-powered Knowledge Bots (30')
Kamil Miśko, UiPath MVP, Senior RPA Developer @Zurich Insurance
13:50 Communications Mining - focus on AI capabilities (30')
Thomasz Wierzbicki, Business Analyst @Office Samurai
14:20 Polish MVP panel: Insights on MVP award achievements and career profiling
An invited talk given by Mark Billinghurst on Research Directions for Cross Reality Interfaces. This was given on July 2nd 2024 as part of the 2024 Summer School on Cross Reality in Hagenberg, Austria (July 1st - 7th)
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptxSynapseIndia
Your comprehensive guide to RPA in healthcare for 2024. Explore the benefits, use cases, and emerging trends of robotic process automation. Understand the challenges and prepare for the future of healthcare automation
How Social Media Hackers Help You to See Your Wife's Message.pdfHackersList
In the modern digital era, social media platforms have become integral to our daily lives. These platforms, including Facebook, Instagram, WhatsApp, and Snapchat, offer countless ways to connect, share, and communicate.
How Social Media Hackers Help You to See Your Wife's Message.pdf
Acceptance test engineering guide vol i rc1 full 102609
1.
2.
3.
Acceptance Test
Engineering Guide
Volume I: Thinking about Acceptance
How to Decide if Software is Ready for You
and Your Customers
Grigori Melnik, Gerard Meszaros, Jon Bach
Foreword by Kent Beck
Release Candidate 1 – October 26, 2009
5.
Table of Contents
Foreword by Kent Beck 1
Preface: Acceptance Test Engineering Guide 3
Introduction 10
A Cautionary Tale 20
PART I. Thinking About Acceptance
Chapter 1 The Acceptance Process 27
Chapter 2 Elaborating on the Acceptance Process 53
Chapter 3 Decision Making Model 71
Chapter 4 Project Context Model 82
Chapter 5 Systems Requirements Model 91
Chapter 6 Risk Model 99
Chapter 7 Doneness Model 104
PART II. Perspectives on Acceptance
Chapter 8 Business Lead’s Perspective 119
Chapter 9 Product Manager’s Perspective 131
Chapter 10 Test Manager’s Perspective 138
Chapter 11 Development Manager’s Perspective 143
Chapter 12 User Experience Specialist’s Perspective 148
Chapter 13 Operations Manager’s Perspective 153
Chapter 14 Solution Architect’s Perspective 156
Chapter 15 Enterprise Architect’s Perspective 159
Chapter 16 Legal Perspective 161
PART III. Accepting Software
Chapter 17 Planning for Acceptance 166
Chapter 18 Assessing Software 190
Chapter 19 Managing the Acceptance Process 207
Chapter 20 Fine‐tuning the Acceptance Process 219
Appendices
Appendix A Organization Stereotypes and Reader Personas 231
Appendix B Key Points 237
10. – You are involved in collecting data that the person making the readiness decision requires to
make that decision. This is readiness assessment.
– You are involved in defining the expectations against which the readiness assessment or
acceptance testing activities will be conducted. This is a combination of requirements
gathering, test planning and test design.
– You are involved in managing any of the preceding activities.
This guide describes the practices used by people in the preceding roles, regardless what your job title
is. If any of them describes your role, you should find something of interest in this guide. Appendix –
Reader Personas describes our target audience in more detail. These personas are used to:
– remind the authors and reviewers of our primary target audience.
– give you, the reader a figure to empathize or associate yourself with. This should help you pick
the persona that most closely resembles your own job responsibilities.
If any of the goals depicted in Figure 1 are applicable to you, the guide and the online knowledge base
companion (TestingGuidance.codeplex.com) are for you.
Figure 1.
Reader goals and paths through the guide.
Guide Structure
This guide is structured as a four volume series (Figure 2):
Volume I provides an overview of the acceptance process and how acceptance testing and other
key practices fit into the process. This volume is intended to be read from beginning to end.
It is subdivided into three main parts:
Volume II covers Acceptance Planning and Management practices and patterns.
Volume III covers Functional Acceptance Test practices and patterns.
Acceptance Test Engineering Guide – Volume I, Release Candidate 1 4
11. Volume IV covers Operational Acceptance Test practices and patterns. Operational acceptance
includes not only performance, recoverability, availability, security but also testing of other
non‐functional requirements and qualities, such as learnability, usability, supportability,
upgradeability etc.
Figure 2.
Guide Structure.
Volume I is intended to be read as an introduction to the concepts, terms and practices described in
Volumes II‐IV. Volumes II‐IV are intended to be used as a reference; most readers will not read them
from beginning to end.
Volume I – Thinking About Acceptance consists of 3 parts:
Part I – Thinking about Acceptance explains six mental models that are useful when
thinking about the acceptance process.
Part II – Perspectives on Acceptance describes the acceptance process from the
perspectives of key stakeholders in two different kinds of organizations: the Information
Technology Department in a business and the Product Development Company. Most
Acceptance Test Engineering Guide – Volume I, Release Candidate 1 5
12. readers involved in the acceptance process should find some commonality with at least
one of the roles describes.
Part III – Accepting Software introduces the practices that are necessary for planning the
acceptance process, for performing acceptance testing and for improving the
acceptance process.
Volumes II through IV contain a collection of thumbnails and samples:
A Thumbnail is a short overview of a practice that explains what it is, when you may want to use
it, the risks that it mitigates, and an overview of how to perform the practice. Thumbnails
also include a list of references to papers, books, and other resources that provide more
complete descriptions of the practices in question. The main purpose of a thumbnail is to
describe a topic well enough to provide an overview, serve as a mental reminder for
someone who has used the practice on how to do it, and give someone unfamiliar with the
practice enough information about the practice and its applicability to determine if they
want to learn more about it. Some of these topics and practices have entire books written
about them that describe the concepts in greater detail and depth than this guide could
possibly do.
A Sample is a an artifact generated by applying different practices in a fictional but realistic
situation for the fictional company Global Bank. These artifacts are embedded in a series of
case studies of what the Global Bank team may have produced while building the
application. The case studies provide some context to the individual artifacts. They also
provide cross‐references to the thumbnails. The artifacts are intended to be used as way to
learn more about how to perform a practice; they can also be used as templates for your
own artifacts.
How to Read This Guide
The way you approach this guide will depend on what role you have and what you want to learn about
the process of accepting software. Depending on what you want to do, you will want to apply different
strategies.
Get an Overview of Acceptance Practices and Processes
Start by reading Volume I if you want to do any or all of the following:
Learn general information about acceptance testing.
Find acceptance testing practices.
Create a project plan that incorporates software acceptance.
Justify a project plan that incorporates software acceptance.
Acceptance Test Engineering Guide – Volume I, Release Candidate 1 6
13. Justify an approach used for acceptance testing.
Validate that you are on track with your acceptance testing strategy or approach.
Get your project unstuck when software is unacceptable.
Determine where there may be gaps in your acceptance testing approach or strategy.
After reading Volume I, you may want to skim particular practices of interest and the corresponding
samples in Volumes II through IV.
Decide Which Acceptance Practices to Use on Your Project
Start by reading Volume I to get an overview of possible practices, and then refer to the thumbnails in
Volumes II‐IV for specific practices you are considering. Each thumbnail includes a section titled "When
to Use It," which includes advice about when the practice should be used, and a section titled
"Limitations," which provides guidelines about when the practice should not be applied.
Learn How to Perform a Specific Acceptance Practice
Start by finding a thumbnail in Volumes II‐IV if you want to do any of the following:
Learn a specific acceptance testing practice or strategy.
Teach a specific acceptance testing practice or strategy to someone else.
Review a specific acceptance testing practice.
Find more information and related resources to consult about a particular practice.
After you locate the thumbnail for the specific practice you want to learn about, read it and any related
samples. If you need more detailed information about the practice, see the "References" section in the
thumbnail.
Get a Template for a Specific Artifact
Start by finding an sample in Volumes II‐IV if you want to do any of the following:
Find a template for a specific artifact.
Learn how to fill in a specific artifact.
Find the example you want in Volumes II‐IV, remove the sample information, and populate it
appropriately. If you need to review the practice that generated the example, the example lists all the
appropriate thumbnails in Volumes II‐IV.
Plan the Execution of the Practices on Your Project
Start by reading Volume I to get an overview of how the practices fit together and support each other. In
particular, the sections on the Acceptance Process, the Decision‐Making Model, and the Doneness
Model may be of particular interest. After that, review the specific thumbnails in Volumes II‐IV, paying
Acceptance Test Engineering Guide – Volume I, Release Candidate 1 7
18.
The Key Mental Models of Acceptance
These models are the focus of Part I – Thinking about Acceptance but here’s a short introduction to each
model to get us started:
The Acceptance Process Model. This model defines the overall stages of software development
and the "gates" that must be passed through on the journey from construction to software‐
in‐use.
Decision‐Making Model. This model describes how to decide whether software can go through a
gate to the next stage and who makes the decision. It also defines the supporting roles that
may help the decision maker gather the information needed to make the decision.
Project Context Model. This model describes the business and project factors that influence the
decision, including timeframes and deadlines, resource availability, budget, and anything
contributing to project risks.
System Model. This model describes the attributes of the software‐intensive system that may
factor into the decision. This includes both functional and non‐functional attributes. The
system model may arise out of requirements gathering activities or a more formal product
design process. Techniques for capturing functional requirements include simple prose, use
case models, protocol specifications and feature lists. The non‐functional requirements are
typically captured in documents or checklists.
Risk Model. This model introduces the concepts of events, likelihood/probability, and
consequence/impact. It helps everyone involved understand what could go wrong and,
thereby, prioritize the acceptance criteria and the kinds of information to gather to help
make the acceptance decision. It also describes several different risk mitigation strategies,
including the following:
Do something earlier to buy reaction time.
Do additional activities to reduce likelihood of something occurring.
Doneness Model. This model describes different dimensions of “doneness” that need to be
considered in a release decision and how they are affected by the process model.
The chapters in Part III – Accepting Software introduce other models that build on this core model:
Test Lifecycle Model. This describes the stages that an individual test case goes through how to
gather information for making readiness and acceptance decisions.
Concern Resolution Model. This describes how to handle any concerns that are raised during the
acceptance testing process.
Acceptance Test Engineering Guide – Volume I, Release Candidate 1 12
20. Incremental Waterfall
It is commonly accepted that the longer a project goes before delivering software, the higher the
probability of failure. If the context or requirements change before the project is completed, the pure
waterfall cannot succeed. One way to combat this is to break the project into increments of
functionality. These increments can be tested and in some cases even deployed. Figure 3a illustrates a
waterfall project with two increments of independent functionality each of which is tested and
deployed. This type of project is also called checkpointed waterfall).
time
Requirements
Dply
Test
Archiecture
High-Level
Construction
Functionality
& Design
Planning
Analysis
Dplyt
Test
Construction
Figure 3a
Multi‐release waterfall with independent functionality
In this approach, the planning phase, requirements analysis phase, and design phase are performed
once early in the project while the construction phase, test phase, and deployment phase are repeated
several times. The work within each phase is decomposed the same way as for single‐release projects. If
the functionality built in the second release overlaps the functionality in the first release, the testing and
deployment must encompass the entire functionality. Figure 3b illustrates multiple releases with
overlapping functionality. Note how the test activity must span the functionality of both releases.
Figure 3b
Multi‐release waterfall with overlapping functionality
In the multi‐release waterfall process, sometimes the test phase of the a release may overlap with the
construction phase of the subsequent release if the construction and testing teams are separate and
features across the the two releases are sufficiently independent.
Acceptance Test Engineering Guide – Volume I, Release Candidate 1 14
21.
Agile Processes
Most agile methods use an iterative and incremental approach to development. After an initial planning
period, the project duration is broken into development iterations that deliver increments of working
software. Figure 4 illustrates a project with two iterations; most projects would have many more
iterations than this.
Figure 4
Iterative & Incremental Development
Figure 4 illustrates two iterations, each of which starts with an iteration planning session and ends with
some acceptance testing. In each iteration the work is broken down into features or user stories, each
of which independently goes through the entire software development life cycle. The product owner,
“onsite customer” or customer proxy, who is readily accessible to the Product Development Team, is
responsible for describing the details of the requirements to the developers. It is also the product
owner’s responsibility to define the acceptance tests for each feature or user story. They may prepare
the tests themselves, delegate the job to requirements or test specialists within th Product Owner Team
or prepare them in collaboration with the Product Development Team. The tests act as a more detailed
version of the requirements description in a process known as “Acceptance Test Driven Development”
or “Storytest‐Driven Development.” This allows the developers to execute the acceptance tests during
the development cycle.
When all the tests pass for a particular feature or user story, the developers turn over the functionality
to the product owner (or proxy) for immediate "incremental acceptance testing." If the product owner
finds any bugs, the developer fixes it as soon as possible. It is the Product Owner’s discretion to insist
that it be fixed right away or to consider it part of another feature to be implemented in a later
iteration. If they want it fixed and the developer has already started working on another feature, the
developer typically puts the other feature on hold while they address the Product Owner’s concerns; the
Acceptance Test Engineering Guide – Volume I, Release Candidate 1 15
23.
Figure 6
Kanban‐based Agile Process
In the example, it is important to note here that there are never more than three features (in this
example, one udergoing design, a second undergoing construction, and athird undergoing testing) in
progress at any one time. In other words, there are only three development "slots," and a slot becomes
available for another feature only after it has finished its incremental acceptance testing. This is similar
to how Kanban are used to control the inventory in lean factory production lines. In theory, the product
owner can decide at any time that there is enough functionality to warrant deploying the product
following a short period of regression testing.
Kanban‐based software proceses [Scrumban] are implementations of a more general philosophy known
as Lean software development [LSD].
Process as a Continuum
"Agile" and "waterfall" are examples of two high‐level project streotypes consisting of certain
combinations of characteristics. It is easy to imagine the decision on each of these characteristics as
being the setting of a process “slider control”. For example, the “Number of releases” slider might have
stops at 1, 2, 3, and so on. The “Number of iterations” slider could have values of 1 and so on, which
indicate whether there are intermediate checkpoints within a release. The “Maximum number of
features in progress” slider similarly may take on values depending on the number of development slots
available in a Kanban‐based system. Another dimension might be ”Integration frequency”, with settings
of Big Bang, Major Milestone, Quarterly, Monthly, Biweekly, Weekly, Daily, and Continuous.
The following table summarizes the positions of these sliders for what is considered to be a stereotypical
project of each kind. These positions are not definitive or complete, but they challenge you to create
your own sliders and settings for your context.
Acceptance Test Engineering Guide – Volume I, Release Candidate 1 17
24. Type of Process
Classic Incremental Agile (Iteration) Agile (Kanban)
Project Attributes Waterfall Waterfall
Number of releases 1 1 2 or more 2 or more
Number of iterations 1 2–6 4 or more 1
Iteration length Not applicable Many months 1-4 weeks Not applicable
Maximum number of No maximum No maximum 1 iteration’s worth Less than the
features in progress number of
team members
Integration frequency Big Bang Quarterly Daily or hourly Daily or hourly
Requirement-to-test Months or years Months Days Days
duration
Test timing Separate phase Separate phase Mostly incremental Mostly
incremental
Release criteria Scope-based Scope-based Time-boxed Time-boxed
Average Requirement task Person months Person months Person days Person days
effort
Average development task Person days or Person days or Person hours Person hours
effort weeks weeks
Culture Hierarchical Hierarchical Collaborative Collaborative
Skills Highly Highly Generalists Generalists or
specialized specialized Specialists
Determining progress Work Work completed Delivery of working Delivery of
completed relative to plan code working code
relative to plan
Work remaining Estimate Estimate Estimated time for Estimated time
duration of duration of remaining features for remaining
remaining tasks remaining tasks features
Acceptance Test Engineering Guide – Volume I, Release Candidate 1 18
25.
References
[Royce] Winston W. Royce, “Managing the Development of Large Software Systems“, Proceedings of
IEEE WESCON, Aughust 1970, pp 1‐9.
[Kanban] Kenji Hiranabe, “Kanban Applied to Software Development: from Agile to Lean”, published
online at <http://www.infoq.com/articles/hiranabe‐lean‐agile‐kanban>, January 14, 2008
[LSD] Poppendieck, Mary & Tom “Lean Software Development” Addison Wesley (2003) ISBN: 0‐32‐
115078‐3
[Scrumban] Corey Ladas, “Scrumban: Essays on Kanban Systems for Lean Development,” Modus
Cooperandi Press, 2008
Acceptance Test Engineering Guide – Volume I, Release Candidate 1 19
29. 6. The quality was awful when delivered to Test. So it had to be redone (we never have time to do
it right but we always make time to do it over!)
7. Test was asked to recover the schedule (typical!) but testing took longer because the poor
quality code required more test&fix cycles to get it into shape.
8. No clear definition of “done” so decision is made on the fly when emotions get in the way of
clear thinking. The product manager let his attachement to his commitments override any
sensibility about quality.
9. The operations acceptance criteria were never solicited and by the time they were known it was
too late to address them.
10. Sequential process hid true progress (velocity) until it was too late to recover. There was no way
to scale back functionality by the time it became undeniable that it won’t all be done on time.
There was no way to reduce scope to fit the timeline because the sequential‐style approach to
the project plan (Requirements Complete, Design Complete, Code Complete, Testing Complete
milestones) caused all features to be at roughly the same stage of development. Therefore
cutting any scope would result in a large waste of effort and very little savings of elapsed time.
(Only the effort of bug fixing would have been saved.)
11. Development was rushed in fixing the Sev 1 problems so that testing could get through at least
one full test cycle. This caused them to make mistakes and introduce regression bugs. It took
several test&fix cycles just to fix the original Sev 1&2’s and the resulting regression bugs. In the
meantime the Sev 3’s piled up and up and up. This resulted in several more test&fix cycles to fix
and even then more than half were still outstanding.
12. Lack of planning for the usage phase of the project resulted in a poor customer support
experience which exacerbated the poor product quality.
How it Could Have Gone
Bob, the product manager comes to product development team with requirements that are
representative of the customers’ expectations.
Dev team estimates requirements as being 50% over teams capability based on demonstrated
development velocity. The product manager is not happy about this. Dev team proposes incremental
development & acceptance testing. Instead of 4 sequential milestones based on phases of development
they suggest 4 incremental internal releases of functionality where each increment can be tested
properly. This will allow them to determine their development capacity (or“velocity”) which will help
the product manager plan subsequent milestones more accurately.
Bob selects first increment of functionality to develop. With the help of the dev team he defines the
usage model consisting of user personas and tasks. The Dev team whips up some sketches or paper
prototypes and helps Bob run some Wizard of Oz tests on the paper prototypes that reveal some
usability issues. Bob adjusts the requirements and dev team adjusts the UI design. Bob, the product
Acceptance Test Engineering Guide – Volume I, Release Candidate 1 23
33.
Chapter 1 The Acceptance Process
This chapter defines the process by which software is deemed acceptable by the Product Owner. It
introduces the three major constituencies who must make decisions at key points in the process and how
these decisions relate to, and influence, each other. We start by drilling into the Accept phase of the
software development lifecycle to examine the key decisions and how release candidates flow through
the process. Then we examine how more complex scenarios such as multiple releases, complex
organizations and complex products influence the process. Sidebars examine how the decision process
relates to Stage‐Gate processes and Quality Gates. We finish this chapter with techniques for
streamlining the acceptance process. Subsequent chapters describe the roles and responsibilities of
various parties involved in making the decisions and how this process ports from sequential to highly
iterative and incremental agile projects.
1.1 Acceptance as Part of the Product Development Lifecycle
Software‐intensive systems go through a number of stages on their journey from concept, a half‐formed
idea in someone’s mind, to providing value to its users. This process is illustrated in Figure 1A Sequential
Product Development Lifecycle with the stages placed into “swim lanes” [OMGOnSwimlanes] based on
which party has primary responsibility for the stage.
Acceptance Test Engineering Guide – Volume I, Release Candidate 1 27
34.
Fi
igure 1A
A Sequential P
Product Develo
opment Lifecy
ycle
A common scenario is for a busines ss person to hhave an idea f for how to solve a business problem with
software; this is the co
oncept. The business perso on (herein callled the Produ uct Owner) ellaborate on th he
concept to produce a s specification of the produc ct that once bbuilt will deliv
ver value. The
e Product
Developm ment Team bu uilds software
e to satisfy the
e specification even thoug gh focussing o
on the
specification instead of customer saatisfaction ma ay often lead to the wrong g‐product‐buiilt phenomen non.
The Produuct Owner the how well it satisfies the needs of the int
en assesses h tended users and if satisfie
ed,
accepts th
he software. W When the sof ftware is deemed acceptable, the softw ware is made available to tthe
users whoo then use the e software to ntended value that solves the originally
o realize the in y identified
business pproblem. The e Product Devvelopment Te eam is usuallyy obligated to provide supp port for a
warranty period.
duct developm
Agile prod ment process s blurr the lines between the timing and
d responsibili ities of the
Elaboratee, Build and Ac
ccept activitie
es of the prodduct development processs as illustrated
d in Figure 1BB –
An Agile P
Product Development Lifec cycle.
Acceptanc
ce Test Engineering Guide
e – Volume I, Release Cand
didate 1 28
35.
Fi
igure 1B
An Agile Produ
uct Development Lifecycle
Agile prodduct developm ment is chara acterized by fa ace‐to‐face collaboration between the Product Own ner
and the Product Development Team m. While each h has their ow
wn responsibi ilities, they do
on’t hand‐off f
artifacts b
but rather collaborate on p producing the em. The development team m is more like ely to be direcctly
involved in the elabora ation of the reequirements and product design and th he product ow wner is availaable
to assess the product a as it is being b
built rather th
han waiting foor a final acce
eptance phase of the proje ect.
Elaboratioon, Building a
and Acceptance is done inc crementally inn small chunk ks rather than n in a single p
pass.
As a result, testing the product for b both acceptance and quality assurance e starts early iin the process s,
thereby spreading the testing activi ity throughou ut the developpment lifecyc cle rather pus shing it to the
e very
end. Increemental deve elopment and d incremental, early testing g allow a lot m
more opportu unity for learn
ning
about what is truly nee eded and trul ly possible an
nd typically re
esults in produ ucts with better fitness for
purpose. See the sideb bar Using Wh hole Teams to o Build Products for more o on the motiva ation behind this.
There are erent ways to describe the role of testin
e several diffe ng and accept
tance in the d
development
lifecycle o
of a software‐ ‐intensive pro
oduct. Some o
of the well knnown models are:
tage‐Gate TM Process.
The St
The V
V Model.
Acceptanc
ce Test Engineering Guide
e – Volume I, Release Cand
didate 1 29
36.
The first is a product development process that is not specific to software‐intensive systems. It describes
how transitions between the different stages of the product development lifecycle can be managed. The
latter is a classical model specific to software development. It emphasizes equally both the front end
and back end of the product development lifecycle by explaining the relationships between different
kinds of stages and artefacts commonly associated with front‐end of the lifecycle and different types of
testing and validation activities that traditionally take place at its back end.
Sidebar: Using Whole Teams to Build Products
One of the key forms of waste in software development is handoffs between highly‐specialized roles. A
key practice in agile and lean product development is the elimination of handoffs whenever possible
through the use of the Whole Team approach. The Whole Team approach brings every skill needed to
develop the product onto a single Product Development Team which works with the Product Owner to
design the most suitable product based on the needs and constraints. The team collectively commits
to delivering increments of potentially shippable product functionality. This eliminates dependencies
between teams and allows the Product Owner to work directly with the team to design the best
possible solution to the business needs.
As an example, the Scrum method advocates the use of the Whole Team approach. Scrum proponents
claim typical improvement in productivity of 5x to 10x (500% to 1000%) [PrimaveraOnScrum,
KnibergOnScrumFromTrenches]. Including everyone needed to deliver the product on a single team
allows the team to continually improve its process by eliminating waste. Organizational boundaries do
not get in the way of this process streamlining because everyone is on the same team striving to reach
the same goal: delivering valuable product to the Product Owner.
There is an ongoing debate in the agile community whether the Product Owner is part of the team or
separate from it. There is no single answer to this question as it depends on the nature of the
organization(s) and people involved. The pragmatic answer is that there are often two levels of team
at play:
1. The Whole Team including the product owner and anyone helping them define, build and verify
the product.
2. The Product Development (sub)Team which builds the product and the Product Owner (sub)Team
which accepts the product. These two subteams must work closely together and often sit in the
same team room.
<maybe a graphic showing the two subteams and the skills which might live in each and where they
overlap>
The exact breakdown of which skills are on each subteam varies from case to case. Developers usually
belong to the Product Development Team and analysts usually belong to the Product Owner Team.
Testers, documentation writers, interaction designs may all belong to either subteam. The important
thing is that all the skills are present and accountable for working together to deliver the best possible
product with few if any external dependencies.
Acceptance Test Engineering Guide – Volume I, Release Candidate 1 30
37.
1.1.1 P
Processes w
with Stage
es and Gat
tes
Many prooduct develop pment project ts go throughh their lifecycl le by adopting an essentia
ally sequential
process to
o evolve an iddea into a depployed product. If the pro ocess’s distinc
ct stages are g
guarded by
decisions that control progression f from one stagge to another r, the process
s can be repreesented as a
stream off alternating s
stages and gates, as propoosed in the Sta age‐Gate Process™
[CooperOOnDoingItRigh ht]. The gates are associatted with go/n no‐go or scoppe change dec cisions with
associatedd resource coommitment im mplications. In a strictly se
equential proocess, the stag
ges as mutually
exclusive:
: the project c
can only be in
n one stage at t a time altho ough within aa stage many kinds of activvities
might be happening at t the same tim
me. : Figure 1c ‐ A Sequent tial Process w
with Stages an
nd Gates ‐ depicts
such a pro
ocess.
Figure 1c
with Stages an
A Sequential Process w nd Gates
Stage‐gate processes n need not be s strictly sequen
ntial [CooperOnStageGate e] in the sensee of every sta
age
and every y gate being d
distinct. An ex
xample of an iterative proc cess with stagges and gates s is the
Incremental Funding M Method (IFM) [DenneHuan ngOnIFM] whose stages an nd gates invol lve the same
activities and decisions
s that are reppeated. In conntrast to the strictly sequeential depictio
on in Figure 1
1c
and similaar to the IFM,
, the acceptan nce process tthat we descr ribe in this guide has the saame activitiess that
are execuuted across stages and dec cisions that ar
re made many y times over tthe lifetime o
of a project. F
For
example, the product d development t team may build many release candida ates for testin
ng but only a ffew
may be ac ccepted. The project could d partially be in the Deployy stage (a preevious releasee having passe ed
Acceptanc
ce Test Engineering Guide
e – Volume I, Release Cand
didate 1 31