It’s the company’s anniversary party. Wow! I just can’t believe it’s been 5 years already and we’re still rocking, said the founder. Yes, said one of the engineers, it is amazing! The engineer’s wife asked him a moment later, honey, how is it that the company has customers? You know, I was on the Internet the other day and I couldn’t find the company’s website. That’s simple, we don’t have one. We rely on referrals to get new customers. Oh! And how many new customers did you get last year? Let me see… Hmm… Yes, two. The lady was surprised. But with your team, you could provide your products to a lot more customers than that, don’t you? Of course! He said. It’s a shame to waste all the potential the company has, he added. Then why don’t you have a website and attract more customers? Or have internal computer systems to control the work?. Well, we’ve tried but implementing software is expensive, and if we want to build something custom it is very difficult to manage the whole project, not to mention dealing with software companies…
Are you familiar with this scenario? Have you been in this situation? Yes, we know.
It’s difficult enough to keep a company running, without adding “the problems” that software projects bring. Yet, problems have quotation marks above because we believe it’s time we change their reputation.
See, the changes in computers and software just in the past 5 years have changed the way businesses are run and done today. Business owners have stopped ignoring that without software (or software updates), their businesses won’t be able to grow, or to keep running at all.
Our focus in this blog series are projects; more specifically, the aspect that brings doubt to every business owner, manager, or product owner: how software projects are managed.
The keys to successful software projects are many; a participative client is one, a happy development team is another. However, at the time of choosing a partner for a software project, the goal is to find one that not only knows how to build software, but also to manage the building process so the final product is delivered on time, on budget, and with the right features.
Our processes include time spent at the beginning of each project to discuss our clients’ needs, develop a concept based on the ideas we find together, and establish the path to follow. It is only then when we decide how the project will be handled.
At the core, we think of projects in terms of one key element: complexity. The complexity of a project dictates the steps we need to take in order to complete it successfully. For example, complexity establishes the level of communication between the customer and us throughout the process.
Complexity comes from many different sources. The most important one is the customer itself: by determining how much our customer knows about the software that needs to be built (the required functionality), when the software is needed, and the budget, we can determine that a project is somewhat simple.
On the other side, if our customer knows what a software should do, but doesn’t know how the elements work, how a part of the software will interact with another service, or doesn’t know that there’s a need for a different service altogether, then the project becomes complex.
Complexity impacts directly on the time the project takes to implement (a complex project most likely cannot be implemented in a short period of time), and also impacts the budget (most likely it will be more expensive, this being just a consequence, since it will take longer to complete).
At CSW we work with simple and complex projects, we just manage them differently. We have the knowledge and experience to work with you regardless of level of complexity because we apply different techniques and tools to ensure your project succeeds.
Our next posts will comprise two more angles related to project management (including sample scenarios)– one deals with determining complexity levels, while the other is a view at applying the Scrum framework to manage complex projects. Both by CSW Solution’s Sr. Developer José Guay, and both intended to give you a deeper view on how we run things at CSW.
Come back for parts 2 & 3!