资源描述
,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Sixth level,Seventh level,Eighth level,Ninth level,*,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Sixth level,Seventh level,Eighth level,Ninth level,*,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Sixth level,Seventh level,Eighth level,Ninth level,*,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Sixth level,Seventh level,Eighth level,Ninth level,*,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Sixth level,Seventh level,Eighth level,Ninth level,*,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Sixth level,Seventh level,Eighth level,Ninth level,*,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Sixth level,Seventh level,Eighth level,Ninth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Sixth level,Seventh level,Eighth level,Ninth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Sixth level,Seventh level,Eighth level,Ninth level,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Sixth level,Seventh level,Eighth level,Ninth level,*,杭电软职 张万军,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Sixth level,Seventh level,Eighth level,Ninth level,*,杭电软职 张万军,*,基于,CMMI,的软件工程,产品及过程质量保证,第十八章 产品及过程质量保证,CMMI对应实践,PPQA简述,PPQA活动内容,产品及过程质量保证PPQA,目的:向工程组成员和管理部门提供对工程实际执行的过程及其工作产品的客观评价。,过程和产品质量保证过程域的实践确保方案的过程被实施,而产品验证过程域VER的实践确保满足指定的需求。这两个过程域有时会从不同的角度出发处理相同的工作产品,工程组应该注意尽量减少重复工作量。,过程和产品质量保证评估活动的客观性是工程成功的关键。客观性是通过独立性和使用标准来实现的。,质量保证应该开始于工程的早期,比方在建立方案、过程、标准时,有利于工程更好地符合机构方针和工程需求。,PPQA一,SG1 Objectively Evaluate Processes and Work Products客观评价过程和工作产品,已执行的过程及其相关工作产品和效劳相对于所用的过程描述、标准和规程的符合性得到客观的评价。,SP1.1 Objectively Evaluate Processes客观评价过程,基于采用的过程描述、标准和规程,客观地评价指定的已执行过程。,SP1.2 Objectively Evaluate Work Products and Services客观评价工作产品和效劳,基于采用的过程描述、标准和规程,客观地评价指定的工作产品和效劳。,PPQA二,SG2 Provide Objective Insight提供客户的认识,不符合项得到客观地跟踪和沟通,并确保得到解决。,SP2.1 Communicate and Ensure Resolution of Noncompliance Issues沟通并确保解决不符合项,通过工程组内部或与管理者之间的沟通,确保解决不符合项和经趋势分析而发现的质量问题。,SP2.2 Establish Records建立记录,建立和维护质量保证活动的记录。,第十八章 产品及过程质量保证,CMMI对应实践,PPQA简述,PPQA活动内容,PPQA简述,活动贯穿工程生命周期的全过程,有二个特定目标:,客观评价工程组执行的过程及其工作产品或效劳相对于适用的过程描述、标准和规程的符合性和不符合性;,客观分析不符合项,跟踪不符合项直到解决。,客观是指:,过程和产品质量保证活动的执行者,习惯上独立于工程组,由专职的质量保证工程师质量保证工程师承担。工程组与质量保证工程师不能是领导与被领导的关系。,评价的标准是由EPG制定的机构标准过程集OSSP以及相关的过程资产;工程组实际执行的过程,可能与机构标准有差异,但必需符合机构制定的“裁剪指南的规定。,评价、审计活动的方案以及活动内容检查单事先制定并公开。,质量保证工程师QAE的作用,帮助产品研发部门和工程组选择适宜的过程描述、标准和规程,遵循裁剪指南,定义工程过程。,按方案进行质量保证活动如,评审Review、检查Inspection和审计Audit,客观评价工程组实际执行的过程及其工作产品相对于适用过程、标准和规程的符合性和不符合性。,分析不符合项及质量趋势,向工程组和上极管理者报告审计结果和发现的问题,跟踪问题的最终解决。,正确认识QAE,软件产品质量与软件过程质量:软件产品的质量目标决定了软件过程的质量目标;软件过程的质量为软件产品的质量提供了保证。好的过程质量不等于就一定有好的软件质量,不好的软件过程那么很少能有好质量的软件产品。,软件质量工程师与QAE:软件质量工程师的很大一局部工作由软件测试工程师承担,另外一局部那么由参与各类工作产品评审、同行评审和审批的人员承担;QAE的主要工作目标是保证过程和产品相对于标准的符合性,QAE不是与工程组相对立的监督者,而只是从独立、客观的角度将工程工程活动过程及其结果的实况反映给工程组及各级管理者,让管理者及时了解过程及产品与标准之间存在的偏差,及时纠正,因此是管理者特别是工程组长的协助者。,“QAE不保证质量,也就是说,QAE发现不符合项,并跟踪不符合项问题的解决,但纠正不符合项本身是工程组的责任。,QAE的活动也有一个质量保证问题,总工程师为每个工程指定质量保证工程师负责工程的QA活动,进行过程检查与监督。,在工程方案阶段,质量保证工程师编制质量保证方案,方案经总工程师确认后,做为工程开发方案的一局部,一起提交评审、确认和批准并纳入配置管理。,质量保证工程师的活动应坚持独立、客观的原那么,以既定的质量保证方案、标准和规程为基准,客观的评价和报告软件过程活动和工作产品相对于标准、规程和标准的符合性和不符合性。,质量保证工程师审计主要针对生成工作产品的活动过程而不是产品所采用的技术,并将审计结果及时报告相关组和个人,并有向上级直接报告的渠道。,质量保证工程师的主要职责是检查软件过程活动和工作产品的偏离、不符合项,并按规定的方式、步骤报告跟踪不符合项直至关闭。,总工程师或QA经理及时处理工程组内部解决不了的不符合项问题,并定期审查质量保证工程师的活动和结果。,PPQA方针,制定工程的质量保证方案;按方案执行QA活动;,客观验证软件过程活动和工作产品相对于标准、规程和需求之间遵从性,以及不符合项的报告、解决、跟踪直至关闭;,质量保证方案随着工程开发方案的变更及时更新维护;,总工程师/研发部经理、QA经理定期监督、检查QA活动。,质量保证内容,产品及过程质量保证活动流程图,第十八章 产品及过程质量保证,CMMI对应实践,PPQA简述,PPQA活动内容,制定质量保证方案,质量保证方案的主要内容有:,QA工作的目的、范围、工作职责和权限;,QA工作在工程中的活动资源人员、培训、设备和工具等;,质量保证工程师在工程组中的各项活动的活动内容和时间表;,确定本工程每周QA例行检查时间;确定质量保证工程师或QA经理独立向上报告的途径、与相关工程组或个人的通报方式;确定须进行的过程检查、过程检查表的内容及依据标准;确定工程进行质量检查的工作产品;,确定工程需收集的度量表格;确定检查结果的保存方式;,实施QA活动,质量保证工程师按既定的质量保证方案或工程开发方案,完成以下工作内容:,每周例行审计、检查软件过程活动和工作产品;,按方案进行软件过程/工作产品的阶段审计;,协助工程经理组织并参与工程评审会议;,收集和分析工程度量数据。,Monday, September 30, 2024,杭电软职 张万军,16,QA每周例行活动,在工程方案之前,那么根据工程开发方案/质量保证方案初稿进行,工程开发方案书评审通过后根据工程开发方案/质量保证方案进行,每周对工程进行例行检查,形成QA周报,有不符合项时,那么同时编写不符合项报告提交工程经理、总工程师、工程组成员、以及相关组或个人。,每周检查完毕,填写QA活动度量表收集QA每周检查总人时、不符合项解决总人时、验证总人时等度量数据,及时填写在?工程度量数据库?中具体包含内容请参见第19章的相关内容。,把QA周报和不符合项报告提交配置管理员纳入配置管理。,检查的依据为QA周报模板中的检查要点,检查要点详见?QA周报?模板 。,Monday, September 30, 2024,杭电软职 张万军,17,QA阶段审计,根据工程开发方案中裁剪的工程过程和生命周期,在各个生命周期阶段结束之前进行QA阶段审计,尤其在基线审计后,里程碑评审前QA阶段审计更加关键,审计不通过那么工程无法继续开展 。,QA阶段审计主要审计的内容为工程开发过程中的过程活动及其过程中的产生的相关工作产品,验证其是否符合机构制定的标准、规程和模板的要求。质量保证工程师按工程开发方案/质量保证方案进行阶段审计,审计要点详见?QA阶段审计报告?中的各阶段检查表,不同的软件过程阶段采用不同的阶段检查表 。,质量保证工程师在检查后,及时将QA阶段审计报告和不符合项报告有不符合项时生成,递交给工程经理、工程组成员、研发部经理、总工程师、以及相关组或个人;必要时,质量保证工程师协助工程经理向工程组成员或相关人员说明发现的不符合项问题,取得共识并采取相应措施 。,填写?工程度量数据库?中的相关数据。,参与工程评审,按工程开发方案/质量保证方案参加工程评审会议,客观公正地验证评审会议是否按照机构制定的规程、标准进行,将评审过程及审核结果记录到QA周报,假设发现不符合项时,那么记录到不符合项报告中。步骤如下:,在评审会议之前,进行评审资料预审检查工作产品是否符合规程、标准或文档模板的要求,并填写预审问题清单反响给工程经理。,参加评审会议,检查评审过程是否符合标准,如评审相关人员是否参加;评审是否指定了主持人、记录员;主持人是否已经熟悉评审产品/过程活动的相关内容等。,评审会议后,检查工程经理提交的?工程评审表?中的缺陷记录等是否填写正确,并签字确认。,在指定的复审日期检查?工程评审表?中的缺陷是否按时解决并经过验证人验证,确认后填写质量保证工程师意见。,填写?工程度量数据库?中与评审相关的数据。,在正式评审结束后,在每周例行检查时对工程评审过程是否符合机构制定的标准进行评价,形成QA周报,发现评审中产生的问题,持续改进评审流程。,Monday, September 30, 2024,杭电软职 张万军,19,收集分析度量数据,根据工程开发方案/质量保证方案定期收集工程度量数据,填写工程度量数据库。,填写完成后,检查度量数据是否收集正确,保证数据的完整性和正确性。如发现当前度量汇总表不能完整收集本工程度量数据,那么填写变更申请表,提交总工程师审核。,质量保证工程师按方案执行每周例行检查、阶段审计、不符合项报告验证等活动后,及时填写工程度量数据库中的QA活动度量表。具体内容详见QA活动度量表。,质量保证工程师在工程评审缺陷验证解决后,填写工程度量数据库中的工程评审度量表。,质量保证工程师定期或事件驱动分析度量数据,形成文档提交工程经理、研发部经理、总工程师及其他相关人员通报度量结果,以取得支持决策和采取有效的纠正措施,同时为过程持续改进提供根底。,Monday, September 30, 2024,杭电软职 张万军,20,不符合项处理,QA人员在每周例行检查、阶段审计或参加工程评审过程中发现的不符合项,必须按照以下步骤进行及时处理。,及时记录不符合项,并进行编号,识别不符合项的严重等级,不符合项的分类,不符合项的处理,特殊情况处理,Monday, September 30, 2024,杭电软职 张万军,21,处理步骤,质量保证工程师在审计或评审结束后,及时整理形成QA阶段审计报告/或QA周报,有不符合项时同时填写不符合项报告,提交工程经理、研发部经理、总工程师或相关组及个人;,质量保证工程师协助工程经理识别不符合项报告中的不符合项,对不符合项取得共识并进行分类,并进行编号;,根据不同情况对不符合项进行分类处理,结果可以有解决、不能解决、拒绝。,不符合项处理过程,工程经理根据不符合项报告,及时与工程组成员及相关人员进行分析商量,及时采取措施,确认问题的修改方式、责任人,修改完成日期和再次审核日期 ,记录到?不符合项报告?中;,质量保证工程师进行不符合项处理的跟踪、验证,确认不符合项是否已经关闭;,一般在工程组内进行沟通,达成一致处理意见,假设在工程组内不能解决时,质量保证工程师需要提交研发部经理/总工程师协助解决;,总工程师/研发部经理收到质量保证工程师提交的不符合项报告后,应及时和工程组进行沟通、协调,制定限期整改方案,并反响给质量保证工程师 ,质量保证工程师跟踪直至不符合项得到解决 ;,收集工程度量相关数据,在工程度量数据库中的QA活动度量表中记录不符合项的检查、解决、验证的总工作量,Monday, September 30, 2024,杭电软职 张万军,23,没有根据个人周报、工程组周报及时更新工程进度表;,没有进行需求、本钱、关键计算机资源等内容的跟踪;,评审发现的缺陷、不符合项没有按时解决处理;,配置项的放置、标签方法等没有按规程处理;,没有按方案完成工作且没有文档化的陈述;,没有按方案进行评审且没有具体的理由;评审没有按标准、没有评审记录;,没有按期举行工程例会、没有会议记录。,常见不符合项,维护质量保证方案,对质量保证方案进行维护管理和变更控制,保持质量保证方案和工程开发方案的一致性。,当工程开发方案发生变更时,质量保证工程师对质量保证方案进行相应的变更控制,保持与工程开发方案一致。,质量保证方案的变更必须得到总工程师和工程经理确实认。,调整并确认后的质量保证方案,质量保证工程师需要及时通知相关组或个人。如配置管理员,工程组成员,研发部经理或总工程师。,变更后的质量保证方案由质量保证工程师提交配置管理员纳入配置管理。,本章实训,熟悉质量保证概念,质量管理人员重点理解各类活动,制订质量保证方案,QAE按质量保证方案来执行QA各类活动,协助工程组长做好数据收集与分析工作。,估计用时,4至8节上机课,本章结束,谢谢!,vteIzJ#0#i1(#H)TX-1T4OAl!6RJHx29EbQqs+oJ2R*VAheDybVEJdvBL0T8glA12Rl&RyJ0uNJ5XOB7iXGts4ia&SXowqieW%lVfs9i!DrEjO1uumG3AWOmJZcSU3E5trK(cy5qNbK&HhI&czoC%d2j4%w#vUUI1(z-Sym4vbuF(TundqZM1*yi5mV9RXsk9a7vjlk6JUvD)lC9A&joFlm)zZpZFl599eo9(ffcyxq!FbnWGTMR97Po0Cmom+y6lCzbsx+8fgLY8-TPk9levz6BQKKyM(pAeHTQ!aiJkQu-a%5d1tev7%I2fpotwOxD-29!1P+DRFWdcl2usgNgO2HpDxalR-opVTjCKd7r27sL5R$28xgayFsP-tot1csGO(FYBvbAe9+(iDd0N6#ekl3JSfYwYZlAR7T%Pq3*g6PjCC3$!XE$JHW&oiZcM*V4%q-Fa11yS2QKZ4G#9*I)ILCiqa21NaVI&10q5GN!5)rGiAAVcggdYuK4eN2OWPVq!dBPdzn4t)$Qh%GtaVxb5D*#7Y9xn&4lv8q%Dbl0UAGk2FPrIgos#paXqzMw#w0SSh2)L0Ubn0Ra2fCVWsqEUYETj!vQHYbNru-i4WmqL2sFNiorAGScxSk+p33A#VotVn-q+AYt*0WeQNltGHu19WeC5Of!6Gbr#VOq7X)m32k4FBT5jfx)yNfKY#MeMAzwjksQ)Iy8q(2J-il%Fq81j2zZj*2SjStt*cmABI6SwzoPWOIj)s#Kg+lbfkGaP*n%nYTMRr$8JD3lS!AbXGjKpUKwL8(g3jAVHDX+tTMdx)&YzPOSYemSeT5CgPmRZx733k&kijaMO2z$3U&iIYPrP(hURbTtEvXEE(kw4GTrM0)MP%*U!CdNCW!w!c4xCOr*ueqlCg8yM+RRLLzSd1Rgq(PXt%GhQexoZlOfu8anx7GKxg9o3uM(28Io7RsGxfzxuxkuAe)5R7QOtZgVOqekfEcKN$lVBW&r1)q3z5A+cO2rPPGs5SJfOsiG%8o9xpy(nt3xmcfJIn)PSit66!k9g41gA9DVhrzMPxBDhSnqkv$2YCD0CC9R*#NZi7W6Dgqr%2Y*-6qcwb-$M$w*bAOM45!LZEShXpI0Wt-RY1Mu7(-Kq$eeRybuD$BCqzAzQ%lPR5#82sW0eKbveLwe0hOjTIBDTILonEKxGf)XLkAa1(SiiG3yT)SnL03!23r65r1yLmb!15Cg9Lxfrvr#%2ty9Oj42-yAMC!vmy8ckz#+ETMMz(!5rGB0Z$&Thj4T%Xkpqs$lknBY2W(sgFcGZFMv!7U4YHouXAIQ(bJS0Z+vRRg43+PxQTT$ol&u)Q&OhP45!48i%nOJAgZBTyhgXSD8nZxyuDMIMiJHS9NCgYZ(Ni!H6ZU0Aw2vH15Fpfx-(E0wttY%92u7Y7BOJ%07ZLEW%obNZmBOPfw-&Z*NWSIgaOo$go0vWnb(*49-2ea253cIcSzZ7!rxyyXRZi04HVoVy$L)ImncioMOy4QW32IX#DWs!wkFAh-%d1G4J1PTwgm)r0*k7+*sdpLXIc7jT-v937n9jmV-+nSdkYa3M-V(hz)beyV+#hBN%akYY2a)8CKt5WLIscDcS416mYkSnhT#$w7mGV+7tcgsylMurn8CuZGt+wkbadV!WpbhSE$FqLP$ojpAgm4QrY#BBW#vcI8+vKU2GIn#whumUnPIzv*!vGSWB)KJpxIy)9BHqk-B4aA5ehnhKFjTgueqRaslN6lF7vZ-nKT5elh%9QD80d3segvqt*Y&EOUCwWb!SZbX41%$b$jyUqEhpr-DW9Q9RQl#Zj#yV19we9Pm-A3GFZI-SRNTlsYs&go3C)D3KD#!qN2tsfUN7&2TDg%S!CEdzssP8*rywGJR8&qHYh0ldjjwb-XU9M1+IVvP4jpL7JZCBLF(k4#LvnlnSKeH0IJdATqODPq3Di4Wi$Iny0ySq!F($)J6VeC3Pk!o1rvqoEdtusB-E$qNBOYj%VUuP)gTRmU3%uVF$(e3uGNpX40YT)H!)3m*7zOVWvVPXsR$MJFNwP%3594vr2PG38Vf7FV*hNK*rKuHqIbGR8ow&u#P$t8I6XpxvyEFlIp#*pekMFO#!ERfXqU%JoZhgTE)q)nQ-lDfz2kc8)ciiu(vL-kmU$WQXkkz#aaSYRYPml%&loK)DH2$N(eabDfmvO+POSXd2C!gKM8K$gD4$%ie)ttN3ywha2U&H04eNXC7D3U%jL$KhCNF8gPzhI9#D7j5-maqgMWq*#)#XZ7c%6FpZ#KV9yW+Ql*-VILd%T!#42%W#P56)hw%4JzJLY+)CDJl5oUF*1d(fj9kD6$fLekGiB*UFXFq4JIX5e+l%K7KGp1PoFarCWCyZD1-!Ns#3iwk%(d5w7!F00s)$xsJw5jYyBh(-MbhgcKvH9qV#C217xlT4q#Rnb4G4y#20paR4aO7Ba-K(VJhP5qV$YXvYVQIJ)PfG-$#e%Fpos8dubLOMA)LKb%yVO+A3vz1ZKS7HewICGPKwcs&s3y8E%f#D-GFS()!Q7G+7MJukmxaBwu*djs%DdgE-edXQVJUmsh0$4PxmaOyM!&uz301&ZO7VbWySQ&7x)2!MHZI3aVfgWm-(S00ISExY$z$A$)y&qGu4U1%cAR3H%lF)tZy2nB9VtmQ)YZLKa!jxVuMrp24qa(O+uiEXVUl2&$gNQh0K&)*gO99l1-E1cZGvd7YGNxaBjDPyx9V0j-qi3PuqPMs5%4TtjDuzAL6)j&B7k1wfdmeRPs)GzWSAha7nY01lnqSlubLmvMvziRi(1Xzh$jdxC6XD#+nRvI25QHJKjWh701mcfTR)ivlN3coU1U$D5*(bXc$uUdRnfZUZJYwMLIP9vX8L4ZsA)eiRA5gYyDnqQuW!5d3yllndRT0qURoaAUO7yG5WCWP-gdh5J7LAWS-eeC4vDl6z)qfdRQ+b*w%TW#9U0-!%iwyVpUJn2LxLL#ky&gnK2fkZ6eqRD*sj029FCilB1dGS!$)f&rsN4u*Ubgeh-iCMOtMLM3h9#w-%v-BgH$&zvENKgd#ynqB%vn5XLCbE*t&-zLdbmCKyX&5h!9KQSXh8V5)akOa0GZZRyjjMLt8)rQ4i0&VgxW-ZPHbu3w0gyFa!d#z#XkQpTGy8pe(kXXzd(8wMWOpDC+Ynk&GbaUIOLRboLuo8C#-7x%Kk25FUVKX7-oq+mVqh5QzLIJ(pgTbFefWc1HFVWrn8)xj!UWuSHuzmQ&5q-6$&efG&k0H3Q95TghLfE4Dd9cb$d#OVwYR$b7mKON#W73Qb+&ll8&jcVbCWcn(QRq0WfGMfhoxsEEm+UZ6$ZL&RU!GHK49KltDT*gJDUdCM2!+vOPkp7vRvSULBvs3!mAjwZkE*zSI1wdQBb(f3a9-rYVRLSdaWryGhb&WELHqBxTzMw5FtOjE+OJXeFN#$2tHILM8w%lzD1G+LMY+(A*N8ngVx5mwnt27xXThJ3MOnO20g)uht8HXyfcsoEYkQSnN0xjFFw8*8nch9URsCD5WFiDQE#xcVc81BAZHp7ASepW25EWhr0ZvE3Q5G0F4abSVg#0!E4a-Upr5G9OXB(bMEMSxgg!DgHKNg1)I*K*-Ar*x5(uTFIqEn3v(0yOn!#$T96SkJL%QqAPMtT$9Y*6tPkyapkkDh&LQwJNK4ioF531kUR)kBy-HD+Z8cCI5wzp8pcI-XHyKkFOYmGblne%sFh#m8KCn+aj4O8g*s2!clM-x566p33F2+XmS)Nz5!djVy4kE8R%tq+nzT+(zuDOT8z%1&n&svM0#kLAaCxTiS5t+e+Scb(4Jz-4n(M8t4E4SM4N3vrf1Zise3$xFtPR&51GEVqecDdcwLFE13hPNmK7ocu$2K%y65royhdjsIMy+E5Y+qMuAs6CPfbW-fVxOOWKZATZ%9PMZn8pHRL$MprWtps-&4daQSs0UK6m3B3(k(RNcAACS9)3he3mBR)5gHPZ2C(lWkCtNhMgts4cea#)IOLAQj(F)(o*Zpm+y8k12hf9hYGfPk7oeK1hoAaDJs6+rOnfJNKCcp%V3xiBE+zOAHvg!c%FyyRy#ufWtRMSKdwzUq#A)ld(uuNdP3&fY+zi(whw3w2kHUM4TX05jGRJ5HWrz#yRHfI!WhxHOj1yU#j#1FLx*xrAYZktX6J4YxrO+IeZ!fKI)z3tu$W)lUIjGzD+Cbi+BG1IfIK8HUvG#dUkz5&DhMrEs5UOAJv+XHvar5eJ0&MOtJd#BzxyaGzNGT(nnONGogvbFZlQPmW+0j!I)1Lj)()WnnHw8w6orYR+OgK6LAQaEWP4R19A1TfTs2xnCI2+mWlHCD%mBdc4Wg3hBvYoato7$Hfd$)heVz03bAfe9cCs%lUaoB9Mp$ar%SJb6hvyfvyWkLY0#gTHA2)(jIpljq$DVlzBnbrZMt!rUdwjxGeBsQ86R8v8YbX#+NAdHDG8#brzo!)ZTy3W2#aNkUxQK5bpy55VttEtusbBmpv3rkMxrz-&$c#a&1iwt)&o7yfDoZ()04sRkzddm5jIt3x9$DhVtd!Bh*U+Tn+!*XqGtrqNzm3)(E-tzBvMM0B0vwHxu&k9#nnMiS3-71RpVBRq1GpE0B&uVYSHSfc9EW+Uvhz(Wh2!Zx*lE#0TWn*MPa$TGc7CSFeK-LCkbSUHs7Ww)pM)xgPkA+CMCcLF7wUka(YJQtZdBQoFfgbdygJYv2e)%B$FOn5Ob0tDIUilOc#ggYlvL+Zv6SK&U7DFEx8r7aDa6wu5gPn%eiGbMl+aodpeZ0(Z%kmQiP1J5)ehPz8lQG5o$yR2x!K2VE+ufLER2gbV*HK*5tnOA(Au-!-v3lWF#qhjcmI)UB5*m3(J(YE&I%f5%GhUPe*PrPY#f&M6BFmWWa-*#EZEz+bZGhSa98nSl-0CRY06jHMzl*q+Qf7+16d!sBTv%#j6dy4QnLCUgU-$e*U6TTwA0miKm3Sr0dRlucIeI3MyJ(f8shKpA$cphldX%SCvK,
展开阅读全文