Get started
Bring yourself up to speed with our introductory content.
Get started
Bring yourself up to speed with our introductory content.
Understanding code linting techniques and tools
Linting is an important preliminary step in the debugging process. Learn how fixing simple errors early on makes code easier to work with and improves coding practices. Continue Reading
functional programming
Functional programming is a programming paradigm that uses functions to construct programs and control how those programs operate. Continue Reading
The importance of edge case testing: When to fix the bug
While edge cases in software testing only affect a small subset of users, testing for them is still important. Learn which edge fixes are worth making and which can be ignored. Continue Reading
-
polyglot programming
Polyglot programming is the practice of writing code in multiple languages to capture additional functionality and efficiency not available in a single language. Continue Reading
Create an open source security policy for your organization
Using open source software raises concerns about security and intellectual property. Here's how to make sound decisions and avoid situations you'll regret. Continue Reading
session ID
A session ID, also called a session token, is a unique identifier that a web server assigns to a user for the duration of the current session.Continue Reading
What to know about Python load testing
It's a nice problem to have when an application is so popular it's in danger of failing from too many customers accessing it at once. Be sure you are ready to meet that demand.Continue Reading
Is Scrum master certification worth it?
Considering a Scrum master certification? Let's look at the considerations that factor into a decision to pursue certification and whether being a Scrum master benefits a career.Continue Reading
How boundary value analysis boosts test efficiency
Boundary value analysis provides multiple benefits, including increased test coverage and proactive defect prevention. It's a simple way to improve test efficiency.Continue Reading
citizen development
Citizen development is a business process that encourages non-IT-trained employees to become software developers, using IT-sanctioned low-code/no-code (LCNC) platforms to create business applications.Continue Reading
-
6 green coding best practices and how to get started
Software developers can support sustainability efforts via a range of green coding tactics. These best practices range from shrinking artifacts to maximizing efficiency.Continue Reading
Manual mobile app testing is still important
Automation is a great way to check on a mobile app's performance and basic functionality. But testing manually reaches places automation alone cannot.Continue Reading
Is a continuous planning process in DevOps worth it?
Is a continuous planning strategy right for your organization's DevOps efforts? Know the practical benefits and challenges, as well as how to improve development efficiencies.Continue Reading
Scrum master interview questions and answers
Want to ace the Scrum master interview? These tough Scrum master questions and answers will help you prepare.Continue Reading
How to test a predictive model
Strategies for testing predictive models and analytics emphasize data quality, real-time testing and code redundancy, as well as AI and machine learning integration.Continue Reading
The dos and don'ts of visual testing
The visual aspect of an application is an important part of UX. Defects can potentially result in lost sales and damaged reputations.Continue Reading
3 QA testing tools to consider
QA testers need to be able to put applications and APIs through their paces. Here are some examples of tools that can help with automated testing and debugging.Continue Reading
Collaborative coding basics and best practices
Successful collaborative coding includes teamwide situational awareness, highly effective communication, strong project management practices and strict version control.Continue Reading
How to develop a test data management strategy
Effective test data management in app development involves defining appropriate data, using activity diagrams to see how the code will perform, and protecting sensitive information.Continue Reading
Roles and responsibilities in an Agile center of excellence
A successful Agile transformation takes time and perseverance. Here's how an Agile center of excellence helps to adopt changes and adjust work processes.Continue Reading
Unified Modeling Language (UML)
Unified Modeling Language (UML) is a standard notation for modeling real-world objects as a first step in designing an object-oriented system.Continue Reading
How to make use of specification-based test techniques
Specification-based techniques can play a role in efficient test coverage. Choosing the right techniques can ensure thorough coverage, while eliminating redundancy.Continue Reading
The basics of implementing an API testing framework
With an increasing need for API testing, having an efficient test strategy is a big concern for testers. How can teams evaluate what framework strategy is the right match?Continue Reading
daily stand-up meeting
A daily stand-up meeting is a short organizational meeting that is held each day.Continue Reading
Scrum master certification exam questions and answers
Are you ready for the Scrum master certification exam? Test yourself on these 10 tough Scrum master exam questions and answers.Continue Reading
Scrum product owner certification exam questions and answers
Here are 10 tough sample Scrum product owner exam questions and answers to help gauge your readiness for the certification test.Continue Reading
requirements analysis (requirements engineering)
Requirements analysis (requirements engineering) is the process of determining user expectations for a new or modified product.Continue Reading
garbage in, garbage out (GIGO)
Garbage in, garbage out, or GIGO, refers to the idea that in any system, the quality of output is determined by the quality of the input.Continue Reading
joint application development (JAD)
Joint application development, frequently shortened to JAD, is a methodology that involves the client or end user in the design and development of a software application through a succession of collaborative workshops called JAD sessions.Continue Reading
iterative development
Iterative development is a way of breaking down the software development lifecycle (SDLC) of a large application into smaller chunks.Continue Reading
histogram
A histogram is a type of chart that shows the frequency distribution of data points across a continuous range of numerical values.Continue Reading
UX research
User experience (UX) research is the study of learning what end users of a system or product need and want, then employing those insights to enhance the design process for products, services or software.Continue Reading
automated testing
Automated testing is a software testing technique that automates the process of validating the functionality of software and ensures it meets requirements before being released into production.Continue Reading
continuous integration (CI)
Continuous integration (CI) is a software development practice in which frequent, isolated changes are immediately tested and reported on when they're added to a larger codebase.Continue Reading
unit testing
Unit testing is a software development process in which the smallest testable parts of an application, called units, are individually scrutinized for proper operation.Continue Reading
SQL injection (SQLi)
A SQL injection (SQLi) is a technique that attackers use to gain unauthorized access to a web application database by adding a string of malicious code to a database query.Continue Reading
How to develop an API test automation strategy
A suite of automated API tests can set up an application for success but only if QA teams determine the right tests to automate and implement them correctly.Continue Reading
How to build a regression test suite
Code changes are an unavoidable aspect of software development. Teams need to properly test to make sure those changes don't adversely affect the end product.Continue Reading
sequence diagram
A sequence diagram is one of the multiple types of system interaction diagrams used within Unified Modeling Language (UML) to visually represent interactions between the objects that live within a system.Continue Reading
structured programming (modular programming)
Structured programming, or modular programming, is a programming paradigm that facilitates the creation of programs with readable code and reusable components.Continue Reading
mob programming
Mob programming is a collaborative approach to software development in which a group of developers work together in real time on one task.Continue Reading
collaboration diagram
A collaboration diagram, also known as a communication diagram, is an illustration of the relationships and interactions among software objects in the Unified Modeling Language (UML).Continue Reading
MoSCoW method
The MoSCoW method is a four-step approach to prioritizing which project requirements provide the best return on investment (ROI).Continue Reading
system testing
System testing, also referred to as system-level testing or system integration testing, is the process in which a quality assurance (QA) team evaluates how the various components of an application interact together in the full, integrated system or ...Continue Reading
end-to-end testing
End-to-end (E2E) testing is a software testing methodology that verifies the working order of a software product in a start-to-finish process.Continue Reading
performance testing
Performance testing is a testing measure that evaluates the speed, responsiveness and stability of a computer, network, software program or device under a workload.Continue Reading
smoke testing
Smoke testing, also called build verification testing or confidence testing, is a software testing method that is used to determine if a new software build is ready for the next testing phase.Continue Reading
What details to include on a software defect report
Teams that can write clear and detailed defect reports will increase software quality and reduce the time needed to fix bugs. Here's what to know about getting reports right.Continue Reading
How to run an ADA-compliant website test
Digital accessibility benefits both developers and website users alike. By following WCAG guidelines and using testing tools, teams can ensure that their websites are ADA-compliant.Continue Reading
4 critical API caching practices all developers should know
API caching can increase the performance and response time of an application, but only if it's done right. Learn about some of the caching tools and techniques worth implementing.Continue Reading
hybrid application (hybrid app)
A hybrid app is a software application that combines elements of both native apps and web applications.Continue Reading
web application (web app)
A web application (web app) is an application program that is stored on a remote server and delivered over the internet through a browser interface.Continue Reading
How to validate a Kubernetes manifest
Dev teams must validate Kubernetes manifests. Developers can navigate validation and issues that arise with the help of native and third-party tools and other coding methods.Continue Reading
Disciplined Agile Delivery (DAD)
Disciplined Agile Delivery (DAD) is a scalable Agile software delivery framework. It takes a people-first, learning-oriented approach to software development and delivery.Continue Reading
10 essential Scrum Master skills
From sprint planning to servant leadership, Scrum Masters help Agile developers, product owners and other team members perform at their best. Here's what makes a good Scrum Master.Continue Reading
native app
A native application is a software program developers build for use on a particular platform or device.Continue Reading
How to compare acceptance criteria vs. definition of done
Acceptance criteria and the definition of done both measure quality in product development, but the ways teams calculate and achieve these features vary dramatically.Continue Reading
rapid mobile app development (RMAD)
Rapid mobile application development (RMAD) uses low-code/no-code programming tools to expedite the application creation process for mobile platforms.Continue Reading
pipeline as code
Pipeline as code is an approach to a continuous integration (CI) pipeline where the pipeline is expressed entirely in computer code.Continue Reading
use case
A use case is a methodology used in system analysis to identify, clarify and organize system requirements.Continue Reading
debugging
Debugging, in computer programming and engineering, is a multistep process that involves identifying a problem, isolating the source of the problem and then either correcting the problem or determining a way to work around it.Continue Reading
software toolchain
A software toolchain is a set of software development tools used simultaneously to complete complex software development tasks or to deliver a software product.Continue Reading
static testing
Static testing is a software testing method that examines a program -- along with any associated documents -- but does not require the program to be executed.Continue Reading
user story
A user story is a tool in Agile software development used to capture a description of a software feature from a user's perspective. The user story describes the type of user, what they want and why. A user story helps to create a simplified ...Continue Reading
Agile software development
Agile is a type of software development methodology that anticipates the need for flexibility and applies a level of pragmatism to the delivery of the finished product.Continue Reading
waterfall model
The waterfall model is a linear, sequential approach to the software development lifecycle (SDLC) that is popular in software engineering and product development.Continue Reading
NIST (National Institute of Standards and Technology)
NIST (National Institute of Standards and Technology) is a nonregulatory government agency located in Gaithersburg, Md.Continue Reading
An overview of data-driven API testing
API testing -- including data-driven API testing -- differs from other software tests in its overall process and relevant metrics. Analytics and automation play a key role.Continue Reading
How you can incorporate lean coffee for Agile, QA meetings
Don't let formal meeting agendas turn away attendees. The lean coffee format encourages participation and idea sharing on topics to drive conversation in numerous settings.Continue Reading
Why security chaos engineering works, and how to do it right
While 'chaos' doesn't sound like something software security managers would want, chaos engineering has an enticing amount of value when it comes to identifying potential threats.Continue Reading
green software
Green software, also known as sustainable software, is software that is designed, developed and implemented to limit energy consumption and have minimal environmental impact.Continue Reading
synthetic monitoring
Synthetic monitoring is the use of software to simulate user interactions with a system.Continue Reading
SSADM (Structured Systems Analysis and Design Method)
SSADM (Structured Systems Analysis and Design Method) is a widely used computer application development method in the United Kingdom, where its use is often specified as a requirement for government computing projects.Continue Reading
exception handling
Exception handling is the process of responding to unwanted or unexpected events when a computer program runs.Continue Reading
Implement reliability testing methods, tools for better dev
Reliability testing can play an integral role in software development. Here are some methods and tools to incorporate into your app development lifecycle.Continue Reading
The ins and outs of low-code application testing
When teams use low-code for application development, it can save time and money. But don't neglect testing for potential issues just to deploy the app sooner.Continue Reading
Smoke testing vs. sanity testing explainer on key differences
While smoke and sanity testing are both techniques QA professionals use to quickly identify feature defects, they differ when it comes to scope, automation requirements and timing.Continue Reading
How to scale Scrum with Scrum of Scrums meetings
Enterprise-scale software development can be difficult to coordinate across multiple teams. For Agile-adhering IT organizations, Scrum of Scrums is one way to stay organized.Continue Reading
How software testing affects a successful multi-cloud strategy
Here's how QA professionals working with multi-cloud can deal with the increased complexity associated with the strategy, plus the risks and workflow factors.Continue Reading
LDAP injection
LDAP (Lightweight Directory Access Protocol) injection is a type of security exploit that is used to compromise the authentication process used by some websites.Continue Reading
application lifecycle management (ALM)
Application lifecycle management (ALM) is an integrated system of people, tools and processes that supervise a software application from its initial planning and development, through testing and maintenance, and into decommissioning and retirement.Continue Reading
The fundamentals of writing effective acceptance criteria
Acceptance criteria plays a key role in shaping an application from the user standpoint. We review some of the basic things to remember when it comes to acceptance criteria.Continue Reading
development environment
In software, web and mobile application development, the development environment is a workspace with a set of processes and programming tools used to develop the source code for an application or software product.Continue Reading
Capability Maturity Model (CMM)
The Capability Maturity Model (CMM) is a methodology used to develop and refine an organization's software development process.Continue Reading
Developer vs. DevOps engineer similarities and differences
What does a DevOps engineer do? What does a developer do? The two roles sound alike, but their roles, skills and tools are quite different and require unique expertise.Continue Reading
Why a successful software tester's skillset is more than just technical
How can you become a good software tester? It requires more than just technical expertise. Here are some important personality traits QA pros need to have.Continue Reading
release
A release is the distribution of the final version or the newest version of a software application.Continue Reading
user acceptance testing (UAT)
User acceptance testing (UAT), also called application testing or end-user testing, is a phase of software development in which the software is tested in the real world by its intended audience.Continue Reading
build
In a programming context, a build is a version of a program that, as a rule, is a pre-release version and is identified by a build number rather than by a release number.Continue Reading
Understanding code smells and how refactoring can help
Code smells can be the canary in the coal mine for poor coding. And poor coding is a sign that refactoring is called for. Let's explore how to look at and deodorize code smells.Continue Reading
Follow this Harness IO tutorial to get started with CI/CD
This tutorial gives an overview of the options and features available to users of Harness IO and walks through how to build and ship code in the CI/CD platform.Continue Reading
Open Web Application Security Project (OWASP)
The Open Web Application Security Project (OWASP) is a nonprofit foundation that provides guidance on how to develop, purchase and maintain trustworthy and secure software applications.Continue Reading
Hypertext Transfer Protocol Secure (HTTPS)
Hypertext Transfer Protocol Secure (HTTPS) is a protocol that secures communication and data transfer between a user's web browser and a website.Continue Reading
software documentation
In the software development process, software documentation is the information that describes the product to the people who develop, deploy and use it.Continue Reading
versioning
Versioning is the creation and management of multiple releases of a product, all of which have the same general function, but are improved, upgraded or customized.Continue Reading
best practice
A best practice is a standard or set of guidelines that is known to produce good outcomes if followed.Continue Reading
whole-team approach (team-based approach)
The whole-team approach (team-based approach) is a style of project management in which everyone on the project team is held equally responsible for the quality and success of the project.Continue Reading
artifact (software development)
An artifact is a byproduct of software development that helps describe the architecture, design and function of software.Continue Reading
application security
Application security, or appsec, is the practice of using security software, hardware, techniques, best practices and procedures to protect computer applications from external security threats.Continue Reading
iterative
In the world of IT and computer programming, the adjective iterative refers to a process where the design of a product or application is improved by repeated review and testing.Continue Reading