软件开发程序员年终工作总结(共15篇)
1.软件开发程序员年终工作总结 篇一
这一年来的工作已经结束了,我知道这对我而言是有很大的提高,作为一名程序员我坚定的认为自己是可以做的更好,在未来的学习当中我还是深有体会的,以后在学习当中,在这一点上面我希望自己可以做的更加的到位,作为一名技术人员,我还是做的非常不错的,希望自己在这一年来的工作当中我可以继续维持好的状态。
这一年来的工作当中,我现在还是希望可以做的更好,公司对我的培养还是比较多的,在这方面我是坚定的体会到了这一点,在未来的工作当中,我是坚持的做好了很多的事情的,年终之际我回顾起来确实是获得了很多,我也希望自己在以后的学习当中,我深刻的意识到了这一点,过去一年来我也是独完成了很多的工作,也和公司的同事一起合作了一些项目,在这个过程当中,我也确实是深刻的意识到了这一点,我知道在这方面我是维持了一个好的状态,现在回顾起来我清楚的意识到了这一点,通过这次的项目我还是深有体会。
我绝得工作能力是需要不断的去落实,对于这一点我是感觉非常有意义的,年终之际,在这个过程当中,我清楚的意识到了这些细节是可以做的更加到位,我觉得以后还会有更多的事情可以做好,这一年来的工作结束了我也是希望自己可以把工作做的更好,想要把工作做的更好,我还是深有体会,在一些事情上面,我确实感觉很有意义,在工作当中我进一步的调整好了自己各个方面的职责,公司对我个人能力还是做出了很多的判断,我相信在这一点上面我知道自己各个方面是非常有意义的,在公司做好自己分内的职责,当然我也是意识到了自身的努力还是值得的,我也想要为公司争取更多的价值。
我也是清楚的意识到了自己的不足,虽然每天的工作很充实,但是在一些项目上面,还是做的不够好,出现了一些细节的问题,这也确实是我应该要去调整好的,我会改正自己的不足之处,在以后的学习当中,我会继续做好自己分内的职责,在程序工作方面应该要更加的细心,我会让自己做的更好的,感激公司领导的关照,以后我也一定会让自己做出更好努力,努力提高自己的工作能力,做技术工作让我感觉很有意义,新的一年我一定会认真做好工作。
2.软件开发程序员年终工作总结 篇二
所谓“工作过程”, 是在企业里为完成一件工作过程并获得工作成果而进行的一个完整的工作程序。它的特点是一个综合的、时刻处于运动状态之中而结构相对固定的系统。它不是符号, 不是符号构成的概念, 不是用概念堆积起来的定理、原理的表述, 更多的是对实践、工作岗位出发概括的能力的表述。
工作过程导向就是在构建专业课程内容体系时, 以工作过程为导向, 通过对工作过程的分析, 把复杂工作系统即劳动组织关系、工作内容、设备和工具、从业者应具备的技能、知识和态度等要素结构化的过程。利用在软件行业里收集到的信息为基础, 以“咨询——决策——计划——实施——检查——评价”这6个“相对固定”的步骤, 重新序化陈述性知识, 并挑选出适度够用的知识, 将其融入到学习情景中去, 让学生在实践中学习, 多数以“怎样做”和“怎样做更好”的知识为主, “是什么”和“为什么”可以讲一些, 特别是“为什么”, 就应不讲或少讲。在教学情景中让学生在学中做、做中学, 完成完整的思维过程训练, 应对未来工作的挑战。
二、《Windows应用程序设计》课程内容开发实践
(一) 课程内容设计。
课程内容的设计首先应当明确课程描述, 应当将学生应当掌握的适度够用的知识重新序化, 以工作任务的形式呈现, 就像婴幼儿的学习一下, 并没有一定的知识体系, 看到什么就学什么, 而恰恰是这样的学习才是符合学生认知过程的。同时在仿真的工作组中, 人与人之间根据工作流程和各人能力特点进行分工, 使个人化的技能训练转变为团队合作能力的培养, 重视了人本性和人文性。基于以上分析, 我们课程描述详见表1:
(二) 对课程教学情景的设计。
教学情景的设计应当实现“工作过程完整”而不是“学科完整”, 重点强调的是工作过程中的各个步骤;而每一个学习情景都应当是独立的, 并且是属于同一范畴的东西, 改变的是教学情景的内容, 不变的是教学情景中的工作过程, 用“一生二, 二生三, 三生万物”的思想, 学生自己模仿做的越来越多, 教师讲授的越来越少, 在“示范——学习——模仿——实践——提高”这五个环节中, 完成教学。着重培养学生的专业能力, 即根据实际需求分析, 编制应用程序的能力等, 社会能力, 即团队互助合作工作, 与人沟通, 以学生小组为单位, 培养学生解决问题的同时, 也锻炼学生的合作意识和人际交往能力, 体现人文性和人本性, 了解社会需求的能力等, 方法能力即根据具体情况查阅相关资料, 互联网搜索, 使用参考文献, 查询MSDN帮助文档和自我学习的能力;确定专业“知识点”的目标和编排, 根据实际行业情况和学校的教学软硬件条件确定目标, 按照由简到繁、单一到综合的原则进行知识点编排, 在具体的应用程序设计时和数据库联系非常紧密, 具体教学情景设计时着重加强了这一方面。基于此, 我们在《Windows应用程序设计》课程中共设计了七个教学情景, 见表2:
(三) 教学方法设计。
1、面向工作的教学。以培养学生的能力为导向, 以“完成一个项目”为一阶段开始, 始终将工作的完成作为目标, 将技能融入到过程中, 避免“先讲理论再来验证”的传统陈述性知识教学。2、以学生为中心。由教师提出问题, 学生解决问题, 到学生学会提出问题, 进而自己解决问题的方式转变, 将“固定的”知识变为“运动的”知识。在“示范——学习——模仿——实践——提高”这五个环节中, 始终以学生为中心, 强化学生完整思维过程, 锻炼学生各方面能力, 如图1。
(四) 考核内容和方式方法。
1、考核内容。培养学生一定的自学能力和独立分析问题、解决问题的能力。包括学会自己分析解决问题的方法, 对设计中遇到的问题, 能通过独立思考、查阅工具书、参考文献, 寻找解决方案。掌握用c#开发Windows应用程序的基本步骤和方法。通过分析具体设计任务, 确定方案, 编码并调试, 最终发布, 成为一个完整的系统。提交正式设计报告一份及发布后的系统和源代码。2、考核形式:实践课程与理论课程比值为7:3, 及平时实训任务占30%, 期中实训任务占30%, 学生小组互评10%, 期末项目、笔试30%, 强化学生的过程考核意识。3、考核标准。平时实训任务和期中实训任务的完成“以每一课程案例完成及迁移”为一评分阶段, 考核学生的实际动手能力、团队协作、综合表述以及创新的能力。具体包括: (1) 学生能否能够独立完成案例, 是否课程设计相关知识掌握牢固, 考虑问题全面, 深入探讨所遇实践问题, 顺利完成迁移。是否方案设计正确, 设计结果是否可靠。 (2) 是否能较好地完成团队协作, 合理安排工作角色。 (3) 报告是否书写认真、工整, 语言流畅, 图表表达清晰、规范, 体现独立分析解决问题的能力和良好的沟通表达能力。 (4) 是否具有独立分析解决问题的能力和创新精神或对某一方面有深入探讨, 学习态度认真。
(五) 对教师的要求。
计算机科学技术飞速发展, 新的知识不断涌现, 作为高职教师要不断地学习, 不断地提高自己的业务水平。不但要懂得自己所教的课程, 还要精通相关的课程和领域, 这样在讲授时就能将各门功课的知识串联起来, 真正实现“工作过程”, 课堂更有吸引力和感召力, 课堂也会更加活跃。通过教师不断地提高业务水平, 要求专业教师具有“双师型”素质。
参考文献
[1]姜大源.世界职教课程改革的基本走势及启示[J].职业技术, 2008.11;
3.程序员个人年终工作总结 篇三
上面的成功与收获,除了自身努力外,以及公司的支持。是这个团队铸造了我。我们这个团队也是因为有了我们这些拼搏协作的队员,使得它成为一个具有务实、拼搏、创新精神的团队。我与软件研发小组是一个整体,这里的团队总结也就是我在这个团队中的收获。
务实:公司下发的任务,下发的工作,件件都是用心去做的。我们这个团队中没有一个人在工作的时候做了工作以外的事情,都是实实在在的做跟工作相关对公司有益的事情。相信在伍经理的带领下现在是这样,以后同样也是这样。
拼搏:公司给的每一个任务不管它多难,如果工作没有完成我们会晚上加班,也要尽可能的完成当天的工作。如果工作实在忙,为了赶进度我们放弃周末休息时间也要尽可能的使项目提前。
创新:现在我们开始项目的时候都会进行研讨,一般都会进行一个效率和逻辑的分析与讨论,保证程序正确的前提尽可能的提高程序的效率。
互助:我们小组内只要任何一个人出现技术或其它的问题,我们都会彼此都会尽可能的去帮助他。不会因为某一个人而拖住整个项目滞后。
交流:我们在项目中会及时沟通自己的收获,特别是一些针对性的技术问题。这样可以省了很多重复研究的时间,这是一笔很可观的时间。
在交流中只要我会的,我懂的,我不会去吝啬。我会积极的去与你交流,我的团队名言“人强团则强,人弱团则削”。
三、个人成长
通过公司这快一年的锻炼与学习我真的进步了很多,不管从技术上还是做事上,都不像以前那样了。我在公司学到的懂得的使我飞速成长。
技术上:不管从语言上还是做事的逻辑上都得到了很大的提高。现在在软件小组里面自己能独立完成一部分工作,承担自己的责任。
第二部分 xxxx年工作设想
通过今年的实践和学习,明年是一个新的开始,立足当前的优缺,肩负起一个软件工程师应有的工作和性质。希望为公司明年的发展尽最大的努力,也希望自己明年有更大的收获。明年计划在以下几方面有所突破,有所建树
一、在编程语言掌握方面,达到本公司的编程思想—不被语言所束缚。 在这方面伍经理是我的榜样,积极努力的提高自身的技术水平,真正做到不被语言所束缚。
二、数据库方面,在当前已有的基础上提升自己,明年自己给自己定的目标是,能非常合理的去使用数据库各类技术,掌握的数据库优化思想和技术点。有时间多向许总交流。
三、加强软件开发的辅助性知识使用和积累。针对当前软件开发中的一些情况,明年更加积极的学习javascrip、ajax和flex等技术。能辅助性的把软件做的更好。
四、工作质量上,现在编程我是属于会写会编和局部效率,并不是全局的效率,明年一定要做到,编一个高效率的代码。这就要综合上面的三点,才能使其达到全局的高效。
★ 程序员个人年终工作总结
★ 程序员个人工作总结
★ 程序员个人工作总结
★ 程序员岗位个人工作总结
★ 程序员个人工作总结范文3篇
★ 程序员工作总结
★ 程序员年度工作总结
★ 程序员年度工作总结
★ 程序员工作总结
4.一个程序员老总的年终总结 篇四
首先能写这个总结是非常高兴的,这至少说明我们还活着,这是很重要的,活着就有机会,活着才能策划发展,发展是硬道理,科学发展观是高层次的要求,我暂且较难领会。记得我在2006与2007年底曾经写过一样的BLOG,得到了较多网友的支持与鼓励,因此我想有必要每年坚持写下去,无论未来怎样,都会是一个美好的回忆。
确切地说,我已有好几年没有写程序了,但我一直喜欢,有时手很痒,于是会偷偷地阅读一下,FasterSoft光是写代码的员工就有37名,他们都很辛苦很努力,当然应该也很快乐,无论是创业还是打工,心态是最重要的,如果每一个人每一天都可以快乐地上班,快乐地工作,快乐地回家,那是多么和谐的景象啊!2009年是怎样的一年?很难概括。好的事情有建国60大庆、澳门回归10周年、创业板上市、奥巴马就职等,不好的事情有暴力事件、H1N1、躲猫猫、公车燃烧、MJ巨星去世等等。对于FasterSoft也是一样,我们有很多好的一面,同时也不断地暴露着不好的一面,我们是一家成长中的企业,我想这是很正常的。其实,生活这是这样,好与不好总是相伴而来,这是也发展的过程中常见的,我们应该庆幸能面对这些好与不好,它们使得我们不断地进步与完善。
管理方面
关于管理方面,我之前写了很多的BLOG,比如管理感悟系列、管人要管到心、管理者的三多三少等,这些都是在作企业管理过程中的真实体会与感悟,虽然稚嫩,但毕竟是成长的过程,我也一直勤奋地向各路大师学习,看过很多的书,但印象较为深刻还是唐总的(即唐骏)“简单+勤奋”的管理理念,简而言之就是战略要简单,战术上要勤奋,也就是在执行上要勤奋。这个理念就如同FasterSoft的经营理念(“更好的软件,更快的服务”)一样简单易懂,我们确实不需要太多空洞的排比句,做每一个软件都努力追求更好的设计与效果,对每一个客户我们都要提供更好更快的服务,事情就是这么简单,勤奋学习,认认真真做好每一件事情,这就是最好的工作状态。
FasterSoft在管理方面并没有什么了不起的创新,一直在努力寻找管理规范化与中国人情相结合的好路,同时努力建立公平、公正、公开的管理环境,我们6个部门经理都是80后的年轻人,但我觉得他们做得很好,风格上都不一样,有时候可以互补,象我们这种发展中的中小企业,年轻人是有很大的空间的,只要有能力,就有机会,我们的环境很简单,没有错综复杂的人际关系,没有古老的革命思想,坚决杜绝权力斗争资源内耗,努力让管理变得简单、透明、高效。
品牌方面
品牌是企业身份的标识,是社会对企业认知的主观反映。虽然FasterSoft还只是创业初期,但我们仍然关注品牌的建设与提升,最主要是从文化、质量、服务三方面来塑造,文化方面我们重点在打造年轻、活力、团结、进取的氛围,通过员工活动经费、公司集体活动、公司文化墙、员工生日关怀、公司OA建设、企业内刊、颁奖典礼、培训制度、各种升降级福利制度等来实施,目前的效果还是很不错的,当然我们需要在很多细节上再作努力,特别是高层领导如何进行员工关怀?质量方面,我们对员工的要求很高,任何事情都要精益求精,现在IT企业之间的竞争大部分还是在理念与细节上的竞争,实际上我们能做的,别的公司也都能做,但做的过程与效果是不一样的,我们希望客户对我们所做的任何产品/项目/事情都有一种美好的体验与回忆,我们总是追求客户的认可,我们会让客户感觉到我们是在认认真真全力以赴地为他做事为他解决问题。服务方面,我们也是争取最到最好,无论是态度、反应、速度,还是服务质量,都是有严格的规定,如果有客户因服务的问题投诉到我这里来,那是相当严重的事件,我们也许做不到最好的软件,但一定要努力去争取最好的服务。
技术方面
我们还是两个方向的技术,各占了一半的研发人员,一个是C#与SQL SERVER相结合的开发模式,偏重于管理软件的开发;另一个是JAVA与ORACLE相结合的开发模式,偏重于业务平台的开发。目前主要涉及移动通信行业的系统开发,当然也有一些系统涉及到物流领域,我们在行业的专业方面是取得了不错的效果,另外,我们产品测试部的进步很大,对那些流行的测试管理平台以及测试工具都掌握得不错,无论是自动化的功能测试、性能测试,还是压力测试、负载测试都做得很好。我们在团队开发过程的统一管理上也取得不错的进步,开始全部使用Team Foundation Server的管理模式。技术方面,当然还有许多许多,在这里就不罗列了。
市场方面
很高兴,从2009年起我们开始了广西的市场,并取得很好的开始,当然广西是我的老家,感谢很多朋友的帮助与支持,市场将是FasterSoft在2010年重点打造的部门,我的精力也将大部分花到这条线上,软件的最大利润来自于不断地COPY并销售出去,这个道理很早以前就明了,但在具有特色的中国大陆上,这种想法有时是过于纯洁的,特别是做行业软件,实质上很多行业并没有什么规范的管理模式,A公司用得好极了,但到了B公司,感觉被修改得面目全非,这是痛苦所在。何况,软件市场还有很多乱七八糟五花八门的怪现象,比如盗版问题等等。
我的客户与员工
对于客户与员工,我总是怀着一颗感恩的心,我知道公司能成长与发展,大部分都是他们的功劳,客户的支持与员工的努力是最让我感动的事情,很多时候由于与客户之间的信任,我都是先做很多的事情,或者不会斤斤计较什么,实际上,和客户打交道与人与人之间打交道是差不多的,你想客户怎样对待你, 你就应该怎样对待客户。还有员工们,他们是很辛苦很努力的,我也努力做到公开、公平、公正,让每一位员工得到自已应得的回报。
小结
5.软件开发程序员年终工作总结 篇五
从2015年的7月份,…给了我一个以应届生的身份感受社会的机会。在…的第一份工作是…。经过2015年的对岗位职责的了解,2016年我已经能够独立负责一些部门业务。我的工作主要是以下几个部分,线上线下的采购、ERP系统的操作(主要包括bom搭建、采购、生产、销售)、台账统计、部门报销以及部门小库房的出入库管理。
采购应该是一个公司节约成本的开始,电子元器件这个市场本身就是质量鱼目混珠,价格参差不齐,一件物品辗转几手可能就成为了高价。质量放在首位,货比三家,保证价格的合理性,是我们采购时的最好的追求。线上平台主要用于一些量小、不太常见的且不在硬件中起到主导地位的电子元器件以及一些部门研发需要的附属物品等。线下平台一般是合作过多次并且有良好的信誉的供应商,建立了一些商业上的信任,可以大批量的采购一些硬件所需的主要器件,这样能保证质量的同时,价格也是相对低的。当然平时也要注意供应商的扩展,以免采购处于被动状态。
ERP操作,是记录生产流程,财务流向的直接有效的工具。从一开始的采购到后来的生产,销售,能够保证每一项工作有理可依,有据可循。也是部门与部门之间的无声交流。一条贯穿公司业务流程的主线。我在2016年1月到6月,完成了IDTT、故障指示器、总保、核心板等上千个设备的ERP生产操作,主要包括搭建BOM、采购、生产、委外、销售一系列的流程。虽然实际的采购、生产、销售等是很重要的一环,但其实对于公司来讲记录这些也是不可或缺的一步。台账的记录,如果说ERP是部门与部门的沟通,那么台账就是自我记录的很好的例子。采购中合同的签署,付款的规则,合同执行的进度等等,在台账中可以很直观的看到。自我总结是必不可少的,2016年上半年几十甚至上百个合同的记录和执行都很详细的记录在了我们的台账中,并且实时检查,每个月通过台账制定下个月付款计划等。
2016年7月,公司又给了我另一个机会,岗位从技术助理调整成软件工程师。工科毕业的我本就对编程有着浓厚的兴趣,得知本部门有软件岗位的需求,便提出了转岗的要求。
我接触的第一个项目是…,我负责此项目的客户端部分,初遇C#我,是措手不及的,C#的面向对象对于我来说是一个新的思维模式,所以学习新的知识成为必经之路,转岗之前自学了C# Primer Plus,涵盖了计算机语言的基础知识和面向对象语言的独特之处。但这本书是以入门为主,看完这本书之后直接接触了…项目的部分程序,经过两个星期的熟悉,基本上能了解之前程序的思路,此时我主要负责的是winform搭建界面部分。
这部分还需要实现的是…这些功能。2016年7月到8月,基本完成了上述几项任务,也学到了很多,此时才是我感觉自己真正入门的时候。通过这两个月的学习和工作,我对面向对象的理解也更加深刻,在修改或者添加程序时,也会去学习功能的具体实现方法,思考逻辑上合理性。尤其是在修改的时候,必须兼顾上下运行的逻辑,避免错误的出现,慢慢的感觉到其实语言真的是互通的,不管是C还是C#我的逻辑是一样的,只是在面对不同语言时,就像是在使用不同的工具,但是殊途同归,顺着自己的思路不管用哪种语言总是能实现相同的功能,体会到这一点后,我感觉自己对C#的学习又多了几分信心。因为对这个程序的了解,在功能实现阶段之后,客户端程序都交由我负责。在上个阶段时,为求快速实现功能会有很多逻辑简单但是代码冗余的情况出现,比如…功能、…功能、…功能。自此我便走上了简化代码的道路。统计分析和分辨率自适应都是因为多用了列举的方法,各种不同情况出现都要重复几乎相同的代码,所以摒弃了这些方法,做到让程序自己判断不同情况做出不同处理。设备配置是关乎用户体验的一项功能,之前的操作较为繁琐,不能只是简化方法那么简单。而此时软件正在强调设计文档重要性,本着试试的态度,开始了就设备配置而言的程序设计文档的编写。
从界面设计到每个方法的实现都写了下来,发现写文档是一个很好的拓宽思路并记录思路的过程。其实之所以决定写文档更大的原因在于写这个程序之前,虽然有一定的思路和想法,但是无从下手,从何写起是一个大问题。这次文档编写,规范思路,找到程序入手点,拓宽思路,有条不紊的实现过程其实是有一种成就感的,没有紧张混乱的情绪使这次开发感觉很轻松。之后也写完了这个功能程序并封装成了类库放进了原来的项目中。9月到10月期间对此项目的完善也让我对winform的运用更加熟练,也有了一些自己对于程序的思路和 想法。
应项目需求,需要把…的实物展示改造为线路模拟形式的展示,并实现原来界面上的所有功能,包括…功能、…功能、…功能、…功能、…功能等。这次改动的特别之处在于…,之前…项目的的总保最高上限是6个,所以把每个都作为一个单独的对象处理。现在数量是20到30个,之前的方法在此显得不太合理了。在11月完成了这个任务,这个解决方法应该再用回到…项目中(正在实施)。
12月份参与了…的编写,初步了解了Window系统的API函数和Winform的GDI+画图技术,当然这两项技术需要今后在学习中巩固。但是因为故…持续时间应该准确到毫秒级别,但受Windows系统的限制,精确度并没有达到。对于这次开发,我也认识到了自己的不足,知识面狭窄,利用新的技术的手段有很大的局限性。学会一项技术很重要,在开发项目面前最有效的方法是使用技术。
6.Internet网关程序开发 篇六
Windows系统中有一个Internet连接共享功能。同一局域网中客户机可以共享一个Internet连接, 实现因特网中的各种操作。完成这个网关功能的电脑要配备两块网卡, 一块用于连接因特网, 另一块用于连接局域网。客户机要将本机IP地址设置成和网关机局域网同一网段的IP地址, 网络掩码一般设为255.255.255.0, 还要将默认网关和DNS服务器IP地址均设为网关机的局域网IP地址。
要完成类似的功能, 需要能够截获网关机局域网卡中收到的数据包, 并且还要对截获的数据包进行NAT转换, 然后将转换后数据包转发到因特网网卡上。同理, 也要截获因特网卡中返回的数据包, 进行NAT转换后, 再将数据包转发给局域网卡。
实现上述功能的程序最适合在NDIS中间层进行开发。NDIS是微软的网络设备接口规范的英文简称。开发者只需要调用标准的NDIS函数, 就可实现对不同网络设备的操作。中间层位于高层的协议驱动和底层的网卡驱动的中间, 不论是向上发送给协议驱动的数据包, 还是向下发送给网卡驱动的数据包, 都要经过中间层, 因此在中间层进行数据包处理是合适的, 效率也是相当高的。
Windows DDK是微软的驱动程序开发工具, 其中有一个著名的NDIS中间层例子程序passthru。这个例子提供了标准的NDIS中间层驱动开发框架, 但这个程序只是让数据包原原本本地通过, 而没有实现任何有用的功能。可以在passthru这个例子程序的基础上, 增加必要的代码, 以实现Internet网关的功能。
2 程序原理和开发思路
本程序是一个NDIS中间层驱动程序, 使用Windows DDK进行编译和链接。开发驱动程序和开发普通的应用程序不同。因为驱动程序工作在系统核心模式。如果程序中存在错误, 轻则系统立即重启, 重则可能需要重新安装系统。因此开发此类程序需格外小心, 避免出现错误, 而造成不必要的麻烦。
本程序有以下3类核心功能。一是数据包的读 (即捕获) , 二是数据包转换 (即NAT转换) , 三是数据包的写 (即转发) 。
2.1 数据包的读
数据包的捕获在protocol.c中的PtReceive和PtReceivePacket函数中完成。系统会根据网卡的型号不同而决定调用两个函数中的哪一个。PtReceivePacket函数中直接得到完整的数据包, 可以从此包中读取收到的数据。PtReceive使用一个缓冲区存放收到的数据, 但缓冲区中可能不是完整的数据。如果收到完整的数据包, 则可从缓冲区中直接读取数据, 否则需调用NdisTransferData函数传输剩余数据, 如NdisTransferData返回值为NDIS_STATUS_SUCCESS, 则可以将剩余数据追加到缓冲区之后, 以构成完成的数据包。如NdisTransferData返回NDIS_STATUS_PENDING, 则需要在PtTransferDataComplete函数中进行数据包的读取。
2.2 数据包转换
收到数据包后, 要进行数据包转换。经过转换后的数据包才能进行转发。数据包转发分为局域网数据包转换因特网数据包和因特网数据包转换局域网数据包两种。一般只需要转发TCP和UDP这两种数据包即可。
进行数据包转换, 要对数据包结构有一定的了解。
数据包基本结构, 如表1所示。
以太头之后是IP头, 如表2所示。
如为PPPOE包, 则IP头之前还有一个PPPOE头, 如表3所示。
IP头之后是UDP头或TCP头, 如表4, 表5所示。
UDP或TCP头之后是实际的数据。
对于局域网数据包转换因特网数据包, 需要修改以太头中目的MAC地址为因特网远程MAC地址, 修改源MAC地址为因特网本地MAC地址, 这两项都可从以前的数据包中取得。修改包类型为8864, 即PPPOE。对于TCP包, 需修改IP头中的生存时间, 因为通过网关, 相应值应减1。修改源IP地址为因特网IP地址。对于DNS请求包, 需修改目的IP地址为DNS服务器IP地址。需修改IP头校验和。需修改源端口号为一指定的端口号 (该端口号按一定规则产生, 并且要记录下来, 以备以后使用) 。需修改UDP校验和 (或TCP校验和) 。对于TCP连接建立包, 要修改TCP头中可选项的头四个字节 (设为1440) , 这四个字节表示系统可接受的最大数据包长度。
对于因特网转换局域网数据包, 需先根据目的端口号, 找到相应的客户机数据包记录。修改目的MAC地址为对应的客户机MAC地址, 修改源MAC地址为网关机局域网MAC地址。修改包类型为0800, 即IP包。去掉PPPOE头。对于TCP包, 需修改IP头中的生存时间, 因为通过网关, 相应值应减1。修改目的IP地址为客户机IP地址。如为DNS应答包, 需修改源IP地址为网关机局域网IP地址。修改IP头校验和。修改目的端口号为对应客户机原始端口号。修改UDP校验和 (或TCP校验和) 。
使用一个结构数组, 用于保存收到的客户机数据包。返回数据包也要使用此结构数组, 从中找到匹配的数据包记录。该结构数组长度为65536, 分别表示端口号0-65535。此结构中有源MAC、目的MAC、源IP、目的IP、源端口号、目的端口号, 另外还要记录收到包时间 (以判断返回包是否超时) 。
2.3 数据包的写
要向网卡写数据包, 首先要构造一个数据包, 然后挂接数据缓冲区, 调用NdisSend函数进行数据包发送。如NdisSend返回值不为NDIS_STATUS_PENDING, 说明发送立即完成, 此时可执行撤销数据包, 释放内存等操作, 否则要在PtSendComplete中进行包的撤销和释放内存等操作。应该为自定义数据包设置标记, 以区别系统数据包。对于自定义数据包, 要自行完成包的撤销, 避免将此包交给协议驱动处理, 否则可能造成系统蓝屏 (此处要格外小心) 。
3 代码解析
在passthru.h中, 定义如下:
4 结语
全部程序经过大量测试, 实现了类似Internet连接共享的功能。程序在Windows DDK中NDIS中间层例子程序passthru的基础上改写而成, 具有较高的实用价值。
摘要:在Windows DDK的NDIS中间层例子程序passthru的基础上, 增加了一些必要的代码, 实现了Internet网关的功能。通过对网络数据包的NAT转换完成局域网和因特网间数据包的转发, 同一局域网中的客户机都可以通过本网关上因特网, 进行各种常见的网络操作。
关键词:Internet,网关,NDIS,Windows DDK,NAT,数据包转发
参考文献
[1]谭文, 杨潇, 邵坚磊.Windows内核安全编程.电子工业出版社, 2009.
7.软件开发程序员年终工作总结 篇七
一个外行老板:
有一个朋友在一个国际知名的公司工作,这家公司在北京的中国公司是被一个国内电子商务公司控股的企业。
最近这家公司进行了人事调整,原来的外资管理层被中资管理层取代。
新来的中资管理人员是原来在其他行业的管理者,对IT行业并不是内行,他们上任以来提倡了多个工作作风,其中一项就是,软件技术人员工作必须是早9点上班到晚9点下班。
公司的管理制度所标识的“8小时”工作制度形同虚设,当然,你也可以晚6点离开公司,但是,很快会收到点名批评的邮件。
这是一个外行老板去领导内行的笑话,很明显,这位CEO的想法是,“做软件技术的怎么能不加班?不熬夜呢?”
他的这个想法恰恰是进入了一个职业的误区:“做软件开发必须要加班熬夜的工作”。
1、程序员们熬夜工作的借口
对软件开发职业的这个误解并非“空穴来风”,因为,我们确实看到很多的程序员在没有硬性规定的公司中加班熬夜的编程序。
正是这一个现象,旁观者们当然会很自然的联想到“程序员们的工作需要这样”的假设。作为程序员,“加班”是有的,但是这个“现象”本身是具有“偶然”性的,而不能成为一种“常态”。
程序员们总能找到熬夜工作的借口,我们来看看都有哪些。
1、1 代码一气呵成,一定要写完而后快
想一口气编完程序,是大部分程序员们自发加班的主要驱动力。比如,小张在开发一个图形显示组件的过程中,该组件程序已经接近收尾,一定要写完看到想要的效果才肯罢休。
这个加班的动力来自于程序员自身,这种工作的积极性来自于程序员发自内心的对其工作的热爱,是一腔热血使然。这个现象对程序员是有帮助的,对整个项目组也是有帮助的,并应该鼓励,只不过不要成为“常态”。
1、2 明天要做一个命题演示,一定要调试好程序
明天急着给客户做一个命题的程序演示,还差一点没有搞定,急得抓耳挠腮,这时候,还不加加班?大客户跑掉了,这个责任可承担不起。所以,一定是搞定了才肯回家,明天轻装上阵,顺利完成演示工作。
1、3 安静的工作环境
我们还听到程序员们抱怨“没有安静的工作环境”,一般两个方面:
其一,程序员这一天工作中,不仅仅需要编写程序,还要花费时间阅读并回复邮件,接电话处理各种问题的询问,协助HR面试,甚至审阅产品使用手册,等等,根本没有办法踏实下来一气呵成写完代码。
其二,来自于周围环境,如果程序员运气比较差,正好和商务部门或客服部门做邻居,那还真是存在这个问题,因为那里的电话与谈话声此起彼伏。
面对这两个问题,应该有各自的解决方案:
第一种情况,应该安排好自己的工作时间表,尽量将自己的时间合理的分配。
第二种情况,申请调换座位或心静如水、充耳不闻。
1、4 项目进度紧张,需要尽快完成任务
“项目进度紧张”经常成为“加班”的借口,一方面是项目经理要求程序员加班的借口,另一方面是部分工作拖沓的程序员的加班借口。
之所以这么说,是因为造成“项目进度紧张”的直接责任应该归咎于“项目经理”,而不是“程序员”。项目的进度应该由“项目经理”进行合理的安排与调配,“程序员”所需要做的是按照项目进度要求完成自己编码工作,如果编码工作是按照既定计划完成的,那么造成项目进度的紧张自然就是项目管理的问题。
不过还有另一个现象,“项目经理”安排的时间得当,某些程序员工作拖延,在没有完成既定任务的情况下,工作时间在做其它事情,反过头来造成项目进度紧张而“加班”。
所以,我们说凡是出现这个原因加班的情况,这一定是一个“警钟”,那就是,“项目出现了问题”,因此,这个加班现象就一定要避免了。
项目进度紧张而加班:
是项目或者你自身出现问题的信号。
2、常态加班的危害 偶然的加班是不会造成影响的,甚至有可能激发程序员的工作热情。但是当加班成为常态,则会给工作造成很大危害。
2、1 危害1:项目进度不升反降
加班成为常态以后,尤其是老板要求其工作必须超过12小时的时候,你会发现程序员将私人事情安排进工作时间。要不程序员该什么时候处理自己的私人事情?
2、2 危害2:工作积极性被严重磋商
本来加班是一种工作积极的表现,尤其是对于由于“代码一气呵成”原因而加班的程序员来说,更是为项目为公司努力工作的表现。然而,当被公司要求加班而不是自发加班的时候,这部分程序员的积极性可以说是完全被磋商。
2、3 危害3:程序员身体造成危害
8小时的工作时间是一个比较科学和合理的,如果一味的去拼命的使用身体,必将使身体受到损害,势必会造成如:工作没有精神,记忆力差,反应不敏捷,等现象,这些现象本身给项目造成的损害是更加致命的。
常态的加班危害巨大,有经验的项目经理或者睿智的管理者,是不会允许这个现象发生的,哪里出的问题从哪里找原因,千万不能通过增加工作时间来弥补事情的真实漏洞。
作为刚刚入行的程序员,也要清楚的认识到这些危害,不要陷入“加班熬夜”的工作误区。
3、控制好工作的一日时间表才是关键
前面提到程序员这一天工作中,不仅仅需要编写程序,还要花费时间阅读并回复邮件,接电话处理各种问题的询问,协助HR面试,甚至审阅产品使用手册,等等,根本没有办法踏实下来一气呵成写完代码,无法白天安心编码的问题。
我们程序员应该给自己定一个“一日时间表”,这个一日时间表可以更合理的安排时间,把主要精力放倒最重要的事情上去。
比如,下面这个时间表可供参考:
接满一杯热水,打开电脑,整理思路,阅读并回复昨晚下班后收到的邮件——0.5小时
专心软件开发工作——2.5小时
午餐休息——45分钟
阅读并回复邮件——15分钟
专心软件开发工作——4小时
处理其他事务如接电话等——1小时
阅读并回复邮件——10分钟
在一早来到公司到午餐前这2.5小时是一天中工作效率最高的时间段,应该在这个时间段中完全投入到开发工作,这段时间头脑清醒,思路敏捷,应该尽量避免去做其他事情,你会发现,这个时间的开发进度会事半功倍。
然后午餐,午餐回来后稍事休息,快到1点的时候,可以处理一下邮件。
之后,进入下午的开发时间,这个时间段效率最高的部分也是2.5小时,尽量投入全部精力在2.5小时以内开发编码。
电话等其他事务,会穿插于下午的工作时间中,尽量压缩在1个小时以内。
最后在下班前,阅读并回复邮件。
大家看,这样安排工作时间,是否就不会被繁复的其他工作搞得手忙脚乱了?用效率最高的时间去处理开发任务,用接近休息或者接近下班的时间去处理邮件,这样你还需要加班吗?
反之,如果整天被开发之外的事情搞得团团转,一行代码都没有写,这样的话,不加班都不行了。
时间策略:好钢用在刀刃上。
4、“偏执与狂热”不等于加班加点
作为程序员如果想成功是需要“偏执与狂热”力量的,这部分“狂热”的力量促使着程序员永远在关注着最新技术的前沿,关注着最新产品的实现方法。
英特尔公司总裁“安迪·格罗夫”说“只有偏执狂才能成功”,抱定一个信念一直不屑的努力,最终走向成功的彼岸。对于程序员来说,这个“狂热与偏执”是一个持续努力的过程,首先成为软件开发技术的“发烧友”,结合国际与国内的技术形式给自己定位。
这个过程是艰辛的,但是不等于对“工作量”无限堆叠,不等于通过延长工作时间来达到其目标,这个过程是在不断的探索与思考中进行的。
狂热偏执不等于加班加点的工作,需要的是理智思考、开阔的眼界、持续的努力。
8.开发公司年终总结 篇八
★工作总结频道为大家整理的开发公司年终总结范文,供大家阅读参考。更多阅读请查看本站工作总结频道。
XXX镇开发公司年终总结XX年我们在镇党委、镇政府、镇总公司的正确领导下,在各有关部门的大力支持下,牢牢把握党中央以经济建设为中心的方针、政策,我们的工作取得了可喜的成绩。
一、加大招商引资力量,促进区域经济发展为发挥区域政策优势,培植和壮大乡镇财政,我们作了大量招商引资工作,多次参加市、县级招商会,取得了一定的成绩,引入软注册企业74家,增加地方税收_____万元,并有多家大公司要求与我镇进行业务,接解本着保护旅游资源,使经济可持续发展的原则,我们选择了其中几家进行了业务接触,并成功的引入“夏都建材厂”“国际青年体育基地”“国际动画城”等大型项目,盘活了闲置土地,使我镇的经济总量得到了很大提高。
二、工业小区基本情况⒈筑巢引凤,完善工业小区基础建设XXX镇工业企业长期以来,存在着科技含量低、规模小、人才匮乏的问题,为了实现镇域经济规模总量的扩张,引进一批科技含量高的大中型工业企业项目和高科技人才。XX年初,我们合理开发利用外炮村的荒滩资源,建立了“XXX镇工业经济开发区”,但于基础设施不完善等诸多问题,工业小区入区项目仅是空白,截止到年底,也只有镇办的两个小企业入住工业区。XX年年初,镇领导为了改善
9.企业新产品开发程序概述 篇九
企业搞新产品开发,属于开发研究的范畴,应该执行开发研究工作程序。开发研究工作程序是从选题论证到总结鉴定整个过程中,必须经过哪几个阶段,阶段之间的前后顺序及每个阶段工作内容等,可以用程序的形式作出规定,这是科技人员长期从事开发研究的经验总结,是开发研究一般规律的反映,也是开发研究工作的法规,须严格执行。
开发研究程序5阶段
开发研究程序一般划分为5个阶段:选题论证阶段、方案研究阶段、设计试制阶段、检测试验阶段、总结鉴定阶段。
1. 选题论证阶段
本阶段的目的是选准开发研究题目,论证进行开发的必要性和可行性,编写研究任务书。
选题选题是新产品开发研究的起点。选题准不准,对开发研究工作的进度、质量、效果等有着举足轻重的作用,必须给予高度的重视。选题的基础是市场调研,也就是信息调研。选题的过程就是信息调研的过程。选题时一定要深入查找大量文献、专利。重要选题应进行科技成果查新,紧密结合本企业技术、设备、人才、资金等实际情况,经过去粗取精、去伪存真、由此及彼、由表及里的研究分析,甚至进行必要的小型试验,才能选准、选好题目。切忌草率从事,匆忙上马,种下苦果。
选题需注意一个原则:不论是开发劳保新产品,还是非劳保新产品,或是在结构、材质、工艺等方面改进型产品,都必须严格执行国家有关职业安全健康方面的标准规定,以确保从业人员和使用人员的安全和健康,不能确保安全健康的,不得立题研制。
论证论证就是对所选题目进行论述并加以证明。论证的内容包括:选题的目的意义、可行性、必要性;有关本选题的国内外研究现状、已有成就和存在的问题;基本研究内容、技术指标及预期的技术经济效益和社会效益;需要的保障条件如经费、仪器设备、物资器材、场地等;学术技术带头人及参试人员;预定开始时间和完成时间;协作单位等。选题论证的结果应形成《选题论证报告》文字材料。
编写《研究任务书》在《选题论证报告》的基础上,编写《研究任务书》。
一般包括以下内容:
●选题名称、来源;
●研制目的、意义(如装备品的用途、装备对象和范围,解决什么问题等);
●技术性能指标;
●预期的技术经济效益和社会效益;
●研制经费总概算和年度分概算;
●预计完成的期限;
●成立项目组,明确学术技术带头人和参试人员;
●承担单位和协作单位。
另外,《选题论证报告》和《研究任务书》应报请企业主管领导或企业上级主管领导审批后实施。
2. 方案研究阶段
本阶段的目的是根据审批下达的《选题论证报告》和《研究任务书》,研究怎样落实技术指标要求,对项目的技术途径、方法进行具体研究,制定出《研制方案》,并进行审定。
方案研究由项目组负责进行。根据《研究任务书》的要求和掌握的资料,拟定具体的技术方案、技术途径和进行必要的试验。
《研制方案》的主要内容如下:
●项目名称;
●总体方案及对各分系统的指标要求;
●技术途径和方法(一种或几种)以及技术关键、难点及解决办法;
●进度要求;
●措施(包括人员分工、协作任务安排、科研物资器材筹措、经费预算等)及其他。
《研制方案》制定得好坏,对研制项目的顺利进行影响很大,必须认真抓好这个环节。《研制方案》一般由企业主管技术开发的领导或部门审定。项目技术不复杂的,也可将《研究任务书》和《研制方案》结合审定,一次审批。《研制方案》经审定批准后,才能进行设计试制。
3. 设计试制阶段
本阶段的目的是根据批准的《研制方案》,完成项目的设计试制。对装备品类(如安全帽、防护服、安全鞋等)进行设计试制;对非装备品类(如原材料、某些技术措施和方法等)进行设计试验。
装备品类
●设计
根据《研制方案》的要求,在对主要部件和关键技术试验研究的基础上,通过计算,具体确定各分系统、各主要部件的工作原理和结构布局,绘制出设计图纸。设计图纸及技术文件经审查批准后,方可进行试制。
●试制
其任务是根据设计图纸,试制出实物样品(样机)。根据试验需要决定试制数量。试制的具体工作流程:
一是设计人(小组) 将图纸和技术文件交试制人(小组) ,进行技术交底。试制人(小组)消化设计图纸。一般应请试制人(单位)参加设计,以便于互相沟通。
二是进行工艺准备(工具、模具等)。工艺遇有困难,要求修改设计图纸时,应商请设计人(小组)进行修改。
三是按设计图纸试制出样品(样机),并由试制人(小组)进行初步调试,整理工艺资料,完成《样品(样机)试制小结》。
非装备品类
●设计《实验大纲》
《实验大纲》内容一般包括实验项目;实验目的和预期效果;实验方法、条件;观察、检验的项目(指标)、步骤和进度;实验记录和安全规则;人员组织分工;物资器材准备。还有《实验大纲》应经过领导审查批准。
●实验
按照批准的《实验大纲》实施,要对实验全过程中的现象、数据、结果进行认真、及时、准确地记录,发现问题及时研究解决。
在实验室实验成果的基础上,对条件较成熟的项目,可以考虑继续进行中间性试验或扩大试验,以解决过渡到成批生产中的技术问题。这里主要考虑成批生产的质量和性能如何;工艺流程和设备是否合理;产品技术条件或工艺设计参数是否成熟;技术经济指标是否科学合理。
●编写《实验报告》
整理实验结果,编写《实验报告》,其内容有实验方法和结果;分析和结论;对下一步实验工作的意见和建议;经验、教训;参考文献、资料等。如进行了中间性试验或扩大试验,应整理出能批量生产的技术资料。
4. 检测试验阶段
本阶段目的是对设计试制出来的样品进行检测试验,送用户试穿(戴)试用,考察其性能指标是否达到了设计要求,为最后进行总结鉴定提供依据。
通常对试制出来的样品,应先经过全面系统的性能检测试验或环境模拟试验,为下一步送用户试穿试用提供数据和资料,送用户试穿试用的主要工作内容是:
●制定《试穿试用实施计划》
其内容包括:项目名称;意义和目的;试穿试用内容;试穿试用方法和步骤;试穿试用时间和地点;试穿试用品及有关器材物资的准备;安全应急措施制定。
●试穿试用的实施
开发人员要向试穿试用单位和人员说明试穿试用品的性能特点,试穿试用的目的、意义、方法和步骤,征求他们对实施计划的意见,取得协同配合,共同完成任务;开发人员要亲自参加试验,认真观察、测试、记录,及时分析进展情况,发现问题及时纠正;如需要长期进行试穿试用时,可以委托试穿试用单位进行,但必须在试穿试用试验走上正轨以后,并将有关注意事项交代清楚,后期还需不时地派人去现场观察情况,分析测试数据,防止试验半途而废或图省事报喜不报忧。
●编写《试穿试用报告》
试验结束后,要认真整理分析试穿试用记录;组织参试单位人员讨论,收集意见;编写《试穿试用报告》。其内容包括试穿试用的内容和方法;试穿试用时间、地点、条件、结果;对试穿试用结果的分析及结论性意见(如是否达到设计技术指标要求等);改进意见。
经过试穿试用未达到预定指标要求的,应认真分析找出问题所在,进一步修改设计,进行下一轮样品样机的试制和试验。
5. 总结鉴定阶段
本阶段的目的是对项目研制工作进行全面总结,进行鉴定,对项目的结果作出评价。
●总结
一是搞好《项目开发研究总结》。包括项目来源、目的、意义;研究工作概况;技术性能指标完成情况;试穿试用情况和参试单位的评价;结论意见(用途、使用价值、适用范围、生产和推广应用的可能性;项目达到的技术水平、存在问题及改进意见等。
二是修改、完善设计图纸和各项技术资料。包括设计图纸、技术要求、材料规格、工艺技术资料、设备条件、验收条件或分析鉴定方法、技术标准等。
三是做好开发研究的《组织工作总结》(项目简单时可以不写)。
四是编写《新产品穿(使)用说明书》。包括新产品的用途、规格、主要性能、适用范围、穿(使)用方法、维护方法及穿(使)用中的注意事项等。
●鉴定
研制项目经过上述各阶段,达到预定的研制目的和技术性能指标要求,经过半年生产实践考验后,如效果较好,技术资料齐全,具有在安全生产中推广应用的可能性和必要性,即可申请进行专家鉴定。经专家鉴定通过及上级主管部门批准后可组织批量生产和投放市场。
10.扶贫开发年终工作总结优秀 篇十
一、扶贫开发工作完成情况
今年以来,我区已有低收入农户脱贫3.5万人,脱贫率28.3%;20个经济薄弱村集体经营性收入达到某某万元以上,达到新“八有”标准。
1、召开会议,部署工作。3月25日,我区召开了全区扶贫开发工作会议。会议总结了20某某年工作,部署了新一年的任务。会上各乡镇递交了责任状,同时继续向经济薄弱村选派了驻村指导员。会议动员全区上下围绕“村村有主导产业、户户有增收项目”的目标,大力做好帮扶对象、帮扶责任人和帮扶项目“三落实”的工作。会议出台了《关于实施精准扶贫加快脱贫奔小康工程》、《关于明确20某某—20某某年度帮扶任务的通知》等文件。重点部署了精准扶贫、帮扶到户的工作要求。
2、瞄准对象,精准扶贫。根据国务院和省市精神,我区出台了某某39号文件,对实施精准扶贫提出了具休的方法和要求。采取多种方法,瞄准帮扶对象,实行一户一策,进行全方位帮扶,做到细致排查、摸清底数、分类帮扶、注重实效。一是深入开展局村挂钩。区直单位和乡镇挂钩帮扶一个以上村,确保全区243个有脱贫奔小康任务的村都有机关帮扶。二是启动实施村企结对。选择区内百强企业开展“百企帮百村”活动,向全区50个经济薄弱村和某某地区的所有村,选派百强企业开展多种形式的结对帮扶活动。三是扎实开展干部包户。区乡所有在职在编党员干部结对帮扶低收入农户,最多不超过三户。四是奖补资金帮扶到户。五是突出重点片区帮扶。
3、全力组织,发放贷款。一是加大宣传力度。采取印发宣传单通过帮扶单位发放到低收入农户手中,在区乡有关会议上宣传,在区报上刊登农村扶贫小额贷款发放有关规定等形式,深入宣传贷款发放对象、贷款额度、期限、用途和利率等内容;二是积极和某某市农村商业银行、区财政局领导协调解决推进我区扶贫小额贷款发放难的有关问题;三是每月2日定期召开信贷员例会,到场鼓劲加压,通报每月的发放情况。截至目前,我区扶贫小额贷款发放1亿元,惠及低收入农户8976户。
4、科学规划,精心实施。我区坚持以促进经济薄弱村和低收入农户持续双增收为首要任务,精心编排20某某年财政奖补资金项目,确保3.48万低收入人口脱贫、20个经济薄弱村达到新“八有”目标。目前,通过多次调研,20某某年财政奖补资金主要用于低收入农户利用扶贫小额贷款发展产业项目贷款贴息、低收入农户发展“种植、养殖、加工”和经营性三产项目直接补贴到户、用于低收入农户参加合作组织、家庭农场、经营性三产项目入股资金,参与利益分配。目前已完成项目上报、区级批复工作,全部进入实施阶段。
5、重点片区,全力推进。一是加大某某地区帮扶项目建设力度。20某某年,20个区级部门排出交通、水利、产业、民生四大类项目28个,其中有10个重点项目。区某某地区帮扶办组织人员,采取一周一督查,二周一通报,一月一会议的工作方法,进行强有力的推进和督查。同时,不定期编发工作简报,向省级帮扶单位报告情况,取得了良好效果。目前,28个项目中水利骨干工程和高标准农田建设2个项目已竣工,其余26个项目正在建设,已争取省级帮扶资金2.1亿元。二是加大某某地区关键性工程项目建设进度。某某光伏农业产业园、某某蓝莓种植产业园、某某镇“某某黑猪”养殖与产业化推广项目、某某镇蔬菜种植产业园、某某镇中药材产业园、某某镇精品苗木产业园、某某乡优质设施蔬菜生产基地和某某现代农业产业园等8个项目已竣工;某某某某猪产业园、某某镇连栋大棚采摘园、某某镇农副产品加工园、某某镇涧桥高效农业园和某某乡植尔丰高效农业种植基地等5个项目在建。建成高效农业面积1万余亩,带动某某地区1000余名低收入农民就业。项目建成后,项目区亩均效益达5000元以上,农民人均年增收余元,经济薄弱村集体年增收10万元以上。
6、做好服务,合力争取。2月17日、28日我们分别迎来了省、市委驻淮扶贫工作队。为了服务好工作队,给他们营造一个好的工作生活环境,我们提前做好一切准备,做了悉心安排。工作队到达后,我们配合他们做好队员驻村分工,帮助与乡镇对接,下乡调研,编排项目等工作。目前,省市工作队的队员均已入乡驻村,了解了村情和需求,编排了切合村实际情况的帮扶项目,各项工作有序开展。
二、“扶贫日”系列活动开展情况
按照省扶贫办《关于组织开展“10·17”全国“扶贫日”某某活动的通知》以及市《关于开展“扶贫日”慰问低收入农户和贫困老人活动的通知》文件精神,我区于10月12日—17日组织开展了“扶贫日”慰问低收入农户、贫困老人活动。活动期间,区直及乡镇共计96个单位慰问低收入农户5458户、贫困老人3260人,发放慰问金162.1万元、慰问品21.9万元。现将开展活动情况如下:
1、统一部署,落实责任。我区以文件形式明确区直和乡镇机关所有干部全部参加,慰问被帮扶村建档立卡低收入农户、贫困老人。各帮扶单位组织人员进村入户送资金、送物资、送岗位、送政策、送科技、送文化、送法律、送医疗,因地制宜、形式多样地开展扶贫济困送温暖活动,协调解决慰问对象在生产生活中存在的困难和问题,切实增强他们脱贫致富的信心。区人社局、民政局、教育局、卫生局、团委、妇联、总工会、残联等单位在活动期间分别开展了专项帮扶。
2、广泛宣传,营造氛围。由区扶贫办牵头,联合报社、电视台开辟专版专栏,大力宣传近年来扶贫帮扶工作取得的成绩。10月16日《某某报》以一个整版的篇幅专题报道扶贫工作,题为《奏响扶贫开发和谐乐章》,具体详细的报道了全区扶贫帮扶工作,取得了良好的宣传效果和社会效应。电视台开辟专题,每天及时报道扶贫慰问情况。10月16日—17日两天,在区行政中心大屏幕滚动播出宣传标语。并及时将宣传张贴画发到乡镇和部门,共计发放350张。
3、领导重视,组织有力。10月16日,省政府副秘书长、办公厅主任某某带领省政府办公厅各处室负责同志到某某乡调研帮扶及驻村挂钩工作,并走访慰问困难群众。座谈会上,某某表示,省政府办公厅将举全系统之力,带着责任和感情全力帮助某某发展。当日,某某一行实地考察了某某乡腾奥纺织、蓝莓湾、闽丰食用菌和红色影视基地,并在全国首个“扶贫日”到来之际,给某某乡部分困难群众送去了慰问金和祝福。10月17日上午,市委书记某某来我区调研扶贫开发工作,研究部署下一阶段扶贫开发工作。他要求以“全国扶贫日”为新的起点,积极顺应扶贫开发新形势新任务新要求,不断提高扶贫开发质量和效益,全力加快贫困地区脱贫进程,确保如期完成脱贫奔小康目标任务。在某某镇民主村,某某站在田间地头,详细了解了某某片区连片开发和某某镇现代农业产业园的相关情况,关切地询问低收入农户如何从产业园建设和扶贫开发中真正受益。某某走进蔬菜大棚,仔细察看辣椒的生长情况,并向绿丰合作社负责人详细了解合作社的运营、投入、产出、销售、用工等。当日,某某还到困难群众某某家走访慰问。10月16日上午,区委书记某某走访慰问某某乡后河村八组困难群众唐志成和某某乡中心小学残疾学生陆建宇,为他们送去慰问金及党委、政府的关爱。10月21日,区长某某冒雨赴凌桥乡走访慰问某某村五组困难群众徐兆明和某某村二组困难群众某某,为他们送去慰问金及党委、政府的温暖。
在活动开展期间,乡镇与部门纷纷行动起来。区新闻中心全体干部职工赴结对帮扶的某某乡某某村开展慰问活动。走访慰问该村低收入农户、贫困老人9户。活动中,帮扶干部与困难群众一对一进行谈心交流,深入了解他们的困难所在、健康状况等,鼓励他们乐观生活、努力脱贫,并为每一位困难户送上慰问金。区供销总社领导班子一行到结对帮扶的某某镇四门闸村开展扶贫送温暖活动。活动中,帮扶干部、职工深入到帮扶贫困户家中进行走访慰问,详细了解贫困户的生产生活状况,鼓励他们以奋发向上的精神早日走上致富之路。慰问组先后走访慰问6户困难户,为他们送去慰问品和慰问金。区地税局全体干部职工分赴挂钩帮扶点某某乡某某村和某某乡某某村、某某村,帮扶慰问困难群众20户,发放慰问金10000元。活动中,帮扶干部走访了结对贫困户,与他们进行亲切交谈,详细了解家庭生活情况,帮助解决实际困难,鼓励他们树立积极乐观的态度,努力创造幸福美好生活。区财政局组织干部职工分两组赴某某镇某某村、小摊村、沟北村慰问低收入农户、贫困老人30户,并送去了慰问金。在“扶贫日”活动中,他们还了解了低收入农户的农业生产情况和贫困老人的身体健康状况,给他们带去了组织的关心。某某镇组织党员干部走村入户,开展“扶贫日”慰问困难户活动。一是为困难群众送去慰问金,解决实际困难;二是表达党和政府的关心,鼓励脱贫;三是对困难原因进行详细调查摸底。针对具体情况,给出脱贫意见建议,为困难群众早日摆脱贫困提供助力。
我区“扶贫日”活动,社会响应是热烈的,工作是扎实的,成效是显著的。但由于是首次活动,工作经验不足,筹备时间仓促,加上一些部门单位重视不够,工作的效果与要求还有距离。
11.软件工程师年终工作总结 篇十一
在2020这个特殊的一年,自己有幸的接触了云环境的运维和开发类的相关工作,对于新的环境既充满了好奇,同时也面对着挑战,记得刚开始每一次操作都战战兢兢,内心也是很紧张的,执行完成后,就实时关注群消息,看告警等一系列动作。但是通过对架构的熟悉,相关功能的测试和演练,自己在今年也完成如下的一些相关工作。
疫情期间,完成了远程和现场上班的方式,保证了业务系统的正常运行,完成了coredns在测试环境和生产环境的升级部署工作,包括在线无缝版本升级以及部署localdns的本地部署工作,解决了dns单点故障和冗余的问题,确保生产环境的稳定。
完成并实施了基于ingress垂直部署方案落地到实施,此举可以保证在不中断业务的情况下,可以完成版本升级,服务器故障降级,快速恢复等功能。
完成了基于go语言的自动机安装k8s集群以及calico网络的配置,集群从实施到交付时间提高了90%。
完成了service mech(istio)的调研和测试工作,最终在“ai中台环境”完成了一次小范围的上线工作,目前运行良好
完成了联通3号机房3套k8s云环境的建设以及持续的迁移等相关工作
这是我在马上的第三次岗位调动,在个人成长方面也有很大的收获,如在运维方面,主要掌握了基于k8s在云环境在使用,以及基于k8s环境相关组件的使用(如,coredns,ingress,kubeadm,k8s相关组件(如,k8s-api,kubelet,控制器,调度器等);在开发方面,掌握了使用go语言开发相关功能(其实这一步收获还是很大,从传统的运维到运维开发的一个过渡);在视野方面,了解了很多基于云的前沿技术,如cdn,serverless,service mech(istio);在经验方面,对任何的操作一定要了解或者通过制度去判断其中的风险,并深刻认识到如果减少人为操作,将会减少生产故障,而对于重要工作则应采取双人复核的机制;在自我提升方面,如在问题解决,高效沟通,说服表达,设计思维,团队效率进行了深入的学习。虽然自己学习到了很多知识,但也发现自己的不足,如程序的整体架构设计能力欠缺,自己也发现可以去实现具体某个功能,却很少去思考整体的关联。在关注面欠缺,这一点对于自己而言也是深有体会,记得在一次扩盘的操作中,自己只是关注了磁盘扩容成功了,但是并没有关注当前磁盘还有其他应用在使用,最后导致了一次故障的发生。最后也总结了一下,学无止境,心态归零。
对于2021的主要计划是提供更加全面的服务体系和自我能力提升,规划如下:
1、掌握crd的开发:学习目前运行的crd的工作原理,计划在5月中下旬完成整体的demo的开发实践。
2、服务能力提升:可在统一的系统平台,完成资源的统一化管理,如基于纯物理环境、虚拟机环境,k8s环境等。提供统一的部署服务,如elb,bond,ingress,coredns等组件的安装,计划在6月底实现第一版的落地。
12.MP3解码程序开发 篇十二
MP3, 全称为MPEG1 Layer-3音频文件 , 是一种常 见的音频文件格式。MPEG1标准, 按照压缩质量和编码复杂程度分为3层, MP3就位于第3层。MP3的压缩率可达10: 1至12: 1。一分钟未压缩的原始音频数据需要10MB空间 , 经过MP3压缩就只需要1MB空间 , 而且MP3解码后数据在回放时能达到比较接近原音源的效果, 因此MP3文件得到了广泛的应用。
WAV文件是Microsoft公司开发的音频文件 , 其中的数据一般是未经压缩的PCM原始数据。
下面开发一个实现MP3解码的程序, 结果存为WAV格式。本程序目前只支持MPEG版本为1, 层为3, CRC校验位为无, 比特率为128kbps, 采样率为44.1khz, 频道为联合立体声, 强调位为0的MP3文件解码。
2 MP3 文件结构
MP3文件由若干帧组成 , 各帧编码数据相互独立。
每帧数据由帧头、帧边和主数据3部分组成。
帧头数据总长32比特, 具体如表1所示。
帧边数据总长32字节, 包括解码中需要的一些辅助信息具体如表2所示。
MP3每一帧分为2个粒度组 , grunale0和grunale1, 每个粒度组再分为2个声道, channel0和channel1。因此每个帧边信息包括4个单元, 按照gr [0] ch [0]、gr [0] ch [1]、gr [1]ch [0]、gr [1] ch [1] 的顺序排列。
main_data_begin: 该数值指出主数据在该帧同步之前多少个字节开始。MP3每帧数据是不定长的, 为增加空间利用率,当前帧未使用完的空间可以保留起来给后面帧使用, main_data_begin指出了这个开始位置 , 该值忽略帧头和帧边信息。
part2_3_length: 表示主数据中缩放因子和哈夫曼编码共占用多少比特。
global_gain、preflag、scalefac_scale: 逆量化用的参量。
subblock_gain: 短窗块逆量化用的参量。
window_switching_flag: 不同的窗类型 , 接下来的相应字段也有区别 。该值为0, 块类型为0; 该值为1, 块类型由blocktype字段取得。
block_type: 块类型 , 0-缺省1-开始块3-结束块2-短块 ,其中0、1、3表示长块、2表示短块。MP3有3种块类型, 长块、短块、混合块。MP3块分为32个子带, 长块每个子带18个样本, 短块每个子带6个样本, 混合块对低频2个子带使用长块, 其余30个子带使用短块。MP3帧既可以全部使用长块,也可以全部使用短块, 也可以长块短块混合使用。
mixed_block_flag: 混合块标 志 , 和block_type =2配合使用, 值为0时, 表示短块; 值为1时表示混合块。
2.1 子带和缩放因子频带
MP3每个单元解码可以得到576个数据。这576个数据在不同的块类型下有不同的含义:
2.1.1 长 块
这576个值表示576条频率线上的值。这576条频率线从低到高分为32个子带, 每个子带18条频率线。解出来的这576个值是整数 , 需要进行逆量化变成浮点数 , 逆量化的过程并不是一条频率线为单位进行的, 而是若干条频率线为单位进行的, 这若干条频率线组成了频带 (band), 叫做缩放因子频带 (scalefactor band) ,顾名思义, 在一个缩放因子频带内的频率线在逆量化时共用缩放因子。在44.1khz的采样率下, 缩放因子频带的划分如表3所示。
频率线418至575不需要归属于以上频带, 这个范围的频率线进行逆量化时, 使用默认的逆量化因子。
2.1.2 短 块
这576个值表示192条频率线上的值。这192条频率线从低到高分为32个子带, 每个子带包含6条频率线。每一条频率线上 有3个值 , 分别属于3个窗 (window0、window1和window2) 。这192条频率线被划分为若干缩放 因子频带 , 在44.1khz情况下 , 划分如表4所示。
频率线136至192不需要归属于以上频带, 这个范围的频率线在进行逆量化时, 使用默认的逆量化因子。按先后顺序解出来的这576个值先是按缩放因子频带从低到高排列, 在每一个缩放因子频带内, 按window0, window1, window2排列, 在每一个window中, 频率线从低到高排列。
2.1.3 混 合块
在这种情况下, 按先后顺序解出来的576个值分为两部分, 第一部分 (前36个值) 是长块部分, 故它们代表36条频率线 , 这36条频率线 划分为8个缩放因 子频带 ; 第二部分(后540个值 ) 是短块部分 , 它们代表180个频率线 , 每个频率线上有3个值, 分别属于window0、window1和window2, 这180个频率线 划分为9个缩放因 子频带 ( scalefactor band3 ->scalefactor band11)。
综合上述3种情况, 这576个值排列方式如图1所示。
2.2 哈夫曼码表选择
缩放因子、大值区、count1区和零值区分布如图2所示。
MP3帧 , 主数据分为缩放因子和哈夫曼码两部分 , 哈夫曼码部分又分为大值区bigvalue, count1区, 零值区rzero。大值区得到的值比较大, 一共有bigvalue*2个值, 每两个值一起编码。count1区值只能为-1、0、1三者之一, 每4个值一起编码。零值区值全为0, 不需要编码。主数据仍然按照gr [0] ch [0]、gr [0] ch [1]、gr [1] ch [0]、gr [1] ch [1] 的顺序进行存放。
在不同区域编码时, 用到的huffman表是不一样的。
在对大值区bigvalue进行编码时, 为了进一步提高MP3的编码效率, 当window_switching_flag [gr] [ch] 为0时, 大值区又分为3个区域: region0、region1和region2, 在不同区域用不同的huffman表编码。region的划分是以缩放因子频带为单位划分的。帧边信息中, region0_count [gr] [ch] 和region1_count [gr][ch] 提供了划分信息。region0_count+1表示在region0区的缩放因子频带的个数, region1_count+1表示在region1区的缩放因子频带的个数。region2区的长度在帧边信息中并没有给出, 但是根据big_values [gr] [ch]、region0_count [gr] [ch] 和region1_count[gr] [ch] 可以计算出来。当window_switching_flag [gr] [ch] 为1时 , 大值区只 分为两个 区域 , region0和region1, 这时regio0_count是系统默认的。长块时 , region0为长块前8个缩放因子频带sfb0至sfb7, 短块时, region0为短块前3个缩放因子频带sfb0至sfb2, 混合块时, region0为长块前8个缩放因子频带sfb0至sfb7。在得到大值区region的划分之后, 就可以根据table_select [gr] [ch] [region] 来选择在 每个区域 所用的huffman码表, 一共有32个huffman码表可供选择。
在count1区, 所用huffman表的选择信息由count1table_select [ gr] [ch] 提供。需 要说明的 是 , count1区的长度 是count1*4, 虽然在帧边信息中并没有count1, 但解码程序知道在耗尽part2_3_length [gr] [ch] 长度的码流之后就可以判断已经达到了count1区的末尾。count1区用到2个huffman码表。
零值区只需将576个值中除去大值区和count1区的其余数值直接置0即可。
大值区的huffuman表一个入 口项可得 到两个值x、ycount1区的huffman表一个入口项可得到4个值v、w、x、y大值区的huffman表有一个参数为linbits。当linbit为0时, 该huffman表只能用来编码小于等于15的数。当linbit不为0时该huffman表可用来编码值大于15的数, 当用这样的huffma码表编码时, 如果x或y的值为15, 在hcod [|x|] [|y|] 之后的码流中有linbit位, 这长度为linbit的位串表示无符号整数, 它与x (或者y) 相加后表示x (或者y) 真正的编码值。如果得到的值 (x、y或v、w、x、y) 不为0, 还要读取1位符号位, 以确定数值的正负。
2.3 缩放因子
一个缩放因子频带内的频率线在逆量化时共用缩放因子在码流中, 缩放因子被编码于main_data中。要解码得到缩放因子, 首先需要知道该缩放因子所占的比特数, 在帧边信息中scalefac_compress [gr] [ch] 提供了这样的信息 , 首先需要查找如表5所示。
针对不同的块类型说明slen1和slen2的含义。
2.3.1 长 块
slen1表示缩放 因子频带0到10所用缩放 因子的长 度slen2表示缩放因子频带11到20所用缩放因子的长度。
2.3.2 短 块
slen1表示缩放 因子频带0到5所用缩放 因子的长 度slen2表示缩放因子频带6到11所用缩放因子的长度。
2.3.3 混 合块
在这种情 况下 , 长块部分 (sfb0到sfb7) 和短块部 分(sfb3到sfb5) 所用的缩放因子的长度相同 , 为slen1; 短块部分 (sfb6到sfb11) 所用的缩放因子长度相同, 为slen2。
为了进一步地减少MP3码流的大小, granule1有时会共用granule0的缩放因 子信息 , 是否共用 由字段scfsi [ scfsi_band]来决定, 只有granule1的长块才可以共用granule0的缩放因子信息, 如表6和表7所示。
3 WAV 文件结构
WAV文件结构如表8所示。
4 MP3 解码流程
MP3解码以帧为单位进行 , 每一帧解码分为帧同步、帧头信息读取、 帧边信息读取、主数据读取、逆量化、重排序、 立体声解码、混叠消减、IMDCT、频率反转、子带合成 几个步骤。下面分别说明:
4.1 帧同步
找到每一帧的开始。在MP3码流中, 相邻两个同步字之间的距离 (也就是一帧的长度) 是slot的整数倍, 其中slot就是一个字节。一帧的长度要么是N个字节, 要么是N+1字节。帧头信息中padding字段决定了是否有1个附加字节。其中N=144*bitrate/samplerate, 当采样率为44100, 比特率为128000时, N=417。
4.2 帧头和帧边信息读取
按照帧头和帧边数据定义进行读取。
4.3 主数据读取
包括缩放因子解码和哈夫曼解码。
根据帧边信息中的scalefac_compress和标准中的对应表格来确定的slen1和slen2对缩放因子进行解码, 即直接从主数据块中读取缩放因子信息并存入表scalefac_l [gr] [ch] [sfb和scalefac_s [gr] [ch] [sfb] [window] 中。
根据帧边信息中的table_select和count1table_select对哈夫曼编码进行解码。
这一步完成应该得到4套缩放因子和4*576个解码后的哈夫曼值。
4.4 逆量化
经过Huffman解码之后的值必须经过逆量化的处理, 逆量化过程根据块类型使用不同的逆量化运算公式, 其逆量化的公式如下:
4.4.1 长块
4.4.2 短块
4.4.3 混合块
长块部分按长块公式逆量化, 短块部分按短块公式逆量化。
isi:第i个完成哈夫曼解码的值
scalefac_multiplier: (scalefac_scale [gr] [ch] +1) /2
pretab: 逆量化用的一个表
4.5 重排序
在MP3编码算法的MDCT步骤中, 长块类型的频域值按频率由低到高排列; 对于短块类型, 频域值则是按缩放因子频带、频率、窗的顺序排列。为了提高Huffman编码效率, 短块类型的数据被按照缩放因子频带、窗、频率的顺序重新排列因此解码时, 需要把短块的频域值还原为初始的缩放因子频带、频率、窗的顺序。需要重排的数据类型包括短块以及混合块中的短块部分。
重排序示意图如图3所示。
4.6 立体声解码
在联合立体声模式中, 有两种立体声模式, 强度立体声和MS立体声。
在强度立 体声模式 中 , 左声道传 的是幅值 , 右声道的scalefactor传的是立体声的位置is_pos。需要转换的频率线使用右声道的缩放因子来作为is_pos。
在MS立体声模式中, 传送的是规格化的中间/旁边声道的信息。
其中Mi是channel [0] 的值, Si是channel [1] 的值。
4.7 混叠消减
为了避免相邻的两个子频带之间的混叠, 在编码和解码中都需要进行去混叠的处理, 这个运算可以看成是对任意两个相邻子频带连续做8次的butterfly运算, 该运算只对长块和混合块中的长块部分使用。具体算法如下:
其中Ci可从混叠消减用的表查得。
计算流程如下 (pascal描述):
4.8 IMDCT
MDCT的目的在于进行时域到频域的转换 , 减少信号的相关性, 使得信号的压缩可以更加高效地完成, 而它的反变换IMDCT的目的在于将信号还原为没有变换之前的数值 , 使频域值向时域值过渡。
其公式如下:
在进行了IMDCT变换之后, 需对频率信号进行加窗、覆盖、叠加。
4.8.1 加窗
(1) 长块
(2) 开始块
(3) 结束块
(4) 短块的每个窗口分别计算
4.8.2 叠加
将每一块变换出来的值的前半部分与前一块的后半部分相加, 并把后半部分保留来和下一块的前半部分相加。
4.9 频率反转
在IMDCT之后, 进入子带合成之前必须进行频率反 转方法是将奇数号子带的奇数个采样值乘以-1。
4.10 子带合成
该步算法如下:
(1) 将从32个子带抽来的32个sample值通过一个矩阵运算算出64个中间值。
(2) 将这64个中间值放入一个长度为1024的FIFO缓冲区, 这个缓冲区初始化为0。
(3) 从这个缓冲区中每连续的128个值中取头尾各32个值, 合为64个值。完成后组成512值的向量U。
(4) 加窗 , 即将Ui与窗口系数Di相乘 , 得到另一512值向量W。
(5) 最后将这512值向量W每连续的32个值中顺次取一个值, 一次共取得512/32 = 16个值相加, 然后将该值乘上一个常数, 取得最终的数值。完成后一共取得4*18*32个最终的PCM数值。最 后将PCM数据写入WAV文件中 , 就完成了MP3解码
5 结语
13.软件工程师年终工作总结 篇十三
时间一晃而过,转眼间20xx年已接近尾声。回首繁忙而又充实的20xx年心中不禁感慨万千,过去的一年中通过自身的不断努力,使得技术水平、沟通技巧等方面都取得了一定的进步,当然亦有需要改进的地方,这是我人生中弥足珍贵的经历,也给我留下了精彩而美好的回忆。
非常幸运能够来到**公司参加工作,上任软件工程师这一职位。回顾业务培训期的一个月工作,感触很深,收获颇丰,我们首先对宽带医生这项业务的前期推出做了很细致的准备,仔细讨论了在业务推出以后可能遇到的种种困难;然后参加了代维部门的实践学习,深入了解了网络的接入技术,以及在修障过程中遇到的问题,接着参加了为期两天的新员工入职培训班,认真听取了相关领导对公司的发展概况,组织结构,以及各部门职责的介绍,并认真学习了公司的基本业务和增值业务,对公司的产品和服务有了很清楚的认识。
后期在主管的带领下,我们陆续对周边保有用户进行了宽带医生免费体验活动,也让用户知道我们这项延伸服务的推出,树立我们**宽带的品牌形象。
在过去的工作当中,在领导和同事们的悉心关怀和指导下,通过自身的不懈努力,各方面均取得了一定的进步,但那些远远不够,我也在实际工作中认识到自己的不足,业务还不够熟练,很多知识还有欠缺,处理事情不成熟。因此在今后的工作中,我将努力提高自身素质,克服不足,朝着以下几个方向努力:
1、学无止镜,时代的发展瞬息万变,各种学科知识日新月异。我将坚持不懈地加强学习,向理论学习,向专业知识学习,向身边的同事学习,逐步提高自己的理论水平和业务能力,并用于指导实践。
2、“业精于勤而荒于嬉”,在以后的工作中不断学习业务知识,通过多看、多学、多练来不断的提高自己的各项服务技能,克服年轻气躁,做到脚踏实地,提高工作主动性,不怕多做事,不怕做小事,在点滴实践中完善提高自己。
3、不断锻炼自己的胆识和毅力,提高自己解决实际问题的能力,并在工作过程中慢慢克服急躁情绪,积极、热情、细致地的对待每一项工作,继续提高自身文化的修养,努力使自己成为一名优秀的软件工程师。
4、在工作上积极配合省公司“关于配合全省宽带续费率提升活动开展“宽带医生”服务的建议“的活动;加强对武进、新区、金坛宽带医生的业务宣传,增加这些区域的服务量;加大对他网用户的宣传,扩大宽带医生的服务群,争取将用户发展为本网用户;明确宽带医生远程服务软件的一整套受理、安装、服务的流程,加强远程服务软件的推广,将远程服务和上门服务结合起来。
本文所叙述的软件工程师工作总结,软件工程师年终总结中其中一点至关重要的那就是:学习!不断学习!掌握一门学问远远没有想想的那么高难、深奥。多方吸取、广泛涉猎。极力夯实自己的影响圈、尽量扩大自己的关注圈。想成为出色的软件工程师不仅仅是软件知识,还有财务、经济、税务、管理等等知识,有空花时间看看,韬光养晦、未雨绸缪。希望这里介绍的软件工程师工作总结,软件工程师年终总结对您能有所启迪。
14.软件开发年终个人总结 篇十四
一、顺利完成协会换届工作
20xx年4月,举行协会第二届换届工作会议,选举产生了新一届协会理事会,包括理事长、副理事长、常务理事、监事会成员、监事会召集人、秘书长、副秘书长等;并聘请了2名协会顾问。截止20xx年12月31日协会会员共254家。
在换届工作的基础上,协会进一步规范了协会秘书处的工作程序,修订了一系列的内控管理制度,包括对已有各有关管理制度的修订完善,并新增4项管理制度,积极探索协会工作机制,使协会工作更加程序化、规范化、制度化。
二、规范协会理事会工作程序
为了进一步加强协会理事会对协会工作的领导职能,20xx年6月,在宁波召开了浙江省软件行业协会第二届理事会二次会议,会议表决、通过了《浙江省软件行业协会第二届理事会工作规范》和《关于发布“浙江省软件行业知识产权保护公约”成立“软件行业协会软件知识产权调解委员会”的工作建议》。
《工作规范》强调了理事会对协会工作的领导职能,进一步明确了协会理事会的权利和义务,以及适时增选或取消理事会成员资格的工作程序,对协会工作运行模式进行了新的探索。
成立知识产权调解委员会是我省规范软件产业健康、有序发展的客观要求,也是企业实施品牌战略的环境保证。目前,已有十几家会员单位申请参加“知识产权调解委员会”。
三、持续推进基础软件的研发和应用推广
长期以来,我会一直致力于积极推进我省基础软件的研发和应用。20xx年,我会以专家委员会成员单位参与了“钱塘平台软件产业联盟”的工作,本联盟由浙江大学、杭州国家软件产业基地有限公司、阿里巴巴网络技术有限公司等13家单位共同发起,以增强自主创新能力为目标,使用自主研发的平台软件进行应用软件的研发,进一步提升浙江软件产业的竞争力。
联盟企业单位包括了平台软件提供商、应用软件开发商、系统集成商。其中应用软件开发商包含了电子商务、通讯、金融证券、电子政务等软件应用方向。今后,这些企业单位都将免费使用浙江大学研发的钱塘中间件平台软件进行应用开发。联盟将支持自主平台软件产品的示范应用及推广,树立最有影响力的自主高端平台软件品牌,构筑协同联动的软件产业链,增强我省软件企业的自主创新能力。平台还将以企业为主体,积极研究拟定相关技术标准和规范,提出促进科学研究、产业与应用发展的建设性意见。联盟在年内达到100家左右的规模,2~3年内发展成为一个在国内具有较大影响力的软件产业联盟。
四、努力构建企业交流服务平台
20xx年协会组织会员企业参加了各类展会、论坛、人才、政策、市场等信息交流活动。主要包括:20xx年4-5月间分别参加了嘉兴市信息产业推荐会,嘉兴市软件企业沙龙,嘉兴南湖经贸洽谈会等,宣贯了我协会的服务内容和“双软认定”工作以及软件产业有关政策。
20xx年6月,组织企业参加了中国第十二届软件博览会。本次展团以“浙江软件引领行业应用,浙江软件创新传统产业”为主题,组织了在证券、金融、电信、电力、ERP、电子地图等行业应用领域最具影响力的七家软件企业参加了博览会。他们分别是:恒生电子股份有限公司、信雅达系统工程股份有限公司、浙江大学快威科技集团有限公司、浙江三维通信股份有限公司、浙江鸿程计算机系统有限公司、宁波东海蓝帆科技有限公司、杭州阿拉丁信息科技有限公司。本次展会,浙江三维通信股份有限公司的“北京奥运媒体村移动通信网络优化覆盖解决方案”荣获了“改革开放三十周年中国软件行业电信信息化优秀解决方案”。浙江省信息产业厅和浙江省软件行业协会获得了“20xx中国国际软件博览会最佳组织奖”。
20xx年6月,组织参加了在大连世博广场举行的“20xx中日信息服务外包对接交流会”。我省鸿程系统、鹤翔(杭州)软件、网新新思等三家软件外包企业参加了与日本企业的对接活动。
20xx年7月,配合中国软件行业协会财务与管理软件分会和ERP世界网组织、举办了“中国信息化35周年经典回顾全国巡展杭州站活动,我省正泰、传化等信息化应用和开发等42家企业的代表参加了本次活动。
20xx年11月12日,组织软件外包企业参加了浙江省静冈县IT产业交流会,本次会议增进了日本IT产业界对我省信息产业尤其是软件与信息服务业发展状况、投资合作环境、市场信息、人才需求的了解,加强了双方的合作交流。
20xx年11-12月,协会作为承办单位之一,组织了由省信息产业厅、省教育厅主办的“20xx浙江IT企业人才服务月活动”,本次活动由启动仪式、人才招聘、企业家进校园、长三角人才创新论坛等一系列活动组成。征集了70多家会员单位的人才需求信息,并组织54家会员单位参加了启动仪式及招聘会;29家会员参加了嘉兴长三角人才创新论坛及招聘活动。作为本次活动的后续服务项目,浙江省大学生网上就业市场(,)将为对人才信息有需求的企业提供免费发布招聘信息、免费搜索已激活的人才信息、免费参加实体市场招聘信息的服务。
五、积极开展行业培训
组织部分会员参加了国家体改委组织的创业板上市发行与私募股权融资实务操作高级培训班、工信部人才交流中心组织的全国RFID(无线射频识别技术)应用高级研修班、劳动合同法高级专题研修班、软件金领架构师培训班、需求分析师培训班等。
20xx年8月,与中信保合作举办了由美国卡内基梅隆大学国际软件研究院著名软件工程专家授课的CMMIATM成员课程培训班。
20xx年7月举办了“双软认定税收优惠政策及财税实务培训班”,并就企业在享受优惠政策过程中碰到的实际问题与有关专家进行了探讨、交流。50多家会员单位和8家非会员企业共120xx参加了培训活动。
20xx年12月与微软(中国)有限公司平台及开发技术合作部联合举办了“微软VisualStudio20xx专业研讨会”,我会43家会员,148人参加了本次研讨活动。协会还与微软(中国)有限公司在产品技术研讨、会员单位产品开发技术支持、会员单位产品团体采购优惠等事宜达成了合作协议。
六、组织项目申报,充分提高全省软件产业的显示度
受省发改委委托,组织了国家规划布局内重点软件企业申报工作,我省共向中国软件行业协会推荐了24家软件企业参加评选。
组织申报了20xx中国创新软件产品和中国创新软件企业,但我省软件产品和企业均无缘进入前十强。
组织申报了中国优秀工业软件,杭州和利时自动化有限公司获得了20xx中国优秀工业软件企业。
组织申报了优秀软件产品,鸿程信息的“鸿程通航融全平台系统管理软件V1.0”等七个软件产品通过了终审,通过率为64%。
积极参加中国软件行业企业首届信用评价工作,向中国软件行业协会推荐了银江电子、金华利诚二家会员单位参加了中国软件行业企业信用AAA级评选。
组织申报了由共青团中央办公厅、工信部、全国青联秘书处共同组织的中国软件行业杰出青年评选,推荐了中控集团黄文君总监、网盛科技孙德良总裁等八位我省软件行业的杰出代表参加角逐。
七、持续改进协会网站,充分挖掘网站的产业宣传功能
协会网站是宣传我省软件产业的重要窗口,是协会秘书处与会员沟通的重要途径,自协会成立以来,我协会已对网站作了三次重大调整,20xx年我们根据产业发展需要,再一次对协会网站进行了调整,增加了项目申报信息、理事会纪要、软件行业简报(从 20xx年开始,协会不再发行纸质简报,有需要的会员可到网站上直接下载、浏览)、招聘信息、软件产业统计平台、外包企业介绍等;另外还增加了会员MSN 账号、QQ群,增设了在主要行业网站和会员网站链接模块。新改版的网站进一步丰富了网站的内容,拓展了协会服务项目,密切了与广大会员联系,增强了协会宣传平台的作用。
八、认真做好统计工作,为政府决策提供基础数据
为进一步改善我省的软件产业统计工作,我协会根据多年的.统计工作经验和统计工作存在着的实际问题,与信息产业厅发展与对外合作处和信息化推进处对如何改善我省统计工作进行了分析研究,提出了关于进一步加强软件产业统计工作的四点意见。一是进一步扩大我省软件产业统计范围,特别要抓好全省嵌入式应用软件的统计工作;二是加强工作联运,进一步提高软件产业统计工作效率,在开展双软件认定材料中增加统计报表,强制双软件企业申报统计报表;三是建立软件统计工作罚劣机制,对不提交统计报表的企业在双软认定、政府项目申报、各类资质认定、立项中采取一票否决制;四是进一步健全软件产业统计工作的评价激励机制。有效地加强了我省的软件产业统计工作。
九、不断完善“双软认定”工作规范
为促进软件企业积极开展双软件协会认定,充分享受国家优惠政策,我省各地市推出了一系列的双软认定鼓励政策,双软认定的工作程序和申报材料有了较大的调整,主要有以下三个方面:一是根据省信息产业厅的要求,为加强各地市信息产业主管部门与当地企业的联系,将软件企业认定和年审的申报受理工作下放到各地市信息产业主管部门。二是软件企业年审的网上申报平台正式运行,软件企业认定和软件产品登记的网上申报平台已开始试运行。三是在双软认定申报材料中增加了统计年报和月报的要求。双软认定和软件著作权登记,是协会的主要工作之一,为了更好、更快捷地服务于广大会员,协会为适应产业的发展需要,积极改进工作方法、规范工作流程、强化服务意识。协会办公室增加了材料申报受理人员,并根据今年高新技术企业审查对软件著作权软件登记证书的特别要求,协会经过多方努力,为会员提供了加急登记服务。截止20xx年11月底,我省新认定的软件企业为141家,年审通过软件企业为398家,新登记的软件产品为1020xx软件产品延续178件,新登记的软件著作权为1471件。
十、引导企业开展资质认证,持续提升行业综合能力
为了更好地适应企业品牌战略的实施及企业发展的需要,我协会一直致力于为会员提供更广泛的服务。近年来,逐步在企业专利申请代理咨询;CMMI认证;ISO9000、ISO14000、ISO18000等系列认证;ISO/IEC27001(BS7799)认证、投融资、知识产权侵权、项目申报、企业信息交流等方面提供的咨询服务,引导企业持续提升行业综合实力。今年我省有恒生电子、信雅达两家企业通过了ISO/IEC27001认证,杭州阿拉丁信息科技股份有限公司等18家企业通过CMMI或者“双模”论证。
15.电缆辅助办公助手应用程序的开发 篇十五
由于电线电缆是类别众多的电工产品之一,产品型号和规格类型数以万计[1],电线电缆产品的核算、统计、制单、报价等工作量巨大、繁琐,因此是否能高效完成这些繁琐的工作关系到电缆制造企业的管理效率。
目前,绝大多数电缆企业采用先根据各自工艺制度编制成套的工艺文件(用于指导生产)和定额文件(用于成本核算和报价),再将工艺文件和定额文件编制成Excel文件,利用Excel强大的函数功能和查询功能,实现快速方便地获取某型号电缆的相关数据。 虽然通过查询Excel文件比过去查阅纸质文件获取数据更为快捷方便,效率更高,但仍存在诸多不足:a.限于一个Excel文件仅与某一类电缆产品对应,随着产品类型增多,累积的海量Excel文件不仅降低了查阅效率,也增加了文件管理的难度,尤其是在生产线上至今仍存在因缺乏自动化办公条件需要查询纸质版文件的情况,导致效率提高有限。b.在电线电缆产品成本核算时,还需根据客户的要求反复修改物料类型、价格等参数,操作繁琐,核算也容易出错。c.在电线电缆产品报价时,除了要考虑材料成本和制造成本外,还需要考虑包装成本和运输费用。包装成本主要是盘具费用,盘具费用核算需要先计算电缆外径,再根据电缆外径选择盘具规格,而后针对选用的盘具统计数量。运输费用核算需要先依据盘具尺寸和核算的盘具数量制定运输方案,再以此计算运输费用。虽然对此可查阅已编制好的Excel文件,但如果某张订单中含有多根电缆,并且电缆型号和规格又各不相同,则核算包装成本和运输费用的复杂程度将陡增。
为了改变上述现状,笔者开发了一款应用程序———电缆辅助办公助手。该程序具备批量输出工艺卡片、统计物料、统计盘具、输出报价单等电缆行业普遍涉及的办公内容,可根据需要对电缆结构和工艺参数进行定制,程序界面也符合大众操作习惯。该程序革新了电缆制造企业中设计和核算人员的工作方式,提升他们的工作效率。本文将对该程序的设计思路、框架结构、具体程序开发等展开详细阐述。
1 程序设计思路
该程序的设计思路是将所有电线电缆产品整体看作一个包含一定数量电缆特性元素的排列组合体集合。尽管电缆特性的数量非常有限,但是排列组合后的电缆规格类型的数量则非常惊人。以表1所列的常规电缆特性和各自的数量为例,在不考虑特性之间相关性的情况下,虽然特性的合计数量只有70,但组合后的电缆规格数量=20×9×2×18×7×3×2×6×3=4 898 880。对此,如果采用通常的电缆数据处理程序的设计思路———查询语句+数据库(即数据被一对一的查询和调用),则实现过程简单,但需要建立庞大的数据库,且功能单一,结构和工艺不支持定制,局限性较大。
由于电线电缆产品属于流程性制品,不同类型电缆可能在产品结构、生产工艺、物料类型等多个特性的某些方面存在重叠,例如对于电力电缆和控制电缆,两者的导体截面积可能均为2.5mm2,绝缘材料可能均为交联聚乙烯,因此该程序基于电缆特性数量的有限性,结合电缆结构的相似性和流程性特点,采用了将不同类型的电缆分解为若干个特性,对每个特性的数据进行识别和处理,同时将需要定制的特性与输入端连接,满足定制化需求,从而使电线电缆产品数据获得快速、高效、灵活的处理。该程序的设计思路如图1所示。
2 程序框架结构
该程序主要包括电缆辅助办公助手、数据模块、CABLEdata数据库三个文件,每个文件的功能体系及三者之间的转换关系如图2所示。电缆辅助办公助手是该程序的输入输出端口,其包括VBA代码模块,主界面(操作界面)sheet表格,报价单、盘具汇总表、物料用量表三个功能输出sheet表格模板,价格目录sheet表格,登录窗体、设置选项窗体、数据录入窗体等。
数据模块是该程序的数据处理中心,其包括数据处理模块、sheet表格工艺模板、sheet表格工艺缓存页、sheet表格参数页、sheet表格物料输出页以及隐藏在后台采用VBA编译的自定义函数。其中数据处理模块是数据模块最核心的模块,能自动对主界面输入电缆型号的特性进行识别、筛选、提取和处理之后输出数据,如电缆结构参数、物料明细、工艺参数等,由VBA代码模块进行调用。
CABLEdata数据库对数据模块不支持的电缆类型进行补充,能为数据模块导入标准化的电缆型号及其对应参数,通过扩展CABLEdata数据库的内容,可以拓宽该程序的使用范围。
3 程序开发
3.1 开发环境
该程序是基于Microsoft Excel 2010二次开发完成的,所有功能代码采用VBA语言编写,为了使操作便捷并符合多数人的使用习惯,主(操作)界面采用Microsoft Office的Ribbon界面风格,采用第三方UI设计程序Custom UI Editor For Microsoft Office开发,数据库文件采用Access 2010数据库,输入输出文件采用Excel.xlsx格式,电缆辅助办公助手和数据模块采用Excel.xlsm格式,核心代码采用Visual Basic 6.0封装成dll格式。该程序可向下兼容Excel 2007版本。
3.2 界面设计
该程序主界面如图3所示,整体简洁明了,界面主要分为操作命令区、常用设置选项区和编辑区三大区域。操作命令区中可视的按钮选项包括导入订单(数据)、输出(工艺)卡片、物料(用量)汇总、输出报价单等使用频率较高命令,点击命令按钮右侧向下的小箭头,可以显示隐藏的命令菜单(如图4a)所示),这样的排列方式既符合了操作习惯,又满足了程序功能的扩展要求。常用设置选项区支持对电缆部分结构参数、物料类型、工艺参数的修改(如图4b)所示),以满足客户定制的需要,其右下角斜向箭头可以调出更多设置选项窗体(如图4c)所示),窗体采用Multi-Form格式,可以同时完成对所有选项的设置,进一步拓展了程序的功能。编辑区主要用于存储从订单提取的有价值信息,采用Excel.xlsx格式,保留了Excel电子表格的大部分特性,以符合大众的操作习惯。
3.3 功能设计
该程序的主要功能是作为工艺设计、生产调度和销售报价的辅助工具,以减少办公人员核算、查询、制单、统计的工作量,降低错误率,提高工作效率。电缆虽然结构简单,但种类繁多,不同系列电缆抑或是相同系列不同规格电缆的结构参数是不同的,即便是同一规格型号电缆,其交货长度不同,物料计算也会不同,这些均导致了大量的、重复的计算工作。因此,针对上述情况,该程序首先着重解决了电缆类型自动识别与电缆结构参数自动计算的问题,并在此基础上进行了该程序功能设计。
3.3.1 程序数据模块的模型
为了能对多种电缆结构参数进行计算,该程序根据电缆流程性特点设计了全结构电缆计算模块,该模块基本涵盖了目前所有的电缆产品结构。为了支持不同种类电缆的结构和物料计算,该程序采用了大量的文本函数,包括采用正则表达式编写的自定义函数。程序数据模块的模型如图5所示,其中数据计算包括第一层级逻辑计算、第二层级结构计算、第三层级物料计算,这三个层级数据计算结果分别独立存放,后一层级的数据计算依赖前一层级的计算结果。逻辑计算是指当电缆型号被操作指令导入到计算模块后,计算模块首先触发型号分解命令,识别和筛选出与输入的电缆型号相匹配的类别和特性,再根据产品的类别和特性对电缆的结构进行判断,给判断结果为“true”的结构赋具体值(包括物料类型和标准参数),给结果为“false”的赋“0”值。结构计算是指按照产品结构的顺序触发各层结构计算,并通过累加计算出各层结构的尺寸和成品外径,将成品外径作为变量计算出装盘容量。物料计算是指根据结构计算得到的电缆结构尺寸数据进行各层物料计算,最后得到电缆总体物料用量。
3.3.2 核心功能
目前,该程序预设了输出工艺卡片、物料用量统计、盘具汇总统计、输出报价单共四项核心功能。一般情况下,电缆需要经过多道生产工序才能形成最终的成品,下道工序接续上道工序时,需查证上道工序的生产记录和检验记录,为了防止生产出现混乱,自第一道工序开始,需要给每道工序的半成品配置工艺流转卡,工艺流转卡除标明工艺要求以外,还用于填写生产记录和检验标识,因此编制工艺流转卡是当前电缆企业生产准备事项中必不可少的环节,而且编制时的工作量较大、错误率较高。该程序中的输出工艺卡片功能不仅能方便、快捷、批量、准确地输出每根电缆的生产工序和工艺参数,还能详细地提供每道工序所需要的原材料重量,彻底解决了工艺流转卡编制时出现的相关问题。
统计生产物料亦是电缆企业生产准备事项之一,该程序中的物料用量统计功能能批量地导出生产计划单中每根电缆所需的物料清单,并且能将相同的物料分类汇总[2],生成采购计划,减少了库存不足和库存积压情况的出现。该程序中的盘具汇总统计功能与物料用量统计功能类似,能批量计算出计划单所需的成品盘具的规格和数量,还可便于售前制定运输方案。
电缆报价是售前的一项重要工作,也是一项繁琐且不容任何失误的工作。在给客户报价的过程中,需要频繁地来回修改产品结构和价格,以满足客户各方面的需求,每修改一次都要耗费报价员大量的精力和时间。该程序中的输出报价单功能能方便地修改产品结构和工艺,并准确地输出每次修改后的报价数据,以及计算包装费、运输费和管理费,给报价环节提供更多的参考数据。
3.3.3 辅助功能
该程序还预设了多项辅助功能,特别是其中智能判断录入订单功能和三个“一键”功能(一键保存、一键删除、一键打印)。当导入计划单出现错误时,智能判断录入订单功能能通过连续或非连续选择Excel电子表格中的电缆型号,自动提取电缆型号、规格和电压等级[3],并录入到主界面的指定区域中,免去了手动输入的过程。三个“一键”功能能自动判断你当前要操作(保存、删除、打印)的是那个文件,等待具体操作命令,非常实用。
3.3.4 防错功能
该程序的防错功能还能有效降低批量性错误的风险。例如当导入的计划单备注有分段提取的特殊要求时,防错功能中的分段长度防错程序针对后续操作中数据项应分段而没有分段的情况,弹出分段提示框,在提示框中可直接输入分段明细,实现数据项分段;分段长度防错程序还针对分段明细之和不等于总长度的情况,弹出分段错误提示框,只有当输入分段明细且输入明细之和正确的情况下,该程序才能继续进行。当导入的计划单中出现该程序未涵盖的产品类型时,防错功能中的产品类型防错程序对此会弹出产品类型错误提示框,同时会在该程序主界面编辑区显示“系统错误或系统不支持该产品型号”的提示。
3.4 程序代码结构和运行机制
该程序的代码结构如图6所示,主体代码主要由界面操作、功能操作、文件操作、辅助操作四部分组成,共计12个子项,每个子项都能独立地完成某项功能。现以输出工艺卡功能子项的程序代码(如图7所示)为例,介绍该程序核心功能的代码编写机制和实现步骤:a.由第①步激活该程序主界面,开始for循环,执行第②~⑤步,依次完成所选区域的第1、2、3、…项,直至完成所有项的工艺卡输出过程;b.判断主界面是否有工艺卡,给操作者提供是否替换提示;c.将主界面编辑区的信息赋给全局变量;d.将循环变量的电缆型号和长度的全局变量导入数据模块,如果循环变量存在分段明细,则调用分段处理模块,输出分段数量和分段长度,开始执行分段的for循环,将第1段的长度导入数据模块,执行完第⑤步后完成第1项的第1段工艺卡输出过程,依次对第2、3、4、…段重复上述操作,直到完成第1项所有分段的工艺卡输出过程;e.数据模块完成计算后导出工艺数据到工艺模版,如果数据模块中没有出现error项,则将工艺模板复制到主界面完成工艺卡输出,否则程序提示错误并在主界面备注栏显示“系统不支持该产品类型”,之后跳过该项的后续操作进入下一项的for循环。
3.5 程序扩展
按照目前规划,该程序将继续向两个方向扩展:a.拓展程序应用范围,使该程序在能批量处理电力电缆、变频电缆、控制电缆、仪表电缆、布电线、补偿电缆、光伏电缆、交联聚烯烃绝缘电线和电缆等电缆类型的基础上,通过调试数据模块,可以支持更多的产品类型,如风力电缆、机车电缆、船用电缆等。b.增加程序功能,如生产计划单编制、操作日志管理、电气参数查询等。
4 结束语
该程序是针对电线电缆行业普遍面临的核算、查询、制单、统计等繁琐的办公任务而设计开发的。该程序虽然功能不多,但却实用,能批量处理多种类型电缆的结构计算、工艺编制、物料统计等办公任务,操作便捷,计算结果准确,输出的表单样式还能根据需要进行定制,实现了办公的高效化、标准化,提高了电缆制造企业的管理效率。
参考文献
[1]王春江.电线电缆手册[M].北京:机械工业出版社,2002.
[2]刘悦.使用VBA实现Excel表单数据的自动抽取与汇总[J].中国管理信息化,2011,14(14):78-79.
【软件开发程序员年终工作总结】推荐阅读:
软件开发工作总结报告06-11
开发软件工作流程06-10
软件开发,试用期工作总结08-07
NET软件开发工作职责08-19
软件开发人员的自我总结5则范文08-06
软件开发合同免费06-25
软件开发定制协议07-23
软件开发人员考核标准07-27
应聘软件开发自我评价09-19
软件系统开发合同09-02