首页 > 代码库 > 软件工程个人作业 - week1

软件工程个人作业 - week1

  • 《构建之法》阅读疑惑:
  1. 如何寻找开发效率和性能的均衡点?显然开发效率强调封装,重视代码重用。但是遗憾的是代码重用往往泛化了数据特征,降低了效率。
  2. 如何“公平”分配工作?尤其是团队中人员参差时,如何能够使团队效率最大化?
  3. 测试需要进行到什么地步?众所周知,测试不可能完全覆盖,并且需要巨大的投入。
  4. 如何控制适当的可扩展度?对于未来可能的需求,需要保留一定的可扩展性,但是在未来需求不清楚的时候,过大地保留扩展性反而可能使系统的效率降低?
  5. 其实对于以上问题我基本都能给出一个合理的说法,为什么我还要问这些问题?

 

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

软件:关于软件的第一个理论的诞生还要早于计算机本身的诞生,是由图灵在1935年发表的文章Computable numbers with an application to the Entscheidungsproblem提出的。而这个单词最早出现的出版物是由Richard R. Carhart 于1953年8月出版的书籍。
软件工程:是由 Margaret Hamilton 发明的。在1968年北大西洋公约组织的计算机科学家在联邦德国召开国际会议,讨论软件危机课题,在这次会议上正式提出并使用了“软件工程”这个名词。

 

  • 目前流行的源程序版本管理软件和项目管理软件都有哪些, 各有什么优缺点?

Microsoft TFS

TFS(Team Foundation Server)是一个工作流协作的引擎。是一个高可扩展、高可用、高性能、面向互联网服务的分布式文件系统,主要针对海量的非结构化数据,它构筑在普通的Linux机器集群上,可为外部提供高可靠和高并发的存储访问。
优点:功能强大。
缺点:微软的东西通常都和其他东西不太好兼容。


Git
优点:搭建简单,随处可用。
缺点:命令操作较多。

Ruby社区的程序员使用Git以后,找不到好的Git托管网站,于是就开发了Github出来。
优点:开源代码随手可得。
缺点:私有库收钱。

Bitbucket
优点:免费支持私有仓库。检索功能强大。审核机制安全。网络用户界面友好配置设定丰富多样。安全策略细致和产品分类方案完备。
缺点:只能管理缺陷。

 

软件工程个人作业 - week1