Agile Software Engineering

A management-style perspective

In this article, Grant Lloyd, Chief Technology Officer Softline and Sage AAMEA reflects on the impact of managerial style on Agile Software Engineering initiatives.

Growing application complexities, drastically curtailed project delivery schedules (schedules being halved every 2 to 3 years in practice), a general intolerance by commercial users of software defects, and, greater integration, interface and interoperability requirements are principle drivers of software engineering in the present day.

Simultaneously, functional requirements have amplified and project funding apportionments have declined.  Where a project manager was previously able to trade one component of the project triple-constraint: time, cost and quality, against either of the others to reach a reasonable compromise, the more recent challenge has become improving the performance of all triple-constraint aspects simultaneously.

This compounded vigour in user demands and commercial priorities is demonstrated by frequently developing customer requirements which have given rise to agile software engineering models.  Principally directed at focussing software engineering on tasks and activities adding direct value to the ultimate deliverable i.e. functional software, the approach eliminates “non-value-adding” activities from the project whilst embedding the principles of constant change, trust, courage and independence at the core of the initiative and team.

A significant differentiator between agile and traditional approaches is that each requires very different management styles.  Traditional methodologies require more management and less leadership, whilst the agile approaches require more leadership and less management.

As a process-based approach, the traditional methodologies focus heavily on what is supposed to be done, in what order, with what inputs, processes and outputs, and, with a desired deliverable as overriding goal.  On the other hand, the agile approaches are completely outcomes-based.  The sole goal of the agile approaches is to deliver software that exceeds customer expectations with little or no concern with interim processes unless these processes add directly to the final outcome of customer satisfaction.

If one considers a highly simplistic continuum of management styles from [controlling to directing to visionary to anarchic] it is apparent from the style of the traditional approaches that a blended management style, somewhere between controlling and directing would be most suited for traditional methodologies.

On the other hand, the optimum leader of an agile approach project would have a very visionary outlook, would be directing at times (when needed) and would most certainly not be uncomfortable with phases of anarchy during the project – even in times of trouble an agile leader needs to avoid operating at the controlling end of the spectrum at all costs, as the basis of agile development leadership is courage, empowerment, trust and a focus on the customer’s needs.

This is clearly not to say that one approach is subjectively “better” than the other – I believe that not only are both approaches applicable under very different circumstances, but they are equally suitable to different leadership styles at different times.  Care should be taken when selecting agile versus traditional methodologies to not only match the project with the approach, but also the people with the approach.

Personalities of individuals on the team, specific project requirements and indeed corporate culture as well as the risk profile of each project should be used to determine the optimal type of methodology being deployed on any given project.

Whilst the purists may disagree with this assertion, the real power of software engineering, I believe, lies in a sensibly “blended” approach for optimal results and performance as well as team wellness, motivation, energy and courage in the face of some of the largest challenges this planet has ever seen i.e. engineering modern-day software systems.

Where the agile approaches are of less benefit is where the application being constructed is mission-critical, high-risk and specifically where requirements of the system are clearly specified and unlikely to change rapidly over time.  For example: space shuttle mission-control systems, aeronautical embedded systems, healthcare applications and the like…..

When agility, responsiveness and high levels of flexibility and change are present (together with active customer commitment and involvement) in a project, the agile methodologies such as XP and SCRUM can provide empowering alternatives to the more rigid waterfall model regardless of project size and scope.

Whilst I am personally an ardent fan of the agile approaches (particularly SCRUM and XP) in the ERP and line-of-business industry, they do indeed have many detractors one of whom is Steve Yegge who presents a light-hearted yet scathing critique of agile on this link:

http://steve-yegge.blogspot.com/2006/09/good-agile-bad-agile_27.html

 

- Grant Lloyd

Leave a Comment

Filed under Development, Industry Information

Connected Services

There’s very little doubt that the internet has arrived and is here to stay – for better or for worse…..

Not only has the availability and the capacity of internet connectivity improved markedly of late, but, the price of such services has shown increased (albeit very gradual) signs of commoditisation in the past year, providing an increasingly compelling service at progressively competitive prices (although South Africa still has a LONG way to go in this regard).

Generally accepted “standard” online applications i.e. those which we are (largely) comfortable using on a daily basis, such as online shopping, internet banking, flight and hotel reservation systems, news feeds and the ubiquitous social media sites, are increasingly being complemented by a steady stream of new online business applications and services.  One has only to consider the initial launch success of both Pastel MyBusiness Online and VIP Liquid Payroll to confirm that the adoption rate of online line-of-business software is on the rise for new entrants into the market segment.  Nevertheless, a significant 85% of current Sage Software users indicate a distinct preference for traditional client-side software installations citing lingering connectivity cost constraints, poor broadband penetration rates and business information security as prime concerns.

How then does one bridge the gap between the inexorable trend toward online line-of-business software adoption and traditional desktop application users in a similar segment?

In the same way that the adoption of what we (today) consider commoditised uses for the internet (listed above) has been a steady evolutionary process, so too will the switch from legacy desktop line-of-business applications to cloud-based services prove to be a gradual yet inevitable “chicken-little” adoption process rather than a single cataclysmic “big-bang” event.

It is in this evolutionary shift that the advantages and conveniences of connected services can not only aid, but expedite the considerable benefits of dual-deployment business software models i.e. client-side hosted applications with significant connected services capabilities and functionality, together with a vendor-facilitated seamless upgrade path to ultimately complete cloud-based models.

Consider frictionless updates as one example of connected services enabling traditional desktop application to seamlessly update itself over the internet, with little or no intervention from the end-user of the software.  New updates are made available by the vendor on a periodic basis and are shipped invisibly to the end-user leveraging the internet as a transport mechanism.  Gone are the days of CD-based updates and often disruptive installation and implementation cycles.

Imagine to a world of connected payment and financial services where both desktop and cloud-based line-of-business applications offer tightly integrated and yet transparent payment, reconciliation and receipting functionality without the use of traditional front-end banking software in a “clunky” 2-phase approach, once again leveraging the internet as bi-directional transport facilitator.

Whilst the internet and more specifically cloud-based and / or online business applications present some of the most compelling opportunities for re-imagining the way one conducts business in the 21st century, it is reassuring to observe that such leveraging of internet capabilities will almost certainly not be a “one-size-fits-all” model.  Incremental evolution of traditional desktop software, leveraging the internet where appropriate and when business-enhancing, will play as important a role in the evolutionary shift to complete cloud-based business software provisioning, billing and deployment, thereby providing a flexible and extensible “to-cloud” migration path as deemed preferable by individual business requirements, as will pure cloud-only offerings.

- Grant Lloyd

Leave a Comment

Filed under Industry Information, Stuff you never knew about

Budget 2012 – Personal Income Tax Rates effective 01 March 2012

Leave a Comment

Filed under Legislative Updates

Important Medical Aid Legislation for the 2012/2013 Tax Year

Effective the 1st of March 2012, Medical Aid Contributions will no longer be allowed as tax deductible for employees under the age of 65.

The Medical Aid Capped Amounts are being replaced with Medical Aid Tax Credits.

Employees who contribute towards a medical aid or whose employers contribute on their behalf will qualify for the following monthly Tax Credits:

• R230 for the Main Member

• R230 for the First Dependant / Spouse

• R154 for Each Additional Dependant

To implement the new Medical Aid Legislation on Pastel Partner Payroll it is imperative that you install Pastel Payroll 2013 Update 1 before processing your first Payroll Run for March 2012.  

IMPORTANT: You must have Pastel Payroll 2012 Update 2b installed before you can upgrade to Pastel Payroll 2013 Update 1.

Leave a Comment

Filed under Legislative Updates

27 December 2011 declared a Public Holiday

Acting president Kgalema Motlanthe  yesterday declared 27 December 2011 as a public holiday.

As Christmas Day, 25 December falls on a Sunday this year and Boxing Day, 26 December is on the following Monday, it was decided to make the Tuesday a public holiday as well.

Please visit www.gov.za to view the official announcement.

Please remember to add the additional date to your list of public holidays in your payroll application.

 

Leave a Comment

Filed under Uncategorized