软件工程实践——实事求是 行稳致远

222100305庞财莹 2024-06-06 23:32:41
这个作业属于哪个课程2302软件工程社区
这个作业要求在哪里软件工程实践总结&个人技术博客
结对学号222100305庞财莹
这个作业的目标课程回顾与总结、个人技术总结
其他参考文献CSDN、《构建之法》

目录

  • 一、课程回顾与总结
  • 回顾
  • 以前的博客链接
  • 再解答
  • 新问题
  • 收获
  • 需求阶段
  • 设计阶段
  • 实现阶段
  • 测试阶段
  • 发布阶段
  • 理解与心得
  • 个人实战
  • 结对项目
  • 团队编程
  • 自我评估
  • 二、个人技术总结

一、课程回顾与总结

回顾

以前的博客链接

软件工程寒假作业

再解答

Q1:如何区分一个好的程序员和不好的程序员呢?

责任心是一个很重要的因素,一个好的程序员应该站在用户角度考虑开发实践。面对一个需求时,有的程序员可能会草草实现,完成功能点到为止,而我认为一个好的程序员应该不断考虑如何优化功能,优化代码,封装功能等。

Q2:程序员在哪些地方是必须依赖一个额外的用户体验设计师的?

视觉设计:确定产品的整体色调等审美部分,开发通常不涉及视觉设计,需要UI设计师的帮助。
界面设计:创建直观、易用的用户界面,程序员可能缺乏对整个产品的把握设计技能,需要UI设计师的专业意见。

Q3:软件开发是年轻人的饭碗,吃的是青春饭?那年纪大的程序员经验丰富但是快速学习能力拼不过年轻程序员的时候该怎么办呢?

长期的职业规划:思考长期职业发展路径,可能包括技术领导、顾问、教育或创业等方向。
关注健康:保持良好的身体和心理健康,这有助于维持高效的工作状态和快速的学习能力。
发挥经验优势:利用丰富的行业经验和深厚的技术知识来解决复杂问题,这是年轻程序员难以拥有的。

Q4:代码量与个人的编码能力有直接关系吗?

代码量与个人的编码能力之间存在一定的关系,但并不是直接正比关系,不能一概而论。
编程能力的提高是一定需要代码量的积累的,但是会存在一些无意义没办法提升能力的代码。但是随着代码量的增多,编程能力是会逐步提高的。
一个编码能力强的程序员可能更注重编写高效、简洁的代码,实现封装,而不是冗长的代码。

Q5:如何让自己能够跟上软件工程发展,做一个永不落伍的开发者呢?
关注行业动态:通过阅读技术博客、参加技术会议、订阅行业杂志和新闻通讯来了解最新的行业趋势。
长期职业规划:思考并规划自己的职业路径,包括短期和长期目标,以及如何实现这些目标。
定期反思:定期反思自己的工作和学习过程,评估自己的进步和需要改进的地方,自己某段时间是否真的学到东西。

新问题

开源软件的安全性如何保障?如何管理开源软件的潜在风险?
在Flutter、React Native等跨平台移动应用开发工具中,如何平衡开发效率和应用性能?

收获

需求阶段

掌握了如何编写清晰、详细、无歧义的需求文档,这些文档将作为开发的基础。
设计出字段清晰明确的接口文档。

设计阶段

学会了考虑用户需求设计原型,使用墨刀进行原型设计,更加熟悉了原型工具的使用。
学会了设计前端的需求思维导图,进一步确认了对接流程。

实现阶段

版本控制:学会了使用版本控制系统Git,以便于代码管理和团队协作。
API交互:掌握了如何与后端API进行交互,使用Axios封装接口,规范化进行请求。
学会了如何将用户需求转化为实际的前端解决方案,以满足用户需求。

测试阶段

测试阶段了解了许多不同的测试方法,明白了测试和以往手工测试的不同,深刻体会到自动化测试的便捷与高效,并通过测试发现的错误对网页进行改正,提升用户使用体验。

发布阶段

学习打包发布各个版本内容,然后根据alpha版本提出的问题为指导意见对beta进行修改。

理解与心得

个人实战

在个人实战中,学习到最多的是在性能优化上有了新的认识和实践,学会了使用fastjson2包对json数据进行解析,学会了如何用Idea测试项目的性能。学习到了设计到开发再到测试优化,是一个规范的代码流程,在之后的实践中很有帮助。

结对项目

在本次结对项目中,我与队友合作完成了网站的原型设计和代码编程。我体会到了团队协作的美好和重要性,开始与团队进行沟通,和以往自己单干相比,解决困难快速得多。同时也学到了原型设计软件的使用,使整个页面兼具易用性,美观性,充分考虑用户需求,将用户需求落到实处。

团队编程

在团队编程中,因为人员的更多加入和项目体量的扩大,使沟通变得更加的重要,有助于确保团队成员对项目目标和预期成果有共同的理解,有助于协调团队成员的任务和责任,确保工作顺利进行。在遇到问题时,沟通是快速识别问题并寻求解决方案的关键。在团队编程中,我担任的是web端的前端角色,需要不断与后端进行沟通,与测试和原型设计者进行沟通,很好的锻炼了我的沟通能力。

自我评估

目标内容评分理由
1理解软件工程师的职业道德规范和实践要求,了解国情社情民情,理解软件产品对社会、健康文化等影响,树立积极向上的软件开发理念。95背单词应用可以帮助用户学习新语言,提高语言能力,对教育普及和个人发展有积极作用。掌握一门或多门外语可以为个人提供更多的职业机会,增加就业竞争力。
2掌握需求分析的全过程,能辨别客户表述的多样化要求,熟练使用需求表达工具,能够规范、准确地表达客户的需求,构建需求分析模型。96我深入理解需求分析的重要性,以及它在软件开发生命周期中的作用。我掌握了需求收集、分析、记录、验证和沟通的全过程,能够处理各种复杂性。我能够准确识别和区分客户多样化的要求,构造需求分析模型
3掌握软件开发的全过程,遵循体系结构设计方法和基本设计原则,通过正式的技术评审,完成从体系结构设计模型、数据设计模型和构件级设计模型,形成面向高效可靠的服务组件设计方案或软件系统设计方案。95作为软件的开发成员,我很好的掌握的软件开发的全过程,遵循设计规范,按照技术要求将用户需求落实到代码,并进行了优化。
4能够执行从组件到软件系统的技术评测,具备设计模型的评判能力,具有创新设计意识,能够优选设计方案。90在编写前端代码的同时,我也对写出的功能进行了手动的测试,可以站在用户的角度,评估软件使用是否满足用户需求
5遵循软件开发各阶段文档标准,采用规范的表达,掌握需求规格说明书、系统设计说明书、系统测试报告等文档撰写方法,具备与业界同行交流能力。96在团结合作中锻炼了文档编写能力。
6具有良好的团队意识和合作技能,能够与其他成员开展有效的沟通和协作;能够组织、协调或指挥团队开展工作。98我担任的是web端的前端角色,需要不断与后端进行沟通,与测试和原型设计者进行沟通,很好的锻炼了我的沟通能力。
7能够辨别具体软件项目管理中涉及的构成要素,掌握软件规模和工作量的估算方法,能够选择合适的工具规划软件进度并对项目管理过程进行配置,具备初步的管理复杂软件工程项目的能力。90能够辨别软件项目管理中涉及的构成要素,如项目范围、时间、成本等。能够选择合适的工具来规划软件进度,如敏捷看板

二、个人技术总结

个人技术总结——Axios的使用
概述:Axios 是一个流行的基于 promise 的 HTTP 客户端,用于浏览器和 Node.js。封装 Axios 可以带来许多好处,如简化 API 调用,代码复用,使用拦截器进行统一处理等。

...全文
198 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
南京工程学院 车辆工程系 本科毕业设计(论文)开题报告 题 目:基于数字图像处理的车牌定位和分割的研究 专 业: 自动化(车辆电子电气) 班 级: K车电气051 学 号:240061443 学生姓名: 朱培诚 指导教师: 顾新艳 讲 师 2010年3月 说 明 1.根据南京工程学院《毕业设计(论文)工作管理规定》,学生必须撰写《毕业设计(论文)开题报告》,由指导教师签署意见、教研室审查,系教学主任批准后实施。 2.开题报告是毕业设计(论文)答辩委员会对学生答辩资格审查的依据材料之一。学生应当在毕业设计(论文)工作前期内完成,开题报告不合格者不得参加答辩。 3.毕业设计开题报告各项内容要实事求是,逐条认真填写。其中的文字表达要明确、严谨,语言通顺,外来语要同时用原文和中文表达。第一次出现缩写词,须注出全称。 4.本报告中,由学生本人撰写的对课题和研究工作的分析及描述,应不少于2000字,没有经过整理归纳,缺乏个人见解仅仅从网上下载材料拼凑而成的开题报告按不合格论。 5.开题报告检查原则上在第2~4周完成,各系完成毕业设计开题检查后,应写一份开题情况总结报告。 本科毕业设计(论文)开题报告 学生姓名 朱培诚 学 号 240061443 专 业 自动化(车辆电子电气) 指导教师 顾新艳 职 称 讲 师 所在院系 车辆工程 课题来源 自拟课题 课题性质 工程技术研究 课题名称 基于数字图像处理的车牌定位和分割的研究 毕业设计的内容和意义 采用数字图像处理的原理和技术,进行车牌区域的准确定位和分割的研究,给出相应的算法,并通过VC编程实现。 毕业设计的具体内容: 1.熟悉和了解数字图像处理的原理和技术。 2.熟悉VC的编程和调试方法。 3.掌握数字图像处理的常规算法,尤其对图像的几何校正,边缘检测、区域定位和图像分割原理和算法要有深入的了解。 4. 完成车牌区域的准确定位和分割的设计方案,给出相应的算法,并通过编程实现。 本课题研究的意义: 在交通路口的违章监视,在高速公路收费入口,在涵洞、桥梁的入口以及在停车场和加油站的管理中,都需要对汽车牌照进行记录,而目前这些工作大多数都是由人工完成的,工作量很大,有时也难免会出现错误,如果改用智能系统进行自动的检测和识别,则会大大提高工作的速度,降低管理人员的工作量,提高服务的效率与质量。 在国内现有技术的基础之上进一步研究汽车牌照智能识别技术实现对实时采集到的汽车牌照图像进行分析,准确定位分割、提取出图像中的汽车牌照,并快速自动智能地识别出汽车牌照,还可以全面消除人为因素,因而对车牌识别技术的研究和应用系统开发具有重要的现实意义。 文 献 综 述 车牌自动识别系统从上一世纪80年代开始进入应用研究阶段、这个阶段的研究没有形成完整的系统体系,而是就某一具体的问题进行研究,通常采用简单的图像处理方法来解决。进入20世纪90年代后,随着计算机视觉的发展和计算机性能的提高,开始出现车牌识别的系统化研究。中国、美国、日本、法国等国家相继投入大量的人力、物力进行应用研究,随着社会的进一步发展,交通状况急需更快的发展来适应经济发展需要,各国更加关注对该系统的研究和应用。 文献[1]中阐述了智能交通系统的概念于1990年由美国智能交通学会(ITS America,当时名称为IVHS America)提出,并在世界各国大力推广。经过10多年的推广、试行和发展,智能交通系统目前己在世界上经济发达国家和经济较为发达国家的一些都市及高速公路系统中实施。实践证明,迄今为止,在美国、欧洲、亚洲都已有成功应用的范例。在国外,以色列Hi-Tech公司的See/Car System系列,香港Asia VisionTechnology公司的VECON产品,新加坡Optasia公司的VLPRS系列都是比较成熟的产品。虽然国外汽车牌照识别系统研究工作己有一定进展,但并不适合我国汽车牌照识别,其原因主要有我国车牌本身的特点决定的。我国车辆牌照缺乏统一的标准,根据不同汽车、车型、用途,规定了多种牌照格式(例如分为军车、警车、普通车等);悬挂位置随机,使得车牌识别过程中缺乏规律,使车牌定位分割、字符切分难度增加,准确性降低;车牌长期暴露易受污损,使得车牌区域模糊不清,易发生粘连、断裂等现象,在国外发达国家不允许由于环境、道路或人为因素造成汽车牌照污染严重的车辆上路行驶;我国车辆牌照由汉字、字母和数字组成,汉字的识别与字母和数字的识别有很大的不同,从而增加了识别的难度;其他国家汽车牌照的底色和字符颜色统一,只有对比度较强的两种颜色,而我国汽车牌照底色和字符有蓝/白、黑/红、黑/白等多种颜色组合;还有设置的营运牌照及张贴的广告信息,容易在车牌定位时产生干扰、误定位;车牌附近环境恶劣,往往有复杂的外形及安全杠等,不利于快速定位。 文献[2]中阐述了国内在90年代也开始了车牌识别的研究。由于中国车牌与国外的差异,加上车牌上汉字的存在。所以照搬国外的技术并不完全可行。对于国内的己应用系统中较成功的有浙江大学开发的基于web模式的LPR系统,中科院自动化研究所汉王科技公司开发的“汉王眼车牌识别系统”。另外,亚洲视觉科技有限公司、深圳吉通电子有限公司、中国信息产业部下属的中智交通电子有限公司等也有自己的产品,另外西安交通大学的图像处理和识别研究室、上海交通大学的计算机科学和工程系、清华大学人工智能国家重点实验室等也做过类似的研究。目前这些系统普遍存在的问题有:全天候识别率并不稳定, 文 献 综 述 特别是在夜间,或不良天气下识别率会降低到50%左右。还有许多其它问题需要解决,如国内许多论文谈及已实现的系统,都是在对近似理想条件下的汽车图像识别,对于车牌倾斜角度很大,车牌上字符模糊等情况提出的解决办法甚少。因此这样的系统即使识别率较高,也是建立在苛刻的特定的拍照环境下的。车牌自动识别系统产品中还存在一些不足,因而LPR技术的研究还有许多工作要做:从目前一些产品的性能指标可以看出,LPR系统的识别率和识别速度有待提高。研究高速、准确的定位与识别算法是当前的主要任务。上述产品中所使用的汽车图像均为灰度图像,而车牌本身是彩色物体,其底色和字符颜色为有限的几种,具有明显的颜色特征,车牌定位及字符的分割和识别没有用到颜色特征,采用彩色图像模式,目前的算法也很少涉及颜色特征,这在一定程度上影响了系统的性能。对于车牌彩色信息的利用有待于深入研究。另外目前只能处理单个车牌的汽车图像,对于一幅图像中多个车牌的识别则无能为力。这使得目前对多个车道进行监控时,需要多套摄像设备和车牌识别所需的计算机。如能深入研究一幅图像中多个车牌的识别问题,则可降低系统成本,提高工作效率。 所以从技术上对牌照自动识别系统进行进一步的改进完善是很有必要的。在软件上这主要要求提高字符识别率,同时提高软件的运行速度,提高实时性。相信随着研究的深入,LPR技术定会走向成熟。 文献[3]中阐述了目前国内外汽车牌照定位与识别技术主要采用软硬结合方式和软件方式两种技术方案。所谓软硬结合方式,就是首先通过专用的图像抓拍设备获取一幅适合于计算机识别汽车牌照的高质量图像,然后用软件和硬件结合的方式对所获取的专用图像进行牌照识别,它的最大优点就是识别率高,能够全天候工作。所谓软件方式,就是通过识别软件对普通的车辆图像进行牌照识别,它的最大优点就是成本低,通用性好。车牌自动识别系统主要有摄像装置、视频采集接口、计算机和辅助照明装置组成。计算机通过视频采集接口采集摄像装置摄入的视频图像,经处理和识别得到车牌号。在自然光较暗影响识别效果时,由辅助照明装置提供摄像光源。硬件部分包括车辆感应器,高速摄影装置等。车辆感应器的功能是感应车辆的到来,触发高速摄影装置在一定时间内动作抓拍图像。如在高速公路上,通常在收费处前方公路两侧埋置电磁感应圈,当车辆驶入感应区内,电磁感应圈产生电流,触发摄影头工作。除此之外,还有激光红外线车辆感应器等。埋置电磁感应线圈的缺点是工程量大,而激光红外线车辆感应器容易引起二次触发,即脱车引起的触发拍照。动态车牌图像捕捉系统主要由高分辨率摄像机,多光谱照明灯,图像处理器及控制器组成。它根据亮度变化,即可完成车牌的抓拍。相比而言,动态车牌图像捕捉 文 献 综 述 系统可以在白天和夜间等多种情况下工作,清楚捕捉高速运动中的汽车牌照图像,其效果不受日光,车灯等环境因素的影响。大量实验表明该方案是最理想的解决可靠性的方案。 图像输入通常由硬件完成,牌照定位与字符识别通常由软件完成。 文献[4][5][6]中阐述了日前存在的大量的车牌定位算法,选择一个好的定位算法成为车牌识别的一个关键问题。文中针对基于投影法的车牌定位算法。在VC平台上对车牌图像进行预处理后,再通过找点和标出矩形即可实现车牌的定位。通过大量的试验得出,本算法可以解决车牌定位时遇到的绝大部分问题,具有较高的研究价值和社会经济效益。 文献[7]中对智能交通系统的核心技术——汽车牌照识别技术进行了研究,在图像处理技术的基础上,着重研究了车牌区域定位技术,析了日前有代表性的车牌定位方法,介绍了利用粒子图像测速关联PIV(Particle Image Velocimeter)算法原理,提出了一种采用车牌字符笔画2个边缘互相关值最大的方法进行车牌定位的算法,准确而快速地检出了车牌区域,为后续车牌字符识别打下了很好的基础。 文献[8][9][10][11]中阐述了针对不同尺寸车牌图像的定位问题,提出了一种新的自适应车牌定位方法。该方法首先根据车牌区域的共性来提取图像的纵向边缘;然后由车牌区纵向纹理和边缘密度等特征,采用一系列步骤自适应去除干扰边缘来保留类车牌特征区域;最后通过横向形态学运算使类车牌区闭合,以有效地克服以往形态学结构元素难以随车牌尺寸变化自适应选取的问题;同时提出了根据场景实际情况,选用灰度调整和颜色来判别模块的观点。通过实际场景中大量车牌样本的验证结果表明,该算法不仅准确率较高,而且自适应性良好,具有实用价值。 参考文献: [1] 刘允才.智能交通国际发展概况和国内优先考虑的课题[J].公路,2001,11(11):26-34. [2] Liu Jilin,Ma Hongqing.A High Performance License Plate Recognition System Basedon the Web Technique[D]. [3] 郑南宁,张西宁,戴莹,朱海安.行驶车辆牌照自动识别系统[J].西安交通大学学报,1991,l:43-53. [4] 张俭鸽,李娜.车牌定位在VC中的实现[J].中国科技信息,2009, (13):123-124. [5] 郑影.基于VC++的汽车牌照定位与识别系统的设计[D].吉林大学硕士学位论文,2009. [6] 张宏林.精通Visual C++数字图像模式识别技术及工程实践[M]:第2版.北 文 献 综 述 京:人民邮电出版社,2008. [7] 张丽伟,张晶.基于图像处理的车牌定位方法的研究[J].长春工程学院学报(自然科学版),2009,10(2):100-103. [8] 李宇成,阴亮.基于图像的运动车辆速度测量[J].北方工业大学学报,2008(3):32—36. [9] 王广宇.汽车牌照识别系统综述[J].郑州轻工业学院学报(自然科学报),2001,16(2):47-50. [10] 李波,曾致远,周建中.一种自适应车牌图像定位新方法[J].中国图象图形学报,2009,14(10):1978-1984. [11]Kenneth.R.Castleman.Digital Image Processing,Prentice Hall.1998,4. 研 究 内 容 本课题主要利用数字图像处理的原理和技术,完成车牌区域的准确定位和分割的设计方案,研究相应的算法,并通过编程实现。 其具体内容如下: 1、理解和掌握数字图像处理的原理和技术,能熟练运用数字图像处理的常规算法。 2、深入研究预处理中的灰度化、二值化、背景削弱、中值滤波等原理,以及图像的灰度变换空间滤波处理等,探索车牌定位常用的方法,研究现在流行的一些算法,总结出其优点和缺点,能够继承传统方法的优点,并加以改进和提高。 3、掌握算法实现的编程语言,熟练运用设计实现的平台Visual C++ 6.0,提高查阅资料的能力,并通过编程实现车牌的定位。 4、研究一种新型的车牌定位方法,本课题采用多层次分割的思想,每次分割都尽可能地减少分析范围,经过多次分割后最终定位出车牌区域。 研 究 计 划 第1-2周 收集资料,熟悉课题,确定系统总体研究方案。 第3周 熟悉资料,写出开题报告。 第4—5周 熟悉数字图像处理的主要内容。 第6—7周 熟悉VC语言的编程和调试方法。 第8—9周 熟悉并掌握数字图像的常规算法,重点研究边缘检测和区域分割等算法。 第10-11周 用VC编程实现并调试各个处理模块。 第12-13周 对整个系统进行软件联调,整理设计成果。 第14周 撰写论文。 第15周 修改论文,准备答辩。 第16周 毕业答辩。 特 色 与 创 新 在车辆识别系统中,牌照区域定位是影响车牌识别系统性能的重要因素之一车牌定位准确与否直接影响字符识别的准确率,以往的拍照定位重要包括:J.Barroso等基于提出的基于水平线搜索的定位方法;R.Parisi提出的机遇TFC变换的频域分析法;Charl Coeitzee等提出的基于Niblack二值化算法及自适应边界搜索算法的定位方法。这些方法或者对背景比较复及光照条件比较敏感,或者定位速度比较慢,为了克服这些缺陷,本课题提出了基于特征的车辆牌照实时定位算法和多层次分割算法,能够更高效地实现车牌的准确定位和分割,充分体现了该系统的实时性。 指导教师 意 见 指导教师签名: 年 月 日 教研室意见 主任签名: 年 月 日 系部意见 教学主任签名: 年 月 日

122

社区成员

发帖
与我相关
我的任务
社区描述
FZU-SE
软件工程 高校
社区管理员
  • LinQF39
  • 助教-吴可仪
  • 一杯时间
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧