[2017buaa软工]第1次个人作业

王辰昱 王辰昱     2022-09-20     763

关键词:

  • 快速看完整部教材,列出你不懂的5-10个问题,发布在你的个人博客上。

1. 为什么说软件是人类创造的最复杂的系统类型?大型建筑、飞行器甚至长篇小说的结构也可以非常复杂,并且容易变得难以理解和维护,认为软件系统十分复杂是不是因为软件工程还没有充分发展?

2. 用形式逻辑的方法验证需要高可靠性的大型软件的正确性是否可行?例如航空的软件系统。

3. 如何发现社会的潜在需求?类似小黄车这样的项目,之前从未有人提出来过,这种颠覆性的创新是如何提出并且恰好被市场认可?

4. 为什么作者坚持认为代码应该手写?用技术提高写代码的效率,除了造轮子,实现代码的自动生成是否也是一条出路?

5. 作为领导者,当团队急需看到成就时,是应该更多依赖直觉快速决策还是依赖分析决策?

6. Program Manager 如何保持和开发、测试、UX等人员平等的地位?如果PM负责统筹规划,其他人员是否还是他实际意义下的下属?如果PM和DEV发生不可调和的分歧,该听PM的吗?

7. 该如何控制项目的风险?特别是在中国当前的经济、文化政策下,很难预知软件发布时是否出台了更严格的审查政策,在这样的环境下,如果资金和人力不丰厚,如何保持项目的健壮性?

8. 客户不断增加新需求,打乱开发流程该怎么办?如何让软件架构适应不断变化的需求?

9. 一般的项目经理需要怎样的技术能力?工程师觉得项目经理不懂技术,不服领导,是否有道理?项目经理是否应该有足够的技术功底?

10. 作为以编程为生的程序员,在这个人人会编程的年代,保持不可替代性的方法,除了学习软件工程等专业开发知识,还有什么?

  • 请问 “软件” 和 “软件工程” 这些词汇是如何出现的 - 何时、何地、何人?

1. “软件(software)”一词用于描述电脑程序最早出现在1958年1月,由John W. Tukey在Princeton大学提出.(http://www.historyofinformation.com/expanded.php?id=936)

2. “软件工程”在1968年,由Peter Naur和Brian Randell提出,在Garmisch, 德国。(《构建之法第二版》,邹欣,P19)

3. 上网调查一下目前流行的源程序版本管理软件和项目管理软件都有哪些, 各有什么优缺点? (提示:搜索一下Microsoft TFS、Git、Mercurial、GitHub、Bitbucket、Trac、Bugzilla、Rationale,Apple XCode)?

Microsoft TFS:

优点:

    • 任务版上能将需求、项目进度一览无余,对于小团队而言,比甘特图更有用
    • 集成了项目管理、版本控制、BUG 跟踪,能有效实现 SCRUM
    • 能与 VS 无缝接合

缺点:

    • 用ASP实现,用浏览器访问很慢
    • 团队的邮件细节配置很复杂

Git:

优点:

    • 免费的开源软件
    • 很好地实现分支、合并、提交、回滚
    • 项目安全性好,误操作警告丰富

缺点:

    • 概念过于复杂
    • 语法设计比较随意
    • 对初学者不友好,代码封装性差
    • 总有办法破坏版本库的内容

Mercurial:

优点:

    • 命令有双字母简称
    • 命令兼容svn
    • 命令封装性好
    • 服务器部署相对容易

缺点:

    • 分支管理不灵活
    • 支持社区略差

Github:

  优点:

    • pull request和issue功能方便社区协作
    • 个人展示、合作平台
    • 有大量优秀的开源项目

缺点:

    • wiki 功能太弱
    • 学习曲线陡峭
    • 可能未来某天被墙
    • 企业应用费用太高

Bitbucket:

优点:

    • 支持私有免费项目
    • 支持git

缺点:

    • 受欢迎度不如Github
    • 网站功能不如Github丰富

Trac:

 

[2017buaa软工]第0次个人作业

第一部分:结缘计算机我在高考完了以后没有考虑过任何其他的选择,五个平行志愿的第一志愿都填了计算机。我对计算机的热爱,最早起源于小时候玩的flash游戏。即使在没有flash小游戏的时候,捣鼓Windows系统也是兴趣之一。... 查看详情

[2017buaa软工]第二次博客作业:代码复审

一、代码复审1.概要部分 (1)代码能符合需求和规格说明么?  经测试,对于合法输入,代码能以要求的格式给出正确的结果。 (2)代码设计是否有周全的考虑?  对于错误输入考虑不太周全。-c中在数字中插入字母(... 查看详情

[2017buaa软工]第零次作业

 第一部分:结缘计算机  你为什么选择计算机专业?你认为你的条件如何?和这些博主比呢?(必答)我当初选择计算机,是因为:1、北航的前辈对北航计算机专业评价非常高;2、我也喜欢通过编程来代替我完成一... 查看详情

2017buaa软工第0次作业

第一部分:结缘计算机1.你为什么选择计算机专业?你认为你的条件如何?和这些博主比呢?我在上大学之前,其实一直就没怎么考虑过自己以后想要选什么专业,只知道一个大致的方向一定是理工科。毕竟大学之前,只有一个... 查看详情

[2017buaa软工]个人作业-week3

第一部分调研,评测一.bug的定义  按照《构建之法》的内容,bug的定义简单的来说就是软件的缺陷,究其表现形式可以从三个层次上说明:表面症状:用户使用时软件出现了用户意料之外的事情,比如突然退出;  程序中... 查看详情

[2017buaa软件工程]第0次个人作业

第一部分:结缘计算机你为什么选择计算机专业?你认为你的条件如何?和这些博主比呢?(必答)  选择计算机专业的时候其实我没想太多的,我从小学三年级家里就买了电脑,加上我舅舅家以前又是开网吧的,虽然比较小... 查看详情

[buaa-se-2017]个人作业-回顾

...和分析1.1问题:根据书中“除了前20的学校之外,计科和软工没有区别”所以计算机科学这个专业也许在我们学校是和软件工程有区别的,但是可以料想的是大多数人将来都会是码农,那么我们专业和其他学软件工程的人相比有... 查看详情

[2017buaa软工助教]收集个人信息

如题我们要收集三个东西1.学号2.Github地址①3.博客园博客地址②请各位同学自行创建,并按照如下的格式评论在这篇博客下“14061195+https://github.com/ChildishChange+https://www.cnblogs.com/ChildishChange/”附①虽然我们用Github,这里安利一下co... 查看详情

2017buaa软工个人项目之数独

1.项目GitHub地址:https://github.com/ZiJiaW/Soduko(由于一开始把sudoku看成了soduko,于是名字建错了,读起来可能有点奇怪…)2.项目PSP表格如下:PSP2.1PersonalSoftwareProcessStages预估耗时实际耗时Planning计划0.5h0.5h.Estimate.估计这个任务需要... 查看详情

buaa软工个人作业week2-代码复审

一.代码复审CheckList1.概要部分代码能符合需求和规格说明么?对-c的测试:可以看到程序不支持1000000的数独终局输出,读源码发现常量MaxCounts定义为了100000,导致无法计算十万以上的数独终局。另外,实际命令行运行发现程序无... 查看详情

软工第三次作业——个人psp

9.22--9.26本周例行报告1、PSP(personalsoftwareprocess)个人软件过程。 类型任务预计时间开始时间结束时间中断时间实际用时准备工作学习重定向  2017-9-229:152017-9-2211:30 喝水等30min 105min 写代码 写功能4-1,重定... 查看详情

[2017buaa软工]第一次个人项目数独的生成与求解

零.Github链接https://github.com/xxr5566833/sudo一.PSP表格 PSP2.1PersonalSoftwareProcessStages预估耗时(分钟)实际耗时(分钟)Planning计划  ·Estimate·估计这个任务需要多少时间10 Development开发  ·Analysis·需求分析( 查看详情

[buaa软工第四次]个人作业-提问回顾与个人总结(代码片段)

...现测试发布维护理解和心得“阅读和调研”文章链接[BUAA软工第一次]个人阅读作业-阅读和调研问题回顾&解答在“软件工程概论”章节中有一句话:一个好的软件,即使功能和同类软件区别不大,但是会让人感觉到... 查看详情

软工第三次个人作业(代码片段)

一、题目的选择。我选择的是第一题,题目要求如下:给定n个整数(可能为负数)组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的子段和的最大值。当所给的整数均为负数时定义子段和为0,依此定义,所求的最优值... 查看详情

软工实践第二次作业

Github:https://github.com/031502216/softWare作业地址:http://www.cnblogs.com/easteast/p/7469291.htmlPSP2.1表格PSP2.1PersonalSoftwareProcessStages预估耗时(分钟)实际耗时(分钟)Planning计划 -- --·Estimate·估计这个任务需要多少 查看详情

软工项目组第二次会议

第二次会议时间:2017-11-12 14:00至15:30地点:第三教学楼A楼休息区第二次会议的主要内容为:大家提出各自准备的方案,讨论并确定最终的选题,然后分配任务。会议中,大家提出的方案以及讨论结果如下:方案名方案介绍评... 查看详情

软工实践第二次作业-黄紫仪

1)Github项目地址https://github.com/ziyi12345/shudu2.git2)在开始实现程序之前,在下述PSP表格记录下你估计将在程序的各个模块的开发上耗费的时间 PSP2.1PersonalSoftwareProcessStages预估耗时(分钟)实际耗时(分钟)Planning计划30 ·Es... 查看详情

软工第0次个人作业

一、你为什么选择计算机专业?你认为你的条件如何?和这些博主比呢?首先说明,在进入大学之前,对于计算机专业的相关问题一无所知,对编程一无所知,对于计算机的理解仅仅存在于玩游戏和瞎捣鼓的层面上,唯一感兴趣... 查看详情