Design-only DDD

The common DDD components have gained traction in many development projects. It’s not uncommon to see data repositories, services, entities and value objects well defined in code.

This often leads developers to claim that they are practicing DDD, and after all why not? They are using some of the artifacts espoused by the practice.

Continue reading »

Speed up your batch processing, go parallel

Many companies do overnight, weekly, or even monthly batch processing to produce reports, update inventory catalogs, synchronize systems and consolidate information.

Often, as data grows, the number of desired outputs grows, and the time to execute these batch jobs grows too. Consequently tremendous efforts go into optimizing and squeezing out minimal gains in order to ensure the jobs complete by the time they are needed.

Continue reading »

Failure isn’t an option, it’s a certainty

As systems get large, failure becomes less binary. It becomes more probable that your system has a failure, but conversely less of your system is failing at any given point in time.

As per Randy Shoup’s classic (or personal favorite) presentation on eBay’s architecture and lessons learned, at any point in time at eBay there are systems down―the trick is to make a system that continues to run smoothly. As a consequence of this, their developers must actively design with failure in mind.

Continue reading »

Designing for scale without over-engineering

While starting to read “Scalability Rules: 50 Principles for Scaling Web Sites”, I was pleasantly surprised to immediately read rule number 2: design scale into the solution.

This rule proposes that, if scaling up is a concern, then design for 20 times capacity, implement for 3 times capacity and deploy for 1.5 times capacity.

While I can’t vouch for their numbers, nor am I going to re-explain all their thinking, I’d like to share how this aligns itself with architecture and design on Agile projects.

Continue reading »

Assertions in production code

The assertion is an old paradigm that has been around since before the advent of object-oriented languages. An assertion is a statement that asserts that some condition is true, and causes an execution failure if the condition is not respected. It’s that simple.

Failure can be translated into an exception, a runtime error, or even a runtime failure resulting in unstoppable application termination.

Continue reading »

I take the journey and aim for excellence

In February, I travelled the world to join the Pyxis team. Coming from an all year round warm country, it was an interesting experience to land here in the middle of winter and try to explain to my body what was going on. Walking to work on my first week, I got to feel way too cold temperatures boosted by an awesome phenomenon called wind chill. However, once I got to the office I was warmly welcomed and got to meet more of the Pyxis team which led me to forget what was going on outside.

Continue reading »

Validating XML content when testing

Working with large systems that don’t have automated validation frameworks is a pain. So much so that many developers label them legacy even on their maiden voyage. The reality is that there exist many such systems in production today, and many more going into production hourly.

Because of this, its not uncommon to find oneself dropped into such projects. We grumble and groan and hope to get off them as quickly as possible. Well buck up, greenfields projects are a rarity so here is where we practice our trade.

Continue reading »

Urban Turtle Evolves Into an Application Platform for Microsoft Team Foundation Server

LAVAL, QC, CANADA—March 1, 2013—Pyxis Studio, the company behind Urban Turtle, the leading Agile planning tool for Microsoft Team Foundation Server (TFS), announced today that it has transformed Urban Turtle into an “application platform” to better match dynamic and growing client needs. Moving forward and exclusively for TFS 2012, Urban Turtle will be a gateway for managers and developers alike to purchase software solutions on demand—all within TFS 2012.

At the core of the new Urban Turtle platform is the ability for companies, development teams, or individuals to purchase applications based on their goals and objectives. For instance, managers seeking to track project progress can purchase Urban Turtle’s newest add-on, a dashboard for TFS, without leaving the application. The dashboard offers configurable widgets, including an innovative Sunset Graph that project managers will love.

“The new Urban Turtle platform allows clients to extend TFS with incredible ease. Once initial software is installed, users pick and choose the applications they need and customize them, if need be,” says Dominic Danis, Product Director. The result allows users to avoid costly and time-consuming software acquisition and installation delays. Clients can now get the software they need to be successful—when they need it (24/7).

To support this new direction, and building on Urban Turtle’s hugely popular planning and task boards, the team has already introduced several new applications, including an estimation board to improve and speed up the estimation process and Fast Track, a highly configurable board that allows teams to manage interruptions (e.g. support tickets) and simultaneously maintain sprint commitments.

“This is just the beginning. Our team is committed to developing SMART innovations for our growing client community,” Dominic continued. Moving forward, Urban Turtle will regularly introduce new and valuable applications. More than ever, the team is dedicated to delivering awesome software to help Agile teams around the world be more successful.

About Urban Turtle

Urban Turtle helps over 700 companies in 21 countries build better software faster. Widely known as the leading Agile development tool for Microsoft Team Foundation Server, Urban Turtle has evolved into an application platform for TFS. The new platform, Urban Turtle 2012, is the most powerful, tightly-integrated, and comprehensive software offering that empowers companies to optimize software development—and have fun doing it. Applications in the software platform include backlog management, a task board, a dashboard, an estimation board, a daily stand-up timer, and much more. For the love of Agile software and to learn more about Urban Turtle TFS add-ons, find us at urbanturtle.com.

About Pyxis Studio

The Studio is the software development division of Pyxis Technologies inc. We develop sustainable applications, maintain existing ones, and assist development teams by providing Agile products as well as technical guidance and professional services on how to implement state-of-the-art development techniques. Our Studio lives for unique and personalized software designs and inspiring projects that we can carry out with or for our clients. We welcome our clients into our teams where we not only develop software but create unique experiences that bring software development to a higher level.

For additional information: Dominic Danis, 1.855.875.2072 ext. 1, ddanis@urbanturtle.com

# # #

The trademarks and trade names mentioned herein may be the trademarks of their respective owners and are hereby acknowledged.