软件工程师绩效考核(细分权重)及软件工程期中_第1页
软件工程师绩效考核(细分权重)及软件工程期中_第2页
软件工程师绩效考核(细分权重)及软件工程期中_第3页
软件工程师绩效考核(细分权重)及软件工程期中_第4页
软件工程师绩效考核(细分权重)及软件工程期中_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

考核指标分项考核标准权重考核标准得分研发方面(15分)1.是否能对系统设计正确理解,能否提出合理化建议,如能采纳可加分2.是否系统详细设计全面、合理,如在设计上有所创新或采用更先进技术并采纳可加分3.能否对研发过程中的技术难点提出可行性解决方案,资料及时备份分类4.能较早的进行后续功能的开发和整合,及早的发现问题并解决问题5.定时优化自已开发的代码和编写的文档,提交高质量高标准的产品文档方面(15分)1.是否及时提交各阶段技术文档2.文档的内容组织是否有序合理,格式是否按公司文档格式编写3.技术文档的内容表达是否准确,能真实的表达设计意图4.文档资料归档是否符合要求5.编写的技术文档描述是否详尽,对后续开发人员阅读是否容易理解6.在设计文档时能否发挥创新的思维设计,使需求和模块结构更加清晰明了7.各阶段的文档数量与种类是否符合要求8.周报日报内容详细描述了所完成、未完成的工作以及完成遇到的问题、解决思路等代码质量(20分)1.模块划分清晰,结构安排合理2.模块设计时复用率高3.编码简洁、规范,结构清晰,注解完整、清楚,容易被人理解4.代码性能优越,BUG率低,异常处理考虑周全得当5.有充分的调试、测试提示功能计划与进度(20分)1.项目研发是否能按项目计划进度完成,按里程碑计算,如能保证质量的前提下提前完成可以加分,反之,扣罚。3.每项工作是否有计划;计划是否合理,进度是否得到有效控制,计划内容是否完整、详实、清楚,使人能清楚地把握当前工作动态4.每项决议是否得到监控并有效执行5.交付的每项任务是否能自觉的准时急时的解决代码维护(10分)1.文档和代码能否始终保存同步2.是否每天将工作过程资料上传到服务器上进行备份3.急时指交每阶段的重要版本,以及里程碑产物4.对临时交付的开发任务是否也能做到及时备份5.每次备份的版本是否清楚表明版本的作用和变化工作态度(20分)1、能够自觉遵守公司各项规章制度2、按时提交工作周报3、工作积极主动、良好的工作热情、乐意承担额外工作,积极思考,不断改进工作4、具有强烈的责任心,认真负责,可以放心交付工作,迅速处理业务,对本职工作及领导交办的任务均能及时或提前高效地完成5、富于团队精神,乐意协助他人的工作,顺利完成任务6.能简洁明白地表达自己的见解,遇见工作压力时,沉着冷静;7.良好的沟通能力,有合作意识,并有接受不同意见,有进取心;8.对新知识的求知欲和学习能力,积极关注、吸收新技术发展,努力学习各种专业知识,注意收集整理各种技术资料,并将之不断纳入工作中,不断提高实际操作和解决问题的水平。技术保密不向无关人员透露技术秘密,不携带技术秘密离开公司。对技术保密问题提出了自己的建议,并被采纳,并经常提醒他人注意技术保密;如有违反公司技术保密规定,一票否决。总体评价本人意见公司领导审批考核办法:达标不加减分;不达标按程度相应扣减分数;超标按超标程度相应加分。例1:计划本月两个项目,月中增加一个项目并按要求进度和质量完成。完成工作量:加5分,其他项不加减。例2:计划本月两个项目,月中增加一个项目,但新项目未按要求完成进度。完成工作量:加2分,进度完成率减5分,其他项不加减。1.什么是当前系统?当前系统的物理模型与逻辑模型有什么差别?(1)所谓当前系统可能是需要改进的某个已在计算机上运行的数据处理系统,也可能是一个人工的数据处理过程。(2)当前系统的物理模型客观地反映当前系统实际的工作情况。但在物理模型中有许多物理的因素,随着分析工作的深入,有些非本质的物理因素就成为不必要的负担,因而需要对物理模型进行分析,区分出本质的和非本质的因素,去掉那些非本质的因素即可获得反映系统本质的逻辑模型。所以当前系统的逻辑模型是从当前系统的物理模型抽象出来的2.在UML中用例与用例之间存在泛化、包含和扩展关系,请分析它们的异同。(1)共性:都是从现有用例中抽取出公共的那部分信息,作为一个单独的用例,然后通过不同的方法重用这个公共的用例,以减少模型维护的工作量。(2)不同点:a.泛化侧重表示子用例间的互斥性。b.包含侧重表示被包含用例对参与者提供服务的间接性。c.扩展侧重表示扩展用例的触发不定性。泛化关系是描述用例之间一般与特殊关系的。子用例继承了父用例所有的结构、行为和关系,同时子用例还可以添加、覆盖、改变继承的行为。子用例是父用例的一种特殊形式,不同的子用例代表了父用例的不同实现方法。在一个复杂系统中,不同的用例之间可能存在一些相同的行为,这时可以将这些相同的行为提取出来组成一个用例。当其他用例使用该用例时,用例之间便形成了包含关系。向一个用例中添加一些动作后构成了另一个用例,这两个用例之间的关系就是扩展关系,后者继承前者的一些行为,把后者称为扩展用例。也可以把扩展关系看成从主用例中将异常行为或可选分支抽象成一个单独的用例而形成的关系。3.多个软件工程师合作开发一个项目,各开发者之间需要两两互相通信。假设每一条通信路径的开销为300LOC/年(LOC为代码行数)。(1)设有6名软件工程师,如果单独工作,每个人的生产率是6500LOC/年,那么由这6名软件工程师组成的项目组的生产率是多少?(2)在这一年期限的最后两个月,又增加了两名工程师,新增成员的个人生产率为4500LOC/年,那么这8人组成的项目组全年完成的开发工作量又是多少条代码行?当开发小组的人员为N时,可能的通信路径有N(N-1)/2条。 6500*6-(6*5/2)*300=34500(行/年)从第11月开始增加2个人,则通信路径增加了:8*(8-1)/2–15=13(条)所以通信开销增加了:(300/12)*2*13=650(LOC)而这2人的开发工作量为:(4500/12)*2*2=1500(LOC)则总计工作量为:34500+1500–650=35350(LOC)4.输入三个正整数作为边长,然后判断该三条边能否构成三角形。若能,则构成的三角形是等边、等腰还是一般三角形?请用N-S图描述程序的算法,并将盒图中每个格中标出数字①、②……,利用数字画出程序控制流图,计算此程序的环形复杂度5.某学校计算机教材购销系统有以下功能:学生买书,首先填写购书单,计算机根据各班学生用书表及售书登记表审查有效性。若有效,计算机根据教材库存表进一步判断书库是否有书;若有书,把领书单返回给学生,学生凭领书单到书库领书。对脱销的教材,系统用缺书单的形式通知书库保管员,新书购进库后,也由书库保管员将进书通知返回给系统。请就以上系统功能画出分层的DFD图。(第三层只需画出销售子系统的DFD图)6.图书馆的预定图书子系统有如下功能:由供书部门提供书目给订购组;订购组从各单位取得要订的书目;根据供书目录和订书书目产生订书文档留底;将订书信息(包括数目、数量等)反馈给供书单位;将未订书目通知订书者;对于重复订购的书目由系统自动检查,并把其结果反馈给订书者。请就以上系统功能分两层画出DFD图。7.根据描述建立软件公司的对象模型,即画出类图。问题陈述如下:一个软件公司有许多部门,分为开发部门和管理部门两种。每个部门由部门名字唯一确定。每个开发部门开发多个软件产品,每个软件产品都由程序、数据和文档组成。该公司有许多员工,分为经理、工作人员和开发人员。开发部门有经理和多个开发人员,管理部门有经理和多个工作人员。每个开发人员可参加多个开发项目,每个开发项目需要多个开发人员。每位经理可主持多个开发项目。8.一本书的组成包括一个封面,一个目录,一个前言,若干章,每章有若干节,每节有若干段,每段有若干句子,每节有0个或多个插图,还有0个或多个表格,最后有一个附录。试建立该书的对象模型。9.根据描述建立复印机行为的动态模型,即画出复印机状态图。问题描述:办公室复印机的工作过程大致如下:未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现缺纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接受复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员来排除故障,故障排除后回到闲置状态。实验1.绘制书中73页习题3的数据流图:题目:银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员键入系统,如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存款存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。分析:从存取款的常识可知,本系统的数据源点和终点都是“储户”,储户既要提出存取款要求,又要获得存款存单或利息清单。系统对存取款的处理功能主要是“记录存款信息”、“打印存款存单”和“核对密码”、“计算利息”、“打印利息清单”。为了完成上述功能,显然“存款信息”应该是一个数据存储。2.在上题文件的另一个绘图页中绘制书中73页习题4的数据流图:题目:为方便旅客,某航空公司拟开发一个机票预订系统。旅行社把预订机票的旅客信息(姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地等)输入进该系统,系统为旅客安排航班,印出取票通知和帐单,旅客在飞机起飞的前一天凭取票通知和帐单交款取票,系统校对无误即印出机票给旅客。分析:从问题陈述可知,本系统的数据源点是“旅行社”,机票预订系统印出取票通知和帐单是给旅行社的,所以“旅行社”也是终点。另外旅客凭取票通知和帐单交款取票,系统印出机票给旅客,则“旅客”也是一个源点和终点。机票预订系统包括了预订机票和旅客取票两部分,主要功能有:“分类并检验”、“订票”、“记账”和“机票准备”。要为旅客安排航班,需要查看“航班目录”,所以“航班目录”应该作为一个数据存储;系统能够输出账单,所以有记账功能,则另一个数据存储为“记账文件”;完整的订票信息应给存储在“机票文件”中,作为“准备机票”功能的基本数据。提示:本系统的基本系统模型如下:3.在上题文件的另一个绘图页中绘制书中73页习题5的数据流图:题目:医院对患者监护系统的基本要求是随时接收每个病人的生理信号(脉搏、体温、血压、心电图等),定时记录病人情况以形成患者日志,当某个病人的生理信号超出医生规定的安全范围时向值班护士发出警告信息,此外,护士在需要时还可以要求系统印出某个指定病人的病情报告。分析:从问题陈述可知,本系统的数据源点是“病人”和“护士”,他们分别提供生理信号和要求病情报告的信息。进一步分析问题陈述,从系统应该“定时记录病人情况以形成患者日志”这项要求可以想到,还应该有一个提供日期和时间信息的“时钟”作为数据源点。从问题陈述容易看出,本系统的数据终点是接收警告信息和病情报告的护士。系统对病人生理信号的处理功能主要是“接收信号”、“分析信号”和“产生警告信息”。此外,系统还应该具有“定时取样生理信号”、“更新日志”和“产生病情报告”的功能。为了分析病人上理信号是否超出了医生规定的安全范围,应该存储“患者安全范围”信息。此外,定时记录病人生理信号所形成的“患者日志”,显然也是一个数据存储。提示:本系统的基本系统模型如下:绘制本系统的功能级数据流图过程如下:4.“选课系统”类图的设计。需求陈述如下:某学校网上选课系统主要包括如下功能:管理员通过系统管理界面进入,建立本学期要开的各种课程、将课程信息保存在数据库中并可以对课程进行改动和删除。学生通过客户机浏览器根据学号和密码进入选课界面,在这里学生可以进行三种操作:查询已选课程、选课以及付费。同样,通过业务层,这些操作结果存入数据库中。5.图书馆馆藏出版物需求描述如下:一家图书馆藏有书籍、杂志、小册子、电影录像带、音乐CD、录音图书磁带和报纸等出版物,供读者借阅。这些出版物有出版物名、出版者、获得日期、目录编号、书架位置、借出状态和借出限制等属性,并有借出、收回等服务。创建图书馆馆藏出版物的类图。分析:题目中很明确地给出了此对象模型中包含的各种类,也明显地表示出了馆藏出版物与“书籍、杂志、小册子、电影录像带”等其它类应该是继承关系。所以,容易画出此描述的类图。6.交通工具分为空中、陆地、水上三种。空中交通工具分为客机、货机、专用轻型机。陆地交通工具分为列车、汽车;列车又分为旅客列车、货运列车;汽车又分为客车、货车。水上交通工具分为客轮、货轮、客货混合轮。建立交通工具的类图7.一台微机有一个显示器,一个主机,一个键盘,一个鼠标,汉王笔可有可无。主机包括一个机箱,一个主板,一个电源,存储器等部件。存储器又分为固定存储器、活动存储器,固定存储器又分为内存和硬盘,活动存储器又分为软盘、光盘、优盘。请建立微机的类图8.“选课系统”状态图的设计。一个课程类的状态变化如下:课程对象被创建,添加到数据库中。管理员可以删除、修改课程信息,在某个学期,开设该课程,如果选修人数超过指定人数,就不再允许学生选这门课。学期结束,课程的状态终止。9.人们烧水的状态描述如下:初始状态进入烧水过程时先处于炉子关闭状态,当打开炉子的触发事件发生时,需要检查是否满足监护条件“壶里是否有水”,如果满足则执行烧水的动作,触发转换进入到炉子打开状态,在此状态下,如果出现水烧开了,或壶烧坏了的情况,状态图应如何表达?试创建烧水的状态图。10.图形用户界面具有一个主菜单和一个带有文件打开命令的文件菜单,在每个菜单上都有一条退出命令。假设每次只有一个文件能够打开。建立图形用户界面的状态图。11.航班机票预订系统状态描述:在刚确定飞行计划时,显然没有任何预订的,并且在有人预订机票之前都将处于这种“无预订”的状态。对于订座而言,显然有“部分预订”和“预订完”两种状态,当航班快要起飞时,显然要“预订关闭”。请建立航班机票预订系统的状态图12.请根据下述电梯系统的需求描述画出类图来。在一幢m层楼的大厦中,用电梯内的和每个楼层的按钮来控制n部电梯的移动。每部电梯有m个按钮,每个按钮代表一个楼层。当按下一个按钮时该按钮指示灯亮,同时电梯驶向相应的楼层,当到达由按钮指定的楼层时指示灯熄灭。除了大厦的最底层和最高层之外,每层楼都有两个按钮分别指示电梯上行和下行。当这两个按钮之一被按下时相应的指示灯亮,当电梯达到此楼层时灯熄灭,电梯向请求的方向移动。当电梯无升降动作时,关门并停在当前楼层。分析:1.确定问题域内的候选对象大厦、电梯、楼层、按钮、运动、指示灯、请求、最底层、最高层、方向和门2.筛选出正确的对象删除“大厦、最底层、最高层、楼层”——无关删除“运动、指示灯、请求、方向和门”——属性只剩下“按钮、电梯”按钮又分为:电梯按钮和楼层按钮3.根据领域知识或常识找出隐含对象按钮并不直接与电梯通信,为了决定分派哪一部电梯去响应一个特定的请求,必须有某种类型的电梯控制器。进一步完善对象模型:分析:电梯类的主要功能是执行电梯控制器类发来的电梯操作命令,如果把电梯门(的状态)作为电梯的一个属性,则电梯类还要执行门操作命令,这样电梯类的功能就不单一了。解决:把电梯门独立出来作为一个类。这样打开或关闭电梯门的唯一办法就是向对象“电梯门”发送一条消息。如果电梯门类的封装性很好,就能保证不会在错误的时间开/关电梯门,从而能有效地杜绝严重的意外事故。另外,出于在未经授权的情况下不允许修改请求的考虑,也应该把“请求”作为一个独立的类。13.请根据使用电话的通常情况画出描述交互行为状态图来。电话系统的一般操作过程为:没人打电话时电话处于闲置状态;有人拿起听筒则进入拨号音状态,到达这个状态后,电话的行为是响起拨号音;这时如果拿起听筒的人改变主意不想打了,他把听筒放下(挂断),电话重又回到闲置状态;如果拿起听筒很长时间不拨号(超时),则进入超时状态……具体打电话、通话过程的脚本如下:打电话者拿起电话;电话拨号音开始;打电话者拨数字(先拨一位数字,如:3);电话拨号音结束;打电话者拨数字(5);打电话者拨数字(8);打电话者拨数字(2);如果电话号码拨错,交换机提示出错信息;如果号码正确,且对方空闲,则接电话者的电话开始振铃;铃声在打电话者的电话上传出;如果在30秒钟内,接电话者拿起话筒;接电话者的电话停止振铃;打电话者的电话停止振铃;通电话;……接电话者挂断电话;电话切断;打电话者挂断电话。如果拨号正确,对方忙,打电话者的电话上传出忙音。如果拨号正确,接电话者在30秒钟内不接听电话,双方电话停止振铃。14.白盒测试15.黑盒测试输入三个整数a、b和c分别作为三角形的3条边,通过程序判断由这3条边构成的三角形类型是:等边三角形、等腰三角形、一般三角形或非三角形。请从输出域定义等价类,设计测试用例。按照等价类的划分原则,建立输出等价类。选取测试用例,覆盖所有的等价类。某一报表处理系统,要求用户输入处理报表的日期。假设日期限制在1990年1月至1999年12月,即系统只能对该段时间内的报表进行处理。如果用户输入的日期不在此范围内,则显示输入错误信息。该系统规定日期由年、月的6位数字字符组成,前4位代表年,后两位代表月。现用等价类划分法设计测试用例,来测试程序的“日期检查功能”。程序规格说明为:“一个程序读入三个整数。把此三个数值看成是一个三角形的三个边。这个程序要打印出信息,说明这个三角形是三边不等的、是等腰的、还是等边的。”请使用等价类划分法,从输入域定义等价类,完成测试用例设计。16.面向对象设计原则单一职责原则:一个类应该仅有一个职责。注意:职责是否应该分开依赖于具体的应用。开放-封闭原则:在设计一个软件系统模块(类、方法)的时候,应该可以在不修改原有的模块(修改封闭)的基础上,能够扩展其功能(扩展开放)。在面向对象的程序中是可以做到的,利用面向对象的抽象和多态。程序对于修改不是100%封闭!一种抽象只能处理一类变化。抽象后的系统对这类变化是封闭的,但是对于其它类型的变化仍然不是封闭的。依赖倒置原则——系统框架设计的核心原则。高层模块不应该依赖于低层模块,二者都应该依赖于抽象。抽象不应该依赖于细节。细节应该依赖于抽象。使用何种语言来编写程序是无关紧要的,如果程序的依赖关系是倒置的,它就是面向对象的设计;如果程序的依赖关系不是倒置的,它就是过程化的设计。接口隔离原则使用多个专门的接口比使用单一的总接口要好。不能强迫用户去依赖那些他们不使用的接口。程序所依赖的接口中不要包含该程序不使用的方法。下面的设计是否合理,如果不合理,请说明原因并给出修正后的设计。(本题10分)说明:(1)Retangle类有两个方法,一个方法画矩形,另一个方法计算矩形的面积。其中draw()方法调用area()方法。(2)有两个不同的应用程序使用Retangle类。一个是ComputationalGeometryApplication,它是计算几何图形面积的,它依赖Retangle类的area()方法,但是它从来不用draw()方法。另一个是GraphicalApplication,它是绘制图形的,它主要依赖Retangle类的draw()方法,也有可能会用到area()方法。标准答案:这个设计违反了“单一职责原则”。Retangle类有两个职责,第一个职责是绘制矩形,第二个职责是计算矩形的面积。解决办法:把两个职责分离开,分离到两个完全不同的类中。 (3分) (7分)例2.下面的设计是否合适,如果不合适,请修正设计。系统需求说明:在屏幕上显示出圆形的面积。该需求今后会被扩展,要求显示正方形、矩形等其他形状的面积。要求设计的系统符合开放封闭原则。interfaceShape{doublearea();}publicclassCircleimplementsShape{privateintr;publicCircle(inta){r=a;}publicdoublearea(){return3.14*r*r;}}publicclassPrintDrawing{publicvoidprintArea(Shapes){System.out.println("Areais:"+s.area());}}publicclassShow{publicstaticvoidmain(Stringargs[]){Circlec=newCircle(2);PrintDrawingpc=newPrintDrawing();pc.printArea(c);}}改进后的Button类的伪码为:publicclassButton{publicvoidPoll(ButtonServerbs){判断是“开”还是“关”;if(“开”)bs.turnOn();elsebs.turnOff();}}ButtonServer类的代码为:interfaceButtonServer{publicvoid

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论