Agile, Waterfall, or Hybrid?
If you happen to browse job ads and positions nowadays, you will come to realize that the most if not all companies use Agile development methodology. I have always wondered why make it such a prominent factor in the job requirements. It’s just a methodology and it's not like learning a new language. I’m not disputing the benefits of using Agile development but wondering if companies have become slave to a methodology. Agile development lets you build and see products coming to life gradually, instead of working heads down for months fearful that you may not ever see the finished product. It’s also easier with Agile development to take detours, make corrections, ask for feedback, adjust your aim along the way. But some companies still use the Waterfall methodology, and there are good reasons why Waterfall may still make sense today. Most common scenario: a program manager needs to provide and commit to a delivery date for a new product because the CFO, Marketing, or customers, need it to budget expenses, plan the launch, or fund the deployment. For a product or a new major release, how would the PM go by estimating a delivery date of something that is going to take 9, 12 months or longer, by executing the project in 2-week sprints and milestones? If they did commit, they would be just providing an informed guess with no plans to support it, and with a high risk of delivering something different than they had committed to. The Waterfall methodology has been used for years for this reason and forced the program managers to think through at the outset about product design, architecture, frameworks, resources, critical paths, and so forth. These are issues that one cannot think through one sprint at a time and then hope that it will all come together. But there is Waterfall and, what I call, Hybrid Waterfall. The Hybrid Waterfall is what I have used in these exact situations when confronted with a new product, or a major new release that replaced an existing architecture. LiberCloud offers content management and collaboration services for content authors, educators, instructors as well as active learners. The SaaS platform allows individuals to sign-up as well as it gives the ability to educational institutions and businesses to create dedicated instances and private communities for sharing or collaborating on content.
The multi-tenant SaaS platform initially developed on the LAMP stack, was being expanded with a MongoDB NoSQL cluster, Node.js component and Socket.io for asynchronous notifications, and an Ejabberd based real-time XMPP server for group discussion rooms and live-chat. The content management services support multi-media assets as well as interactive assets such as virtual whiteboards, real-time polls and surveys, and assessments. LiberCloud launched its beta services to the public in 2014 and announced the general availability at the international Bett trade-show in London in January 2015. LiberCloud service was targeting international businesses or startups with a distributed workforce, clients, and user base. Therefore, it required designing and deploying the services in a distributed fashion, such that content originated in one region is available in others, and participants in real-time virtual discussions, polls, and group chats could be in any region. LiberCloud intent to offer its services near or in the proximity of the organizations and users we serve required a distributed architecture spread across multiple geographical regions. |
Categories
All
Archives
January 2019
|