Posts tagged ‘teams

Automated Testing - What is it, and why should you care?

You’ve just started working with a software development company on a large project and you want to make sure everything goes smoothly and reliably. Unpredictable changes can cause no end of problems, from increased costs through to missed deadlines.

The software development procedure is rarely cut and dry, instead a series of evolutions as new requirements are discovered and built upon. Naturally, you want to be able to reliably expand on existing features whilst developing new ones that compliment and improve upon them.

How can we reliably build without compromising existing functionality?

Take the following example:

 Given I am a user with an account on the website
 When I visit my profile page
 Then I should be able to change my contact details.

This scenario is simple, and common across numerous websites. As a client you want to be confident that a user is able to update their email address and other contact information. How can we ensure this functionality continues to work properly?

Manual testing

One option is to manually test out the website yourself, going through each of the features in turn and making sure they work. Whilst this process does work in catching bugs that occur, unless the project is reasonably small, it becomes very costly on your time.

As a system grows and more features are added to it, it becomes an unrealistic burden to be expected of you. Finally, in addition to this, with manual testing comes manual errors, it becomes quite easy without a rigid process to accidentally leave aspects of a system untested.

Automated testing

Wouldn’t it be awesome if our web browser could somehow visit each of our pages for us, and check that everything works for us? Turns out we can… sort of. We can tell the web browser to visit pages, we just need to tell it exactly what to do on them, and set our expectations for what pages should contain.

This way we perform the test manually when we’re writing it, but then the computer can repeat this test for us over and over, much faster than we can did it in the first place.

The caveat usually associated with automated testing is a predictable overall increase in developer time for implementing features, after all - they need to write the feature and the appropriate tests to go with it. However, this time cost is usually paid back quite quickly, as bugs are detected as they occur, rather than after several days or weeks of development having gone by. As a result, bugs are typically fixed before they even make it out the door, resulting in a better product and development cycle for your product.

So now you know what Automated Testing is, be sure to check your product is being tested.

Five Things to Consider When Hiring a Development Team

A development team is one of the most important parts of building any new software product or startup. Getting the right team is crucial, as developers are the people that turn ideas into something customers will be interacting with and using on a daily basis.

Hiring a bad development team will cause the costs of the project to sky-rocket, and for it to be delivered months behind schedule. Getting a decent selection of developers at the start will ensure your business gets off to good start.

Here are a number of tips for selecting a development team for your product:

1. What services are required? What can the team deliver?

The end goal of shipping your product and making money is a great one, but to reach that goal you will have to decide what services you require. Most importantly, what can the development team provide to help your business run most effectively.

Analytics can help you understand how customers are using your products. Find out if the team you want to hire can provide you with analytics, and record how your customers are using the site.

Do you require your team to have its own product manager? Does your intended team have a user interface (UI) or user experience (UX) designer to provide wireframes, and build and test prototypes?

2. What kinds of projects has the team worked on before?

Finding a team who have worked on something closely related to your idea can significantly improve how fast and effectively the product is built as they will have touched on areas before. It may be a mistake, for example, to hire a 3D games specialist to build a social network. (It happens, trust us!)

Have a look through their showcase of previous projects. Ask them what they did for each project and what kind of features they built that may help with the product you are building.

3. What is your budget? How much are the team charging?

Hiring a cheap development team is all well and good until you realise that the product they have built isn’t quite what you wanted, and doesn’t work that well either. Skimping on budget may look good on your bank balance, but soon you will realise it often costs more to look for another development team to put the product back on track.

Maybe your team haven’t planned enough to cover communicating with you and ensuring that the ideas are fully fleshed out before being implemented. Leading to my next point…

4. How does the team want to communicate?

Effective communication and keeping you in the loop is essential for the success of online startups. Thankfully we live in an age where you can voice or video call people from around the globe with ease.

Make sure you and your development team can contact each other easily, and ensure there is a clear understanding of how much communication is expected of one another from the get go. When people stop communicating, your product can soon go downhill.

Turning your idea into a list of features and wireframes can take quite a bit of time and discussion before everyone is ready to get on with their work.

Here are just a few ways in which you can communicate with your team:

5. Get to know your potential team informally

It is amazing how much you can gauge about someone through an informal conversation with them.

Getting to know your development team before you hire them can be essential in understanding their background, what type of people they are, and what interests they have.

Having a good relationship with the team often boosts their efforts to make sure your business is built with love and care.

Post Archive