免费智能真题库 > 历年试卷 > 软件设计师 > 2022年下半年 软件设计师 上午试卷 综合知识
  第30题      
  知识点:   软件工程基本原理   C/S结构
  关键词:   C/S        章/节:   软件工程基础知识       

 
以下关于三层C/S结构的叙述中,不正确的是()。
 
 
  A.  允许合理划分三层结构的功能,使之在逻辑上保持相对独立性,提高系统的可维护性和可扩展性
 
  B.  允许更灵活有效地选用相应的软硬件平台和系统
 
  C.  应用的各层可以并行开发,但需要相同的开发语言
 
  D.  利用功能层有效地隔离表示层和数据层,便于严格的安全管理
 
 
 

 
  第31题    2017年下半年  
   33%
配置管理贯穿软件开发的整个过程。以下内容中,不属于配置管理的是( )。
  第30题    2014年上半年  
   38%
某公司要开发一个软件产品,产品的某些需求是明确的,而某些需求则需要进一步细化。由于市场竞争的压力,产品需要尽快上市,则开..
  第24题    2021年上半年  
   25%
以下关于文档的叙述中,不正确的是( )。
   知识点讲解    
   · 软件工程基本原理    · C/S结构
 
       软件工程基本原理
        美国著名的软件工程专家B.W.Boehm于1983年提出了软件工程的7条基本原理。Boehm认为这7条原理是确保软件产品质量和开发效率的原理的最小集合。
               用分阶段的生命周期计划严格管理
               有统计表明,50070以上的失败项目是由于计划不周造成的。在软件开发与维护的漫长生命周期中,需要完成许多各种各样的工作。这条基本原理意味着应该把软件生命周期划分成若干个阶段,并相应地制订出切实可行的计划,然后严格按照计划对软件的开发与维护工作进行管理。Boehm认为,在软件的整个生存周期中应该制定并严格执行六类计划:项目概要计划、里程碑计划、项目控制计划、产品控制计划、验证计划和运行维护计划。
               坚持进行阶段评审
               据统计结果显示,大部分错误是在编码之前造成的。根据Boehm等人的统计,设计错误占软件错误的63070,编码错误仅占37%,而且错误发现与改正得越晚,所需付出的代价越高。因此,在每个阶段都应进行严格的评审,以便尽早发现在软件开发过程中所犯的错误。
               实现严格的产品控制在软件开发过程中不应随意改变需求,因为改变一项需求需要付出较高的代价
               但是,在软件开发过程中改变需求又是难免的,由于外部环境的变化,相应地改变用户需求是一种客观需要,这就要采用科学的产品控制技术来顺应这种要求。在改变需求时,为了保持软件各个配置成分的一致性,必须实行严格的产品控制,其中主要是实行基准配置管理。基准配置又称为基线配置,它是经过阶段评审后的软件配置成分(各个阶段产生的文档或程序代码)。基准配置管理也称为变动控制,一切有关修改软件的建议,特别是涉及基准配置的修改建议,都必须按照严格的规程进行评审,在获得批准以后才能实施修改。
               采用现代程序设计技术
               从20世纪60年代和70年代的结构化软件开发技术到面向对象技术,从第一代、第二代语言到第四代语言,人们已经充分认识到:方法大于力气。采用先进的技术既可以提高软件开发的效率,又可以降低软件维护的成本。
               结果应能清楚地审查
               软件是一种看不见、摸不着的逻辑产品。软件开发小组的工作进展情况可见性差,难以评价和管理。为了更好地进行管理,应根据软件开发的总目标及完成期限尽量明确地规定开发小组的责任和产品标准,从而使所得到的结果能够清楚地审查。
               开发小组的人员应少而精
               开发人员的素质和数量是影响软件质量和开发效率的重要因素,应该少而精。这一条基于两点原因:高素质开发人员的效率比低素质开发人员的效率要高几倍到几十倍,开发工作中犯的错误也要少得多;当开发小组为N人时,可能的通信信道为N(N-I)/2。可见,随着人数N的增大,通信开销将急剧增大。
               承认不断改进软件工程实践的必要性
               遵循上述6条基本原理,就能够按照当代软件工程基本原理实现软件的工程化生产。但是它们只是对现有经验的总结和归纳,并不能保证软件开发与维护的过程能赶上时代前进的步伐,能跟上技术的不断进步。因此,Boehm提出应把"承认不断改进软件工程实践的必要性"作为软件工程的第7条原理。根据这条原理,用户不仅要积极采纳新的软件开发技术,还要注意不断总结经验,收集进度和消耗等数据,进行出错类型和问题报告统计。这些数据既可以用来评估新的软件技术的效果,也可以用来指明必须着重注意的问题和应该优先进行研究的工具和技术。
 
       C/S结构
        C/S结构即Client/Server(客户机/服务器)结构,如下图所示。C/S结构是大家熟知的软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端,降低了系统的通信开销,但需要安装客户端才能够进行管理操作。
        
        C/S结构
        在网络连接模式中,除对等网外,还有另一种形式的网络,即客户机/服务器网络。在客户机/服务器网络中,服务器是网络的核心,而客户机是网络的基础,客户机依靠服务器获得所需要的网络资源,而服务器为客户机提供网络必需的资源。客户机和服务器常常分别处在相距很远的两台计算机上,客户机程序的任务是将用户的要求提交给服务器程序,再将服务器程序返回的结果以特定的形式显示给用户。服务器程序的任务是接收客户程序提出的服务请求并进行相应的处理,再将结果返回给客户程序。
        C/S结构的缺点是维护成本高昂且投资大。首先,采用C/S结构要选择适当的数据库平台以实现数据库数据的真正统一,使分布于两地的数据同步,完全交由数据库系统管理,但逻辑上两地的操作者需要直接访问同一个数据库才能有效实现,这样就产生了一些问题,如果需要建立“实时”的数据同步,就必须在两地之间建立实时的通信连接,以保持两地的数据库服务器在线运行,网络管理人员既要对服务器进行维护和管理,又要对客户端进行维护和管理,这样做需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大;其次,传统的C/S结构的软件需要针对不同的操作系统开发不同版本的软件,由于产品的更新换代十分快,高代价和低效率已经不适应工作需要。
   题号导航      2022年下半年 软件设计师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第30题    在手机中做本题