软件工程 软件过程模型概述

6 篇文章 1 订阅
订阅专栏

概述

软件过程模型实际上就是软件开发模型,这是软件开发全过程、活动、任务的结构框架。

下面将简单介绍一下各种常用的软件过程模型。

瀑布模型(Waterfall Model)

瀑布模型即将 软件生存周期 中的各个活动规定为依线性顺序连接的若干阶段模型。它规定了由前至后、相互连接的固定次序,如同瀑布逐级下落:

Waterfall Model

瀑布模型假定,一个待开发的系统需求是完整的、简明的、一致的,而且可以先于设计和实现完成之前产品。

这种模型的优点在于易于理解、管理成本低,强调阶段性早期计划及需求调查和产品测试。不足之处是,客户必须能够完整、正确、清晰地表达他们的需要。并且往往只有当项目接近结束的时候才能发现需求或设计中的错误,项目风控能力较弱。

事实上这种模型是过于理想化了,人在工作过程不可能不犯错,因此实际瀑布模型一般存在发现错误后回退修正错误的流程。

增量模型(Incremental Model)

增量模型融合了瀑布模型的基本成分和原型实现的迭代特征,它假设将需求分段为一系列的增量产品,每一增量都可以分别开发。该模型采用随日程的进展而交错的线性序列。每个线性序列产生软件一个可发布的增量。

在增量模型中,第一个增量往往是核心产品,客户对每个增量的使用和评估都将作为下一个增量发布时的新特征和功能,这个过程在每一个增量发布后不断重复。直至产生完善的产品。如下图:

Incremental Model

作为瀑布模型的变体,同样具有瀑布模型所有优点,另外还有瀑布模型不具有的优点:第一个可交付版本所需成本较少、开发由增量来表示,小系统承担的风险不大、版本交付快,减少用户需求变更、可以仅对少量增量先行投入资金。但它同样也有缺点,若第一版增量不好,则会给后面增量带来风险,另外若需求不稳定,则增量可能要重新开发。

使用增量模型的困难在于,把新的构件集成到现有的系统中的时候,必须不破坏已有的产品,也就是说必须把软件的体系结构设计的便于加入新的组成部分。从某种意义来讲,增量模型本身就是自我矛盾的,它一方面要把软件当做整体,另一方面又要把软件当做构件序列。

演化模型(Evolutionary Model)

软件类似其他复杂系统,会随着时间推移而演化,实际应用里,并非所有需求都被能预先定义,大量的案例证明在开发初期是难以得到一个完整的、准确的需求规格说明的。这主要是由于客户往往不能准确表达对未来系统的全面要求,开发者对要解决的应用问题模糊不清。此外在整个开发过程中用户可能产生新的需求,导致需求变更。

在上述情况下,软件开发人员需要一种专门应对不断演变的过程模型。因此出现了演化模型,这是一种迭代的过程模型,使软件逐步演化出更完整的软件版本,这种模型尤其适合用于对软件需求缺乏准确认知的情况。

原型模型(Prototype Model)

基于上述的原因,产生了 快速原型(Rapid Prototype) 开发方法,原型是预期系统的一个可执行版本,反映出系统性质选定的子集,一个原型不必满足目标软件的所有要求,它目的是快速、低成本地构建出原型。迅速构建出一个让用户看得见、摸得着的系统框架,这样用户就可以根据这个框架提出自己的需求。如下图:

Prototype Model

这个模型始于沟通,目的是定义软件的总体目标,标注需求,然后快速指定原型的开发计划,确定原型的目标和范围,迅速构建原型并交付,随后收集用户意见,然后进入下一轮原型的迭代开发。

螺旋模型(Spiral Model)

对于复杂的大型软件,一个原型往往难以达到要求,螺旋模型就是将瀑布模型和演化模型结合,加入两种模型都没有做到的风险分析。

这种模型将开发过程分为几个螺旋周期,每个螺旋周期与瀑布模型大致相似,如下图:

Spiral Model

每个螺旋周期大致分为4步:

  1. 制定计划——确定软件目标,选定方案,明确项目限制条件
  2. 风险分析——分析方案并识别风险,消除风险
  3. 实施工程——实施软件开发,验证阶段性成果
  4. 用户评估——评价阶段性成果,提出修改建议,确定下一周期开发计划

螺旋模型强调的是风险分析,让开发人员和用户对每个演化层级的风险有了解,从而做出预案,因而这种模型适用于庞大、复杂、高风险的系统开发。与瀑布模型相比,螺旋模型支持用户需求的动态变化,为项目管理人员及时调整管理决策提供便利,从而降低开发风险。

使用这种模型时,需要开发人员具有一定程度的风险评估能力和专业知识。不过,过多的迭代次数会增加开发成本。

喷泉模型(Water Fountain Model)

喷泉模型是一种以用户需求为动力,以对象为驱动的模型,适合面向对象的开发方法,它克服了瀑布模型不支持软件重用和多项开发活动集成的局限。

喷泉模型使得开发过程中具有可迭代性和无间隙性。其中前者指模型中的开发活动常常需要重复多次,而后者指开发活动之间没有明显的边界,不像瀑布模型那样必须一项一项进行,无间隙性的基础是基于面向对象的。如下图:

Water Fountain Model

这种模型的优点是各阶段没有界线,开发人员得以同步进行,提高开发效率。但这种方法由于同步进行往往需要更多的人员,这样不利于项目的管理。因此这种模型严格要求管理文档,但同时也使审核难度大幅提升。

基于构件的开发模型(Component-based Development Model)

这是一种利用预先包装的构件来构造应用的方法,构件可以来自于组织内部开发的,也可以是 商业化成品(COTS, Commercial Off-The Shelf) 软件构件。基于构件开发有很多螺旋模型的特点,这种方式本质上也是演化模型,需要迭代的方式来开发。但不同之处在于,这种模型采用预先打包的构件。

Component Development Model

领域工程的目的是构建领域模型、体系结构、可复用构件库。主要的目的就是分析领域中各种系统中公共部分或者相似部分。对候选的构件进行可变性分析,已适用于多个系统,然后经过严格测试和包装后存入可复用构件库。

而应用系统工程则是真正的使用可复用构件库来组装应用系统,如果其中的构件需要特化则修改,没有可用的构件仍然需要开发。在此过程中还会对构件的复用情况进行评价,以改进可复用构件。

形式化方法模型(Formal Methods Model)

这是一种建立在严格数学基础上的开发方法,采用严格的数学语言和语义描述功能规约和设计规约,通过数学的分析与推导很容易就发现需求的歧义性、不完整性及不一致性。而且也可以用于验证分析模型、设计模型与程序。

通过数学的演算,使形式化功能规约转化为形式化设计规约,再转换为程序代码。

统一过程模型(Unified Process Model)

统一过程是一种用例与风险驱动,以架构为中心,迭代且增量的开发过程,由UML方法和工具支持。

与增量模型类似,这种方法将迭代视为袖珍项目,它们都包含正常软件项目的所有元素:计划、分析设计、构造、集成与测试、发布。

统一过程定义了4个技术阶段及对应的制品:

  1. 起始阶段(Inception Phase)

    专注于项目的初创活动,主要产生的制品有:构想文档(Vision Document)、初始用例模型、初始项目术语表、初始业务用例、初始风险评估、项目计划(阶段及迭代)、业务模型、一个或多个原型(需要时)。

  2. 精化阶段(Elaboration Phase)

    在理解了最初的领域范围后进行需求分析和架构演进,主要产生的制品有:用例模型、补充需求(含非功能修改)、分析模型、软件体系结构描述、可执行的软件体系结构原型、初步设计模型、修订风险列表、项目计划(含迭代计划、工作流、里程碑、技术工作产品)、初始用户手册。

  3. 构建阶段(Construction Phase)

    关注系统的构件,产生现实模型,主要产生的制品有:设计模型、软件构件、集成的软件增量、测试计划及步骤、测试用例及支持文档(用户手册、安装手册、增量描述)。

  4. 移交阶段(Transition Phase)

    关注软件提交,产生软件增量,主要产生的制品有:提交的软件增量、β测试报告、综合用户反馈。

每次迭代产生包括最终系统的部分完成版本及项目文档,通过逐步迭代,直至完成最终系统。在每个迭代中有5个核心工作流:需求工作流、分析工作流、设计工作流、实现工作流、测试工作流。

这种模型的典型代表是 RUP(Rational Unified Process) ,它是UP的商业扩展,完全兼容UP,但更完整详细。

敏捷方法(Agile Development)

敏捷开发是现在较为流行的方式,它总体目标是通过尽可能早并持续地交付有价值的软件使客户满意。通过在软件开发过程中加入灵活性,敏捷方法使用户能够在开发周期的后期增加或改变需求。

这种过程的典型方法有很多种,每种方法都基于一套原则,这些原则实现了敏捷方法的总体目标。下面主要简单介绍几种:

  1. 极限编程(XP, Extreme Programming)

    这可能是敏捷方法中最有成效的方法,它是一种轻量级、高效、低风险、柔性、可预测、科学的软件开发方式。由价值观、原则、实践与行为4个部分组成,彼此相互依赖、关联。并贯穿于整个软件生存周期。

    • 4大价值观:沟通、简单性、反馈、勇气
    • 5个原则:快速反馈、简单性假设、逐步修改、提倡更改、优质工作
    • 12个最佳实践:计划游戏、小型发布、隐喻、简单设计、测试先行、重构、结对编程、集体代码所有制、持续集成、每周工作40小时、现场客户、编码标准
  2. 并列争球法(Scrum)

    用迭代方法,每30天一次的迭代称为冲刺,并按需求优先级别实现产品。多个自治的小组并行递增地实现产品,通过简短的日常会议来协调。就像橄榄球中的并列争球。

  3. 自适应软件开发(ASD, Adaptive Software Development)

    这种方法采用6个基本原则:

    • 有一个使命做指导
    • 特征被视为客户价值的关键点
    • 过程中等待很重要,重做与做一样关键
    • 变化不视为变更,而是视为对开发中实际情况的调整
    • 确定的交付时间,迫使考虑每个版本的关键需求
    • 风险
  4. 敏捷统一过程(AUP, Agile Unified Process)

    采用在大规模上连续、小规模上迭代的原理来构建系统。采用经典的UP阶段性活动,使团队为软件项目构想出一个全面的过程流。在每个活动中的迭代使用敏捷,并将有意义的软件增量尽可能的快速交付给用户。每个AUP执行下列活动:

    • 建模
    • 实现
    • 测试
    • 部署
    • 配置及项目管理
    • 环境管理

文中部分图片来自《软件工程》第4版 张海藩、吕云翔著 人民邮电出版社 2013年

七种常见软件开发模型
孤独的探识者的博客
10-25 1万+
七种常用的软件开发模型
软件过程模型
12-17
软件开发一个复杂的活动,它包含了需求调研、系统设计、开发、部署、维护等活动。 而且现有规范和流程目的并不是让你去完成文档,而是通过这些文档让软件的质量更能得到保证。组成软件开发和系统演化的活动有着各种模型(软件生存周期,软件开发模型软件过程),但是典型地都包含了以下的过程或活动:分析、设计、实现、确认( 测试验收)、产品化、维护。
软件工程软件过程模型
热门推荐
hzqing的博客
09-05 2万+
软件过程模型 软件过程模型习惯上也称为软件开发模型,它是软件开发全部过程、活动和任务的结构框架。 瀑布模型: 瀑布模型是将软件生存周期中的各个活动规定为依线性连接的若干阶段的模型,包括需求分析、设计、编码、测试、运行与维护。由前至后、相互衔接的固定次序,如同瀑布流水逐级下落。 瀑布模型是以文档作为驱动、适合于软件需求很明确的软件项目的模型。V模型 V模型是瀑布模型的一个变体。V模型提供了
软件工程过程模型
weixin_34128501的博客
08-19 352
如同任何事物都有一个发生、发展、成熟,直至衰亡的全过程一样,软件系统或软件产品 也有一个定义、开发、运行维护,直至被淘汰这样的全过程,我们把软件将要经历的这个全过 程称为软件的生命周期。 为了使软件生命周期中的各项任务能够有序地按照规程进行,需要一定的工作模型对各项 任务给以规程约束,这样的工作模型被称为软件过程模型,或软件生命周期模型。它是一个有 关项...
软件开发过程模型概述
asqt68151的博客
09-25 325
一、什么是软件开发过程模型软件开发模型是指软件开发全部过程、活动和任务的结构框架。软件开发包括需求、设计、编码和测试等阶段,有时也包括维护阶段。主要规定了软件开发过程中需要完成的活动和任务,是开发软件项目的基础。 二、为什么要使用软件开发过程模型? 我们知道,软件开发从来就不是一个人的事情,通常是一个团队的事情(除非你非常大神,或者整个公司就你一个人)。而1...
软件工程 软件工程概述
08-11
软件的概念及特点,软件的分类,软件危机的表现与原因,软件...软件工程的概念,软件工程研究的内容,软件工程目标和原则;软件工程的发展,软件工程知识体系;软件生命周期中各阶段的基本任务。软件生存周期各种模型
软件工程概述
11-15
1.0 计算机基础 1.1 软件的概念 1.2 软件危机 1.3 软件工程 1.4 软件生命周期 1.5 软件开发过程模型 1.6 软件开发方法简述
软件工程概述.docx
07-16
主要是对软件工程所包含的知识体系和一些常用的开发模型进行一个概述和分析,也包含了一些自己的学习心得体会和一些在实际运用方面的看法
软件工程概述思维导图.html
03-28
软件工程概述的思维导图,包含了软件危机、软件工程软件生命周期、软件模型及敏捷开发等知识。是HTML格式文档,具有伸缩性能,可以用于学习、教学及复习、总结。
软件工程经典教程之[1]软件工程概述PPT
10-13
1.0 计算机基础 1.1 软件的概念 1.2 软件危机 1.3 软件工程 1.4 软件生命周期 1.5 软件开发过程模型 1.6 软件开发方法简述
软件工程-过程模型
weixin_34198797的博客
03-22 1624
软件过程的概念 软件过程是一个为创建高质量软件所需要完成的活动,动作和任务的框架。 1.惯用过程模型 惯用过程模型力求达到软件开发的结构和只需,其活动和任务都是按照过程的特定指引顺序进行的。 1.1 瀑布模型 瀑布模型又称为经典生命周期,它提出了一个系统的,顺序的软件开发方法,从用户需求规格说明开始,通过策划,建模,构建和部署的过程,最终提供完整的软件支持。 瀑布模型的一个变体称为V模型。V模型...
软件工程】第1章软件工程概论之软件过程模型
壹小崔的博客
06-19 1651
软件过程模型软件过程模型•    软件过程模型软件开发全部过程、活动和任务的结构框架•    也称软件开发模型  或软件生存周期模型•    软件过程模型•    典型的软件过程模型有:–  瀑布模型(waterfall model)–  演化模型(evolutionary model)–  增量模型(incremental model)–  原型模型(prototyping model)–  ...
软件的开发模型概述
zcgmove的博客
10-07 413
软件的开发模型有很多种,瀑布模型,原型模型,螺旋模型,快速模型等等。但纵观其中的本质,都离不开瀑布模型,有的只是分阶段实施,阶段中间实质也是采用瀑布模型的开发模式,有的模型可以理解为简略化的瀑布开发模型,比如简化设计流程,强化测试流程等。中国古语说的好,万变不离其宗,瀑布模型就是软件开发模型的宗,只要掌握了这个宗,其他的开发模式就可以灵活运用。下面我们就对瀑布模型进行详细阐述。     软件工程
软件工程 -- 开发模型
KanG
11-04 2491
瀑布模式 特点: 阶段间具有顺序性和依赖性: 前一阶段完成后,才能开始后一阶段前一阶段的输出文本为后一阶段的输入文本 推迟实现的观点质量保证: 每个阶段必须交付出合格的文档对文档进行审核 缺点: 开始需要把需求做到最全惧怕用户测试中的反馈,惧怕需求变更mux   螺旋模型 限制条件: 适应于内部的大规模软件开发:螺旋模型强调风险分析,许多客户都
伪码农的日志_12.2_软件工程过程模型
jason9313的博客
12-02 669
今天是周六,多了几分安逸,但作业的压迫还是让我没有停下学习的脚步(无奈脸)。今天想分享的学习内容和课程有关,主要是一些关于软件工程的基础理论,码农可能不会感兴趣,但我认为对于一个立志深耕软件行业的从业者来说,除了有基本的coding能力是远远不够的,你需要有一个全方位立体的项目管理知识储备,这对于未来的转型甚至是转行都是有一定帮助的。废话不多说,马上进入正题。 以下内容为转载略有修改,原文地
软件工程流程
wnjok的专栏
11-10 148
1、问题定义____________________________________________________________   “要解决的问题是什么?”。关于问题性质、工程目标和规模的书面报告,讨论出一份双方都满意的文档。 问题定义阶段必须回答的关键问题:“要解决的问题是什么?”如果不知道问题是什么就试图解决这个问题,显然是盲目的,只会白白浪费时间和金钱,最终得出的结果很...
软件工程详细设计说明书模板
最新发布
04-03
1. 引言 本文档是软件工程详细设计说明书,其目的是为开发人员提供开发方案的详细设计说明。本文档包括以下内容: - 系统概述:描述系统的功能和性能需求。 - 系统架构:介绍系统的结构和组织。 - 模块设计:详细设计各个模块的功能和实现。 - 数据库设计:描述系统的数据模型和数据表设计。 - 界面设计:介绍系统的用户界面设计。 - 系统测试:列出系统测试计划和测试用例。 - 系统部署:描述系统的部署和安装过程。 2. 系统概述 本系统是一款xxx软件,主要功能包括xxx、xxx、xxx等。系统的性能需求如下: - 响应时间:用户请求的响应时间应该在x秒之内。 - 并发量:系统能够同时处理x个用户请求。 - 可靠性:系统应该具有高可靠性,即在出现故障时能够快速恢复。 3. 系统架构 本系统采用分层架构,包括以下层次: - 用户界面层:提供用户界面,包括登录、注册、查询、修改等功能。 - 业务逻辑层:处理用户请求,包括数据处理、业务逻辑处理等。 - 数据访问层:负责与数据库交互,包括数据的增、删、改、查等操作。 - 数据库层:存储系统数据。 4. 模块设计 4.1 模块1 模块1的功能是xxx,主要包括xxx、xxx、xxx等。模块1的详细设计如下: - 模块输入:对于输入数据的格式、范围和有效性进行了详细说明。 - 模块输出:对于输出数据的格式、范围和有效性进行了详细说明。 - 模块处理:对于模块的处理过程进行了详细说明。 - 模块接口:对于模块之间的接口进行了详细说明。 4.2 模块2 模块2的功能是xxx,主要包括xxx、xxx、xxx等。模块2的详细设计如下: - 模块输入:对于输入数据的格式、范围和有效性进行了详细说明。 - 模块输出:对于输出数据的格式、范围和有效性进行了详细说明。 - 模块处理:对于模块的处理过程进行了详细说明。 - 模块接口:对于模块之间的接口进行了详细说明。 5. 数据库设计 本系统采用关系型数据库,主要包括以下数据表: - 表1:xxx表,包括xxx、xxx、xxx等字段。 - 表2:xxx表,包括xxx、xxx、xxx等字段。 - 表3:xxx表,包括xxx、xxx、xxx等字段。 每个数据表包括主键、外键、索引等约束条件,保证数据的完整性和一致性。 6. 界面设计 本系统的用户界面采用xxx技术实现,包括以下界面: - 登录界面:用户登录系统。 - 注册界面:用户注册系统。 - 查询界面:用户查询系统相关信息。 - 修改界面:用户修改系统相关信息。 7. 系统测试 本系统的测试分为功能测试、性能测试和安全测试。具体测试计划和测试用例见附录。 8. 系统部署 本系统的部署和安装过程见附录。 附录:系统测试计划和测试用例、系统部署和安装过程

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • IPv4协议及其地址格式 20998
  • 以太网帧格式 18631
  • 软件工程 软件质量模型(ISO/IEC 9126) 9051
  • 软件工程 系统测试概述 8987
  • 数据通信系统的性能指标 8496

分类专栏

  • Android 8篇
  • Linux 3篇
  • 杂项 1篇
  • Ubuntu 1篇
  • QT 1篇
  • Documentation 2篇
  • C# 8篇
  • C++ 4篇
  • 数据结构及算法 11篇
  • 计算机网络 21篇
  • 计算机公共知识 14篇
  • 编译原理 3篇
  • 操作系统 7篇
  • 软件工程 6篇
  • OJ题解 1篇

最新评论

  • Android7.x 通过Recovery保留特定文件实现恢复出厂设置后保留系统语言设置

    遗世独立的幻想乡: 请问下单编recovery要push到什么路径下呀?

  • 反编译定制安卓默认使用24H格式显示时间

    GarfieldGCat: 要用没使用过的id呢,资源ID是必须唯一的,TV版的SDK没看过哦。

  • 反编译定制安卓默认使用24H格式显示时间

    佐狙: 在string.xml,public.xml添加内容编译失败,id是唯一的表情包 TV版没有找到DatabaseHelper.java

  • 反编译定制安卓默认使用24H格式显示时间

    GarfieldGCat: 大部分系统级的应用签名还是需要用回原系统签名的

  • 反编译定制安卓默认使用24H格式显示时间

    qiaoliangih: 您好,全网只有您反编译SettingsProvider,我想咨询一下,反编译后的签名有要求么?是系统签名还是自定义签名就好?

您愿意向朋友推荐“博客详情页”吗?

  • 强烈不推荐
  • 不推荐
  • 一般般
  • 推荐
  • 强烈推荐
提交

最新文章

  • Android7.x 通过Recovery保留特定文件实现恢复出厂设置后保留系统语言设置
  • Android8 Launcher3 桌面应用行列数修改
  • Captura 安装配置与使用简介
2022年1篇
2021年7篇
2020年4篇
2019年40篇
2018年29篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

PHP网站源码广州seo网站优化多少钱漳州至尊标王报价绵阳网站开发报价天门建网站公司黑河关键词按天收费推荐吉林企业网站改版公司西安网站制作多少钱大同网站搭建哪家好绵阳seo优化推荐盘锦网站改版推荐阳江网站推广推荐来宾百度网站优化多少钱达州百度竞价丽江SEO按天扣费哪家好十堰网络推广多少钱岳阳设计公司网站公司黄石企业网站设计推荐永湖网站搜索优化哪家好南宁企业网站建设价格陇南阿里店铺运营多少钱临夏百姓网标王多少钱长春网站seo优化杭州品牌网站设计海南网站关键词优化报价周口网络营销推荐漯河百度标王报价广元网络推广哪家好丽江企业网站改版公司昭通阿里店铺托管哪家好铁岭网站建设报价歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

PHP网站源码 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化