Milestone-Driven Software Development Process
In software development, as in other scalable projects, small projects are easier — they are easier to plan for, define, estimate and work on, etc. It’s also much easier to track goals in small projects and to see how well those goals are met. Our software development process essentially takes a project, no matter how large, and breaks it down into smaller projects that are well defined and efficiently managed. This process gives our clients the chance to evaluate the progress, value, and usefulness of their application in incremental stages, thus helping the project stay on budget, on schedule, and on point.
Our Development Process Allows for Early Changes on a Project Based on Early User Feedback
When incremental tasks are completed successfully and stacked upon themselves, they yield successful projects. The milestones we use in our development process have built-in tools that help validate progress, business objectives, and success. We document what we will give our clients, and the test plan developed for each mini project allows clients and other stakeholders to cross-check our work. The documents we provide for each milestone also offer a convenient, centralized place for stakeholders to view exactly what we plan to do, which can be helpful to a client if, for example, they want their IT department time to weigh in on infrastructure, etc.
An Account Manager's Summary of Our Process
We start each project with a Planning Milestone. This initial step consists of getting a general understanding of the scope of the entire project, and a specific, detailed understanding of the first 1-2 months (or milestones) of work. In the second milestone, we begin laying out the workflow of the app (or iteratively wireframing) with refinements based on your feedback. When this workflow is accepted, we move forward with more detailed frontend designs (again, iteratively with your feedback), and, once these are approved, we begin implementing these designs with our developers. Each release will then be thoroughly tested and sent to you for review. While this process moves forward, your Project Manager (PM) will work with you to begin defining in detail the next milestone. We essentially repeat the whole process until you are satisfied that your business needs are fulfilled.
We welcome deeper, development process discussions with you or your internal development team.
A Detailed Overview of our Development Process
Successful custom software development projects evolve and the development process itself must embrace and manage that transformation. A process that is too rigid will miss the end target and inevitably require expensive, time-consuming rework, while a process that is too loose will eventually lose direction, burn unnecessary budget, and never be implemented successfully. Art & Logic utilizes a milestone-driven approach based on proven agile development principles.
- A focused and efficient use of budget
- Visible and verifiable progress
- Frequent opportunities to make refinements
- Cooperative prioritization of work
- Successful results
Illustration of Our Development Process
Milestone 1, 2, N . . .
Each development milestone repeats a pattern that involves:
- Testing: Unit testing, regression testing, and user testing of the milestone features and functionality.
- Bug fixing
- Planning documents or UI mockups for approval
- Staging release for interim feedback
- Alpha release for usability testing
- Beta release for end-user feedback
- Production-ready installer
The Non-Technical Overview of Our Process
First, we meet with your team to understand the big picture – what are you trying to accomplish? This is a big picture view of the project. The goal of this initial discussion is simply to gain sufficient understanding of your project so that we can give you a rough ballpark idea of cost and schedule that you, in turn, can use for business planning purposes. It’s not an attempt to provide you with a detailed estimate or project plan. Let’s face it, at this point in our relationship, we know less about your project than we will at any other point over the course of our work on your project. Attempting to deliver a detailed estimate before learning even more about your needs and wants would be irresponsible and, frankly, misleading. The rest of our process roughly follows the following outline:
- We collaboratively decide what the heart of the application is, what needs to be done first.
- Looking just at the heart of the application, we collaboratively unpack the requirements, both from a business intelligence and technical perspective. When we’ve all decided on what exactly we’ll be doing and sign off on that, A&L estimates the work and submits that for approval.
- We implement ruthlessly.
- We test ruthlessly, using the test plan developed during the estimation of the milestone.
- We release to you and ask that you, with the test plan and Requirements document in hand, validate the application and provide feedback.
- We reconvene and decide what to do next.
- Repeat until you determine we’re done.
Our process ensures that you, as the client, and we, as your developers, have the necessary latitude to address the realities of custom software development as they arise, and thereby deliver a successful project that benefits you, your business, and the end users of your software. Contact us to learn more about what we can do for you.
As we reach the end of 2016, let’s take a look at some of the stuff we wrote about over the course of the year. We shared our thoughts on custom software development, looking at the such things as: the differences between composing and improvising; the value of refactoring; the nuances of following a lean-startup model; the conflict between Apple and the FBI; what happens when bad projects happen to good people; and a top ten list of the ways in which software development is like parenting.read more
Paul I resolve to brighten the lives and businesses of our clients and partners at every touch point. I resolve to be more creative and persistent in uncovering the deepest and most meaningful ways in which we can impact our clients' and partners' success. I resolve...read more
In the world of software consulting, it can be virtually impossible to determine what the fair market value for software development is. Nobody estimates work according to the same parameters: some firms have differing rates for differing services, some have offshore development services, some won’t provide a meaningful estimate at all (and for good reason).read more
I was recently given the opportunity to present myself as a “thought leader for my industry.” I’ve been pondering this. What do I know? What do I know so deeply and fully that others might want to hear my opinions on? Not much, it seems. Actually, I don’t have nearly as many answers as I have questions. But more than this, it’s the questions that really keep me interested. Here’s an example.read more
I love my smartphone. Like many of us today, I couldn’t live without my phone. I don’t do anything these days until my phone tells me I need to do it. Ok. Maybe slightly hyperbolic, but I can certainly say without exaggeration that I’m a more organized and productive person because of my phone.
But, the idea of a smart, wearable device? I didn’t get the point of it. Why would I want to take the functionality of my phone and compress it into an even smaller screen? It’s already tough enough to navigate my 4.7-inch smartphone. The idea of navigating an interface only slightly larger than a postage stamp was laughable.read more
In the early years of Art & Logic, my wife and I liked to visit a small inn in Palm Springs called Villa Royale. It was lovely. Each room was decorated in a different European country theme. The proprietors traveled frequently and brought back regional artifacts to...read more