15
软件开源设计

软件开源设计 - obs.cn-north-1.myhwclouds.comobs.cn-north-1.myhwclouds.com/consumer/.../EMUI技术论坛-软件开源设计.pdf · 开源设计的考量 成立标准的开源组

  • Upload
    others

  • View
    65

  • Download
    0

Embed Size (px)

Citation preview

软件开源设计

开源的背景

国内生态,有信心构建起来 海外生态,需要与国内外伙伴共同努力

软件系统解耦

能力:组件化

8+N生态;无负担

机遇:同一起跑线

移动从业者共有

共同梦想

抛弃幻想

忧患意识

优质产品

品牌+规模

持续的研发投入

创新的必然性

我们的软件开源理念

共建

共赢

自信公平

包容

开源设计的考量

成立标准的开源组

织,需要大量沟通和

准备,时间漫长

参考国际常规模式,

先以孵化委员会进行

初期探索

开源组织

商业创新

与DevOps

业务战略

法务与IPR

创新技术与

开源代码

商业场景

与价值确认

社区运作管理

生态环境构建

精英团队

孵化委员会的组织结构和演进方向

软件开源孵化委员会主席、秘书长

生态需求工作组

合规工作组

项目1工作组

项目2讨论组

项目N工作组

As-Is To-Be

开放治理

演进的时间路标

2019.8 2021 2022

成立孵化委员会

方舟编译器项目 项目2 …

分模块逐步开源

走向开放治理

持续开源

项目N…

孵化委员会的价值取向

1. 孵化委员会定位成非盈利组织,不收会费,重点关注贡献大小

2. 孵化委员会的目的是为走向开放治理积累经验,建立开源社区,与

开发者一起共同完善代码,并通过讨论对产业或技术发展提出建议

3. 孵化委员会成立的意义:

快速形成共识

建立生态伙伴圈

孵化未来开放治理架构中的关键席位

孵化委员会章程和License

第一期的委员:邀请制

退出/增补机制:成立半年后,评审是否淘汰贡献小的委员,新增贡

献大的成员

License:优先考虑采用木兰License,支持中国开源License

孵化委员会的重大事项决策机制

重大事项的决策机制(含战略规划、新建项目、协调争议等):

• 席位:9个(主席、秘书长、生态需求工作组负责人、合规工作组

负责人、项目工作组和讨论组共5席)

• 2/3的票数为通过

项目内技术特性需求的受理流程

生态需求工作组由软件绿色联盟承接,负责开发者需求收集和梳理;项目内技术特性需求接纳与否由项目核心成员决定

开发者提出需求

生态需求工作组

(汇总,需求分类等)

项目核心成员决定是否

接纳

(判断是否为范围内的合理需求,是否满足规

划路标等)

设计文档输出代码

需求归档需求闭环

Mailing List

Issue List

没有对应项目

未接纳

接纳

有对应项目

激励机制

基于积分,实现贡献透明

可积分的贡献类型

• 使用体验反馈

• 设计建议

• 开源新的项目/组件

• 参与讨论

• 代码贡献

• 代码审查

• 合入代码

• ……

积分设计

• 常规行为:固定得分

• 重大贡献:委员会讨论得分

设计建议

开源新的项目/组件

……

积分的用途

• 日常激励

• 重大激励

考虑基于区块链的超级账本技术

防刷分机制:每半年针对恶劣刷分者,进行处罚(罚分、踢出等)

孵化阶段的贡献,在委员会走向开放治理后,积分可以继承

代码托管平台

1. 孵化委员会期间,使用华为云进行代码托管

2. 开放治理后,依据所挂靠机构的模式来实施代码托管

华为代码开源路标:各模块开始开源的时间

面向开发者

编译器

安全开发框架

分布式系统开发框架

轻量级平台

系统基础服务

IDE

2019H2

方舟编译器框架

2020

方舟Java编译器工具链

分布式系统开发框架基础部分 Java JavaScript

轻量级平台开发框架基础部分

分布式系统基础服务

分布式权限管理协同认证框架

2021

方舟JavaScript编译器工具链

分布式系统开发框架2.0 Java JavaScript C++/C

轻量级平台开发框架2.0

分布式系统基础服务2.0

隐私保护框架数据安全分类分级框架软硬结合的系统安全框架

集成开发环境IDE

2022

欢迎开发者来共建或讨论的项目与课题

1. 场景创新:新应用场景探讨,孵化相关关键技术。例如:手机变电视体感遥控器

2. 开发组件:UI组件、投屏组件等。例如:Pad横竖屏/折叠屏双屏互助显示、跨设备

UI适配;

3. 共建开发框架:一次开发、多端部署的分布式开发框架的持续优化

4. 安全开发框架:如家庭内跨品牌IoT设备鉴权及互联互通

5. 数字版权标准:高清视频数字加密

6. ……

欢迎注册成为华为终端开发者