14 Tweets 18 reads Feb 04, 2023
Neither Python nor JavaScript will save you if you choose the wrong SDLC model for your project ?
Based on my 10 years of experience let me help you understand both
🧵🧵🧵
Before we proceed, a humble request to support by journey free of cost by subscribing to my channel
youtu.be
☆ What Is SDLC ?
Software Development Life Cycle (SDLC) refers to a methodology with clearly defined processes for creating software. It includes:
• Requirement analysis
• Planning
• Software design
• Development
• Testing
• Deployment
☆ How many SDLC models exist ?
The textbooks will teach you quite a few, the industry only talks about two (with a green check)
• Waterfall ✅
• RAD
• Spiral
• V
• Incremental
• Agile ✅
• Iterative
• BigBang
☆ Waterfall Model ?
• Waterfall used to be the standard until Agile came along
• Each step mentioned in the tweet #2 happens sequentially one after the other
☆ Waterfall Model Pros ?
• Clearly defined requirements at the very start
• Well defined workflow & structure to help productivity
• If all requirements are implemented & tested well the client gets a fully feature rich app in one go
☆ Waterfall Model Cons?
• Hard to accommodate changes
• Missing feedback loop after requirement analysis stage
• Working product available only at the end
• If final software deviates from requirement it leaves both the vendor & client with bitter taste
☆ When Waterfall Model Is Best?
• If it's mandated by organization
• If it's a short project(2-3 months)
• Non critical work being implemented
• If vendor, customer, developers & testers are 100% sure of what they want upfront
☆ Agile Model ?
• This is now the preferred model in the industry
• People also call it "MINDSET" rather than a methodology
• Development happens in short "SPRNTS" of 2/3 weeks & each SPRINT delivers a working feature :)
☆ Agile Model Pros ?
• Faster delivery of software
• Feedback available early
• Easy to make & ship changes
• Deviations from requirements are easy to correct leaving everyone happy
☆ Agile Model Cons?
• Mindset shift required within the team right from customer to developers, testers, support staff
• Agile mandates certain ceremonies might reduce productivity
• Too much planning to sometimes deliver too little
☆ When is Agile Model Is Best?
• If client isn't 100% sure of all the features needed
• Long duration project
• Critical implementation which might need change at short notice
☆ Agile vs Waterfall ?
• In most modern day software "Agile is a clear winner"
• Waterfall lacks flexibility & in a fast changing world no one can ever be 100% sure of what the final product should look like
• So, almost always use AGILE unless WATERFALL is forced
Hello 👋
I am Jaydeep from India 🇮🇳
Full time Software Engineer & part time content creator on
🐦Twitter
🖧 Linkedin
🎥YouTube
Follow me for content on
🐍 Python
🤖Ai/ML
🎨Data Visualization
🌟Content creation
Subscribe To My YouTube🔽
youtu.be

Loading suggestions...