You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/core-infrastructure.md
+10-10Lines changed: 10 additions & 10 deletions
Original file line number
Diff line number
Diff line change
@@ -6,13 +6,13 @@ The core infrastructure of a QA architecture supports a quality-first culture an
6
6
7
7
Many organizations use reactive monitoring, addressing issues only after they surface. This risks delayed responses, customer dissatisfaction, and security breaches. A quality-first culture requires a proactive approach, identifying issues early to prevent incidents and ensure system stability and security.
8
8
9
-
**2.1.1 Integration and Collaboration:** Integrating monitoring and issue detection into development processes, along with fostering team collaboration, is essential. Aligning tools, practices, and workflows with the development lifecycle ensures early issue detection and resolution. This also facilitates knowledge sharing and best practice adoption for improved system reliability and security.
9
+
**Integration and Collaboration:** Integrating monitoring and issue detection into development processes, along with fostering team collaboration, is essential. Aligning tools, practices, and workflows with the development lifecycle ensures early issue detection and resolution. This also facilitates knowledge sharing and best practice adoption for improved system reliability and security.
10
10
11
11
## 2.2 Key Practices and Tools
12
12
13
13
Here are the key practices and tools to establish a solid core infrastructure for monitoring and early issue detection:
14
14
15
-
**2.2.1 Continuous Deployments:** Enables frequent, reliable production changes, reducing human error and streamlining releases. Real-time monitoring allows for quick rollbacks if necessary.
15
+
**Continuous Deployments:** Enables frequent, reliable production changes, reducing human error and streamlining releases. Real-time monitoring allows for quick rollbacks if necessary.
16
16
17
17
***Quick Tips and Sample Tooling:**
18
18
***Automate your deployment pipeline:** Jenkins, GitLab CI/CD, CircleCI.
@@ -22,7 +22,7 @@ Here are the key practices and tools to establish a solid core infrastructure fo
22
22
***Automate rollbacks:** Revert changes quickly in case of failures.
23
23
***Changelog and release notes:** Document changes and updates for transparency and communication.
24
24
25
-
**2.2.2 Continuous Monitoring:** Tracks system performance, availability, and security in real-time, enabling proactive issue identification, troubleshooting, and anomaly detection.
25
+
**Continuous Monitoring:** Tracks system performance, availability, and security in real-time, enabling proactive issue identification, troubleshooting, and anomaly detection.
26
26
27
27
***Quick Tips and Sample Tooling:**
28
28
***Set up monitoring dashboards:** Grafana, Kibana, Splunk.
@@ -31,7 +31,7 @@ Here are the key practices and tools to establish a solid core infrastructure fo
**2.2.3 Error Tracking and Alerting:** Identifies, prioritizes, and resolves issues quickly through real-time tracking and alerts. Provides insights into root causes, error trends, and areas for improvement.
34
+
**Error Tracking and Alerting:** Identifies, prioritizes, and resolves issues quickly through real-time tracking and alerts. Provides insights into root causes, error trends, and areas for improvement.
@@ -40,7 +40,7 @@ Here are the key practices and tools to establish a solid core infrastructure fo
40
40
***Analyze error trends:** Identify recurring issues and areas for improvement.
41
41
***Integrate error tracking with monitoring:** Correlate errors with performance metrics and logs.
42
42
43
-
**2.2.4 Static Code Analysis and Security Scanning:** Identifies vulnerabilities, code smells, and quality issues early in development. Enforces coding standards and improves code quality and security.
43
+
**Static Code Analysis and Security Scanning:** Identifies vulnerabilities, code smells, and quality issues early in development. Enforces coding standards and improves code quality and security.
**2.2.5 Environment Parity:** Maintaining consistency across development, testing, and production environments is crucial for minimizing environment-specific issues.
53
+
**Environment Parity:** Maintaining consistency across development, testing, and production environments is crucial for minimizing environment-specific issues.
54
54
55
55
***Key Considerations:**
56
56
***Development Environments:** Should closely mirror production to reduce integration issues.
@@ -59,30 +59,30 @@ Here are the key practices and tools to establish a solid core infrastructure fo
59
59
***Partner Integration Environments:** Dedicated environments for partners to integrate and test their systems with yours.
**2.2.6 Chaos Engineering:** Introduce controlled disruptions into your systems to identify weaknesses and improve resilience.
62
+
**Chaos Engineering:** Introduce controlled disruptions into your systems to identify weaknesses and improve resilience.
63
63
64
64
***Key Considerations:**
65
65
***Planned Experiments:** Design experiments to target specific failure scenarios.
66
66
***Monitoring and Analysis:** Observe system behavior during experiments to identify vulnerabilities.
67
67
***Blast Radius Control:** Limit the impact of experiments to prevent widespread outages.
68
68
***Tooling:** Chaos Monkey, Gremlin, LitmusChaos.
69
69
70
-
**2.2.7 Ephemeral Test Environments:** Leverage containerization and automation to create and destroy test environments on demand. This ensures consistency and reduces environment maintenance overhead.
70
+
**Ephemeral Test Environments:** Leverage containerization and automation to create and destroy test environments on demand. This ensures consistency and reduces environment maintenance overhead.
71
71
72
72
***Key Considerations:**
73
73
***Containerization:** Docker, Kubernetes.
74
74
***Infrastructure as Code:** Terraform, Ansible, CloudFormation.
75
75
***Automated Provisioning:** Scripts and tools to automate environment creation and teardown.
76
76
77
-
**2.2.8 Test Data Management:** Efficiently manage test data in ephemeral environments.
77
+
**Test Data Management:** Efficiently manage test data in ephemeral environments.
78
78
79
79
***Key Considerations:**
80
80
***Data Generation:** Tools and techniques for generating realistic test data.
81
81
***Data Masking:** Protect sensitive data by masking or anonymizing it.
82
82
***Data Subsetting:** Create smaller, representative datasets for testing.
83
83
***Data Versioning:** Track changes to test data and revert to previous versions if needed.
84
84
85
-
**2.2.9 Disaster Recovery and Business Continuity:** Prepares for and responds to unexpected events, minimizing downtime and protecting critical data. Ensures system resilience and operational continuity.
85
+
**Disaster Recovery and Business Continuity:** Prepares for and responds to unexpected events, minimizing downtime and protecting critical data. Ensures system resilience and operational continuity.
86
86
87
87
***Quick Tips and Sample Tooling:**
88
88
***Define recovery objectives and priorities:** Identify critical systems and dependencies.
Copy file name to clipboardExpand all lines: docs/culture-foundation.md
+50-28Lines changed: 50 additions & 28 deletions
Original file line number
Diff line number
Diff line change
@@ -1,11 +1,6 @@
1
1
# Section 1: Culture foundation - cultivating a quality culture
2
2
3
-
The quality-oriented culture is foundation of a successful QA architecture. It
4
-
is essential to establish a mindset that values quality, and creating processes
5
-
that support this mindset. Build a strong foundation based on shared
6
-
responsibility, open communication and a commitment to quality at all stages of
7
-
development. This section will guide you through the key steps to cultivate a
8
-
culture of quality in your organization.
3
+
Quality-first culture isn't just a slogan; it's a fundamental way of operating where quality is integrated in every process, decision, and interaction in company. This section will guide you through the key steps to cultivate a culture of quality in your organization.
9
4
10
5
## 1.1 From "QA phase" to "Quality all the way"
11
6
@@ -16,7 +11,7 @@ costly reworks, bottlenecks, fixes, frustrated teams and not satisfied
16
11
customers. To avoid these pitfalls, it is crucial to shift the focus from the
17
12
“QA phase” to the “Quality all the way”.
18
13
19
-
### 1.1.1 To achieve this, consider the following
14
+
### Key Points
20
15
21
16
-**Quality is everyone's responsibility**: All team members (developers,
22
17
testers, QA, product managers, designers, etc.) should be responsible for
@@ -37,7 +32,7 @@ customers. To avoid these pitfalls, it is crucial to shift the focus from the
37
32
that the product is of high quality, and you can grow confidence that you
38
33
minimize the risk of defects and rework later on.
39
34
40
-
### 1.1.2 Practical steps
35
+
### Practical Steps
41
36
42
37
-**Break down conventional silos** and encourage cross-functional collaboration
43
38
and communication between teams.
@@ -56,7 +51,7 @@ feedback is the key to identifying problems, improving processes and supporting
56
51
a culture of learning and development. Create an environment where feedback is
57
52
welcomed, constructive and used to drive change.
58
53
59
-
### 1.2.1 To achieve this, consider the following
54
+
### Key Points
60
55
61
56
-**Constructive feedback** should be given in constructive and respectful
62
57
manner. Feedback should focus on behaviors, processes and results, not on
@@ -72,24 +67,24 @@ welcomed, constructive and used to drive change.
72
67
feedback and identify areas for improvement. Regularly analyze feedback and
73
68
act on it for continuous improvement.
74
69
75
-
### 1.2.2 Practical steps
70
+
### Practical Steps
76
71
77
72
-**Establish clear communication channels and expectations**
78
73
- Create specific ways for feedback to be given (regular meetings, online
79
-
tools, dedicated time slots).
74
+
tools, dedicated time slots).
80
75
- Clearly communicate what kind of feedback is most valuable (actionable,
81
-
specific, focused on improvement).
76
+
specific, focused on improvement).
82
77
-**Foster a culture of psychological safety**
83
78
- Emphasize that feedback is about collective growth, not blame.
84
79
- Encourage asking questions, admitting mistakes, and seeking help as positive
85
-
behaviors.
80
+
behaviors.
86
81
- Leaders should model this by openly receiving and giving good feedback
87
-
themselves.
82
+
themselves.
88
83
-**Close the feedback loop**
89
84
- Don't let feedback disappear. Have mechanisms to track, discuss, and act on
90
-
it.
85
+
it.
91
86
- Share outcomes with the team, so people see their input is valued and leads
92
-
to change.
87
+
to change.
93
88
94
89
## 1.3 From "Testing" to "Quality Engineering"
95
90
@@ -114,7 +109,7 @@ progress and identify areas for improvement. Set clear goals, define key
114
109
performance indicators (KPIs) and track metrics to monitor the health of
and time-bound (SMART) goals for your team and projects. Ensure that everyone
@@ -150,14 +145,41 @@ processes and products.
150
145
engagement, retention, and other key indicators to ensure that your products
151
146
meet the needs and expectations of your users.
152
147
153
-
### 1.4.2 Examples of metrics
154
-
155
-
-**Defect density**: The number of defects found in a specific period or
156
-
project.
157
-
-**Test coverage**: The percentage of code covered by automated tests.
158
-
-**Code churn**: The rate of change in code over time.
159
-
-**Code complexity**: The complexity of the codebase, measured by cyclomatic
160
-
complexity or other metrics.
161
-
-**Performance metrics**: Response time, throughput, error rates and so on.
162
-
-**User-centric metrics**: User satisfaction, Net Promoter Score (NPS),
163
-
retention rate, and other user-focused indicators.
148
+
### Examples of Metrics
149
+
150
+
-**Defect Density**: Number of defects found in a specific period or project.
151
+
-**Test Coverage**: Percentage of code covered by automated tests.
152
+
-**Code Churn**: Rate of change in code over time.
153
+
-**Code Complexity**: Complexity of the codebase.
154
+
-**Performance Metrics**: Response time, throughput, error rates, etc.
155
+
-**User-Centric Metrics**: User satisfaction, Net Promoter Score (NPS), retention rate, etc.
156
+
157
+
## Leadership
158
+
159
+
Leadership plays a pivotal role in establishing and nurturing a quality-first culture. Leaders and QAs must not only advocate for quality, but actively embody it in their own actions. Executive sponsorship ensures that quality initiatives receive the necessary resources and prioritization to thrive.
160
+
161
+
### Key Points
162
+
163
+
-**Set the Tone from the Top**: Leaders and QAs must clearly and consistently communicate the importance of quality. This includes articulating the company's quality vision (or building it from the ground up), explaining how it connects to overall business goals, and emphasizing the impact of quality on customer satisfaction and the company's reputation.
164
+
-**Provide Resources**: A commitment to quality requires investment. Allocate sufficient resources, including budget, time, tools, and personnel, to support quality initiatives. This demonstrates a tangible commitment and empowers teams to prioritize quality.
165
+
-**Remove Barriers**: Identify and address any obstacles that hinder quality processes. These barriers could include bureaucratic processes, inadequate tools, lack of training, or conflicting priorities. Leaders should actively work to streamline workflows and empower teams to focus on quality.
166
+
-**Lead by Example**: Actions speak louder than words. Leaders and QAs must demonstrate a personal commitment to quality in their own work and decisions. This sets a powerful example for others to follow and reinforces the importance of quality throughout the organization. Visibility in quality-related activities, such as participating in reviews, actively seeking feedback, and acknowledging mistakes, reinforces the message.
167
+
168
+
## Training and Education
169
+
170
+
A quality-first culture requires a skilled and knowledgeable workforce. Continuous learning and development are essential for equipping team members with the necessary skills and understanding to prioritize and deliver quality.
171
+
172
+
### Key Points
173
+
174
+
-**Targeted Workshops and Training Programs**: Offer regular training sessions on quality-related topics tailored to different roles and responsibilities. These could include training on quality management principles, specific quality tools and techniques (e.g., root cause analysis, statistical process control), and industry best practices.
175
+
-**Professional Certifications**: Encourage and support team members in pursuing relevant industry-recognized certifications. This not only enhances their skills but also demonstrates the organization's commitment to professional development and quality excellence.
176
+
-**Knowledge Sharing and Collaboration**: Foster a culture of knowledge sharing and collaboration. This can be achieved through internal presentations, mentorship programs, communities of practice, and online platforms where team members can share best practices, lessons learned, and quality-related information.
177
+
178
+
## Rewards and Recognition
179
+
180
+
Recognizing and rewarding quality-focused efforts is crucial for reinforcing desired behaviors and embedding quality into the company culture. Celebrate both individual and team accomplishments related to quality improvement.
181
+
182
+
### Key Points
183
+
184
+
-**Integrate Quality Metrics into Performance Evaluations**: Align individual and team performance evaluations with quality-related metrics. This ensures that quality is a key factor in performance assessment and reinforces its importance.
185
+
-**Publicly Acknowledge and Celebrate Achievements**: Highlight quality achievements through shout-outs in company-wide communications. Public recognition not only celebrates success but also inspires others to strive for excellence. Sharing success stories and best practices can further amplify the impact.
0 commit comments