The dream of any product owner is fully customizable production software without the expense of the hardware it rests upon. While not completely free of infrastructure, serverless infrastructure significantly reduces overhead costs by abstracting away physical hosting, physical security, server maintenance, and OS patching. Here's what you need to know to decide if serverless infrastructure is right for you.
Effective source code management provides a basis for every essential development best practice, including continuous integration and continuous delivery. The key is realizing just how much valuable metadata is being created in your source code management system and establishing the tools and procedures to make this information available.
Adopting microservices can be a great way to split up existing monolithic legacy applications in order to gain some flexibility and accelerate the development of new features. But the learning curve is steep, and you may need to make some sacrifices. Andrew Phillips outlines the potential impact this implementation can have on architecture and operations in an enterprise environment.
An advanced, efficient test automation platform, combined with a more systematic and comprehensive architecture, can help boost quality assurance operations to a whole new level. In order to best maximize a software product’s reliability, consider these seven requirements for your test automation efforts.
Many systems architects have a technology—centric view of service-oriented architecture. This article emphasizes the need to understand the business side of SOA before tackling the technology and illustrates this need with a look back in time.
Software engineering has come a long way, but programmers still spend a lot of time on tasks that could be automated. Fortunately, there's model driven architecture with its new generation of modeling tools that go way beyond the average UML. Learn how MDA addresses the challenges of today's highly networked, constantly changing systems environment and provides an architecture that assures portability, platform independence, productivity, and much more.
Connect with an expert to learn how to work smarter and discover new ways to uncover more defects. In this issue, Michael Bolton takes a close look at one of the key skills of Rapid Testing: critical thinking.
The most costly product defects are often a problem of software architecture. Testing your architecture is a crucial, but often overlooked, step in product development. Learn how to create apply a Systems Architecture Review Board for your own architectural review process.
In this interview, Neal Ford, a director and software architect at ThoughtWorks, explains why software architecture has traditionally been so difficult to change later on in the process and how you can adapt your modern architecture to be much more evolvable.
Ever since distributed software became popular, developers have been choosing whether to use monolithic architectures or service-oriented architectures. With the advancement of cloud infrastructure and the widespread implementation of agile methodologies, the latter approach has been...
Continuous integration has made development faster and more reliable. However, as codebases expand, organizations are finding that their build pipelines slow down dramatically. One of the most common reasons is that we often rebuild parts of the system that don't need to be rebuilt.
For many years, software architecture was described as the “parts that are hard to change later.” Modern advances in architecture have shown that if architects build evolvability into the architecture, change becomes easier. Neal Ford describes a family of software architectures that...
“Can we do agile?” is a question often asked by individuals enviously looking at the impressive results reported by other organizations that adopted agile practices. What they are usually concerned about are the commonly perceived barriers to agile adoption: large scale, legacy...