====== SDLC ====== => SDLC means software development life cycle. => SDLC represents the process of software project development from starting to ending. => SDLC contains several phases/stages 1) Requirements Gathering 2) Requirements Analysis 3) Design 4) Development (Coding) 5) Testing 6) Deployment 7) Delivery 8) Support => In SDLC we have several methodologies a) Waterfall Model b) Agile Model ================ Waterfall Model ================ => It is linear model / Sequential model => In this model Work will be completed step by step => After one stage completed then only move to next stage => It supports only forward direction => Requirements fixed & budget fixed => Client involment is very less. => Client will see project only at the end. => If client is not happy with project delivered, then money will be wasted and time will be wasted. ##### To overcome challenges of waterfall model, industry is using Agile Model now a days ##### ============== Agile Model ============== => Agile is an "iterative approach" to develop and deliver software applications to client. => In Agile model (planning + development + testing + deployment + feedback) is a continuos process. => Project functionalitiy will be divided into multiple sprints/releases. Ex: Client has given 100 requirements Sprint-1 : 25 Requirements (plan + develop + test + deliver + take feedback) Sprint-2 : 25 Requirements (plan + develop + test + deliver + take feedback) Sprint-3 : 25 Requirements (plan + develop + test + deliver + take feedback) Sprint-4 : 25 Requirements (plan + develop + test + deliver + take feedback) => Client feedback is very important/critical is Agile model. => Client involvement is also high in agile model. => Requirements & Budget is not fixed in Agile. =================== Agile Terminology =================== 1) Backlog grooming 2) Story 3) Story Points 4) Sprint Planning 5) Sprint 6) Scrum 7) Retrospective => Backlog grooming is a meeting where all the team members will discuss about pending works/items in the project. => For every pending item we will create one story in the JIRA. Story means a task that we need to complete. => For every story we need to assign story points. Story points will represent duration to complete the story. 1 day => 3 points 2 days => 5 points 3 days => 8 points Note: pending stories are called as backlog stories. => Sprint Planning is a meeting in which team will disucuss priority stories to complete. => Sprint represents set of stories to complete in given duration. Note: Sprint duration will be 2 weeks (industry standard) => In sprint duration, everyday scrum meeting will be there to give work updates to scrum master. 1) Working on which task 2) When that task will be completed 3) Any challenges to complete the task => Retrospective is a meeting in which team members will discuss about sprints review. 1) What went well 2) What went wrong 3) Any lessons learnt 4) Any improvements required 5) New ideas... ============== Agile Team ============== 1) Produt Owner 2) Scrum Master 3) Project Manager 4) Tech Lead 5) Team Members => Product Owner is responsible for client deliverables (what to deliver, when to deliver and recieve client feedback) => Scrum Master is responsible for team co-ordination & work assignment & tracking sprint status and following up with teams. => Project Manager is responsible to set goals for each team, track team performance, mid year reviews, year end reviews, hike and promotions for team. => Tech Lead is go to guy for the team for technical help. => Team members means the combination of developers, testers and devops engineers. ======= JIRA ======= => JIRA s/w developed by Atlasian company => JIRA is a paid software, we can use trial version for our practice. => JIRA is called as Project Management software => JIRA is used to manage project work. 1) story creation 2) story assignment 3) Bug reporting 4) project reports