境和工具箱环境。
4.工具箱类软件工具的基本特点?
(1) 在某种OS基础上通过一组小的实用工具构成; (2) 虽然各工具之间相互独立,但系统能提供统一的用户命令界面及工具之间统一的数据交换方式;
(3) 工具箱中各工具之间是相互独立的,用户可根据需要进行灵活的增加和裁减;
(4) 工具箱环境中一般除了包括支持编码阶段的工具(如编辑程序、编译程序、汇编程序、连结程序调试程序等)外,还可包括支持大型软件开发方面的工具;
(5) 由于工具箱环境具有较强的通用性和灵活性,因而目前商品化的算机系系统上配置的软件环境大多属于这一类。如:UNIX程序设计环境、及VAX/VNS SET、PCDE、APCE等程序设计环境。
5.软件开发环境的组成与各成分的作用?
软件开发环境的构成:交互式人机界面、工具集及软件环境数据库。
交互式人机界面:人机界面(也称用户界面或人机对话)是用户与计算机系统之间相互交流的中间媒介。 工具集:工具集中软件工具是构成软件开发环境的基本成分。包含在软件开发环境中的工具不是各自封闭和分离的,而是与某种软件开发方法或某种软件加工模型相适应,并以一种综合的、一致的和整体连贯的形态来支持软件开发的全过程。
软件环境数据库:是各个软件工具之间共享数据及相互连结的统一媒介。
6.软件开发环境数据库在软件开发中的作用?
软件环境数据库是用于支持软件项目的大型数据库;软件环境数据库中主要存储软件开发过程中产生的有关产品或半成品的数据及各种项目数据,如源程序、测试数据和各种文档等,它构成软件开发和维护过程中所有项目数据的集中化的存储设施,是集成化软件开发环境的核心组成部分,也是各个软件工具之间共享数据及相互连结的统一媒介。
7.集成化项目支持环境IPSE的主要特征是什么? (1) 集成化和相互兼容的工具集; (2) 支持项目的管理和控制; (3) 支持配置管理;
(4) 支持多种语言的软件开发; (5) 支持硬件开发;
(6) 允许宿主机和目标机使用分布式系统。
8.CASE的含义是什么?
CASE是计算机辅助软件工程的简称。简单的说,可以将CASE理解为: CASE=软件工程+自动化工具.从狭义角度解释它是一组工具和方法的结合;从广义角度解释它是辅助软件开发的任何计算机技术;从学术研究角度解释:它是软件开发
方法、软件开发管理和软件工具等方面多年研究和发展的产物;从软件产业角度解释它是种类繁多的软件开发和系统集成的产品和软件工具的集合。
9.CASE工具一般分为几类?有什么区别?
CASE工具可以理解为除OS外的所有软件工具的总称。按对软件过程的支持范围CASE工具分为三类:一是工具: 支持单个任务;二是工作台:支持某一软件过程或一个过程中的某些活动;三是环境:支持某些软件过程及相关的大部分活动。
10.工作台实现软件工具集成的方式?
工作台实现软件工具集成的方式是通过共享文件、共享仓库或共享数据结构来集成。
作业题:面向对象分析实践
下面是自动售货机系统的需求陈述,试建立它的对象模型、动态模型和功能模型: 自动售货机系统是一种无人售货系统。售货时,顾客把硬币投入机器的投币口中,机器检查硬币的大小、重量、厚度及边缘类型。有效的硬币是一元币、五角币、五分币、二分币、一分币。其他货币被认为是假币。机器拒绝接受假币,并将其从退币孔退出。当机器接受了有效的硬币之后,就把硬币送入硬币储藏器中。顾客支付的货币根据硬币的面值进行累加。 自动售货机装有货物分配器。每个货物分配器中包含零个或多个价格相同的货物。顾客通过选择货物分配器来选择货物。如果货物分配器中有货物,而且顾客支付的货币值不小于该货物的价格,货物将被分配到货物传送孔送给顾客,并将适当的零钱返还到退币孔。如果分配器是空的,则和顾客支付的货币值相等的硬币将被送回到退币孔。如果顾客支付的货币值少于所选择的分配器中货物的价格,机器将等待顾客投进更多的货币。如果顾客决定不买所选择的货物,他投放进的货币将从退币孔中退出。
参考资料:《软件工程》 张海藩 清华大学出版社 2009年第一版
面向对象的分析
面向对象分析方法的核心思想是利用面向对象概念和方法为软件需求构造一组相关模型(对象模型,动态模型和功能模型),来获得关于问题域的全面认识。
这三个模型从不同的角度对系统进行描述,其中:对象模型描述了系统静态
的、结构化的数据性质;动态模型描述了系统顺势的、行为化的控制性质;功能模型描述了变化的系统的功能性质。这三个模型都涉及到数据。控制和操作等共同的概念,但每种模型描述的侧重有所不同。它们各自以不同侧面反应系统的实质内容,综合起来则全面反映了目标系统的需求。
对象模型是三个模型中最关键的。它的作用是描述系统的静态结构,包括构成系统的类和对象、它们的属性和操作以及它们之间的联系。UML中类图适用于建立对象模型,状态图适用于建立动态模型。每个类的动态行为用一张状态图来表示,各个类的状态图通过事件合并起来,构成系统的动态模型。也就是说,动态模型是基于事件共享而相互关联的一组状态图的集合。建立对象模型大体上按照下列顺序进行:寻找问题域内的对象,识别出对象间的关系、定义属性和服务。事实上,分析工作不可能严格按照预定顺序进行,系统的模型往往需要反复构造多遍才能建成。
注:对象硬币计算器和对象硬币检测器可以作为对象自动售货器的一部分,它们的属性作为自动售货器的属性。
建立动态模型
对于仅存数静态数据的系统来说,动态模型并没有什么实际意义。然而在开发交互式系统时,动态模型却起着很重要的作用。如果收集输入信息是目标系统的一项主要工作,则在开发这类应用系统时建立正确的动态模型是至关重要的。
建立动态模型的步骤: (1) 编写典型的对话脚本;
(2) 从脚本中提取出事件,联系该事件与其目标对象; (3) 组织事件的顺序和状态(采用状态图描绘);
(4) 比较各个不同对象的状态图,检查对象之间的一致性,确保事件之间的匹配。