![]() These long months spent without concrete user feedback were very difficult for the team, and for the rest of the organization. We still continuously deployed changes to the new system to production so that we could test them internally, but none of these changes were exposed to our customers. ![]() What we ended up doing instead was taking a bit of a gamble: We spent the next several months building the entirety of the new system in more or less one shot. This is the reality of working with legacy systems: Much of the time, the complexity of breaking dependencies and rebuilding small, self-contained parts of the system results in a prohibitive amount of overhead. In reality, things didn’t quite work out this way.Īfter reaching our first milestone, we quickly ran out of features that we could easily “extract” from the old system without dragging a bunch of related things along. You may be expecting us to say that we continued to proceed in this fashion building another feature in the new system, and then migrating everyone to it, until the old system was completely gone. By delivering in increments, you can prevent these unnoticed flaws from invisibly piling up on one another, and the feedback you get from your customers can be incorporated into the project much earlier. One of the major benefits of delivering a project in small increments is that it reduces your delivery risk: Mistakes or design flaws that go unnoticed in construction are much more likely to be revealed when real users get their hands on the product. The end result was that migrated users were using a hybrid of the new and old invoicing systems whenever they logged into Wave. We told the story of building our new invoice reminders implementation and migrating all of our users to it. Incremental ProblemsĪs described previously, we decided to take an incremental approach to this migration. We have many stories we could tell about our journey, but in this post we’ll describe the parts we thought would be most valuable to others attempting something similar. We had real users working with an important part of our new system, and the migration engine we’d built to get them there had done its job well.īut, as with most early victories, the most difficult times were yet to come. By the end of our first project to migrate invoice reminders, we felt accomplished and optimistic about the future of the Wave Invoicing migration.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |