自我介绍|软件工程自我评价(范本二十篇)
发布时间:2017-09-04软件工程自我评价(范本二十篇)。
▷ 软件工程自我评价 ◁
1、9月2日—9月9日:主要完成MTA 98-361(Software Development Fundamentals)相关培训和考试。
2、 9月10日—9月16日:主要完成MTA 98-364(Database Administration Fundamentals)相关培训、考试以及项目分析与设计。
3、9月17日—9月22日:主要完成MTA 98-363(Web Development Fundamentals)相关培训、考试以及项目的编码、测试与整合等。
4、9月23日:项目答辩。
2.2 实习内容
项目一:员工工资管理系统
该项目我们通过ABAP语言与JAVA语言分别实现同样的功能,但是两次的具体项目需求是一样的,我在该项目中主要担任数据库设计以及员工基本信息管理模块的代码实施,现对该项目做如下介绍:
在一个优秀企业的生存和发展过程中,财务管理已经越来越占据重要地位,对员工工资的科学、高效的管理的财务管理基础模块之一。员工工资管理是现代企业的战略性管理方式,也是企业发展的最关键的因素。一个企业能否健康、正常的运行、发展,很大程度上取决于企业的财务管理方式,取决于对员工工资管理的效率。
ISAP-MIS介绍
员工工资管理系统(Employee Salary Management System),是指组织或社会团体运用系统学理论方法,对企业的员工工资管理方方面面进行分析,规划、实施、调整,提高企业员工工资管理水平,使人力资源更有效的服务于组织或团体目标。
主要功能
实现对员工基本信息表和员工奖金明细表的增、删、查、改、排序等操作。
实现对员工基本信息表和员工奖金明细表的多表连接查询操作。
具体说明
建立员工基本信息表和员工奖金明细表并且实现两个表的关联;
按照多种要求实现数据增加/插入功能;
按照多种要求实现数据记录的删除功能;
按照多种要求实现数据记录的修改功能;
按精确查询实现搜索操作;
按照某一关键字进行升序或降序记录。
项目优势
基于SAP的模式,运用系统学理论方法,对企业的工资和奖金进行分析,规划、实施、调整,全面提升企业工资管理的效率和质量。
项目特点
身份权限验证、下拉列表的应用、为输入参数建立搜索帮助、采用经典的三层处理模式理念,旨在实现业务和数据的独立,保证了系统的可行性、可靠性,提高了系统的易维护性、可扩充性。
ISAP-MIS分析
系统设计目标
基于SAP工资管理系统的设计目标是通过规范、整合、集成员工基本信息数据、员工奖金明细等信息,打造员工工资管理系统平台,实现管理业务的规范化、数据的标准化、信息管理的现代化,全面提升员工工资管理的效率和质量,达到对公司财务管理的优化配置。
用户权限验证管理
系统实现了用户权限管理功能,区分不同的用户提供不同操作权限,并可对用户进行密码初始化操作。
一般授权:只能查询本人基本信息,奖金信息
特殊授权:可以查询本部门的员工基本信息,奖金信息,工资汇总信息汇总。(构想待定)
VIP授权:可以查询所有部门员工的基本信息,奖金信息,工资汇总信息。
管理员授权:可以查询所有部门员工的基本信息,奖金信息,工资汇总信息,并对相关数据进行操作。
根据条件查询、增加、删除、修改功能管理
用户经过权限验证进入系统后可以根据自己的需要查询特定的信息,具有管理员授权的用户可以进行增加、删除、修改功能。
项目二:家校通
本系统总体功能上分为前台和后台两大部分:前台是B/S结构的Web应用系统,供普通用户浏览、使用;后台是C/S结构的Windows应用程序,供管理员维护系统。
任何用户都可以在前台用户系统进行登录使用。欲进入本系统必须有权限(账号及密码),没有被授权的用户不能进入系统。前台可以进行信息维护、信息查询、留言管理、资料下载等普通操作。
授权的管理员才能进入后台管理系统进行相关维护操作。后台能进行用户信息管理、公共信息管理等操作。
实习总结
通过这段时间的实习,学到一些在学校里学不到的东西。因为环境的不同,接触的人与事不同,从中所学的东西自然也就不一样。整个过程中,我每天都有很多新的体会,想说的很多,总结起来有以下几点:
1、 多听、多看、多想、多做、少说
太对决定一起,当有一份新的任务给你时要知道自己能否胜任这份工作,关键是看你自己对待工作的态度。态度对了,即使自己以前没学过的知识也可以在工作中逐渐的掌握。态度不好,就算自己有知识基础也不会把工作做好,实习项目刚开始时,根本不清楚该做些什么,并且这和我在学校读的专业没有必然的联系,刚开始我觉得很头痛,可经过工作过程中多看别人怎样做,多听别人怎样说,多想自己应该怎样做,然后自己亲自动手去多做,终于在短短几天里对工作有了一个较系统的认识,慢慢的自己也可以完成相关的工作了,光用嘴巴去说是不行的,所以,我们今后不管干什么都要端正自己的态度,这样才能把事情做好。
2、虚心学习
在这次实习过程中,我们碰到很多问题,有的是我们懂得的,也有很多是我们不懂的,不懂的东西我们要虚心向老师同学请教,当别人教我们知识的时候,我们也应该虚心的接受,不要认为自己懂得一点鸡毛蒜皮就飘飘然。
2.3 主要成果
项目:学生管理系统
主要技术:Jsp+Servlet+Mysql
开发工具:MyEclipse+Dreamweaver+Mysql数据库等
组员:胡齐文(组长),李维千,李瑶,扬帆,蔡欣岑,赵梦娇,杨军柏,王波波
主要功能:校级管理员主要完成对院级管理员的管理、对学校学生的管理以及个人信息的完善、修改等;院级管理员主要完成对本院的学生的信息管理以及个人信息的完善、修改等;学生主要完成对个人信息的管理。
项目:SWPU网上商城
主要技术:Ext.Net+Asp.Net+SQl Server 20xx
开发工具:Microsoft Visual Studio20xx+Microsoft SQL Server 20xx
组员:
主要功能:管理员主要完成对商品的管理、对订单的管理以及个人信息、注册会员信息的管理。注册用户主要管理自己的订单,购买商品等。
微软认证:通过微软MTA 98-361(Software Development Fundamentals)和MTA 98-364(Database Administration Fundamentals)认证。
总结
光阴似箭,日月如梭。为期40多天得实习生活已经结束,生产实习是学生大学学习很重要的实践环节。主要是让我们在毕业前提前感受一下工作的环境,体验一下作为工人的感觉,为以后的工作打基础。作为一个大三已经结束,准备迎接找工作的学生来说,有一次亲身实习的机会是多么的可贵。回首整个实习过程,我每天都有很多新的体会,想说的很多,我总结下来主要有以下几点:
1. 团队意识是完成项目的必要保证
在我们两个项目完成的过程中,我充分体会到了团队合作的重要性。特别是在自己担任项目组长分配大家完成项目期间,很难想象但是如果大家不团结一致的结果。期间通过大家的团队合作,项目组高效且快速的完成的项目,当然最重要的是大家都参与了项目的开发。
2.熟练的专业技能
提供最佳的解决方案是我们努力的方向。ERP的核心管理思想就是实现对整个供应 链的有效管理,我们在梳理了企业的各项业务之后,需要做的是提供一个最佳的解决方案,来帮助企业实现更加有效的管理,我们要精通SAP系统,掌握行业专业知识,更要能融入最适宜的管理理念,这对顾问而言,无非是一个很高的要求,需要我们不断地学习,不断的在一个个项目中去积累经验,但这也正是我们为之奋斗的目标。
3.加强信心,坚持下去
虽然感觉自己学的还可以,但真的工作起来却感觉力不从心。有时候遇到事情总会着急,慌张。平常信心不足,总感觉自己做不好。或许还需要一段时间的磨练吧。只有自己的知识和能力都在提升,相信自己总有一天会很勇敢的表现自己。
▷ 软件工程自我评价 ◁
1.软件工程:是指导计算机软件开发和维护的工程学科
2.软件危机:是指在计算机软件的开发和维护过程中所遇到的一系列严重问题
3.软件过程:是为了开发出高质量的软件产品所需完成的一系列任务的框架,它规定了完成各项任务的工作步骤
4.软件生命周期:是指从软件定义、开发、使用、信息”。此外,系统还应该具有“定时取样生理信号”、“更新日志”和“产生病情报告”的功能。为了分析病人生理信号是否超出了医生规定的安全范围,应该存储“患者安全范围”信息。此外,定时记录病人生理信号所形成的“患者日志”,显然也是一个数据存 储。
23.软件危机有那些典型表现?
(1)央一个索引号)。
针对若干个不同的NAME重复执行上述命令序列。
⑫测试系统非正常操作的测试数据 ①用过长的关键字作为命令b的参数:例如,b(reliability software and hardware combined)
预期的输出:系统截短过长的关键字,例如,上列命令中的关键字可能性被截预期的输出:X=1,Y=20,Z=3 ④ 3个判定表达式依次为假、真、真 输入:A=1,B=40,C=60 预期的输出:X=1,Y=20,Z=30 ⑤ 3个判定表达式依次为真、假、假 输入:A=20,B=1,C=1 预期的输出:X=10,Y=2,Z=3 ⑥ 3个判定表达式依次为真、假、真 输入:A=20,B=1,C=60 对软件开发成本和进度的估计常常很不准确。维护到淘汰的全过程
5.软件工程环境:方法与工具的结合,加上配套的软、硬件支持称为软件工程环境
6.模块:是数据说明、可执行语句等程序对象的集合7.模块化:是按规定的原则将一个大型软件分为一个个较小的、相对独立但又相关的模块
8.耦合:是对一个软件结构内不同模块之间互连程度的度量
9.内聚:标志着一个模块内各个元素彼此结合的紧密程度
10.结构程序设计:如果一个程序的代码块只有一个入口和一个出口,则称这个程序是结构化的11.实现:通常指编码和测试
12.软件可靠性:是指程序在给定的时间间隔内,按照规格说明书的规定成功地运行地概率
13.集成测试:是测试和组装软件的系统化技术 14.软件维护:是指软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程
15.对象:在应用领域中有意义的、与所解决的问题有关系的任何事物
16.对象模型:表示静态的、结构化的系统的“数据”性质
17.功能模型:表示变化的系统的“功能”性质 18.面向对象分析:就是抽取和整理用户需求并建立问题域精确模型的过程
19.重用:是指同一事物不作修改或者稍加改动就多次重复使用
20.可行性分析包括:技术可行性、经济可行性、操作可行性
21.北京某高校可用的电话号码有以下几类:校内电话号码由 4 位数字组成„„定义上述电话号码
电话号码=[校内电话号码|校外电话号码]
校内电话号码=非零数字+ 3 位数字 //后面继续定义 校外电话号码=[本市号码|外地号码] 本市号码=数字零+8 位数字
外地号码=数字零+3 位数字+8 位数字 非零数字=[1|2|3|4|5|6|7|8|9] 数字零=0位数字=3{数字}3//3 至 3 个数字 8 位数字=非零数字+7 位数字 7 位数字=7{数字}7 数字=[0|1|2|3|4|5|6|7|8|9]
22.目前住院的病人主要由护士护理,这样做不仅需要大量护士„„写出问题定义,分析可行性 从问题陈述可知,本系统数据源点是“病人”和“护士”,他们分别提供生理信号和要求病情报告的信息。进一步分析问题陈述,从系统应该“定时记录病人情况以形成患者日志”这项要求可以想到,还应该有一个提供日期和时间信息的“时钟”作为数据源点。从问题陈述容易看出,本系统的数据终点是接收警告信息和病情报告的护士。系统对病人生理信号的处理功能主要是“接收信号”、“分析信号”和“产生警告
(2)用户对“已完成的”软件系统不满意的现象经常
发生。
(3)软件产品的质量往往靠不住。(4)软件常常是不可维护的。(5)软件通常没有适当的文档资料。(6)软件成本在计算机系统总成本中所占的比例
逐年上升。(7)软件开发生产率提高的速度,远远跟不上计算
机应用迅速普及深入的趋势
25.银行计算机存储系统的工作过程大致如下:„„请用数据流图描绘本系统的功能,并用实体—联系图描绘系统中的数据对象 26.复印机的工作过程大致如下:未接到复印命令时处于闲置状态„„请用状态转换图描绘复印机的行为
27.用面向数据流的方法设计下列系统的软件结构
(1)机票预定系统(2)患者监护系统 28.耦合包括数据耦合、控制耦合、公共环境耦合、内容耦合29.内聚包括功能内聚、顺序内聚、通信内聚、过程内聚、时间内聚、逻辑内聚、偶然内聚
30.美国某大学有200名教师,校方与教师工会刚刚签订一项协议。按照协议„„
31.画出下列伪代码的流程图,计算它的环形复杂度
32.某图书馆有一个使用CET
终端的信息检索系统,该系统有下列4个基本检索命令:
(1)设计测试数据以全面系统的正常操作
(2)设计测试数据以测试系统的非正常操作
解:⑪测试系统正常操作的测试数据 ①顺序执行下列3个命令:b(KEYWORD)s(L)d(N)
其中KEYWORD是正确的关键字;L是执行命令b后在屏幕上显示的约20个行号中的一个(至少应该使L分别为第一个、最后一个和中央一个行号);N是执行命令s后列出的索引号中的一个(至少应该使N分别为第一个、最后一个和中央一个索引号)。
针对若干个不同的KEYWORD重复执行上述命令序列。
②顺序执行下列2个命令:f(NAME)d(N)
其中,NAME是已知的作者姓名;N是执行命令f后列出的索引号中的一个(至少应该使N分别为第一个、最后一个和中
短为reliability software
②用不正确的关键字作为命令b的参数:例如,b(AARDVARK)
预期的输出:显示出最接近的匹配结果,例如,执行上列命令后可能显示 1.AARON,JULES(book)③用比执行命令b后列出的最大行号大1的数作为命令s的参数
预期的输出:“命令s的参数不在行号列表中”
④用数字和标点符号作为命令b和命令f的参数
预期的输出:“参数类型错”
⑤用字母字符作为命令s和命令d的参数 预期的输出:“参数类型错”
⑥用0和负数作为命令s和命令d的参数 预期的输出:“参数数值错” ⑦命令顺序错:例如,没执行命令b就执行命令s,或没执行命令s就执行命令d 预期的输出:“命令顺序错”
⑧命令语法错:例如,遗漏命令名b、s、d或f;或命令参数没用圆括号括起来 预期的输出:“命令语法错” ⑨命令参数空:例如,b()、s()、d或f()
预期的输出:系统提供默认参数或给出出错信息
⑩使用拼错了的作者姓名作为f的参数 预期的输出:“找不到这们作者的著作”
33.(2)答:经验表明,在类似的程序中,单位长度
里的错误数ET/IT近似为常数。美国的一些统计数字告诉我们,通常
0.5X10-2≤ ET/IT ≤2X10-2
也就是说,在测试之前每1000条指令中大约有5~20个错误。
假设在该程序的每1000条指令中有10个错误,则估计在对它进行测试期间将发现的错误数为
5000X10/1000=50(个)(3)① 使3个判定表达式之值全为假 输入:A=1,B=1,C=1 预期的输出:X=1,Y=2,Z=3 ② 使3个判定表达式之值全为真 输入:A=20,B=40,C=60 预期的输出:X=10,Y=20,Z=30 ① 3个判定表达式之值全为假 输入:A=1,B=1,C=1 预期的输出:X=1,Y=2,Z=3 ② 3个判定表达式依次为假、假、真 输入:A=1,B=1,C=60 预期的输出:X=1,Y=2,Z=30 ③ 3个判定表达式依次为假、真、假 输入:A=1,B=40,C=1
预期的输出:X=10,Y=2,Z=30 ⑦ 3个判定表达式依次为真、真、假 输入:A=20,B=40,C=1 预期的输出:X=10,Y=20,Z=3 ⑧ 3个判定表达式全为真 输入:A=20,B=40,C=60 预期的输出:X=10,Y=20,Z=30 34.软件的可维护性与哪些因素有关:软件的可理解性、可测试性、可修改性、文档描述符合要求、用户文档简洁明确、系统文档完整并且标准
35.面向对象方法是一种运用对象、类、继承、封装、聚合、消息、多态等概念来构造系统的软件开发方法。
面向对象方法的优点是:符合人们习惯的思维方式、稳定性好、可重用性好、可维护性好、容易开发大型的软件产品
▷ 软件工程自我评价 ◁
【摘要】随着我国科技与经济的快速发展,坚实的经济实力为我国高新科技的发展奠定了坚实的基础,计算机技术为我国迈入信息化社会带来了巨大的动力,全民都将步入一个大时代的数据浪潮当中。一个企业或是一个国家掌握数据、处理信息的能力都极大地影响着这个主体的综合实力,大数据不仅是对大量数据的处理,更是对处理信息时效化的有效掌控。本文将具体分析大数据时代下软件工程的关键技术,将大数据时代背景与软件工程技术要点相结合,进一步促进我国高新科技的快速进步与发展,从而推动我国软件工程的可持续性发展。
随着我国计算机技术的不断成熟和发展,软件应用日益广泛,无论是从计算机存储或是整个IT环境,在硬件平台的搭设基础上,越来越多的软件功能丰富的大数据时代的主体内容。做为人类发社会发展的必经道路,大数据时代在不断适应和改造人类认知世界的过程中,不断丰富着人们的生产生活。因此,在软件工程设计分析时,我们要结合大数据的整体时代背景,进一步缓和软件工程发展的进程,并且不断优化传统的信息结构资源,强化软件工程的信息处理能力,提升软件工程与网络的结合度。
随着我国软件工程的不断发展,近几年来服务软件工程的数量越来越多,以服建设为基础的软件工程根据实际情况进行发展变化,现代软件工程服务通过分布式的应用和互操性虚拟化管理对软件工程展开维护工作,通过这样的管理信息方式将网络中的虚拟化软件变为动态化情景下的操作系统,通过解决集成系统和工程软件协作的问题,来进一步扩大大数据时代下软件工程服务的应用范围,例如在云计算、移动互联网络、大数据应用等方面都得到了有效的发展。大数据时代所要求的网络化和软件工程服务化,这让现代软件开发也变得更加开放,通过网络信息交流和学术信息共享,在共同协调开发的基础上采集用户评价信息,对建设性价比较高的软件进行进一步的投入,例如,开源软件就是在我国现阶段软件工程中较为成功的软件习作模式。所以,我们在开源社区中要加强合作、优化结构。但是以往的软件工程研究方法并没有太大的`突破,部分学者虽然运用社会网对数据进行的一定的分析,但是在一些规模较大的项目中,开发团队等核心人员由以往的传统团队逐渐转为外围开发者为主的科研研发队伍,整个软件工程研究模块发生了显著的变化。开源软件工程建设除了以往传统软件的典型性之外,在现如今群体软件工程中更加注重的是在众包基础上的研发过程,众包基础指的是以一种分布的形式来解决研发问题和生产问题,这就让开源软件或是其他商业软件都可以通过络进行软件工程研发责任分配,通过多方面研究提出创意或解决现有问题。所以,在软件工程关键技术的研发处理上,无论针对哪个阶段都可以采用众包的方式进行了重点问题的研发解决。
大数据时代的特点就是结构更为复杂,数据容量更加巨大,与传统的数据形式相比,大数据时代下数据之间也建立了更加紧密的联系。以互联网结构为载体的数据网络,经过计算机信息处理技术在现有的框架上也很难对数据进行实时的分析。以硬件为主要搭建基础的计算机网络存在一定的局限性,对未来网络的应用发展具有很大的局限性。因此,在软件工程的基础上需要不断创新和探索新型计算机网络框架技术,完善现阶段的网络数据处理技术,通过计算机网络打造开放式的网络传输结构,实现将计算机硬件基础与网络性意识处理二者之间的分离,对未来网络框架进行重新定义,将网络软件工程推展到更高的层面。在大数据时代的发展背景下,如何将计算机硬件与软件还有网络有效的结合为一体,构成一个大型的计算机网络结构,这是现阶段需要解决的问题。该项网络结构能极大地推进大数据环境发展,能够从根本上突破传统计算机信息处理网络的局限性,为计算机网络技术在软件软件工程中的发展创新了基础。此外,也解决了许多信息处理技术应用和开发中不足的方面,构建我国多元化的网络发展模式。
综上所述,随着大数据时代的到来,我国各领域的发展都将被大数据思想和软件工程技术创新所影响,人们的生产生活方式将受到前所未有的改变。在现如今的软件工程中,要进一步在实践中开展研究,对传统的软件理论进行革新。针对大数据体量、增速和多样的三种特征,以创新传统软件技术的眼光解决限制软件工程发展的各项问题,并结合现代网络发展的形式,在大数据时代下促进行业的发展。
[1]张浩,郭灿.数据可视化技术应用趋势与分类研究[J].软件导刊,(5):169-172.
[2]吴月红.分析软件工程化的基本形式和关键技术[J].电子技术与软件工程,,11:52-53.
[3]吴月红.分析软件工程化的基本形式和关键技术[J].电子技术与软件工程,2015(11):52-53.
▷ 软件工程自我评价 ◁
本项目是一个关于博客开发的系统,随着计算机技术的发展和普及,人们对资源共享的需求也在不断地增强。Blog是Weblog的简称,它是继E—mail、BBS、ICQ之后出现的第4种新的生活方式、新的工作方式、新的学习方式和新的网络交流方式。Blog主要应用于3个方面:
—是新的人际交流通道;二是以个人为中心的信息摘选和知识管理平台;三是以个人为中心的传播出版资源库。blog作为个人的一种学习工具,简单易用,广泛吸引着人们的兴趣。Blog现在在教育方面、商业方面、公司内部、校园领域等都得到了很大的发展,它将互联网从过去的通讯功能、资料功能、交流功能等进一步强化,使其更加个性化、开放化、实时化、全球化,把信息共享发展到资源共享、思想共享、生命历程共享。Blog已经成为一种继课件、积件、资源库、教育。主题网站等信息化教学模式之后,新的网络应用模式。它是应时代的.需求而兴起的,也是应时代的需求不断进步的。现在Blog是人们学习和交流的主要方法之一,得到社会的广泛欢迎和需求,所以我选该题目进一步研究博客,希望能通过Blog给人们带来更成熟的知识交流的平台,给人们带来更多的服务和便利,最大程度的满足人们的需求。
主要内容:实现用户的登陆和注册、博客的发布与管理、点赞和评论。
项目的实现使用前后端分离的结构实现。前端使用html5 + css3 + javascript语言进行编写。后端使用node。js实现。后端使用mvc设计模式。数据库使用Mysql。
项目可以实现用户的登陆注册、博客的发布和管理、发布评论和点赞。管理员可以实现文章的审核和管理、评论的管理、用户信息管理。
在实训中我学到了许多新的知识。实训是一个让我把书本上的理论知识运用于实践中的好机会,原来,学的时候感叹学的内容太难懂,现在想来,有些其实并不难,关键在于理解。在这次实训中还锻炼了我其他方面的能力,提高了我的综合素质。其次,实训中的项目作业也使我更加有团队精神。从那里,我学会了下面几点找工作的心态:继续学习,不断提升理论涵养、努力实践,自觉进行角色转化、提高工作积极性和主动性。通过四周的前端技术学习,我们对前端更加的了解,同时也掌握了使用编程语言开发前端的技能,同时在学习的过程中认识到理论知识和实践操作是不可分割的,要通过实践提升自己的知识掌握水平。这四周的生活过的充实且丰富,在学习的过程中对社会有了更加深刻的认识。
▷ 软件工程自我评价 ◁
本科生毕业设计(论文)开题报告格式与要求
一、开题报告必须采用计算机输入、打印,幅面A4,于左侧装订成册。
二、开题报告的内容应包括:
(1)选题的背景、目的和意义;
(2)毕业设计(论文)应用的原理和理论依据;
(3)毕业设计(论文)方案论证分析(指出课题难点和拟解决的关键问题,拟采取的研究方法及其可行性等);
(4)预期成果;
(5)工作进度计划;
(6)参考文献。
三、开题报告一式一份,由学生所在系存档。
四、具体样式要求:
字数:20xx字;
纸张:A4;
正文格式要求:宋体五号字。
附:毕业设计(论文)开题报告封面及内容框架
论文题目:xx
专业:xx
班级:xx姓名:xx学号:xx
指导教师:xx
开题日期:xx年x月x日
▷ 软件工程自我评价 ◁
个性特点:
本人有责任感、学习能力强、有上进心、具有很强的团队精神,善于与人沟通,表达能力良好;喜好编程开发,并且有一定的编程功底,在工作上积极负责,能够很好的根据项目计划书完成软件的开发。
技能方面:
1. 熟练使用Jsp,Javabean,Servlet,JDBC等Web开发技术进行开发
2. 熟练使用HTML、Javascript、Ajax等表现层技术,了解XML;
3. 熟悉Struts、Hibernate、Spring等开源框架,熟悉MVC三层架构开发模式;
4. 熟练掌握SQL Server /、Oracle数据库的操作;
5. 熟练使用Eclipse,能够使用PowerDesigner、Visio等建模工具;
6. 熟练掌握Tomcat,了解Jboss;
7. 了解C/C++等;
8. 在项目开发过程中善于交流,有良好的开发及协同团队工作能力。
▷ 软件工程自我评价 ◁
1.谈谈你对软件工具的理解,你用过什么软件工具
软件工具是指为支持计算机软件的开发、维护、模拟、移植或管理而研制的程序系统。它是为专门目的而开发的,在软件工程范围内也就是为实现软件生存期中的各种处理活动(包括管理、开发和维护)的自动化和半自动化面开发的程序系统。
开发软件工具的最终目的是为了提高软件生产率和改善软件的质量。
软件工具分为六类:模拟工具、开发工具、测试和评估工具、运行和维护工具、性能质量工具和程序设计支持工具。
应该是看对象来选择测试工具!比如:
功能测试工具:WinRunner
性能测试工具:LoadRunner
内存泄漏测试工具:Purify
单元测试工具:Junit
测试管理工具:TestDirector还有东软的bugbaseIBM开发的 rational。
2.什么是软件的可维护性:
软件可维护性即维护人员对该软件进行维护的难易程度,具体包括理解、改正、改动和改进该软件的难易程度。
决定可维护性的因素:
1.系统的大小
2.系统的年龄
3.结构合理性
可维护性的度量:
可理解性
可测试性
可修改性
可移植性
3.软件开发和写程序有什么不同?软件开发的内容是:需求、设计、编程和 测试 维护!
需求分析
软件需求分析就是回答做什么的问题。它是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。本阶段的基本任务是和用户一起确定要解决的问题,建立软件的逻辑模型,编写需求规格说明书文档并最终得到用户的认可。需求分析的主要方法有结构化分析方法、数据流程图和数据字典等方法。本阶段的工作是根据需求说明书的要求,设计建立相应的软件系统的体系结构,并将整个系统分解成若干个子系统或模块,定义子系统或模块间的接口关系,对各子系统进行具体设计定义,编写软件概要设计和详细设计说明书,数据库或数据结构设计说明书,组装测试计划。
设计
软件设计可以分为概要设计和详细设计两个阶段。实际上软件设计的主要任务就是将软件分解成模块是指能实现某个功能的数据和程序说明、可执行程序的程序单元。可以是一个函数、过程、子程序、一段带有程序说明的独立的程序和数据,也可以是可组合、可分解和可更换的功能单元。模块,然后进行模块设计。概要设计就是结构设计,其主要目标就是给出软件的模块结构,用软件结构图表示。详细设计的首要任务就是设计模块的程序流程、算法和数据结构,次要任务就是设计数据库,常用方法还是结构化程序设计方法。
编码
软件编码是指把软件设计转换成计算机可以接受的程序,即写成以某一程序设计语言表示的“源程序清单”。充分了解软件开发语言、工具的特性和编程风格,有助于开发工具的选择以及保证软件产品的开发质量。
测试
软件测试的目的是以较小的代价发现尽可能多的错误。不同的测试方法有不同的测试用例设计方法。两种常用的测试方法是白盒法测试对象是源程序,依据的是程序内部的的逻辑结构来发现软件的编程错误、结构错误和数据错误。结构错误包括逻辑、数据流、初始化等错误。用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果。白盒法和黑盒法依据的是软件的功能或软件行为描述,发现软件的接口、功能和结构错误。其中接口错误包括内部/外部接口、资源管理、集成化以及系统错误。黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。黑盒法。
维护
维护是旨在已完成对软件的研制(分析、设计、编码和测试)工作并交付使用以后,对软件产品所进行的一些软件工程的活动。即根据软件运行的情况,对软件进行适当修改,以适应新的要求,以及纠正运行中发现的错误。编写软件问题报告、软件修改报告。
4.什么是软件设计的”高内聚 低耦合”
内聚:一个模块内各个元素彼此结合的紧密程度
耦合:一个软件结构内不同模块之间互连程度的度量
对于低耦合,(模块的独立性)
一个完整的系统,模块与模块之间,尽可能的使其独立存在。也就是说,让每个模块,尽可能的独立完成某个特定的子功能。模块与模块之间的接口,尽量的少而简单。如果某两个模块间的关系比较复杂的话,最好首先考虑进一步的模块划分。这样有利于修改和组合.对于高内聚:
在一个模块内,让每个元素之间都尽可能的紧密相连。也就是充分利用每一个元素的功能,各施所能,以最终实现某个功能。
5.case在软件工程中的作用
CASE(Computer Aided(or Assisted)Software Engineering计算机辅助软件工程。CASE的一个基本思想就是提供一组能够自动覆盖软件开发生命周期各个阶段的集成的、减少劳动力的工具。CASE已被证明可以加快开发速度,提高应用软件生产率并保证应用软件的可靠品质。CASE工具由许多部分组成,一般我们按软件开发的不同阶段分为上层CASE和下层CASE产品。上层或前端CASE工具自动进行应用的计划、设计和分析,帮助用户定义需求,产生需求说明,并可完成与应用开发相关的所有计划工作。下层或后端CASE工具自动进行应用系统的编程、测试和维护工作。
除非下层CASE和上层CASE工具的供应商提供统一界面,否则用户必须编写或重新将所有信息从上层CASE工具转换到下层CASE工具。独立的CASE工具供应商愈来愈希望将它们的工具连接在一起建立统一的界面以减少用户不必要的开发工作。
CASE工具带来的好处
计算机专业人员利用计算机使他们的企业提高了效率,企业的各个部门通过使用计算机
提高了生产率和效率,增强了企业的竞争力并使之带来了更多的利润。
6.为什么要进行软件测试?常用的软件测试的方法有哪些?
软件测试的目的:尽可能发现并改正被测试软件中的错误,提高软件的可靠性。
软件测试方法主要包括单元测试,集成测试,系统测试,用户测试,回归测试。
还有就是自定而下,和自下而上的方法。
7.谈谈你对保证软件质量的技术和方法的认识? 1.作为一个软件质量保证人员需要良好的沟通能力,因为如果没有良好的沟通能力,很多问题都没有办法解决,原因很简单,测试人员发现了bug,开发人员或项目经理在怎么不理,但是他们都会想到,万一测试人员发现了bug而自己忽视了,那么就有可能成为软件里的一颗不定时地炸弹,那么作为一个开发人员或项目经理对bug的重视程度肯定相对比较高,至少要看测试人员发现的bug,但是QA就不一定了,因为QA保证的流程的正确的执行,相关人员就是认为流程不重要,只要我开发的产品没有问题那就没有问题,客户肯定不会关注我的流程,在加上古人的名言“结果说明了一切”,所以没有良好的沟通能力,一些问题将很难去解决,做起来就没有成就感。
2.个人感觉比沟通能力更重要的是,坚持原则,在遇到困难的时候,是不是还能坚持原则,在遇到项目组的种种不理不睬的时候,是不是还能坚持原则,在项目组不按照计划走的时候,是不是还能坚持原则。
3.个人心态,我工作三年的经历告诉我,如果开发和测试相比,开发是天堂,测试是地狱的话,但如果测试和QA相比的话,那测试就是天堂,QA就是地狱,所以心态很重要,在三年里我就锻炼成一个非常好的心态,随便怎么说CMMI没用,随便怎么说CMMI就是写文档,随便怎么说QA真烦人,我笑容依然灿烂,从容面对,而且一个QA要有坚定的信念,如果你都不相信过程能给项目开发带来好处,那你还指望谁能相信。
8.提高软件生产率有哪些手段?
1.挑选精干人员(管理 计划不好 技术搭配不当)
2.提高阶段效率 3消除人工阶段
4.减少重复劳动 5.建造简单产品
6.重用软部件库(已经存在的软件功能部件
9.什么是软件的可靠性和有用性
可靠性就是指软件运行的稳定性,可用性就是操作的便利性。比如一辆汽车,可靠性好应该归功于机械部分,可用性好则是内饰和中控系统的功劳。
10什么是软件规格说明?作用是什么?将其形式化的意义是什么?
11.什么是软件重用?实现软件重用的方法有哪些?
软件重用,是指在两次或多次不同的软件开发过程中重复使用相同或相似软件元素的过程。软件元素包括程序代码、测试用例、设计文档、设计过程、需要分析文档甚至领域知识。通常,可重用的元素也称作软构件,可重用的软构件越大,重用的粒度越大。
根据软件开发的不同阶段实现软件重用主要有四个途径:
抽象:对重用对象概括提炼,从而得到能全面描述侧重算法和数据结构的软件构件的各部分的描述。
选择:是对重用对象进行存放,匹配和检索的功能。
实例化:对数据类型中对象进行参数的提供 转换。
集成:
12.什么是软件移植?你认为构造一个工具实现windows到Unix的移植有意义吗?难大不? 软件可移植性是指代码可以在不同平台间移植,我们一般说的软件的可移植性指的是软件可移植性,简单的说就是指源代码移到不同的平台下(不同的操作系统,例如从Windows
下移到Linux下)时,需要修改的内容越少,移植性越好。要保证软件可移植性,就是少用或不用系统特有的东西,比如你用C语言编程,你可以使用C语言本身的库,但不要用
WindowsAPI函数,因为WindowsAPI函数在Linux下是没有的,如果想移植到Linux平台下,使用WindowsAPI函数的部分代码就要做出修改了。
▷ 软件工程自我评价 ◁
时间悄然而过。回首四年的大学校园生活生涯和社会实践生活,曾经有渴望、有追求、有成功也有失败,我不断地挑战自我,充实自己,为实现人生的价值打下坚实的基础,资深的经验。
学习就是学生的本能。在学生生涯中,作为一个有理想,有抱负的我,在此炼就了一颗“平常心、遇事沉着、冷静”的态度。我是勤奋好学、尊敬师长、团结同学、维护集体利益、乐于助人是我学习的标准。努力学好各门课程,凭着自己的兴趣与学习和实践,我已初步掌握了如:c语言、java、网页制作、图像处理、数据库应用、动画制作,计算机组装与维修,会计软件,多媒体应用、中英文录入、珠算、点钞等等相关的专来知识。平时我还涉猎了大量编程、网络管理与维护等知识。并且相信在以后理论与实际结合当中,能有更大提高。
四年的大学生活,使自己的知识水平、思想境界、工作能力等方面都迈上了一个新的台阶。我相信机遇定会留给有准备的人,正如是“千里马”定会被伯乐发现是一样,我也深信自己能胜任新时代的岗位要求。我将会像在大学里那般努力,为自己未来的精彩而不懈奋斗。
▷ 软件工程自我评价 ◁
其实测试新兵和测试高手之间的区别,往往是不会利用现有资源。在论坛中我们会看到很多新手不断的提问,但是有很多问题其实都是已经别人提过了,或者已经有解决方案的。所以经常会看到 “测试高手”的身影,并且不提问题,而且还能“锄强扶弱”,是测试新丁的救命稻草。好像是高手们无所不能,其实摘掉这层耀眼的光环,他们并没想像得那么厉害,只不过通过自己的搜索找到的答案,然后帮助其他人。当然也有很多人都是通过自学,然后在论坛中交流得到了很多经验,高手其实也是因为善于思考问题,亲自动手解决问题。所以动手和利用论坛资源的过程中他们也在不断提高。
很多时候看到论坛中有人提问,问题描述不清,很多人看了很困惑。发贴题目动不动请高手帮忙,救命之类的,好像天下大乱,世界末日。虽然这个题目很招人,但是无法让那些想帮助你的人帮你,因为题目不清晰,而且高手字样吓阻了很多人。其实问问题也是个思路整理的过程,描述清晰,让人理解清楚,才能望文知意知道你的当前发生问题的环境,才能让那些想帮你的人解决问题,否则给人无从下手的感觉,解决问题效率不高。
▷ 软件工程自我评价 ◁
软件工程是计算机类专业课程中一门非常重要的专业课程,具有很强的理论性与实践性。从工程意义讲,软件工程包括软件的设计、开发、测试、运行及维护等一系列工程活动;从课程结构讲,软件工程表面看是一门课程,实质上系统综合了计算机类的多门专业课程及项目管理类课程。因此,软件工程课程是一门既抽象又综合的工程类课程。软件工程课程不仅是一门学生学习难度较大的课程,也是众多任课教师较难进行有效课堂教学的课程。这主要源于传统教学方式存在问题。
目前,软件工程教学使用的教材大多偏向于理论知识介绍,主要讲解软件开发过程的各个步骤及使用方法,缺乏有效案例和工程项目支撑。同时,大多数学生没有软件开发方面的经验,对软件开发及相关概念只停留在记忆层面,只知道有这些方法,却不知道这些方法能用在哪些地方、什么时候用、怎么用,导致学生越学越迷茫,最终失去学习兴趣。
虽然整个软件工程的知识结构是完整的,但在进行课堂教学时,知识点的讲解是单个的,割裂了知识的连贯性。尽管知识点前后有一定连续性,但软件工程课程比较特殊。软件工程可分为若干子阶段,有需求分析、概要设计、详细设计和编码等子阶段。每个子阶段可以看作是一个里程碑,有自己的独立性,导致各子阶段对应知识点相对独立。因此,课程对应的各阶段知识点显得孤立、没有连续性,各章节知识点相互割裂,使学生无法系统完整地理解和掌握整个软件工程各阶段的知识点,无法形成整体的软件工程概念和思想。
软件工程是一门实践性很强的课程,但在传统教学中,多数以讲解软件工程的基本原理、方法和理论为主,抑或增加一些对应知识点的简单案例讲解,学生大多时候都是被动接收,没有参与内容或案例的分析讨论,对知识点的理解只停留在表面,导致学生缺乏运用这些知识解决实际问题的能力。虽然也有一定的实验教学要求,但一般只停留在编写软件项目文档的单一环节上。若没有进行实际项目演练,这种单纯文件编写的教学效果并不理想。
针对上述几点问题,要使软件工程课程教学积极调动学生主观能动性,改变以往学生感到难学、教师感到难教的局面,提出以项目为导向的软件工程课程教学模式,即以软件工程项目为导向,项目开发为主线,贯穿整个教学过程的教学新模式。具体内容包括:以项目开发为主线,辅以相应的理论讲解,学生在项目开发过程中运用软件工程中的理论知识分析和解决问题。这样既学到了软件工程的思想,又将理论知识运用到具体项目中,从而形成一个较完整的学习体系。该教学模式能取得积极成效的关键点在于工程项目的设计与选取。为使用于教学的工程项目能更好地提高教学效果,项目的选取可以从以下两方面进行考虑。
第一,与软件开发企业进行校企合作或联合办学,将企业内的项目划出一些子项目让学生开发,子项目在企业同时进行开发。每个开发阶段,可将学生的文档与企业项目文档进行比较,找出差距,使学生能更有针对性地学习和理解各阶段文档的重要性及写作规范。这种项目选择方式,使学生接触真实项目,且有实实在在的项目文档进行比较和学习,使学生的学习不再抽象。
第二,从自身需求或较熟悉的领域获得项目,如学生信息管理系统、学生宿舍管理系统、课程管理系统、图书管理系统等。这些项目学生都比较熟悉,与其生活和学习相关,易于理解,相对容易实施。然而,也存在一定的问题。由于这些项目需求较少,且是学生熟悉的领域,有些学生可能会抛弃软件工程思想,跳过前期的可靠性分析、需求分析、概要设计等阶段,直接进行编码阶段的项目编码,完成项目制作。这样,可能会让学生产生前期工作可有可无的错误观点。
目前,这种项目获取方式是高校常用的一种方式。因此,采用这种项目获取方式时,教师应根据学生的项目开发水平,适当增加项目难度,使学生运用软件工程的项目开发思想,顺利完成项目。
以项目为导向的教学模式在进行理论教学时,主要以教师的理论知识讲解为主,并在讲解过程中根据相关知识点提出问题,引导学生对该知识点进行分析和讨论。实践教学时,以学生的自主开发实践为主,教师起辅助、辅导的作用,从而锻炼学生自主分析问题、解决问题、团队协作、文档编写等综合能力。具体教学实施过程分为4个阶段。
在准备阶段,任课教师根据软件工程课程各章节教学内容的知识结构及内容间的联系,按上述项目设计与选取原则,制订若干工程项目课题。学生根据自身情况分成若干开发小组,每个小组从项目组中选择一个项目课题。条件允许时,可以一组一题,也可以两组一题。两组一题的`好处是两组间可以相互比较,取长补短。
理论讲解阶段是把软件工程课程的知识点按软件开发顺序进行讲解。在理论教学时,以一个实际项目作为教学案例,贯穿软件开发的整个过程,以体现软件工程课程各知识点的连贯性和体系结构的整体性,培养学生软件项目开发的全局意识。理论讲解时,不能一味讲理论知识,而要根据知识点,结合案例,多进行引导、分析和讨论。通过案例引出要讲解的知识点,然后结合知识点分析案例,再根据案例分析需要解决的问题,引发学生进行思考和讨论,待学生思考和讨论后,再对案例进行详细分析讲解,使学生了解如何在项目领域运用这些知识点,并运用这些知识分析自己的小组项目。
项目实践阶段以学生的工程项目实践为主,教师指导为辅。学生开学之初选定项目课题,在整个理论教学过程中随着理论知识的学习,对已选择的项目课题建立初步设计思路,接下来把思路付诸于实践。这个阶段以学生自主进行工程项目设计为主,教师只需在旁边进行指导和答疑。学生根据前期学习的理论知识,按照软件工程步骤,从需求分析做起,一直到项目测试,完成整个工程项目的开发过程,从而锻炼学生运用所学知识解决实际问题的能力。当一个完整的项目开发结束,学生会有很强的成就感,从而激发他们对项目开发的兴趣和热情,使他们更加深入地学习,实现知识扩展。
到学期末,要对各组项目完成情况进行验收。检查项目的完成情况,并对项目的总体完成情况进行评价。评价时,可采取小组互评的方式,由教师主导,小组之间相互评价,找出各自的优缺点,最后由教师根据各组项目的优点和不足进行评价。通过小组评价,学生能学习各组之长,取长补短,不断完善自己的工程项目课题。
以项目为导向的软件工程教学方式,使学生站在软件开发人员角度模拟完成项目,以项目开发过程为主线,在完成项目过程中学习软件工程的各个知识点。该教学方式可以让学生接触真实项目,并在完成项目时运用软件工程知识,达到学以致用的目的,使软件工程中枯燥抽象的概念变得真实有用,大大激发学生学习软件工程课程的兴趣,提高学习积极性和主动性,有效解决传统软件工程教学中存在的学生兴趣不足、概念不理解、理论与实践脱节等教学难题。
▷ 软件工程自我评价 ◁
甲方:
乙方:
上列双方当事人为了满足特许经营的要求,根据特许经营系统总部(______)的规定,经协商一致,签订以下竞业禁止协议:
第一条 竞业禁止
乙方承诺,除非经甲方事先书面同意,乙方在竞业限制期限内不得直接或间接从事下列活动:
(一)不得直接或通过其他实体在公司之外设立提供与公司产品或项目相同或类似的机构;
(二)不得直接或通过其他实体提供与公司生产的产品相同、类似或有竞争关系的产品,不得直接或间接从事与公司所从事业务相同、类似或有竞争关系的任何业务;
(三)不得向任何个人、合伙、公司、信托、协会或任何其他实体提供任何与公司业务相关的产品,或直接或间接提供任何服务(不论作为代表、代理人、独立承包人、顾问、咨询人或其他类似身份或通过其他关系);
(四)不得在任何竞争者中拥有利益(包括但不限于作为所有者、特许经营者、合伙人、股票持有人、委托人、成员、投资者、托管人或其他类似身份或通过其他关系);
(五)不得直接或通过其他实体以任何方式向公司的任何先前、现有及潜在的客户提供与公司提供相同或类似的产品或服务;
(六)不得以攻击公司的业务能力或其他任何方式损害公司的商业声誉和名誉。
第二条 禁止期限
竞业禁止的期限为合同履行期间。
第三条 禁止行业
(一)乙方保证未经甲方事先书面同意,乙方在甲方任职期间不得自营或者为他人经营、参与经营与甲方直接或间接竞争的任何业务。
(二)乙方保证在甲方的任职期内所使用的技术知识均与前受聘单位无关,不侵犯前受聘单位的技术秘密,如承担了对前单位的竞业限制和保密义务,则应保证在甲方工作期间不利用前单位的保密信息为甲方服务。
(三)在甲方任职期间,未经甲方事先书面同意,乙方承诺:不从事第二职业;乙方和乙方的关联人不在与甲方互为竞争的单位或与甲方有直接经济往来的其他经济组织和社会团体内接受或取得任何职务(包括但不限于合伙人、董事、监事、股东、经理、职员、代理人、顾问等),或向该类竞争性单位提供任何咨询服务(无论是否有偿)或其他协助;不得利用在甲方的任职以任何不正当手段获取利益,不得利用在公司的地位和职权为自己谋取私利。就本协议而言,乙方的关联人包括但不限于:1、乙方担任管理人员或作为合伙人或者直接或间接地拥有或以上权益的任何种类的机构;2、乙方拥有重大占有权益或乙方作为受托人(或类似的受托职务)的任何信托或其他财产。
(四)在甲方任职期间,乙方不得对竞争性单位进行任何形式的投资(包括但不限于持有股份或股份期权、借贷或组成合伙等),也不得以其它方式与甲方竞争或协助任何个人或单位与甲方竞争。如乙方的亲属在甲方的竞争性单位就职,乙方应如实向甲方人事部门告知上述事实。
(五)未经甲方事先书面同意,乙方不论因何种原因从甲方离职,离职后在甲方支付了竞业限制经济补偿金的期限内,都不得到甲方的竞争性单位就职。
(六)未经甲方事先书面同意,乙方不论因何种原因从甲方离职,离职后在甲方支付了竞业限制经济补偿金的期限内,都不得直接或间接服务于或自办与甲方有竞争关系的企业。包括但不限于:1、服务于、开办或经营与其在甲方公司所从事的主要工作一致或类似的其他类型的公司或企业。2、服务于、开办或经营与甲方公司有相同业务或相近似业务的公司或企业。3、服务于、开办或经营为上述公司或企业提供专业咨询或顾问服务的公司或企业或其他机构。
(七)乙方同意在其任职于公司期间及离职后的年内,乙方保证不会直接或间接地指使、引诱、鼓励、唆使或以其他方式试图影响公司的其他员工离职,去为乙方或任何其他个人或实体服务;
(八)乙方保证不会引诱公司的客户或以前的客户以攫取他们的业务而直接或间接获利。乙方在任职公司期间为履行其职责而采取的行动除外。
第四条 禁止地域
乙方承担竞业禁止义务的地域范围,包括乙方参与本协议规定的竞业禁止行为时,总部特许经营系统实际开展经营活动以及已经签署《特许经营合同》正在筹备经营的省(市、自治区、特别行政区)。
第五条 补偿
因乙方违约而终止合同的,乙方在承担竞业禁止义务的同时,无权要求补偿。经总部同意,可以放弃要求乙方承担竞业禁止义务的权利,不再给予乙方补偿。
在乙方履行竞业禁止义务期间,甲方终止特许经营合同的,由_________承担补偿义务。
第六条 支付
给予乙方的补偿,应当按月(季)支付,乙方应当按照甲方指定的时间到甲方财务部门领取补偿。甲方不按时支付的,乙方应当向总部申诉,总部应当在_________个月内予以解决;超过期限仍未解决的,乙方不再承担竞业限制义务,否则,不得免除乙方承担的竞业限制义务。
第七条 总部保留权利
乙方依照本协议承担的竞业禁止义务及其他义务,均视为总部享有相应的权利。在甲方终止与总部的特许经营合同关系后,以及总部认为有必要时,可以直接依据本协议向乙方主张权利。
当甲方为分部或加盟店时,总部有权对乙方违反本协议规定的违约行为,直接行使赔偿请求权,除非乙方已经按照本协议的规定全部履行了赔偿义务。
未经总部同意,甲方不得放弃对乙方的赔偿请求权,否则,其行为无效,总部有权依照本协议主张甲方放弃的全部或部分权利。
第八条 监督
甲方有权对乙方承担竞业禁止义务的情况进行监督与检查,乙方应当履行下列义务,配合甲方的监督与检查:
(一)每季(年)提供一份其人事档案存档机关出具的证明其劳动关系的证明文件;
(二)每季(年)提供一份证明其任职单位为其交纳养老保险的证明文件;
(三)_________。
义务人未能按时提供上述证明文件或履行其他义务的,甲方有权停止给予乙方补偿,且不免除乙方的竞业禁止义务。
第九条 违约责任
乙方违反本协议规定的竞业禁止义务,其所得收入归甲方所有,并应赔偿损失。赔偿损失的数额,为乙方所参与的业务在违约期间所获得的利益,或者甲方及特许经营系统在违约期间所受到的损失,包括为制止、调查违约行为所支付的合理开支。
前款所称在违约期间所得利益,或者在违约期间所受损失难以确定的,根据违约行为的情节给予_________万元以上_________万元以下的违约金。
乙方违反竞业禁止义务的,甲方有权要求其承担违约责任,并停止给予乙方补偿。乙方在承担违约责任后,仍应继续履行竞业禁止义务,且无权要求甲方继续给予补偿。
第十条 协议文本
本协议使用总部统一制定的文本,不得擅自更改;擅自更改的,其内容无效,仍应按原协议文本的内容执行。
本协议一式_________份,由甲方、乙方及_________各存一份,具有同等法律效力。
甲方(签章):
法定代表人:
________年____月____日
乙方(签章):
法定代表人:
________年____月____日
▷ 软件工程自我评价 ◁
我最初参加测试工作的时候,不知道什么是软件测试,集成测试和系统测试的概念经常混淆,cmm是什么就更加不知道了。那时候最简单的开关机也是通过直接拔插电源完成,安装系统对我来说简直是有史以来人类的最高技能,对于那些拿着螺丝刀安装机器的人就认为是宇内超级高手,身具杀人于无形之绝世秘技。拿破仑说不想当将军的士兵不是好士兵,我最初的梦想就是想成为软件测试的高手,傲视天下。所以不断偷师,总结经验,自认为掌握了成为高手的几个秘技,这几年混迹“江湖”还算无往而不利。不敢独享,望与吾辈测试人员切磋,早日总结成功密技之大成,助新进人员早日入门,也算不愧对东北活雷锋的称号。
刚参加工作面对浩瀚的网络世界,当时如刘姥姥进大观园,什么都新奇,什么都想要,从网上下载很多源程序的代码,软件技术文档之类,恨不得把所有的'好东西收集到手中,其实有些在他人看起来就是垃圾一堆。当时觉得有了这些“武林秘籍”,成为高手指日可待。最初参加工作由于自己工作努力有幸转为开发,加入项目组后我的习惯还是没有改,反而变本加厉,手中的资源更加多,上网的时间更加频繁。更多面试自我介绍范文请进:
一次项目经理分配任务,觉得依靠手中的秘籍加上自己的“聪明才智”很快会完成,不料短短的时间,所有的一切变成了马奇诺防线。解决问题很慢,思路不清晰,项目经理在对我施压的过程中教会了我终身难忘的一招,学会利用网络寻找要解决问题的答案,从此google成了我的最爱,关键字成了我变化的招数。在软件测试工作中,他帮我解决了很多疑难问题,解答了很多令我迷惑的地方。也是我帮助测试同行解决问题手段之一,很多软件测试新手,甚至老手都没有意识到自己手上就握有“无敌秘籍”,所以只要你耐心找,答案就在身边。
每次搜索某个文件,如果只给出一个单词进行搜索,经常会出现成千上百万计的匹配网页。然而如果再加上一个单/ziwopingjia/词,那么搜索结果会更加切题。
一般我在网页搜索引擎的时候,选择一些可以表达我要查找内容的关键词组,用来缩小搜索范围,从而找到搜索结果是最好的办法。运用词组搜索涉可以先先简单地输入一个问题作为词组搜索,如果仍然找不到合适的,那就用多个可以表达要查询内容的关键字进行查询。
▷ 软件工程自我评价 ◁
。2、 怎样提升这个工具的易用性?
答:把这个工具设置成图形界面,用户只需输入文件名或者在文件对话框中选择文件即可点击运行输出结果。
本题只需要提供思路文档,不需要程序代码。
二、给定一个自然数n,试完成如下程序,它输出不大于n的所有素数(质数)。
1、 请提供程序代码,以及思路文档。
答:思路:求出一个数j的平方根sqrt(j),将j除以2~sqrt(j)之间的数,只要除尽一次,就不是素数,之后数j加2。
#include
#include
void main()
{ int N=1000;
int i,j,k,m=0;
for(j=1;j
{ k=(int)sqrt(j); /*求平方根*/
for(i=2;i<=k;i++)
{ if(j%i==0) /*只要除尽一次,就不是素数*/
break;
}
if(i>k) /*/除到k一直没除尽,是素数*/
printf(“%d “,j);
}
}
3、 请分析一下可以从哪些角度可优化该程序的时间性能?
答:偶数(除了2)不能为素数;判断一个数j是否为素数,只要将其除以2 ~ sqrt(j)之间的素数,更进一步,没有必要对所有奇数进行试除,只需对所有sqrt(j)以内的所有质数试除就可以了。
三、高精度乘法
用户输入两个不大于 256 位的正整数,由程序进行乘法运算,并显示运算过程与结果。例:
输入:12, 32
输出:
12
× 32
————————
24
36
————————
384
#include
#include
#include
#define max 256
int A[max],B[max];
int Alen,Blen;
int S[max *2];
void InputAB() //输入A B
{ int c;
while (!isdigit(c = getchar())) ;
Alen=1;
A[0]= c – ’0′;
while (isdigit(c = getchar()))
A[Alen++] = c – ’0′;
while (!isdigit(c = getchar())) ;
Blen = 1;
B[0] = c – ’0′;
while (isdigit(c = getchar()))
B[Blen++] = c – ’0′;
}
void Print(int Array[], int len) //输出数组
{ int i=0;
while ((i
i++;
if (i == len)
{ printf(“0 \n”);
return;
}
for ( ;i < len; i++)
printf(“%d”,Array[i]);
printf(“\n”);
}
void Mul(int Array[], int len, int n, int Result[], int zeros) //相乘
{ int i;
for (i = len – 1; i >= 0; i–)
Result[i+1] = Array[i]*n;
Result[0] = 0;
for (i = len; i > 0; i–)
{ if (Result[i] >= 10) //大于10的进位
{ Result[i-1] +=Result[i] / 10;
Result[i] %= 10;
}
}
for (i = 1; i <= zeros; i++)
Result[len+i] = 0;
}
void Add(int total[], int tlen, const int add[], int alen) //各行相加
{ int i,k = tlen;
while ((tlen > 0) && (alen > 0)) //相加
{ tlen–;
alen–;
total[tlen] += add[alen];
}
for (i = k – 1; i>=0; i–)
if (total[i] >= 10) //大于10的进位
{ total[i - 1] += total[i] / 10;
total[i] %= 10;
}
}
void main()
{ int i,j;
int temp[max*2];
InputAB();
Print(A,Alen);
printf(“*”);
Print(B,Blen);
printf(“—–\n”);
for(i = Blen-1; i >= 0; i–)
{ for(j=Blen-i,j>=0;j–) //输出空格
{ printf(“ ”);
}
Mul(A, Alen, B[i], temp, Blen – 1 -i);//B中的一个数与A的所有数相乘
Print(temp, Alen + 1); //输出相乘过程中的每行
Add(S, max*2, temp, Alen + Blen – i);//每行相加
}
printf(“—–\n”);
Print(S, max*2);
}
}四、输入一个N进制数,将其转换成 M 进制数(1
#include
#include
#include
#include
#include
using namespace std;
int main()
{
char digit[16] = {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F};
cout <<”输入待转换整数: “;
char c;
char a[80];
char b[80];
int i=0,j=0,length;
while ((c = getchar())!=’\n’) //输入
{a[i]=c;
i++;
}
length=i; //输入的数的位数 0~i-1
for(j=0;j
{ if( a[j]>=’0′&&a[j]<=’9′ )
b[j] = a[j] – ’0′;
else if( a[j]>=’a'&&a[j]<=’f’ )
b[j] = a[j] -’a’ +10;
else if( a[j]>=’A'&&a[j]<=’F’ )
b[j] = a[j] -’A’ +10;
else
return FALSE;
}
cout<<”输入的'数是多少进制N:”;
int n
cin>>n;
assert((n>1)&&(n<=16));
int num=0;
for(i=0,j=length-1;j>=0;j–,i++)//输入的数转成十进制
{num+=b[i]*pow(n,j);
}
cout <<”转换成进制数M: “;
int m;
cin >>m;
cout <
assert((m>1)&&(m<=16));
stack stk;
char remain;
while (num!=0)//转成M进制
{
remain = digit[num%m];
stk.push(remain);
num/= m;
}
cout <<”结果: “;//输出结果
while(!stk.empty())
{
cout <
stk.pop();
}
cout <
return 0;
}
五、选答题(以下任选一题):
1、构建一个应用程序,它可以显示剪贴板上所有可用的格式,并且将常规格式(如文本、图形)显示出来,
资料共享平台
《金山软件软件工程笔试题》()。2、构建一个应用程序,它用于显示一幅透明位图。即,给定一个背景图、一个待显示位图和一个对应于该位图的屏蔽(mask)图,将位图未屏蔽部分显示在背景图上。
3、构造一个服务端程序和一个客户端程序。它用于通过网络将文件从服务端传送到客户机(类似FTP)。或者直接是一个FTP客户端程序也可,不能使用FTP控件。
4、构造一个应用程序,它定时获取CPU利用率,并且以折线图的方式动态显示出来。
5、利用UDP把一个文件从一台机器传送到另一台机器。
6、在某文件中查找指定的单词,把所有包含此单词的文本行打印出来,并对找到的单词作着重显示(如下划线或其他显示方式)的处理。
6:
#include
#include
#include
#include
#include
#include
using namespace std;
int word_find(const char t[], int m, const char s[], int n ,vector& colpos)
//查找单词,char t[]为单词,m单词长度,char s[]为行,n行的长度,colpos记录找到单词所在的位置
{ int i=0,j=0,cnt=0;
while(j
{ if(i >= m)
{ if(!isalpha(s[j])&&!isalpha(s[j-m-1]))//字符串前后不是字母时是单词
{ colpos[cnt++] = j – m ;//单词的第一个字符所在的行下标
i=0; //单词串下标重置为0
if(cnt == colpos.size())
colpos.resize(cnt * 2);//长度重设为原来2倍
}
else { i=0; }
}
else if (s[j]==t[i])
{ ++i;++j; }
else
{ j=j-i+1; i=0; } //下标后退重新开始匹配
}
return cnt;//返回查到的个数
}
int count_string(string source, string target, vector& colpos)
{ int find_cnt = 0;
find_cnt = word_find(target.c_str(), target.size(), source.c_str(),source.size(),colpos);
return find_cnt;//返回查到的个数
}
int main()
{
string file_name, line;
vector lines;
lines.resize(10);
cout << “Input the file name:”;
cin >> file_name;
ifstream in_file; //打开文件
try{
in_file.open(file_name.c_str());
if(!in_file)
throw(file_name);
}
catch(string file_name)
{ cout << “Fatal error: File not found.”<
exit(1);
}
int line_count = 0;//文件行数
do{
getline(in_file, lines[line_count]);
line_count ++;
if(line_count == lines.size())//未结束时行数设为原来2倍
lines.resize(line_count * 2);
}while(in_file.eof()==0);
string tag;//要查找的单词
vector colpos;//单词中第一个字符所在位置
colpos.resize(10);
do
{
cout << “Input the word you want to find(# for quit):”;//输入要查找的单词#结束
cin >> tag;
if(tag == “#”)
{ break; }
int count = 0, line_no = 0 , inline_count;//line_no是行号,第?行
for(line_no = 0 ;line_no < line_count ; line_no++)
{
inline_count = count_string(lines[line_no], tag, colpos);//每行查到的个数
count += inline_count; //查到的总数
if(inline_count > 0)
{
cout << “在第” << line_no<<”行找到”<< inline_count<<”个” <
cout << ” ,所在位置是 “;
for(int i = 0 ;i< inline_count ;i++)
{
cout << colpos << ‘ ‘;//输出位置
}
cout << endl;
cout << lines[line_no] << endl;//输出行,未作着重显示
}
}
}while(tag != “#”);
in_file.close();
▷ 软件工程自我评价 ◁
通过短暂的课程设计,我深有感触。一开始构想时只有大体的思路,忽略了一些细节,因此在我真正做设计时发现有很多错误,有的时候要解决一个错误会花上很多时间,在做的过程中,有很多错误意想不到,有的错误却犯得很幼稚,不过这样对自身的排错能力能得到很大的提高。数据库连接错误,找了半天才发现密码不能用char型。
这些细小错误让我深受感慨,它告诉了我编程细心重要,养成一个好的编程习惯更重要。这次项目的完整开发,让我有项目初步的思想,这次项目的开发让我把软件生成的流程从信息的收集,再写需求,再完成后台设计到编写代码,到测试,让我知道还有很多地方的不足。更重要的是团队之间的合作,相互之间的交流,有时一个问题总是想不通,但每个队友负责的部分不同,所以想法也不同,交流之后,便有了新的思路。
这次课程设计的时间很紧迫,再加上各方面的经验不足,也遇到很多问题,这个网上机票订票系统还有很多地方没有完善,希望老师能谅解。总的来说,这次课程设计对我很有帮助,我发觉老师上课讲的很多东西对我们都很有用,让我受到不少的启发。
▷ 软件工程自我评价 ◁
忙碌的大学生活就在悄然中过去了,但它已成为我人生美好记忆的一大部分。这些日子有成功的喜悦,有失败的彷徨,但却把我培养成了一个现代大学生,使我在各方面的综合素质都得到了提高,为以后的人生打下了坚实的基础。开辟了一条属于我自己的道路。
大学四年,在专业技能上,为适应社会发展的需求,我认真学习各种专业知识,发挥自己的特长;挖掘自身的潜力,结合每年的暑期社会实践机会,逐步提高了自己的学习能力和分析处理问题的能力以及一定的协调组织和管理能力。
大学期间,通过自学心理学我对自己主观的心理世界有了一个客观的认识,认清了自己性格中的优点和缺陷,明确了自己的潜力所在,为提升自我,超越自我指明了方向,心理学教会我在不丧失自我的前提下,从他人的角度来思考问题和看待问题。心理学教给我如何适应纷繁社会,在激烈的竞争环境中迅速成长的技能与技巧,让我能够抱着一份平淡与坦诚的心态去面对现实中的人与事。
在社会实践上,我利用课余时间经常阅览各类的书籍,并参加了软件测试工程师的培训并取得高级工程师证书,成绩优秀。这份职业需要有智慧、毅力和恒心。在当今这个快速发展的信息时代,我们只有不断汲取新知识,才不会落伍,才可能战胜自己。
本人思想端正,能吃苦耐劳,有崇高的理想和伟大的目标,注重个人道德修养,具有良好的生活作风,乐于助人,关心国家大事。
在课余时间,本人经常参加体育锻炼,增强身体素质,也热爱活动,积极参加学校开展的各项文体活动,参加社会实践,继承和发扬了艰苦奋斗的精神,也参加了校文学社和书法协会,丰富了课余生活,使自己在各方面都得到了相应的提高。
坚信通过不断地学习和努力,自己可以成为一个有理想、有道德、有文化、有纪律的学生,以优异的成绩迎接挑战,为社会主义建设贡献我毕生的力量。
▷ 软件工程自我评价 ◁
参加软件测试工作后,随着工作经验的增长自我感觉越来越好。在公司里也逐渐受到同事领导的重视,一次针对公司的新的软件功能进行测试的时候,像往常一样“随手”测试出了几个bug,然后“仔细”的填写了bug单(这个bug的现象已经出现了很多次了)。这时候测试经理走过来,重新复查了一下填写的bug。他在重现我的bug的过程中,简化了我的输进变化,bug神奇的又出现了,同样的现象,他封闭软件重新变化输进,扩展出10几个变化后,软件不动了,内存不断上升。终于他找到了产生软件的bug的原因,然后对我说“寻找bug要正确定位,我们开发团队是一个整体,时间是等量的,时间不在你身上浪费,就是在他身上浪费。假如测试职员每次发现的bug描述不清楚,并且多个题目潜伏的错误原因是一个,固然操纵可能稍微有些变化。这样开发职员在重现bug的时候他要调试跟踪判定,很花费时间,而且效率低。假如测试职员发现bug的时候多动手可以更加正确的定位bug步骤和原因,给开发职员最精确的步骤和正确的描述,这样整个团队才能高效,所以需要大家协作!。”
▷ 软件工程自我评价 ◁
实习背景
为了将理论用于实践,巩固所学知识,提高自己发现问题并用所学知识分析问题和解决问题的能力,锻炼自己的工作能力,适应社会能力,自我管理能力,了解目前软件的应用情况,需求情况,发展方向及前景,为顺利毕业做好充分的准备,也为自己能顺利的与社会环境接轨做好准备.此次实习由学校统一组织安排,分两个阶段,两个方向进行系统的实习。
实习要求
1、 要求学生在实习过程中认真学习技术知识,积极与指导老师和同学配合;
2、 在前期,按时到勤,认真学习。积极做好实习日志,能够理解当天的内容。对技术的理论知识要及时实践;
在后期,积极与同学沟通,认真完成项目要求的内容。在这个过程中要与老师同学多做沟通,通过探讨项目的解决方案以及进展。
实习时间:20xx 年 8 月 5 日至20xx 年 9 月 23 日.
实习环境
实习单位名称:加拿大维多利亚加中教育集团
实习地址:江苏无锡惠山区智慧路18号无锡惠山外包软件园
实习基地概况:加拿大维多利亚教育集团位于加拿大经济中心多伦多,集团多年来以教育产业为主导,业务得到全面延伸。10年间由1999年创建的培训中心,发展成为现在拥有高等大专学院、高端职业教育研发中心、人力资源公司、英语培训中心、移民留学服务中心及中国区集团等六个实体的跨地域性综合连锁教育集团,真正实现了“教育研发培训就业”一条龙服务。 10年间,维多利亚教育集团,获得了来自加拿大政府和社区的一致赞扬。殊荣包括:“杰出华商奖”、“最佳社区贡献奖”、“最佳社区服务奖”、“帮助移民特殊贡献奖”等。特别是10年连续举办了500多期公益讲座,内容涉及简历、面试、北美文化、英语、情商、心态调整等诸多讲座,让3万多人受益匪浅。维多利亚教育集团已经和政府、银行及多家世界500强的企业建立学员直接录用关系,至今已举办过300多期现场招聘会,帮助1万多华人移民成功就业。同时,集团更是十年如一日的为“加拿大家庭援助协会妇女服务中心”、“北美华人语言与文化交流协会”、“华人高级软件管理协会”、“加拿大华人青年联合总会”、“环球爱心教育基金会”等五个和移民生存直接相关的非盈利组织提供了直接而有力的支持。维多利亚教育集团拥有雄厚的师资力量。十年来聚集了一大批拥有北美数十年工作经验,并在北美主流社区拥有巨大知名度的名师团队,形成全球少有的、以华裔顶尖人才为主的高端人才聚集地。
师资优势:名师出高徒,近百位海外高端师资涵盖了IT产业、金融服务、财务服务、物流服务、英语、企业文化等领域;
实训体系与模式的优势:实训案例、文档来源于北美外包企业;实景化仿真企业工作环境、工作流程、贯穿企业文化、规范、标准、开发文档;
海内外互动的优势:外包人才的培养强调“外包不见‘外’”,只有让培养出来的人才能够深刻理解发包方的文化、规范、流程、标准,成为‘不见外’的外包人才,才能与发包方融为一体,很好地完成外包任务。海外实训是外包人才培训的有效途径。加中拥有海外实训基地,已建立起高清晰远程视频互通平台,实现了海内外师资的互动、海内外文化的交流、海内外技术的撞击、海内外模式的互通,实景化、高仿真的再现外包流程。
实习内容
2.1 实习过程
实习的过程大致可以分为两个阶段:
第一阶段、维多利亚加中实习阶段(江苏无锡);
第二阶段、在校实习阶段。
第一阶段
1、8月8日—8月18日:主要完成了SAP程序设计基础知识相关培训。
2、8月19日—8月27日:主要完成了Java相关基础培训。
3、8月23日—8月27日:主要分组完成项目。
4、8月28日:项目答辩。
第二阶段
1、9月2日—9月9日:主要完成MTA 98-361(Software Development Fundamentals)相关培训和考试。
2、 9月10日—9月16日:主要完成MTA 98-364(Database Administration Fundamentals)相关培训、考试以及项目分析与设计。
3、9月17日—9月22日:主要完成MTA 98-363(Web Development Fundamentals)相关培训、考试以及项目的编码、测试与整合等。
4、9月23日:项目答辩。
2.2 实习内容
项目一:员工工资管理系统
该项目我们通过ABAP语言与JAVA语言分别实现同样的功能,但是两次的具体项目需求是一样的,我在该项目中主要担任数据库设计以及员工基本信息管理模块的代码实施,现对该项目做如下介绍:
在一个优秀企业的生存和发展过程中,财务管理已经越来越占据重要地位,对员工工资的科学、高效的管理的财务管理基础模块之一。员工工资管理是现代企业的战略性管理方式,也是企业发展的最关键的因素。一个企业能否健康、正常的运行、发展,很大程度上取决于企业的财务管理方式,取决于对员工工资管理的效率。
ISAP-MIS介绍
员工工资管理系统(Employee Salary Management System),是指组织或社会团体运用系统学理论方法,对企业的员工工资管理方方面面进行分析,规划、实施、调整,提高企业员工工资管理水平,使人力资源更有效的服务于组织或团体目标。
主要功能
实现对员工基本信息表和员工奖金明细表的增、删、查、改、排序等操作。
实现对员工基本信息表和员工奖金明细表的多表连接查询操作。
具体说明
建立员工基本信息表和员工奖金明细表并且实现两个表的关联;
按照多种要求实现数据增加/插入功能;
按照多种要求实现数据记录的删除功能;
按照多种要求实现数据记录的修改功能;
按精确查询实现搜索操作;
按照某一关键字进行升序或降序记录。
项目优势
基于SAP的模式,运用系统学理论方法,对企业的工资和奖金进行分析,规划、实施、调整,全面提升企业工资管理的效率和质量。
项目特点
身份权限验证、下拉列表的应用、为输入参数建立搜索帮助、采用经典的三层处理模式理念,旨在实现业务和数据的独立,保证了系统的可行性、可靠性,提高了系统的易维护性、可扩充性。
ISAP-MIS分析
系统设计目标
基于SAP工资管理系统的设计目标是通过规范、整合、集成员工基本信息数据、员工奖金明细等信息,打造员工工资管理系统平台,实现管理业务的规范化、数据的标准化、信息管理的现代化,全面提升员工工资管理的效率和质量,达到对公司财务管理的优化配置。
用户权限验证管理
系统实现了用户权限管理功能,区分不同的用户提供不同操作权限,并可对用户进行密码初始化操作。
一般授权:只能查询本人基本信息,奖金信息
特殊授权:可以查询本部门的员工基本信息,奖金信息,工资汇总信息汇总。(构想待定)
VIP授权:可以查询所有部门员工的基本信息,奖金信息,工资汇总信息。
管理员授权:可以查询所有部门员工的基本信息,奖金信息,工资汇总信息,并对相关数据进行操作。
根据条件查询、增加、删除、修改功能管理
用户经过权限验证进入系统后可以根据自己的需要查询特定的信息,具有管理员授权的用户可以进行增加、删除、修改功能。
项目二:家校通
本系统总体功能上分为前台和后台两大部分:前台是B/S结构的Web应用系统,供普通用户浏览、使用;后台是C/S结构的Windows应用程序,供管理员维护系统。
任何用户都可以在前台用户系统进行登录使用。欲进入本系统必须有权限(账号及密码),没有被授权的用户不能进入系统。前台可以进行信息维护、信息查询、留言管理、资料下载等普通操作。
授权的管理员才能进入后台管理系统进行相关维护操作。后台能进行用户信息管理、公共信息管理等操作。
实习总结
通过这段时间的实习,学到一些在学校里学不到的东西。因为环境的不同,接触的人与事不同,从中所学的东西自然也就不一样。整个过程中,我每天都有很多新的体会,想说的很多,总结起来有以下几点:
1、 多听、多看、多想、多做、少说
太对决定一起,当有一份新的任务给你时要知道自己能否胜任这份工作,关键是看你自己对待工作的态度。态度对了,即使自己以前没学过的知识也可以在工作中逐渐的掌握。态度不好,就算自己有知识基础也不会把工作做好,实习项目刚开始时,根本不清楚该做些什么,并且这和我在学校读的专业没有必然的联系,刚开始我觉得很头痛,可经过工作过程中多看别人怎样做,多听别人怎样说,多想自己应该怎样做,然后自己亲自动手去多做,终于在短短几天里对工作有了一个较系统的认识,慢慢的自己也可以完成相关的工作了,光用嘴巴去说是不行的,所以,我们今后不管干什么都要端正自己的态度,这样才能把事情做好。
2、虚心学习
在这次实习过程中,我们碰到很多问题,有的是我们懂得的,也有很多是我们不懂的,不懂的东西我们要虚心向老师同学请教,当别人教我们知识的时候,我们也应该虚心的接受,不要认为自己懂得一点鸡毛蒜皮就飘飘然。
2.3 主要成果
项目:学生管理系统
主要技术:Jsp+Servlet+Mysql
开发工具:MyEclipse+Dreamweaver+Mysql数据库等
组员:胡齐文(组长),李维千,李瑶,扬帆,蔡欣岑,赵梦娇,杨军柏,王波波
主要功能:校级管理员主要完成对院级管理员的管理、对学校学生的管理以及个人信息的完善、修改等;院级管理员主要完成对本院的学生的信息管理以及个人信息的完善、修改等;学生主要完成对个人信息的管理。
项目:SWPU网上商城
主要技术:Ext.Net+Asp.Net+SQl Server 20xx
开发工具:Microsoft Visual Studio20xx+Microsoft SQL Server 20xx
组员:
主要功能:管理员主要完成对商品的管理、对订单的管理以及个人信息、注册会员信息的管理。注册用户主要管理自己的订单,购买商品等。
微软认证:通过微软MTA 98-361(Software Development Fundamentals)和MTA 98-364(Database Administration Fundamentals)认证。
总结
光阴似箭,日月如梭。为期40多天得实习生活已经结束,生产实习是学生大学学习很重要的实践环节。主要是让我们在毕业前提前感受一下工作的环境,体验一下作为工人的感觉,为以后的工作打基础。作为一个大三已经结束,准备迎接找工作的学生来说,有一次亲身实习的机会是多么的可贵。回首整个实习过程,我每天都有很多新的体会,想说的很多,我总结下来主要有以下几点:
1. 团队意识是完成项目的必要保证
在我们两个项目完成的过程中,我充分体会到了团队合作的重要性。特别是在自己担任项目组长分配大家完成项目期间,很难想象但是如果大家不团结一致的结果。期间通过大家的团队合作,项目组高效且快速的完成的项目,当然最重要的是大家都参与了项目的开发。
2.熟练的专业技能
提供最佳的解决方案是我们努力的方向。ERP的核心管理思想就是实现对整个供应 链的有效管理,我们在梳理了企业的各项业务之后,需要做的是提供一个最佳的解决方案,来帮助企业实现更加有效的管理,我们要精通SAP系统,掌握行业专业知识,更要能融入最适宜的管理理念,这对顾问而言,无非是一个很高的要求,需要我们不断地学习,不断的在一个个项目中去积累经验,但这也正是我们为之奋斗的目标。
3.加强信心,坚持下去
虽然感觉自己学的还可以,但真的工作起来却感觉力不从心。有时候遇到事情总会着急,慌张。平常信心不足,总感觉自己做不好。或许还需要一段时间的磨练吧。只有自己的知识和能力都在提升,相信自己总有一天会很勇敢的表现自己。
▷ 软件工程自我评价 ◁
参加软件测试工作后,随着工作经验的增长自我感觉越来越好。在公司里也逐渐受到同事领导的重视,一次针对公司的新的软件功能进行测试的时候,像往常一样"随手"测试出了几个bug,然后"仔细"的填写了bug单(这个bug的现象已经出现了很多次了)。这时候测试经理走过来,重新复查了一下填写的bug。他在重现我的bug的过程中,简化了我的输入变化,bug神奇的又出现了,同样的现象,他关闭软件重新变化输入,扩展出10几个变化后,软件不动了,内存不断上升。终于他找到了产生软件的bug的原因,然后对我说"寻找bug要准确定位,我们开发团队是一个整体,时间是等量的,时间不在你身上浪费,就是在他身上浪费。如果测试人员每次发现的bug描述不清楚,并且多个问题潜在的错误原因是一个,虽然操作可能稍微有些变化。这样开发人员在重现bug的时候他要调试跟踪判断,很花费时间,而且效率低。如果测试人员发现bug的时候多动手可以更加准确的定位bug步骤和原因,给开发人员最精确的步骤和准确的描述,这样整个团队才能高效,所以需要大家协作!。"
▷ 软件工程自我评价 ◁
学生姓名:
朱兵
学号:
011122152
专业:
计算机应用与维护
设计题目:
基于WEB的销售管理系统----ASP开发
指导教师:
樊宁
20xx年4月16日
开题报告填写要求
1.开题报告作为毕业设计(论文)答辩委员会对学生答辩资格审查的依据材料之一。此报告应在指导教师指导下,由学生在毕业设计(论文)工作前期内完成,经指导教师签署意见及教研室审查后生效;
2.开题报告内容必须用黑墨水笔工整书写或按教务处统一设计的电子文档标准格式(可从教务处网址上下载)打印,禁止打印在其它纸上后剪贴,完成后应及时交给指导教师签署意见;
3.学生查阅资料的参考文献应不少于10篇(不包括辞典、手册);
4.有关年月日等日期的填写,应当按照国标GB/T 7408—94《数据元和交换格式、信息交换、日期和时间表示法》
规定的要求,一律用阿拉伯数字书写。如“20xx年4月26日”或“20xx-04-26”
▷ 软件工程自我评价 ◁
软件工程的定义:软件工程是将系统化的,规范化的,可度量的方法应用于软件的开发,运行和维护过程,即将工程化应用于软件中的方法的研究。
软件工程的定义2:开发运行,维护和修复软件的工程方法。
软检策略思想:软件复用,分而治之,优化折中。
软件的生命周期:软件生命周期是指一个计算机软件从功能确定,设计,到开发成功投入使用,并在使用中不断地修改,增补和完善,直到停止该软件使用的全过程。
它包括制定计划(可行性与计划研究),需求分析,设计,程序编码(实现),测试及运行维护6个阶段。
软件开发模型:瀑布模型,快速原始模型,增量模型,螺旋模型,喷泉模型,组件复用模型。
软件开发过程:(1)定义;(2)开发;(3)验证;(4)维护。
软件开发的基本方法:传统的结构化方法,面向对象的方法。
可行性研究的主要任务:
可行性研究的主要任务不是具体解决系统中的问题,而是以最小的代价在尽可能短的时间内确定问题是否值得解决,是否能够解决。
可行性研究主要包括以下几个方面:1,技术可行性(风险分析,资源分析和技术分析);2,经济可行性(成本-效益分析);3,社会可行性(社会可行性是指开发后的系统能否得到社会的认可)
系统模型:物理(框图),逻辑(流程图);
系统流程图在可行性分析阶段使用。
成本—效益分析:
成本—效益分析的目的是从经济角度来评价开发一个新的软件项目是否可行。
系统的成本包括系统的开发陈本与运营成本。
系统成本包括:(1)硬件成本;(2)系统软件成本;(3)软件开发成本;(4)施工成本;(5)用户培训费用;(6)不可预见费用。
系统的运营成本是指发生在软件生命周期内维持系统运行的费用,以每年的花费量计算。
它包括:(1)人员费用;(2)网路使用费用;(3)维修费用;(4)消耗品费用。
需求分析的任务是理解和表达用户的需求,描述软件的功能和性能,确定软件设计的限制和软件同其他系统元素的借口细节,定义软件的其他有效性需求。
数据流图在需求分析阶段
er模型包含“实体”,“联系”和“属性”三个阶段。
在er图中用矩形方框代表实体
在er图中用菱形方框代表联系。
在er图中用椭圆或圆角矩形表示属性。
层次框图是用树形结构的一系列多层次的矩形框描述数据的层次结构。
软件设计的原则:模块化,抽象化,信息隐蔽,模块独立。
模块化是指解决一个复杂问退时自顶向下逐层把软件系统划分为若干模型的过程。
抽象化是指认识复杂现象过程中使用的思维工具,即抽出事物本质的,共同的特性而暂不考虑它的细节,不考虑其它因素。
抽象化和逐步求精,模块化的概念是一致的。
模块独立性的概念是模块化,抽象化和信息隐蔽的直接产物。
模块独立性可用两个定性标准来度量:内聚性和耦合性
内聚性:又称块内联系,是指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。
耦合性:又称块间联系,是指软件系统结构中各模块间相互联系紧密程度的一种度量。
偶然内聚:这种模块内各部分之间没有有意义的关系或者关系很松散。
逻辑内聚:这种模块把几种相关的功能组合在一起,每次被调用时,根据传送给模块的控制型参数来确定应执行的功能。
时间内聚:这种模块大多为多功能模块,但要求模块的各个功能必须在同一时间段执行。
工程内聚:使用流程图作为工具设计程序的时候,通过流程图来确定模块划分,把流程图中的某一部分划出组成模块,就是过程内聚模块。
通信内聚:一个模块内各功能部分都使用了相同的输入数据,或产生了相同的输出数据。
顺序内聚:一个模块中各个部分都是完成一项具体的功能而协同工作,紧密联系,不可分割的。
内容耦合:如果一个模块直接访问另一个模块内的内部数据,或一个模块不能通过正常入口转到另一个模块内部,或两个模块有一部分程序代码重叠(在汇编语言程序中可能出现),或者一个模块有多个入口,则两个模块之间就发生了内容耦合。它是最高程度的耦合,应该避免。
公共耦合:如果一组模块都访问同一个公共数据环境,则它们之间的耦合称为公共耦合。
外部耦合:一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不是通过参数表传递该全局变量的信息,则称之为外部耦合。
控制耦合:如果一个模块把控制信息传递给另一个模块,对其功能进行控制,这种耦合称为控制耦合。
标记耦合:如果一组模块通过参数表传递记录信息,这组模块就是标记耦合。事实上这组模块共享了某一数据结构的子结构,而不是简单变量。
数据耦合:如果一个模块访问另一个模块彼此之间通过数据参数(不是控制参数,公共数据结构或外部变量)来交换输入,输出信息,这种耦合称为数据耦合。
非直接耦合:如果两个模块之间没有直接关系,它们之间的联系完全是通过主模块的控制和调用来实现的,这就是非直接耦合。
数据流图的类型:变换型,事务型,混合型。
sd方法以数据流图为基础设计系统的模块结构。
事务型中间是有事务中心的!由它来进行处理的!
程序设计语言的分类:
机器语言——第一代语言
汇编语言——第二代语言
高级语言——第三代语言
4gl——第四代语言
变换型数据流图是线形结构的,由输入,变换(或称主加工)和输出三部分组成。
程序的效率:程序执行速度的快慢和程序占用存储空间的大小。
效率要求实际上就是性能要求对效率追求应取决于再需求分析阶段确定的效率方面的要求;
程序的效率包括以下三个方面:程序运行时间;存储器效率;输入/输出的效率。
公式计算:v(g)=m-n+p
v(g)有向图g的环数;
m有向图g的有向弧数;
n有向图g的节点数;
p=1;
软件测试的目标:为了发现错误而执行程序的过程。
软件测试的常用方法:
黑盒法:已知该程序应具备的功能而通过检测来检验的它的每一项功能是否能正常使用此方法为黑盒测试。
白盒法:已知程序的内部结构和工作过程,通过检测可检验产品内部动作是否符合规格说明书的规定,为白盒测试。
用白盒法设计测试用例最常用的是逻辑覆盖法:包括语句覆盖,判定覆盖,条件覆盖,判定/条件覆盖,条件组合覆盖,路径覆盖。
软件测试分为4个步骤进行:单元测试,集成测试,确认测试,系统测试。
软件可维护性的因素:可理解性,可测试性,可修改性。
-
想了解更多【软件工程自我评价】网的资讯,请访问:软件工程自我评价
