Methodology

Solution Architecture with the Future in Mind

Our Approach

ThisWay Development takes a systematic, modular approach to architecture and enterprise development. We work with business users to understand exactly what the system is intended to accomplish, then think through how components interrelate and how systems will evolve and endure over time, resulting in a highly flexible and adaptable system that will quickly scale and change with minimal cost and impact.

ThisWay listened to our ideas, explained technical concepts in common language using analogy, and ultimately built an adaptive blueprint that will support the dynamic nature of our business. We feel like we are in good hands with ThisWay Development as our technical architects and we are proud to consider them as part of our team.

Follow us ThisWay for Long-term Success

Define Use Cases

We begin by understanding at a high level what your business does and which of those functions you expect the system to carry out. This big-picture view allows us to establish simple use cases that help us understand what you want to accomplish–a very important step before we start working out how to accomplish it. An example use case may be “I collect money from customers.” 

Identify Components

Once use cases are defined and agreed upon, we identify the components of each use case. For the example use case of “I collect money from customers,” components may include security, validation of funds, the need to interface with the customer, bank, and internal systems, and so forth. 

Assess Volatility

Having an idea of which components may change over time will help determine the architecture of your system. We look at the volatility of each component individually. Using our example, your company may change banks, or new regulations may be instated for financial institutions that affect processes. That means we want to isolate this component so that you can easily change it out without affecting the rest of your system.

Create Common Workflow

The key to establishing an effective workflow is getting the right people in the room. If you ask three people how they do the same task, you’re likely to get three different answers. We factor all of the users, processes, and workflows into the equation, come up with a consensus that will work for everybody moving forward, and then delineate requirements in precise detail.

Design the Architecture

Based on volatility, agreed-upon workflows, and thorough requirements gathering, we now map out the system architecture. We strive to compartmentalize code, thus creating an “access panel” so you can change isolated components without pulling everything apart.​ Moving forward, when a process alters or there is a change in your supply chain, you can just change the configuration of that component and the system adapts.

Develop & Test

By the time we start coding, we’re building the blueprint to spec so you can be confident that what is delivered is exactly what you expected. Our coding process is rigorous, building in failsafes like retry logic and notifications so not only are we testing every step of the way, the system tests itself to maintain stability. 

Document

Some development companies own the code they produce and license it back to you, giving you little visibility into your system. In our minds, if you’re paying us to do the job, you own the work product. From beginning to end, we provide thorough documentation that includes everything you need to understand how your solution was built and what you need to do to support it. If you prefer, ThisWay Development is available for ongoing support.

Define Use Cases

We begin by understanding at a high level what your business does and which of those functions you expect the system to carry out. This big-picture view allows us to establish simple use cases that help us understand what you want to accomplish–a very important step before we start working out how to accomplish it. An example use case may be “I collect money from customers.”

Identify Components

Once use cases are defined and agreed upon, we identify the components of each use case. For the example use case of “I collect money from customers,” components may include security, validation of funds, the need to interface with the customer, bank, and internal systems, and so forth.

Assess Volatility

Having an idea of which components may change over time will help determine the architecture of your system. We look at the volatility of each component individually. Using our example, your company may change banks, or new regulations may be instated for financial institutions that affect processes. That means we want to isolate this component so that you can easily change it out without affecting the rest of your system.

Create Common Workflow

The key to establishing an effective workflow is getting the right people in the room. If you ask three people how they do the same task, you’re likely to get three different answers. We factor all of the users, processes, and workflows into the equation, come up with a consensus that will work for everybody moving forward, and then delineate requirements in precise detail.

Design the Architecture

Based on volatility, agreed-upon workflows, and thorough requirements gathering, we now map out the system architecture. We strive to compartmentalize code, thus creating an “access panel” so you can change isolated components without pulling everything apart.​ Moving forward, when a process alters or there is a change in your supply chain, you can just change the configuration of that component and the system adapts.

Develop & Test

By the time we start coding, we’re building the blueprint to spec so you can be confident that what is delivered is exactly what you expected. Our coding process is rigorous, building in failsafes like retry logic and notifications so not only are we testing every step of the way, the system tests itself to maintain stability.

Document

Some development companies own the code they produce and license it back to you, giving you little visibility into your system. In our minds, if you’re paying us to do the job, you own the work product. From beginning to end, we provide thorough documentation that includes everything you need to understand how your solution was built and what you need to do to support it. If you prefer, ThisWay Development is available for ongoing

For a more detailed walk-through of how we approach each of our software development projects, schedule a one-on-one meeting with us. We’ll show you our methodology in depth and answer any questions you may have.