第二次作业——提出三个问题

这个作业属于哪个课程 https://edu.cnblogs.com/campus/zjlg/rjjc20
这个作业的目标 通读《构建之法》并提出三个疑惑之处
姓名-学号 <孙晨>-<2018330301125>

问题一

我看了书中如下内容:

在描述计算机科学和软件工程的不同侧重点时,软件工程的侧重方向包含“在实践中建立起来的灵感和直觉” 。 ——第一章,P12

我的问题是:

在一个软件工程项目完整的生命周期之中,靠实践建立起来的灵感和直觉具体能应用在哪些阶段的什么方面。

我的看法是:

一个软件工程项目的生命周期包含软件需求分析、软件设计、软件构建、软件测试和软件维护。很明显地,软件维护属于项目交付后的后期运维阶段,软件测试则是对软件进行功能测试、bug修复排查等,二者都是在项目软件总体已经成形的前提下进行的,因此大概率使用不到实践中的灵感和直觉;而软件设计和软件构建,前者是从软件需求规格说明书出发,根据特定的对象和性需求设计软件系统的整体结构、划分功能模块、确定每个模块的实现算法以及编写具体的代码,形成软件的具体设计方案,后者则是将设计阶段的方案在代码层面完成实现的过程,由于二者都是针对特定对象和需求而进行各自工作的,所以似乎也使用不到以往实践中建立的灵感和直觉;因此,是不是就意味着只有在需求分析(即软件团队找到利益相关者,通过了解和挖掘他们的需求,从中总结提炼出具有共性的、统一的、真实的需求)和项目风险预估及前景预测时才会使用到“在实践中建立起来的灵感和直觉”呢?

问题二

我看了书中如下文字:

MVP的指导思想和渐交付相似,但是它更强调更早获得用户反馈,为此可以在产品完成之前就发布,它也强调产品的核心价值(产品最区别于竞争产品的地方),为了突出核心功能,别的辅助功能可以不考虑或者用别的平台提供的服务来代替。 ——第五章,P105

我的问题是:

在如今的软件开发大环境下,MVP这样的流程方法论有多大的适用面?

我的看法是:

近十多年来,随着智能手机和个人PC的不断普及,各类软件开始井喷式地出现和增长,无论是手机端还是电脑端,各类软件似乎已经覆盖了它们能力之内的方方面面。在这种趋于饱和的大环境下,想要设计开发一款新的软件并成功撼动其他同方向“先到者”的领先地位存活下来,似乎只能靠某些关键功能上前所未有的创新。而如果采用了MVP的开发流程,在最小功能集完成之后便交付给用户使用和体验,这样一个不成熟的产品的竞争力明显是要低于其他同类成熟产品的,再加上多数用户存在的对比心理,极有可能得到普遍的、带有强烈主观色彩的负面反馈,进而对之后的进一步开发造成非良性的影响和干扰。因此,在如今的软件开发大环境下,MVP这样的流程方法论究竟能有多大的适用面?

问题三

我看了书中如下描述:

功能分析可根据“杀手功能/外围功能”和“必要需求/辅助需求”这两种划分规则分为四个象限。 ——第八章,P165

我的问题是:

不应划分为四个象限,而应将第四象限归于第一象限。

我的看法是:

“杀手功能”,是己方软件完胜于其他同他同类产品、能够吸引住用户的优势关键方面;而“辅助需求”,则是边缘性的、最多带来锦上添花效果的低优先级方面。二者结合产生的第四象限——即具有绝对优势的功能却只能满足用户辅助需求的功能象限,需要投入不亚于第一象限的研发资源,却只能带来微小幅度的竞争力提升。因此我认为应当将第四象限归属于第一象限,消除带有杀手功能满足辅助需求的功能区域,将更多的资源尽可能地都投入到第一象限的研发中,以此最大程度地提高竞争力,同时也提高资源利用率。

posted @ 2020-10-31 13:19  不逢秋  阅读(166)  评论(2编辑  收藏  举报