Week 9 Agile SDLC Frameworks
Key Agile SDLC Frameworks Covered:
- SAFe Agile (Scaled Agile Framework)
- LeSS (Large Scale Scrum)
- Scrum@Scale
- DevOps
- Lean Software Development
SAFe (Scaled Agile Framework):
- Definition: A framework for scaling Agile across large organizations.
- Levels:
- Essential SAFe: Core principles for Agile development.
- Large Solution SAFe: Scaling across multiple teams/solutions.
- Portfolio SAFe: Scaling across portfolios.
- Full SAFe: Comprehensive, organization-wide Agile scaling.
- Benefits:
- Empowers teams, promotes continuous delivery, scalable structure for large enterprises.
LeSS (Large Scale Scrum):
- Definition: A framework for scaling Scrum, simplifying traditional Scrum ceremonies for large teams.
- Key Features:
- Single Product Backlog.
- One Product Owner and one Shippable Product Increment after each sprint.
- Multi-team Sprint Planning and Overall Retrospective for multiple teams.
- Benefits:
- Streamlined, system-wide thinking, single backlog, and lower complexity.
Scrum@Scale:
- Definition: A framework to manage multiple Scrum teams working on prioritized goals.
- Key Features:
- Scrum Master Cycle: Focuses on how things get done.
- Product Owner Cycle: Focuses on what needs to be done.
- Scrum of Scrums (SoS): Larger Scrum team managing multiple teams, with scaled Daily Scrums and Sprint Retrospectives.
- Executive Action Team (EAT): Oversees Scrum implementation across the organization.
DevOps:
- Definition: Combines development and operations to improve the integration and delivery of software.
- Key Points:
- Focus on collaboration between development and operations teams.
- DevOps Lifecycle: Includes stages like Discover, Plan, Build, Test, Deploy, Operate, and Continuous Feedback.
- Works with Agile for continuous delivery and adaptation to change.
Lean Software Development:
- Definition: Applies Lean manufacturing principles to software development.
- 7 Principles:
- Eliminate waste.
- Build in quality (e.g., test-driven development).
- Amplify learning.
- Delay commitment.
- Deliver fast.
- Respect people.
- Optimize the whole.
- Key Practices:
- Remove unnecessary code, maximize customer value, enhance efficiency, and focus on continuous improvement.
主要涵盖的敏捷SDLC框架:
- SAFe 敏捷(Scaled Agile Framework)
- LeSS(大规模Scrum)
- Scrum@Scale
- DevOps
- 精益软件开发
SAFe(Scaled Agile Framework,规模化敏捷框架):
- 定义:一个用于在大型组织中扩展敏捷开发的框架。
- 层级:
- Essential SAFe(基础SAFe):敏捷开发的核心原则。
- Large Solution SAFe(大解决方案SAFe):跨多个团队或解决方案扩展敏捷。
- Portfolio SAFe(投资组合SAFe):跨投资组合扩展敏捷。
- Full SAFe(完整SAFe):最全面的敏捷扩展,适用于整个组织。
- 优势:
- 授权团队,促进持续交付,为大型企业提供可扩展结构。
LeSS(大规模Scrum):
- 定义:一种扩展Scrum的框架,简化了传统Scrum的复杂性,适用于大型团队。
- 关键特点:
- 单一 产品待办列表(Product Backlog)。
- 一个 产品负责人 和每次冲刺后一个 可交付产品增量。
- 多团队冲刺规划 和 整体回顾 涉及多个团队。
- 优势:
- 精简,系统性思考,单一待办列表,降低复杂性。
Scrum@Scale:
- 定义:一个用于管理多个Scrum团队以实现优先目标的框架。
- 关键特点:
- Scrum Master循环:关注“如何”完成工作。
- 产品负责人循环:关注“需要做什么”。
- Scrum of Scrums (SoS):管理多个团队的更大Scrum团队,具有扩展的每日Scrum和冲刺回顾。
- 执行行动团队 (EAT):监督Scrum在整个组织中的实施。
DevOps:
- 定义:将开发和运维相结合,以提高软件集成和交付的效率。
- 关键点:
- 强调开发和运维团队之间的协作。
- DevOps生命周期:包括发现、规划、构建、测试、部署、操作和持续反馈等阶段。
- 与敏捷结合,实现持续交付和快速适应变化。
精益软件开发(Lean Software Development):
- 定义:将精益制造原则应用于软件开发。
- 7个原则:
- 消除浪费。
- 内建质量(如测试驱动开发)。
- 放大学习。
- 延迟承诺。
- 快速交付。
- 尊重个人。
- 优化整体。
- 关键实践:
- 删除不必要的代码,最大化客户价值,提高效率,专注于持续改进。
Week 10 Contracts, Outsourcing, and Procurement
Outsourcing:
- Definition: Engaging external parties to perform tasks or produce goods typically handled in-house.
- Types:
- Onshoring: Within national borders.
- Nearshoring: To nearby countries (e.g., New Zealand, Indonesia).
- Offshoring: Anywhere globally, regardless of time zones.
- Pros:
- Access to specialized skills, 24/7 operations, cost-saving potential, better technology, flexibility, risk mitigation.
- Cons:
- Loss of control, security risks, cultural/language challenges, potential ethical issues (e.g., labor practices).
Procurement:
- Definition: External sourcing of products or services for a project.
- Stages:
- Plan: Stakeholder consultation, supply market analysis, risk assessment.
- Source: Engaging suppliers for value-driven outcomes.
- Manage: Ongoing supplier relationship management to ensure contract fulfillment.
- Sourcing:
- RFx process (Request for Bid/Proposal/Tender/Quote).
- Key in creating a detailed Statement of Work (SOW).
- Evaluation:
- Teams review bids based on criteria (technical, management, price, past performance).
- Finalize with Best and Final Offer (BAFO) and negotiate.
Contracts:
- Definition: A binding agreement between buyer and seller, outlining obligations and deliverables.
- Types:
- Fixed Price: Set total price for a well-defined product/service.
- Time and Materials: Payment based on time and resources used.
- Key Clauses:
- Intellectual property, milestones, quality criteria, change management, penalties, and warranties.
This should help you with quick revision on key topics!
外包 (Outsourcing):
- 定义:通过合同形式,外包给外部机构执行任务或生产产品,这些任务通常由公司内部员工完成。
- 外包类型:
- 国内外包 (Onshoring):在国家边界内重新分配活动。
- 邻近外包 (Nearshoring):将活动分配到邻近国家(如新西兰、印尼)。
- 离岸外包 (Offshoring):无论地理位置或时区,将活动分配到其他国家。
- 优点:
- 获取稀缺技能,24/7运行,降低成本,访问更好的技术,灵活性,降低风险(如敏捷项目管理)。
- 缺点:
- 失去控制,供应链分散,安全问题,员工危机感,文化和语言障碍,可能的伦理问题(如劳动条件)。
采购 (Procurement):
- 定义:从外部采购项目所需的产品或服务。
- 采购管理过程:
- 计划:与利益相关方沟通,分析市场,评估风险。
- 采购:选择供应商,确保物有所值,避免不正当竞争。
- 管理:持续管理供应商,确保合同执行。
- 采购方式:
- RFx流程(询价、招标、提案等)。
- 关键在于制定详细的工作说明书 (Statement of Work, SOW)。
- 评估:
- 根据技术、管理、价格、过去表现等标准进行评估,最后选择最优供应商并进行谈判。
合同 (Contracts):
- 定义:买卖双方之间具有约束力的协议,明确责任和交付成果。
- 合同类型:
- 固定价格合同:为明确的产品或服务设定固定价格。
- 时间和材料合同:根据工作时间和使用的资源支付。
- 关键条款:
- 知识产权、里程碑、质量标准、变更管理、违约罚款及担保条款。