Seeking the Best Development Process? The Key Is Evolution


Seeking the Best Development Process? The Key Is Evolution

As a company with a proud history of developing software solutions, Software Planet Group have always sought to be flexible, ever-changing and perpetually on the cutting edge of technology. Through our 16 years of experience, we have learned that after the right people, having the right process is the most important step to ensuring the delivery of a powerful project. This not only saves a lot of time and effort for project participants, but also puts aside well-known pitfalls of development.

For customers, it is important to be aware of the different engineering models because all too often, developers do not guide customers through their processes, and sometimes even fail to mention that they do not use one at all.. The anti-pattern “Code and fix” is the status quo among inexperienced programmers. In essence, this means that coding begins with very little planning and goes on without any intervention, leaving important bug fixes to frequently take place late in the development cycle. This, of course, is a recipe for disaster, as customers are left with ineffective software that can lead to many more headaches than solutions.

Web Development Process diagram

Since our early years, however, we have been shaped by our determination to find the best process for customers and developers alike. And so, we began working in 2000 with the Waterfall method, a classic model in software engineering. Although many companies still use Waterfall today, we were unimpressed by the lack of a feedback cycle and its lengthy process, which can take months to plan and several more months to develop. In the end, we also found that if market demand or technology had changed since a project’s conception, using Waterfall even risked bringing a wrong product to the market. With these drawbacks in mind, we decided to search for alternatives.

The next model we adopted was created by Rational, a division of IBM. Dubbed Rational Unified Process (RUP), it divides development into four phases, each involving business modeling, analysis, design implementation, testing and deployment. This process sparked our interest because it touted solving problems related to clients’ requirements and reduced development costs. Unfortunately, however, we found this method to be a little too complex and disorganized to deliver on its promises, as RUP generated exorbitant amounts of very short-lived documents.

Finally, however, in 2004, we found what we had been looking for in Extreme Programming (XP), a process which includes 12 practices based on the Agile manifesto. In contrast with other conventionally impersonal and bureaucratic approaches, Agile encourages developers to prioritise individuals and interactions, deliver working software, collaborate with customers and swiftly respond to change. Extreme Programming effectively solved our problems with estimation and product quality, and marked a turning point in our company’s history, as we became one of the first software development companies in Europe to include all 12 XP practices in our service.

Then, in 2009, we made the switch to Scrum, our current process that is also based on Agile and is often described as “high-level XP.” In addition to giving developers the freedom to self-organise, Scrum provides customers with unrivalled access to the project. The method is as straightforward as it is effective: after the assembling and prioritising of a minimum set of features in a product backlog, we build, test and review each feature in a process that lasts just one to three weeks, called a Sprint. Every Sprint leads to a potentially shippable product, and the process is then repeated time and time again until the client decides that they wish to release the product.

By allowing customers to prioritise features for iterative releases, guaranteeing code inspection throughout development and taking customer feedback into account every step of the way, Scrum allows us to establish a groundbreaking partnership with our clients.

But this is only the beginning. As time goes by and technology strides forward, our engineers remain committed to adapt and evolve to continue delivering the software solutions you need, when you need them. 

Related Stories

Outsourcing vs Outstaffing What Is the Difference?
January 19, 2021

Outsourcing vs Outstaffing: What Is the Difference?

While making the outsourcing vs outstaffing choice may seem somewhat daunting, it is helpful to become aware of their key differences and commonalities.

Tuning into the Bigger Picture
July 16, 2018

Tuning into the Bigger Picture

Understand the importance of a "big picture" perspective in software development projects in our new post.

Product Based Mindset
August 31, 2017

Why a Product-Based Mindset Works Best

Imagine that you are in South America celebrating your wedding anniversary. Because pottery is a great local tradition and you want your spouse to receive the best possible gift, you have asked two of the most accomplished potters in town to sculpt you a clay vase.