Confetti patternConfetti pattern

Optimize for quality, get speed for free

Custom software development by means of Quality Faster

Confetti patternConfetti pattern

Higher quality software, faster

Through our extensive experience in software quality consultancy, we discovered that focusing on quality practices allows for lightning-fast delivery speeds. Hence, our proprietary Quality Faster model was born. Refined and perfected over the last 10 years, the Quality Faster approach is employed in each and every project we do.

The QualityFaster Model

In its essence, the Quality Faster model comprises four phases: Discover, Solve, Actualize, and Learn. Each of the phases results in a corresponding output: Domain Behaviour, Component Behaviour, Product & Production System, and Insights. While the four phases are represented here in a linear progression, the Quality Faster model is non-linear and thrives on feedback between the activities inside and across the phases. The ultimate goal of Quality Faster is to provide you and your organization a means to deliver valuable, scalable, high-quality digital products.

Discover phase
In this collaborative phase we work closely with your team to arrive at what’s valuable for you, that is, what you need to achieve through the project. This phase is broken down into three activities, which are Ideate, Research, and Conceptualize. The resulting output is Domain Behavior. This is where a shared understanding is created, which is essential for delivering products that meet their purpose.

Solve phase
Where the activities in the Discover phase are concerned with product concept, the Solve phase is what needs to be done to create that product. This phase consists in three activities, which are Domain Modelling, Interface Design, and Architecture/Blueprinting. The respective outputs of these activities are broken down into manageable deliverable components, which also require specifications for their behavior. That way we create a clear and shared understanding through unambiguous specifications for the implementation to be swift.

Actualize phase
The Actualize phase takes the Domain & Component Behavior specifications as inputs and produces tangible software that can be used by its intended users. This phase has three main activities which are Build, Deploy, and Verify. The resulting output is not only a digital product, but also a production system. The latter is the culmination of all the phases and activities carried out so far, and includes the organization of people that work together, the processes and tools that they used, and any other resources that contributed to the delivered product.

Learn phase
This phase takes into consideration everything that can be learned from across the entire stack in order to learn and act. There are three main areas to learn from and their respectively named activities are Product, System and Process. Through these activities we arrive at insights that allow the product, system and the process to be improved. These actionable insights are then taken into future iterations of the various phases and activities for continuous product improvement.

The Quality Faster model in practice

Through many years of using and refining the Quality Faster model, we found that not only does it enhance digital product delivery but also helps our clients transform the way they work with technology. This is because the Quality Faster model neatly organizes practices that are usually loosely integrated, such as design thinking, business analysis, user experience, and visual design. It also helps name, understand, and visualize the phases and activities that flow across the various disciplines required to create valuable, high quality products. Above all, it helps understand where and how to apply practices that increase the throughput of value and quality simultaneously. Working with Xolvio means your desired digital product will be delivered with quality and at speed. But it also means you’ll discover an entirely new approach to software ideation and delivery in the process, changing your tech game forever.

OUR PROCESSES

Techniques & practices

1

Domain-Driven Design

DDD is an approach to software development that focuses on creating a solution model based on the particular business domain and the domain logic it’s designed for. The creative collaboration between domain and technical experts results in formulating a shared understanding of the business challenges and the requirements to address them, which provides us with a solid foundation for software design & development. DDD is highly effective for complex domains, where attending to problem complexity is a must in order to design the right solution.

2

Test-Driven Development

TDD is a development practice that tightly interweaves design, coding, and testing. This results in a better understanding of the product requirements and puts focus on software quality first. Such an approach increases development confidence and productivity, while significantly decreasing the cost of change over time. This is due to the fact that, when a piece of code fails a test, the developer can proceed to fixing it right on the spot, as opposed to excessively debugging at later stages.

3

Behavior-Driven Development

BDD encourages close collaboration between developers, QAs, and business representatives (domain experts). The goal of this collaboration is formulating a shared understanding of how the software is going to behave. BDD puts the business in the driving seat to produce software that lives up to the expectations of its stakeholders. Focused on building highest-value capability first, Behavior-Driven Development reduces the risk of budget overrun, while ensuring the application meets all requirements and is stable in production from the get-go.

4

Spec-Driven

Xolvio’s original approach to software development, Spec-Driven puts specifications at the center of the product development life cycle. Specs are the communication of design that leads to a shared understanding, which in turn leads to speed and quality. Spec-Driven encompasses each phase of the PDLC, starting from discovery and architecture, through infrastructure and development, all the way to testing, quality assurance, and deployment. Spec-Driven builds upon both BDD and TDD practices, but also includes UX design, project management & facilitation techniques.

5

Targeted Quality Assurance

Our great focus on software architecture and specifications gives us laser-sharp tools not only to build high-quality digital products, but also to verify them. The fact that we always write and gather specs with utmost care means we can test for those specs being met far quicker and with more confidence. In addition, we use a powerful blend of automated and manual testing, so that we lock in the value not just for the present, but also for the future. Finally, we leverage a combination of advanced techniques like visual regression testing, integration testing, and contract testing, as well as deploying to dynamic QA environments that facilitate a faster workflow. All of this makes your solution a flawlessly polished diamond, way before you’d expect it to be perfect.

6

Pragmatic Agility

In each and every project we work on, we manage our workflow through a Kanban-style system that allows us to continuously respond to your needs and change requests. This is possible thanks to the emphasis we put on creating flexible software architecture. By employing progressive and evolutionary design methods, we make sure that your solution’s architecture is as malleable as possible and can be easily adapted when needed. Last but not least, we constantly improve software through Kaizen practices as part of our continuous improvement mindset.

OUR TOOLBOX

Technologies we use

JavaScript

Javascript has become a cornerstone of the World Wide Web. We use it to run frontends, backends, as well as infrastructure, making the most out of its lightning speed compilation times, thriving ecosystem, and interoperability.

TypeScript

A superset of JavaScript, Typescript expands on JS with powerful features that allow us to develop high-complexity, enterprise-class software. It also helps us maintain high software quality and manage systems better over time.

Node.js

From dynamic web content to backend domains, we use Node.js as the runtime for our microservices. Node.js’ event-driven architecture allows us to scale and optimize throughput, as well as create rich, high-performance web applications.

React

We use React because of its massive ecosystem that gives us everything we need to build components quickly. Due to React’s code stability and high performance, we like to use it not only for web design systems, but also for back office applications.

Serverless architecture

We make things easier for you and reduce costs by offloading server responsibilities to the cloud. Cost-effectiveness aside, serverless architecture allows us unprecedented scalability and flexibility, while also increasing productivity through faster delivery cycles.

AWS Cloud Development Kit

AWS CDK allows us to remove the human error aspect of IT operations and increase infrastructure reliability. We use it as part of our ‘automate everything’ culture, as well as for highly advanced Quality Assurance practices.

Federated GraphQL µServices

While we value decoupling teams so that they have full autonomy and ownership of business domains, we want to ensure that they can integrate seamlessly. Apollo GraphQL helps us do that with federated microservices functioning in a single graph for maximum flexibility.

Headless technology

Going headless allows for maximum agility and flexibility, as it enables us to deliver digital experiences across multiple channels quickly and easily. We leverage the best headless CMS solution, Contentful, and we also design and deliver bespoke, modular e-commerce software.

Event-sourced systems

Having successfully built and deployed event sourced systems for our clients, we can vouch for their increasing popularity in the industry. Event-sourced systems are highly reliable, flexible, scalable, and future-proof, as well as allow for unprecedented business intelligence, making this pattern the perfect choice for high-complexity software design & development.

BLOG

Our insights

GET IN TOUCH

Let’s discuss how we can help you

Do yourself a favor and reach out to us to solve your digital problems.

Pick our brains