Effective 9 Practices to minimize technical debt
Often we find it difficult to incorporate any changes in a software project during later phases of its development, or during post-delivery maintenance. Primary reason for this is inflexibility in design and code which makes it difficult for changes to be incorporated. This inflexibility substantially increases the cost of making changes and this metaphor has been termed as Technical Debt.
While Technical Debt cannot be eliminated completely, its burden needs to be reduced. Many agile practitioners have suggested some practices to avoid or eliminate Technical Debt.
In this session I shall discuss about a method to get relief from Technical Debt and talks about nine proven practices that a developer can follow to minimize Technical Debt. These practices help to:
- Change the coder's mindset so that they should use technical practices i.e. various refactoring techniques to reduce technical debt in code and design
- Developers to plan and manage the time to pay down the debt i.e. determine your living budget
- Take minimal technical credit in design and code
These practices have been used and found to be effective when implemented in projects which will be used as a case study.
Outline/structure of the Session
Understnading on Techical debt
Various types of technical debt
Importance of technical debt in software development
Practices to minimize the technical debt
This session is going to answer below questions:
What is technical debt?
Why is it difficult to incorporate any changes in a software project during later phases of its development, or during post-delivery maintenance?
Why is it difficult to maintain the code along with quality in longer run?
Why do we need technical debt?
Why cannot we eliminate it completely?
How can we minimize the technical debt?
What are some practices to minimize technical debt?
Software Developer, Programmer, Team/Tech Lead, Project Lead, Module Lead, Project Manager, Delivery Manager
schedule Submitted 4 years ago
People who liked this proposal, also liked:
Vinodhini - Robotic Warehouses, Alien Domain, Offshore developers, Visionary customer : Saved by agileVinodhiniProject Manager / Agile CoachExilesoftThushara WijewardenaChief Project OfficerExilesoft
schedule 4 years agoSold Out!
Here is a case study of how agile outsourcing can be practically applied even when the business domain is very complex and alien to offshore teams.
The example is a project in which Exilesoft provided for a leading Norwegian producer of Robotic warehousing solutions. The project involved transforming their legacy application, produced using multiple suppliers and methods, into a newly cast application solution. This project also had its own share of typical challenges.
• Lacked definitive and reliable documentation,
• Domain knowledge was limited to a few very busy individuals,
• Development and redeployment could not interrupt attention to current customers,
• Complexity was high and design was fragmented, and
• Focus heavily invested on current product and customer support
These limitations along with the lack of understanding of agile methods strongly suggested the use of a method adaptive in nature, and not heavily vested in large inflexible legacy elements.
We commenced the engagement with two pivotal elements; client awareness (agile orientation) and a roadmap of committed involvement. To lay credibility this had to be backed up with proven result delivery in the very early stages. It allowed for flexible adaption, and the creation of an atmosphere that fostered client interest.
During this session, we will take the audience through a small video clipping of such a warehouse. We will elaborate how the customer and offshore developers worked together using agile in a highly integrated team collaboration model to achieve success within a very short time frame.
The session will cover the following key areas:
How such projects can be initiated
- What type of team model and contract type we used
- How we did the agile transformation with the customer
- How the roles were assigned between offshore and onshore team members
- To improve remote collaboration the tools and techniques we used
- Techniues learned to get teams up to speed with the new domain
- As we go along, the process changes we identified and implemented to make things work better.
- Agile engineering practices and team dynamics that helps in such situations
Shamira Dias - GUIDING YOUR OFFSHORE CLIENT FROM WATERFALL TO AGILE: what works and howShamira DiasDelivery ManagerExilesoft Pvt Ltd
schedule 4 years agoSold Out!
A Scandinavian client who had bad experience with offshoring came to our doorstep. He was somewhat skeptical about offshoring but was willing to take a second chance. We had to be vigilant right from the start, it was a learning experience, a new project a suspicious customer and a watchful management… how did we handle the situation? The obstacles experienced by the team are universal. They are applicable to any team attempting to convert a client from waterfall to Agile.
How did we initiate the project - what was the way forward?
Were we cautions or did we plunge right in?
Did we play by the rules or did we make our own?
The learning experience of this talk is a step by step directive of how the above challenge was undertaken. The audience will be introduced to four attributes identified by the team as the four pillars of offshore agile rollout, namely being resilient, being innovative, being pro-active and being cooperative. By the end of the session the audience will understand
(i) how to be resilient with the product owner, what are the essential practices
(ii) the habit of being innovative, what needs to be incorporated
(iii) the secret of pro-activeness, and taking control
(iv) the importance of being cooperative, how to instigate productive discussions
Following this case study the audience will be able to apply the four pillars of offshore agile rollout to challenges faced with their own clientele.