Monthly Archives: March 2017

A Point of View on Agile Vs Waterfall – Richard Cure

Hello everyone, Richard here with another blog! In this post I’d like to talk about the changing landscape in the IT industry regarding the way development is done, which means looking at agile and waterfall as methodologies to run a development project. I’d also like to share my experiences of exploring agile on the projects I’ve worked on so far.

Firstly, the concept of agile revolves around small, cross functional teams – by cross functional I mean participants with different skills and expertise e.g. Project Management, Development, IT Architecture, Integration, Business Analysis etc.

In agile, the individuals in these teams trust and support each other and closely work together, sharing the responsibility to release increments of a product e.g. software. The team splits the delivery of the product into regular “sprints” of work normally 2 weeks in length, in which the product is refined and iterated on, with an emphasis on continuous development and testing.

This is in stark contrast to a waterfall approach to development which involves normally one release of the product at the very end of development which is tested thoroughly afterwards.

Waterfall development is a less “chaotic” approach and follows the traditional software development lifecycle of Requirements – Design – Development – Implementation – Test – Deployment – Maintenance. It generally involves these stages organised sequentially in the form of a project, which is how the IT industry has generally used for many years until recent times.

Working agile has some benefits – in my opinion, here are the 3 key benefits of agile:

  • Business and technology partner better – instead of working in isolated teams with minimal interaction, teams attempt to achieve shared understanding through:
  • Daily “standups”, where each member summarises what they did, what they are doing today, and if they are facing any blockers to progressing. These short meetings are normally time-boxed to 15 minutes max.
  • Regular “demos”, where working products are demonstrated to stakeholders and progress is reviewed.
  • Regular “retrospectives”, where team members look at how they worked during the previous sprint and come up with a short list of things to improve upon for the next one.

The effect of these 3 practices ensure the whole team – including business-oriented stakeholders and technical-oriented stakeholders – is aware of what is going on and how they can improve for the next iteration. Clients or sponsor users are also often involved throughout, allowing them to influence the development of the product earlier or direct the team to “course correct” if they don’t like a feature or the way the product is going.

  • The business value of working agile is in the visibility and flexibility of the agile processes:
  • Teams can adapt to change quicker and face less hurdles during changing business or technical requirements
  • Teams feel more empowered to get things done (therefore get things done quicker):
  • The iterative nature of agile development means the team is forced to deliver in smaller increments each sprint, and can lead to defects/errors in the product being spotted much earlier, giving developers more time to fix them.

Working waterfall also has its benefits – in my opinion, here are the 3 key benefits of waterfall:

  • The project is more predictable and controlled:
    There are clearly defined stages with hard deadlines for team members to adhere to, which is appealing to those in charge of delivery of products as they can be more sure when to expect the completion of a product
  • Tends to be documented more thoroughly:
    This is a benefit to newer team members who can get up to speed by reading existing documentation, although some may argue that the code itself is a form of documentation.
  • Less room for scope creep
    In waterfall, the client usually only sees the end product once at the end of the project, meaning they have little influence in between requirements and deployment to introduce change to the original project scope, whereas in agile the client can sometimes demand dramatic change during key points in development which can throw up risks and issues during key stages in development.

Personally, I think the industry is seeing agile as a potential way forward and especially in IBM there is definite movement towards adopting agile as a new way of working, but it’s not without its challenges and problems and it won’t happen overnight to completely change. And in reality, some projects aren’t suited to an agile project management method.

For example, one of the problems we’re facing right now are that we haven’t been able to change our infrastructure to sufficiently accommodate an agile environment – in fact we have just “migrated”, or switched over, to our client’s development and test systems meaning we have lost some control of the systems we are using.

DevOps, another hot topic (which deserves its own blog post) works hand in hand with agile techniques, and requires close control of development and test systems so this may be difficult for us to explore DevOps going forward.

Culture has been a difficult barrier to get over – some colleagues have been working waterfall for decades and are hesitant to accept work not completely finished.

Thirdly, our client contracts are not agile based – meaning ideally the client would pay for each release rather than for the finished product. This is not the case although we have been exploring agile practices through the development stage using things like sprints I talked about earlier, but also in the context of a project following the waterfall method, leading to a weird hybrid of “Agile-fall”. I guess perhaps this isn’t the best way to go about it – I think it does need to be one or the other.

However it’s still an interesting and valuable experience to work agile and maybe one day in the future this will become the norm for development in general.

Thanks for reading!

Richard Cure.

Goals achieved for 2016 – Joe Barry

2016 was a year full of ups and downs, for Business, Politics and Sports alike. For me I will remember this as the year IBM helped me to achieve all my goals. When I started the year, I had three things I needed to do for my career and anything less than all 3 would be disappointing. January 2016 I was in Swindon working as an Industry Tester and by December 2016 I was a Project Management Officer (PMO) in Hursley. Allow me to talk through my journey.

  1. Improve my Work/Life Balance.
  2. Make an effort to learn new skills that would help me in the future.
  3. Determine my next career steps and start the journey towards it

Why would I or anyone need to improve my work/life balance?

Well in my case I was living in Portsmouth but working in Swindon. Monday I would travel up, staying a hotel and at 6pm on Friday I traveled back home. I found that I was always tired and quickly got bored of the routine. My family were under the impression that I was living the sweet life. I would always get the same comment.

“Staying in hotels must be great, don’t have to tidy up, use the laundry service for your clothes, food gets brought to your door”

This was all true but once you have been in hotels for a year the novelty had worn off.  When I finished the work day I would get back and start thinking about the stuff I needed to do the next day. I never switched off.

So, to remedy this I spoke to my IBM manager and asked for some help in getting a role closer to home that would still test me and progress my career. I got my ideal roles narrowed down to Project Management or Test Specialist and I used my network to speak to a couple of managers in Hursley. By April I had found a test role that fitted all my criteria however I needed some specific skills in order to be most effective at the role.

Therefore, I needed to make an effort to learn new skills that would help me perform in my ideal role.

The problem I faced was that I have only ever worked with client systems. I was not versed in IBM software or hardware. In this situation to have all the educational tools IBM provides was extremely beneficial. I spoke to the test manager and found out all the skills needed and found most of them on Think foundation and Code Academy online courses.

Finally, I was ready to fill my new role but was informed that I was no longer needed. The role had already been filled by someone else. This was because the end date on my previous role was too late and the test manager needed someone ASAP. I was still wanted for a test role but in the meantime my test manager used her network to find me a PMO role in Hursley.

I was relieved that I was able to carry on working in Hursley but wasn’t too sure about filling a PMO role, within the first day I realised it was the perfect position to determine my next career steps.

The PMO works with the Business and Project Managers to deal with contractor admin tasks. This ranges from on-boarding to access requests to contractor agency queries. As PMO I can use my connections with Project Managers and Technical contractors to figure out what I want to do and how I can do it. To gain a better insight to the project management role I attended an IT Infrastructure Library course that covers all types of management from service to operations and many others. I loved the course and wished I’d done it earlier. I have a new-found appreciation for how the business works and how many mover parts are in play to drive value to customers. I had already done a lot of technical courses but I enjoyed seeing them work in real life and what a Software Developer does day to day.

From my experiences both in technical and management I am currently finding a technical role that I would be happy with. I have the foundation in place to do so and other options available if I change my mind.

Thanks to IBM, I was given a lot of role options that would help improve my work life balance. IBM’s Think academy meant I was able to gather the skills to fill any role I desire. I can now see the bigger picture when it comes to business and a view of day to day tasks of technical professions all of which has helped me craft a destination for my career.

Joe Barry.

2016 Review – Will Spiers

Since we’ve rocketed into 2017 and are somehow over three months in already, I thought I would write a piece reflecting upon my achievements and experiences last year – 2016 was my first full year in IBM – only just though, given I started in March 2015. However, I feel it proved to be a pivotal year for me, in terms of my personal development, career progression and my long term plan. So, where was I this time last year?

January/February 2016, I was in the process of finding a new role, still very up in the air about where I wanted to go next, what I wanted to do and what a new opportunity could entail. I feel I grew immensely as a person over the next few months, when looking for any job, you end up speaking to loads of new people and this one was no different. Certainly within IBM at least, it’s becoming clearer throughout my career – particularly over the first two quarters of 2016 – that the network you create is literally invaluable. Throughout my search, contacting people I knew from across the business was one of two main resources. Conveniently backing up this point, I found my next opportunity through an apprentice friend, who knew someone else, who knew someone looking for a replacement because they were moving on. If you can keep up with that, you’re doing better than me! Regardless, it highlights the point – never underestimate the reach of your network and its importance, especially given the whole 6 degrees of separation theory.

So April 2016, I up ship at my first role and move myself over to IBM Hursley. Lots of things changed over this time, as prior to the move, I’d never experienced another role or working on an IBM site, so my understanding/experiences were almost doubled in an incredibly short space of time! Alongside this, as Hursley would have been a serious commute for me on a daily basis, I also begun staying in hotels Mon-Thurs, just to chuck another new experience into the equation for good measure. So, how did being flung into a brand new role go? In hindsight, my answer is incredibly well – although at the time it didn’t always feel as though it was. Here’s the thing, I recognise now that it’s always going to be slightly overwhelming at times across the first few months of moving to most new roles – it’s a period of immense development, given the amount of information you’ll almost always need to take in over such a short period. For me, in reality this meant some scenarios where I didn’t feel 100% comfortable, but this without doubt was what made me develop and kept me motivated, driven and interested. If you never step out of your comfort zone, how can you expect to grow?

So post-handover period, I tried to take my consideration of stepping outside of my comfort zone forward, something which I feel I’ve done well. During my time in this role I’ve continued developing; from my time management to my communication skills, I’ve improved them all. That’s not to say that I didn’t develop in my first year at IBM, but I feel my second – and this role – have been pivotal in taking my learning’s from year one to the next level.

Finally, throughout 2016 I also took the approach to commit to learning as much as possible – we foundation students are lucky enough to be supported and encouraged to do this, so I felt I’d be silly not to take advantage of it! As such, I completed my ITIL foundation qualification, various Lunch n Learns and a PEL course (path way to entry level – a foundation course surrounding client conversations). As well as this, I also took steps to take this to the next level in 2017, registering my interest for various courses/certifications.

So that was my 2016, a year that was rounded off nicely with a Target awards apprentice of the year nomination – hard work pays off! I hope it will act as a stepping stone to take my new skills into 2017 and continue developing at a similar place.

Will Spiers.