关于教材的疑问

阅读的教材《构建之法》

1第一章中提到:“软件企业=软件+商业模式”,这样的结构是否过于简单,尤其是在互联网+时代

2.在进行单元测试的时候,怎么做到100%覆盖

3.个人项目中Code Review有什么作用,应该怎么去做

...(因为主要时间都花在个人项目了,在书里面发现的问题不多)

“软件”的提出

  电脑问世初期,人们只是把软件当成为了使计算机完成某个任务所需要的指令的集合,并没有专门对它进行定义。之后到了20世纪50年代,专门卖软件的公司开始增加,规模也越来越大。其中,第一家软件公司CUC逐渐走上正轨后,在1959年首次使用了“软件”一词。

“软件工程”的提出

北大西洋公约组织在1968年10月召开的计算机科学会议上,FritzBauer首次提出“软件工程”的概念,试图将工程化方法应用于软件开发。

一些源代码管理工具的对比(由于个人只用过GitHub所以对于其他的工具的描述都是拾人牙慧,不能判断其客观性)

Visual Source Safe,简称VSS,是微软出品的版本管理系统:

优点是配置起来比较简单,易于上手,而且,版本回退方便。

缺点是只局限于内网,开发者一旦离开,就无法再进行代码的更新合并了,并且,因为是微软出品,只支持windows系统,而且据用户反映,提交较大文件(50M)时,会出现问题。

Concurrent Version System,简称CVS:

优点是对中文路径支持的比较好,本地文件和库文件可以多对多。

缺点CVS不支持本地文件重命名提交,管理员很难清楚的知道一个项目到底有多少个用户各用户的权限和密码是什么只能用分组的方式管理用户而且密码和权限还是不清晰,并且,采用了完全用户可见的方式。

SVN是一种集中式的源码管理软件,是CVS的接班人:

优点是,速度比较快(相对于CVS而言),支持文件重命名提交系统会提示删除旧文件,创建新文件,有创建标志和分支dubious等功能。

SVN的工作流程是,所有开发者在开始新一天的工作之前必须从服务器获取代码,然后开发,最后解决冲突,提交。所有的版本信息都放在服务器上。所以缺点就是,如果脱离了服务器,开发者基本上可以说是无法工作的。

Microsoft TFS,同样是微软出品的系统:

优点是不论在本地还是 在云中,TFS 均可支持灵活的开发实践、 多个 IDE 和平台,并提供有效管理整个 IT 生命周期的软件开发项目所需的工具。

缺点是用浏览器访问,比较慢。

GitHub Git是一个分布式的版本控制系统:

优点是拥有pull request等强大功能,功能简介,易于上手。

缺点是对中文支持不够好,局部还原不够完美,在国内访问比较慢,而且,对于企业而言,价格比较昂贵。对Windows的支持不是很友好,毕竟Git是linux创始人弄出来的东西,其指令有点类似与linux命令行里面的指令

Trac:

优点是使用非常灵活,可以和SVN集成。

缺点是,系统比较简单,功能和其他系统相比,不够强大。

Bugzilla:

优点是支持中文,再linux和unix扩展比较好。

缺点是快速搜索不准确,只能管理缺陷,不能管理测试计划,测试用例等。

Apple XCode,由苹果公司开发,编译器采用许多新的编译技术:

优点是编译速度快,自动向量化技术可以释放每台 Intel 系统中速度引擎的能量,同时有撤销,重做等功能。

缺点是系统更新不稳定,可能会有插件失效的情况。

Week1个人作业的更多相关文章

  1. 团队博客作业Week1 --- 团队成员简介

    团队博客作业Week1 团队作业1 我们团队是一个以功能团队模式组建而成的团队,我们总共有5位队员,分别是:李剑锋.陈谋.卢惠明.潘成鼎.仉伯龙. 中间的那位就是李剑锋,我们的PM(项目经理).性格热 ...

  2. 个人博客作业Week1

    个人博客作业Week1 一.问题 通读<构建之法>我有一下几个问题 PM没有参与代码编如何进行管理. 软件工程师的职业资格考试对我们来说很有必要吗. 当我们为用户开发软件时我们需要了解用户 ...

  3. 集大软件工程15级个人作业Week1

    集大软件工程15级个人作业Week1 孙志威 201521123077 博客园主页 码云地址 阅读参考材料,并回答下面几个问题 (1)回想一下你初入大学时对网络工程专业的畅想 当初你是如何做出选择网络 ...

  4. [buaa-SE-2017]个人作业-Week1

    个人作业-Week1 Part1:教材中不懂的问题 1.根据书中"除了前20的学校之外,计科和软工没有区别"所以计算机科学这个专业也许在我们学校是和软件工程有区别的,但是可以料想的 ...

  5. [BUAA_SE_2017]个人作业-Week1

    个人作业-Week1 疑问 教材中说,PM在衡量需求时需要方方面面的能力与研究.可是,当下许多互联网IT公司只承担外包业务,即客户给什么需求就实现什么需求,甚至可能不要求其它先进的功能.此时,开发团队 ...

  6. 团队博客作业Week1

    Study the projects done by previous student groups - View their blog site, use their software, email ...

  7. 团队博客作业Week1 Team Homework #3软件工程在北航

    这次我们采访了一位大四的学姐,让她简单地谈了谈去年学习软件工程的经历和感受. 在完成软件工程大作业的过程中,由于计划安排与实际脱节,导致时间前松后紧,平均每周花在这门课上的时间大约有8个小时. 项目完 ...

  8. week1:个人博客作业

    1.软件工程课程的希望和目标 老师步置的任务完整的做完,每一步都是自己做的,明白自己做的每一步,和为什么这样做. 期末考试最后为95分以上,最好是100. 每周学习这门课时间 每周2节课(90分钟)+ ...

  9. Week1 Team Homework #1 from Z.XML-项目选择思路--基于对曾经大作业项目的思考

    这两天试玩了一下去年学长的满分工程<shield star>游戏,再结合了一下他们团队的博客记录,有一种非常牛逼的感觉.具体对于这款游戏的一些思考和看法,毛大神已经说的很好了.因此,这里主 ...

随机推荐

  1. c++ ActiveX基础1:使用VS2010创建MFC ActiveX工程项目

    1.ActiveX的基本概念 ActiveX控件可以看作是一个极小的服务器应用程序,它不能独立运行,必须嵌入到某个容器程序中,与该容器一起运行.这个容器包括WEB网页,应用程序窗体等... Activ ...

  2. P1231 教辅的组成

    传送门:https://www.luogu.org/problemnew/show/P1231 这是一道很不错的网络流入门题,关键在于如何建图. 首先,我们将练习册和源点连一条边权为1的边,然后若书 ...

  3. linux 创建守护进程的相关知识

    linux 创建守护进程的相关知识 http://www.114390.com/article/46410.htm linux 创建守护进程的相关知识,这篇文章主要介绍了linux 创建守护进程的相关 ...

  4. setInterval() 方法应用

    setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式. setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭.由 s ...

  5. mysql删除关联表数据

    DELETE og,oiFROM order_goods og, order_info oiWHERE oi.order_id = og.order_id and oi.user_id = 6

  6. AbelSu教你搭建go语言开发环境

    go语言官网:https://golang.org/ windows:官网下载go1.6.windows-amd64.msi安装文件,安装位置选择默认C:\Go\安装结束后配置环境变量Path: C: ...

  7. 【C/C++】1~20的阶乘之和

    一. 前情   能点进这篇文章的,想必也已经知道了C语言和C++语言,以及阶乘的定义,所以在此不赘述了.SUM(1!~20!)这个问题是我在大一学C语言时的一个小题,最近又要把编译器装回来,所以装完之 ...

  8. 20155213免考项目——bof进阶及简易的HIDAttack

    20155213免考项目--bof进阶及简易的HIDAttack 目录 序 任务一:构造Shellcode(64位) 任务二:64位Shellcode的注入 任务三:32位及64位bof攻击(开启堆栈 ...

  9. 【WPF】给TextBox添上Label

    原文:[WPF]给TextBox添上Label 引言     在客户端开发中,要说出现频率大的控件,必定有TextBox的身影.然而在TextBox的旁边通常得有个基友Label,形影不离.为此,我们 ...

  10. 【arm学习】我的第一个裸板程序

    初学ARM感觉写个裸板程序还真的不容易,可能是没有用到ADS,keil之类的开发平台的缘故吧.编译,链接过程在linux平台上完成,这样学起来更有实感,还能顺便熟悉linux环境,以及命令,何乐而不为 ...