At this week’s Brown Bag Lunch Talk, Nick made panini sandwiches (with home grown heirloom tomatoes, including Sonia’s grown-from-seed sungold cherries; mozzarella; spinach; and turkey) and we all headed to the roof deck for a lively discussion on service-oriented application architecture.
It’s clear what our company goal is: we want to deliver high quality software that’s supremely usable, developed rapidly, iterated over time, maintainable, and evolves with our client’s needs. That’s not an easy task—but developing software using a service oriented architecture helps.
We took as an example a recent reporting feature that we built for a time keeping application. Rather than building separate report features for reporting timeslips, and another for reporting client projects, and another for reporting users, and another for reporting budgets… we built a single, reusable reporting service. It expected start and end dates. But from there, it could be told to report over different kinds of objects—timeslips, or people, or projects—and it handled them as expected. If we needed to add a new reporting feature, like downloading data to excel, we could do it in a single spot—at the report service level.
Service-oriented design promotes re-use and thoughtful application design. The outcomes that we’ve experienced, though, are smooth agile development sprints, higher quality software, and software that responds well to client’s changing needs.
Have a comment or question? Send us a note. It won't be shown here and email isn't required, unless you'd like a