WHICH METHODOLOGY FOR THE SOFTWARE OF THE FUTURE?

WITH NUMEROUS TEAM FRAMEWORKS BEING ADOPTED BY DEVELOPERS, IT CAN BE TRICKY TO KNOW WHICH STYLE WILL WORK FOR YOUR BUSINESS.

WITH NUMEROUS TEAM FRAMEWORKS BEING ADOPTED BY DEVELOPERS, IT CAN BE TRICKY TO KNOW WHICH STYLE WILL WORK FOR YOUR BUSINESS.

 

The pace of change in the realm of software development puts pressure on developers and the companies they work for to stay current, lest they lose out on the advantages which come with progress. Among the methods used to do that are hackathons and reverse mentoring at the developer level, while at the company level, various methodologies are applied to achieve optimal outcomes. But just how well do these approaches work in practice?

Eckart Zollner, business development manager at Jasco, says businesses must recognise that software development is an intense, high pressure task with a large degree of reliance on the final output. “It’s not dissimilar to air traffic control. Developers are often extreme, individual characters who flourish best in unconventional conditions,” he notes.

Be that as it may, those individuals still have to live and work in the real world, in teams, and meeting the requirements of corporate environments. “[Software development businesses] have to understand that in order to stay successful, you can never stop learning and changing [and that] has to be clear in balancing development with commercial realities. Developments have to show success, or else the developer workforce will become disillusioned and leave.”

Stuart Scanlon, sales director and marketing for New Era Solutions, says frameworks assist in channelling the skills of a team. “Bottlenecks or inconsistencies are picked up and typically that will highlight a weakness in the team or a member of the team. With proper project management, this weakness can then be addressed,” he says.

HORSES FOR COURSES

Tarkan Diraz, GM, Digital Marketing and Mobile Digital at Britehouse says the common methodologies – Agile, Scrum and Waterfall – applied by software development teams today are not mutually exclusive. They should be applied on a ‘best tool for the job’ basis. “Each has its place; a business could run some projects as Agile and others as Waterfall, for example. Some projects may have a large amount of requirement changes in a highly dynamic environment; others might have a fixed scope, deadline and budget. It’s really about being able to assess upfront which is best for the job, each with advantages and disadvantages.”

Zollner agrees. “Mobile application development for instance does best under the Scrum methodology. Process technology based development would use the Waterfall method. Embedded software usually forms part of the Agile methodology. Sometimes a combination of approaches is used; a prototype is developed through the Scrum methodology, while the final high volume population follows the Waterfall model.”

While Scanlon reinforces that position, saying no framework is better than the others, Sue Bramhall, Agile Consultant at Solutionsonsite takes issue with the Waterfall methodology: “The only real benefit is that management get comfort initially, thinking they have a clear delivery date and things won’t change. However, inevitably things do change and often projects fail at meeting their delivery commitments. To my mind, spending months trying to ascertain detailed requirements only to have the customer change their mind is futile.”

“HACKATHONS CAN BE EFFECTIVE AS YOU’RE TRYING TO BREAK BOUNDARIES CREATED BY PEOPLE’S LIMITATIONS THAT HAVE BEEN PLACED UPON THEMSELVES, BY THEMSELVES.”

 

Zollner makes the point that software development depends to an extent on the personality of individuals, their team character and team leadership. That overflows into suitability for the selected methodology: “Some developers are unsuited to Scrum while others are unsuited for Waterfall approach. Quite a bit of care has to be taken to ensure that developers are matched with their optimal working style and capabilities.”

BUILDING FOR THE FUTURE

Scanlon points to changing habits in the real world which impact on how education and learning are taking place now and in the future. “Learning needs to be both formal and informal. This means a blended delivery of self-paced and instructor-led learning, or mentoring,” he says, adding that social media is playing a growing role too.

“Hackathons can be effective as you’re trying to break boundaries created by people’s limitations that have been placed upon themselves, by themselves.”

Bramhall agrees, noting that most companies take part in hackathons and ‘dev days’. Other means for advancing skills include pair programming, test-driven development and personal development projects aligned to company vision, she adds.

There’s some enthusiasm for the concept of reverse mentoring, in terms of which the youngsters take the lead for older folk. In software development, this works well, as, for reasons arguably tied to the human condition, dealing with change comes easier to juniors than to seniors. “Employees senior or otherwise involved in tech are always keen to learn; age has nothing to do with it,” enthuses Bramhall.

His top tip for businesses seeking to meet the challenge of finding the optimal ways of staying current with development methodologies and learning approaches is just to get stuck right in. “The best advice I could give is ‘just try it’. You’ll quickly realise what works for your business and what doesn’t.”

There is no holy grail, Diraz says. “I also wouldn’t be afraid to take aspects from different methodologies and mix them up, so long as it’s getting you effective sustainable results. Running everything to the letter of the law won’t keep you dynamic and ahead of the competition,” he concludes.

Diraz highlights he has yet to meet a developer that knows everything. “I learn things from my juniors all the time. If a senior isn’t willing to at least try it, then their arrogance is getting the better of them,” he notes.