在形式语言中,方法G是一个四元组G=(VN,Vr,P,Z),其中VN为(1)。若方法G的产生式集P为: (1)Z→Bc (2)Z→Zc (3)B→Ab (4)B→Bb (5)A→Aa (6)A→a 则文法G是(2)文法,识别G的自动机为(3)。对于G来说,(4)为文法G可接受的字符串,(5)为文法G不可接受的字符串。
(1)
A.状态标志符
B.开始符
C.语句集
D.非终结符集合
(2)
A.短语
B.上下文有关
C.上下文无关
D.正则
(3)
A.图灵机
B.下推自动机
C.有穷状态自动机
D.线性界限自动机
(4)
A.aaabc
B.acbb
C.acbcab
D.acbbca
(5)
A.abbcc
B.acbc
C.aaabc
D.aabbccc
自底向上的估计法的特点是(6)
(6)
A.简单、工作量小、误差大
B.精度高,但缺少子任务(模块)间的联系
C.估算较精确,但区分类比较困难
D.复杂、不可行,一般不采用此种方法,但这种副作用可以通过详细的设计文档加以控制
以下属于选择类排序法的是(7)
(7)
A.堆栈排序法
B.插入排序法
C.冒泡排序法
D.快速排序法
下列对关系的叙述中(8)不正确的
(8)
A.关系中的每个属性是不可分解的
B.在关系中元组的顺序是无关紧要的
C.任意的一个二维表都是一个关系
D.在关系中任意两个元组不能完全相同
对于“指针”和“链”,下面的说法正确的是,(9)
(9)
A.它们是数据物理组织的两种形式
B.它们是数据逻辑组织的两种形式
C.它们是数据物理组织的两种基本工具
D.它们是数据逻辑组织的两种基本工具
甲、乙同为生产锂电池的厂家。甲得知乙研制出改进锂电池质量的技术戾窍后,遂以不正当方式获取了该技术,并加以利用。甲厂侵害了乙厂的(10)
(10)
A.技术秘密权
B.专利权
C.专利申请权
D.经营信息权
参考答案:
1—5 D,D,C,A,B 形式语言首先于1956年由Chomsky进行描述。该理论讨论了语言与文法的数学理论,按照对文法规则的不同定义形式,对语言和文法进行了分类。一般来说,Chomsky文法是一个四元组G=(VN,Vr,P,Z),其中VN为非终结符集合,Vr为由终结符组成的字母表集合,P是穷非空的重写规则集合,Z是识别符号。文法G对应的语言是能从该文法的识别符号产生的那些终结符号串(句子)组成的集合。
简单来说,对于文法的分类分为4类:
O型文法也称短语结构文法可以由图灵机识别。
1型文法也乐上下文有关文法,可以由线性界限自动机识别。
2型文法也称上下文无关文法,可以由下谁自动机识别。
3型文法也称正则文法可以由有穷状态自动机识别。
具体的文法定义可以参照编译原理中的相关概念。
某种文法可以接受的句子经过简单推理即可。
6、B 自底向上的估计法:这种方法的主要思想是把待开发的软件细分,直到每一个子任务都已经明确所需要的开发工作量,然后把它们加起来,得到软件开发的总工作量。这是一种常见的估算方法。它的优点是估算各个部分的准确性高。缺点是缺少各项子任务之间相互间的联系。
7、A 排序是数据处理中经常使用的一种重要运算。包括插入排序,交换排序,选择排序,分配排序等。选择排序的基本方法是:每步从待排序的记录中选出排序码最小的记录,顺序入在已排序的记录序列的最后,直到全部排完。通常包括,直接选择排序,树形选择排序和堆栈选择排序。
8、C 本题考查关系的基本概念。通常来说,一组域的笛卡儿积可以表示为一个二维表。表中的行对应一个元组,表中的每列对应一个域。而关系则是笛卡儿积的子集,换而言之,关系必须是满足一定意义的二维表。关系通常来说要满足几条基本性质,其中,列也就是属性顺序无所谓,但是必须是不可以分解的,元组也就是行的顺序无所谓但不能完全相同,分是必须取原子值等等。
9、D “指针”和“链”是数据逻辑组织的两种基本工具。
10、A 由题可知甲厂侵害了乙雨季的技术秘密权
阅读以下关于软件工程管理方面的叙述,回答问题1和问题2
某大型企业集团的信息工程部有一百多名专职的软件工程师从事企业内外的软件开发与维护工作,该集团分布地域广阔,集团内采用了多种操作系统平台和多类开发环境。王总工程师在总结近三年来的软件开发工作时,发现有10%左右的软件开发项目未能完成而被迫取消;其余25%的项目中大多也不能完全实现预定的目标,特别是在软件测试环节出了很大问题。
王总工程师组织了信息工程啊内有关的管理人员和业务骨干,召开了三次小结与分析会议,在会能上能下集中讨论了软件包工程管理有关的问题,在归纳的意见中出现了以下的一些内容:
(1)软件开发已经逐渐成为一类工业化的生产过程,必须尽可能对其中的所有环节进行有效的管理与控制。
(2)软件工程管理与其它工程管理相比,主要的困难包括:软件产品的不可见性(难以把握开发进展与质量要求等)、软件开发过程的非标准化和许多软件项目开发的“一次性”(缺少可借鉴的经验)等。
(3)软件开发面对着进度、成本、功能和性能四方面的主要约束,即要求在预定的期限内,使用规定的有限资源,满足不断增长的软件功能与性能需求。从这个角度来看,必须强化软件工程的管理。
(4)Client/Server与Browser/Serve模式等已成为当前软件体系结构的主流。在日益复杂的分布式开发环境下,进行跨平台的团队开发,实现代码共享相当困难,软件工程管理在其中可以发挥其重大作用。
(5)从目前情况看,要注意软件维护可能带来的副作用,也就是没有找到隐含的错误,在以后的软件维护中一定要注意。
(6)跨平台复杂环境多重结构开发含有许多需要加以管理的对象类型,多样化的团体开发也应加强管理。
(7)为使得开发人员对软件产品的各个阶段工作都进行周密的思考,从而减少返工,所以测试计划的编制是很重要的。
(8)一个大中型的应用系统的开发可能包含有成百上千个软件模块以及数以百万计的代码行,任何一个编程人员不可能了解和追踪该应用系统所有的每一个片断,因此使软件代码具有可管理性和可审核性将是软件工程管理中的一项重要任务。
(9)要提高软件的使用效率,要实施软件复用。软件复用是指重复使用已有软件产品用于开发新的软件系统,以达到提高软件系统的开发质量与效率、降低开发成本的目的。软件复用的两个层次包括知识复用,方法和标准复用,软件复用的级别包括代码复用和分析结构的复用。
(10)我们的长远目标是需要建立一类软件开发管理体系,能有效地辅助软件开发全过程中对有关信息的收集和管理,这类体系应是可重复使用权用的并可适用于各类软件开发项目,使软件资源在软件的生命周期中保持完整。
(11)对外服务的软件开发机构应当努力取得ISO9000质量认证,并根据CMM9能力(成熟度模型)标准来改进自己的开发过程,在这些质量标准实现的过程中,软件工程管理起着得要的作用。
【问题1】
王总工程师指出在上述十一条意见中,有三条的提法是不够恰当的或者是不够全面的,请你指出其序号,并各用50字以内文字说明理由。
【问题2】
信息工程部与王总工程师在详细分析本集团的软件工程管理方面存在的各类问题时,发现在不少软件项目实施过程中,随着软件开发规模的增大、复杂程度的增加,以寻找软件中的错误为目的的测试工作就显得更加困难。软件测试这一环节较为薄弱,尤其是对软件测试问题认识上有些偏差。软件测试包括人工测试和机器测试两大部分。请你用250字以内文字以提纲方式说明,软件测试的一般步骤?(只需列出相应的名称并且简要说明即可)
参考答案:
【问题1】
(6)从目前情况看,要注意软件维护可能带来的副作用,软件维护带来的副作用是修改软件而造成的错误。
(7)为使开发人员对软件产品的各个阶段工作都进行周密的思考,从而减少返工,所以软件文档的编制是很重要的。
(9)软件复用有三个层次包括知识复用、方法和标准复用以及软件成分复用,软件复用的级别包括代码复用、分析结构和设计结果的复用。
【问题2】
软件测试的一般步骤是:
(1)测试人员要阅读有关资料,包括规格说明、设计文档、使用说明书及在设计过程中形成的测试大纲、测试内容及测试的通过准则,全面熟悉系统,编写测试计划,设计测试用例,作好测试前的准备工作。
(2)为了保证测试的质量,将测试过程分成几个阶段,即“代码审查、单元测试、集成测试和验收测试。代码会审是由一组人通过阅读、讨论和争论对程序进行静态分析的过程。单元测试集中在检查软件设计的最小单位—模块上,通过测试发现实现该模块的实际功能与定义该模块的功能说明不符合的情况,以及编码的错误。集成测试是将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口有关的问题。验收测试的目的是向未来的用户表明系统能够像预定要求那样工作。经过上述的测试过程对软件进行测试后,软件基本满足开发的要求,测试宣告结束,经验收后,将软件提交用户。