Click to Select
- Continuous Improvement
- Metrics & Indicators
- GR-Agile Methodology
- Client Communication
We advocate a continuous improvement methodology for process engineering, software development, and organizational management. In practice, we often execute the classic Deming Cycle in two combined phases (though, it’s worth pointing out, the definition of improvement and how we measure it is always made clear initially):
Applied to the diapason of new product creation tasks, we believe rapid improvement cycles are essential to the success of a project. Often that sounds so easy (and obvious); in reality, when everyone is in the throes of ideating and development, there can be a surprising tendency to delay deployment and plow ahead with “improvements.” But wait, is that the direction we really should be going? How does what we have actually work? Let’s test and see.
Assessment of performance is critical. Both external — is an application doing what it’s supposed to? Are use outcomes across time tracking as hoped? — and, in the work we do, often internal to the mission of a system. How to collect and measure performance data of a cocoa supply chain, school district professional development budget, or the sustainability and environmental impact of an investment portfolio? We specialize in designing metrics, from data collection to presentation. And, yes, we build dashboards too.
Stemming from our belief in iterative design and practical experience, we rely on a slightly modified version of the Agile project management approach. We embrace prioritizing direct collaboration between developers and clients, and we release software to end users in short, frequent cycles. This mitigates a host of risks, since some functioning software actually goes into production early in the project, and it allows for design direction and correction based on real user feedback to be incorporated throughout the construction process.
While the creative, flexible spirit of Agile suits our temperament, we’re mindful of its potential pitfalls — initial loose definition of work leading to excessive re-work and informal changes to scope, for example, and an overemphasis on ongoing budget “run rates” without keeping a clear eye on total expenses. So we do our own “GR-Agile” methodology — we’re agile, but we set clear short term and long term goals, and never lose track of a project’s overall timeframe and budget.
A big secret: projects go more smoothly when you know what we’re doing, when we understand your needs and wants, and when we all agree we’re working together in the right direction.
Every project starts with a face-to-face meeting with you and your core Green River team, usually including at least one partner, to get to know each other and to agree on overall goals, specifications, major cost drivers, and initial steps. (We often cover our time and travel expense for this.) This first meeting, though, however important, is actually only a small step in our relationship.
To keep everyone on the proverbial same page, we have regular weekly scheduled calls (via phone and/or video conference with screen sharing) that pull in your project stakeholders and the Green River team. We review accomplishments, time invested and budget status, and agree on priorities. We also encourage ad hoc emails and calls anytime something needs clarifying or confirming. (Or if you just want to say hi, though in that case you may not get too many developers on the line.)
We utilize Pivotal Tracker for project management, and GitHub for code management, into both of which you can have direct access. We usually maintain a full “staging” version of your application on our hosting infrastructure for the duration of the project for testing and your review. Internally, we use Harvest for time management, and can generate detailed time/budget reports at any time.
After several challenging decades, modern browsers natively support the complex interaction design required to make intuitive applications. At the same, those intuitive applications now need to be just as functional on all kinds of phones, tablets, laptops, and monstrous desktop displays. And they need to look good, with a visual appeal supporting a satisfying user experience.
We treat visual design, UI design, database design, and application logic design all as integral components to software development. We utilize traditional artifacts like use cases, page mockups, wireframes, and functional specifications heavily in our work, but because of our belief in feedback and continuous improvement, their roles and lifecycles — creation, review, revision — stay prominent throughout a project’s entire life.