Instructure 的软件开发项目采用敏捷的迭代式流程,经历一系列阶段。本指南将深入剖析这一开发流程。
了解更多关于贡献创建流程的信息。
Instructure产品的开发流程是什么?
Instructure 产品的高层优先级已列入产品路线图,并按月进行审核,每季度进行更新。产品路线图包含众多优先级,这些优先级会随着产品开发流程的不同阶段而变化。
发现
在探索阶段,产品团队会了解用户的基本需求,从而理解驱动他们行为的因素。通过研究用户的操作并询问他们想要达成的目标,团队希望能够理解软件用户的基本目标。一旦了解了这些基本需求,他们就可以至少确定软件必须提供的功能。接下来,设计和开发会被分解成一系列独立的任务,并制定计划,在整个过程中分阶段地向用户交付功能。您可以在下面的“方法论”部分了解更多关于此流程的信息。
在探索阶段,产品团队可能会:
- 访问网站采访用户
- 调查用户
- 审阅社区内容(博客、问答论坛、Instructure Live 课程等)
- 审查支持案例
- 收集客户成功经理(CSM)的反馈意见
设计
在设计阶段,所有可能的解决方案都会被探索和评估。你可以把这个阶段看作是概念验证阶段。
开发与测试
当产品处于开发和测试阶段时,工程师们会积极构建解决方案的各个部分,并根据成功指标进行测试。随着各个组件的构建和测试,它们会为工程师接下来要开发的组件的设计和最佳开发路径提供信息,从而形成比单独构建每个组件更优的整体解决方案。
发布
发布阶段是指用户首次在发布说明中看到某个优先级(或部分优先级)的发布。发布说明的日期表明了所包含功能的可用性。对于 Canvas,除非另有说明,所有功能均可在 Beta 环境中进行测试。Beta 环境允许用户在不影响其实时数据的情况下探索新功能。
评价
当一项功能进入评估阶段后,产品团队会查看在探索阶段定义的成功标准,以确定是否达到了成功标准。
开发过程中采用何种方法?
Instructure 的开发人员遵循敏捷软件开发方法。这种方法是行业最佳实践,有助于开发人员评估反馈或项目,从而确定哪些内容符合现有优先级。
对于简单的更新,或者可以在大型开发项目间隙完成的更新,Instructure 会尽量立即完成。如果更新规模太大,无法立即安排,但我们认为它很重要,则会将其搁置,以便在下一个开发周期中考虑。
和许多事情一样,产品管理既是一门艺术,也是一门科学。在决定优先开发哪些功能时,我们的团队会遵循以下标准,以便就解决哪些问题以及何时解决做出明智的决策。这些标准适用于所有功能,无论其来源如何(例如, 社区提交的贡献或 Instructure 产品团队主导的用户访谈反馈)。
| 机会评估标准 | 描述 |
|---|
| 价值影响 | 这是否为我们的用户创造了新的价值?这是否改善了现有的用户体验? |
| 影响范围 | 这能为现有用户创造价值吗?这能服务于新的用户群体吗?有多少客户会从中受益?他们会多久使用一次? |
| 战略调整 | 这是否与我们目前的产品/服务组合在战略上相符?它又如何与我们的未来战略保持一致? |
| 可行性 | 技术上是否可行?我们目前处于什么位置来解决这个问题? |