摘要:
透过现象看本质:什么是软件研发? ——看到才能改进:研发管理到底再管理什么? ——如何提升研发效能:你只需要记住2个关键词? 什么是软件的生产制造过程? 软件开发里面的所有需求都是假设上。 不要老是把不确定的东西强行变成确定的东西。 软件研发是一个复杂过程。 不要试图用复杂方法处理复杂过程,尝试将复 阅读全文
摘要:
核心价值: 让运维团队将运维服务转换为运维能力提供给开发团队,让开发团队像引用代码一样引用运维能力。 运维团队通过对环境代码的改善将运维是所关注的稳定性、性能、安全性等要求作为约束传导给开发团队。 开发团队利用这种能力将业务价值更快的交付给用户,最终实现研发和运维的整体敏捷。 幂等性——Idempo 阅读全文
摘要:
阅读全文
摘要:
Git基本概念 Git分布式版本控制系统 分布式(DVCS)和集中式(CVCS) Git基本概念 Git文件和提交状态 企业级Git开发环境配置 Git初始化操作 烦人的产品经理:典型Git本地工作流 典型Git本地工作流 烦人的产品经理——服务篇 管理粒度:Devops从管理角度的优化永远是在通过 阅读全文
摘要:
01.配置管理/版本管理到底要解决什么问题? 研发过程全景 管理属性过程:建立"规划版本"的管理能力,完整跟踪要做什么,怎么做,进展如何 工程属性过程:建立"交付版本"的管理能力,完整跟踪谁在左,如何实现,在哪里,质量怎样 软件所有的需求,都是假设,都是如果我实现这个东西,给客户带来什么。 配置管理 阅读全文
摘要:
流水线总体流程 拉取请求 工作流 人工代码评审 + CI自动化检查 + CD自动化部署 构建集群调度和构建环境管理 构建集群管理 环境堆栈管理策略 配置项管理:提供应用级别的配置项管理能力 应用代码:提供SDK何其他依赖的安装,更i性能,补丁能力 SDK和其他依赖:提供SDK和其他依赖的安装,更新, 阅读全文
摘要:
什么是软件的生产制造过程: 管理属性过程:建立“规划版本”的管理能力,完整跟踪做什么,怎么做,进展如何 工程属性过程:建立“交付版本”的管理能力,完整跟中谁在做,如何实现,在哪里,质量怎样。 创造性过程:想法逐渐明确,知道开发人员开始编写代码,所有的需求都是假设。编码之前的过程都是不可重复的探索过程 阅读全文
摘要:
缺陷意味着返工,返工意味着浪费 有效的质量控制措施: n 准确完整描述用户需求 n 关注非功能性需求 n 质量内建在开发过程之中 n 小循环快速获取验证反馈 n 自动化、自动化、自动化 n 信息公开透明,授权决策 n 适度架构,组织和架构匹配 n 从失败中吸取教训 测试金子塔和测试受创面 代码--> 阅读全文
摘要:
应用程序VS数据库 数据可以理解为一个应用代码。 解决思路: 架构解耦:在应用程序和数据库对象之间形成单一可控的依赖路径 团队解耦:应用程序微服务化带来2 pizza team,团队/应用/数据库成为独立单元 自动化:形成所有环境上的数据库自动化持续部署能力;形成应用于数据统一的版本控制能力 团队协 阅读全文
摘要:
为什么微服务如此流行? 01.敏捷出现之路 所谓的架构和管理,都是需求所驱动的。 02.多重因素要求企业具备整体敏捷力 03.DevOps、敏捷、微服务于云原生应用 技术在不断演进革新 挑战:高度分散和异构化的IT运维环境 持续交付的挑战:软件开发中的三级耦合 代码耦合:一个开发人员的修改即可影响整 阅读全文
摘要:
单体架构到位服务 软件生命周期与架构演化 微服务立方体 最好的架构是演化过来 微服务拆分示例——典型电商系统的架构演化 微服务横向扩展划分——共享核心功能模式 微服务数据分区 如何设计一个为服务系统 微服务系统的优缺点 优点 缺点 更为敏捷 整个系统更加复杂 更小,更专注的团队 开发和测试面临更多挑 阅读全文