软工导论 12-13-2 第一次作业 by 陆东伟

目标:
了解软件的基本开发过程、了解建模工具Visio基本用法;
要求:在博客上提交作业,注明姓名、班级和学号

作业1:描述软件工程的目标?

1. 较低的开发成本。

2. 达到要求的功能。

3. 软件可维护。

4. 按时交付软件。

5. 软件工作的高效性。

6.软件可移植。

7. 软件的可靠性。


作业2:描述软件的基本开发过程,说明每过程的重点内容是什么?

软件开发流程
1、需求调研分析
  系统分析员和用户初步了解需求,定义功能模块、初步定义好少量的界面
  系统分析员深入了解和分析需求,书写系统的功能需求文档
  系统分析员和用户再次确认需求
2、概要设计
  开发者需要对软件系统进行概要设计,即系统分析。概要设计需要对软件系统的设计进行考虑,包括系统的基本处理流程、系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为软件的详细设计提供基础
3、详细设计
  概要设计的基础上,开发者需要进行软件系统的详细设计在详细设计中,描述实现具体模块所涉及到的主要算法、数据结构、类的层次结构及调用关系,需求说明软件系统各个层次中的每一个程序(每一个模块或子程序)的设计考虑,以便进行编码和测试。应当保证软件的需求完全分配给整个软件。详细设计应当足够详细,能够根据详细设计报告进行编码。
4、编码
  在软件编码阶段,开发者根据(软件系统详细设计报告)中对数据结构、算法分析和模块实现等方面的设计要求,开始具体的编写程序工作,分别实现各模块的功能,从而实现对目标系统的功能、性能、接口、界面等方面的要求
5、测试
  白盒测试
  黑盒测试
6、软件交付准备
  在软件测试证明软件达到要求后,软件开发者应向用户提交开发的目标安装程序、数据库的数据字典、《用户安装手册》、《用户使用指南》、需求报告、设计报告、测试报告等双方合同约定的产物
7、验收
  用户验收
  properties xml
8、软件维护
  数据库数据管理
  用户跟踪培训
  故障分析解决
9、软件升级
  需求调整分析
  软件功能拓展
  优化系统
--摘自百度知道
作业3:阅读博客,回答问题:面向对象编程从骨子里就有问题:http://news.cnblogs.com/n/171853/
问题:面向对象编程非常流行,为什么这些大师如此抱怨?

       面向对象的思想,在于将过程化的编程转为对象来管理, 一个普通的行为,规范为一个对象所拥有的行为, 比如一个相加的操作规范为计算机这个类的一个普通的方法,这对现在的工厂化生产可能带来了很大的方便之处,但是有利的地方必然有弊,通过继承父类来达到代码复用,通过接口来规范各种类的行为,看起来并不杂乱无章,代码清晰明确,实际上很大程度增加了部分程序员的工作,他们了解一份代码,可能想知道的只是一个功能,但是他们可能得花上半天的时间去了解这个功能所涉及到的父类的代码,更上层包里的代码之类, 而且, 这样的面向对象,很容易出错, 一旦架构师架构不够合理到位, 一个小的代码调整就有可能因为复杂的类之间的逻辑关系而造成整段程序的崩溃,这种事在公司里也屡见不鲜。

       其次,面向对象的思想不符合正常人的逻辑思维, 正常人理解一件事,可能会按照时间顺序,就是程序的执行顺序来思考,这是正常的,然而面向对象丢弃了这种思考,使人变得懒惰,你在做某件事的时候只需要知道调用方法就好了,而方法的实现也许并不用管, 这样的懒惰是有弊端的, 可能会导致在代码的调整中就将周围相关联的代码给弄出问题。 一些天才级的编程员可能并不喜欢面向对象, 因为他们脑子够用,他们认为他们能不用面向对象就能设计出合理的程序, 用最原始的方法去构造整个工程, 这种方法可能也是很多初学者使用的,也是他们认为最舒服的, 他们觉得,那样的代码符合他们的理解,代码的出错率也低。

       我个人学习java仅仅一年, 虽然没有开发过大型的程序,  但在学习过程中也能大致体会到面向对象的利弊性, 希望有经验者提出宝贵意见, 勿喷~。


要求:必须真实,字数大于100,小于200!
作业4:安装Visio 2012,掌握基本流程图的画法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值