• <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ā)者之煩惱
    av卡一久久| 日本爱情动作片www.在线观看| 黄色毛片三级朝国网站| 午夜日韩欧美国产| 捣出白浆h1v1| 欧美激情极品国产一区二区三区| 国产一区二区三区综合在线观看| 午夜福利乱码中文字幕| 亚洲美女黄色视频免费看| 久久免费观看电影| 亚洲av日韩在线播放| 超色免费av| 黑人猛操日本美女一级片| 热99国产精品久久久久久7| 精品亚洲乱码少妇综合久久| 女性生殖器流出的白浆| 亚洲国产av新网站| 女人爽到高潮嗷嗷叫在线视频| 亚洲欧美激情在线| 亚洲成av片中文字幕在线观看| 国产精品国产三级专区第一集| 午夜久久久在线观看| av不卡在线播放| 熟妇人妻不卡中文字幕| 最近中文字幕2019免费版| 国产精品秋霞免费鲁丝片| 久久青草综合色| 亚洲精品在线美女| 黄色一级大片看看| 久久久精品国产亚洲av高清涩受| 咕卡用的链子| 国产色婷婷99| 国产精品久久久久久人妻精品电影 | 日本黄色日本黄色录像| 国产精品一国产av| 久久热在线av| 国产精品蜜桃在线观看| 成人免费观看视频高清| 中国三级夫妇交换| 曰老女人黄片| 国产不卡av网站在线观看| 欧美精品人与动牲交sv欧美| av一本久久久久| 国产精品免费视频内射| 欧美人与善性xxx| 欧美亚洲 丝袜 人妻 在线| www.熟女人妻精品国产| 免费看av在线观看网站| 国产精品.久久久| 别揉我奶头~嗯~啊~动态视频 | 精品午夜福利在线看| 又黄又粗又硬又大视频| 欧美在线黄色| 国产成人精品久久二区二区91 | 黄色 视频免费看| xxxhd国产人妻xxx| 日韩 亚洲 欧美在线| 午夜福利乱码中文字幕| 亚洲av欧美aⅴ国产| 美女扒开内裤让男人捅视频| 99热全是精品| 大香蕉久久网| 中国三级夫妇交换| 久热爱精品视频在线9| 亚洲欧美色中文字幕在线| 男女之事视频高清在线观看 | 国产精品一区二区在线不卡| 亚洲成人一二三区av| 国产精品二区激情视频| 国产麻豆69| 大片免费播放器 马上看| 亚洲av在线观看美女高潮| 夫妻性生交免费视频一级片| 亚洲国产欧美在线一区| 一边摸一边做爽爽视频免费| 欧美日本中文国产一区发布| 性少妇av在线| 超碰成人久久| 午夜免费男女啪啪视频观看| 成人黄色视频免费在线看| 久久97久久精品| 久久久久久人妻| 五月开心婷婷网| 视频区图区小说| 嫩草影院入口| 欧美精品高潮呻吟av久久| 高清黄色对白视频在线免费看| 国产男人的电影天堂91| 老司机亚洲免费影院| 999精品在线视频| 婷婷成人精品国产| 18禁裸乳无遮挡动漫免费视频| 精品午夜福利在线看| www.熟女人妻精品国产| 热re99久久国产66热| 热99国产精品久久久久久7| 一区二区三区激情视频| 免费黄频网站在线观看国产| 中文字幕人妻丝袜一区二区 | 韩国av在线不卡| 亚洲成人国产一区在线观看 | 久久午夜综合久久蜜桃| 日韩制服丝袜自拍偷拍| 午夜福利网站1000一区二区三区| 我的亚洲天堂| 精品亚洲成a人片在线观看| 久久人妻熟女aⅴ| 亚洲欧洲日产国产| 老汉色∧v一级毛片| 女人久久www免费人成看片| 成人国产麻豆网| 午夜福利影视在线免费观看| 亚洲欧美成人精品一区二区| 别揉我奶头~嗯~啊~动态视频 | 国产99久久九九免费精品| 中文字幕制服av| 免费高清在线观看日韩| 国产亚洲最大av| 亚洲成人一二三区av| 成人免费观看视频高清| 欧美日韩亚洲国产一区二区在线观看 | 青青草视频在线视频观看| 久久久久久久大尺度免费视频| 五月开心婷婷网| 一级毛片 在线播放| 又黄又粗又硬又大视频| 亚洲成人国产一区在线观看 | 国产av国产精品国产| 老熟女久久久| 一级片免费观看大全| 男女高潮啪啪啪动态图| 国产亚洲一区二区精品| 黑丝袜美女国产一区| 国产精品人妻久久久影院| 国产精品一区二区精品视频观看| 捣出白浆h1v1| 亚洲国产中文字幕在线视频| 国产欧美日韩一区二区三区在线| 国产成人精品无人区| 国产视频首页在线观看| 国产在线一区二区三区精| 黄频高清免费视频| 久久人人爽av亚洲精品天堂| 午夜福利视频在线观看免费| 国产精品偷伦视频观看了| 卡戴珊不雅视频在线播放| 丁香六月天网| 1024视频免费在线观看| 免费观看性生交大片5| 97在线人人人人妻| 免费人妻精品一区二区三区视频| 天天躁日日躁夜夜躁夜夜| 精品一区二区三卡| 午夜av观看不卡| 国产免费一区二区三区四区乱码| 亚洲人成网站在线观看播放| 亚洲国产av新网站| 国产精品国产三级国产专区5o| 啦啦啦 在线观看视频| 操美女的视频在线观看| 国产亚洲一区二区精品| 亚洲av日韩在线播放| 青春草亚洲视频在线观看| 在线亚洲精品国产二区图片欧美| 日韩一本色道免费dvd| 久久精品久久精品一区二区三区| 美女午夜性视频免费| 大香蕉久久成人网| 中文乱码字字幕精品一区二区三区| 久久天堂一区二区三区四区| 日韩精品有码人妻一区| 日韩 亚洲 欧美在线| 久久鲁丝午夜福利片| 性少妇av在线| 婷婷色av中文字幕| 纵有疾风起免费观看全集完整版| 久久 成人 亚洲| 亚洲成人免费av在线播放| 大陆偷拍与自拍| 国产男人的电影天堂91| 老司机靠b影院| 美女脱内裤让男人舔精品视频| 日韩av免费高清视频| 韩国高清视频一区二区三区| 男女免费视频国产| 丁香六月欧美| 18禁国产床啪视频网站| 一本色道久久久久久精品综合| 亚洲熟女毛片儿| 亚洲av电影在线进入| 婷婷色综合www| 久久狼人影院| 在线观看免费午夜福利视频| 最近的中文字幕免费完整| 久久久欧美国产精品| 久久天躁狠狠躁夜夜2o2o | 热re99久久精品国产66热6| av线在线观看网站| 91精品三级在线观看| 国产一区二区激情短视频 | 在现免费观看毛片| 午夜福利乱码中文字幕| 亚洲av欧美aⅴ国产| 美女扒开内裤让男人捅视频| 欧美国产精品va在线观看不卡| 午夜福利视频在线观看免费| 人成视频在线观看免费观看| 十分钟在线观看高清视频www| 91精品国产国语对白视频| 久热爱精品视频在线9| 精品国产一区二区三区四区第35| 丝袜美腿诱惑在线| 制服丝袜香蕉在线| 18禁裸乳无遮挡动漫免费视频| 国产免费视频播放在线视频| 婷婷成人精品国产| 黄色一级大片看看| 日韩av在线免费看完整版不卡| 免费高清在线观看视频在线观看| 午夜福利视频精品| 亚洲av成人不卡在线观看播放网 | 我要看黄色一级片免费的| 蜜桃国产av成人99| 日韩一区二区视频免费看| 久久99一区二区三区| 大码成人一级视频| 国产精品久久久久成人av| 久久久久久人妻| 亚洲欧美色中文字幕在线| 国产成人一区二区在线| 亚洲精品日韩在线中文字幕| 精品午夜福利在线看| 欧美乱码精品一区二区三区| 九色亚洲精品在线播放| 欧美精品高潮呻吟av久久| 女性生殖器流出的白浆| 日本色播在线视频| 一边亲一边摸免费视频| 亚洲欧美一区二区三区久久| 亚洲精品中文字幕在线视频| 欧美黑人欧美精品刺激| 极品人妻少妇av视频| av不卡在线播放| 亚洲成av片中文字幕在线观看| 日韩精品有码人妻一区| 天堂俺去俺来也www色官网| 美女脱内裤让男人舔精品视频| 成人18禁高潮啪啪吃奶动态图| 国产亚洲av片在线观看秒播厂| 丝袜人妻中文字幕| 在线 av 中文字幕| 午夜福利免费观看在线| 我的亚洲天堂| 国产精品国产av在线观看| 亚洲国产av影院在线观看| 久热爱精品视频在线9| 夫妻性生交免费视频一级片| 黄色怎么调成土黄色| 日韩 欧美 亚洲 中文字幕| 精品国产乱码久久久久久小说| 亚洲国产精品成人久久小说| 国产高清不卡午夜福利| 啦啦啦在线免费观看视频4| 国产淫语在线视频| 十分钟在线观看高清视频www| 久久久久久免费高清国产稀缺| 制服丝袜香蕉在线| 精品国产国语对白av| a级片在线免费高清观看视频| 少妇人妻久久综合中文| 国产成人欧美| 日韩大码丰满熟妇| 欧美日韩精品网址| 久久人妻熟女aⅴ| 亚洲色图综合在线观看| 亚洲人成网站在线观看播放| 亚洲av福利一区| 狠狠精品人妻久久久久久综合| 亚洲精品视频女| 午夜91福利影院| 男女床上黄色一级片免费看| 亚洲欧洲精品一区二区精品久久久 | 日日啪夜夜爽| 欧美人与性动交α欧美精品济南到| 中文乱码字字幕精品一区二区三区| 国产在线免费精品| 久久热在线av| 久久久欧美国产精品| 国产成人欧美在线观看 | 精品亚洲乱码少妇综合久久| 在线观看免费午夜福利视频| 亚洲精品在线美女| 国产黄色免费在线视频| av女优亚洲男人天堂| 亚洲国产日韩一区二区| 国产精品一区二区在线不卡| 秋霞伦理黄片| 大码成人一级视频| 丝袜喷水一区| 日本wwww免费看| 黄网站色视频无遮挡免费观看| 国产福利在线免费观看视频| 久久精品国产综合久久久| 中文字幕人妻丝袜一区二区 | 在线天堂中文资源库| 男女高潮啪啪啪动态图| 精品国产超薄肉色丝袜足j| 19禁男女啪啪无遮挡网站| xxx大片免费视频| 精品少妇一区二区三区视频日本电影 | 亚洲成色77777| 亚洲av成人精品一二三区| 免费日韩欧美在线观看| 精品一区二区三卡| svipshipincom国产片| 欧美成人午夜精品| 在线天堂中文资源库| 性少妇av在线| 97人妻天天添夜夜摸| 亚洲人成网站在线观看播放| 国产一区二区三区av在线| av国产精品久久久久影院| 国产精品久久久久久久久免| 久久久精品免费免费高清| 亚洲一码二码三码区别大吗| 久久久久精品久久久久真实原创| 国产成人a∨麻豆精品| 久久精品国产a三级三级三级| 亚洲欧美精品自产自拍| 日韩制服骚丝袜av| 少妇猛男粗大的猛烈进出视频| 免费黄网站久久成人精品| 精品免费久久久久久久清纯 | 99精国产麻豆久久婷婷| 成人漫画全彩无遮挡| 国产在线一区二区三区精| 亚洲一区二区三区欧美精品| 亚洲精品av麻豆狂野| 亚洲欧美色中文字幕在线| 亚洲美女视频黄频| 亚洲三区欧美一区| 日韩熟女老妇一区二区性免费视频| 欧美中文综合在线视频| 性色av一级| 最近最新中文字幕大全免费视频 | 亚洲情色 制服丝袜| 伊人久久大香线蕉亚洲五| 国产精品.久久久| 久久精品久久久久久噜噜老黄| 免费日韩欧美在线观看| 美女中出高潮动态图| 观看av在线不卡| 夜夜骑夜夜射夜夜干| 熟妇人妻不卡中文字幕| 大香蕉久久网| 国产一区二区在线观看av| a 毛片基地| 亚洲成av片中文字幕在线观看| 国产成人91sexporn| 秋霞在线观看毛片| 久久精品国产亚洲av涩爱| 亚洲欧洲国产日韩| 午夜91福利影院| 人妻一区二区av| 色吧在线观看| 亚洲成人一二三区av| 人人妻人人澡人人爽人人夜夜| 精品午夜福利在线看| 久热爱精品视频在线9| 91精品三级在线观看| 亚洲伊人久久精品综合| 欧美日韩国产mv在线观看视频| 久久久国产欧美日韩av| 男女边摸边吃奶| 9色porny在线观看| 18禁观看日本| 亚洲国产日韩一区二区| 亚洲伊人久久精品综合| 最近2019中文字幕mv第一页| 免费看不卡的av| 精品久久久久久电影网| 亚洲精品日本国产第一区| 91精品三级在线观看| 桃花免费在线播放| 国产无遮挡羞羞视频在线观看| 国产伦人伦偷精品视频| 久久久久人妻精品一区果冻| 18禁动态无遮挡网站| 精品国产一区二区三区久久久樱花| 中文精品一卡2卡3卡4更新| 激情视频va一区二区三区| 19禁男女啪啪无遮挡网站| 久久99热这里只频精品6学生| 精品少妇黑人巨大在线播放| 中文字幕av电影在线播放| 美女高潮到喷水免费观看| 啦啦啦视频在线资源免费观看| 久久久国产精品麻豆| 午夜91福利影院| 欧美日韩一区二区视频在线观看视频在线| 免费日韩欧美在线观看| 亚洲精品自拍成人| 在线观看www视频免费| 亚洲天堂av无毛| 久久久久久久国产电影| 少妇人妻久久综合中文| 精品国产一区二区三区四区第35| 国产亚洲最大av| 亚洲国产精品999| 午夜免费鲁丝| 亚洲av日韩精品久久久久久密 | 一区二区三区乱码不卡18| 中文字幕人妻丝袜制服| 女性被躁到高潮视频| 男女下面插进去视频免费观看| 日韩 亚洲 欧美在线| 欧美日韩成人在线一区二区| 欧美日韩亚洲高清精品| 国产成人免费观看mmmm| 秋霞伦理黄片| 精品一区二区三区av网在线观看 | 中文字幕最新亚洲高清| 男女床上黄色一级片免费看| 男男h啪啪无遮挡| 免费高清在线观看日韩| 久久久久网色| 国产精品国产三级专区第一集| 999精品在线视频| 欧美日韩福利视频一区二区| 男女午夜视频在线观看| 国产精品三级大全| 99国产精品免费福利视频| 中文字幕av电影在线播放| 天天添夜夜摸| 在线 av 中文字幕| 午夜日本视频在线| 老汉色∧v一级毛片| 亚洲美女视频黄频| 欧美97在线视频| 久久ye,这里只有精品| 国产精品二区激情视频| 好男人视频免费观看在线| 51午夜福利影视在线观看| 九色亚洲精品在线播放| 亚洲,欧美精品.| 多毛熟女@视频| 亚洲视频免费观看视频| 一区二区三区四区激情视频| 一级毛片黄色毛片免费观看视频| 国产片特级美女逼逼视频| 午夜日本视频在线| 狠狠精品人妻久久久久久综合| 最新在线观看一区二区三区 | 欧美激情 高清一区二区三区| 亚洲 欧美一区二区三区| 午夜福利在线免费观看网站| 美女国产高潮福利片在线看| 91国产中文字幕| 九九爱精品视频在线观看| 国产成人精品无人区| 侵犯人妻中文字幕一二三四区| 91国产中文字幕| 亚洲美女搞黄在线观看| av网站在线播放免费| 久久亚洲国产成人精品v| 久久青草综合色| 美女脱内裤让男人舔精品视频| 丝袜脚勾引网站| 欧美精品一区二区免费开放| 九九爱精品视频在线观看| av又黄又爽大尺度在线免费看| 另类亚洲欧美激情| 在线观看免费高清a一片| 制服丝袜香蕉在线| 丰满饥渴人妻一区二区三| 视频区图区小说| 国产又爽黄色视频| 亚洲欧洲精品一区二区精品久久久 | 超色免费av| 久久久久久人妻| 成年女人毛片免费观看观看9 | 久久久国产精品麻豆| 免费日韩欧美在线观看| 两性夫妻黄色片| 亚洲少妇的诱惑av| 国产片内射在线| 精品酒店卫生间| 中文字幕精品免费在线观看视频| 这个男人来自地球电影免费观看 | 色综合欧美亚洲国产小说| 亚洲,欧美精品.| 丝袜美足系列| 欧美精品一区二区大全| 女人被躁到高潮嗷嗷叫费观| 精品午夜福利在线看| 免费在线观看完整版高清| 精品卡一卡二卡四卡免费| 纵有疾风起免费观看全集完整版| 亚洲精品中文字幕在线视频| 爱豆传媒免费全集在线观看| 国产成人一区二区在线| 午夜福利影视在线免费观看| 亚洲人成电影观看| 久久精品国产a三级三级三级| 国产激情久久老熟女| 老汉色av国产亚洲站长工具| 亚洲自偷自拍图片 自拍| 欧美亚洲 丝袜 人妻 在线| 国产深夜福利视频在线观看| 免费av中文字幕在线| 亚洲久久久国产精品| 国产99久久九九免费精品| 精品人妻熟女毛片av久久网站| 亚洲 欧美一区二区三区| 国产免费现黄频在线看| 午夜91福利影院| 麻豆av在线久日| 男人舔女人的私密视频| 成人三级做爰电影| 看免费成人av毛片| 热99国产精品久久久久久7| 香蕉国产在线看| 精品亚洲成国产av| 激情五月婷婷亚洲| 男女床上黄色一级片免费看| 国产av国产精品国产| 色94色欧美一区二区| 久久久久国产一级毛片高清牌| 亚洲欧美一区二区三区久久| 欧美最新免费一区二区三区| 色视频在线一区二区三区| 国产伦理片在线播放av一区| 丰满迷人的少妇在线观看| 人人妻人人爽人人添夜夜欢视频| 亚洲精品久久午夜乱码| 另类亚洲欧美激情| 国产精品女同一区二区软件| 19禁男女啪啪无遮挡网站| 欧美人与性动交α欧美精品济南到| 久久久久久久国产电影| 最近最新中文字幕免费大全7| 欧美在线黄色| 国产片内射在线| 国产精品二区激情视频| 夫妻午夜视频| 久久亚洲国产成人精品v| 综合色丁香网| 伦理电影大哥的女人| av国产久精品久网站免费入址| 狠狠婷婷综合久久久久久88av| 女性被躁到高潮视频| 麻豆av在线久日| 免费看av在线观看网站| 又大又黄又爽视频免费| 国产亚洲精品第一综合不卡| av网站在线播放免费| 国产精品国产av在线观看| 综合色丁香网| 午夜福利免费观看在线| 亚洲综合精品二区| 欧美精品一区二区大全| 亚洲欧美激情在线| 日本午夜av视频| 久久精品国产a三级三级三级| 国产一区亚洲一区在线观看| av视频免费观看在线观看| √禁漫天堂资源中文www| 欧美黄色片欧美黄色片| 亚洲精品久久午夜乱码| 亚洲av电影在线进入| 国产精品熟女久久久久浪| 日韩人妻精品一区2区三区| 国产亚洲av高清不卡| 91aial.com中文字幕在线观看| 国产欧美日韩一区二区三区在线| 亚洲美女视频黄频| 欧美精品高潮呻吟av久久| 国产成人啪精品午夜网站| 国产伦理片在线播放av一区| 啦啦啦在线免费观看视频4| 国产高清不卡午夜福利| 国产老妇伦熟女老妇高清| 日韩人妻精品一区2区三区| 妹子高潮喷水视频| 日本一区二区免费在线视频| 一个人免费看片子| 男女国产视频网站| 亚洲精品美女久久av网站| 亚洲国产欧美网| 男女免费视频国产| 秋霞在线观看毛片| 操出白浆在线播放| 亚洲欧美色中文字幕在线| 久久久久精品国产欧美久久久 | 精品国产乱码久久久久久小说| 日日啪夜夜爽| 国产成人啪精品午夜网站| 亚洲成人av在线免费| 国产精品一二三区在线看| 777米奇影视久久| 日韩熟女老妇一区二区性免费视频| 亚洲三区欧美一区| av网站在线播放免费| 欧美最新免费一区二区三区| 国产无遮挡羞羞视频在线观看| 亚洲国产中文字幕在线视频| 美女脱内裤让男人舔精品视频| 黄色 视频免费看| av一本久久久久| 精品免费久久久久久久清纯 | 香蕉丝袜av| 蜜桃国产av成人99| 欧美少妇被猛烈插入视频| 亚洲第一区二区三区不卡| 久久人人97超碰香蕉20202|