• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    社交化軟件開(kāi)發(fā)問(wèn)答中的交互過(guò)程研究

    2017-06-29 12:00:33趙文耘
    關(guān)鍵詞:回答者提問(wèn)者開(kāi)發(fā)者

    王 海 彭 鑫 于 涵 趙文耘

    (復(fù)旦大學(xué)軟件學(xué)院 上海 201203) (復(fù)旦大學(xué)上海市數(shù)據(jù)科學(xué)重點(diǎn)實(shí)驗(yàn)室 上海 201203)

    社交化軟件開(kāi)發(fā)問(wèn)答中的交互過(guò)程研究

    王 海 彭 鑫 于 涵 趙文耘

    (復(fù)旦大學(xué)軟件學(xué)院 上海 201203) (復(fù)旦大學(xué)上海市數(shù)據(jù)科學(xué)重點(diǎn)實(shí)驗(yàn)室 上海 201203)

    在軟件開(kāi)發(fā)在線問(wèn)答網(wǎng)站上,解決問(wèn)題的過(guò)程并非簡(jiǎn)單的一問(wèn)一答,而經(jīng)常包含著一個(gè)復(fù)雜的交互過(guò)程。深刻理解軟件開(kāi)發(fā)在線問(wèn)答網(wǎng)站的問(wèn)答特點(diǎn)及其交互過(guò)程,對(duì)于提高問(wèn)題和回答質(zhì)量、改進(jìn)交互效率以及開(kāi)發(fā)相關(guān)的自動(dòng)化輔助工具都有著重要的意義。從StackOverflow中問(wèn)題的目的和意圖、基本要素以及所包含的交互方式三個(gè)角度開(kāi)展研究,抽樣并分析1 001個(gè)問(wèn)題,總結(jié)出問(wèn)題的7種類型、8個(gè)要素和10類交互方式。根據(jù)研究結(jié)果,對(duì)軟件開(kāi)發(fā)在線問(wèn)答網(wǎng)站的使用者、開(kāi)發(fā)者以及輔助問(wèn)答工具的研究者提出了相應(yīng)的建議。

    軟件開(kāi)發(fā) 問(wèn)答 StackOverflow 社會(huì)學(xué)習(xí) 交互

    0 引 言

    現(xiàn)代軟件開(kāi)發(fā)所涉及的技術(shù)體系越來(lái)越復(fù)雜,軟件開(kāi)發(fā)人員經(jīng)常會(huì)碰到各種無(wú)法解決的技術(shù)問(wèn)題,需要通過(guò)各種方法進(jìn)行求助。隨著各種問(wèn)答網(wǎng)站的興起,軟件開(kāi)發(fā)人員也正越來(lái)越多地依賴于在線問(wèn)答而非個(gè)別請(qǐng)教的方式進(jìn)行軟件開(kāi)發(fā)問(wèn)題求助。除了基本的問(wèn)答功能外,這些網(wǎng)站還提供了諸如用戶積分、點(diǎn)贊、正確答案標(biāo)記等社交功能。

    軟件開(kāi)發(fā)在線問(wèn)答網(wǎng)站上的問(wèn)答過(guò)程并非簡(jiǎn)單的一問(wèn)一答,而是經(jīng)常包含復(fù)雜的交互式問(wèn)答過(guò)程。這是由多方面的原因引起的,例如:提問(wèn)者無(wú)法準(zhǔn)確表達(dá)自己的意思或遺漏重要的信息,需要進(jìn)一步補(bǔ)充和澄清;提問(wèn)者在已有回答基礎(chǔ)上繼續(xù)追問(wèn)其他相關(guān)的問(wèn)題;回答者需要提問(wèn)者確認(rèn)給出的解答或其他信息。很多問(wèn)題都是在問(wèn)答雙方(回答者可能不止一人)持續(xù)的交互過(guò)程中逐步得到澄清和解答的。因此,深刻理解軟件開(kāi)發(fā)在線問(wèn)答網(wǎng)站的交互過(guò)程對(duì)于提高問(wèn)題和回答質(zhì)量、改進(jìn)交互效率以及開(kāi)發(fā)相關(guān)的自動(dòng)化輔助工具都有著重要的意義。

    在目前的軟件開(kāi)發(fā)在線問(wèn)答網(wǎng)站中,StackOverflow(簡(jiǎn)稱SO)是最活躍、使用最廣泛的網(wǎng)站之一。SO的用戶可以通過(guò)直接搜索相關(guān)問(wèn)題解決自己在軟件開(kāi)發(fā)技術(shù)學(xué)習(xí)或開(kāi)發(fā)實(shí)踐中遇到的困難。如果無(wú)法找到相關(guān)的問(wèn)題或已有的回答不令人滿意,用戶可以提出新的問(wèn)題并等待其他用戶進(jìn)行解答。此外,用戶也可以回答其他人提出的問(wèn)題。已有的經(jīng)驗(yàn)研究結(jié)果表明,SO上有超過(guò)92%的問(wèn)題得到了解答,而這些問(wèn)題收到答案所需時(shí)間的中位數(shù)僅為11分鐘[1]。

    因此,本文以SO為例,對(duì)社交化軟件開(kāi)發(fā)問(wèn)答中的交互過(guò)程進(jìn)行了經(jīng)驗(yàn)研究。本文的研究圍繞以下3個(gè)方面的研究問(wèn)題RQ(Research Question)展開(kāi):

    RQ1:按照提問(wèn)的目的進(jìn)行區(qū)分,軟件開(kāi)發(fā)人員經(jīng)常會(huì)問(wèn)到哪些不同類型的軟件開(kāi)發(fā)問(wèn)題?

    RQ2:一個(gè)完整、清晰的軟件開(kāi)發(fā)問(wèn)題陳述應(yīng)當(dāng)包含哪些基本要素?

    RQ3:?jiǎn)柎痣p方經(jīng)常采取哪些交互行為和交互方式來(lái)進(jìn)行問(wèn)題澄清和回答?

    RQ1主要針對(duì)提問(wèn)者各種不同的提問(wèn)目的和意圖,例如尋求實(shí)現(xiàn)方法或出錯(cuò)解決方案等。問(wèn)題的意圖不清可能導(dǎo)致回答者以及其他用戶無(wú)法準(zhǔn)確理解問(wèn)題的含義。而RQ2則針對(duì)不同類型的問(wèn)題完整、準(zhǔn)確地描述所需的必要成分。例如,一個(gè)標(biāo)題為“連接數(shù)據(jù)庫(kù)時(shí)碰到困難了,該怎么解決”的問(wèn)題意圖可能是獲取連接數(shù)據(jù)庫(kù)的樣例代碼,那么提問(wèn)者應(yīng)該提供諸如數(shù)據(jù)庫(kù)、開(kāi)發(fā)語(yǔ)言之類的信息,而回答者則需要給出示例代碼。同樣標(biāo)題的問(wèn)題意圖也可以是連接數(shù)據(jù)庫(kù)代碼出錯(cuò)需要進(jìn)行排除,那么此時(shí)提問(wèn)者應(yīng)該提供諸如錯(cuò)誤日志這樣的信息,而回答者則需要提供解決建議并持續(xù)指導(dǎo)提問(wèn)者解決問(wèn)題。RQ3針對(duì)問(wèn)答雙方的整個(gè)交互過(guò)程,包括交互策略、澄清及確認(rèn)信息等,目的是理解在此過(guò)程中問(wèn)答雙方(回答者可能不止一人)如何相互溝通從而最終完成整個(gè)問(wèn)答過(guò)程。

    為了回答上述三個(gè)研究問(wèn)題,本文從SO數(shù)據(jù)集中隨機(jī)挑選了1 001個(gè)軟件開(kāi)發(fā)問(wèn)題作為樣本進(jìn)行研究并詳細(xì)分析了其中的每一個(gè)樣本。根據(jù)經(jīng)驗(yàn)研究結(jié)果,本文將常見(jiàn)的軟件開(kāi)發(fā)問(wèn)題進(jìn)行了分類,歸納了不同類型的問(wèn)題極其所需要的內(nèi)容要素,還對(duì)常見(jiàn)的問(wèn)答雙方交互方式進(jìn)行了分析。在此基礎(chǔ)上,本文根據(jù)經(jīng)驗(yàn)研究結(jié)果對(duì)社交化軟件開(kāi)發(fā)在線問(wèn)答網(wǎng)站的使用者、開(kāi)發(fā)者以及輔助問(wèn)答工具的研究者提出了相應(yīng)的建議。

    1 背景介紹

    StackOverflow(SO)是針對(duì)專業(yè)程序員的問(wèn)答網(wǎng)站,建立于2008年。由于完全免費(fèi)并且開(kāi)放注冊(cè),在之后的幾年內(nèi)SO得以快速發(fā)展。

    在SO上,問(wèn)題和答案都是由用戶發(fā)出。然而和其他論壇不同的是,SO并不鼓勵(lì)討論,用戶發(fā)布內(nèi)容的唯一目的就是獲得答案。因此SO的頁(yè)面都是針對(duì)解決具體技術(shù)問(wèn)題而設(shè)計(jì)的。注冊(cè)用戶可以在網(wǎng)頁(yè)上提出或者回答問(wèn)題。為了更清晰地描述問(wèn)題或者給出答案,用戶還可以修改其他用戶發(fā)出的問(wèn)題或者答案。

    在SO上,一個(gè)問(wèn)題包含標(biāo)題、正文、評(píng)分、評(píng)論以及標(biāo)簽5個(gè)部分。用戶可以給一個(gè)問(wèn)題投贊成票或者反對(duì)票,贊成票和反對(duì)票的差值就是問(wèn)題評(píng)分。問(wèn)題標(biāo)簽用于刻畫(huà)問(wèn)題的領(lǐng)域或話題,一般由用戶提供,主要目的是幫助用戶更方便地找到感興趣的問(wèn)題。

    SO上的一個(gè)問(wèn)題可以有多個(gè)答案,每個(gè)答案都包括答案正文、答案評(píng)分和答案評(píng)論3個(gè)部分。和問(wèn)題類似,答案也可以被投贊成票和反對(duì)票,兩者的差值就是答案評(píng)分。默認(rèn)情況下,答案將根據(jù)評(píng)分由高到低顯示。此外,提問(wèn)者可以把一個(gè)答案標(biāo)記成“已接受”。接受一個(gè)答案并不是必須的,但無(wú)論采用什么排序方式,只要存在已接受的答案,這個(gè)答案就會(huì)被排列在最前面。

    用戶可以通過(guò)問(wèn)題和答案的評(píng)論與其他人進(jìn)行交流。這些評(píng)論通常被用來(lái)澄清問(wèn)題或答案。每一條評(píng)論也都有一個(gè)評(píng)分以衡量其有用程度。與問(wèn)題和答案不同的是,評(píng)論只可以被贊成而不能反對(duì)。

    除了上面這些主要要素外,SO還有名聲和徽章系統(tǒng)。用戶可以在帖子被贊成時(shí)獲得名聲。高名聲可以為用戶帶來(lái)諸如使用高級(jí)工具等權(quán)限。名聲和徽章系統(tǒng)鼓勵(lì)了用戶積極參與,提供高質(zhì)量的問(wèn)題和答案,以此提升整個(gè)網(wǎng)站的問(wèn)題質(zhì)量。

    截至2016年2月2日,SO已經(jīng)擁有大約1 100萬(wàn)個(gè)問(wèn)題,1 800萬(wàn)個(gè)回答,4 500萬(wàn)條評(píng)論以及4萬(wàn)多個(gè)標(biāo)簽。此外,SO目前擁有大約510萬(wàn)用戶,平均每天被訪問(wèn)820萬(wàn)次并有8千多個(gè)新問(wèn)題被提出。

    2 研究過(guò)程

    2.1 概 覽

    本文的研究包含三個(gè)步驟。第一步是數(shù)據(jù)準(zhǔn)備,統(tǒng)計(jì)了數(shù)據(jù)集的一些基本情況。第二步是前導(dǎo)研究,本文的第一和第三作者在SO上隨機(jī)挑選了100個(gè)問(wèn)題進(jìn)行閱讀和分析。根據(jù)這100個(gè)問(wèn)題,總結(jié)出了3個(gè)分析角度并設(shè)計(jì)了一個(gè)問(wèn)卷用以收集數(shù)據(jù)。最后一步是深入分析,對(duì)通過(guò)隨機(jī)分層抽樣得到的1 001個(gè)問(wèn)題進(jìn)行細(xì)致分析。一共有10名研究生參與到最后一步中。他們被邀請(qǐng)閱讀這些問(wèn)題并完成調(diào)查問(wèn)卷已收集數(shù)據(jù)。通過(guò)分析收集到的數(shù)據(jù),得以回答三個(gè)研究問(wèn)題。

    2.2 數(shù)據(jù)準(zhǔn)備

    本文使用的數(shù)據(jù)來(lái)自StackExchange官方發(fā)布的公開(kāi)數(shù)據(jù)集。這類數(shù)據(jù)由StackExchange每2到3個(gè)月發(fā)布一次。本文所使用的數(shù)據(jù)集發(fā)布于2013年9月,下文將這個(gè)包含所有問(wèn)題的數(shù)據(jù)集稱為全集。

    在全集中,一共有來(lái)自2 332 403個(gè)用戶的5 648 975個(gè)問(wèn)題和10 284 554個(gè)答案,平均每個(gè)問(wèn)題1.82個(gè)答案。在全集中, 90.0%的問(wèn)題擁有答案。在這些擁有答案的問(wèn)題中,有“已接受”答案的問(wèn)題比例是66.7%。這個(gè)比例并不是很高,這是因?yàn)榻邮芤粋€(gè)答案并不是必須的。

    本文還統(tǒng)計(jì)了問(wèn)題和答案的評(píng)分?jǐn)?shù)據(jù)。所有問(wèn)題的平均評(píng)分是1.59,標(biāo)準(zhǔn)差是9.46。所有答案的平均評(píng)分是2.07,標(biāo)準(zhǔn)差是10.1。圖1(a)和圖1(b)展示了全集中問(wèn)題和答案的評(píng)分分布。所有擁有“已接受”答案的問(wèn)題的平均評(píng)分是2.07,而所有“已接受”的答案的平均評(píng)分是3.31。

    除了問(wèn)題和答案,本文還統(tǒng)計(jì)了評(píng)論相關(guān)的數(shù)據(jù)。問(wèn)題評(píng)論一共有8 726 252條,平均每個(gè)問(wèn)題3.04條評(píng)論;答案評(píng)論一共有13 937 529條,平均每個(gè)答案2.7條。上述所有數(shù)據(jù)如表1所示。

    本文的研究需要分析SO上問(wèn)答過(guò)程中的交互行為。由于交互行為無(wú)法通過(guò)自動(dòng)化的手段進(jìn)行分析,本文選擇人工對(duì)這些問(wèn)答進(jìn)行閱讀和分析。因此,作為分析對(duì)象被選取的問(wèn)答不能超出研究者的知識(shí)范圍。由于本研究中所有參與者都擁有超過(guò)三年的Java開(kāi)發(fā)經(jīng)驗(yàn),研究對(duì)象被限制在所有被標(biāo)記了Java標(biāo)簽的問(wèn)題中。下文將這個(gè)被選取的數(shù)據(jù)集稱為樣本集。樣本集中的各項(xiàng)統(tǒng)計(jì)量如圖1和表1所示。

    圖1 問(wèn)題和答案評(píng)分分布圖

    2.3 前導(dǎo)研究

    前導(dǎo)研究的目的是找出本文需要收集哪些數(shù)據(jù)以回答三個(gè)研究問(wèn)題。首先,本文的第一和第三作者通過(guò)人工閱讀并討論的方式對(duì)SO上的問(wèn)題進(jìn)行了研究。在討論之后,總結(jié)出需要關(guān)注的三個(gè)方面:?jiǎn)栴}類型、問(wèn)題要素以及交互行為。第三節(jié)將對(duì)這三個(gè)方面進(jìn)行介紹。

    表1 全集和樣本集的統(tǒng)計(jì)數(shù)據(jù)

    問(wèn)題的內(nèi)容和形式是由用戶以自然語(yǔ)言的方式給出的,無(wú)法通過(guò)自動(dòng)化的方式從中收集數(shù)據(jù)。因此在之后的深入分析中,10名研究生將被邀請(qǐng)輔助進(jìn)行數(shù)據(jù)收集工作。然而,由于沒(méi)有參與之前的討論,他們很難準(zhǔn)確地分析問(wèn)答并從中收集數(shù)據(jù)。為了幫助他們更準(zhǔn)確地收集數(shù)據(jù),本文設(shè)計(jì)了一個(gè)問(wèn)卷。在設(shè)計(jì)完問(wèn)卷之后,一位博士生和一位研究生被邀請(qǐng)來(lái)幫助改進(jìn)問(wèn)卷。該博士生擁有豐富的研究經(jīng)驗(yàn),而碩士生則擁有豐富的SO使用經(jīng)驗(yàn)。20個(gè)隨機(jī)抽取的SO上的問(wèn)題被分配給兩人分別獨(dú)自閱讀。閱讀后他們?yōu)槊總€(gè)問(wèn)題完成一份問(wèn)卷。通過(guò)對(duì)比兩組問(wèn)卷的結(jié)果并與兩位進(jìn)行討論,對(duì)調(diào)查問(wèn)卷進(jìn)行了調(diào)整。

    最終的問(wèn)卷包含五個(gè)部分。第一部分是用來(lái)收集問(wèn)題的基本信息,包括問(wèn)題的編號(hào)和問(wèn)題標(biāo)題。其他一些基本信息可以從數(shù)據(jù)集中自動(dòng)抽取,因此不需要被包含在問(wèn)卷中。問(wèn)卷的第二部分是和問(wèn)題類型相關(guān)的。這部分是一個(gè)多項(xiàng)選擇題,問(wèn)卷提供了在之前的討論中發(fā)現(xiàn)并總結(jié)出的問(wèn)題類型供選擇。如果填寫(xiě)者覺(jué)得閱讀的問(wèn)題并不屬于已經(jīng)提供的任何類型,他也可以選擇“其他”并填寫(xiě)一個(gè)新的類型。由于一個(gè)問(wèn)題有可能關(guān)注多個(gè)點(diǎn),因此問(wèn)題類型是多選的。問(wèn)卷的第三部分是關(guān)于問(wèn)題要素的。填寫(xiě)者可以從問(wèn)卷提供的候選項(xiàng)中選擇任意多個(gè)他們認(rèn)為問(wèn)題中包含的要素或通過(guò)選擇“其他”來(lái)提供其他要素。問(wèn)卷的第四部分是關(guān)于交互行為的,問(wèn)卷也提供了一些候選項(xiàng)。和問(wèn)題類型、問(wèn)題要素一樣,問(wèn)卷也為交互行為提供了“其他”選項(xiàng)。問(wèn)卷的最后部分是一個(gè)可選內(nèi)容。填寫(xiě)者可以在這部分填寫(xiě)任何他認(rèn)為值得注意的內(nèi)容。

    2.4 深入分析

    在收集數(shù)據(jù)之前,本文采用分層采樣的方法選取了樣本。這個(gè)分層采樣遵循以下規(guī)則:

    ? 采樣的全集是樣本集。

    ? 采樣過(guò)程是一個(gè)根據(jù)問(wèn)題評(píng)分的按比例分層采樣。

    ? 每層的抽樣都是隨機(jī)抽樣過(guò)程。

    根據(jù)以上規(guī)則,本文一共抽樣選取了1 001個(gè)問(wèn)題。每個(gè)評(píng)分區(qū)間的問(wèn)題數(shù)量如表2所示。

    表2 各個(gè)評(píng)分區(qū)間的問(wèn)題數(shù)量

    這1 001個(gè)問(wèn)題被分成10組,其中9組100個(gè),1組101個(gè)。這10組問(wèn)題被隨機(jī)分配給10名研究生并要求他們針對(duì)每個(gè)問(wèn)題填寫(xiě)一份在前導(dǎo)研究中設(shè)計(jì)的問(wèn)卷。在他們完成所有問(wèn)題的分析后,第一和第三作者人工檢查了所有“其他”選項(xiàng)和最后一部分可選內(nèi)容。對(duì)其中有異議的部分與問(wèn)卷填寫(xiě)者進(jìn)行了討論,達(dá)成一致意見(jiàn)后計(jì)入統(tǒng)計(jì)數(shù)據(jù)。

    3 研究結(jié)果

    本節(jié)將以定量和定性分析的方式呈現(xiàn)本文的研究結(jié)果,以回答三個(gè)研究問(wèn)題。

    3.1 問(wèn)題類型

    通過(guò)分析數(shù)據(jù),發(fā)現(xiàn)SO上的大部分問(wèn)題都可以和圖2所示的常見(jiàn)困難解決流程中某一個(gè)階段聯(lián)系起來(lái)。為了解決實(shí)現(xiàn)某個(gè)特定功能的問(wèn)題,開(kāi)發(fā)者需要先分析問(wèn)題的可行性分析(Feasibility Analysis),比如是否可以在特定環(huán)境或者通過(guò)特定途徑解決這個(gè)問(wèn)題。一旦確認(rèn)了問(wèn)題的可行性分析,開(kāi)發(fā)者就會(huì)開(kāi)始解決方案規(guī)劃(Solution Planning),這包括解決方法和需要使用的工具以及其他可能遇到技術(shù)問(wèn)題。然后開(kāi)發(fā)者會(huì)開(kāi)始實(shí)現(xiàn)規(guī)劃好的解決方案(Implementation)。實(shí)現(xiàn)完成后,如果發(fā)現(xiàn)了錯(cuò)誤,開(kāi)發(fā)者需要糾正這些錯(cuò)誤(Correction)。另一方面,開(kāi)發(fā)者需要對(duì)實(shí)現(xiàn)結(jié)果進(jìn)行評(píng)估(Evaluation)。如果他覺(jué)得目前的實(shí)現(xiàn)還不完善的話,他還會(huì)對(duì)其進(jìn)行計(jì)劃改進(jìn)(Improvement)并開(kāi)始新一輪的實(shí)現(xiàn)過(guò)程。

    圖2 常見(jiàn)的困難解決流程

    除了跟上述的六個(gè)解決困難的階段相關(guān)的問(wèn)題外,還有一類問(wèn)題是針對(duì)通用知識(shí)而非特定困難的。綜上,SO的大部分問(wèn)題都可以被歸類到以下七種類型中去。

    (1) 可行性分析

    開(kāi)發(fā)者會(huì)在可行性分析階段提出這類問(wèn)題,其目的是詢問(wèn)在特定環(huán)境下或者使用某種特定技術(shù)達(dá)到某種目標(biāo)的可行性。例如,在編號(hào)為17825860的問(wèn)題“How to read properties file from one project into another project?”中,開(kāi)發(fā)者詢問(wèn)是否可以從其他項(xiàng)目中讀取配置文件。

    (2) 解決方案規(guī)劃

    開(kāi)發(fā)者在解決方案規(guī)劃時(shí)提出此類問(wèn)題,其目的是了解應(yīng)用某個(gè)特定技術(shù)的最佳實(shí)踐或者尋求解決手頭問(wèn)題的工具。例如,在編號(hào)為9973066的問(wèn)題“Best Practices: JSON for data exchange for RESTful web services using Apache CXF”中,開(kāi)發(fā)者詢問(wèn)在新的場(chǎng)景中擴(kuò)展POJOs的JSON的最佳使用方法。

    (3) 實(shí)現(xiàn)

    開(kāi)發(fā)者在實(shí)施解決方案中遇到困難時(shí)會(huì)詢問(wèn)此類問(wèn)題。例如,在編號(hào)8908313的問(wèn)題“Writing correct JFrames for all Window Manager”中,開(kāi)發(fā)者詢問(wèn)為了適應(yīng)不同大小的屏幕和不同的分辨率,應(yīng)該如何設(shè)置JFrame窗口的大小。

    (4) 糾錯(cuò)

    開(kāi)發(fā)者在錯(cuò)誤分析或者糾正錯(cuò)誤和異常的時(shí)候會(huì)詢問(wèn)此類問(wèn)題。例如,在編號(hào)1305307的問(wèn)題“The activator for bundle is invalid”中,開(kāi)發(fā)者請(qǐng)求分析在開(kāi)發(fā)Eclipse插件時(shí)遇到非法的bundle activator的原因極其解決方案。

    (5) 評(píng)估

    開(kāi)發(fā)者在評(píng)估解決方案時(shí)為了得到其他人對(duì)于已經(jīng)實(shí)施的方案效用的反饋而詢問(wèn)此類問(wèn)題。例如,在編號(hào)為1584915的問(wèn)題“Java: Expected overhead of the RMI protocol”中,開(kāi)發(fā)者詢問(wèn)兩個(gè)RMI服務(wù)器之間850~1 100毫秒的傳輸時(shí)間是否正常。

    (6) 改進(jìn)

    開(kāi)發(fā)者為了得到對(duì)已有方案的改進(jìn)建議而提出此類問(wèn)題。例如,在編號(hào)為9738210的問(wèn)題“Java: Thread pool with many blocked tasks”中,開(kāi)發(fā)者詢問(wèn)為了減少內(nèi)存開(kāi)銷,對(duì)于他已有的線程池的實(shí)現(xiàn)有什么可能的改進(jìn)方案。

    (7) 通用知識(shí)

    開(kāi)發(fā)者為了了解一些軟件開(kāi)發(fā)時(shí)的通用知識(shí)而提出此類問(wèn)題。例如,在編號(hào)215497的問(wèn)題“In Java, what’s the difference between public, default, protected, and private?”中,開(kāi)發(fā)者詢問(wèn)在創(chuàng)建類和接口以及處理繼承關(guān)系時(shí)該如何使用這些修飾符。

    在深入分析階段,樣本中的大部分問(wèn)題都被歸類到上述一個(gè)或多個(gè)類型中。但是,還有30個(gè)問(wèn)題被標(biāo)記為“其他”。在人工查閱這些問(wèn)題后,發(fā)現(xiàn)每一個(gè)問(wèn)題都是可以被歸類到上述的7個(gè)類型中去的。例如,編號(hào)為2655239的問(wèn)題“Does C# have the same issues like Java with equals and getHashCode()?”一開(kāi)始被歸類為“其他”,經(jīng)過(guò)討論,本文認(rèn)為這是一個(gè)關(guān)于C#的通用知識(shí)的問(wèn)題,因此將其重新歸類為通用知識(shí)。

    圖3展示了在樣本中所有問(wèn)題的類型分布,同一個(gè)問(wèn)題可能由于有多個(gè)關(guān)注點(diǎn)而屬于多個(gè)類型。例如,開(kāi)發(fā)者可以在對(duì)某個(gè)實(shí)現(xiàn)的表現(xiàn)征求反饋的同時(shí)詢問(wèn)可能的提升方法。從分布中可以看出,實(shí)現(xiàn)類的問(wèn)題是最多的,占到了樣本的42.5%;其次是糾錯(cuò)類,占30.2%。其他幾類問(wèn)題的占比分別是可行性分析14.9%,解決方案規(guī)劃6.4%,評(píng)估3.3%,改進(jìn)5.1%以及通用知識(shí)6.6%。

    圖3 問(wèn)題類型分布

    3.2 問(wèn)題要素

    問(wèn)題要素是問(wèn)題的基本成分,他們是提問(wèn)者為了表達(dá)和澄清他的問(wèn)題而提供的內(nèi)容。問(wèn)題要素是回答者理解問(wèn)題所必要的信息。

    在前導(dǎo)研究和深入分析中一共辨識(shí)出了8種要素。這些要素之間的關(guān)系如圖4所示。

    (1) 當(dāng)前方案(Current Solution)

    這是對(duì)于當(dāng)前面對(duì)的問(wèn)題的已實(shí)現(xiàn)的方案。提問(wèn)者可以介紹其設(shè)想、設(shè)計(jì)、算法或者在解決方案中使用的方法。

    圖4 問(wèn)題要素及其關(guān)系

    (2) 場(chǎng)景(Scenario)

    這是問(wèn)題產(chǎn)生的場(chǎng)景。它可以是由當(dāng)前方案招致的真實(shí)場(chǎng)景,也可以是在可行性分析或解決方案規(guī)劃時(shí)所設(shè)想的場(chǎng)景。

    (3) 錯(cuò)誤(Error)

    這是在場(chǎng)景中報(bào)告出的錯(cuò)誤或者異常。

    (4) 輸出(Output)

    這是在場(chǎng)景產(chǎn)生的輸出內(nèi)容。

    (5) 環(huán)境(Environment)

    這是場(chǎng)景發(fā)生的環(huán)境,比如操作系統(tǒng)、網(wǎng)絡(luò)條件等。

    (6) 期望(Expectation)

    這是提問(wèn)者所期望的效果或者條件。例如,提問(wèn)者可以表達(dá)他對(duì)于解決方案的響應(yīng)時(shí)間或者承載能力的期望,也可是在解決方案中使用的技術(shù)的局限。

    (7) 可能方案(Possible Solution)

    這是提問(wèn)者提議的解決方案,目的是啟發(fā)回答者。例如,提問(wèn)者可以提議一個(gè)可能方案以期其可行性或效率。

    (8) 代碼(Code)

    這是表明在當(dāng)前方案或可能方案而給出的代碼片段。例如,提問(wèn)者可以提供他當(dāng)前實(shí)現(xiàn)中的代碼片段以幫助回答者分析他的錯(cuò)誤信息。

    在SO中,這些要素可以用不同的方式去描述。例如,除了文本描述、期望、當(dāng)前方案、場(chǎng)景和可能方案還可以用具體例子去描述;而錯(cuò)誤、輸出和環(huán)境則可以使用引用外部技術(shù)文檔的形式去描述。除此之外,提問(wèn)者還可能在沒(méi)有顯式提供問(wèn)題要素的情況下提出問(wèn)題。例如,提問(wèn)者可以在沒(méi)提及相關(guān)場(chǎng)景的情況下描述一個(gè)錯(cuò)誤。在這種情況下,可以認(rèn)為場(chǎng)景已經(jīng)隱含在問(wèn)題之中了。

    不同類型的問(wèn)題要素分布如圖5所示。圖5(b)展示了樣本中含有不同要素的問(wèn)題比例。從中可以看出,大部分問(wèn)題都有場(chǎng)景描述(77.8%)和代碼(61.3%)。但不同類型問(wèn)題的要素分布卻不盡相同,如圖5(c)至圖5(i)所示。從圖5(i)中可以看出,通用知識(shí)類問(wèn)題中含有場(chǎng)景要素的問(wèn)題比例是最低的(54.5%)。這是因?yàn)橥ㄓ弥R(shí)類的問(wèn)題通常是在學(xué)習(xí)而不是工作過(guò)程中產(chǎn)生的,而學(xué)習(xí)過(guò)程常常會(huì)缺乏具體的場(chǎng)景。

    含有代碼要素的問(wèn)題比例在不同的類型中差別很大:代碼要素在可行性分析類和解決方案規(guī)劃類的問(wèn)題中比例遠(yuǎn)遠(yuǎn)低于其在總體中的比例,分別是34.9%和37.5%;實(shí)現(xiàn)類、評(píng)估類和通用知識(shí)類的問(wèn)題比例則和總體相當(dāng),分別是54.4%、66.7%和56.1%;而剩下的糾錯(cuò)和改進(jìn)類的問(wèn)題則普遍含有代碼要素,其比例分別是86.1%和70.6%。這種現(xiàn)象是由于可行性分析類和解決方案規(guī)劃類的問(wèn)題通常是在實(shí)現(xiàn)之前發(fā)生的,這個(gè)階段幾乎沒(méi)有代碼可以展示。但是圖2所示流程僅僅是個(gè)通用過(guò)程,事實(shí)上很多項(xiàng)目中不同的階段是同步進(jìn)行的。例如編號(hào)為17237287的問(wèn)題“how can I wait 10 second without locking UI in Android”中,作者已經(jīng)編寫(xiě)了一些代碼,但是對(duì)于代碼中的關(guān)鍵功能——在不鎖定UI的情況下等待10秒——是否可以實(shí)現(xiàn)感到疑惑。因此即使是可行性分析類和解決方案規(guī)劃類的問(wèn)題也擁有一定比例的代碼要素。

    解決方案規(guī)劃類和改進(jìn)類的問(wèn)題擁有更高的當(dāng)前方案要素比例,分別是23.4%和39.2%。而這個(gè)要素在總體中的比例僅為5.7%。這個(gè)現(xiàn)象對(duì)于改進(jìn)類問(wèn)題是很直觀的,改進(jìn)類問(wèn)題就是在當(dāng)前方案的基礎(chǔ)上尋求改進(jìn)方案。而對(duì)于解決方案規(guī)劃類的問(wèn)題,一般來(lái)說(shuō)提問(wèn)者已經(jīng)有一個(gè)設(shè)想的方案了,他所疑惑的只是整體方案中的某些點(diǎn)。因此,他們會(huì)給出他們的當(dāng)前解決方案以得到更合適的答案。

    圖5 不同類型問(wèn)題中的要素分布

    含有錯(cuò)誤要素的問(wèn)題比例在糾錯(cuò)類問(wèn)題中特別高,達(dá)到了54.6%(總體中僅為19.1%)。這個(gè)現(xiàn)象很好解釋,糾錯(cuò)類問(wèn)題需要提問(wèn)者說(shuō)清楚他所遇到的錯(cuò)誤,而直接提供錯(cuò)誤內(nèi)容是最容易、最直接的方式。

    3.3 交互行為

    當(dāng)用戶想要回答某個(gè)問(wèn)題的時(shí)候,常常會(huì)出現(xiàn)不能理解問(wèn)題的情況。這時(shí)候,他們會(huì)采取一些行動(dòng)試圖獲得足夠的信息以回答問(wèn)題。最常見(jiàn)的和提問(wèn)者的交互方式就是在問(wèn)題下面編寫(xiě)評(píng)論。而提問(wèn)者則通常會(huì)通過(guò)修改問(wèn)題本身或者回復(fù)更多的評(píng)論來(lái)回應(yīng)。和問(wèn)題一樣,如果答案中有什么不清楚的地方,類似的行為也會(huì)在答案的評(píng)論中發(fā)生。

    對(duì)于編程相關(guān)的問(wèn)題,本文發(fā)現(xiàn)了一些特定的交互行為:

    (1) 澄清意圖

    一個(gè)問(wèn)題的意圖不總是清晰明確的,此時(shí)回答者會(huì)請(qǐng)求提問(wèn)者對(duì)問(wèn)題的意圖進(jìn)行詳細(xì)解釋。除此以外,回答者也有可能給出兩個(gè)猜想詢問(wèn)是否是其中之一。例如,在編號(hào)為263348的問(wèn)題“Best Practice - Swing, Database Access”中,有人評(píng)論道“Are you asking … ? Or are you asking…?”。

    (2) 尋求要素

    對(duì)于回答者來(lái)說(shuō),如果問(wèn)題缺少了某些必要的成分將很難給出準(zhǔn)確的答案,因此他可能會(huì)直接請(qǐng)求給出某種問(wèn)題要素。

    (3) 澄清要素

    在某些問(wèn)題中,問(wèn)題要素存在但是描述得不夠清楚,從而造成回答者對(duì)于這些要素感到困惑。此時(shí)回答者會(huì)要求提問(wèn)者澄清這些要素。提問(wèn)者可以通過(guò)在代碼中添加注釋或者貼出異常定義等方式來(lái)進(jìn)行澄清。

    (4) 澄清術(shù)語(yǔ)

    有些問(wèn)題中提問(wèn)者使用的術(shù)語(yǔ)可能具有歧義,此時(shí)回答者會(huì)請(qǐng)求提問(wèn)者給出術(shù)語(yǔ)的準(zhǔn)確定義。

    (5) 提供參考

    回答者有時(shí)會(huì)提供一些參考資料給提問(wèn)者使其能更好地理解問(wèn)題。例如,在編號(hào)為10228682的問(wèn)題“how to change the location of a value in a list in a hashmap in Java”中,有用戶評(píng)論道“Maybe I didn’t get your question …, From the API document…”。在API文檔的幫助下,提問(wèn)者知道了他所面臨的問(wèn)題的基礎(chǔ)知識(shí)從而能提供更多有用的信息。

    (6) 改善表述

    問(wèn)題的表述方式對(duì)于某些要素(尤其是代碼)是很重要的。但是冗長(zhǎng)的文字描述和復(fù)雜的代碼會(huì)使得其他用戶很難抓住其中的關(guān)鍵信息。因此其他用戶會(huì)建議提問(wèn)者以更好的方式表達(dá)他的問(wèn)題,比如高亮關(guān)鍵語(yǔ)句或者省略不必要的代碼段。

    (7) 嘗試

    回答者會(huì)建議提問(wèn)者進(jìn)行一些嘗試后再給出反饋,從而使其能夠更好地理解問(wèn)題。

    (8) 解釋

    回答者有時(shí)會(huì)向提問(wèn)者解釋一些知識(shí)。此類行為常常在回答問(wèn)題的時(shí)候發(fā)生,以幫助提問(wèn)者理解答案。有時(shí)候在問(wèn)題中也能觀察到這種行為,此時(shí)其目的和提供參考類似。

    (9) 分步建議

    回答者給出分步建議并在每一步后得到反饋以幫助提問(wèn)者解決問(wèn)題。

    (10) 質(zhì)疑問(wèn)題

    在一些少見(jiàn)的情況下,其他用戶會(huì)認(rèn)為問(wèn)題本身是沒(méi)有意義的。此時(shí)他們會(huì)和提問(wèn)者在評(píng)論中對(duì)問(wèn)題進(jìn)行討論。例如,在編號(hào)為10799170的問(wèn)題(Making an SSL http for localhost)中,雖然問(wèn)題是想知道如何實(shí)現(xiàn)安全協(xié)議,但評(píng)論中有一條寫(xiě)著“… If its localhost web app, why does it need to be secure http?”來(lái)質(zhì)疑問(wèn)題本身是否有意義。

    圖6展示了含有這些交互行為的問(wèn)題比例以及在各個(gè)類型的問(wèn)題中各自的比例。從圖6(b)中可以看出,解釋是回答者最常采取的行為,在總體中占到34.5%。這個(gè)現(xiàn)象表明答案常常是不夠清楚的,專家需要對(duì)答案進(jìn)行額外的解釋以幫助提問(wèn)者理解答案并解決問(wèn)題。除了解釋以外,澄清意圖、尋求要素、提供參考和嘗試也是很常見(jiàn)的行為,其在總體中的比例分別是18.1%,21.9%,24.7%以及21.2%。前三類行為是用來(lái)完善問(wèn)題的。數(shù)據(jù)表明,超過(guò)五分之一的問(wèn)題被要求補(bǔ)充要素。澄清意圖和提供參考則是為了搞清問(wèn)題的意圖,其中前者是直接詢問(wèn)這個(gè)意圖,而后者則是用參考來(lái)啟發(fā)提問(wèn)者。在答案能夠直接通過(guò)參考資料給出的時(shí)候,提供參考也是一種在評(píng)論中直接回答問(wèn)題的方式,這也是為什么含有提供參考的問(wèn)題比例在通用知識(shí)類問(wèn)題中相對(duì)較高了,達(dá)到了28.8%。

    嘗試這種行為也是被用來(lái)獲取關(guān)于問(wèn)題更多信息的。有時(shí)候提問(wèn)者很難完整地描述他所遇到的問(wèn)題,甚至不知道如何提供更多的信息。此時(shí),專家需要指導(dǎo)提問(wèn)者進(jìn)行一些嘗試并貼出結(jié)果作為參考。然而通過(guò)評(píng)論施行此類行為非常低效。雖然從數(shù)據(jù)來(lái)看這類行為是比較重要的,但是目前SO并沒(méi)有一個(gè)很方便的功能來(lái)輔助這類行為。盡管嘗試這類行為被廣泛使用,在通用知識(shí)類的問(wèn)題中卻并不常見(jiàn),其比例僅為7.6%。這是因?yàn)橥ㄓ弥R(shí)類的問(wèn)題一般來(lái)說(shuō)缺乏實(shí)踐,比如一個(gè)詢問(wèn)Java變量訪問(wèn)策略的問(wèn)題不需要進(jìn)行嘗試。

    澄清術(shù)語(yǔ)和表達(dá)建議是被使用的最少的行為,其在總體中的比例為1.9%和3.6%。澄清術(shù)語(yǔ)是為了解釋一個(gè)術(shù)語(yǔ),但是在大多數(shù)情況下,問(wèn)題中的術(shù)語(yǔ)是足夠清楚的。即使術(shù)語(yǔ)本身有二義性,結(jié)合問(wèn)題的上下文,也能推斷出這個(gè)術(shù)語(yǔ)在問(wèn)題中的含義。表達(dá)建議是為了修飾問(wèn)題的表述方式,包括語(yǔ)言、排版等,常見(jiàn)的例子是要求提問(wèn)者修改代碼以突出其中的關(guān)鍵部分。此類行為能幫助專家更快找到問(wèn)題中的有效信息,但是即使問(wèn)題的表述不夠好,專家還是能夠根據(jù)已有的問(wèn)題給出合適的答案。因此,并不是所有表述不好問(wèn)題中都有表達(dá)建議類的行為發(fā)生。

    圖6 不同類型問(wèn)題中的交互行為分布

    除了行為分布,本文還分析了交互行為對(duì)于評(píng)分的影響情況。由于交互行為是由回答者引導(dǎo)以回答問(wèn)題的,本文僅分析了其對(duì)答案評(píng)分的影響。表3展示了每一類問(wèn)題中擁有不同交互行為的問(wèn)題的最佳答案(標(biāo)記為已接受的答案,如果沒(méi)有則為最高評(píng)分的答案)平均分的標(biāo)準(zhǔn)差。標(biāo)準(zhǔn)差越大意味著不同交互行為對(duì)答案產(chǎn)生的影響越大。從表中可以看出,評(píng)估和通用問(wèn)題的最佳答案得分標(biāo)準(zhǔn)差較大,也就是說(shuō)不同的交互行為對(duì)于這兩類問(wèn)題的影響較大,因此本文對(duì)這兩類問(wèn)題進(jìn)行了重點(diǎn)分析。

    表3 每類問(wèn)題中含有不同交互行為的最佳答案平均得分的標(biāo)準(zhǔn)差

    圖7展示了評(píng)估和通用知識(shí)類問(wèn)題中含有各類交互行為的問(wèn)題的最佳答案的平均得分與這兩類問(wèn)題的最佳答案的平均得分的差值。從圖中可以看出,在評(píng)估類問(wèn)題中,擁有交互行為的問(wèn)題普遍有更高評(píng)分的最佳答案。而在所有交互行為中,澄清意圖和尋求要素這兩個(gè)意圖能大大提高答案的得分。這表明對(duì)于評(píng)估類問(wèn)題,意圖和要素可能是最重要的元素。

    不同于評(píng)估類問(wèn)題,尋求要素這種行為對(duì)于通用知識(shí)類問(wèn)題的貢獻(xiàn)就非常小了。而擁有澄清意圖行為的問(wèn)題甚至擁有更低的平均得分。在通用知識(shí)類問(wèn)題中,最突出的行為是質(zhì)疑問(wèn)題。這可能是由于通用知識(shí)類的問(wèn)題常常沒(méi)有標(biāo)準(zhǔn)答案而只是個(gè)人喜好的不同而已。例如,對(duì)于詢問(wèn)為什么Vim比Emacs好的問(wèn)題,就可能被Emacs的擁護(hù)者質(zhì)疑其意義。但是,這類問(wèn)題的答案可以詳細(xì)比較各自的好壞以及給出選擇的依據(jù),從而得到雙方支持者的贊同而得到更高的得分。

    圖7 評(píng)估類和通用知識(shí)類問(wèn)題含有各類交互行為的問(wèn)題最佳答案平均分偏差

    4 討 論

    本文探究了軟件開(kāi)發(fā)在線問(wèn)答網(wǎng)站上問(wèn)題的三個(gè)方面:類型、要素和交互行為,從1 001個(gè)問(wèn)題中收集數(shù)據(jù)并發(fā)現(xiàn)了不同類型的問(wèn)題,分析了問(wèn)題類型和其要素以及交互行為的關(guān)系。根據(jù)分析結(jié)果,可以給此類網(wǎng)站的使用者提出一些使用指導(dǎo),給其開(kāi)發(fā)者一些建議,還可以給試圖開(kāi)發(fā)自動(dòng)化問(wèn)答工具的研究者一些啟發(fā)。

    4.1 對(duì)提問(wèn)者和回答者的指導(dǎo)

    本文的研究顯示不同類型的問(wèn)題傾向于不同的要素。提問(wèn)者首先應(yīng)該明確自己詢問(wèn)的是哪類問(wèn)題,從而有傾向性地提供重要的要素。場(chǎng)景作為對(duì)提問(wèn)者面對(duì)的情況的描述,對(duì)幾乎所有類型的問(wèn)題都很重要,即使是通用知識(shí)類的問(wèn)題也有很高的比例含有場(chǎng)景描述。提問(wèn)者應(yīng)該描述清楚他們問(wèn)題的場(chǎng)景。場(chǎng)景以外的其他要素的重要性則取決于問(wèn)題的類型??尚行苑治鲱惖膯?wèn)題需要描述期望;解決方案規(guī)劃類的問(wèn)題需要描述可能方案;實(shí)現(xiàn)類的問(wèn)題中可能方案也比較重要;糾錯(cuò)類問(wèn)題則需要描述清楚錯(cuò)誤內(nèi)容;而改進(jìn)類問(wèn)題則對(duì)當(dāng)前方案要求比較高;實(shí)現(xiàn)類、糾錯(cuò)類、評(píng)估類和改進(jìn)類同時(shí)都要求給出代碼。

    對(duì)于回答者而言,本文的研究結(jié)果也能給予他們一定的指導(dǎo)。解釋是最常見(jiàn)的交互行為,這也意味著問(wèn)答網(wǎng)站上的回答常常會(huì)缺失詳細(xì)的信息。因此回答者在回答問(wèn)題的時(shí)候,應(yīng)該提供更具體內(nèi)容,而不是在評(píng)論中再對(duì)答案進(jìn)行解釋。澄清意圖和尋求要素這兩種行為是回答者在回答問(wèn)題之前直接向提問(wèn)者索求需要的信息,這兩種行為也很常見(jiàn)。也就是說(shuō),對(duì)于想要在SO上回答問(wèn)題的新人來(lái)說(shuō),當(dāng)對(duì)問(wèn)題有任何疑惑時(shí),應(yīng)該直接詢問(wèn)而不是猜測(cè)問(wèn)題的意思。而提供參考和嘗試是兩個(gè)偏向?qū)嵺`的幫助回答者理解問(wèn)題的方法,在對(duì)問(wèn)題有疑惑時(shí),即使采取這兩種方法可能并不能及時(shí)得到反饋,也應(yīng)該將他們納入可選的行動(dòng)之中。

    4.2 對(duì)軟件開(kāi)發(fā)在線問(wèn)答網(wǎng)站開(kāi)發(fā)者的建議

    數(shù)據(jù)表明,接近80%的問(wèn)題擁有場(chǎng)景這個(gè)要素,并且得分越高的問(wèn)題中含有場(chǎng)景要素的比例越高。這說(shuō)明場(chǎng)景對(duì)于澄清問(wèn)題有著非常重要的作用。然而,在許多問(wèn)題中,場(chǎng)景和其他諸如環(huán)境、現(xiàn)有方案等混雜在一起。為了更清楚地呈現(xiàn)問(wèn)題,可以設(shè)計(jì)一個(gè)特殊的UI元素以強(qiáng)調(diào)問(wèn)題的場(chǎng)景(例如使用深色背景)。此外含有場(chǎng)景的問(wèn)題擁有更高的平均得分,在用戶輸入問(wèn)題時(shí)也可以提供相應(yīng)的UI鼓勵(lì)用戶明確問(wèn)題的場(chǎng)景。例如在提問(wèn)頁(yè)面上提供專門的輸入框讓用戶闡述問(wèn)題場(chǎng)景。

    另一方面,提問(wèn)者和回答者的交互方式也是可以改進(jìn)的。在現(xiàn)有的機(jī)制中,評(píng)論幾乎是雙方交流的唯一選擇。這種方式對(duì)于問(wèn)詢類的行為(例如澄清意圖和尋求要素)來(lái)說(shuō)是很方便的,對(duì)于提供諸如參考材料的網(wǎng)址或者簡(jiǎn)單的解釋來(lái)說(shuō)也有一定的效果。然而,對(duì)于嘗試、分步建議這兩種同樣很重要的交互方式來(lái)說(shuō),通過(guò)評(píng)論進(jìn)行頻繁的交流就顯得沒(méi)那么高效了。問(wèn)答網(wǎng)站可以提供即時(shí)聊天系統(tǒng)供用戶使用。更進(jìn)一步,如果支持更豐富的內(nèi)容交互方式(例如遠(yuǎn)程桌面控制)就能幫助用戶更有效地進(jìn)行交流了。

    4.3 對(duì)開(kāi)發(fā)自動(dòng)化問(wèn)答工具的啟發(fā)

    自動(dòng)化問(wèn)答工具其實(shí)和問(wèn)答網(wǎng)站上的問(wèn)答不盡相同。理想情況下,當(dāng)程序員使用問(wèn)答工具時(shí),他應(yīng)該只需要輸入一個(gè)問(wèn)句而不是對(duì)問(wèn)題的詳細(xì)描述就能得到答案。而回答問(wèn)題所需要的必要信息則應(yīng)該有工具自動(dòng)收集。

    本文發(fā)現(xiàn)問(wèn)題類型是問(wèn)題的一個(gè)非常重要的元素。問(wèn)題的類型和問(wèn)題要素、交互行為都有著比較高的相關(guān)度。因此,問(wèn)答工具需要能夠識(shí)別出用戶的問(wèn)題類型。為了實(shí)現(xiàn)這個(gè)目的,NLP(自然語(yǔ)言處理)技術(shù)是可以考慮的方向。例如利用自然語(yǔ)言的語(yǔ)法模式來(lái)識(shí)別問(wèn)題類型。研究者可以通過(guò)人工定義或者機(jī)器學(xué)習(xí)的方式得到不同類型問(wèn)題的語(yǔ)法模式。當(dāng)用戶提出一個(gè)問(wèn)題時(shí),工具就可以將問(wèn)題和某個(gè)模式進(jìn)行匹配從而得到問(wèn)題的類型。

    知道問(wèn)題的類型后,就需要去收集回答問(wèn)題所需的必要信息,也就是問(wèn)題要素。下面列舉了一個(gè)問(wèn)答工具可以收集問(wèn)題要素的三個(gè)途徑。首先就是用戶提出的問(wèn)題本身,自然語(yǔ)言處理可以在這里被進(jìn)一步使用。然而,一個(gè)簡(jiǎn)單的問(wèn)句所包含的信息量是遠(yuǎn)遠(yuǎn)不夠的,因此工具需要通過(guò)其他兩個(gè)途徑獲取更多的信息。第二個(gè)途徑是自動(dòng)化的抓取信息。工具可以利用IDE插件等技術(shù)監(jiān)控用戶在編程中所采取的行動(dòng)以及行動(dòng)的結(jié)果,從而獲得場(chǎng)景、環(huán)境、代碼、錯(cuò)誤信息等要素。第三個(gè)途徑則是交互式地向用戶詢問(wèn)。工具可以根據(jù)上下文要求用戶手動(dòng)提供更多的信息。在交互式詢問(wèn)的過(guò)程中,工具除了簡(jiǎn)單地向用戶索求信息外,工具還可以采取更多的行為。跟人類回答者類似,工具也可以向用戶提供一些參考材料以啟發(fā)用戶提供信息。而跟問(wèn)答網(wǎng)站不一樣的是,自動(dòng)化工具可以以更為豐富和便利的形式向用戶提供這些參考材料。此外,工具還可以建議用戶進(jìn)行一些嘗試并自動(dòng)采集嘗試過(guò)程中的數(shù)據(jù),從而大大提高收集數(shù)據(jù)的效率。

    4.4 威脅因素

    本文的研究設(shè)計(jì)有一定的局限,會(huì)威脅到本文的結(jié)果。

    第一是本文采用的數(shù)據(jù)集是StackExchange官方發(fā)布的,這個(gè)數(shù)據(jù)集中并沒(méi)有包含SO上的所有信息。一些敏感信息會(huì)在數(shù)據(jù)集發(fā)布前被過(guò)濾。不過(guò),大部分被過(guò)濾的信息都是一些個(gè)人隱私數(shù)據(jù)(比如昵稱等),這些數(shù)據(jù)對(duì)本文的研究影響甚微。

    二是收集怎樣的數(shù)據(jù)是由本文的第一、第三兩位作者通過(guò)先導(dǎo)研究總結(jié)的,這受限于兩位作者的所學(xué)。然而,為了讓數(shù)據(jù)盡量全面,本文進(jìn)行了多而完善的討論。任何對(duì)于一個(gè)問(wèn)題的不確定或者不一致的看法,都會(huì)邀請(qǐng)其他資深研究人員或者SO使用者共同討論。同時(shí),在用以收集數(shù)據(jù)的問(wèn)卷設(shè)計(jì)完后,還邀請(qǐng)了一位博士和一位SO使用者試用并幫助改進(jìn)問(wèn)卷。通過(guò)這些機(jī)制,本文收集到了較為全面和公允的數(shù)據(jù)。

    第三是在深入分析過(guò)程中,本文使用的是問(wèn)卷形式人工收集數(shù)據(jù)。為了最小化因個(gè)人知識(shí)的局限而導(dǎo)致的偏差,本文采取了一些額外的措施。在收集數(shù)據(jù)之前,進(jìn)行了2小時(shí)的培訓(xùn),對(duì)問(wèn)卷中的每個(gè)選項(xiàng)都進(jìn)行了詳細(xì)的解釋。除此之外,本文的第一、第三作者以及參與先導(dǎo)試驗(yàn)的兩位研究者組成了一個(gè)顧問(wèn)小組。當(dāng)參與收集數(shù)據(jù)的人員對(duì)某個(gè)問(wèn)題有任何疑慮時(shí),至少可以找到一位顧問(wèn)幫助他分析問(wèn)題。在極少數(shù)情況下,如果顧問(wèn)本人對(duì)問(wèn)題不確定的話,整個(gè)顧問(wèn)小組就一起討論分析問(wèn)題。

    5 相關(guān)工作

    互聯(lián)網(wǎng)在軟件開(kāi)發(fā)中起到了越來(lái)越大的作用,在線問(wèn)答網(wǎng)站也被程序員越來(lái)越多得使用,StackOverflow則是此類網(wǎng)站中最具代表性的一個(gè)。因此,針對(duì)SO的研究已有很多。Christoph Treude等[2]分析了StackOverflow的數(shù)據(jù)并對(duì)用戶提出的問(wèn)題進(jìn)行了分類并探索哪些問(wèn)題被回答得很好,哪些問(wèn)題又沒(méi)有被回答。Seyed Mehdi Nasehi等[3]試圖找出SO上好的代碼樣例有什么特點(diǎn)。他們的結(jié)論是與樣例代碼一起給出的解釋和代碼本身同等重要。Amiangshu Bosu等[4]研究了SO上的表彰評(píng)分系統(tǒng)并對(duì)想在SO上獲得更高評(píng)價(jià)和評(píng)分的新用戶給出了一些建議。Blerina Bazelli等[5]則使用Linguistic Inquiry和Word Count(LIWC)分析SO上開(kāi)發(fā)者的個(gè)人特質(zhì)。他們發(fā)現(xiàn)獲得最高評(píng)價(jià)的作者(使用者)相比低評(píng)價(jià)的使用者更為外向。此外,擁有高評(píng)分問(wèn)題或答案的作者更少地表達(dá)他們的負(fù)面情緒。Benjamin V. Hanrahan等[1]專注于構(gòu)建困難問(wèn)題和專家的指示器以及探究復(fù)雜問(wèn)題是如何被多名專家處理和分發(fā)的。Dennis Schenk等[6]評(píng)估了SO上的知識(shí)經(jīng)濟(jì)系統(tǒng)的狀態(tài)。Shaowei Wang等[7]展示了問(wèn)題、開(kāi)發(fā)者及其行為的分布以及通過(guò)LDA生成的開(kāi)發(fā)者所屬話題的分布情況。Xin Xia等[8]提出了名為TagCombine的自動(dòng)標(biāo)簽推薦方法以分析軟件信息相關(guān)頁(yè)面的對(duì)象。他們使用SO評(píng)估了這個(gè)方法并得到了更好的標(biāo)簽推薦結(jié)果。Anton Barua等[9]使用LDA分析了SO上的文本內(nèi)容并得到了SO的一些話題和確實(shí)。

    除了StackOverflow以外,另一些網(wǎng)站也被用來(lái)分析用戶的行為。MathOverflow是一個(gè)類似于StackOverflow的網(wǎng)站,只是其目標(biāo)用戶是數(shù)學(xué)家或者數(shù)學(xué)研究者。Yla R. Tausczik等[10]在流程的層次理解了MathOverflow上的協(xié)作活動(dòng)并量化不同協(xié)作活動(dòng)對(duì)于解決方案質(zhì)量的影響。Yahoo!Answers是另一個(gè)被用于研究的問(wèn)答網(wǎng)站。Gyongyi Z等[11]分析了Yahoo!Answer的10個(gè)月的數(shù)據(jù)。他們研究了問(wèn)答系統(tǒng)中的活動(dòng)層次、角色、關(guān)注點(diǎn)、連接性和名聲系統(tǒng)并討論了此類服務(wù)的不同方面和可能的發(fā)展。Lada A. Adamic等[12]也對(duì)Yahoo!Answers進(jìn)行了研究。他們分析了論壇分類并根據(jù)內(nèi)容特點(diǎn)和用戶間的交互模式進(jìn)行了聚類。

    跟上述的所有研究不同的是,本文的研究關(guān)注于人類回答者能從軟件開(kāi)發(fā)在線問(wèn)答網(wǎng)站上會(huì)采取那些行為來(lái)回答問(wèn)題。由于人類可以獲得的信息很難使用自動(dòng)化的手段去抽取,而這些信息對(duì)于理解用戶的行為又至關(guān)重要。因此,本文通過(guò)人工閱讀的方式分析了SO上的1 001個(gè)問(wèn)題。最后,本文還為SO的用戶、開(kāi)發(fā)者以及問(wèn)答系統(tǒng)的研究者提供了一些指導(dǎo)和建議。

    6 結(jié) 語(yǔ)

    互聯(lián)網(wǎng)的發(fā)展使得開(kāi)發(fā)者越來(lái)越多地求助于軟件開(kāi)發(fā)在線問(wèn)答網(wǎng)站解決自己遇到的問(wèn)題,而StackOverflow是在程序員參與社會(huì)化學(xué)習(xí)中使用的最為廣泛的問(wèn)答網(wǎng)站[13]。SO上張貼的巨量的問(wèn)題和答案提供了研究編程領(lǐng)域提問(wèn)者-回答者交互行為研究的很好資源。本文對(duì)SO上的問(wèn)題進(jìn)行了閱讀并從中收集數(shù)據(jù),并對(duì)數(shù)據(jù)進(jìn)行了細(xì)致分析,一共發(fā)現(xiàn)了7個(gè)不同的問(wèn)題類型。不同的問(wèn)題類型又對(duì)不同的問(wèn)題要素有所偏好。此外,回答者會(huì)采取不同的交互行為去更好地理解問(wèn)題并給出答案。根據(jù)分析結(jié)果,本文針對(duì)軟件開(kāi)發(fā)在線問(wèn)答網(wǎng)站的使用者、開(kāi)發(fā)者以及問(wèn)答系統(tǒng)的研究者分別給出了指導(dǎo)和建議。

    將來(lái),我們會(huì)根據(jù)本文的分析結(jié)果構(gòu)建一個(gè)自動(dòng)化的問(wèn)答工具。這類工具將會(huì)在開(kāi)發(fā)者遇到困難時(shí)幫助其解決以提高開(kāi)發(fā)效率。

    [1] Hanrahan B V, Convertino G, Nelson L. Modeling problem difficulty and expertise in stackoverflow[C]//Proceedings of the ACM 2012 conference on Computer Supported Cooperative Work Companion. ACM, 2012: 91-94.

    [2] Treude C, Barzilay O, Storey M A. How do programmers ask and answer questions on the web?: Nier track[C]//Software Engineering (ICSE), 2011 33rd International Conference on. IEEE, 2011: 804-807.

    [3] Nasehi S M, Sillito J, Maurer F, et al. What makes a good code example?: A study of programming Q&A in StackOverflow[C]//Software Maintenance (ICSM), 2012 28th IEEE International Conference on. IEEE, 2012: 25-34.

    [4] Bosu A, Corley C S, Heaton D, et al. Building reputation in stackoverflow: an empirical investigation[C]//Proceedings of the 10th Working Conference on Mining Software Repositories. IEEE Press, 2013: 89-92.

    [5] Bazelli B, Hindle A, Stroulia E. On the personality traits of stackoverflow users[C]//2013 IEEE International Conference on Software Maintenance. IEEE, 2013: 460-463.

    [6] Schenk D, Lungu M. Geo-locating the knowledge transfer in StackOverflow[C]//Proceedings of the 2013 International Workshop on Social Software Engineering. ACM, 2013: 21-24.

    [7] Wang S, Lo D, Jiang L. An empirical study on developer interactions in StackOverflow[C]//Proceedings of the 28th Annual ACM Symposium on Applied Computing. ACM, 2013: 1019-1024.

    [8] Xia X, Lo D, Wang X, et al. Tag recommendation in software information sites[C]//Proceedings of the 10th Working Conference on Mining Software Repositories. IEEE Press, 2013: 287-296.

    [9] Barua A, Thomas S W, Hassan A E. What are developers talking about? an analysis of topics and trends in stack overflow[J]. Empirical Software Engineering, 2014, 19(3): 619-654.

    [10] Tausczik Y R, Kittur A, Kraut R E. Collaborative problem solving: A study of mathoverflow[C]//Proceedings of the 17th ACM conference on Computer supported cooperative work & social computing. ACM, 2014: 355-367.

    [11] Gyongyi Z, Koutrika G, Pedersen J, et al. Questioning yahoo! answers[R]. Stanford InfoLab ,2007.

    [12] Adamic L A, Zhang J, Bakshy E, et al. Knowledge sharing and yahoo answers: everyone knows something[C]//Proceedings of the 17th international conference on World Wide Web. ACM, 2008: 665-674.

    [13] Vassileva J. Toward social learning environments[J]. Learning Technologies, IEEE Transactions on, 2008, 1(4): 199-214.

    RESEARCH ON INTERACTION PROCESS OF QUESTION AND ANSWER IN SOCIAL SOFTWARE DEVELOPMENT

    Wang Hai Peng Xin Yu Han Zhao Wenyun

    (SchoolofSoftware,FudanUniversity,Shanghai201203,China) (ShanghaiKeyLaboratoryofDataScience,FudanUniversity,Shanghai201203,China)

    Online Q & A Web site software development, solve the problem of the process is not a simple question and answer, and often contains a complex interactive process. A deep understanding of the Q & A features of the Q & A Web site and its interactive processes are of great importance in improving the quality of questions and answers, improving interaction efficiency, and developing related automation aids. From the purpose and intent of the problem in StackOverflow, the basic elements, and the interaction to carry out research, sampling and analysis of 1 001 problems, summed up the problem of 7 types, 8 elements and 10 types of interaction. According to the research results, the corresponding suggestions are put forward to users, developers and researchers of the Q & A website.

    Software development Question and answer StackOverflow Social learning Interaction

    2016-05-13。國(guó)家自然科學(xué)基金項(xiàng)目(61370079)。王海,碩士生,主研領(lǐng)域:軟件維護(hù)。彭鑫,教授。于涵,碩士生。趙文耘,教授。

    TP311

    A

    10.3969/j.issn.1000-386x.2017.05.001

    猜你喜歡
    回答者提問(wèn)者開(kāi)發(fā)者
    接夢(mèng)話
    分答與知識(shí)共享
    快問(wèn)快答
    16%游戲開(kāi)發(fā)者看好VR
    CHIP新電腦(2016年3期)2016-03-10 13:06:42
    iOS開(kāi)發(fā)者調(diào)查
    電腦迷(2015年8期)2015-05-30 12:27:10
    iOS開(kāi)發(fā)者調(diào)查
    電腦迷(2015年4期)2015-05-30 05:24:09
    創(chuàng)新者:“孤獨(dú)的”提問(wèn)者
    天才與鍛煉(節(jié)選)
    高考模擬題精選之情景交際題參考答案
    安卓開(kāi)發(fā)者之煩惱
    欧美日韩国产mv在线观看视频 | 亚洲欧美精品自产自拍| 99re6热这里在线精品视频| 麻豆成人av视频| 国产探花极品一区二区| 国产精品.久久久| 黄色日韩在线| 女人久久www免费人成看片| 麻豆久久精品国产亚洲av| 夫妻性生交免费视频一级片| 身体一侧抽搐| 丰满人妻一区二区三区视频av| 男女下面进入的视频免费午夜| 国产黄a三级三级三级人| 欧美激情在线99| 免费观看的影片在线观看| 久久久久久久大尺度免费视频| 成年女人在线观看亚洲视频 | 国模一区二区三区四区视频| 最近中文字幕高清免费大全6| 777米奇影视久久| 春色校园在线视频观看| 久久久久久久精品精品| 美女高潮的动态| 搡女人真爽免费视频火全软件| 狠狠精品人妻久久久久久综合| 亚洲精品色激情综合| 成人毛片60女人毛片免费| 联通29元200g的流量卡| 国产精品嫩草影院av在线观看| 草草在线视频免费看| 国产又色又爽无遮挡免| 免费电影在线观看免费观看| a级一级毛片免费在线观看| 欧美性猛交╳xxx乱大交人| 三级国产精品片| 亚洲av日韩在线播放| 中文字幕免费在线视频6| 啦啦啦在线观看免费高清www| 大陆偷拍与自拍| 国产爽快片一区二区三区| 亚洲欧美日韩卡通动漫| 中文字幕av成人在线电影| 亚洲av不卡在线观看| 亚洲国产精品专区欧美| 亚洲天堂国产精品一区在线| 亚洲精品久久久久久婷婷小说| 美女高潮的动态| 美女xxoo啪啪120秒动态图| av天堂中文字幕网| 好男人视频免费观看在线| 少妇被粗大猛烈的视频| 欧美97在线视频| 久久韩国三级中文字幕| 久久精品久久久久久噜噜老黄| 国产成人福利小说| 精品人妻一区二区三区麻豆| 18禁裸乳无遮挡免费网站照片| 欧美亚洲 丝袜 人妻 在线| 精品久久久久久久人妻蜜臀av| 18禁在线无遮挡免费观看视频| 搡女人真爽免费视频火全软件| 永久网站在线| 直男gayav资源| 免费观看无遮挡的男女| 亚洲av.av天堂| freevideosex欧美| 人人妻人人爽人人添夜夜欢视频 | 女人被狂操c到高潮| 午夜亚洲福利在线播放| 少妇人妻久久综合中文| 国产熟女欧美一区二区| 小蜜桃在线观看免费完整版高清| 久久精品久久精品一区二区三区| www.av在线官网国产| 直男gayav资源| 亚洲av免费高清在线观看| www.色视频.com| 国产成人freesex在线| 国产成人a区在线观看| 18禁在线播放成人免费| 久久久午夜欧美精品| 欧美极品一区二区三区四区| 久久久亚洲精品成人影院| 成年免费大片在线观看| 久久久成人免费电影| 大又大粗又爽又黄少妇毛片口| 看非洲黑人一级黄片| 午夜免费观看性视频| 久久精品综合一区二区三区| 久久久久性生活片| 亚洲欧洲国产日韩| 亚洲精品一二三| 天天躁日日操中文字幕| 亚洲一区二区三区欧美精品 | 日日摸夜夜添夜夜添av毛片| 最近的中文字幕免费完整| 色吧在线观看| 免费人成在线观看视频色| 99九九线精品视频在线观看视频| 91狼人影院| 亚洲精品国产av成人精品| 亚洲国产av新网站| 欧美一级a爱片免费观看看| 老司机影院成人| 超碰av人人做人人爽久久| 少妇人妻一区二区三区视频| 人人妻人人看人人澡| 99热全是精品| 好男人视频免费观看在线| av在线天堂中文字幕| 国内揄拍国产精品人妻在线| 在线a可以看的网站| 国产大屁股一区二区在线视频| av国产久精品久网站免费入址| 欧美日韩在线观看h| 老司机影院毛片| 波多野结衣巨乳人妻| 高清毛片免费看| videos熟女内射| 中文字幕亚洲精品专区| 毛片一级片免费看久久久久| 在线观看国产h片| 777米奇影视久久| freevideosex欧美| 国产成人一区二区在线| 一级毛片aaaaaa免费看小| 在线亚洲精品国产二区图片欧美 | av免费观看日本| 亚洲欧美精品自产自拍| h日本视频在线播放| 免费av观看视频| 高清在线视频一区二区三区| 中文字幕亚洲精品专区| 日韩一区二区三区影片| 少妇人妻精品综合一区二区| 亚洲欧美中文字幕日韩二区| 午夜老司机福利剧场| 欧美成人a在线观看| 观看美女的网站| 亚洲国产精品专区欧美| 日本免费在线观看一区| 国产毛片a区久久久久| 中文在线观看免费www的网站| 在线免费观看不下载黄p国产| 99九九线精品视频在线观看视频| 26uuu在线亚洲综合色| 白带黄色成豆腐渣| 日韩一区二区视频免费看| 狂野欧美白嫩少妇大欣赏| 国产男女内射视频| 国产成人福利小说| 18禁裸乳无遮挡动漫免费视频 | av国产精品久久久久影院| 精品国产三级普通话版| 天堂中文最新版在线下载 | 乱码一卡2卡4卡精品| 舔av片在线| 天天躁夜夜躁狠狠久久av| 亚洲成色77777| 最近最新中文字幕大全电影3| 一本久久精品| 97人妻精品一区二区三区麻豆| 久久久久国产网址| 久久久久久久国产电影| 日韩大片免费观看网站| 少妇丰满av| 国产有黄有色有爽视频| 一级二级三级毛片免费看| 精品久久久久久电影网| 只有这里有精品99| 日韩av在线免费看完整版不卡| 亚洲第一区二区三区不卡| 久久鲁丝午夜福利片| 搞女人的毛片| 日日摸夜夜添夜夜添av毛片| 欧美潮喷喷水| 国产大屁股一区二区在线视频| 嘟嘟电影网在线观看| 超碰97精品在线观看| 久久久久性生活片| 欧美xxxx性猛交bbbb| av女优亚洲男人天堂| 国产精品一区www在线观看| 久久久色成人| 最后的刺客免费高清国语| 18禁裸乳无遮挡免费网站照片| 啦啦啦中文免费视频观看日本| 国产亚洲午夜精品一区二区久久 | 2021少妇久久久久久久久久久| 久久6这里有精品| 久久6这里有精品| 欧美激情在线99| 啦啦啦中文免费视频观看日本| 我要看日韩黄色一级片| 搡老乐熟女国产| 精品少妇久久久久久888优播| 亚洲av福利一区| 国产熟女欧美一区二区| av福利片在线观看| 亚洲最大成人中文| 国产成人精品福利久久| 中文字幕av成人在线电影| 97人妻精品一区二区三区麻豆| 丰满人妻一区二区三区视频av| 国产精品精品国产色婷婷| 2021少妇久久久久久久久久久| a级毛色黄片| 日日啪夜夜爽| 免费大片黄手机在线观看| 亚洲精品自拍成人| 午夜激情久久久久久久| 婷婷色综合www| 一本久久精品| 狂野欧美激情性bbbbbb| 成年免费大片在线观看| 秋霞在线观看毛片| 王馨瑶露胸无遮挡在线观看| 91精品伊人久久大香线蕉| 超碰av人人做人人爽久久| 久久ye,这里只有精品| 日韩强制内射视频| av在线天堂中文字幕| 深爱激情五月婷婷| 国产综合精华液| 少妇猛男粗大的猛烈进出视频 | 欧美高清性xxxxhd video| av在线老鸭窝| 小蜜桃在线观看免费完整版高清| 欧美日本视频| 内射极品少妇av片p| 网址你懂的国产日韩在线| 99视频精品全部免费 在线| 22中文网久久字幕| 美女主播在线视频| av国产免费在线观看| 在线观看av片永久免费下载| 精品人妻偷拍中文字幕| 国产乱人视频| 三级经典国产精品| 色5月婷婷丁香| 国产成人freesex在线| 99久久九九国产精品国产免费| 在线精品无人区一区二区三 | 高清欧美精品videossex| 一本久久精品| 日韩免费高清中文字幕av| 久久国内精品自在自线图片| 啦啦啦在线观看免费高清www| 少妇被粗大猛烈的视频| 黑人高潮一二区| av在线天堂中文字幕| 国产精品人妻久久久影院| 高清av免费在线| 噜噜噜噜噜久久久久久91| 亚洲精品日韩av片在线观看| 久久久国产一区二区| 久久久久国产精品人妻一区二区| 联通29元200g的流量卡| 纵有疾风起免费观看全集完整版| 日韩三级伦理在线观看| 嫩草影院新地址| 校园人妻丝袜中文字幕| 国产精品精品国产色婷婷| 在线观看国产h片| 黄色怎么调成土黄色| 亚洲va在线va天堂va国产| 国产老妇伦熟女老妇高清| av女优亚洲男人天堂| 新久久久久国产一级毛片| 午夜精品一区二区三区免费看| 国产免费一区二区三区四区乱码| 欧美成人一区二区免费高清观看| 久久久精品欧美日韩精品| 国产成人a∨麻豆精品| 色婷婷久久久亚洲欧美| 婷婷色av中文字幕| 国产 一区 欧美 日韩| 男人添女人高潮全过程视频| 三级经典国产精品| av.在线天堂| 免费高清在线观看视频在线观看| 欧美日韩精品成人综合77777| 久久久久久久久大av| 狂野欧美激情性xxxx在线观看| 欧美一区二区亚洲| 亚洲精品日本国产第一区| 国产精品久久久久久久久免| 久久久久久久亚洲中文字幕| 亚洲性久久影院| 美女脱内裤让男人舔精品视频| 亚洲av日韩在线播放| 亚洲精品视频女| 少妇人妻久久综合中文| 成人漫画全彩无遮挡| 中文乱码字字幕精品一区二区三区| 亚洲久久久久久中文字幕| 中文字幕久久专区| av在线亚洲专区| 老司机影院毛片| 欧美日韩在线观看h| a级毛片免费高清观看在线播放| 最近中文字幕高清免费大全6| 18禁裸乳无遮挡免费网站照片| 99热6这里只有精品| 特大巨黑吊av在线直播| 少妇的逼水好多| 人妻夜夜爽99麻豆av| 日韩人妻高清精品专区| 欧美亚洲 丝袜 人妻 在线| 国产伦精品一区二区三区视频9| 国产精品一及| 中国国产av一级| 18禁裸乳无遮挡免费网站照片| 国产精品熟女久久久久浪| 高清毛片免费看| 日韩在线高清观看一区二区三区| 色综合色国产| 亚洲成人精品中文字幕电影| 成人国产av品久久久| 在线观看美女被高潮喷水网站| 嫩草影院新地址| 婷婷色综合www| 晚上一个人看的免费电影| 在线观看一区二区三区激情| 尾随美女入室| 久久女婷五月综合色啪小说 | av播播在线观看一区| 亚洲伊人久久精品综合| 精品久久久久久久末码| 简卡轻食公司| 亚洲久久久久久中文字幕| 成人高潮视频无遮挡免费网站| 欧美日韩一区二区视频在线观看视频在线 | 97精品久久久久久久久久精品| 国产淫片久久久久久久久| 香蕉精品网在线| 联通29元200g的流量卡| 美女脱内裤让男人舔精品视频| 亚洲精品视频女| 国产成人精品婷婷| 国产成人免费无遮挡视频| 少妇 在线观看| 99久久人妻综合| 久久久久久久久久成人| 我的老师免费观看完整版| 国产精品国产三级国产av玫瑰| 丝袜脚勾引网站| 日韩在线高清观看一区二区三区| 亚洲精品视频女| av又黄又爽大尺度在线免费看| 最近最新中文字幕免费大全7| 三级国产精品欧美在线观看| 午夜福利网站1000一区二区三区| 免费观看av网站的网址| 欧美日韩在线观看h| 听说在线观看完整版免费高清| 综合色丁香网| 国内精品宾馆在线| 美女视频免费永久观看网站| 在线观看人妻少妇| 成年版毛片免费区| 少妇被粗大猛烈的视频| 久久综合国产亚洲精品| 男人爽女人下面视频在线观看| 久久久久网色| 欧美3d第一页| 波多野结衣巨乳人妻| 夫妻性生交免费视频一级片| 国产黄频视频在线观看| 一级a做视频免费观看| 99久国产av精品国产电影| 亚洲国产成人一精品久久久| 97超碰精品成人国产| 亚洲av中文av极速乱| 亚州av有码| 午夜免费鲁丝| 日本黄色片子视频| 亚洲av成人精品一区久久| 永久网站在线| 欧美精品国产亚洲| 男人和女人高潮做爰伦理| 日韩视频在线欧美| 人人妻人人澡人人爽人人夜夜| 亚洲精品久久久久久婷婷小说| 久久久国产一区二区| 禁无遮挡网站| 精品人妻一区二区三区麻豆| 中国美白少妇内射xxxbb| 中文字幕av成人在线电影| 国产视频首页在线观看| 51国产日韩欧美| 久久久久久久久久久免费av| 97超视频在线观看视频| 搡老乐熟女国产| 婷婷色av中文字幕| 欧美日韩综合久久久久久| 久久久久久久午夜电影| 久久久色成人| 人妻制服诱惑在线中文字幕| 有码 亚洲区| 韩国av在线不卡| 亚洲av二区三区四区| 丰满人妻一区二区三区视频av| 国产免费一区二区三区四区乱码| 成人一区二区视频在线观看| 色5月婷婷丁香| 免费电影在线观看免费观看| 欧美zozozo另类| 日本黄色片子视频| .国产精品久久| 久久ye,这里只有精品| 国产大屁股一区二区在线视频| 日韩一本色道免费dvd| 久久久久久久精品精品| 伊人久久国产一区二区| 国产黄频视频在线观看| 国产精品嫩草影院av在线观看| 日本一本二区三区精品| 午夜福利高清视频| 一级毛片电影观看| 男人和女人高潮做爰伦理| 国产淫语在线视频| 精品久久久久久电影网| 成年av动漫网址| 男女边摸边吃奶| 亚洲婷婷狠狠爱综合网| 精品视频人人做人人爽| 美女主播在线视频| 最近的中文字幕免费完整| 国产老妇女一区| 女人十人毛片免费观看3o分钟| 欧美日韩国产mv在线观看视频 | 国产av不卡久久| 免费观看的影片在线观看| 真实男女啪啪啪动态图| 神马国产精品三级电影在线观看| 欧美性感艳星| 亚洲不卡免费看| 国产免费福利视频在线观看| 精品国产三级普通话版| av一本久久久久| 麻豆成人午夜福利视频| 少妇 在线观看| 亚洲性久久影院| 国产精品偷伦视频观看了| 最近中文字幕高清免费大全6| 亚洲精品成人av观看孕妇| 亚洲丝袜综合中文字幕| 欧美激情久久久久久爽电影| 你懂的网址亚洲精品在线观看| 欧美亚洲 丝袜 人妻 在线| 国产免费一区二区三区四区乱码| 亚洲欧美日韩卡通动漫| 韩国av在线不卡| 中文字幕亚洲精品专区| 99热这里只有精品一区| 欧美三级亚洲精品| 视频区图区小说| 老司机影院成人| 国产精品99久久久久久久久| 日韩欧美精品v在线| 国产精品爽爽va在线观看网站| 秋霞在线观看毛片| 亚洲色图av天堂| 自拍欧美九色日韩亚洲蝌蚪91 | 日韩电影二区| 国产精品成人在线| 欧美日韩国产mv在线观看视频 | 亚洲精品日本国产第一区| 成人午夜精彩视频在线观看| 自拍偷自拍亚洲精品老妇| 六月丁香七月| 久热这里只有精品99| 日韩欧美精品v在线| 91在线精品国自产拍蜜月| 高清在线视频一区二区三区| 人妻夜夜爽99麻豆av| 男女国产视频网站| 中文字幕免费在线视频6| 天堂中文最新版在线下载 | 狂野欧美激情性xxxx在线观看| 午夜福利视频精品| 免费黄网站久久成人精品| av网站免费在线观看视频| 亚洲色图综合在线观看| 成人欧美大片| 国产精品偷伦视频观看了| 精品久久久精品久久久| 久久亚洲国产成人精品v| 一区二区av电影网| 性插视频无遮挡在线免费观看| 亚洲在线观看片| 午夜福利在线在线| 丝袜美腿在线中文| 日韩欧美一区视频在线观看 | videossex国产| 日韩一区二区视频免费看| 永久免费av网站大全| 有码 亚洲区| 成人亚洲精品av一区二区| 亚洲欧美一区二区三区黑人 | 99热全是精品| 在线天堂最新版资源| 在线观看国产h片| 新久久久久国产一级毛片| av在线观看视频网站免费| 久久午夜福利片| 国产成人午夜福利电影在线观看| 3wmmmm亚洲av在线观看| 插阴视频在线观看视频| 97超碰精品成人国产| 自拍欧美九色日韩亚洲蝌蚪91 | h日本视频在线播放| 国产一区二区亚洲精品在线观看| 蜜桃久久精品国产亚洲av| 精品人妻偷拍中文字幕| 国产精品嫩草影院av在线观看| 看十八女毛片水多多多| 69av精品久久久久久| 看免费成人av毛片| 久久久精品94久久精品| av专区在线播放| 国产成年人精品一区二区| 伊人久久国产一区二区| 国内揄拍国产精品人妻在线| a级毛色黄片| 欧美精品一区二区大全| 免费观看的影片在线观看| 美女脱内裤让男人舔精品视频| 久久久久久久精品精品| 人妻制服诱惑在线中文字幕| 在线观看美女被高潮喷水网站| 国产乱人偷精品视频| 日韩伦理黄色片| 高清毛片免费看| 日韩精品有码人妻一区| 免费看日本二区| 久久99精品国语久久久| 成年人午夜在线观看视频| 日本-黄色视频高清免费观看| av又黄又爽大尺度在线免费看| 国产精品久久久久久久久免| 汤姆久久久久久久影院中文字幕| 美女cb高潮喷水在线观看| 人人妻人人爽人人添夜夜欢视频 | 免费播放大片免费观看视频在线观看| 天天躁日日操中文字幕| 人人妻人人爽人人添夜夜欢视频 | 校园人妻丝袜中文字幕| 联通29元200g的流量卡| 美女国产视频在线观看| 亚洲av不卡在线观看| 日韩av不卡免费在线播放| 免费观看的影片在线观看| 国产一区二区三区综合在线观看 | 最近2019中文字幕mv第一页| 色网站视频免费| 国产精品精品国产色婷婷| 久久精品国产a三级三级三级| 国产黄色免费在线视频| 高清欧美精品videossex| 国产精品一区二区三区四区免费观看| 国产精品秋霞免费鲁丝片| 日本黄色片子视频| 亚洲av欧美aⅴ国产| 国产人妻一区二区三区在| 精品国产露脸久久av麻豆| 91在线精品国自产拍蜜月| 亚洲精华国产精华液的使用体验| 亚洲国产av新网站| 少妇 在线观看| 91久久精品电影网| 婷婷色综合www| 亚洲国产高清在线一区二区三| 一二三四中文在线观看免费高清| 欧美高清成人免费视频www| 国产av不卡久久| 国产色婷婷99| 中国三级夫妇交换| 亚洲三级黄色毛片| 丰满乱子伦码专区| 高清视频免费观看一区二区| 欧美zozozo另类| 看免费成人av毛片| 亚洲色图综合在线观看| 亚洲色图av天堂| 亚洲高清免费不卡视频| 人体艺术视频欧美日本| 麻豆成人午夜福利视频| 身体一侧抽搐| 国产成人aa在线观看| 日韩av在线免费看完整版不卡| 久久国内精品自在自线图片| 中文天堂在线官网| 国产淫片久久久久久久久| av在线蜜桃| 午夜老司机福利剧场| 一级毛片黄色毛片免费观看视频| 综合色丁香网| 国产伦在线观看视频一区| 精品久久国产蜜桃| 欧美潮喷喷水| 国产亚洲午夜精品一区二区久久 | 国产 一区精品| 亚洲成人一二三区av| 欧美日韩在线观看h| 亚洲精品456在线播放app| 久久精品人妻少妇| 亚洲国产精品成人久久小说| 国产免费福利视频在线观看| 一本一本综合久久| 最近中文字幕2019免费版| 一级毛片我不卡| 欧美日韩一区二区视频在线观看视频在线 |