目录
一、OpenFace
OpenFace数据分析
先观察cauldron制作的总体数据:
以commits折线图为例,从OpenFace的Commits图表变化可以发现,OpenFace在2016年初-2018年中旬保持较高的活跃度,在2016-2017时期commits相对平稳,期间有两次出现相对大规模的commits,2017-2018期间大幅增加,并达到最高值。2018-2019年出现一次大规模commits后,迅速下降,在2018年中旬之后几乎不再有commit。同理可以分析authors折线图和未关闭issues柱状图。
可以猜测,在2016-2017阶段属于项目初步开发阶段,只有小部分群体在参与项目开发;在2017-2018阶段属于开发中期,随着项目推进不断吸引开发者参与,项目参与者增多进而产生多次大规模commits;在2018-2019阶段,项目逐渐完成,项目参与者逐渐减少,comits逐渐减少,但由于项目前期的成果,受到了较多关注并收到了大量issue;2019年后,项目开发人员很少有commits。
OpenFace活跃度分析
通过项目开发期间吸引到的开发者和issues可以发现,该项目具有一定市场,因而得到了不错的反馈;
活跃度改善
①及时高效的PR审核合并
项目commits趋势常有爆发式增长,推测项目开发人员关于commits的审核/提交并不是太及时,导致存在一定积压
②issues及时高效的反馈
根据commits和authors图对比发现,18-19年期间有大量issues,在19年后仍存在相当数量的issues,然而项目的commits在2018年中旬后大幅减少,19年后几乎为0。此外,根据数据发现,959个issue中只有677个issue关闭,有近1/3的issue无人处理,近1/5的pr仍为处理,推测issues中提及的问题并没有得到及时的反馈和修正。
③项目后期维护
项目的commits在2018年中旬后大幅减少,19年后几乎为0,推测项目在完成基本开发后并没有进行很好的维护,导致很多问题没有及时修正,项目因无人维护最后沉寂。
④系统的管理体系
根据community的authors图可以发现,项目主要的贡献者只有2人,大部分贡献者在开发高峰过后都流失了,并没有系统的管理体系等等,这也可能是导致项目逐渐沉寂的原因。
activity:
community:
二、pyqt5
pyqt5数据分析
在2017-2018年,项目commits规模较小,推测出于起步阶段;2017年底-2019年,commits基本稳定在一定规模,推测项目出于开发中期阶段,2019年中期出现一次较大规模commits然后迅速下降,推测项目进入开发尾声。对于authors折线图,项目初期出现一些issues后,2019年中期项目出现大规模的issues,2019年后平稳出现一些issue。
activity:
community:
pyqt5活跃度分析
对比发现,虽然该项目整体受欢迎程度不及OpenFace,(从社区活跃人数和产生issues/commits等数据来看,都是OpenFace关注度更广),两项目几乎同期开始,但目前为止该项目仍在持续发展中,pyqt5在开源项目可持续性发展上有很多优点。通过activity数据可以发现,项目的绝大部分issues都得到了及时的处理,只有不到1/7的issue未关闭,此外该项目的22条pr均已关闭。虽然项目的主要开发在2020年左右已经结束,但在2020年到目前为止仍保持小规模的commits,期间的issues绝大部分都得到了反馈。这些都说明pyqt5在开源可持续性上的优点:①项目后期维护②issues及时高效的反馈。很可能是以上优点保证了pyqt5项目在受欢迎度并不是特别高的情况下,仍可以存活较长时间。同时,也说明开源项目活跃度除了与积极的管理/应对措施有关外,也与项目自身有很大关系。