论中间件技术在软件开发中的作用 随着软件应用越来越复杂,软件开发"一切从零开始"的开发模式也越来越不能满足应用的要求。一些著名的软件公司推出自己的中间件产品,如通信中间件、数据库中间件等为软件开发提供有力的支持。 请围绕"中间件技术在软件开发中的作用"这个论题,依次从以下3个方面进行论述: ①概要叙述你参与分析和开发的应用项目,以及你所担任的主要工作。 ②具体讨论你在软件开发过程中选取中间件的原则和标准,结合实例详细叙述中间件技术在你的软件开发中的作用。 ③假如你在一个软件公司中能够起到影响公司决策的作

题目

论中间件技术在软件开发中的作用 随着软件应用越来越复杂,软件开发"一切从零开始"的开发模式也越来越不能满足应用的要求。一些著名的软件公司推出自己的中间件产品,如通信中间件、数据库中间件等为软件开发提供有力的支持。 请围绕"中间件技术在软件开发中的作用"这个论题,依次从以下3个方面进行论述: ①概要叙述你参与分析和开发的应用项目,以及你所担任的主要工作。 ②具体讨论你在软件开发过程中选取中间件的原则和标准,结合实例详细叙述中间件技术在你的软件开发中的作用。 ③假如你在一个软件公司中能够起到影响公司决策的作用,请你结合市场和技术因素,为你的公司设计一个有自主版权的中间件的方案,并评价你的方案。


相似考题
更多“论中间件技术在软件开发中的作用 随着软件应用越来越复杂,软件开发"一切从零开始"的开发模式也越来越不能满足应用的要求。一些著名的软件公司推出自己的中间件产品,如通信中间件、数据库中间件等为软件开发提供有力的支持。 请围绕"中间件技术在软件开发中的作用"这个论题,依次从以下3个方面进行论述: ①概要叙述你参与分析和开发的应用项目,以及你所担任的主要工作。 ②具体讨论你在软件开发过程中选取中间件的原则和标准,结合实例详细叙述中间件技术在你的软件开发中的作用。 ③假如你在一个软件公司中能够起到影响公司决策的作用”相关问题
  • 第1题:

    以下关于软件中间件的叙述中,错误的是()

    A.中间件通过标准接口实现与应用程序的关联,提供特定功能的服务

    B.使用中间件可以提高应用软件可移植性

    C.使用中间件将增加应用软件设计的复杂度

    D.使用中间件有助于提高开发效率


    参考答案:C

    中间件是一类较为特殊的构件。中间件工作于操作系统与应用程序之间,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件有以下几种类型:
    (1)远程过程调用:它是一种广泛使用的分布式应用程序处理方法。应用程序使用RPC来远程执行一个位于不同地址空间里的过程,并且从效果上看和执行本地调用相同。要注意的是,这里的“远程”既可以指不同的计算机,也可以指同一台计算机上的不同进程。一个RPC应用可分为两个部分,分别是服务器和客户。这里的“服务器”和“客户”是指逻辑上的进程,而不是指物理计算机。
    (2)面向消息的中间件:利用高效可靠的消息传递机制进行平台无关的数据交换,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型,它可在分布式环境下扩展进程间的通信,并支持多种通信协议、语言、应用程序、硬件和软件平台。例如,IBM的MQSeries、BEA的MessageQ等都属于面向消息的中间件产品。
    (3)事务处理监控器:也称为交易中间件,是当前应用最广泛的中间件之一。它能支持数以万计的客户进程对服务器的并发访问,使系统具有极强的扩展性,因此,适于电信、金融、证券等拥有大量客户的领域。在对效率、可靠性要求严格的关键任务系统中具有明显优势。TPM一般支持负载均衡,支持分布式两阶段提交,保证事务完整性和数据完整性,并具有安全认证和故障恢复等功能,能很好地满足应用开发的要求。
    (4)数据库访问中间件:通过一个抽象层访问数据库的技术,从而允许使用相同或相似的代码访问不同的数据库资源。例如常见的ODBC与JDBC就属于数据库访问中间件。
    通过引入中间件技术,可以使应用软件可移植性提高、开发效率提高,同时由于一些复杂的应用程序之间的通信可由中间件完成,所以还降低了应用软件设计的复杂性。所以C选项的描述不正确。

  • 第2题:

    ()论软件开发模型的选择与应用 传统的软件开发模型有瀑布模型,螺旋模型、演化模型等,随着软件技术的迅速发展和市场的变化,新的软件开发模型也不断出现,如XP模型、敏捷模型和RUP模型等。这些开发模型都有各自的优缺点,在实际应用中存在着许多不足和局限。 请围绕“软件开发模型的选择与应用”论题,依次对以下三个方面进行论述。 1.概要叙述你参与分析和开发的应用项目以及你所担任的主要工作。 2.具体叙述你在参与开发的软件中选用软件开发模型的原则,具体是如何使用所选择的开发模型的? 3.简要叙述软件开发模型的近期演变趋势与主要特征,你准备如何去适应这类演变?


    正确答案:略
      解答要点
      (1)首先用400-500字的篇幅简要叙述作者参与分析和开发的信息系统项目的概要和所担任的工作。
      (2)具体叙述你在参与开发的软件中选用软件开发模型的原则。例如适应需求的变化、灵活性等。
      (3)具体是如何使用所选择的开发模型的,即根据选择模型进行开发的过程是怎样的。
      (4)简要叙述软件开发模型的近期演变趋势与主要特征,你准备如何去适应这类演变。

  • 第3题:

    论多层分布式结构系统的开发

    传统的应用系统模式是“主机/终端”或“客户机朋艮务器”。随着中间件技术和Web技术的发展,这些传统模式已经不能适应新的环境。目前设计大型系统大多采用多层分布式结构,如C/A/S和B/A/S,应根据系统具体需求和运行环境的不同选择合适的结构。

    请围绕“多层分布式结构系统的开发”论题,依次从以下三个方面进行论述。

    (1)概要叙述你参与分析设计的多层分布式结构系统以及你所担任的主要工作。

    (2)简要说明多层分布式结构分类的依据以及多层分布式结构的特点,并指出你参与分析设计的系统属于其中的哪种结构,以及选择这种结构的原因。

    (3)具体论述你在开发该系统时采用了哪些方法、策略与工具来实现所选的结构。


    正确答案:[写作要点] 一、简要介绍你所参与分析设计的多层分布式结构系统(说明该系统采用的是C/A/S还是B/A/S)以及你在系统中担任的主要工作。 二、说明多层分布式结构分类的依据。 从概念上说任何信息系统应用都可以映射到以下5层: .表现层 是实际的用户界面; .表现逻辑层 为了生成表现层而必须进行的处理; .应用逻辑层 包括支持实际业务应用和规则所需的所有逻辑和处理; .数据处理层 包括用来存储和访问往来于数据库的数据所需的所有命令和逻辑; .数据层:数据库中实际存储的数据。 C/A/S 结构是将数据层和数据处理层放置在各自的服务器上应用逻辑层放置在各自的服务器上表现逻辑层和表现层放置在客户端上这也称为三层或多层客户/服务器计算。 在B/A/S 结构中表现层和表现逻辑层在客户端Web 浏览器中使用从某个Web 服务器下载的内容实现表现逻辑层连接到运行在应用服务器上的应用逻辑层应用逻辑层最终连接到后台的数据库服务器。 三、多层分布式结构系统的主要特点。 .安全性:中间层隔离了客户对数据服务器的访问保护了数据库的安全。 .稳定性。 .易维护性:由于业务逻辑位于单独的一层当业务规则发生变化后客户端程序基本不作改动。 .快速响应:通过负载均衡以及中间层缓存数据能力可以提高对客户端的响应速度。 .系统扩展灵活:基于多层分布式结构当业务增大时可以在中间层部署更多的应用服务器提高对客户端的响应而所有变化对客户端透明。 四、多层分布式结构系统的开发主要考虑三方面的技术。 .开发环境:开发人员需要厂种创建新组件、并将已有组件加以集成的开发环境。 .应用程序的集成。 .应用程序的配置:分布式结构的开发需要配置平台的支持以便在用户剧增时能有效地扩展并保持系统的稳定。 .选择合适的中间件。
    [写作要点] 一、简要介绍你所参与分析设计的多层分布式结构系统(说明该系统采用的是C/A/S还是B/A/S)以及你在系统中担任的主要工作。 二、说明多层分布式结构分类的依据。 从概念上说,任何信息系统应用都可以映射到以下5层: .表现层 是实际的用户界面; .表现逻辑层 为了生成表现层而必须进行的处理; .应用逻辑层 包括支持实际业务应用和规则所需的所有逻辑和处理; .数据处理层 包括用来存储和访问往来于数据库的数据所需的所有命令和逻辑; .数据层:数据库中实际存储的数据。 C/A/S 结构是将数据层和数据处理层放置在各自的服务器上,应用逻辑层放置在各自的服务器上,表现逻辑层和表现层放置在客户端上,这也称为三层或多层客户/服务器计算。 在B/A/S 结构中,表现层和表现逻辑层在客户端Web 浏览器中使用从某个Web 服务器下载的内容实现,表现逻辑层连接到运行在应用服务器上的应用逻辑层,应用逻辑层最终连接到后台的数据库服务器。 三、多层分布式结构系统的主要特点。 .安全性:中间层隔离了客户对数据服务器的访问,保护了数据库的安全。 .稳定性。 .易维护性:由于业务逻辑位于单独的一层,当业务规则发生变化后,客户端程序基本不作改动。 .快速响应:通过负载均衡以及中间层缓存数据能力,可以提高对客户端的响应速度。 .系统扩展灵活:基于多层分布式结构,当业务增大时,可以在中间层部署更多的应用服务器,提高对客户端的响应,而所有变化对客户端透明。 四、多层分布式结构系统的开发主要考虑三方面的技术。 .开发环境:开发人员需要厂种创建新组件、并将已有组件加以集成的开发环境。 .应用程序的集成。 .应用程序的配置:分布式结构的开发需要配置平台的支持,以便在用户剧增时能有效地扩展,并保持系统的稳定。 .选择合适的中间件。

  • 第4题:

    计算机技术迅速发展,特别是Internet 及WWW的出现,使计算机的应用范围更为广阔,许多应用程序需在网络环境的异构平台上运行。这一切都对新一代的软件开发提出了新的需求。在这种分布异构环境中,通常存在多种硬件系统平台(如PC,工作站,小型机等),在这些硬件平台上又存在各种各样的系统软件(如不同的操作系统、数据库、语言编译器等),以及多种风格各异的用户界面,为解决分布异构问题,提出了中间件(middleware)的概念。中间件是位于平台(硬件和操作系统)和应用之间的通用服务,这些服务具有标准的程序接口和协议。针对不同的操作系统和硬件平台,它们可以有符合接口和协议规范的多种实现。请根据你实际参与开发的经验,论述下列三个问题:

    概要叙述你参与分析和开发的关于中间件方面的软件项目以及你所担任的主要工作。


    正确答案:

  • 第5题:

    论软件设计模式及其应用 软件设计模式(Software Design Pattern)是一套被反复使用的、多数人知晓的、经过分类编目的代码设计经验的总结。使用设计模式是为了重用代码以提高编码效率、增加代码的可理解性、保证代码的可靠性。软件设计模式是软件开发中的最佳实践之一,它经常被软件开发人员在面向对象软件开发过程中所采用。项目中合理地运用设计模式可以完美地解决很多问题,每种模式在实际应用中都有相应的原型与之相对,每种模式都描述了一个在软件开发中不断重复发生的问题,以及对应该原型问题的核心解决方案。

    请围绕“论软件设计模式及其应用”论题,依次从以下三个方面进行论述。 1.概要叙述你参与分析和开发的软件系统,以及你在项目中所担任的主要工作。 2.说明常用的软件设计模式有哪几类?阐述每种类型特点及其所包含的设计模式。 3.详细说明你所参与的软件系统开发项目中,采用了哪些软件设计模式,具体实施效果如何。


    正确答案:本题为模拟题原题,具体写作要求为:
    一、首先用400-600字的篇幅简要叙述作者参与开发的软件系统的概要和所担任的工作。
    二、设计模式的基本分类:
    · 创建型模式。创建型模式抽象了实例化过程,它们帮助一个系统独立于创建、组合和表示它的那些对象。创建型模式包括工厂方法、抽象工厂、生成器、原型、单例模式等。
    · 结构型模式。结构型模式涉及到如何组合类和对象以获得更大的结构。结构型模式包括适配器、桥接、组成、装饰、外观、享元、代理等。
    · 行为模式。行为模式涉及到算法和对象间职责的分配。行为模式不仅描述对象或类的模式,还描述了它们之间的通信模式。常用的行为模式有观察者、策略等。
    三、你在项目中运用了何种设计模式以及如何用此模式进行分析与设计。要紧密结合主题项目,选择1-2种设计模式进行讨论就可以了。

  • 第6题:

    试题一论模型驱动的软件开发方法及其应用

    模型驱动架构( MDA)是对象管理组织(OMG)提出的一种新的软件开发方法,它强调由软件系统的建模行为驱动整个系统的开发过程,来完成系统的需求分析、架构设计、构建、测试、部署和运行维护等工作。与传统的UML模型相比,MDA能够创建出机器可读和高度抽象的模型,这种模型通过转换( Transformation)技术可自动转换为代码、测试脚本、数据库定义以及各种平台的部署描述。通过使用MDA技术,可以有效解决传统软件开发过程中的生产效率问题、系统移植问题、互操作问题以及文档和系统后期维护问题。

    请围绕“模型驱动的软件开发方法及其应用”论题,依次从以下三个方面进行论述。

    1.概要叙述你参与实施的模型驱动的软件开发项目以及你所担任的主要工作。

    2.阐述模型驱动的软件开发过程中的主要活动,并论述模型驱动的软件开发过程

    与传统的软件开发过程的区别。

    3.阐述在进行模型驱动的软件开发时遇到了哪些问题,如何解决。


    正确答案:

    写作要点:
    一、论文中要具体介绍组织的业务背景、组织结构、软件系统的架构、采用的技术
    等内容和担任的实际工作。
    二、相关的内容包括:
    1.模型驱动的软件开发过程中的主要活动包括:
    (1)需求分析人员根据领域需求得到描述软件系统外部特征的计算无关模型(CIM);
    (2)在对CIM进行分析的基础上得到平台无关模型(PIM),并根据业务逻辑进一步精化PIM;
    (3)进行PIM到平台特定模型(PSM)的模型转换;
    (4)将每个PSM转换为实现特定模型(ISM),生成应用程序代码,并进行测试。
    2.与传统的软件开发过程相比,模型驱动的软件开发方法有5个主要区别。
    (1)自动实现模型变换。
    传统的开发过程中,模型到模型的变换,或模型到代码的变换都是手工完成的;而模型驱动的开发过程中,模型变换都是由相关工具自动完成的,PIM到PSM、PSM到
    ISM都可以自动转换实现。
    (2) 模型是开发产品,也是程序生成的基础设施。
    模型驱动的开发过程中,模型是软件开发生命周期中的核心产品,通过一系列转换
    最终可以自动生成执行代码,是产生执行代码的基础设施。而在传统开发过程中模型只是分析人员、设计人员进行分析与交流的文档与图标,不能生成可用的应用程序代码。
    (3)模型变换过程与代码生成过程同步,可维护性强。
    模型驱动开发过程中,执行代码是由模型通过转换直接生成的,保证了模型与代码的同步。开发人员维护系统的重心不在是传统开发方法中的程序代码,而是与业务逻辑
    相关、与技术平台无关的平台无关模型PIM。
    (4)业务逻辑模型与实现技术平台分离。
    需求分析阶段生成的PIM模型与开发技术、开发平台以及实现技术无关,并且PIM模型可以根据不同的技术平台,自动生成以模型为基础的、适用于不同技术平台的软件系统。
    (5)提高了开发效率与软件质量。
    模型驱动开发的模型架构代表了对系统不同层次的抽象,使得开发人员更加清晰地了解系统的整个架构,而不会被具体的实现技术所困扰。开发人员专注于根据系统业务
    逻辑构建PIM,通过代码生成技术自动生成实现代码,减少了由于人为因素导致的系统实现错误。
    三、在进行模型驱动的软件开发时可能存在的问题包括:如何对CIM和PIM进行建模;如何进行模型之间的转换,特别是PIM到PSM的转换;如何根据需求进行实现
    平台选择;如何根据PSM生成ISM(代码);如何进行系统测试;等等。

     

  • 第7题:

    论软件开发模型及应用

    软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。软件开发过程包括需求、设计、编码和测试等阶段,有时也包括维护阶段。软件开发模型能清晰、直观地表达软件开发全过程,明确规定了要完成的主要任务和活动,用来作为软件项目工作的基础。对于不同的软件项目,针对应用需求、项目复杂程度、规模等不同要求,可以采用不同的开发模型,并采用相应的人员组织策略、管理方法、工具和环境。

    请围绕“软件开发模型及应用”论题,依次从以下三个方面进行论述。

    1.简要叙述你参与的软件开发项目以及你所承担的主要工作。

    2.列举出几种典型的软件开发模型,并概要论述每种软件开发模型的主要思想和技术特点。

    3.根据你所参与的项目中使用的软件开发模型,具体阐述使用方法和实施效果。


    答案:
    解析:
    瀑布模型:严格遵循软件生命周期各阶段的固定顺序,一个阶段完成再进入另一个阶段。其优点是可以使过程比较规范化,有利于评审;缺点在于过于理想,缺乏灵活性,容易产生需求偏差。

    快速原型模型:对于许多需求不够明确的项目,比较适合采用该模型。它采用了一种动态定义需求的方法,通过快速地建立一个能够反映用户主要需求的软件原型,让用户在计算机上使用它,了解其概要,再根据反馈的结果进行修改,因此能够充分体现用户的参与和决策。

    演化模型:也是一种原型化开发,但与快速原型不同的是,快速原型模型在获得真实需求时,就将抛弃原型。而演化模型则不然,它将从初始的模型中逐渐演化为最终软件产品,是一种渐进式原型法。

    增量模型:它采用的是一种递增式模型,它将软件产品划分成为一系列的增量构件,分别进行设计、编码、集成和测试。

    螺旋模型:结合了瀑布模型和演化模型的优点,最主要的特点在于加入了风险分析。它是由制定计划、风险分析、实施工程、客户评估这一循环组成的,它最初从概念项目开始第一个螺旋。

    喷泉模型:主要用于描述面向对象的开发过程,最核心的特点是迭代。所有的开发活动没有明显的边界,允许各种开发活动交叉进行。

    统一过程(UP):统一过程是一个通用过程框架,可以用于种类广泛的软件系统、不同的应用领域、不同的组织类型、不同的性能水平和不同的项目规模。UP是基于构件的,在为软件系统建模时,UP使用的是UML。与其他软件过程相比,UP具有三个显著的特点,即用例驱动、以架构为中心、迭代和增量。

    敏捷方法:敏捷方法是一种以人为核心、迭代、循序渐进的开发方法。在敏捷方法中,软件项目的构建被切分成多个子项目,各个子项目成果都经过测试,具备集成和可运行的特征。在敏捷方法中,从开发者的角度来看,主要的关注点有短平快的会议、小版本发布、较少的文档、合作为重、 客户直接参与、自动化测试、适应性计划调整和结对编程;从管理者的角度来看,主要的关注点有测试驱动开发、持续集成和重构。

  • 第8题:

    以下关于软件中间件的叙述,错误的是()。

    A.. 中间件通过标准接口实现与应用程序的关联,提供特定功能的服务
    B. 使用中间件可以提高应用软件可移植性
    C. 使用中间件有助于提高开发效率
    D. 中间件位于客户机服务器的操作系统之下,应用程序之上。管理计算资源和网络通信。

    答案:D
    解析:
    中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,应用程序之下。管理计算资源和网络通信。

  • 第9题:

    ()是在计算机硬件和操作系统之上,支持应用软件开发和运行的系统软件。

    • A、组件
    • B、控件
    • C、插件
    • D、中间件

    正确答案:D

  • 第10题:

    论文:试题论软件开发平台的选择与应用。随着软件技术的迅速发展,基于互联网的企业应用要求软件平台具有开放性、分布性和平台无关性,于是就相继出现了很多技术,但这些技术都不是十全十美的,在实际应用中存在着许多不足和局限。请围绕“软件开发平台的选择与应用”论题,依次对以下3个方面进行论述。 (1)概要叙述你参与分析和开发的应用项目以及你所担任的主要工作。 (2)具体叙述你在参与开发的软件中选用软件开发平台的原则,特别是为了保持系统的开放性和先进性,采取过什么措施?其效果如何? (3)简要叙述软件开发平台的近期演变趋势与主要特征,你准备如何去适应这类演变?


    正确答案: 我校教务管理系统是在根据我校原来的教务管理系统不再适应现在发展的要求而立项开发的。目的是为教务工作有关部门提供优质、高效的业务管理和事务处理,建立完备、可靠和开放性的教务管理系统。
    我有幸参加了新的教务管理系统的开发,担任项目管理、系统分析与设计等工作。本文结合工作的实际经历,简要讨论了软件开发平台的选择与应用。在软件开发平台的选择与应用过程中,我们本着平台的开放性、分布性和平台无关性的原则,根据我校的具体情况,通过对目前两种主流平台:J2EE和.NET的比较分析,和体系结构、应用平台的无缝集成、开发成本及易开发性的思考与研究,选择了.NET作为开发平台。使用Microsoft全新的集成开发环境VisualStudio.NET,采用ASP.NET、WebService、ADO.NET和XML等技术进行系统开发。
    随着我校规模的不断扩大,计算机科学技术的进步,我校原来的教务管理系统已不适应现在发展的要求。以前单机版的VFP教务管理软件,被分散地安装于全校的14个系部和教务处,各系部之间、系部与教务处之间信息不能共享,而且对教学计划、教学考核等功能不完善或根本不支持。教务处是学校主管教育教学工作的职能部门,也是学校领导在教学业务方面的参谋机构。教务工作直接影响学校教育教学改革和教育教学质量。因此,学校决定由教务处立项重新规划建设教务管理系统。整个系统包括教学计划子系统,教学资源子系统,网上选课子系统,智能排课子系统,教学考核子系统,学生学籍子系统,学生成绩子系统,教学实践子系统,教材管理子系统等。
    我有幸参加了新的教务管理系统的开发,担任项目管理、系统分析与设计等工作。
    由于我校分南北两个校区,教务处和14个系部分布较散,另外随着'Internet的迅速发展,部分信息需要通过网络向全校师生及外部用户发布,例如网上选课信息、学生基本信息及成绩等。基于传统的C/S模式体系可维护性和发布性差等原因难以满足新系统的要求,有效地采用基于B/S体系的Web应用能很好地解决这方面的问题。
    基于互联网的应用要求软件平台具有开放性、分布性和平台无关性。从而相继出现了RPC、COM和CORBA等技术,但这些技术在实际应用中存在着许多不足和局限。它们的特定协议难以通过防火墙,因而不适应于Web上的应用开发。为了进一步开发基于Web的应用,出现了Sun公司的J2EE和Microsoft公司的.NET两种主流的软件开发平台。
    在J2EE和.NET两者之间进行选择时,我们曾举棋不定。随着面向对象技术的兴起,Java语言应用的迅速发展,以Java为程序设计语言的J2EE具有平台无关性。同时J2EE已成为Web应用开发的标准平台。以及它的相关技术EJB、JSP、JavaServlet等的迅速发展,J2EE平台已成为Java技术企业级应用的理想平台。但我校原有的大部分操作系统、数据库和Web服务器都是采用Microsoft的系列产品,并且在Microsoft系列产品的使用和开发方面积累了较丰富的经验。.NET支持多种程序设计语言如:C++.NET、VB.NET、ASP.NET、C#等,实现了语言互用性。而J2EE只能使用Java,这是J2EE所不及的。并且VisualStudio.NET使得.NET的开发较J2EE的易用性好。
    在最后具体的软件开发平台与应用的技术方案选择时,我们采用了.NET开发平台。其原因主要基于对开发平台选择原则如下的认真思考和研究。1.体系结构方面的考虑随着Internet的迅速发展,传统的C/S结构已显示出了它在异构的、分布式的网络环境中的不足。可维护性和可安装性差、并且不利系统扩展。从而新的体系结构B/S模式迅速发展了起来。B/S模式有利于系统的扩展性、维护性。
    在校园网发展逐步完善的今天,考虑到教务管理系统安装、维护的方便和部分信息的向外发布,以及传统的C/S模式技术的成熟性。我们采用了C/S和B/S相结合的模式。.NET开发平台正是为进一步开发基于Web的应用而出现的,是一组用于建立Web服务器应用程序和Windows桌面应用程序的软件组件。.NET支持多种编程语言,使各种语言可以自由地在整个.NET平台内互用,很好的发挥各种语言的特性。例如:我们对C/S结构程序使用执行效率高的VC++.NET和快速开发的VB.NET,B/S结构程序使用.NET专门为Web应用定制的ASP.NET和C#。再加上功能强大的VisualStudio.NET集成开发环境,.NET为C/S和B/S相结合的模式提供了很好的解决方案。基于此原因,我们把系统的教学计划子系统、智能排课子系统、教学考核子系统、教学实践子系统、教材管理子系统等设计为C/S结构、网上选课子系统、学生学籍子系统、学生成绩子系统、教学资源子系统等设计为B/S结构。2.应用平台的无缝集成性
    由于我校使用的操作系统都是Microsoft的Windows系列,同时.NET是与Windows操作系统紧密捆绑在一起,使得.NET在Windows上的应用开发更为容易。并且以前的数据库是VFP的。考虑到数据的平稳过渡以及我们对数据库的熟悉程度,再加上.NET.提供的ADO.NET数据访问组件是对ADO的改进,ADO.NET分为3组,分别是ODBC、OleDB和SqlClient。其中SqlClient是专门为SQLServer设计的,性能明显优于其他的数据访问组件。我们在新系统的后台数据库服务器的选择上采用了MicrosoftSQLServer2000。
    选择Microsoft的操作系统Windows,数据库服务器SQLServer2000和开发平台.NET应用平台,充分利用无缝集成平台的优势,使.NET应用开发更容易,运行更可靠、更安全。这是J2EE所不及的。3.节约开发成本由于我校在以前的信息化建设过程中培养了一批经验较丰富的C++、VB、ASP等开发人员,熟悉Windows上的开发,同时在数据库管理系统MicrosoftSQLServer上的设计与开发方面有一定的经验。而在Java开发方面的经验相对不足。如果我们选择J2EE则意味着开发人员资源的浪费,并且要重新培养Java开发人员,并且新培养的开发人员由于缺乏经验,很难保证开发效率和质量。选择.NET,则我们的开发人员便能轻松的转变到C++.NET、VB.NET、ASP.NET及C#的开发当中来。再加上以前在Windows上的开发经验,最终有利于我们的开发速度加快,质量提高,从而很好地节约了开发成本。4.易开发性就.NET开发平台的容易使用性来看,在如下几点得到了很好的体现。
    (1).NET的重要部件ASP.NET使Web应用程序的开发和部署更为容易。.NET相对较新,它拥有Java所缺乏的改进,例如,ASP.NET使开发者可以用比Java开发者在J2EE平台上更少的代码来实现WebServices。在教务管理系统中,我们对学生成绩查询、学生网上选课和教学资源调配等交互较多的逻辑模块,都设计成Webservice结构的中间组件。轻松地节省了花在用户界面编程上的开发时间、同时Webservice完全可以在应用程序集成等场合下被重用。
    (2)ADO.NET数据访问组件较以前的ADO更方便的访问各种类型的关系数据库和非关系数据库,获取本地和远程数据源,并对XML提供了强大的支持。这对以后的后台数据库的扩展也提供了很好的支持。
    (3)VisualStudio.NET为.NET提供了一个统一的集成开发环境及工具,大大提高了开发者的效率;集成了多种语言支持:简化了服务器端的开发;提供了高效地创建和使用网络服务的方法等。
    通过对上述4个主要方面的思考,所以我们选择了.NET平台作为开发与应用。
    目前软件开发平台主要向Web的应用方向发展。由于Web的应用是基于分布和异构的网络环境的,所以要求开发平台应具有开放性、分布性和平台无关性。现在流行的软件开发平台主要有Microsofi的.NET和Sun的J2EE。在实际应用当中,我们具体选择哪种方案应根据具体情况而定,很多情况可能会综合使用两种开发平台。在适应技术发展的过程中,快速的跟上新技术是必须的。

  • 第11题:

    问答题
    论基于Web的数据库应用系统的开发技术 浏览器和HTTP协议在全球因特网的成功应用,促进了企业中的B/S结构的迅速推广。基于Web的数据库应用系统通常采用三层(或更多层)C/S结构,允许用于各类不同的平台和选择相应的数据库应用环境 请围绕"基于Web的数据库应用系统的开发技术"论题,依次从以下3个方面进行论述: ①概要叙述你参与分析和开发的软件项目,以及你所担任的主要工作。 ②具体讨论你在基于Web的数据库应用系统开发中所采用的主要技术,包括开发过程中遇到的问题和所采取的措施。 ③分析你所采用的开发技术的具体效果。现在你认为应当做哪些方面的改进,以及如何加以改进?

    正确答案: 写作要点
    完成本题的写作,需要对Web开发的相关架构有充分的了解,相关知识可参看"8.1.5分层架构"。除了解技术知识,在写作方面还要注意以下几个方面的要点:
    ①在文章中首先用400~600字的篇幅简要叙述自己参与分析和开发的系统概要和所担任的工作。
    ②具体讨论在基于Web的数据库应用系统开发中所采用的主要技术,包括开发过程中遇到的问题和所采取的措施。特别要注意描述三层结构的逻辑和物理部署,讨论数据是如何在三层之间传送的。
    ③最后要根据项目实际情况,分析所采用的开发技术的具体效果,你现在认为还有哪些可以改进的地方(例如,应用服务器性能的改进等),如何加以改进。
    解析: 暂无解析

  • 第12题:

    多选题
    参与移动商务的角色包括()
    A

    设备制造商和网络运营商

    B

    中间件软件开发商

    C

    应用服务提供商

    D

    用户

    E

    内容提供商


    正确答案: A,B
    解析: 暂无解析

  • 第13题:

    论文:试题论软件项目的进度管理软件开发项目进度管理是软件开发项目管理的一个重要内容,有效的进度管理是保证软件开发项目如期完成的重要环节。在软件开发过程中为保证软件按时完成,必须采取许多有关的技术、策略和方法。请围绕软件项目的进度管理”论题,依次对以下3个方面进行论述。(1)概要叙述你参与分析和开发的应用项目以及你所担任的主要工作。(2)具体讨论你在软件开发中为保证软件项目的进度所采取的主要技术及方案,详细叙述你为保证软件项目进度在你组织内部实施的方法和策略。(3)分析你在采取上述措施、方法和策略的效果如何?你认为所采用方法和策略有哪些独到之处,为什么?本文讨论了电力行业工作票、操作票系统的项目管理,在本项目中我作为项目负责人,承担了项目管理工作。


    在本项目管理中,我主要采用了面向对象技术同传统技术相结合的原则,在估算项目的工作量这方面尤为突出,面向对象技术对传统技术有所改进,传统技术能弥补面向对象技术的不足。本文从合理的估算项目的工作量及技术难度、识别关键任务、随时了解项目进度,必要时调整进度表等方面,讨论了电力行业工作票、操作票系统项目管理的基本活动与方法,有效地控制开发进度,确保项目如期按质完成。本系统在电力系统已经运行,状况良好,受到一致好评。
    2003年2月,我参加了电力行业工作票、操作票系统的开发,担任项目管理工作。电力系统有关部门在对电力设施进行检测、维修、试验等一系列活动时应按照我国电力行业相关标准进行工作,电力行业工作票、操作票系统就是按照国家有关标准及电力行业操作规程设计的仿真系统。工作人员在施工前按照工作流程在此仿真系统上进行操作,严格遵守电力设施的逻辑闭锁关系,顺序执行。有效地防止不规范操作,确保电力设施及现场工作人员的安全,提高安全意识。
    本系统由系统图编辑平台和工作票、操作票签发系统两大部分组成,其中系统图编辑平台主要是编辑变电站、用电系统及变电站控制系统图,每一个电力设施对应一个对象,在系统图上都有相对应的部分,系统图真实地反映电力设施的布局及相互关系,生动形象又合乎技术标准,同时为第二部分提供操作对象。工作票、操作票签发系统主要是在系统图的基础上进行点击操作,每次点击对应一个对象即一个电力设施,根据电力设施的逻辑闭锁关系自动生成相应的工作票或操作票或提示操作不规范。
    在本系统的开发过程中,我通过合理的估算项目工作量及技术难度、识别关键任务、随时了解项目进度,必要时调整进度表等方面对项目进行管理,确保本系统如期按质完成。1.合理的估算项目工作量及技术难度本系统采用了面向对象的分析、设计等一系列面向对象技术,在本系统工作量的估算上根据功能点进行估算。将每个功能模块逐步分解,直至基本模块为止。我们将系统分为系统图编辑与工作票、操作票签发两个大的功能分别进行估算。系统图编辑部分主要是一个图形编辑系统。一种电力设施对应一个类,电力设施的技术参数及其操作对应相应类的属性和方法,电力设施图是由线段、圆、曲线、折线、多边形等基本图形组成,这些基本图形分别对应一个类,这些类又继承一个最基本的类。系统图编辑部分的工作量也就是这些类的实现,工作票、操作票签发部分用到了编辑平台的系统图,因此由大量的功能可以复用,这部分的功能划分同系统图编辑部分一样也是采用类作为基本结构,这样就比较准确的进行工作量的估算。
    同时,我们开发的这个系统是基于C/S结构的,由于C/S结构的系统我们公司有不少成功的案例,因此有不少的项目供我们参考。对于本系统的第二部分,我们就是借鉴以前做过的基于C/S结构的系统,基于C/S结构的系统框架基本上是一致的,数据库的设计、前台操作(例如,对数据库进行添加、删除、修改、查询等一系列活动)大体相同。正因如此,有大量的东西可供我们复用,如权限控制模块我们就是复用以前的案例,仅作少量修改,在工作量的估算上也有很好的借鉴作用。这对工作量的估算也是一个重要的参考,为工作进度安排提供了依据。
    在技术上,我们重点考虑本系统与其他C/S结构的系统的不同之处,相同或相似之处。我们认为没有技术难点。系统编辑平台主要是绘图,我们知道MFC的绘图功能确实强大,但是过于繁琐,功能封装不是十分完美,于是,我们采用了Form++这个MFC扩展类库,该类库对图形操作封装得很好,大大降低了系统图编辑部分的难度,在界面设计上我们采用了BCG这个扩展类库,使得VC应用程序界面设计得如同Delphi等工具一样完美。同时减少了工作量,在工作安排上,对于技术难度相对大一点的部分,我们安排经验丰富的程序员,同时也与其他工作组的成员商讨技术细节问题,与他们进行技术探讨。这样不至于因为某一技术细节而影响整个工程进度。
    根据上述分析,我们制定一个详细的进度表并定义了相应的里程碑。2.识别关键任务系统图编辑部分是整个系统的基础,因为工作票、操作票签发部分是建立在该部分的基础之上,系统图编辑部分直接影响到整个项目。因此该部分是整个系统的关键部分,在这部分中每种电力设施所对应的类及其父类的定义是关键,因为所定义的类必须完整、准确地反映该电力设施的技术参数和操作。
    工作票、操作票签发部分是用户明确提出的要求实现的功能,直接面对用户,这部分的成功与否直接影响到该系统的质量,因此也是不容忽视的。
    如果上述两部分任务的进度受到影响,则整个项目的完成将受到威胁。因此是本项目的关键任务。在进度控制时我们将其作为重点对象进行控制。3.随时了解项目进度,必要时调整进度表
    在确定项目开发计划时,我们制定了详细的进度表。我们在确定每一项任务时都确定该任务的工作量、开始时间、持续时间、结束时间。同时让每个小组成员知道自己所承担任务的时间表,小组成员根据自己的任务制定自己的详细工作计划。
    工作日志是了解每个小组成员工作情况的很好的方式,我们要求每个小组成员对自己的工作都要做工作曰志,对自己每天的工作做详细记录。每周对自己的工作进展做出结论,向项目组汇报。在做结论时,不得使用“差不多”、“大概”、“完成了90%”等模糊字眼,而是采用某任务“已经全部完成”、“90%的工作全部完成”或者“再过1天全部完成”等方式。每个小组成员对自己做出的结论负责,这样可以做到随时了解项目进度,为调整项目计划提供客观基础。
    同时,我们在项目进度计划中根据项目设计和定义了相关的里程碑,在每个里程碑处,我们都采取小组会议形式对本阶段的工作进行确认和总结,对本阶段的进展情况做出结论,并决定是否调整下一阶段的进度计划。<br>在系统图编辑部分,我们认为各电力设施所对应的类(包括其父类)定义完成为一个里程碑,每个类是否具备了相对应的电力设施的技术参数及操作是该里程碑的标准,这些类(包括其父类)的实现完成又为一个里程碑,……,整个系统图编辑部分的完成也是一个里程碑。每个里程碑的标准在系统设计时已经定义好。4.结束语电力行业工作票、操作票系统目前已经开发完毕,运行状况良好,受到一致好评。在本系统开发的整个过程中采用了面向对象技术同传统技术相结合的原则,因为小组成员各有特长,面向对象技术不是每个小组成员都熟练掌握的,加之面向对象技术在我们公司还不是很成熟,必须有一个过渡,不能一下子转型,因此采用这种策略符合我们公司的现实情况。
    由于项目进度管理得当,项目按期完成,我们小组赢得了公司的好评,其他小组也研究我们的管理方式。当然,项目管理方式多种多样,根据项目不同、人员不同,管理模式应做调整而不是一成不变。适合本项目的管理模式才是最好的模式,先进的管理方法在不同的项目组中取得的效果是不同的,这有待于我们去研究、探索、实践和总结。

  • 第14题:

    具体讨论你在基于中间件的软件开发项目中所采用的主要技术,包括开发过程中遇到的问题和所采取的措施。


    正确答案:

  • 第15题:

    试题一

    论软件需求管理及其应用

    软件需求工程关注创建和维护软件需求文档需展开的一切活动。需求工程可分为需求开发和需求管理两项工作,其中需求管理的目标是为软件需求建立一个基线,供软件开发及其管理使用,确保软件计划、产品和活动与软件需求的一致性。从软件需求工程的角度来看,需求管理包括在软件开发过程中维持需求一致性和精确性的所有活动。

    请围绕“软件需求管理及其应用”论题,依次从以下三个方面进行论述。

    1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。

    2.详细论述软件需求管理的主要活动及其所包含的主要内容。

    3.结合你具体参与管理和开发的实际项目,说明是如何采用软件需求管理方法进行需求管理的,说明具体实施过程以及应用效果。


    正确答案:

    1.简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。

    2.需求管理的主要活动有变更控制,版本控制,需求跟踪和需求状态跟踪。

    (1)需求变更管理过程包括:

    1. 问题分析和变更描述,需要识别和分析需求问题,形成明确的变更协议,以检查它的有效性,从而产生一个更明确的需求变更提议。

    2. 变更分析和成本计算。使用可追溯性信息和系统需求的一般知识,对需求变更提议进行影响分析和评估。变更成本计算应该包括对需求文档的修改,系统修改的设计和实现的成本。一旦分析完成并且被确认,应该进行是否执行这一变更的决策。

    3. 变更实现。这要求需求文档和系统设计以及实现都要同时修改。

      (2)版本控制:主要包括确定需求文档版本。

      (3)需求跟踪:包括定义对其他需求的链接;定义对其他系统元素的链接;使用的工具即需求跟踪矩阵。

      (4)需求状态跟踪:定义需求状态;跟踪需求的每一个状态。

      3.考生需结合自身参与项目的实际状况,指出其参与管理和开发的项目中所进行的需求管理活动,说明该活动的具体实施过程,使用的方法和工具,并对实际应用效果进行分析。

  • 第16题:

    分析你所采用的基于中间件的软件开发的具体效果。你现在认为应当做哪些方面的改进以及如何加以改进?


    正确答案:

  • 第17题:

    论软件开发成本估算

    软件开发成本估算是软件工程项目管理中的一项重要任务。软件开发成本主要是指软件开发过程中所花费的工作量及相应的代价,软件开发成本估算应该以整个软件开发过程中所花费的人工代价为依据。

    试围绕“软件开发成本估算”论题,依次从以下3个方面进行论述。

    1.概要叙述你参与分析和开发的应用项目以及你所担任的主要工作。

    2.论述在估算软件开发成本时可以采用的方法和模型,并进一步分析这些估算方法和模型的优缺点。

    3.详细论述在你参与分析和开发的应用项目中具体采用的估算软件开发成本的技术、方法、模型、工具及其实际效果。


    正确答案:软件开发成本估算是一个十分容易被忽视但却又是十分重要的内容。其重要的原因是没有成本估算项目计划就会失去基础;容易被忽视的原因却是由于大部分软件开发组织未能够有效掌握它。 软件估算包括规模估算、工作量估算、进度估算和成本估算。整个估算的过程是:首先根据软件需求进行规模估算也就是估计软件的规模通常以代码行数、功能点数为单位;然后在估计的规模的基础上根据项目的特定因素(例如技术能力、使用的语言和平台、团队稳定性、项目复杂度等)、开发生产率经验数字来估算开发的工作量这通常以人天、人月、人年为单位;最后根据客户提出的进度需求进行进度估算根据人员及其他成本 (如设备、房租、差旅等)对总的开发成本进行估算。软件估算的基础是经验数字和经验模型。 从上面的描述中可以看出规模估算是软件开发成本估算的基础(数据来源)而工作量估算则是软件开发成本估算的关键(决定了开发成本)。 规模估算最常用的方法包括LOC(代码行)估算法和FP(功能点)估算法。LOC估算法主要根据历史项目记录以经验数据进行推测;FP估算法则通过一个较严谨的经验模型计算公式来进行估算。FP估算法是一种比较通行的软件规模估算方法。 工作量估算可以采用的模型、方法和技术就比较多了大致可以分为算法方法、类比法和自底向上法3种。 (1)算法方法估算是自顶向下的方式实现使用数学方式表达出估算所含的各种参数之间的关系如规模、工作量、进度、复杂度之间的关系。这个模型可以是静态的也可是动态的。最常见的算法方法估算模型包括MarkⅡ估算、COCOM0 81、COCOMOII、 COCOMO组、Putnam估算模型等。 ①MarkⅡFP估算:它不是一个严格的算法模型是基于各种因素和它们的影响的主观评价之间关系的一些理解。 ②COCOMO:它是根据软件产品规模和几个特征计算工作量和日历时间的估算算法模型。它是由Barry Boehm博士开发的发布于1981年即COCOMO 81而 COCOMOII则是其新版本不过由于它们各有特色因此还共同存在于估算实践中。这是一个较严格并经受了大量实践考验的一个经典估算模型。 ③COCOMO组:包括重点应用于COTS组件项目的COCOTS模型;用来预测每 KLOC或FP中残留错误的COQUALMO模型;着重于开发软件的成本在开发活动上的分布的COSSEMO模型;着重在预测新技术、提高生产率的发明方面最有效的成本分配的COPROMO模型。 ④Putnam估算模型:它是一个工作量动态的、多变量的估算模型它对交付时间十分敏感。 ⑤静态模型:除了以上动态模型之外还有一些常用的静态模型其中最常用的是 Watson和Felix模型。其计算公式是不变的:工作量;5.2×(KLCC)0.91持续时间(月): 4.1×(KLOC)0.36。可以用来生成较粗略的估算值。 算法方法估算法虽然定义严谨但是由于这些算法只是源于几十个项目的数据总结因此其结果并不是精确的但其仍然还是具有较高的参考价值。并且随着开发团队数据的积累和经验的堆积产生的估算也会越来越精确。 (2)类比估算法则是自顶向下的查看系统它借助经验丰富的人员的“本能感受”去识别待估项目和已完成的项目之间的相似与差异之处并评估这些差别对评估的影响。这种方法的主观意识较强估算结果的精确度与估算人员的经验有很大的关系。 (3)自底向上估算是将项目分解成为较小的活动和任务对每个较低层的任务做估算然后将所有的较低层的任务估算值加在一起就可以得到项目总的工作量估算值由于这种估算通常是由程序员来进行小任务块的估算因此容易让程序员产生责任感进度更有保障。 有了工作量估算后就可以计算出工作人员成本但在进行开发成本估算时还应该考虑硬件、软件、通信、差旅、培训以及其他成本。 可以从上面的描述中总结出撰写关于软件开发成本估算的论文主要应该注意以下几个方面的要点: (1)由于许多软件开发成本估算模型都需要一些参数依据因此应该对于项目的复杂度、涉及的关键技术、团队情况等因素进行阐述以便能够连贯地说明估算的过程。 (2)由于工作量估算是成本估算的关键其估算的结果决定了成本估算而成本估算则是在工作量的基础上做一些简单的财务计算因此可以理解为工作量估算的方法和模型。 (3)文章中应该列举算法方法估算法、类比估算法以及自底向上估算法3种模型并且应该抓住它们各自鲜明特点进行深入的阐述。 (4)在前面描述的基础上针对本项目的特色进行分析引出最合适的模型然后再结合实例详细地说明应用的具体方案。编写时一定要注意突出其真实性。 (5)文章应该花一定篇幅来说明估算的效果也就是估算的误差值是多少并且可以简要地分析这些误差值会来源于何处。
    软件开发成本估算是一个十分容易被忽视,但却又是十分重要的内容。其重要的原因是没有成本估算,项目计划就会失去基础;容易被忽视的原因却是由于大部分软件开发组织未能够有效掌握它。 软件估算包括规模估算、工作量估算、进度估算和成本估算。整个估算的过程是:首先根据软件需求进行规模估算,也就是估计软件的规模,通常以代码行数、功能点数为单位;然后在估计的规模的基础上,根据项目的特定因素(例如,技术能力、使用的语言和平台、团队稳定性、项目复杂度等)、开发生产率经验数字来估算开发的工作量,这通常以人天、人月、人年为单位;最后根据客户提出的进度需求进行进度估算,根据人员及其他成本 (如设备、房租、差旅等)对总的开发成本进行估算。软件估算的基础是经验数字和经验模型。 从上面的描述中,可以看出规模估算是软件开发成本估算的基础(数据来源),而工作量估算则是软件开发成本估算的关键(决定了开发成本)。 规模估算最常用的方法包括LOC(代码行)估算法和FP(功能点)估算法。LOC估算法主要根据历史项目记录,以经验数据进行推测;FP估算法则通过一个较严谨的经验模型计算公式来进行估算。FP估算法是一种比较通行的软件规模估算方法。 工作量估算可以采用的模型、方法和技术就比较多了,大致可以分为算法方法、类比法和自底向上法3种。 (1)算法方法估算是自顶向下的方式实现,使用数学方式表达出估算所含的各种参数之间的关系,如规模、工作量、进度、复杂度之间的关系。这个模型可以是静态的,也可是动态的。最常见的算法方法估算模型包括MarkⅡ估算、COCOM0 81、COCOMOII、 COCOMO组、Putnam估算模型等。 ①MarkⅡFP估算:它不是一个严格的算法模型,是基于各种因素和它们的影响的主观评价之间关系的一些理解。 ②COCOMO:它是根据软件产品规模和几个特征计算工作量和日历时间的估算算法模型。它是由Barry Boehm博士开发的,发布于1981年,即COCOMO 81,而 COCOMOII则是其新版本,不过由于它们各有特色,因此还共同存在于估算实践中。这是一个较严格,并经受了大量实践考验的一个经典估算模型。 ③COCOMO组:包括重点应用于COTS组件项目的COCOTS模型;用来预测每 KLOC或FP中残留错误的COQUALMO模型;着重于开发软件的成本在开发活动上的分布的COSSEMO模型;着重在预测新技术、提高生产率的发明方面最有效的成本分配的COPROMO模型。 ④Putnam估算模型:它是一个工作量动态的、多变量的估算模型,它对交付时间十分敏感。 ⑤静态模型:除了以上动态模型之外,还有一些常用的静态模型,其中最常用的是 Watson和Felix模型。其计算公式是不变的:工作量;5.2×(KLCC)0.91持续时间(月): 4.1×(KLOC)0.36。可以用来生成较粗略的估算值。 算法方法估算法虽然定义严谨,但是由于这些算法只是源于几十个项目的数据总结,因此其结果并不是精确的,但其仍然还是具有较高的参考价值。并且随着开发团队数据的积累和经验的堆积,产生的估算也会越来越精确。 (2)类比估算法则是自顶向下的查看系统,它借助经验丰富的人员的“本能感受”去识别待估项目和已完成的项目之间的相似与差异之处,并评估这些差别对评估的影响。这种方法的主观意识较强,估算结果的精确度与估算人员的经验有很大的关系。 (3)自底向上估算是将项目分解成为较小的活动和任务,对每个较低层的任务做估算,然后将所有的较低层的任务估算值加在一起,就可以得到项目总的工作量估算值,由于这种估算通常是由程序员来进行小任务块的估算,因此容易让程序员产生责任感,进度更有保障。 有了工作量估算后,就可以计算出工作人员成本,但在进行开发成本估算时还应该考虑硬件、软件、通信、差旅、培训以及其他成本。 可以从上面的描述中总结出撰写关于软件开发成本估算的论文,主要应该注意以下几个方面的要点: (1)由于许多软件开发成本估算模型都需要一些参数依据,因此应该对于项目的复杂度、涉及的关键技术、团队情况等因素进行阐述,以便能够连贯地说明估算的过程。 (2)由于工作量估算是成本估算的关键,其估算的结果决定了成本估算,而成本估算则是在工作量的基础上做一些简单的财务计算,因此可以理解为工作量估算的方法和模型。 (3)文章中应该列举算法方法估算法、类比估算法以及自底向上估算法3种模型,并且应该抓住它们各自鲜明特点进行深入的阐述。 (4)在前面描述的基础上,针对本项目的特色进行分析,引出最合适的模型,然后再结合实例,详细地说明应用的具体方案。编写时一定要注意突出其真实性。 (5)文章应该花一定篇幅来说明估算的效果,也就是估算的误差值是多少,并且可以简要地分析这些误差值会来源于何处。

  • 第18题:

    试题二 论软件项目管理技术及其应用

    软件项目管理是为了使软件项目能够按照预定的成本、进度和质量顺利完成,对人员、产品、过程和项目进行分析和管理的活动。软件项目管理的根本目的是为了让软件项目,尤其是大型软件项目的整个生命周期都能在管理者的控制之下,以预定成本按期、按质地完成并交付用户使用。而研究软件项目管理技术则是为了从已有的成功或失败的项目案例中总结出能够指导今后开发的通用原则和方法,同时避免重复失误。

    请围绕“软件项目管理技术及其应用”论题,依次从以下三个方面进行论述。

    1.概要叙述你参与实施和管理的软件开发项目以及你所担任的主要工作。

    2.请根据项目实际情况,从成本、进度和质量三个方面,结合软件开发过程,说明你是如何进行软件项目管理的。

    3.阐述你在进行软件项目管理时遇到了哪些问题,如何解决。


    正确答案:
    写作要点:
    一、论文中要具体介绍组织的业务背景和组织结构,软件系统开发时的人员组成、任务分工和管理方式等内容和担任的实际工作。
    二、本题应根据项目的实际情况,从成本、进度和质量三个方面,结合软件开发过程,对软件管理内容进行论述。相关的内容包括:
    1.在成本方面,需要进行软件项目成本管理。软件项目成本管理就是根据企业的情况和项目的具体要求,利用公司既定的资源,在保证项目的进度、质量达到客户满意的
    情况下,对软件项目成本进行有效的组织、实施、控制、跟踪、分析和考核等一系列管理活动,最大限度地降低项目成本,提高项目利润。
    项目成本管理包括确保在批准的预算范围内完成项目所需的各个过程。软件项目成本的管理可以用估算和控制来概括,首先对软件的成本进行估算,然后形成成本管理计划,在软件项目开发过程中,对软件项目施加控制使其按照计划进行。成本管理计划是成本控制的标准,不合理的计划可能使项目失去控制,超出预算。因此成本估算是整个成本管理过程中的基础,成本控制是使项目的成本在开发过程中控制在预算范围之内。
    成本管理的过程包括:
    (1)资源计划,包括决定为实施项目活动需要使用什么资源(人员、设备和物资)以及每种资源的用量。其主要输出是一个资源需求清单。
    (2)成本估算,包括估计完成项目所需资源成本的近似值。其主要输出是成本管理计划。
    (3)成本预算,包括将整个成本估算配置到各单项工作,以建立一个衡量绩效的基准计划。其主要输出是成本基准计划。
    (4)成本控制,包括控制项目预算的变化。其主要输出是修正的成本估算、更新预算、纠正行动和取得的教训。
    2.在进度方面,需要进行软件进度管理。软件进度管理采用科学的方法,确定进度
    目标,编制进度计划和资源供应计划,进行进度控制,在与质量,成本目标协调的基础上,实现工期目标。进度管理主要包含以下6个过程。
    (1)活动定义:确定完成项目各项可交付成果而需要开展的具体活动。
    (2)活动排序:识别和记录各项活动之间的先后关系和逻辑关系。
    (3)活动资源估算:估算完成各项活动所需要的资源类型和数量。
    (4)活动历时估算:估算完成各项活动所需要的具体时间。
    (5)进度计划编制:分析活动顺序、活动持续时间、资源要求和进度制约因素,制定项目进度计划。
    (6)进度控制:根据进度计划开展项目活动,如果发现偏差,则分析原因或进行调整。
    3.在质量方面,需要进行软件质量管理。质量管理是指确立质量方针及实施质量方
    针的全部职能及工作内容,并对其工作效果进行评价和改进的一系列工作。软件质量管
    理需要关注软件生命周期的质量模型,编制软件管理计划,实施软件质量保证与质量控制活动。
    (1)软件生命周期的质量模型主要包括过程质量、内部质量属性、外部质量属性等内容。(2)软件管理计划的主要内容有评审与检查、项目计划阶段的质量管理活动、软件配置管理等。
    (3)软件质量保证是指为保证软件系统或软件产品充分满足用户要求的质量而进行的有计划、有组织的活动,这些活动贯穿于软件生产的各个阶段。软件质量保证由各项任务构成,这些任务的参与者有两类人:软件开发人员和质量保证人员。前者负责技术工作,后者负责质量保证的计划、监督、记录、分析和报告工作。质量保证的相关技术有质量审计和过程分析等。
    质量控制是指监视项目的具体结果,确定其是否符合相关的质量标准,并判断如何能够去除造成不合格结果的根源,质量控制活动应贯穿于项目的始终。进行质量控制的主要活动是软件评审和软件测试等。
    三、在进行软件项目管理时可能存在的问题包括:如何有效发现并解决项目开发中
    的问题;如何对开发方案进行决策;如何对项目开发人员进行组织协调;如何提高团队工作效率,包括激励机制和惩罚机制;等等。

  • 第19题:

    以下关于软件中间件的叙述,错误的是()。

    A.中间件通过标准接口实现与应用程序的关联,提供特定功能的服务
    B.使用中间件可以提高应用软件可移植性
    C.使用中间件将增加应用软件设计的复杂度
    D.使用中间件有助于提高开发效率

    答案:C
    解析:
    中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。软件中间件的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户开发和集成应用软件。它不仅仅要实现互连,还要实现应用之间的互操作。

  • 第20题:

    以下关于软件中间件的叙述中,错误的是()

    • A、中间件通过标准接口实现与应用程序的关联,提供特定功能的服务
    • B、使用中间件可以提高应用软件可移植性
    • C、使用中间件将增加应用软件设计的复杂度
    • D、使用中间件有助于提高开发效率

    正确答案:C

  • 第21题:

    论设计模式在软件开发中的应用 设计模式描述了在特定场景下解决一般设计问题的类和相互通信的对象。一个设计模式命名、抽象并确定了一个通用设计结构的主要方面,这些设计结构能被用来构造可复用的面向对象设计。现在,设计模式已经广泛地应用在软件开发中。 请围绕"设计模式在软件开发中的应用"论题,依次对以下3个方面进行论述: ①概要叙述你参与分析和开发的应用项目,以及你所担任的主要工作。 ②简要介绍设计模式的基本概念及分类,详细说明在你所参与分析和开发的应用项目中应用了哪些设计模式、方法,以及选用它们的原因。 ③分析并讨论使用设计模式的效果,并分析和评价设计模式对软件开发的影响。


    正确答案: 所谓设计模式,简单地理解,是一些设计面向对象的软件开发的经验总结。设计模式事实上是系统地命名、解释和评价某一个重要的可重现的面向对象的设计方案。
    本文的写作要点,大致包括以下几个方面:
    ①结合自己参与分析和开发的应用项目或从事的实际工作,说明设计模式对系统开发的作用。
    ②较为详细地说明设计模式的基本分类,并结合项目实际工作,说明在系统开发中所采用的设计模式,以及选择这些设计模式的原因。
    ③结合项目实际工作,举例说明设计模式的使用效果,针对设计模式对软件开发的影响展开分析与讨论。

  • 第22题:

    单选题
    在参与移动商务的主要几种角色中,()负责开发中间件平台。
    A

    用户

    B

    软件开发商

    C

    内容提供商

    D

    设备制造商


    正确答案: A
    解析: 暂无解析

  • 第23题:

    单选题
    ()是在计算机硬件和操作系统之上,支持应用软件开发和运行的系统软件。
    A

    组件

    B

    控件

    C

    插件

    D

    中间件


    正确答案: D
    解析: 暂无解析