免费智能真题库 > 历年试卷 > 系统架构设计师 > 2021年下半年 系统架构设计师 下午试卷 论文
  第1题      
  知识点:   软件重用   功能性   软件系统   体系结构   维护

 
论面向方面的编程技术及其应用(AOP) 
面向过程编程是一种自顶向下的编程方法,其实质是对软件进行功能性分解。它适用于小型软件系统,例如某一算法的实现。在大型应用系统中,自顶向下逐步求精的方法无论在系统体系结构的确立,系统的进化和维护,以及软件重用性方面都存在其不足之处。
 
问题:1.1   请围绕“论面向方面的编程技术及其应用(AOP)”论题,依次从以下三个方面进行论述。
1、概要叙述你所参与管理或开发的软件项目,以及你在其中所承担的主要工作。
2、叙述在项目实践过程使用AOP技术开发的具体步骤。
3、结合项目,论述使用AOP的原因,开发过程中存在的问题及所使用技术带来的实际应用效果。
 
 
 

   知识点讲解    
   · 软件重用    · 功能性    · 软件系统    · 体系结构    · 维护
 
       软件重用
        可重用性(可复用性)是指系统和(或)其组成部分能在其他系统中重复使用的程度。软件开发的全生命周期都有可重用的价值,包括项目的组织、软件需求、设计、文档、实现、测试方法和测试用例,都是可以被重复利用和借鉴的有效资源。可重用性体现在软件的各个层次,通用的、可重用性高的软件模块往往已经由操作系统或开发工具提供,如通用库、标准组件和标准模板库等,它们并不需要程序员重新开发。
        软件重用(软件复用)是使用已有的软件产品(如设计、代码、文档等)来开发新的软件系统的过程。软件重用的形式大体可分为垂直式重用和水平式重用。水平式重用是重用不同应用领域中的软件元素,如数据结构、排序算法、人机界面构件等。标准函数库是一种典型的原始的水平式重用机制。垂直式重用是在一类具有较多公共性的应用领域之间重用软件构件。由于在两个截然不同的应用领域之间进行软件重用潜力不大,所以垂直式重用受到广泛关注。
        垂直式重用活动的主要关键点在于领域分析:根据应用领域的特征和相似性,预测软件构件的可重用性。一旦根据领域分析确认了软件构件的可重用价值,即可进行软件构件的开发,并对具有可重用价值的软件构件做一般化处理,使它们能够适应新的类似的应用领域。然后将软件构件和它们的文档存入可重用构件库,成为可供未来开发项目使用的可重用资源。
        软件重用的范围不仅涉及源程序代码,Caper Jones定义了10种可能重用的软件要素,分别是项目计划、成本估计、架构、需求模型和规格说明、设计、源程序代码、用户文档和技术文档、用户界面、数据结构和测试用例。
        有一个组织叫做基于面向对象技术的重用(Reuse Based on Object-Oriented Techniques,REBOOT)开发了支持重用的两种过程模型,分别是为重用开发和利用重用进行开发。该组织还开发了一系列工具,称为REBOOT环境。他们强调的一个原则是“未来重用者的需求,就是对可重用构件的信心”。开发者的倾向是抵制重用,因为他们缺乏这种信心。为了克服这种状态,REBOOT推荐一种文档结构,包括测试信息和重用者的经验。
        美国国防部的一项称为可适应、可靠性的软件技术(Software Technology for Adaptable,Reliable Softeware,STARS)关注过程、架构和重用三者的集成。STARS认为软件产品线开发的软件周期应该包括过程驱动、软件架构、领域工程、可重用构件库这4个概念。
        系统的软件重用由可重用的资产(构件)的开发、管理、支持和重用4个过程组成。工作在重用资产开发过程中的是构件开发者和领域工程师,工作在应用项目开发过程中的是应用工程师。如果要系统地实施软件重用,需要遵循以下原则:
        (1)需要高层领导的支持,并需要有长期的经费支持。
        (2)为了渐进地推行系统的重用,需要规划和调整系统的架构、开发过程、组织结构,并以小规模的先行项目为典型示范,而后再铺开。
        (3)为了重用,先规划架构及其逐步实施的过程。
        (4)过渡到明确的重用组织机构,将可重用构件的创建工作与重用工作分离开,并且提供明确的支持职能。
        (5)在真实的环境中,进行可重用构件的创建和改进工作。
        (6)要将应用系统和可重用构件作为一个经济核算的产品整体进行管理,应当注重公用构件在应用系统及其子系统领域中的高盈利作用。
        (7)要认识到单独的对象技术或者单独的构件技术都是不够的。
        (8)采用竞赛和更换负责人的办法,进行开发单位的文化建设和演化。
        (9)对基础设施、重用教育、技巧培训,要投资和持续地改进。
        (10)要采用度量方法测量重用过程,并要优化重用程序。
 
       功能性
        功能性是指当软件在指定条件下使用时,软件产品满足明确和隐含要求功能的能力。
               适合性
               适合性是指软件产品为指定的任务和用户目标提供一组合适的功能的能力。
               准确性
               准确性是指软件产品具有所需精确度的正确或相符的结果及效果的能力。
               互操作性
               互操作性是指软件产品与一个或更多的规定系统进行交互的能力。
               保密安全
               保密安全是指软件产品保护信息和数据的能力,以使未授权的人员或系统不能阅读或修改这些信息和数据,但不拒绝授权人员或系统对它们的访问。
               功能性依从性
               功能性依从性是指软件产品依附于同功能性相关的标准、约定或法规以及类似规定的能力。
 
       软件系统
        网络系统软件包括网络操作系统和网络协议等。网络操作系统是指能够控制和管理网络资源的软件,是由多个系统软件组成,在基本系统上有多种配置和选项可供选择,使得用户可根据不同的需要和设备构成最佳组合的互联网络操作系统。网络协议是保证网络中两台设备之间正确传送数据的约定。
 
       体系结构
        RPR的体系结构如下图所示。RPR采用了双环结构,由内层的环1和外层的环0组成,每个环都是单方向传送。相邻工作站之间的跨距包含传送方向相反的两条链路。RPR支持多达255个工作站,最大环周长为2000km。
        
        RPR体系结构
 
       维护
        维护阶段是软件生存期中时间最长的阶段。软件一旦交付正式投入运行后便进入软件维护阶段。该阶段的关键任务是通过各种必要的维护活动使系统持久地满足用户的需要。每一项维护活动都应该准确地记录下来,作为正式的文档资料加以保存。
   题号导航      2021年下半年 系统架构设计师 下午试卷 论文   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
 
第1题    在手机中做本题