[I.2] 个人作业:软件案例分析

项目 内容
这个作业属于哪个课程 2026年春季软件工程 - 北京航空航天大学 - 班级博客
这个作业的要求在哪里 [I.2] 个人作业:软件案例分析 - 作业 - 2026年春季软件工程 - 班级博客 - 博客园
我在这个课程的目标是 学习软件工程相关基础知识
这个作业在哪个具体方面帮助我实现目标 分析对比成功和失败的软件,全面地了解软件工程的原理在优秀软件上所起的作用。

开源软件案例分析:Moonlight V+ 与 Foundation Sunshine

选题方向:开源软件

分析对象


第一部分:调研与评测

一、软件简介与背景

Moonlight 是基于 NVIDIA GameStream 协议的开源游戏串流方案,允许用户将 PC 上的游戏画面实时流传到任意设备。原版 Moonlight 由 moonlight-stream 社区维护,Sunshine 则是作为不依赖 NVIDIA 硬件的开源服务端。

Moonlight V+ 是由国内开发者 @qiin2333 基于 Moonlight Android 打造的增强分支,截至文章撰写日期已拥有 1.6k Stars,已发布 46 个版本,持续活跃更新(最新版本 v12.7.1,2026年3月)。

Foundation Sunshine(基地版) 是对应的服务端增强版本,同样由同一开发者维护,与 V+ 客户端深度配合,提供了大量原版所不具备的功能。

这两个项目共同构成了一套面向中文用户优化的完整串流解决方案,完全免费开源,由 2~3 名核心开发者利用业余时间驱动,背后有一定规模的用户社区支撑。


二、软件评测

2.1 使用过程记录

评测环境:Windows 11 主机(RTX 4070 laptop,安装 Foundation Sunshine v2026.224) + Android 15 平板(安装 Moonlight V+ v12.7.0),基本环境如额外说明相同,局域网连接,2880*1600/60Hz 串流。

基本使用流程如下:

  1. 主机侧:下载并安装 Foundation Sunshine,完成首次向导设置(账户名、密码、网络端口),通过 Web UI(https://localhost:47990)完成应用配置、显示器选择、编码参数调整。

1

  1. 客户端侧:安装 Moonlight V+ APK,首次启动自动扫描局域网内的主机,点击主机图标进行配对(输入服务端显示的 PIN 码)。

2

  1. 开始串流:配对完成后进入应用列表,选择目标应用(如"桌面"或已配置的游戏),点击即可开始串流。整个流程约 3 分钟内即可完成,对新用户而言引导清晰。

3

约 25 分钟的使用体验摘录:

  • 初始连接建立较快(校园局域网约 1s 内完成视频首帧显示),码率自动调整为 40Mbps,延迟约 16ms,整体流畅。

4

  • V+ 的悬浮性能覆盖层(帧率/码率/延迟/丢包)可自由拖放位置,信息完整,在排查问题时非常有用。

4

  • 通过 V+ 的"鲨牙"长按触发场景预设菜单,可在"流畅优先"和"画质优先"之间一键切换,实际切换生效约 0.5s,体验良好。

  • 尝试了手柄输入(蓝牙连接 Xbox 手柄):自动识别按键布局,无额外配置,延迟体感良好,使用体验与本地接近。

  • 开启虚拟麦克风功能(需服务端配合),实测 Android 麦克风音频可实时回传到主机,用于语音聊天和在线会议场景,音质清晰,码率可自行调整。

5

  • 在切换分辨率时,画面会短暂中断约 1s,随后恢复,码率可实时切换,行为符合预期。

  • 可以调出菜单快发送常用快捷键,有多种视频传输参数可以实时调整。

6

2.2 软件分析

维度 Moonlight V+ 评价 原版 Moonlight 对比
数据量 无内置大量内容,流量消耗取决于串流码率;100Mbps 码率下 1 小时约消耗 45GB 流量(局域网场景可忽略) 相同,流量主要取决于用户配置
界面 主界面经过重新设计:应用缩略图背景自适应,卡片式布局美观;悬浮菜单层次分明,视觉一致性强 界面较简洁但偏于功能性,缺乏视觉吸引力
功能 功能数量远超原版:麦克风重定向、虚拟显示器显示、HDR显示、自适应码率、场景预设、体感瞄准、增强式多点触控等均已实现 功能以"能用"为目标,不提供高级优化选项
准确度 HDR 色彩映射在 NVIDIA 显卡 + 支持 HDR 的手机上表现准确(经过自动校准文件适配);延迟数据与实测吻合 HDR 支持有限,无法直接调用硬件级别HDR
用户体验 上手门槛适中:配对流程友好;高级功能虽多但分层设计合理,初级用户不会被淹没;中文界面和文档覆盖良好 界面全英文,中文用户学习有门槛

优点总结:

  1. 功能密度极高,几乎覆盖了专业串流用户的全部需求场景;
  2. 中文文档与提示完善,显著降低国内用户的使用门槛;
  3. 更新频率极高(近 3 个月内发布了 10+ 个版本),bug 修复迅速;
  4. V+ 与基地版 Sunshine 深度联动,形成功能闭环,体验远超单独使用原版。

缺点总结:

  1. 缺少对于不同参数选择对于串流流畅度或者兼容性的具体说明,用户设置可能并非最佳。
  2. 部分高级功能(如虚拟麦克风、虚拟显示器)在初次配置时提示引导不够直观,需要阅读附带文档才能找到完整说明;
  3. 开发者资源有限(核心 2~3 人),跨平台支持目前仅覆盖 Android,PC/iOS 版功能不对等;

2.3 改进意见

  1. 建立统一的功能文档介绍站点:目前功能说明散落在各版本 Changelog 和官方视频介绍中,虽然有首次安装时自动打开的统一教程文档,但是仍然只引导了基础配置,没有进一步介绍各个设置选项具体的不同。
  2. 额外安装插件优化:虚拟麦克风、VDD 显示器等需要服务端配合的功能在客户端应有明确的"需要服务端版本 ≥ XXXX"提示,避免用户盲目开启后遇到错误。
  3. 跨平台支持:后续加入IOS/PC版本支持。

三、用户调研

3.1 调研说明

本次对同学 张某某 进行了约 15 分钟的采访,张同学为大三学生,有一定技术背景,平时使用宿舍的电脑主机,移动设备为 Android 手机,有远程游戏/远程桌面的使用需求。

采访以文字记录形式呈现,已征得被采访者同意。

3.2 采访对象背景

  • 背景:计算机学院大三,熟悉 Windows 环境,有串流使用的经历,对开源工具有基本认知;
  • 选择原因:该同学有"宿舍 PC 挂着,出门用手机继续玩游戏或者写代码"的典型需求,是目标用户群的代表;
  • 需求:低延迟、画质可接受、无需使用第三方服务器、操作简便、不付费。

3.3 采访内容记录

Q:你之前是否使用任何游戏串流软件?

"用过 Steam Link,觉得延迟还行,但画质差点,而且只能串流 Steam 游戏。后来朋友推荐了 Moonlight,用了一段时间原版,后来换成 V+ 了。"

Q:使用 V+ 的过程中遇到了哪些问题?

"第一次装的时候,不知道要配套装基地版 Sunshine才能使用许多额外功能,装了原版发现部分功能用不了,找了好一会儿 README 才搞明白。另外有一次更新之后串流突然小概率出现网络不稳定时候链接失败,重启wifi重新连接才好,但后来的版本好像修了。"

Q:你觉得 V+ 和原版 Moonlight 比,最大的亮点是什么?

"我很喜欢虚拟显示器自动黑屏原始物理电脑屏幕,增加在宿舍使用的隐私性。还有麦克风重定向,微信视频会议的时候能直接用手机麦说话,很方便。界面也好看多了,原版感觉是程序员做的,V+ 感觉像个正经产品。"

Q:从用户体验角度看,你觉得还有哪里需要改进?

"文档太分散了,功能说明都在 Changelog 里,找起来费劲。还有就是我想看历史串流的统计数据(比如今天总共串流了多少分钟、平均帧率是多少),现在只能看实时的,没有历史记录。另外偶尔连不上主机,提示信息不够具体,不知道是 IP 变了还是网络不稳定问题。"

3.4 调研结论

用户调研结果与我本人的使用体验高度吻合:

  • V+ 在界面美观性中文本地化上明显优于原版,并且更新频率极高,是吸引中国用户的主要差异点;
  • 虚拟显示器音频重定向为两大与原版相比的核心优越功能。
  • 服务端与客户端版本依赖关系未在应用内显式说明,导致了初次使用时的困惑,是一个影响新用户体验的关键问题。

四、评测结论

综合功能评测和用户调研,给出以下结论:

评级:好,不错

在同类开源串流工具中,Moonlight V+ 提供了目前最为丰富的中文用户体验,功能迭代速度极快,明显优于原版 Moonlight。考虑到其为个人业余开源项目,完成度已经超出预期。扣分项主要源于文档整合度不足和部分偶发性 Bug。

4.1 定量评分尝试

参考 邹欣老师的软件评测维度,从以下维度对 Moonlight V+ 进行量化评估(满分 10 分):

评测维度 得分(/10) 说明
功能完整性 9 功能覆盖全面,超出绝大多数串流用户的需求,仅 iOS/PC 端功能对齐略显滞后
用户体验 8 界面美观,中文支持好,但文档分散、新用户引导不足
性能与稳定性 8 延迟低、码率高,但偶发音画不同步和连接提示不详细
安全性 7 修复了"窃听风云"等安全漏洞,但安装途径(第三方APK)对普通用户有安全感知风险
可维护性/文档 6 代码开源,但开发文档不足,更新功能说明散落于 Changelog,虽有配置文档但只提供最基础的配置说明
社区活跃度 8 Issues 响应积极,更新频繁,贡献者稳定
综合得分 7.7 同类工具中属于优秀水平,超越原版 Moonligh和 Steam Link

五、Bug 分析与提交

5.1 Bug 严重性评级标准

星级 含义
⭐⭐⭐⭐⭐ 致命性:导致串流服务崩溃或数据安全漏洞
⭐⭐⭐⭐ 严重:核心功能失效,用户无法正常使用主要功能
⭐⭐⭐ 中等:功能部分失效或体验显著下降,有 workaround
⭐⭐ 轻微:边缘功能异常,对主流程影响小
提示/美观类:不影响功能,仅影响视觉或信息准确性

Bug 1:取消竖屏模式后,加载界面仍保持竖屏方向未恢复

测试环境:

  • 客户端:Android 15,红米k60(3200x1440 分辨率),Moonlight V+ v12.7.0
  • 服务端:Foundation Sunshine v2026.224,Windows 11
  • 发生时间:2026年2月,切换横竖屏模式时发现

可复现性及步骤:

必然复现,复现步骤如下:

  1. 在 Moonlight V+ 设置中开启"允许竖屏串流",启动一次串流会话,确认竖屏模式生效;
  2. 返回设置,关闭"允许竖屏串流"选项;
  3. 重新启动串流会话,观察加载界面的屏幕方向;
  4. 此时加载界面仍以竖屏方向显示(如下图),未随设置变更切换回横屏方向,需完全退出应用并重新启动后才能恢复正常。

7

此时开启串流是横屏显示,但是加载界面如图为竖屏

Bug 具体情况描述:

这是一个 屏幕方向状态未及时同步的 UI Bug:用户在设置中关闭竖屏模式后,应用内控制屏幕方向的配置未在当前会话中即时生效,导致加载界面仍沿用上一次的竖屏方向锁定状态。进入实际串流画面后方向可恢复正常,但加载过渡阶段的方向异常会给用户造成困惑,产生"设置未生效"的错误感知。

Bug 分析:

  • 可能成因:屏幕方向配置在串流会话启动时仅读取一次,后续设置变更未触发重新读取;或加载界面的活动独立于主设置流程,未订阅配置变更事件;
  • 严重性评级:⭐⭐(轻微)
维度 分析
系统功能 不影响串流核心链路,实际串流画面方向正常,仅加载界面方向异常
安全性 无安全相关影响
用户体验 方向切换是用户主动操作,设置后未立即生效会直接造成困惑;需重启应用才能解决,操作成本较高

软件团队未在早期修复的可能原因:

  • 竖屏模式为相对小众的功能,"开启后再关闭"的操作路径属于边缘场景,并且软件重启就会恢复正常,测试把关环节对该路径覆盖不足
  • 团队规模小(2~3人),日常以新功能开发和核心 Bug 修复为优先,此类 UI 状态同步问题排期靠后。

改进建议:

  • 在加载界面时重新读取屏幕方向配置并更新,确保设置变更即时生效;
  • 增加自动化 UI 测试,覆盖"开启竖屏→关闭竖屏→重新启动串流"的完整操作路径,防止回归。

Bug 2:校园网场景下首页设备列表无法过滤,难以找到自己的设备

本 Bug 由我在使用过程中发现,并已于 2026年1月4日向开发团队提交 Issue(#145),开发者 @Yundi339 于次日(1月5日)完成采纳并通过 PR #146 完成修复,随后Moonlight V+ v12.6.2合并发布。

测试环境:

  • 客户端:Android 15,红米k60,Moonlight V+ v12.6.1
  • 网络环境:北航校园网(局域网内同时有多台其他同学的 Sunshine 主机处于开放发现状态)
  • 发生时间:2026年1月,宿舍楼局域网环境下使用

可复现性及步骤:

在特定网络环境(多用户共享同一局域网段)下必然发生,复现步骤:

  1. 在校园网或宿舍楼局域网中启动 Moonlight V+;
  2. 应用自动扫描并展示局域网内所有可发现的 Sunshine 主机;
  3. 当局域网内有多人同时开放 Sunshine(如宿舍楼内多名同学都在使用串流),首页设备列表中将出现大量无关设备;
  4. 用户无法仅通过界面操作隐藏或过滤掉不属于自己的设备,也无法置顶/优先显示已配对设备,每次使用均需从长列表中手动辨认。

如下图所示,当局域网内存在大量设备时,首页列表极度混乱,用户体验显著下降。

8

Bug 具体情况描述:

这是一个功能缺失类 UX 问题:应用在多设备局域网环境下缺乏对"未配对设备"或"不属于本用户的设备"的过滤机制,导致首页设备卡片列表在校园网等多用户场景下不可用。对于有隐私意识的用户而言,自己的主机也默认对局域网所有人可见,同样存在安全隐患。

Bug 分析:

  • 可能成因:设备发现逻辑直接展示所有 局域网广播到的 Sunshine 主机,未做配对状态过滤;PC 端 Moonlight 已有"禁用局域网发现"选项,而 Android 端在此次问题暴露前未同步添加对应的客户端侧过滤控制;
  • 严重性评级:⭐⭐⭐(中等)
维度 分析
系统功能 核心发现/连接流程可用,但在多用户场景下操作效率极差,用户需要在大量无关设备中逐一辨认,严重影响日常使用
安全性 用户主机默认向局域网所有成员可见,在校园网、办公网等环境中存在被陌生人尝试配对连接的风险
用户体验 对于目标用户群(大学生、校园网用户)而言,此场景是高频使用场景,体验影响显著

软件团队未在早期修复的可能原因:

  • 对用户需求掌握不好:开发团队可能更多在家庭网络(设备数量有限)的环境下测试,未充分考虑大学校园局域网这类多用户密集场景;
  • 原版moonlight PC 端已有"禁用局域网发现"选项,但 Android 端开发人员疏漏,未同步实现对应的客户端过滤功能,属于功能对齐的遗漏。

改进建议:

正常行为应当允许用户过滤或隐藏指定设备,或优先展示已配对设备。可能的实现方案:

  1. 未配对设备过滤:对扫描到但从未配对的设备,默认折叠或标记为"未知设备",减少视觉干扰;
  2. 设备屏蔽列表:允许用户长按某设备将其加入屏蔽列表,不再在首页展示;
  3. 已配对设备置顶:将用户曾成功配对的设备排列在列表顶部,并使用更明显的视觉样式区分;
  4. 服务端侧:Foundation Sunshine 可提供"禁止局域网发现"开关,让不希望被自动发现的用户在服务端关闭广播。

Bug 反馈与修复跟进(加分项):

我在发现该问题后,于 2026年1月4日向开发团队提交了 Issue #145,详细描述了校园网多设备场景下的不可用现象,并提出了上述改进思路。

开发者 @Yundi3391月5日回应,确认了该问题的存在,并指出 PC 端已有对应功能而 Android 端确实缺失。当天即提交 PR #146feat: 添加PC列表排序动画和未配对设备过滤功能),实现了:

  • 未配对设备的过滤展示(下图多出的眼睛图标);
  • PC 设备列表的排序动画优化。

9

可以看出,开启已配对设备筛选后,在相同网络仅有本人的一台电脑显示。

该 PR 于同日被合并关闭,相关功能随后版本正式发布。从提交 Issue 到修复合并,整个响应周期不足 24 小时,充分体现了该开源项目的高效社区响应机制。


第二部分:分析

一、工作量估计

假设团队规模 6 人(含专业 UI 支持),均为计算机专业应届毕业生,完成 Moonlight V+ 与 Foundation Sunshine 当前版本所展现的功能集,预计所需时间如下:

模块 工作量估计(人月) 说明
基础串流功能(基于 Moonlight 改造) 2 RTSP/RTP 协议对接、解码器选择、基础延迟优化,改造已有代码
V+ 核心 UI 重设计 3 主界面卡片化、应用缩略图背景适配、悬浮 HUD 系统,UI 工程量大
高级游戏功能 4 体感瞄准、自定义按键、手柄多设备支持、场景预设系统
麦克风重定向(双端) 1 需要客户端+服务端同步开发,涉及 UDP 实时音频传输与加密
Foundation Sunshine 服务端增强 6 VDD虚拟显示器管理、屏幕拓扑算法、HDR元数据、编码器优化(NVENC/AMF/Vulkan)
Web UI 重设计与本地化 2 Vue 3 重构、中文全量翻译、深色/浅色主题
安全加固 1 权限检测加强、虚拟麦克风安全校验
测试与 CI/CD 2 自动化回归测试、多设备兼容性测试
合计 约 21 人月 即 6 人团队约需 4 个月,或 3 人团队约需 8~10 个月

考虑到实际核心贡献者为 2~3 人,该项目已累计工作约 1 年,与估算吻合。这也印证了开源小团队的高效能——专注、目标明确、减少管理成本,使得工作效率接近正规小团队。


二、软件质量分析

2.1 与同类产品的主观评分横向对比

产品 功能完整性 用户体验 中文本地化 稳定性 更新活跃度 综合得分(/10)
Moonlight V+ 9 8 9 8 9 8.6
Moonlight 原版 7 7 5 9 7 7.0
Steam Link 7 8 8 8 6 7.4
Parsec(商业软件) 8 9 7 9 8 8.2

结论:Moonlight V+ 在同类开源串流客户端和商业软件中综合得分第一,在用户体验和稳定性的比较中名列第二(仅次于 Parsec)。考虑到其完全免费开源,在实际性价比层面远超 Parsec。

2.2 从工程角度看可改进方向

当前团队最可提升的一个软件工程环节是需求优先级管理与功能文档化

项目目前的开发模式近似"用户提需求 → 开发者兴趣驱动实现",缺乏系统的需求分析和优先级排序机制。开发者自述:"经常会出现,用户反馈需求,我们前脚实现了以后,后脚其他用户不这么认为,然后又折中改回去。"这表明存在以下问题:

  1. 未建立用户画像,无法判断"代表性用户"的真实需求权重;
  2. 功能迭代缺乏版本策略,Stable/Beta 标记混用,导致用户无法预判稳定性;
  3. Bug 与 Feature 的边界模糊,Issues 管理较为随意,缺少里程碑规划。

具体建议:引入轻量级敏捷流程——建立 GitHub Project Board,为 Issue 估分,设置每两周一次的迭代周期,强制区分标签,并在每个大版本前发布 Beta 供社区测试,收集反馈后再推 Stable。


第三部分:建议与规划

一、市场现状

1.1 市场概况

游戏串流是近年来快速增长的细分市场。从直接用户来看:

  • PC 玩家规模中国 PC 游戏用户约 6.79 亿+,其中有"出门继续玩"需求的核心玩家占比即使是5%也有约3000 万潜在用户;
  • 现有串流工具用户:Moonlight V+ 目前 GitHub Stars 1.6k,b站介绍up凯旋穷叭叭的更新介绍视频每期播放量在5万,实际中国用户规模预估在 5~20 万,b站up摄影师云飞sunshine+Moonlight介绍视频播放量破200万,总串流人数预估至少可达100 万以上.
  • 潜在增量:随着 WiFi 6/6E 和家庭千兆宽带普及,以及 Steam Deck、switch 等掌机设备推动"随时随地玩主机游戏"的使用习惯,该市场预计未来持续增长。

1.2 竞争产品概览

产品 类型 特点 目标用户
Moonlight(原版) 开源免费 跨平台,稳定,无高级功能 技术用户,追求稳定
Moonlight V+ 开源免费 中文优化,功能丰富,更新积极 中文用户,追求高级功能
Steam Link 免费 Steam 生态绑定,操作简便 Steam 玩家,非技术用户
Parsec 商业软件 高画质,低延迟,支持多用户协作 专业用户,工作场景,付费意愿强
NVIDIA GeForce NOW 云游戏 无需本地主机,但需订阅付费 无高性能台式机的轻度玩家

1.3 各产品定位与竞争态势

  • Moonlight V+ 当前定位:"最好的中文游戏串流开源客户端",以功能密度和本地化质量为核心竞争力,在国内串流社区已成为事实上的首选版本。
  • 最大竞争压力来自 Parsec(付费商业产品,体验更稳定,且有专业工作场景延伸)和 Steam Link(受众更广,不需要技术门槛);
  • NVIDIA GeForce NOW 等云游戏服务与 Moonlight V+ 并非直接竞争,两者面向不同用户(本地主机 vs 无主机)。

二、市场与产品生态

2.1 核心用户群画像

典型用户画像:

"游戏发烧友":25 岁,男,计算机/工科背景,有一台性能较强的台式机放在宿舍/家中,日常通勤使用 Android 手机或平板。他在乎延迟和画质,愿意花时间折腾配置,不愿意为串流工具付费(学生/刚参加工作),对中文界面和中文社区有明显偏好。潜在需求:希望工具能"开箱即用"但也支持深度定制。

维度 描述
学历 大专及以上,技术相关专业居多
年龄段 18~30 岁为主
爱好 PC 游戏、硬件折腾、数码产品、开源软件
收入 学生或初级开发者,付费意愿低,倾向免费开源方案
表面需求 手机/平板串流 PC 游戏和简单代码,低延迟、高画质
潜在需求 远程桌面(学习/办公)、家庭影院(串流 4K HDR 内容)、多设备协同、多显示器支持

2.2 用户生态

V+ 用户群体内部存在明显的社区反馈→快速迭代闭环:活跃用户在 GitHub Issues 和 QQ 群中反馈问题和需求,开发者快速响应并推出更新,形成正向循环。这是小型开源项目最宝贵的生态资产。

2.3 产品生态

客户端(Moonlight V+)与服务端(Foundation Sunshine)形成强绑定,共同构成完整的串流生态。同时 V+ 与 Sunshine 官方版本间的功能差异越来越大,"V+ 与基地版协作使用才能完整体验"的模式逐渐固化用户黏性;


三、产品规划

3.1 新功能设计:NABCD 分析

新功能串流历史记录与智能分析仪表盘

NABCD 要素 内容
N(需求) 用户调研显示,用户希望查看历史串流记录(总时长、平均帧率、平均延迟、最差网段分析)依此分析不同软件和硬件设置的表现差异,目前仅支持实时显示,无法量化对比差异。
A(方案) 在客户端本地数据库中记录每次会话的统计数据(开始时间、时长、平均/最大/最小帧率/延迟/丢包率),通过新增"分析"页面以图表化方式展示
B(好处) 帮助用户量化网络质量改善效果;为排查偶发性问题提供数据支撑;增加产品粘性和专业感
C(竞品) Steam Link 无此功能;Parsec 仅提供付费版的会话日志;本功能在免费开源工具中是差异化亮点
D(推广) 作为"V+ 独家功能"在社区宣传,数据可截图分享,形成自然传播;配合"网络诊断建议"功能,为用户提供优化指引

其他候选新功能(优先级排序):

  1. 应用内文档 Wiki(解决文档分散问题);
  2. iOS 版功能对齐(扩大用户覆盖);
  3. 统一版本管理与自动更新(降低用户维护成本);
  4. 多主机一键切换(面向有多台 PC 的高级用户)。

选择"历史记录仪表盘"而非其他功能的原因:实现成本低(纯客户端,无需服务端改动),用户诉求明确(调研中被具体提及),且对用户留存有显著帮助(数据可视化会让用户更长期保留应用)。


3.2 角色配置方案(6 人团队,16 周)

角色 人数 职责说明
项目经理 / 架构师 1 需求优先级管理,版本规划,社区沟通
Android 客户端开发 2 V+ 客户端新功能开发(历史记录、UI 优化)
服务端开发 1 基地版 Sunshine 功能增强(编码优化、新增 API 支持)
前端开发 1 Sunshine Web UI 改进(新增数据展示页、文档 Wiki 集成)
QA / 文档 1 多设备兼容性测试、自动化测试搭建、用户文档整理输出

3.3 16 周详细规划

周次 里程碑 主要任务
第 1 周 项目启动 需求整理、技术选型、搭建 CI/CD 流程、明确迭代规范
第 2 周 Sprint 1 启动 历史记录数据库设计;Sunshine Web UI 样式迁移梳理;文档 Wiki 框架搭建
第 3 周 核心功能开发 客户端会话数据采集与本地存储实现;服务端 API 补充
第 4 周 Sprint 1 收尾 历史记录基础 UI 完成(列表展示);Wiki 首批文档发布;内部测试
第 5 周 Sprint 2 启动 历史记录图表化(折线图/柱状图);版本管理+自动更新模块设计
第 6 周 图表与首次 Beta 图表可交互(缩放/筛选);发布 Beta v13.0-beta1,收集社区反馈
第 7 周 反馈处理 根据 Beta 反馈修复 Bug;优化图表性能(大数据量渲染)
第 8 周 Sprint 2 收尾 历史记录功能完整版完成;多主机切换功能原型;中期 Review
第 9 周 Sprint 3 启动 自动更新功能实现(差量更新);iOS 可行性预研报告;Sunshine 编码器新优化
第 10 周 iOS 方向决策 基于预研结果决定是否启动 iOS 开发;服务端新功能 Beta 测试
第 11 周 稳定性迭代 全量兼容性测试(覆盖 20+ 设备型号);性能回归测试;修复已知 Bug 清单
第 12 周 文档完善 用户文档完整版发布(覆盖所有主要功能);新手引导流程优化
第 13 周 公测准备 发布 Beta v13.0-beta2;修复 P0/P1 级别 Bug;更新版本号规范(Stable/Beta 标记)
第 14 周 公测反馈处理 集中处理社区反馈;确认 Stable 发布 Checklist 全部完成
第 15 周 预发布 代码冻结;最终 QA 轮次;更新应用商店说明与截图
第 16 周 正式发布 发布 Moonlight V+ 13.0 Stable + Foundation Sunshine 配套版本;社区发布公告

四、小结

Moonlight V+ 与 Foundation Sunshine 是国内开源游戏串流方向最具活力的项目之一,在极有限的人力投入下实现了功能上超越商业竞品的串流体验。其成功的关键在于:精准的用户洞察、高频的迭代节奏、与用户社区的深度互动

若以软件工程的视角审视其不足,主要集中于文档体系薄弱、新手无法理解设置内容、需求优先级缺乏量化依据等问题——而这恰恰是从"个人项目"走向"成熟开源产品"必须跨越的门槛。如果能在保持现有迭代活力的同时,引入轻量级的工程化规范,Moonlight V+ 完全有潜力成为全球范围内最受欢迎的开源串流客户端之一。

posted @ 2026-03-10 14:38  wrongization  阅读(0)  评论(0)    收藏  举报