`
lelong
  • 浏览: 557333 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

关于华为敏捷项目管理(转)

阅读更多

 IPD – 集成产品开发,华为花重金从IBM购买的一套产品集成开发流程,业界有一本书,PACE讲的就是这一套IPD流程,而IPD并不去讲你的开发要怎么做,IPD做的就是“投资决策、市场驱动”,更多的是决定做不做这个事情,做这个事情对于投资人员是不是受控的,所以在IPD里面会有DCP点(决策评审点),每个点上都会去考虑该不该做、值不值得去做,在引入这个东西以前,华为实际上是技术驱动的,并不是市场驱动的,就是说以前华为听说有个新技术,然后就开始做,做了很多这样的东西,但是后来都卖不出去,所以后来就引入了IPD,以市场驱动。在引入IPD后,是解决了做什么的问题,但是怎么做,还是按照自己的想法去做,后来就引入了CMM,引入CMM后对华为确实起了非常大的作用,其产品开发的质量确实是比起前提高了,所以在前几年,通过IPD+CMM使得华为走向了一个非常成熟的过程。在这个基础之上,关于质量管理、项目管理华为提出一些自己的体系,比如从项目的开始到项目的结束,有项目review、度量分析、根因分析、缺陷预防等一系列活动,在项目管理方面有风险管理、问题跟踪管理等活动,同时还会有质量审计以及相关的推动等事情,通过这些项目管理和质量保证使得IPD和CMM很正常的运作下去,但是现在行业已经发生了一些变化,比如需求变化快等方面华为也碰到了一些问题,以前产品质量是可控的,大多数产品的发布周期也是稳定的,比如对客户承诺什么时间提交产品基本上是有保证的,另外项目在管理层的进展也是非常清晰化的,你在向某某领导汇报的时候只用告诉他比方项目到了SRS阶段了,基本上这个项目的老大就知道这个项目还有多少事情需要去做,比如告诉他到单元测试阶段了,他就知道快搞定了,这样确实使得这个进展能够口头化。其实,流程存在的价值,就是能够给我们的管理层提供进展的可视化,所以从目前来看,对于客户、员工、管理层这三个利益相关人来讲确实达到了这样一个目的。

但是现在行业中,需求变化太快,不管我们怎么努力去做,发现还是不能满足客户的需要,不管需求搞得多么细,到交付产品给客户的事情,总是有这样那样的问题,这个时候就不得不去修改我们的软件,这是华为面临的一个挑战,如何解决这个问题?

软件开发中有三个要素:人、过程、技术和工具。对于一个软件项目成功来说,这三个要素都不可省,而在以前大家强调IPD和CMM,更多的是强调大家规范的把它运作起来,对于人、技术和工具基本上不提了,忽略了,所以后来就反馈出一个问题,就是很多项目,看起来那个过程做的那个漂亮,那个报告写得那个完美,但是交出去的产品那个烂,其实这三个因素是缺一不可的,你必须得均匀的发展,还有一个是人的方面,因为人是具备创造能力的,所以从华为的教训给我启发,过度的关注过程而忽视人、忽视技术和工具,我们就得要思考和反省了。

针对这些问题,华为也就提出了敏捷。华为在99年之前基本上都是土生土长游击队的做法,到了2001年的时候就引入了IPD和CMM,到2006年的时候,就发现了瀑布模型的问题,如交付周期特别长,就是每做一个客户的需求,然后一分析,这样一走半年就过去了,所以就引入了RUP,最初的想法就是加速我们项目的交付周期,能够快速的给客户响应,但是敏捷实际上已经进入了一个低谷期,所以当时就引入了迭代,实施了一年之后也发现,RUP里面的东西实际上也是挺多的,所以后来就接触了XP、SCRUM这些方法,这样就从07年开始向敏捷这个方向在走。

有一个图在业界流传比较广泛,也叫洋葱图,共分三圈,也就是从三个不同层面描述了敏捷开发方面的一些最佳实践。XP为什么叫极限编程?如果你觉得这个软件开发的实践是一个好的实践,那么你就把它发挥到极致。比如,结对编程,一个在编,一个人在看,实际上看的人不会白看,其实起到了一个review的作用,既然review这个作用有效,那么为什么不把这个作用发挥到极致,所以就采用了结对编程将review这个作用发挥到极致。在敏捷中有一个8个字的原则:沟通、反馈、交流、勇气。它认为项目团队中的成员这个沟通是比较重要的,既然你非常重要,那么我也要把你发挥到极致,所以两个人一起在干活的时候就会不停的有交流与沟通,所以,结对编程是一个典型的把review、沟通交流发挥到极致的实践。另外,TDD也可以认为是那刚好够用的事情发挥到极致。我们以前传统的软件开发的做法是,先做好这个软件,然后去测,看看是不是实现了这样一个功能,但是我们总会发现这里面有很多代码其实是从来就没有用过的,只是在下代码的时候顺手就把它写了,在分析那些产品的时候发现有的产品这样的没用到的代码高达50%,而TDD的思想是,我既然要实现什么功能,然后我就先写对应的用例来验证它,然后在开发的时候就开始写代码,使得这个用例刚好通过,这样就使得我们写出来的代码是刚好满足这个系统的功能的代码,这样,前面出现的50%就可以不用做了,这就是把刚好够用发挥到极致。其他的就不一一讲了。XP在2001年到2003年之间非常的红火,过了之后又相对的沉寂了一点,现在又冒出来一个新的敏捷的方法论,就是SCRUM。XP是过分的强调将软件开发里面的实践发挥到极致,而这些实践都是同编程实践相关,但是在管理方面就比较弱,所以,在用了几年之后,大家发挥XP不是起到那么大的作用,所以就开始沉寂下来。这个时候就出现一个流派,就是SCRUM。SCRUM其实就是一个非常非常轻量的项目管理框架,基本上没有什么编码实践方面的东西,你说看到的都是管理上的活动,这个管理上的活动很多人就会有一种似曾相识的感觉,记得前不久,同华为的一个项目团队在聊,就谈到这个项目的backlog,一讲,项目团队的人就说其实他就是那样子做的,他以前也没与听说过什么SCRUM,就是把这些需求一条一条的列出来,镍镉优先级,估个工作量,一看,就是这个东西。SCRUM的核心其实比较简单,2分钟就能讲出来,就是3个3。一、3个角色。Product Owner,负责决定产品要做什么,做成什么样子;SCRUM Master,保证项目能够遵循SCRUM的方式运作下来;项目团队成员,包含开发、测试、质量等等所有的人。二、3种会议。迭代的计划会议、中间的站立式会议、迭代的评估会议,属于三个管理的活动。三、3个交付件。待开发的任务列表、待修复的缺陷任务列表、项目的进度图。SCRUM就是通过这3个3将项目非常简洁的管理起来,有一个思考就是关于PMP里面讲到的9大领域多少活动不一定对这种敏捷项目适用。那么大家可能提出一个疑问,就是项目的进度是不是就不可视了。其实,敏捷项目的进度可视很简单,就是通过一个白板(进度墙、任务看板),将每个人的进度情况这么一贴,这就是最简单最直接的管理方式,一看,所有人都知道,就算你去开发一些什么复杂的一些IT支撑系统,可能都起不到这个白板的作用。在华为关于敏捷的一些项目管理工具,用Scrumworks、Bingo这些管理工具也能够把项目的进度管理起来,但是你要做的就是必须得把电脑打开,要把浏览器打开,这样才能看到你的进度是什么样子的,而在办公区直接树一个白板就能够很简单、很方便的知道我的这个进度情况。所以,在华为,对于敏捷项目,管理的框架上是采用的SCRUM,指导如何编码实现上就采用了一些XP的实践,当然XP的实践不会全部去选,会根据项目的实际情况去选一些实践,如果你把所有实践都选的话,实际上的效果是非常差的。那么如何来选择就得根据项目的实际情况去评价。华为在实践的过程中也引入了精益、消除浪费的思想。比如,在平时的工作中存在停工等活的浪费。什么是停工等活的浪费呢?比如我们开发在做开发的时候,我们的测试就会轻松一点,那么测试在做测试的时候我们的开发就会轻松一点,大家觉得这样也挺好的,但是你从整个组织角度去分析,实际上是停工等活的,开发时测试在等着,测试时开发在等着,如果你从精益的角度考虑的话,为何不通过迭代的方式把开发和测试等待的时候整合在一起来工作,使得效益得到提升。有很多项目团队自己去做了,确实效果比较明显。其实在2006年实践RUP的时候就感觉到这样的好处了是非常明显的。引入敏捷之后,自然而然的就会想到同公司已有流程之间的关系,原来是IPD+CMM,所以就有同事问到是不是我这个就不用了。分析可以知道,IPD是决定做不做,决定之后如何去做就可以采用敏捷开发,所以对于敏捷产品的流程就是IPD+敏捷的方式,所以有很多以前采用瀑布型的团队逐步的被敏捷代替了,还有些团队正在代替中,还有些团队就觉得原来那套玩得很流畅就继续采用原来的方式。所以目前在华为,项目团队是可以自己来选择采用哪种方式进行,现在可以发现,那些愿意选择敏捷方式走的往往就是原来那些顽固不化的烂项目,因为以前在推流程的时候,那帮人整天在那里叫,有问题,我不干,我不愿意做,实际上,后来做深入分析发现,他的那种模式并不适合按照瀑布型去做,但现在成了积极分子,所以每个项目的模式是不一样的。

在做敏捷的时候也存在一些容易做的事情和不容易做的事情。比如说SCRUM的项目管理是比较容易去实践的,就是3个3,对于那些想敏捷的,我建议可以先做这个,还有也会做一些结对编程、持续集成的实践。比较难的,有这么几点。华为从99年开始都是按照开发、测试等团队去运作的,团队与团队之间就会形成部门的墙(华为有一个外籍员工给起了一个名字叫Chinese Wall),对每个部门来说,希望把这个墙树高一点,这样能获取更多的资源非常顺利的开展工作,所以墙就会越树越高,很多部门甚至还有checklist,你只要给我什么东西,我就按照checklist打勾,打勾不通过的就要干啥干啥,这样通过约束管理层,罚款的制度就来了,而这个问题就很难搞,涉及到很多很多的人员,涉及到部门角色定位的问题,这是华为觉得最难的一点。第二难的问题就是TDD,在很多项目都试过,但是试过之后,很多项目都无疾而终,或者诉苦说这个我实在搞不下去,分析后发现,是涉及人做事情方法的改变,这个挺难的,以前写代码都是边想编写,就能写出来,现在你就得先想好、验证好等等,然后再想办法填进去,就发现这个很难,这是一个开发习惯的改变,这也是很难的一件事情。第三个,就是Customer Tester,就是要客户参与验证,可能对于互联网企业可以部署一个系统,用户参与测试就可以做起来了,但是对于华为而言,客户是电信企业,而电信是买方,买了之后再供他们的客户去用,这个里面客户就存在好几层,所以要客户真的参与进来还是比较难的。第四点,也是很难的,我们有一个团队,要到各个团队去宣传为什么做敏捷,这涉及到观念的转变,所以这也是非常难的事情。(一夜的引入,长时间的改变。)比如你说你这个团队敏捷了,明天就开始站立式会议,但是你最后会发现,要真正敏捷实际上是一个漫长的过程。

在华为实施敏捷的过程中,也有一些经验性的东西。第一个是QA从警察的角色转变到一个教练的角色。在以前,团队实施CMM的时候,QA更多的是一个警察的角色,他整天拿着一个checklist、报告什么的到处去团队里面看,你是否ok,不ok就要怎么怎么样,整天就干这个活,但是引入敏捷之后,QA就觉得有点失落,都敏捷了,我都不知道该怎么下手了,然后,在华为,就把QA转变了一下,将QA更多的充当教练的角色,充当SCRUM Master的角色,他去指导项目团队该如何去开这个站立式会议,该怎么去做迭代的计划等等指导性的工作,这样QA也觉得挺好,这样他能参与到在不同的团队中去,这样他见得也多,所以在敏捷的实践里面是需要这么一些人来干这么一些事情。第二个就是要营造一个一体化的团队,也就是将所有有墙的部门通通打掉,直接按照项目型运作,把大家拉到一起,不要考虑你原来是什么部门,先把项目做出来再说,这就是在XP的外圈中的Whole Team实践,因为大家就真正是一条船上的。在很对项目中,总是存在这样的一些人,项目成功不成功对他们是无关紧要的,但是有些人项目不成功对他们是非常重要的,而真正的敏捷项目就要这些人来挂帅,并且这些人是站在一条战线上的,所以就叫拉到一体化的团队里面来,大家都对交付负责。第三个就是办公环境最好也能够随着改变。以前大家都是那种小格间的方式,但是这种方式是非常不利于做交流和做项目的。第四个就是现身说法。前面讲到有很多这样的人会到团队中去说敏捷怎么怎么好,但是如果你让一些对项目成功不成功都不相关的人去讲是没用的,因为大家一听,首先就会质疑50%,所以华为当初经常搞的活动就是让项目经理他们在讲,将他们当时是怎么开展敏捷的,这样别人一听才能理解到原来你是这么这么做的。

分享到:
评论

相关推荐

    智能车竞赛介绍(竞赛目标和赛程安排).zip

    全国大学生智能汽车竞赛自2006年起,由教育部高等教育司委托高等学校自动化类教学指导委员会举办,旨在加强学生实践、创新能力和培养团队精神的一项创意性科技竞赛。该竞赛至今已成功举办多届,吸引了众多高校学生的积极参与,此文件为智能车竞赛介绍

    集字卡v4.3.4微信公众号原版三种UI+关键字卡控制+支持强制关注.zip

    字卡v4.3.4 原版 三种UI+关键字卡控制+支持获取用户信息+支持强制关注 集卡模块从一开始的版本到助力版本再到现在的新规则版本。 集卡模块难度主要在于 如何控制各种不同的字卡组合 被粉丝集齐的数量。 如果不控制那么一定会出现超过数量的粉丝集到指定的字卡组合,造成奖品不够的混乱,如果大奖价值高的话,超过数量的粉丝集到大奖后,就造成商家的活动费用超支了。我们冥思苦想如何才能限制集到指定字卡组合的粉丝数,后我们想到了和支付宝一样的选一张关键字卡来进行规则设置的方式来进行限制,根据奖品所需的关键字卡数,设定规则就可以控制每种奖品所需字卡组合被粉丝集到的数量,规则可以在活动进行中根据需要进行修改,活动规则灵活度高。新版的集卡规则,在此次政府发布号的活动中经受了考验,集到指定字卡组合的粉丝没有超出规则限制。有了这个规则限制后,您无需盯着活动,建好活动后就无人值守让活动进行就行了,您只需要时不时来看下蹭蹭上涨的活动数据即可。 被封? 无需担心,模块内置有防封功能,支持隐藏主域名,显示炮灰域名,保护活动安全进行。 活动准备? 只需要您有一个认证服务号即可,支持订阅号借用认证服务号来做活动。如果您

    出口设备线体程序详解:PLC通讯下的V90控制与开源FB284工艺对象实战指南,出口设备线体程序详解:PLC通讯与V90控制集成,工艺对象与FB284协同工作,开源学习V90控制技能,出口设备1200

    出口设备线体程序详解:PLC通讯下的V90控制与开源FB284工艺对象实战指南,出口设备线体程序详解:PLC通讯与V90控制集成,工艺对象与FB284协同工作,开源学习V90控制技能,出口设备1200线体程序,多个plc走通讯,内部有多个v90,采用工艺对象与fb284 共同控制,功能快全部开源,能快速学会v90的控制 ,出口设备; 1200线体程序; PLC通讯; 多个V90; 工艺对象; FB284; 功能开源; V90控制。,V90工艺控制:开源功能快,快速掌握1200线体程序与PLC通讯

    基于Arduino与DAC8031的心电信号模拟器资料:心电信号与正弦波的双重输出应用方案,Arduino与DAC8031心电信号模拟器:生成心电信号与正弦波输出功能详解,基于arduino +DAC

    基于Arduino与DAC8031的心电信号模拟器资料:心电信号与正弦波的双重输出应用方案,Arduino与DAC8031心电信号模拟器:生成心电信号与正弦波输出功能详解,基于arduino +DAC8031的心电信号模拟器资料,可输出心电信号,和正弦波 ,基于Arduino;DAC8031;心电信号模拟器;输出心电信号;正弦波输出;模拟器资料,基于Arduino与DAC8031的心电信号模拟器:输出心电与正弦波

    (参考项目)MATLAB口罩识别检测.zip

    MATLAB口罩检测的基本流程 图像采集:通过摄像头或其他图像采集设备获取包含面部的图像。 图像预处理:对采集到的图像进行灰度化、去噪、直方图均衡化等预处理操作,以提高图像质量,便于后续的人脸检测和口罩检测。 人脸检测:利用Haar特征、LBP特征等经典方法或深度学习模型(如MTCNN、FaceBoxes等)在预处理后的图像中定位人脸区域。 口罩检测:在检测到的人脸区域内,进一步分析是否佩戴口罩。这可以通过检测口罩的边缘、纹理等特征,或使用已经训练好的口罩检测模型来实现。 结果输出:将检测结果以可视化方式展示,如在图像上标注人脸和口罩区域,或输出文字提示是否佩戴口罩。

    kernel-debug-devel-3.10.0-1160.119.1.el7.x64-86.rpm.tar.gz

    1、文件内容:kernel-debug-devel-3.10.0-1160.119.1.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/kernel-debug-devel-3.10.0-1160.119.1.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、更多资源/技术支持:公众号禅静编程坊

    day02供应链管理系统-补充.zip

    该文档提供了一个关于供应链管理系统开发的详细指南,重点介绍了项目安排、技术实现和框架搭建的相关内容。 文档分为以下几个关键部分: 项目安排:主要步骤包括搭建框架(1天),基础数据模块和权限管理(4天),以及应收应付和销售管理(5天)。 供应链概念:供应链系统的核心流程是通过采购商品放入仓库,并在销售时从仓库提取商品,涉及三个主要订单:采购订单、销售订单和调拨订单。 大数据的应用:介绍了数据挖掘、ETL(数据抽取)和BI(商业智能)在供应链管理中的应用。 技术实现:讲述了DAO(数据访问对象)的重用、服务层的重用、以及前端JS的继承机制、jQuery插件开发等技术细节。 系统框架搭建:包括Maven环境的配置、Web工程的创建、持久化类和映射文件的编写,以及Spring配置文件的实现。 DAO的需求和功能:供应链管理系统的各个模块都涉及分页查询、条件查询、删除、增加、修改操作等需求。 泛型的应用:通过示例说明了在Java语言中如何使用泛型来实现模块化和可扩展性。 文档非常技术导向,适合开发人员参考,用于构建供应链管理系统的架构和功能模块。

    基于四旋翼无人机的PD控制研究 附Matlab代码.rar

    1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

    C#与VB实现欧姆龙PLC的Fins TCP通信案例源码:调用动态链接库进行数据读写,定时器与计数器数据区的简洁读写操作示例,C#与VB实现欧姆龙PLC的Fins TCP通信案例源码:调用动态链接库进

    C#与VB实现欧姆龙PLC的Fins TCP通信案例源码:调用动态链接库进行数据读写,定时器与计数器数据区的简洁读写操作示例,C#与VB实现欧姆龙PLC的Fins TCP通信案例源码:调用动态链接库进行读写操作,涵盖定时器计数器数据区学习案例,C#欧姆龙plc Fins Tcp通信案例上位机源码,有c#和VB的Demo,c#上位机和欧姆龙plc通讯案例源码,调用动态链接库,可以实现上位机的数据连接,可以简单实现D区W区定时器计数器等数据区的读写,是一个非常好的学习案例 ,C#; 欧姆龙PLC; Fins Tcp通信; 上位机源码; 动态链接库; 数据连接; D区W区读写; 定时器计数器; 学习案例,C#实现欧姆龙PLC Fins Tcp通信上位机源码,读写数据区高效学习案例

    可调谐石墨烯超材料吸收体的FDTD仿真模拟研究报告:吸收光谱的化学势调节策略与仿真源文件解析,可调谐石墨烯超材料吸收体:化学势调节光谱的FDTD仿真模拟研究,可调谐石墨烯超材料吸收体FDTD仿真模拟

    可调谐石墨烯超材料吸收体的FDTD仿真模拟研究报告:吸收光谱的化学势调节策略与仿真源文件解析,可调谐石墨烯超材料吸收体:化学势调节光谱的FDTD仿真模拟研究,可调谐石墨烯超材料吸收体FDTD仿真模拟 【案例内容】该案例提供了一种可调谐石墨烯超材料吸收体,其吸收光谱可以通过改变施加于石墨烯的化学势来进行调节。 【案例文件】仿真源文件 ,可调谐石墨烯超材料吸收体; FDTD仿真模拟; 化学势调节; 仿真源文件,石墨烯超材料吸收体:FDTD仿真调节吸收光谱案例解析

    RBF神经网络控制仿真-第二版

    RBF神经网络控制仿真-第二版

    松下PLC与威纶通触摸屏转盘设备控制:FPWINPRO7与EBPRO智能编程与宏指令应用,松下PLC与威纶通触摸屏转盘设备控制解决方案:FPWINPRO7与EBPRO协同工作,实现多工位转盘加工与IE

    松下PLC与威纶通触摸屏转盘设备控制:FPWINPRO7与EBPRO智能编程与宏指令应用,松下PLC与威纶通触摸屏转盘设备控制解决方案:FPWINPRO7与EBPRO协同工作,实现多工位转盘加工与IEC编程模式控制,松下PLC+威纶通触摸屏的转盘设备 松下PLC工程使用程序版本为FPWINPRO7 7.6.0.0版本 威纶通HMI工程使用程序版本为EBPRO 6.07.02.410S 1.多工位转盘加工控制。 2.国际标准IEC编程模式。 3.触摸屏宏指令应用控制。 ,松下PLC; 威纶通触摸屏; 转盘设备控制; 多工位加工控制; IEC编程模式; 触摸屏宏指令应用,松下PLC与威纶通HMI联控的转盘设备控制程序解析

    基于循环神经网络(RNN)的多输入单输出预测模型(适用于时间序列预测与回归分析,需Matlab 2021及以上版本),基于循环神经网络(RNN)的多输入单输出预测模型(matlab版本2021+),真

    基于循环神经网络(RNN)的多输入单输出预测模型(适用于时间序列预测与回归分析,需Matlab 2021及以上版本),基于循环神经网络(RNN)的多输入单输出预测模型(matlab版本2021+),真实值与预测值对比,多种评价指标与线性拟合展示。,RNN预测模型做多输入单输出预测模型,直接替数据就可以用。 程序语言是matlab,需求最低版本为2021及以上。 程序可以出真实值和预测值对比图,线性拟合图,可打印多种评价指标。 PS:以下效果图为测试数据的效果图,主要目的是为了显示程序运行可以出的结果图,具体预测效果以个人的具体数据为准。 2.由于每个人的数据都是独一无二的,因此无法做到可以任何人的数据直接替就可以得到自己满意的效果。 这段程序主要是一个基于循环神经网络(RNN)的预测模型。它的应用领域可以是时间序列预测、回归分析等。下面我将对程序的运行过程进行详细解释和分析。 首先,程序开始时清空环境变量、关闭图窗、清空变量和命令行。然后,通过xlsread函数导入数据,其中'数据的输入'和'数据的输出'是两个Excel文件的文件名。 接下来,程序对数据进行归一化处理。首先使用ma

    【图像识别】手写文字识别研究 附Matlab代码+运行结果.rar

    1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

    旅游管理系统(基于springboot,mysql,java).zip

    旅游管理系统中的功能模块主要是实现管理员;首页、个人中心、用户管理、旅游方案管理、旅游购买管理、系统管理,用户;首页、个人中心、旅游方案管理、旅游购买管理、我的收藏管理。前台首页;首页、旅游方案、旅游资讯、个人中心、后台管理等功能。经过认真细致的研究,精心准备和规划,最后测试成功,系统可以正常使用。分析功能调整与旅游管理系统实现的实际需求相结合,讨论了Java开发旅游管理系统的使用。 从上面的描述中可以基本可以实现软件的功能: 1、开发实现旅游管理系统的整个系统程序;  2、管理员;首页、个人中心、用户管理、旅游方案管理、旅游购买管理、系统管理等。 3、用户:首页、个人中心、旅游方案管理、旅游购买管理、我的收藏管理。 4、前台首页:首页、旅游方案、旅游资讯、个人中心、后台管理等相应操作; 5、基础数据管理:实现系统基本信息的添加、修改及删除等操作,并且根据需求进行交流查看及回复相应操作。

    Boost二级升压光伏并网结构的Simulink建模与MPPT最大功率点追踪:基于功率反馈的扰动观察法调整电压方向研究,Boost二级升压光伏并网结构的Simulink建模与MPPT最大功率点追踪:基

    Boost二级升压光伏并网结构的Simulink建模与MPPT最大功率点追踪:基于功率反馈的扰动观察法调整电压方向研究,Boost二级升压光伏并网结构的Simulink建模与MPPT最大功率点追踪:基于功率反馈的扰动观察法调整电压方向研究,Boost二级升压光伏并网结构,Simulink建模,MPPT最大功率点追踪,扰动观察法采用功率反馈方式,若ΔP>0,说明电压调整的方向正确,可以继续按原方向进行“干扰”;若ΔP<0,说明电压调整的方向错误,需要对“干扰”的方向进行改变。 ,Boost升压;光伏并网结构;Simulink建模;MPPT最大功率点追踪;扰动观察法;功率反馈;电压调整方向。,光伏并网结构中Boost升压MPPT控制策略的Simulink建模与功率反馈扰动观察法

    基于matlab平台的图像去雾设计.zip

    运行GUI版本,可二开

    Deepseek相关参考资源文档

    Deepseek相关主题资源及行业影响

    WP Smush Pro3.16.12 一款专为 WordPress 网站设计的图像优化插件开心版.zip

    WP Smush Pro 是一款专为 WordPress 网站设计的图像优化插件。 一、主要作用 图像压缩 它能够在不影响图像质量的前提下,大幅度减小图像文件的大小。例如,对于一些高分辨率的产品图片或者风景照片,它可以通过先进的压缩算法,去除图像中多余的数据。通常 JPEG 格式的图像经过压缩后,文件大小可以减少 40% – 70% 左右。这对于网站性能优化非常关键,因为较小的图像文件可以加快网站的加载速度。 该插件支持多种图像格式的压缩,包括 JPEG、PNG 和 GIF。对于 PNG 图像,它可以在保留透明度等关键特性的同时,有效地减小文件尺寸。对于 GIF 图像,也能在一定程度上优化文件大小,减少动画 GIF 的加载时间。 懒加载 WP Smush Pro 实现了图像懒加载功能。懒加载是一种延迟加载图像的技术,当用户滚动页面到包含图像的位置时,图像才会加载。这样可以避免一次性加载大量图像,尤其是在页面内容较多且包含许多图像的情况下。例如,在一个新闻网站的长文章页面,带有大量配图,懒加载可以让用户在浏览文章开头部分时,不需要等待所有图片加载,从而提高页面的初始加载速度,同时也能

    1. Download this file: https://cdn-media.huggingface.co/frpc-gradio-0.3/frpc-windows-amd64.exe

    Could not create share link. Missing file: C:\Users\xx\.conda\envs\omni\Lib\site-packages\gradio\frpc_windows_amd64_v0.3 1. Download this file: https://cdn-media.huggingface.co/frpc-gradio-0.3/frpc_windows_amd64.exe 2. Rename the downloaded file to: frpc_windows_amd64_v0.3 3. Move the file to this location: C:\Users\xx\.conda\envs\omni\Lib\site-packages\gradio

Global site tag (gtag.js) - Google Analytics