InfoQ Homepage Articles
-
Distributed Transactions at Scale in Amazon DynamoDB
Amazon DynamoDB supports transactions without sacrificing performance or availability. Akshat Vig explains how DynamoDB introduced TransactGetItems and TransactWriteItems for atomic operations, proving full ACID support in distributed transactions.
-
The False Dichotomy of Monolith vs. Microservices
Taking sides in the debate of microservices v. monolith gets in the way of doing the right thing for our customers. Sometimes, we need microservices. Sometimes, we need a monolith. Most of the time we are better off somewhere between these extremes.
-
Agile Rehab: Replacing Process Dogma with Engineering to Achieve True Agility
Struggling with your "agile transformation?" Is your scaling framework not providing the outcomes you hoped for? In this article, we’ll discuss how teams in a large enterprise replaced heavy agile processes with Conway’s Law and better engineering to migrate from quarterly to daily value delivery to the end users.
-
Has Your Architectural Decision Record Lost Its Purpose?
Architectural Decision Records (ADRs) are important vehicles for communicating the architectural decisions a development team makes about a system. Lacking a clear definition of what is architectural, and also lacking anywhere else to record important decisions, they can start to drift from their original purpose and lose focus and effectiveness.
-
How to Sustain Quality and Velocity in a JavaScript or TypeScript Project?
The JavaScript language and its ever-changing ecosystem of packages and practices can make codebases quickly become hard to maintain. The resulting loss of development velocity and/or code quality can be prevented without rewriting everything from scratch, nor pausing the development of new features. In this article, we have analyzed a few best practices to help avoid that.
-
How Agile Teams Can Improve Predictability by Measuring Stability
In this article, we will present our approach for analysing agile systems as networks of queues and how we have used it to analyse 926 projects in the Public Jira Dataset. We explain how you can measure the Stability Metric (SM) for your queues. Finally, we will present our planned next phase of research.
-
Simplifying Persistence Integration with Jakarta EE Data
Jakarta Data streamlines Java enterprise data integration. Supporting various databases, it boosts productivity, is open-source, and community-driven. GitHub offers hands-on experience for modernizing enterprise architectures.
-
User Story: a Placeholder for a Conversation
User stories are meant to be a placeholder for a conversation. This article dives into the differences between user stories and tickets, where stories came from and how recent trends are moving us away from conversations. It shows the impact this is having on product development and easy ways to improve collaboration through conversation and writing better stories.
-
Bridging Silos and Overcoming Collaboration Antipatterns in Multidisciplinary Organisations
There's a worrying trend towards focusing on specialisms at the expense of collaboration, shared responsibility and valuable outcomes, which can take teams away from multi-disciplinary collaboration. This article calls out three collaboration anti-patterns that appeared in more than one organisation, some of the symptoms they cause and some thoughts on how to go about counteracting them.
-
Domain-Driven Cloud: Aligning Your Cloud Architecture to Your Business Model
Domain-Driven Cloud (DDC) is an approach for creating your organization’s cloud architecture based on your business model. Based on Domain-Driven Design (DDD) and the architecture principle of high cohesion and low coupling, this article introduces DDC including the technical and human benefits of aligning your cloud architecture to the bounded contexts in your business model.
-
Why Developers and Staff+ Engineers Should Get Involved in Open-Source Collaborative Development
Over the last 30 years, the world has become connected and digital. Open source is how we do modern software development, stitching together downloaded open-source libraries, frameworks, and other code to create new applications or functionality. This is why every developer and senior staff+ roles need to know what open source is and how it works.
-
Dealing with Java CVEs: Discovery, Detection, Analysis, and Resolution
This article delves into the importance of integrating Software Composition Analysis (SCA) in CI/CD pipelines for security. It highlights the need for human oversight to accurately assess vulnerability impact and cautions against "alert fatigue." The article also recommends specialized tools for effective vulnerability management.