购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.1 软件需求获取和分析

需求获取是指需求分析人员通过选择恰当的需求获取方法和技术,对相关的需求来源执行需求获取行为,获取需求内容的过程。在需求获取过程中将产生各种形式的原始资料,原始资料经整理形成项目的原始需求文档。需求获取成果最终以前景和范围文档、用例说明文档的形式呈现。

2.1.1 需求获取活动

需求获取的来源非常广泛,包括涉众、硬数据、相关产品、重要文档、相关技术标准和法规等。需求获取的信息内容包括需求、业务描述、环境和约束。通过面谈、用户调查、研讨会、文档分析、原型分析等需求获取方式发现需求的所有活动称为需求获取活动。需求获取活动包括:识别软件产品的预期客户和其他干系人;通过面谈、问卷调查和现场调研等形式理解产品干系人的工作任务、目标及业务目标,理解他们对产品功能和性能的预期;演示产品原型、分析现有产品问题清单,试图了解软件产品的应用环境、现存问题等;召开研讨会探讨并挖掘产品用途、产品特性和特征;等等。

需求获取活动的典型流程图如图2-2所示。需求分析员从项目问题入手,收集应用背景资料,初步确定需求获取的内容;围绕需求获取的内容,尽可能多地挖掘需求获取的来源,重点进行涉众分析;针对需求来源和核心涉众,执行多种形式的需求获取方法,确保准确、全面和高效地获取需求;需求获取的过程是复杂的,有效的需求组织过程是需求获取行为顺利进行的保障;在上述需求获取过程中将收集到大量的原始资料,需求分析小组对获取的原始资料进行整理,形成原始需求文档,并纳入开发库进行配置管理,最后分析原始需求文档,将需求获取结果文档化。

接下来,详细讨论需求获取活动的五个关键环节。

1.需求获取的内容

需求获取的内容主要包括需求本身、业务描述、环境和约束三大类。

需求本身是获取的主要对象,来源于涉众的期望,是系统期望达到的目标。

业务描述体现系统业务运行状况,涉众通常会描述为问题解决之前的问题特性及问题解决之后的问题特性;也可以从业务运行过程中数据的流动路径获得,包括数据的采集和传递过程,数据的分析、加工和生产过程等。

环境和约束限定了系统部署的环境和条件。它不会影响系统功能,却会给系统开发带来很多限制。此类需求获取内容主要来源于涉众描述系统运行的软硬件环境及限制条件,需求分析人员对应用环境的观察和体验等。

图2-2 需求获取活动的典型流程图

2.需求获取的来源

需求获取的来源包括涉众、硬数据、相关产品、重要文档、相关技术标准和法规等,重点进行涉众的识别和分析。

涉众是与系统目标相关的人和物。涉众包括投资项目或购买产品的客户,直接或间接使用产品的用户,制订项目计划并带领开发团队完成产品的项目经理,负责编写需求的需求分析员,设计、实现和维护产品的开发人员,测试人员,文档编制人员,市场、技术支持及其他与产品和客户打交道的人员等。

涉众的识别和分析过程包括涉众识别、涉众描述、涉众评估和涉众确定等环节。

(1)涉众识别。需求分析小组尽可能集中所有初始涉众,对初始涉众进行归类。形成初始涉众类别列表并细化涉众;分析涉众类别列表,分析涉众关系,建立涉众网络图,依据涉众与系统的相关性,进一步识别系统的关键涉众;需求分析小组对涉众列表进行确认,结束涉众识别过程。

在自动成图系统案例中,系统客户为各地市供电局,供电局操作员和工程调度员使用自动成图系统监控SCADA系统运行状况;与系统开发相关的人员有项目经理、需求分析员、开发人员、测试人员、文档编制人员,其他与市场、产品和客户相关的人员等。供电局操作员和工程调度员是关键涉众。

自动成图系统案例的涉众列表如表2-1所示。

表2-1 自动成图系统涉众列表

(2)涉众描述。在此环节,深度挖掘涉众的基本特征和扩展特征,并整理为涉众列表。基本特征包括个人特征和工作特征;扩展特征包括对项目的期望、关注点、兴趣、对项目的态度等。

(3)涉众评估。涉众描述得到大量的涉众信息,对这些信息进行分析,综合评估涉众优先级、风险和共赢等深层次信息。

自动成图系统案例的关键涉众较少,关系简单。从优先级来看,自动成图系统首先由供电局系统操作员完成相关线路的自动成图操作、调图和确认工作,使用优先级最高,但系统多数时间由工程调度员使用。两类关键涉众的共同风险是对系统成图效果的担忧,但总体上对系统为支持态度。两类涉众的期望和系统业务需求一致,为共赢关系。

(4)涉众确定。经过以上涉众识别、描述和评估过程,关键涉众及其职责的定义已基本完成,选择涉众代表参与软件的开发过程,是项目成功的关键。

3.需求获取的方法

需求获取的方法有多种,掌握各种方法的优缺点及适用范围,结合项目特性和涉众特征,才能恰当运用需求获取的方法,有效获取需求。

常见的需求获取方法包括面谈、观察法、用户调查、研讨会、文档分析法、原型法等。本节将以面谈和原型法为例详细介绍需求获取方法的运用。

4.需求获取的组织

运用需求获取方法执行需求获取行为的过程往往是复杂的,有可能会出现过程的反复或迭代,甚至出现行为过程的交叉,导致需求获取过程耗时耗力,最终造成执行效果不佳及需求遗漏等不良后果。为了使获取行为能有效配合,需求获取的有效组织是必要的。常用的需求获取组织方法有面向目标的方法、基于场景的方法和基于用例的方法。

面向目标的需求获取的组织方式,以追求目标作为指导需求获取的驱动,目标把需求和组织业务环境联系起来,驱动后续需求获取过程。面向目标的方法直观,使围绕目标所采集到的需求更为精确。

基于场景的需求获取的组织方式,通过模拟和展示系统的使用过程和情况,表达系统行为过程和结果,帮助用户理解系统。这种方式可以很好地组织需求获取得到的信息,组织为“模拟情景剧”或“展示剧”的场景化的形式供用户确认,便于纠正错误需求,补充遗漏需求。基于场景的方法还可以结合面向目标的方法,指导需求获取活动的开展。

基于用例的需求获取的组织方式,是一种通过建立用例模型完成需求获取的组织方式。用例模型展示了外部用户能够观察到的系统功能模型。这种方式从用户的角度讨论系统能够干什么,是一种用户参与度极高的需求获取组织方式。

5.需求获取结果文档化

以上需求获取过程收集到大量的以文字、图片、录音、视频等多种形式呈现的原始资料。原始需求文档包括访谈纪要、面谈报告、调查问卷、会议纪要、用例列表文档、相关的政策法规文件、业务规则文件以及行业标准文件等。需求分析小组对获取的原始资料进行整理,形成原始需求文档,并纳入开发库进行配置管理。最终通过定义项目前景和范围文档、用例说明文档完成需求获取成果文档化的工作。

2.1.2 需求获取方法之面谈

面谈是需求分析员选择相关涉众,进行个人面谈或集体面谈以获取信息、补充信息和确认信息的方法。面谈是获取信息最直接的方式,对需求分析员的人际沟通能力要求较高,获取信息的质量受面谈对象表达能力、知识结构及态度的影响。当项目涉众类型较多、涉众间有业务流程交叉时,往往从各类涉众中选择代表进行集体面谈,全面听取各方用户意见,重点解决冲突,综合权衡利弊,最终确定需求。

面谈法通常和观察法、文档分析法、问卷调查法及原型法等需求获取方法配合使用。对于群体数多、人员不确定的涉众类型,并不适合使用面谈法。在面谈前向相关涉众发放调查问卷,可以了解面谈对象的基本情况,收集相关背景资料。面谈前分析相关文档资料,是面谈准备工作的一部分;在面谈过程中广泛收集单据、报表、政策法规和规章制度等文档,也是形成面谈报告的基础资料。面谈以受访对象回答问题、主动表述的形式为主,可有效补充观察法和文档分析法所无法获取的信息。面谈过程中,可以通过业务流程“故事原型”模拟和“界面原型”展示等可视化的方式,供用户确认业务需求。

面谈流程包括面谈前准备、面谈中的控制和记录及面谈后的需求整理。面谈前,通常需要阅读背景资料,确定面谈主题和目标,选择被会见者,安排会见时间、地点,预约被会见者,设计调查问卷,准备面谈工具及人员安排等。面谈中,依据面谈问题大纲有效提问并记录,注意控制面谈主题。面谈后,复查整理文字、视频音频资料、调查问卷等面谈记录,记录员依据面谈主题整理讨论内容,总结面谈信息,形成面谈报告。必要时召开需求研讨会,讨论下一步努力的方向。

面谈报告包括面谈ID、会见者、被会见者、面谈日期、面谈主题、面谈目标、谈话要点、被会见者观点及下次面谈目标等。面谈过程中,记录员记录面谈的实质内容、会见者对被会见者的观察、面谈中发现的观点和要点、会见者对面谈的基本评价等。面谈结束,需求分析小组分析提炼面谈未解决的问题及下次面谈目标。

在此,自动成图项目的需求分析小组选择系统核心功能的主要使用者——供电局操作员作为面谈对象。第一次面谈以系统目标和前景范围确认为主题。自动成图系统第一次面谈报告如表2-2所示。

表2-2 自动成图系统第一次面谈报告

续表

由第一次面谈报告可以看出,用户对系统业务需求的表述是抽象的、不明确的,往往要经过多次面谈才能获得较为可靠的需求。需求分析员在第一次面谈的基础上安排了第二次面谈,第二次面谈的主题是场景建立和用例细化,希望得到用户操作流程和执行流程描述。自动成图系统第二次面谈报告如表2-3所示。

表2-3 自动成图系统第二次面谈报告

分析第二次面谈报告发现,用户业务流程的描述还需要进一步细化。例如,自动成图生成失败,操作员该如何应对?是否有失败原因提示?是否有操作帮助?用户在面谈中只谈到了正常业务操作流程,而异常流程的处理过程并未讨论,所以需要进一步获取需求。

通过上述两次面谈实践可以看出,面谈这种需求获取方法实施简单,经济成本低,能够获得丰富的内容信息(包括事实、问题、被会见者观点、态度等)。通过面谈,需求分析员可以和涉众建立友好关系,为后期工作开展打下良好的基础。

面谈也有很多局限性,如比较耗时、对需求分析员的人际交往能力要求高;被会见者在地理分散、不确定的情况下难以实现面谈;面谈对象的态度、偏见、潜在知识、默认知识、表述等都会影响面谈结果。

有效控制面谈过程、保持面谈主题及总结面谈要点等方式是良好的实践建议。面谈前准备问题大纲或议程单是必要的。在面谈过程中,针对每项面谈主题,可告知面谈对象需求分析小组期望得到何种类型的细节信息,必要时可以指定答复时间;在面谈的过程中安排程序性提示,逐一引导面谈对象陈述主题,避免跑题。面谈结束前,主持者可简要总结本次面谈要点。

需求分析小组对前两次的面谈结果召开了研讨会,对成果及问题进行了总结。前两次获取的信息量有限,针对自动成图这类有一定专业性和操作流程性强的业务,仅仅通过用户口述业务流程,很容易造成流程的遗漏;同时,用户对自动成图效果的期望是抽象的,很难有一个统一的成图效果标准。基于以上结论,项目组决定综合运用场景文本描述和界面原型法,继续深入开展下一轮面谈。

面谈法常常与问卷调查法、原型法和研讨会等方式配合运用。下面继续讨论自动成图案例的需求获取实践,重点围绕原型法的执行、原型法和面谈的结合实践展开。

2.1.3 需求获取方法之原型法

原型即样品、模型,原型可以是一个演示系统,也可以是系统原型界面。把系统主要功能和操作流程快速开发制作为软件原型,以可视化、流程化的形式直观展示给用户,征求用户意见,以最大限度模拟出用户的真实需求。原型也是一种工具,作为分析和设计系统的接口之一,它可以加快开发速度,应对需求变化,是系统开发团队与用户、开发团队内部沟通的媒介。

原型法广泛应用于需求获取。通常来说,如果用户需求出现了模糊、不清晰、不完整等特征时,可以考虑使用原型法。它既可以帮助用户更好地理解和阐明他们自己的信息需求,也可以帮助需求分析员更好地获取和定义需求。

原型法分为抛弃式和演化式两大类。原型展示给用户,用户不接受,强烈反对,则抛弃原型。抛弃式原型不作为最终产品,需求获取目的达到即被抛弃。抛弃式原型建立在理解的、获取的需求信息非常少的基础之上,主要应用于软件生命周期的需求获取初期。原型展示给用户,用户部分接受,继续修改不接受部分,直到用户满意,此时原型为演化式原型。这种情况下,项目的生命周期模型往往为迭代和增量开发模型,系统的形成和发展是逐步完成的,每次迭代都要对原型系统重新进行规格说明、设计、实现和评价。演化式原型的应用是一种高度动态迭代和循环的过程,所以也是应对需求变化最为有效的方法。

进一步,抛弃式原型和演化式原型又可以细分为水平抛弃式和垂直抛弃式、水平演化式和垂直演化式。水平抛弃式原型主要用于识别遗漏功能,研究用户界面方法,阐明并细化用例和功能性需求;垂直抛弃式原型往往演示系统可行性。水平演化式原型用于实现核心用例,并根据优先级实现其他用例,使得系统适应快速变化的需要;垂直演化式原型与水平式配合,实现并扩充核心功能,实现并扩充核心算法。

在原型法的具体实施上,首先,由用户提出对新系统的基本要求,如功能、界面的基本形式、所需要的数据、应用范围和运行环境等,根据这些信息需求,分析员定义项目的前景和范围。其次,系统开发人员在明确了系统基本要求和功能的基础上,运用工具、依据计算机模型以尽可能快的速度和尽量低的成本构建快速原型模型。最后,快速原型模型构建完成,展示给用户,此时,需求分析员和用户需要进行充分沟通,对用户不满意的地方进行修改和完善,直到用户基本满意为止。

自动成图系统案例第三次面谈结合业务流程原型进行,主题是场景确认,持续的用例发现和细节补充。面谈内容涉及业务过程的各个细节。为了确保业务流程清晰、无遗漏,本次面谈需求分析小组准备了业务场景原型,期望通过原型演示听取用户意见,明确前期积累的问题。

需求分析小组针对系统操作员主要工作流程,如自动成图、站房设备的展开设置、联络线路设置等几个主要业务场景构建原型。其中,自动成图系统主界面如图2-3所示,界面布局从上至下包括菜单栏、图形显示区和状态栏。主界面对菜单核心功能按钮、右键菜单功能按钮,以及图形显示相关的坐标、作图比例等布局和基础操作进行了说明。通过界面原型的设计,系统操作员了解了新系统的功能菜单布局和基本操作流程。

图2-3 自动成图系统主界面

通常,在为用户展示界面原型时,同时结合场景文本描述(见表2-4),可以方便用户更好地理解业务流程。最终,形成第三次面谈报告(见表2-5)。

表2-4 自动成图场景文本描述

表2-5 自动成图系统第三次面谈报告

第三次面谈在前两次面谈的基础上进行,询问内容涉及业务过程的各个细节,递进的过程非常明显。以界面原型和业务操作流程模拟的方式,很直观地展示给用户,用户容易接受和理解。操作员结合操作规范对异常业务流程提出期望,并且表达了旧系统在操作流程和易用性上的不足。可以看出,问题已经涉及系统交互时产生的一些细节、成图效果和操作实施工作量等有关产品性能和质量的需求。

性能需求的定义要适合运行环境,过于宽松的性能要求会带来用户的不满,过于苛刻的性能要求会给系统的设计造成不必要的负担,所以给出一个合适的量化标准非常关键,同时又非常困难。常见的方法是在限定性能目标的同时给出一定的灵活性或者给出不同层次的目标要求。

良好的排布效果是自动成图系统的业务需求之一。自动成图系统在实现自动成图基本操作后,成图效果“好的程度”是项目成功的重要质量指标。然而,成图效果这种需求是仁者见仁智者见智的,很难有统一的标准,而且用户也无法准确地表达出需求。第三次面谈中,用户对成图规范和期望做了初步描述,缺少细节,需要进一步调查。

需求分析小组为了最大限度接近用户期望,派工作人员观察工程实施人员的调图过程,收集接线图调图规范文档资料,制作成图效果原型图。重点针对接线图整体排布效果,展开站房的布局效果构建原型,便于用户理解成图规则。

依据总体布图规范,生成横平竖直的接线图,线路无交叉,设备无重叠,无拓扑数据错误。自动成图效果原型如图2-4所示。站房设备包括内部接线和设备,占据矩形排布区域,对整体排布效果及空间的利用产生影响。为此,应依据站房设备进、出线的位置构建站房设备排布原型,如图2-5所示。

图2-4 自动成图效果原型

第四次面谈的内容(见表2-6)在前三次面谈的基础上安排,使用成图效果原型演示成图效果,并询问业务流程中每个不明确的地方。至此,需求获取工作基本完成。

图2-5 站房设备排布原型

表2-6 自动成图系统第四次面谈报告

从上述原型法应用案例可以看出,原型法符合人们认识事物的规律,能在项目初期给用户可视化的直观感受;鼓励用户积极参与,由于有用户的直接参与,因此获取的需求更贴近用户实际期望;原型法的需求获取和系统开发过程都是循序渐进的,具有很强的应变能力。原型法适用于处理过程明确、简单的小型系统,不适合大型复杂系统,难以模拟的系统,存在大量运算、逻辑性强的处理系统。

原型能够根据环境的变化和用户的要求及时修改,但是整个系统开发过程缺乏统一规划和标准。原型法的复杂性使它在降低软件项目需求风险的同时,也引入了新的风险。涉众可能因为看到了一个正在运行的原型,从而得出产品几乎已经完成的结论,进而提出快速交付产品的不当要求;用户也可能会被原型所表现出来的非功能特性遮蔽了眼睛,从而忽略了他们更应该重视的功能特性;原型法在展示一些不确定性需求的同时,可能会掩盖一些用户的假设,这些假设将会无从发现。

在实践中,项目背景和基础条件影响原型法的具体实施。如果项目以缺陷需求为起始点,则需要不断调整原型以贴近用户期望,这种背景下的项目就可以使用探索式原型法;如果项目拥有清晰的用户需求,但是开发者对这些需求的实现方法、实现效果和可行性没有太大把握,则可以采用实验式原型法;如果项目有清晰的需求,也有积累的原型资产,则可以使用演化式原型开发。

2.1.4 工程实践:前景和范围

前景和范围文档是需求获取阶段的重要文档成果,包括对业务需求、前景和范围的陈述。业务需求描述组织或用户的高层次目标,定义系统特性,回答为什么要开发软件或系统的问题。前景描述产品的作用、最终的功能。范围回答系统有什么功能,并描述系统的边界,即哪些功能在系统内,哪些功能在系统外。业务需求决定了前景的广度和深度,范围确定系统的高层次解决方案和系统特性。系统边界常用上下文图和用例图描述。

在此,以自动成图系统为例,说明前景和范围文档的重点内容。文档的关键是明确业务目标,识别业务风险,确定系统特性和发布范围,识别系统边界。

特性树形象地展示了按逻辑分组的产品特性,并将每种特性逐级分解到下一级细节。以下文档案例中,显示了自动成图系统的部分特性树,树的主干代表正在实现的产品,每个特性都有它自己的线或从主干上延伸出来的分支,如图2-6。

图2-6 自动成图系统的局部特性树

【工程实践:自动成图系统的前景和范围文档】

1 业务需求

1.1 背景

配电网监视与数据采集系统是以计算机为基础的生产过程控制与调度自动化系统,可以对现场的运行设备进行监视和控制。

高效的监视和控制工作离不开智能且可视化的图形窗口,各类配电网接线图正是工程调度员监控实时运行信息的图形资料。数据正确、布局科学、美观且智能化的配电网接线图系统的设计和开发,可以大幅提升监控调度人员的工作效率,有效降低工程实施成本,具有非常重要的工程应用价值。

现有配电网接线图的工程应用流程存在可视化效果不佳、自动生成效率低和智能化水平不高等问题。自动成图过程大大增加了工程调度员的工作量,远远不能满足工程监控的实时性要求。

1.2 业务机遇

兼容架空、地缆及混合线路类型的区域接线图自动生成算法,在城网和农网应用中具有更强的应用和推广价值。配电网监控与数据采集系统是配电网接线图的实时电气数据源,配电地理信息系统(GIS)是地理信息数据源。实时电气数据源和地理信息数据源为自动成图系统提供了数据可行性。

1.3 业务目标

BO-1:可实现数据正确、布图清晰、无交叉的成图效果,降低工程调度员75%的工作量。

BO-2:兼容多种线路类型的排布,包括架空线路、地缆线路及混合线路的布图需要。

BO-3:满足实时监控的要求,可有效显示手拉手联络型线路的排布。

1.4 成功指标

SM-1:工程调度员和供电局操作员使用自动成图系统后工作量降低了75%,成图响应时间不超过3s。

SM-2:自动成图系统可兼容多种线路类型的排布,可实时生成联络型线路,满足监控应用要求。

1.5 前景陈述

作为配电网监控与数据采集系统的重要图形资料,数据正确、布局科学、美观且智能化的配电网接线图系统的设计和开发,可以大幅提升监控调度人员的工作效率,有效降低工程实施成本,具有很高的工程应用价值。

1.6 业务风险

RI-1:对自动成图效果的美观度的评判,不同用户可能有不同的理解,以成图效果对调图工作量的影响作为主要评判标准。

RI-2:部分电气数据较多的线路,成图性能可能降低,响应时间超过3s。

2 范围与限制

2.1 主要特性

FE-1:自动成图,初始设置。

FE-2:自动成图,走线,设备排布,防止交叉,空间利用。

FE-3:自动成图,成图接线图的显示,保存。

FE-4:兼容多种线路类型,站房设备成图设置。

FE-5:兼容多种线路类型,架空接线图排布、地缆接线图排布、混合型接线图排布。

FE-6:兼容多种线路类型,多种线路类型成图优化。

FE-7:实时监控功能,变动接线图的重新生成,成图优化。

FE-8:实时监控功能,联络接线图成图,成图优化。

2.2 初始与后续发布的范围

初始与后续发布的范围如表2-7所示。

表2-7 初始与后续发布的范围

3 业务上下文

3.1 干系人资料

干系人如表2-8所示。

表2-8 干系人

3.2 项目优先级

所有列入发布1的特性都必须完全可操作;用户验收测试通过率超过95%;工程调图工作量平均降低75%;发布1计划将在次年第一季度上线,发布2在第二季度末上线,接受不超过两周的延期。

2.1.5 需求分析方法和流程

需求分析是一个深入理解需求的过程,在这个过程中试图找出遗漏的或不必要的需求,尝试将需求分配给系统架构定义的对应组件,考虑对需求进行恰当的细分,最后将需求以容易理解的方式表达出来。

需求分析的任务是建立分析模型和创建解决方案。建立分析模型,将复杂系统分解为简单的部分,构建它们之间的联系,确定本质特征,和用户达成对信息内容的共同理解,分析活动主要包括识别、定义和结构化。创建解决方案,将一个问题分解成独立的、更简单和易于管理的子问题来帮助寻找解决方案,是为了帮助开发者建立问题的定义,确定被定义事物之间的逻辑关系。

模型是对事物的抽象,可以帮助人们在创建一个事物之前更好地理解事物,集中关注问题的计算特性,如数据、功能、规则等。常见建模方法有抽象、分解和投影。建模是需求分析的主要手段,通过简化、强调来帮助需求分析人员厘清思路,达成共识。目前常见的需求分析方法有三种:结构化分析、面向对象分析和面向问题域分析。方法不只是一种技术,还是解决任务的一种途径,通常由一组技术组成。每种需求分析技术都有自己的特点,只有通过多种需求分析技术的有机结合与集成才能充分地描述复杂应用。需求分析常用方法如图2-7所示。

图2-7 需求分析常用方法

2.1.6 工程实践:用例说明文档

对需求获取的内容进行有效组织的方法是多样的,如基于用例的方法、基于场景的方法、面向目标的方法等。基于用例/场景模型的组织方式,核心是构建用例图和描述用例。用例是确定系统边界的一个好方法,也是产生测试用例的好方法。用例止于系统接口的边界,用例描述参与者使用系统时所遵循的次序,但不会说明系统内部采用什么步骤来响应参与者的刺激。

用例说明文档是需求获取内容的整理和组织,包括系统主要参与者及用例,每个用例的前置条件、后置条件、一般流程、选择流程及异常流程的详细描述等。自动成图项目的主要参与者及用例如表2-9所示。生成接线图用例的描述如表2-10所示。

表2-9 自动成图项目的主要参与者及用例

表2-10 生成接线图用例的描述

续表

续表 hCgYZl+ctyRNcMT3gsXJzlrBJE54D7ieNeHB+9GD+6K3cnAPCE0lSLKRlLs/1HwV

点击中间区域
呼出菜单
上一章
目录
下一章
×