免费智能真题库 > 历年试卷 > 信息系统项目管理师 > 2009年下半年 信息系统项目管理师 下午试卷 案例
  第2题      
  知识点:   编码   合同签订   建设单位   维护   系统的集成   详细设计   信息系统集成项目   硬件   硬件系统

 
某系统集成商A公司承担了某科研机构的信息系统集成项目,建设内容包括应用软件开发、软硬件系统的集成等工作。
在项目建设过程中,由于项目建设单位欲申报科技先进单位,需将此项目成果作为申报的重要内容之一,在合同签订后30天内,建设单位向A公司要求总工期由10个月压缩到6 个月,同时增加部分功能点。
由于此客户为A公司的重要客户,为维护客户关系,A公司同意了建设单位的要〕为了完成项目建设任务,A公司将应用软件分成了多个子系统,并分别组织开发团队突击开发,为提高效率,尽量采用并行的工作方式,在没有全面完成初步设计的情况下,有些开发组同时开始详细设计与部分编码工作;同时新招聘了6名应届毕业生加入开发团队。
在项目建设过程中,由于客户面对多个开发小组,觉得沟通很麻烦,产生了很多抱怨,虽然A公司采取了多种措施来满足项目工期和新增功能的要求,但项目还是频繁出现设计的调整和编码工作的返工,导致项目建设没有在约定的6个月工期内完成,同时在试运行期间系统出现运行不稳定情况和数据不一致的情况,直接影响到建设单位科技先进单位的申报工作;并且项目建设单位对A公司按合同规定提出的阶段验收申请不予回应。
 
问题:2.1   请简要分析A公司没有按期保质保量完成本项目的原因。
 
问题:2.2   结合本试题所述项目工期的调整,请简述A公司应按照何种程序进行变更管理。
 
问题:2.3   公司重新任命王工为该项目的项目经理,负责项目的后续工作。请指出王工应采取哪些措施使项目能够进入验收阶段。
 
 
 

   知识点讲解    
   · 编码    · 合同签订    · 建设单位    · 维护    · 系统的集成    · 详细设计    · 信息系统集成项目    · 硬件    · 硬件系统
 
       编码
               编码过程
               在给定了软件设计规格说明书后,下一步的工作就是编写代码。一般来说,编码工作可以分为四个步骤:
               (1)确定源程序的标准格式,制订编程规范。
               (2)准备编程环境,包括软硬件平台的选择,包括操作系统、编程语言、集成开发环境等。
               (3)编写代码。
               (4)进行代码审查,以提高编码质量。为提高审查的效率,在代码审查前需要准备一份检查清单,并设定此次审查须找到的bug数量。在审查时,要检查软件规格说明书与编码内容是否一致;代码对硬件和操作系统资源的访问是否正确;中断控制模块是否正确等。
               编码准则
               在嵌入式系统中,由于资源有限,且实时性和可靠性要求较高,因此,在开发嵌入式软件时,要注意对执行时间、存储空间和开发/维护时间这三种资源的使用进行优化。也就是说,代码的执行速度要越快越好,系统占用的存储空间要越小越好,软件开发和维护的时间要越少越好。
               具体来说,在编写代码时,需要做到以下几点:
               .保持函数短小精悍。一个函数应该只实现一个功能,如果函数的代码过于复杂,将多个功能混杂在一起,就很难具备可靠性和可维护性。另外,要限制函数的长度,一般来说,一个函数的长度最好不要超过100行。
               .封装代码。将数据以及对其进行操作的代码封装在一个实体中,其他代码不能直接访问这些数据。例如,全局变量必须在使用该变量的函数或模块内定义。对代码进行封装的结果就是消除了代码之间的依赖性,提高了对象的内聚性,使封装后的代码对其他行为的依赖性较小。
               .消除冗余代码。例如,将一个变量赋给它自己,初始化或设置一个变量后却从不使用它,等等。研究表明,即使是无害的冗余也往往和程序的缺陷高度关联。
               .减少实时代码。实时代码不但容易出错、编写成本较高,而且调试成本可能更高。如果可能,最好将对执行时间要求严格的代码转移到一个单独的任务或者程序段中。
               .编写优雅流畅的代码。
               .遵守代码编写标准并借助检查工具。用自动检验工具寻找缺陷比人工调试便宜,而且能捕捉到通过传统测试检查不到的各种问题。
               编码技术
                      编程规范
                      在嵌入式软件开发过程中,遵守编程规范,养成良好的编程习惯,这是非常重要的,将直接影响到所编写代码的质量。
                      编程规范主要涉及的三方面内容:
                      .命名规则。从编译器的角度,一个合法的变量名由字母、数字和下画线三种字符组成,且第一个字符必须为字母或下画线。但是从程序员的角度,一个好的名字不仅要合法,还要载有足够的信息,做到“见名知意”,并且在语意清晰、不含歧义的前提下,尽可能地简短。
                      .编码格式。在程序布局时,要使用缩进规则,例如变量的定义和可执行语句要缩进一级,当函数的参数过长时,也要缩进。另外,括弧的使用要整齐配对,要善于使用空格和空行来美化代码。例如,在二元运算符与其运算对象之间,要留有空格;在变量定义和代码之间要留有空行;在不同功能的代码段之间也要用空行隔开。
                      .注释的书写。注释的典型内容包括:函数的功能描述;设计过程中的决策,如数据结构和算法的选择;错误的处理方式;复杂代码的设计思想等。在书写注释时要注意,注释的内容应该与相应的代码保持一致,同时要避免不必要的注释,过犹不及。
                      性能优化
                      由于嵌入式系统对实时性的要求较高,因此一般要求对代码的性能进行优化,使代码的执行速度越快越好。以算术运算为例,在编写代码时,需要仔细地选择和使用算术运算符。一般来说,整数的算术运算最快,其次是带有硬件支持的浮点运算,而用软件来实现的浮点运算是非常慢的。因此,在编码时要遵守以下准则:
                      .尽量使用整数(char、short、int和long)的加法和减法。
                      .如果没有硬件支持,尽量避免使用乘法。
                      .尽量避免使用除法。
                      .如果没有硬件支持,尽量避免使用浮点数。
                      下图是一个例子,其中两段代码的功能完全一样,都是对一个结构体数组的各个元素进行初始化,但采用两种不同的方法来实现。下图(a)采用数组下标的方法,在定位第i个数组元素时,需要将i乘以结构体元素的大小,再加上数组的起始地址。下图(b)采用的是指针访问的方法,先把指针fp初始化为数组的起始地址,然后每访问完一个数组元素,就把fp加1,指向下一个元素。在一个奔腾4的PC上,将这两段代码分别重复10 700次,右边这段代码需要1ms,而左边这段代码需要2.13ms。
                      
                      算术运算性能优化的例子
 
       合同签订
        招标人和中标人应当签订书面合同,合同的标的、价款、质量、履行期限等主要条款应当与招标文件和中标人的投标文件的内容一致。招标人和中标人不得再行订立背离合同实质性内容的其他协议。
        对于系统集成类的技术合同,一般应包括:项目名称;标的内容、范围和要求;履行的计划、进度、期限、地点、地域和方式;技术文档和资料的保密;风险责任的承诺;技术成果的归属和收益的分成方法;验收标准和方法;价款、报酬或使用费及支出方式;违约金或损失赔偿方法;解决争议的方法;名词术语的解释等。
        如果中标人不同意按照招标文件规定的条件或条款按时进行签约,招标人有权更换中标人,从中标候选人中选择中标人与其签约。
 
       建设单位
        建设方是建设项目的主要投资者,有时也是项目的最终使用者,是在工程建设阶段的全权代表,建设项目的经济效益,如投资额度、工程质量、投入使用时间和使用寿命直接关系着建设方的切身利益。虽然承建方、监理方与建设方是平等的市场主体,但由于建设方是投资方,掌握着项目的最终资源——决定了其他方为从属地位,所以说建设方对工程项目管理起着主导性作用。建设方加强和改善对项目的管理是从根本上实现项目按质如期完成的最有效的途径之一。
        作为项目管理集体中的主要负责人,建设方的作用是阐明本项目的目标并确认各项工作的轻重缓急,组织协调参与各方为此目标而通力合作,在管理决策过程中做出决策。但在某些具体的项目管理事务中,建设方并不总是处于主要负责人的地位,还要作为裁判、支持者、服务员及督促员的角色。
 
       维护
        维护阶段是软件生存期中时间最长的阶段。软件一旦交付正式投入运行后便进入软件维护阶段。该阶段的关键任务是通过各种必要的维护活动使系统持久地满足用户的需要。每一项维护活动都应该准确地记录下来,作为正式的文档资料加以保存。
 
       系统的集成
        系统集成是多媒体应用系统的生成阶段,也称程序设计阶段。这一阶段的主要任务是使用合适的多媒体创作工具,按照制作脚本的具体要求把制作好的各种素材有机地组织到相应的信息单元中,形成一个具有特定功能的完整系统。
        在生成多媒体应用系统时,如果采用程序编码设计,则首先要选择功能强、可灵活进行多媒体应用设计的编程语言和编程环境,如Visual Basic、Visual C++和Java等。
        由于在制作多媒体应用系统时要很好地解决多媒体压缩、集成、交互及同步等问题,编程设计不仅复杂,而且工作量大,因此多媒体创作工具应运而生。各种创作工具虽然功能和操作方法不同,但都有操作多媒体信息进行全屏幕动态综合处理的能力。根据现有的多媒体硬件环境和应用系统设计要求,选择适宜的创作工具可以高效、方便地进行多媒体编辑集成和系统生成工作。
        系统集成与素材制作这两个阶段会分别完成各自不同的任务,必须先制作素材,才能进行集成。但在实际制作中,这两个过程往往不能截然分开。有时在系统集成阶段会发现事先准备的素材并不十分理想,需要进行修改或重新选择;有时为了取得更好的听觉与视觉效果,还需要对素材做进一步的艺术加工。通常在有了软件脚本以后,素材的制作和系统的集成才可以同步进行。
 
       详细设计
        总体设计只是为整个信息系统提供了一个设计思路和框架,框架内的血肉需要系统的设计人员在详细设计这个阶段充实。总体设计完成后,设计人员要向用户和有关部门提交一份详细的报告,说明设计方案的可行程度和更改情况,得到批准后转入系统详细设计。详细设计阶段主要是在总体设计的基础上,将设计方案进一步详细化、条理化和规范化,为各个具体任务选择适当的技术手段和处理方法。系统的详细设计一般包括如下。
        (1)代码设计。
        代码设计就是信息分类和编码的工作,是将系统中有某些共同属性或特征的信息归并在一起,并利用便于计算机和人识别和处理的符号来表示这些信息的设计工作。
        (2)数据库设计。
        数据库设计就是构建既能客观、准确地反映外部世界,又便于人类大脑认识的概念模型,并在此基础上对数据进行建模,转化为数据库管理系统所支持的数据模型;选择合适的存储结构和存储方法,最终完成数据库的设计工作。
        (3)输入/输出设计。
        输入/输出设计主要是对以记录为单位的各种输入输出报表格式的描述。另外,对人机对话格式的设计和输入输出装置的选择也在这一步完成。
        (4)用户界面设计。
        用户界面设计是指在用户与系统之间架起一座桥梁。主要内容包括:定义界面形式;定义基本的交互控制形式;定义图形和符号;定义通用的功能键和组合键的含义及其操作内容;定义帮助策略,等等。
        (5)处理过程设计。
        总体设计将系统分解为许多模块,并基本决定了每个模块的功能和界面。处理过程设计则定义每个模块的内部执行过程,包括数据的组织、控制流、每一步的具体加工要求和实施细节。通过处理过程设计,为编写程序制定一个周密的计划。一般来说,每一个功能模块都应设计一个处理流程。
 
       信息系统集成项目
        信息系统集成是从客户和用户的需求出发,将硬件、系统软件、工具软件、网络、数据库、应用软件或者云计算提供的服务以及相关的支撑环境集成为实用的信息系统的过程。
        信息系统集成项目的产品是满足需求、支持用户业务的信息系统。
        信息系统集成项目有如下显著特点:
        .以满足用户和客户的需求为根本出发点。
        .客户和用户的需求常常不够明确、复杂多变,因此需加强需求变更管理。
        .系统集成不是简单选择最好的产品,而是要选择最适合用户的需求和投资规模的产品、技术和服务的活动的集合。
        .高技术与高技术的集成。
        .系统工程。
        .项目团队成员年轻,流动率高。
        .强调沟通的重要性。
        总之,系统集成项目管理既是一种管理行为又是一种技术行为。
 
       硬件
        硬件是计算机物理设备的总称,也称为硬件设备,通常是电子的、机械的、磁性的或光的元器件或装置,一般分为中央处理器、存储器和输入、输出设备。
 
       硬件系统
        硬件系统是计算机网络的基础,硬件系统由计算机、通信设备、连接设备及辅助设备组成,通过这些设备的组成形成了计算机网络的类型。下面来学习几种常用的设备。
        (1)服务器。在计算机网络中,核心的组成部分是服务器。服务器是计算机网络中向其他计算机或网络设备提供服务的计算机,并按提供的服务被冠以不同的名称,如数据库服务器,邮件服务器等。常用的服务器有文件服务器、打印服务器、通信服务器、数据库服务器、邮件服务器、信息浏览服务器、文件下载服务器等。
        (2)客户机。客户机是与服务器相对的一个概念。在计算机网络中享受其他计算机提供的服务的计算机就称为客户机。
        (3)网卡。网卡是安装在计算机主机板上的电路板插卡,又称为网络适配器或网络接口卡(Network Interface Board)。网卡的作用是将计算机与通信设备相连接,负责传输或者接收数字信息。
        (4)调制解调器。调制解调器(Modem)是一种信号转换装置,可以将计算机中传输的数字信号转换成通信线路中传输的模拟信号,或将通信线路中传输的模拟信号转换成数字信号。一般将数字信号转换成模拟信号,称为“调制”过程;将模拟信号转换成数字信号,称为“解调”过程。调制解调器的作用是将计算机与公用电话线相连,使得现有网络系统以外的计算机用户能够通过拨号的方式利用公用事业电话网访问远程计算机网络系统。
        (5)集线器。集线器是局域网中常用的连接设备,有多个端口,可以连接多台本地计算机。
        (6)网桥。网桥(Bridge)也是局域网常用的连接设备。网桥又称桥接器,是一种在链路层实现局域网互联的存储转发设备。
        (7)路由器。路由器是互联网中常用的连接设备,可以将两个网络连接在一起,组成更大的网络,如局域网与Internet可以通过路由器进行互联。
        (8)中继器。中继器可用来扩展网络长度。中继器的作用是在信号传输较长距离后,进行整形和放大,但不对信号进行校验处理等。
   题号导航      2009年下半年 信息系统项目管理师 下午试卷 案例   本试卷我的完整做题情况  
1 /
2 /
3 /
 
第2题    在手机中做本题