Becoming more valuable to your agile or devops...
Transcript of Becoming more valuable to your agile or devops...
Webinar:
Becoming more Valuable to your Agile or DevOps
Team
FeaturingSusan Brockley
WEBINA SERIES
presents the
WEBINAR SERIESwww.qaiQUEST.org/2019
Becoming more Valuable to your Agile or DevOps Team
QAI QUEST Webinar
February 2019
Susan Brockley 28+ years in software engineering industry
Certified Software Quality Analyst (CSQA)
Certified Scrum Master
Certified Scaled Agilest
Quality and Agile Coach
Passion for teaching, mentoring, and coaching
Overview
• How is the quality professional’s role changing?
• What’s driving the change?
• How does the change impact you?
• How does the change impact your organization?
Have you noticed?
“This year …there is a further need for much more specialized skills in test teams.”
“Unless organizations take active steps to retrain their employees and develop these skills, this could …hold back the progress of the QA and testing function.”
2018-2019 World Quality Report Capgemini, MicroFocus, Sogeti
What does that mean?
The quality and testing professional used to be more of a planner, a coordinator, very process-focused.
The new quality and testing professional needs to be more technical, collaborative, and product-focused.
What’s driving this change?
Reasons to adopt agile
Accelerate software delivery
and
increase productivity
while
enhancing software quality?
How can this be possible?
Hint:
(Test and quality professionals have to become more technical)
Software Development Engineers in Test (SDETs)
• First mention of SDETs came from Microsoft around 2008 • Indicated the merge of developers and testers for the purpose of writing code
to test software
• Microsoft employs ~2 SDETs for every 3 Software Engineers • Google, Amazon, and Apple hire SDETs but at different ratios
• Now the industry has redefined the role to mean a professional who can participate in the development of an application and also in testing the software developed
Audience Polling Question
Let’s see who we have in the audience…
1. Tester or Test Lead
2. Quality or Test Manager
3. Software Development Engineer in Test (SDET)
4. Business Analyst
5. Other
How does this apply to you?
To become more valuable
• Embed yourself in an Agile team
• Take your basic software engineering knowledge and adapt it to the Agile framework
• Continuously improve your technical skills
• Continue to move your organization towards quality
What does embedded in a team mean? You are truly embedded in your team if you:
• Actively participate in all ceremonies
• Work out of the same backlog as the team
• Help write user stories and acceptance criteria • Add testing tasks as appropriate • Make sure testing items are in the DoR and DoD (and hold your team to them)
• Express your opinion / vote in estimation activities
• Demo your work
How deeply are you embedded?
Independent Partially Embedded Completely Embedded
Team or Project
You
Team or Project
You Team or Project
You
Audience Polling Question
Let’s see if the audience is embedded in their team or project
1. I work independently from a team or project
2. I am partially embedded in a team or project
3. I am completely embedded in a team or project
4. My job does not require me to interact directly with a team or project
Why is embedment important?
• The Agile mindset values individuals and interactions over processes and tools.
• Are you deeply involved in the daily interactions that define your product?
• Does your team accept and trust you as a valued member?
• From Forrester (July 2018): • Best practice: successful Agile+DevOps teams “include testers as part of their
integrated delivery teams”
How do you become more embedded?
• Request to attend ceremonies, even if only an observer. You will learn more by just being there.
• Add value to your team’s stories by asking the right questions.
• Bring the necessary skills to bear on the problem.
Did Agile kill software engineering?
Agile has not done away with software engineering skills, it merely requires you to apply them differently.
- Susan Brockley
Requirements elicitation
• From: • Define your personas, interview a number of people who fit that persona,
document requirements in a specifications document
• Do all this up front
• To: • Use your elicitation skills to define user stories and acceptance criteria
• Do this just as the detail is needed (progressive elaboration)
Test case design
• From: • For each requirement, build a regression testing suite, ensure feature
coverage
• Automate big regression testing suite as an independent activity
• Execute those tests periodically
• To: • Build tests from acceptance criteria, creating and automating tests in-sprint
• Automation gradually builds the regression testing suite
• Place tests in the pipeline and execute them every build
Estimation
• From: • Write huge, monolithic test plans and estimate the number of tests we will
build/execute, the number of big testing events we will coordinate, and the number of testers we will need
• To: • Embed SDETs in stable teams and fund them for a year
• Estimation occurs at the story level as SDETs add features and stories to the backlog (planning poker)
• This does not eliminate the need for big testing events, but it gets the team more focused on getting them done
How do you improve your technical skills?
First, you need to feel a sense of urgency
“…by early 2020, almost all testers will need to wear an SDET hat to be successful in the field of test automation – that is going to become mainstream.”
- 2015 Cigniti.com blog
Assess your skills and plug the gaps
• Learn a programming or scripting language
• Get really good at using an automated testing tool
• Stretch yourself – can you get better at Agile practices? ATDD? metrics? continuous integration? customer engagement?
• Influence and challenge others in your organization to become more technical
Your future depends on this… No pressure.
Audience Polling Question
Select the statement that best captures what you are thinking now…
1. Woot! Let’s go! (I’ve already started building new technical skills)
2. Hmmm… maybe (I’m thinking I should start now, if only I had the time)
3. You gotta be kidding! (No way you will turn me into a developer!)
But what about your organization?
Remember when?
• Testing Centers of Excellence (TCoEs) were all the rage?
• TCoEs were characterized by a centralized, dedicated testing organization
• They existed to maintain an independent voice for quality within a larger IT organization
• They focused on repeatability, predictability, and scalability
No, TCOES are not dead! …but they are slowly being replaced with
Communities of Practice
• TCoPs are characterized by an informal group of people who have similar interests and shared practices
• They existed to work together to solve a challenge or problem
• They focus on building skills, imparting knowledge, and improving their practice
Organizations need to get started
2018-2019 World Quality Report recommends…
1. Attract / reskill towards Agile test specialists who have functional automation skills and domain testing skills.
2. Attract / reskill SDET skills that have advanced automation skills, white
box testing capabilities, development skills, and the ability to build orchestration platforms.
3. Ensure sufficient niche QA skill sets such as security, non-functional
testing, test environments, and data management skills. 4. Attract / reskill advanced QA experts with AI architecture skills to build
“smart assets”.
So, back to the beginning How do you become more valuable to your team and organization?
• Embed yourself in your team
• Take your basic software engineering knowledge and apply it to the Agile framework
• Continuously improve your technical skills
• Continue to move your organization towards quality