1、什么是软件生命周期?把生命周期划分成阶段的目的是什么?
Answer:
软件产品从形成概念开始,经过开发、使用和维护,直到最后退役的全过程称为软件生命周期。
把生命周期划分成阶段的目的:把软件生命周期划分成若干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发工程的困难程度;在软件生命周期的每个阶段都采用科学的管理技术和良好的技术方法,使得软件开发的全过程以一种有条不紊的方式进行,这样,能保证软件的质量,特别是提高软件的可维护性。
2、软件生命周期各阶段是如何划分的?试述各阶段的基本任务。
Answer:
软件生命周期分为软件系统的可行×××、需求分析、概要设计、详细设计、实现、组装测试、确认测试、使用、维护、退役十个阶段。
各阶段的基本任务:
可行×××:分析软件项目的经济可行性、技术可行性、法律可行性、进行方案的选择和编写可行×××报告。
需求分析:确认待开发软件的功能需求、性能需求和运行环境约束,编制软件需求规格说明、软件系统的确认测试准则和用户手册概要。
概要设计:根据软件需求规格说明建立软件系统的总体结构和模块间的关系,定义各功能模块接口,设计全局数据库或数据结构,规定设计约束,制定组装测试计划。
详细设计:建立“模块开发宗卷”:设计程序模块的内部细节,包括算法、数据结构和各程序模块之间的详细接口信息;拟定模块测试方案。
实现:根据详细设计文档将详细设计转化为程序,完成程序调试和程序单元测试。
组装测试:将经过单元测试的模块逐步进行组装和测试。
确认测试:测试系统是否达到了系统需求。
3、什么是软件开发模型?常用的软件开发模型有哪些?
Answer:
软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。
常用的软件开发模型有:
以软件需求完全确定为前提的模型:瀑布模型
渐进式开放模型:原型模型、螺旋模型
形式化开发方法为基础的变换模型

4、瀑布模型的特点是什么?快速原型模型与螺旋模型有何区别?
Answer:
瀑布模型的特点是:
(1)规定了阶段之间自上而下、相互衔接的固定次序,上一阶段的成果作为下一阶段的输入
(2)每一个阶段完成之后,必须对阶段性成果进行评审,确认之后才可进入下一阶段。

快速原型模型与螺旋模型的区别为:
快速原型模型:快速原型模型的第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,用户或客户对原型进行评价,进一步细化待开发软件的需求。通过逐步调整原型使其满足客户的要求,开发人员可以确定客户的真正需求是什么;第二步则在第一步的基础上开发客户满意的软件产品。
螺旋模型:螺旋模型 ,它将瀑布模型和快速原型模型结合起来,强调了其他模型所忽视的风险分析,特别适合于大型复杂的系统。螺旋模型由风险驱动,强调可选方案和约束条件从而支持软件的重用,有助于将软件质量作为特殊目标融入产品开发之中。

5、什么是CASE?试举几例你所使用的CASE工具并说明它们的作用和特点。
Answer:
CASE(Computer Aided Software Engineering)计算机辅助软件工程:在软件工程活动中,软件工程师和管理员按照软件工程的方法和原则,借助计算机及其软件工具的帮助,开发、维护、管理软件产品的过程。
CASE工具:事物系统规划工具、项目管理工具、支撑工具、分析和设计工具、程序设计工具、测试工具、原型建造工具、维护工具、框架工具。

6、可行×××的内容有哪些?
Answer:
可行×××的内容有:引言、要求和目标、现有系统、所建议的系统、可选择的其它系统方案、投资及效益分析、社会因素方面的可行性、结论。

7、用系统流程图描述一家网上银行中网上购物系统的物理模型,并编写此系统的可行×××报告。
Answer:
顾客购买活动图:
顾客购买活动图主要是描述系统元素的活动,用于展示参与行为的类的活动或动作。下图便是网上顾客购物过程的活动图,直观地反映顾客在网上购买商品活动的整个过程,具体见下图。
      从活动图中可以看到,顾客首先访问网上购物网站,浏览网页。接着如果是新用户就登录注册界面,输入相关信息进行注册,立刻成为用户。老用户就直接登录界面。注册成为会员后,就能够享受到商场提供的各种方便的服务,可以利用商品查询的功能,快捷地查询到 自己需要购买的商品,为顾客实现不出门也能方便快捷地了解到自己需要购买的商品的价格,生产日期,有何优惠等。找到自己需要购买的商品以后,就可以进行购物了。在需要购买的商品点击购买按扭,进入订货界面,进行订货。客户可以查询自己的订单,看看是否交易成功。成功后就进行付款 ,最后可以选择继续购买还是注销退出,实现网上购物整个活动过程。