AGS Logo AGS Logo

Vortex™ Development Process

In order to produce accessible, user-friendly applications that meet the needs of the end users, Andromeda has created Vortex™ a Lean, UX-Driven process for each software development project.

We assign a Team Lead to each project, to drive the technical decisions and facilitate communication between the team and the client. We use Atlassian products such as Jira, Confluence, and Bitbucket to manage the project assets and decisions, and to track work in progress.

Clear, consistent communication is critical for the success of all projects, so regular meetings and channels of communication are established at the start of each project.

null

As indicated in the above diagram, our process is iterative. Based on the size of the project and the distinct users and stakeholders involved, there may be multiple steps in progress at any one time, relative to different aspects or components of the project. Even though the steps above are distinct from each other for the purpose of communication, the reality is often more of a continuum of activity as we repeatedly cycle through the different phases.

0. Define

Define the project

At the very beginning of each project (and often between phases of longer projects), we define the goals and constraints for the project. We work with our clients to establish clear success criteria, which may involve specific features or user goals. Constraints such as budget or timeline are also included at this point so that the project can be appropriately staffed and scaled.

If you’re familiar with the traditional waterfall approach to projects you might expect to fully establish project requirements at this point. However, since all projects encompass a number of unknowns which will be uncovered throughout the course of the project, we embrace the agile assumption of change and unpredictability and build this into our approach.

1. Observe

Interview & Observation

As the project begins, we employ UX practices to obtain as much information as possible about the people who will use the software we’re building. This can involve surveys, interviews, or focus groups.

If there is existing software, we perform an analysis of the user experience and accessibility of that product, both independently and through user engagement and observation. We also collect available analytics, support tickets, and other forms of user data and feedback.

2. Plan

Personas & Scenarios

Now we take all of the information collected in the previous step and produce documentation that will drive the designs and implementation of the software. The most common output here include Personas and Scenarios.

Personas are not fictional users but are archetypes of actual groups of users of your system. The Persona is produced as a biographical write up of a single representative user from the group, using details based upon actual user data. This can help humanize the process by providing an identifiable person for whom to design.

Scenarios may be more familiar to you as user stories, but the concept here is that we are documenting the specific goals various users have for the application, along with how they expect to perform their tasks. Scenarios can be tied to one or more Personas.

3. Design

Wireframes & Mockups

The most visible activity in building software is the production of UI designs, which are created in consideration of helping users achieve their goals. Andromeda uses Wireframes (undecorated screen layout diagrams) and Mockups (realistic screen layouts with visual design) to communicate the proposed user flows and visual interfaces.

A tremendous amount of information feeds this process, including: Personas, Scenarios, Analytics, User Feedback, Constraints (time/budget/branding), and Implementation (technical limitations to producing designs in the final application).

The designs produced will be reviewed with the client in an iterative process, and subjected to user feedback and testing before a final design is delivered for approval.

4. Implement

Coding & Creation

This is where the actual coding and creation of the software takes place. In a typical project, this work is ongoing as additional designs and specifications are produced and approved in small groups of stories for the development team.

5. Deliver

Deploy & Release

The team uses a code review process to evaluate each change as a team before adding it to the application hosted in the test environment. The client will have ongoing access to a staging environment to see the application development as it progresses on the set cadence, which typically involves updates every 1-3 weeks.

Each release goes through a full QA process before being promoted to the live (production) environment where the end users will be able to access it. Releases require approval from the client and may involve a communication plan to let the users know what to expect from each update. Projects that don’t yet have an active user base may schedule a major application launch with full marketing roll out.

6. Measure

Metrics & Testing

Once the application is launched (and often while it is still in the staging environment) we’ll begin testing the product with the users through a UX process. Analytics and other automated data collection will additionally drive future designs and decisions as the process loops back around.