The document discusses various quality practices in Agile, including test-first development, acceptance test-driven development, continuous integration, and defining "done". It provides details on processes like writing tests before code, executing tests with each build, and criteria for completing stories. An experiment found that while test-first development took more time initially, it resulted in higher quality code and more test cases compared to test-last development. Continuous integration helps keep all code integrated through frequent builds and supports releasing high quality code.
Introduce Test Harness for Direct To Consumer Solutions.pdfKnoldus Inc.
In this session, we are going to discuss the process of testing for direct-to-consumer solutions. Here, we are going to focus on how our test strategy should be planned and the challenges that testers encounter in testing direct-to-consumer software solutions.
Introduce Test Harness for Direct To Consumer Solutions.pdfKnoldus Inc.
In this session, we are going to discuss the process of testing for direct-to-consumer solutions. Here, we are going to focus on how our test strategy should be planned and the challenges that testers encounter in testing direct-to-consumer software solutions.
This presentation includes challenges in testing, levels of testing, best practices and policies, Test Drive Design(TDD),
Behavioral Driven Design (BDD Testing), TDD v/s BDD
Intelliware’s Chief Technologist, BC Holmes, provides a pragmatic overview of Agile testing. Complete with many examples, this presentation is ideal for those looking for a practical take on software testing in an Agile environment.
Agile Testing: A pragmatic overview and new entry in Intelliware’s Agile Methodology Series.
What you’ll learn in this presentation:
Intelliware’s Chief Technologist, BC Holmes, provides a pragmatic overview of Agile testing. Complete with many examples, this presentation is ideal for those looking for a practical take on software testing in an Agile environment.
The presentation covers:
- Why do we use Agile testing?
- What Agile testing isn’t
- What Agile testing is: unit testing and test-driven development (TDD)
- High-level properties of good tests
- Testing in different languages
- Test suites and code coverage
- Using mock objects to help isolate units
- Beyond unit testing
An Ultimate Guide to Continuous Testing in Agile Projects.pdfKMSSolutionsMarketin
As more businesses apply Continuous Integration and Continuous Delivery (CI/CD) to release their software faster, Continuous testing becomes the final piece that completes a continuous development process. By automatically testing code right after developers submit it to the repository, testers can locate bugs before another line of code is written.
Learn how to establish a greater sense of confidence in your release cycle, along with the practices and processes to create a high-performing engineering culture within your team.
1. Why are Customers adopting a Serverless-first Strategy?
AXA >> Rearchitecting with Serverless to accelerate innovation
2. Thinking Serverless >> from Business Problem to Serverless Solution ⚡
3. Getting started with Serverless for Developers
The fundamentals of AWS Cloud Security 🛠⛅️🚀Thanh Nguyen
1. Control your Cloud Infrastructure: AWS IAM
✍️ Identities that can make AWS calls
✍️ How to read and write IAM policy
2. Control your Data: AWS KMS
✍️ How AWS KMS integrates with AWS services
✍️ How to authorize access to AWS KMS keys
3. Control your Network: Amazon VPC ⛅️
✍️ How to get least-privilege connectivity
✍️ How to use your network as a security perimeter
https://datalake.aws.job4u.io/en/
You are a Data Analytics Team at Unicorn-Taxi Startup. You’ve been asked to help with the following tasks:
* Create a Dataset for Reporting and Visualization: Cleanse, Transform, Optimize for Reporting Queries
* Help solve a Machine Learning problem: Unicorn-Taxi’s Data Scientists need to understand Passenger tipping behavior
Introduction to Ethereum Blockchain & Smart ContractThanh Nguyen
The Harvard Business Review (HBR) thinks that Blockchain Technology has to power to keep data safe for consumers and businesses alike; because Blockchain provides a secure and immutable ledger, HBR says it represents the key to taking back privacy of data.
“You can keep certified copies of identity documents, biometric test results, health data, or academic and training certificates online, available at all times, yet safe unless you give away your key. At a whole system level, the database is very secure.”
The case study discusses the potential of drone delivery and the challenges that need to be addressed before it becomes widespread.
Key takeaways:
Drone delivery is in its early stages: Amazon's trial in the UK demonstrates the potential for faster deliveries, but it's still limited by regulations and technology.
Regulations are a major hurdle: Safety concerns around drone collisions with airplanes and people have led to restrictions on flight height and location.
Other challenges exist: Who will use drone delivery the most? Is it cost-effective compared to traditional delivery trucks?
Discussion questions:
Managerial challenges: Integrating drones requires planning for new infrastructure, training staff, and navigating regulations. There are also marketing and recruitment considerations specific to this technology.
External forces vary by country: Regulations, consumer acceptance, and infrastructure all differ between countries.
Demographics matter: Younger generations might be more receptive to drone delivery, while older populations might have concerns.
Stakeholders for Amazon: Customers, regulators, aviation authorities, and competitors are all stakeholders. Regulators likely hold the greatest influence as they determine the feasibility of drone delivery.
Employment PracticesRegulation and Multinational CorporationsRoopaTemkar
Employment PracticesRegulation and Multinational Corporations
Strategic decision making within MNCs constrained or determined by the implementation of laws and codes of practice and by pressure from political actors. Managers in MNCs have to make choices that are shaped by gvmt. intervention and the local economy.
Enriching engagement with ethical review processesstrikingabalance
New ethics review processes at the University of Bath. Presented at the 8th World Conference on Research Integrity by Filipa Vance, Head of Research Governance and Compliance at the University of Bath. June 2024, Athens
A presentation on mastering key management concepts across projects, products, programs, and portfolios. Whether you're an aspiring manager or looking to enhance your skills, this session will provide you with the knowledge and tools to succeed in various management roles. Learn about the distinct lifecycles, methodologies, and essential skillsets needed to thrive in today's dynamic business environment.
Public Speaking Tips to Help You Be A Strong Leader.pdfPinta Partners
In the realm of effective leadership, a multitude of skills come into play, but one stands out as both crucial and challenging: public speaking.
Public speaking transcends mere eloquence; it serves as the medium through which leaders articulate their vision, inspire action, and foster engagement. For leaders, refining public speaking skills is essential, elevating their ability to influence, persuade, and lead with resolute conviction. Here are some key tips to consider: https://joellandau.com/the-public-speaking-tips-to-help-you-be-a-stronger-leader/
Comparing Stability and Sustainability in Agile SystemsRob Healy
Copy of the presentation given at XP2024 based on a research paper.
In this paper we explain wat overwork is and the physical and mental health risks associated with it.
We then explore how overwork relates to system stability and inventory.
Finally there is a call to action for Team Leads / Scrum Masters / Managers to measure and monitor excess work for individual teams.
Senior Project and Engineering Leader Jim Smith.pdfJim Smith
I am a Project and Engineering Leader with extensive experience as a Business Operations Leader, Technical Project Manager, Engineering Manager and Operations Experience for Domestic and International companies such as Electrolux, Carrier, and Deutz. I have developed new products using Stage Gate development/MS Project/JIRA, for the pro-duction of Medical Equipment, Large Commercial Refrigeration Systems, Appliances, HVAC, and Diesel engines.
My experience includes:
Managed customized engineered refrigeration system projects with high voltage power panels from quote to ship, coordinating actions between electrical engineering, mechanical design and application engineering, purchasing, production, test, quality assurance and field installation. Managed projects $25k to $1M per project; 4-8 per month. (Hussmann refrigeration)
Successfully developed the $15-20M yearly corporate capital strategy for manufacturing, with the Executive Team and key stakeholders. Created project scope and specifications, business case, ROI, managed project plans with key personnel for nine consumer product manufacturing and distribution sites; to support the company’s strategic sales plan.
Over 15 years of experience managing and developing cost improvement projects with key Stakeholders, site Manufacturing Engineers, Mechanical Engineers, Maintenance, and facility support personnel to optimize pro-duction operations, safety, EHS, and new product development. (BioLab, Deutz, Caire)
Experience working as a Technical Manager developing new products with chemical engineers and packaging engineers to enhance and reduce the cost of retail products. I have led the activities of multiple engineering groups with diverse backgrounds.
Great experience managing the product development of products which utilize complex electrical controls, high voltage power panels, product testing, and commissioning.
Created project scope, business case, ROI for multiple capital projects to support electrotechnical assembly and CPG goods. Identified project cost, risk, success criteria, and performed equipment qualifications. (Carrier, Electrolux, Biolab, Price, Hussmann)
Created detailed projects plans using MS Project, Gant charts in excel, and updated new product development in Jira for stakeholders and project team members including critical path.
Great knowledge of ISO9001, NFPA, OSHA regulations.
User level knowledge of MRP/SAP, MS Project, Powerpoint, Visio, Mastercontrol, JIRA, Power BI and Tableau.
I appreciate your consideration, and look forward to discussing this role with you, and how I can lead your company’s growth and profitability. I can be contacted via LinkedIn via phone or E Mail.
Jim Smith
678-993-7195
jimsmith30024@gmail.com
Org Design is a core skill to be mastered by management for any successful org change.
Org Topologies™ in its essence is a two-dimensional space with 16 distinctive boxes - atomic organizational archetypes. That space helps you to plot your current operating model by positioning individuals, departments, and teams on the map. This will give a profound understanding of the performance of your value-creating organizational ecosystem.
Specific ServPoints should be tailored for restaurants in all food service segments. Your ServPoints should be the centerpiece of brand delivery training (guest service) and align with your brand position and marketing initiatives, especially in high-labor-cost conditions.
408-784-7371
Foodservice Consulting + Design
Integrity in leadership builds trust by ensuring consistency between words an...Ram V Chary
Integrity in leadership builds trust by ensuring consistency between words and actions, making leaders reliable and credible. It also ensures ethical decision-making, which fosters a positive organizational culture and promotes long-term success. #RamVChary
Integrity in leadership builds trust by ensuring consistency between words an...
PMI-ACP Lesson 06 Quality
1. Copyright 2014, Simplilearn, All rights reserved.1
PMI® & ACP are the registered marks of Project Management Institute, Inc. Copyright 2014, Simplilearn, All rights reserved.
Agile Quality
PMI®—Agile Certified Practitioner (PMI-ACP)®
2. Copyright 2014, Simplilearn, All rights reserved.2
● Explain Agile embeds quality throughout the project lifecycle
● Describe Agile Test-First Development and its processes
● Explain Agile Acceptance Test-Driven Development and its stages
● Define the criteria for Done in Agile
● Identify the best practices of Continuous Integration
After completing
this lesson, you will
be able to:
Objectives
3. Copyright 2014, Simplilearn, All rights reserved.3
Quality is defined as “conformance to requirements and fitness of use”. Quality can be broadly
classified into the following two categories:
Quality in Agile
Poor quality work results in unreliable products, but more critically, it results in products that are far
less responsive to future customer needs.!
Technical quality is intrinsic
or internal and enables
continuous delivery of value
over time.
Customer quality
Customer quality is extrinsic
or external and delivers
value in the short term.
Technical quality
4. Copyright 2014, Simplilearn, All rights reserved.4
The objective of an iteration in Agile must be to produce code that is of ‘near releasable’ or
‘potentially shippable’ quality. This requires the code to have passed through the verification and
validation steps.
Agile Frequent Verification and Validation
Verification is looking for defects in the product to analyze how it differs from intended
functionality. Product inspection and peer review can be done to test the product against the stated
requirements. Unit or statistical or system tests will be the final measure to help remove defects.
Validation is repeatedly checking with the stakeholders if the product meets their requirements.
Selected users can perform acceptance testing of ready components or UI prototypes that wire
together before writing the code pieces.
5. Copyright 2014, Simplilearn, All rights reserved.5
An iteration in agile development will produce artifacts (typically code, but could be documents)
that require verification and validation.
● For requirements and design, the verification and validation is the result of peer reviews with
team members and with the customer.
● For coding, verification and validation is done by code reviews, unit testing, and functional and
non-functional testing.
Agile Frequent Verification and Validation (contd.)
6. Copyright 2014, Simplilearn, All rights reserved.6
Test-First Development (TFD) is also known as Test-Driven
Development (TDD) or test-first programming.
● It was first introduced with Extreme Programming (XP).
● It is an evolutionary (iterative and incremental) approach to
programming where Agile software developers must first write
a test before they write code to make the test pass.
● This develops a rich collection of tests for all code developed.
● These tests are executed by the Integration Server every time a
code is compiled.
● The more tests available, the more ‘courage’ testers
(developers) have to refactor.
Test-First Development
7. Copyright 2014, Simplilearn, All rights reserved.7
The steps involved in TFD process are as
follows:
Test-First Development (contd.)
8. Copyright 2014, Simplilearn, All rights reserved.8
The advantages of TDD are as follows:
● TDD ensures developers to do detailed design just in time (JIT) before writing the code.
● It ensures that agile developers have testing code available to validate their work, ensuring that
they test as often and early as possible.
● It allows developers to refactor their code to keep it in the highest quality possible, as the test
suite will detect if they have ‘broken’ anything as the result of refactoring.
● TDD substantially reduces the incidence of defects [Janzen & Saiedian].
● It improves design, documents public interfaces, and guards against future mistakes.
Advantages of TDD
9. Copyright 2014, Simplilearn, All rights reserved.9
Acceptance Test Driven Development (ATDD) focuses on writing requirements in a testable form.
● Unit tests in TDD focus on building the code right; Acceptance Tests focus on building the right
code.
● Each requirement is expressed in terms of inputs and expected outputs.
● ATDD requirements are documented in Wiki pages that can be executed once the code is
complete.
● ATDD involves creating tests before code, and those tests represent expectations of behavior the
software should have.
● Acceptance tests are ‘black box’ tests. They test the behavior of functionality of the system.
● Unit tests are ‘white box’ test. They test the internals of the system.
Acceptance Test Driven Development
10. Copyright 2014, Simplilearn, All rights reserved.10
The ATDD Cycle comprises four stages, discuss, distill, develop, and demo.
ATDD Cycle
Demo
Discuss
Develop
Distill
● A discussion is held with the business
stakeholder, requesting the features.
● An understanding of the stakeholder
expectations is established.
● Acceptance tests in collaboration with
the stakeholder can then be created.
● The tests are captured in a format that
works with the test automation
framework.
● A variety of test automation frameworks
that support defining the tests before the
implementation: FIT, Fitnesse,
Concordian, and Robot Framework.
While implementing the code, developers
will follow the Test Driven Development
techniques of writing tests,
● watching them fail,
● write codes,
● watch the tests pass, refactor, etc.
● Acceptance tests for all the completed
stories are executed to demonstrate that
they have passed.
● Manual exploratory testing to reveal gaps
in the acceptance criteria and to discover
defects that might occur when multiple
user stories are executed in a scenario.
11. Copyright 2014, Simplilearn, All rights reserved.11
IBM team has sustained the use of TDD for five years and over ten releases of a Java-implemented
product. A set of experiments was conducted with professional programmers to validate the
effectiveness of TDD.
Experiment 1: Develop a short program in Java to automate the scoring of a bowling game.
The results of the experiment conducted are given below:
Effectiveness of TDD—Experiment
Team using TDD Technique
● Developers took 16% more time to write the tests and
then develop the code
● Passed 18% more functional black box test cases
● Developers came up with good quality automated test
cases
Team not using TDD Technique
● Developers took relatively less time to develop the code
● Passed relatively fewer black box test cases
● Developers did not write any worthwhile automated test
cases
12. Copyright 2014, Simplilearn, All rights reserved.12
TDD practice Test-last practice
Development Time and Quality
Development time Quality
Effectiveness of TDD—Experiment (contd.)
Experiment 2: To determine the effectiveness of TDD, each
practitioner was asked to complete a programming task using
both TDD practice and test-last practice, each taking
approximately 5 hours.
Result: TDD requires more development time. But the
improved quality could offset this initial increase in
development time. The test-last practice resulted in poor
quality, though the initial time taken is less.
Conclusion: Agile focusses on value delivery rather than tasks
completed. The TDD technique leads developers to design
precise and accurate test cases.
13. Copyright 2014, Simplilearn, All rights reserved.13
Every project will have its own definition of Done. It’s important for the team to agree to the
definition of Done and commit to it. Often, the definition of Done is an Information Radiator that is
posted in the team room.
Definition of ‘Done’ should include the following criteria:
● It has been tested and has passed user acceptance or client approval.
● It has passed an in-house iteration review.
● It is of a ‘shippable’ or ‘deliverable’ quality.
Definition of Done
14. Copyright 2014, Simplilearn, All rights reserved.14
Following is a sample checklist for story completion criteria. Teams must come up with their own
checklists, before marking a story ‘complete’.
Checklist for Story Completion
Story is tested.
Functional code is written.
Design is complete and refactoring is done.
Story is integrated across different components.
Story is integrated into the build system and is a
part of the build.
Story is available through the installer.
Story can be migrated if required.
Story is reviewed by stakeholders and confirmed
that it meets their requirements.
All the identified bugs have been fixed.
Customers have accepted that the story is
complete.
15. Copyright 2014, Simplilearn, All rights reserved.15
Continuous Integration is one of the twelve practices of Extreme programming.
● It is an approach that keeps all the code integrated and builds release infrastructure along with
the rest of the application.
● It can often be used as a visual information radiator by attaching lava lamps or some other
signaling device to the integration server. The red lava indicates the build is broken and the green
lava lamp means the build is successful.
Continuous Integration
16. Copyright 2014, Simplilearn, All rights reserved.16
Best practices of Continuous Integration are as follows:
Best Practices of Continuous Integration
18. Copyright 2014, Simplilearn, All rights reserved.18
QUIZ
a.
b.
c.
d.
Which of the following is not true about Test-First Development?
1
Is an evolutionary approach to programming where agile software developers must
first write a test that fails before they write new functional code.
It involves updating the functional code if the new test is passed.
It passes user acceptance or client approval.
It is also known as Test-Driven Development (TDD).
19. Copyright 2014, Simplilearn, All rights reserved.19
QUIZ
a.
b.
c.
d.
1
Answer: d.
Explanation: It passes user acceptance or client approval is the definition of ‘Done’ and not
Test-Driven Development.
Which of the following is not true about Test-First Development?
It is also known as Test-Driven Development (TDD).
Is an evolutionary approach to programming where agile software developers must
first write a test that fails before they write new functional code.
It involves updating the functional code if the new test is passed.
It passes user acceptance or client approval.
20. Copyright 2014, Simplilearn, All rights reserved.20
QUIZ
a.
b.
c.
d.
2
Distill, Develop, Discuss, Demo
Discuss, Develop, Demo, Acceptance
Develop, Distill, Demo, Acceptance
Discuss, Distill, Develop, Demo
Which of the following correctly states the components and sequence of the ATDD
cycle?
21. Copyright 2014, Simplilearn, All rights reserved.21
QUIZ
a.
b.
c.
d.
2
Answer: a.
Explanation: Discuss, Distill, Develop, and Demo are the four stages in the ATDD cycle.
Which of the following correctly states the components and sequence of the ATDD
cycle?
Distill, Develop, Discuss, Demo
Discuss, Develop, Demo, Acceptance
Develop, Distill, Demo, Acceptance
Discuss, Distill, Develop, Demo
22. Copyright 2014, Simplilearn, All rights reserved.22
QUIZ
a.
b.
c.
d.
3
Video
Value
Demo
Product
What does customer quality deliver?
23. Copyright 2014, Simplilearn, All rights reserved.23
QUIZ
a.
b.
c.
d.
3
Answer: c.
Explanation: Customer quality delivers value.
What does customer quality deliver?
Video
Value
Demo
Product
24. Copyright 2014, Simplilearn, All rights reserved.24
QUIZ
a.
b.
c.
d.
4
It has been tested and has not passed user acceptance or client approval.
It has been tested and has passed user acceptance or client approval.
It is “shippable” or “deliverable”.
When code is developed.
What of the following does not mean done?
25. Copyright 2014, Simplilearn, All rights reserved.25
QUIZ
a.
b.
c.
d.
4
Answer: a.
Explanation: Only the code being completed does not signify the completion or done.
What of the following does not mean done?
It has been tested and has not passed user acceptance or client approval.
It has been tested and has passed user acceptance or client approval.
It is “shippable” or “deliverable”.
When code is developed.
26. Copyright 2014, Simplilearn, All rights reserved.26
QUIZ
a.
b.
c.
d.
5
It ensures that their code is always defect free.
It reduces the questions from management on whether the code has been tested
properly.
It reduces the re-work developers would have to do and gives them the courage to refactor.
It prevents them from avoiding the difficult task of writing tests.
How does TDD help developers?
27. Copyright 2014, Simplilearn, All rights reserved.27
QUIZ
a.
b.
c.
d.
5
Answer: d.
Explanation: Refactoring is most effective with Test Driven Development.
How does TDD help developers?
It ensures that their code is always defect free.
It reduces the questions from management on whether the code has been tested
properly.
It reduces the re-work developers would have to do and gives them the courage to refactor.
It prevents them from avoiding the difficult task of writing tests.
28. Copyright 2014, Simplilearn, All rights reserved.28
QUIZ
a.
b.
c.
d.
6
No, information radiators are for project progress indicators only.
Yes, but only if each team member agrees to update a whiteboard with status every
time they commit code.
Yes, information from Continuous Integration can be radiated using osmosis.
Yes, lava lamps can be used to show the status of the builds by wiring them to the
integration server.
Can Continuous Integration have an Information Radiator?
29. Copyright 2014, Simplilearn, All rights reserved.29
QUIZ
a.
b.
c.
d.
6
Answer: a.
Explanation: Many development teams have hooked their integration server to lava lamps,
with green lava lamps for success and red for failure.
Can Continuous Integration have an Information Radiator?
No, information radiators are for project progress indicators only.
Yes, but only if each team member agrees to update a whiteboard with status every
time they commit code.
Yes, information from Continuous Integration can be radiated using osmosis.
Yes, lava lamps can be used to show the status of the builds by wiring them to the
integration server.
30. Copyright 2014, Simplilearn, All rights reserved.30
● Customer quality delivers value in the short term while technical quality
enables continuous delivery of value over time.
● The objective of an iteration in Agile must be to produce code that is of
‘near releasable’ or ‘potentially shippable’ quality. This requires the code to
have passed through the verification and validation steps.
● TDD is an iterative and incremental approach to programming where Agile
software developers must first write a test before they write code to make
the test pass.
● ATDD focuses on writing requirements in a testable form.
● For a story to be done, it has to be tested, passed user acceptance test and
an in-house iteration review, and should be of a ‘shippable’ or ‘deliverable’
quality.
● Continuous Integration is an approach that keeps all the code integrated
and builds release infrastructure along with rest of the application.
Summary
Here is a quick
recap of what was
covered in this
lesson:
31. Copyright 2014, Simplilearn, All rights reserved.31
Copyright 2014, Simplilearn, All rights reserved.PMI® & ACP are the registered marks of Project Management Institute, Inc.
THANK YOU