「BUAA SE Individual Work1」阅读和提问

Posted by saltyfishyjk on 2023-02-25
Words 1.9k and Reading Time 6 Minutes
Viewed Times

「BUAA SE Individual Work1」阅读和提问

Part 0 前言

项目 内容
这个作业属于哪个课程 2023年北航敏捷软件工程
这个作业的要求在哪里 个人作业-阅读和提问(作业说明链接)
我在这个课程的目标是 学习现代软件工程开发的模式,锻炼团队协作开发的能力
这个作业在哪个具体方面帮助我实现目标 通过阅读《构建之法》了解现代软件工程概念
了解软工的工程性、团队成员的配合以及PM的职责
调研CI/CD等各种现代工具及最佳实践

Part 1 阅读提问

问题1:根据软件的不同、团队规模的不同以及团队成员的不同,最合适的团队模式肯定有所区别。那么在一个团队刚成立的时候,该如何快速先行选择一个团队模式开展工作,且这个模式虽然未必最佳但是至少是次最佳?

文章简述

定位:第5章团队和流程 5.2节 软件团队的模式P91-P95

5.2.1 主治医师模式

5.2.2 明星模式

5.2.10官僚模式

资料支撑

一个创业公司团队可能由于创业初期所有人都干劲满满,因此具体的团队模式不是很重要;一些大型的成功的软件公司如米哈游能够以工业能力维护五百余人的原神项目组,持续稳定高质量产出内容并交付;一些巨型软件公司如阿里巴巴虽然大而完善,但是内部的大公司病已经初现端倪,可能需要更好地团队管理方法。

提问原因及个人思考

本次敏捷软工中,虽然和队友之前就相识,但是以这样大型的软件项目一起合作还是第一次。由于敏捷开发的敏捷性,我们可能没有办法做完善的评估来选择最合适的团队模式,那么我们该如何在初期快速决策出一个次最佳团队模式以尽快使工作步入正轨呢?如果初选了一种团队模式,在工作中又该如何适时调整,不断趋近最佳模式呢?

问题2:如何合适地分而治之?

文章简述

定位:第8章 需求分析 8.7节 分而治之 P177

一个团队项目要在一段时间内完成诸多任务,满足用户的需求,实现团队的目标…这时候我们需要一个角色站出来领导大家,把看似巨大无从下手的项逐步分解为可以操作的工作。PM是责无旁贷的领导者

资料支撑

在很多团队中,PM往往不是最精通技术的那个,他可能对技术、管理、市场等多方面都有所涉猎并有较好的大局观,但这也就导致了他对技术细节不可能了解的很清楚。

提问原因及个人思考

对于上述情况,一个PM应该将一个软件项目分割到什么样的粒度才是既准确又合适的呢?粒度太大,会导致项目仍然需要分割;粒度过细,涉及的技术可能PM本身也不甚了解,且将大家的工作更加碎片化了。另外,在这个过程中,是更采用集体决策,还是个人决策?如果集体决策,是采用民主集中还是绝对多数?多数人是不是可能大局观不够,只能了解到自己的细分技术领域,而无法对整个项目的分解提供帮助呢?

问题3:如何推行高效工作工具如源代码管理工具Git等?

文章简述

定位 第11章 11.6节 实战中的源代码管理 P242-246

软件学院的学生果冻在移山公司实习,他问阿超:为啥需要源代码管理?…我的最新代码是质量最高的,有质量最高的代码还不够吗?

资料支撑

尽管目前Git等源代码管理工具在大学低年级就为大家所知道,但是依然有很多人不喜欢、不习惯使用这样的工具,他们可能更喜欢使用微信直接发一个压缩包,这带来了代码管理的很大问题。除此之外,其他新工具的使用也难以推广,如开会记录、搜集资料、通知发布,很多人都喜欢微信群直接发,这给文档整理以及工作的有序展开带来了麻烦。

提问原因及个人思考

在我参与的一门课程的助教团队工作中,我也遇到了类似的问题,团队助教技术高超,但是却并非都善于或喜欢使用这些工具。即使强行推广,大家的积极性也不够高。面对这样的情况,我们该如何去逐步树立、推广和规范团队的工具使用,让大家既乐意,又主动地使用这些工具呢?

问题4:对于渐进发布的产品,如何使用合适的工具或解决方案以实现最佳DevOps?

文章简述

定位:第15章 稳定和发布阶段 15.2节 渐进发布和DevOps P331-P333

在往后的几年中,由服务稳定性和效率推动的各种开发工作被归纳为一种新的开发模式Development-Operations(DevOps)…

资料支撑

强大的团队往往有完善高效的工具链,他们能以最佳工具链实现来最大限度发挥个人和团队的能力。

提问原因及个人思考

虽然我们目前从技术上和最顶尖的团队们有很大差距,但是从最佳工具如DevOps开始,我们可以站在巨人的肩膀上(成熟高效的工具链)进行开发和训练,趁手的工具会让工作事半功倍。那么,我们该如何快速确定团队的工具链呢?最近读书和搜索资料发现了很多解决方案提供商,但是针对于我们特定场景的需求,仍不是很确定什么样的工具是最好的。

问题5:如何用科学的方法或者技术辅助提高领导力进而快速带领团队成长?

文章简述

定位:第17章 人,绩效和职业道德 17.3节领导力——带领团队成长 P384

资料支撑

优秀的领导具有长远的目光、宏大的格局、广博的技术、深厚的人格魅力以及高超的管理艺术,可以带领团队持续前进,不断取得新的成就。但是,我们知道在相当多的企业中有非常多的团队和项目,这意味着有非常多的领导可能并不是各个层面都做到最好。但是,这些企业的团队和项目依旧出色。

提问原因及个人思考

在上述情况中,这些企业和团队使用了什么科学的方法或者技术来辅助提高领导力,弥补在个人魅力、管理艺术等较个性化方面的不足呢?


This is copyright.