[chi2010]Apatite: A New Interface for Exploring APIS

source:  Eisenberg, D. S., Stylos, J., and Myers, B. A. 2010. Apatite: a new interface for exploring APIs. In Proceedings of the 28th international Conference on Human Factors in Computing Systems (Atlanta, Georgia, USA, April 10 – 15, 2010). CHI ’10. ACM, New York, NY, 1331-1334. DOI= http://doi.acm.org/10.1145/1753326.1753525

當前的api 文件設計均是由上往下的樹狀結構。這對於複雜的系統來說過於侷限,使用者無法在不知道上層結構的情況找到特定動作相關的資料,如檔案存取。Apatite 則是可以允許使用者在不同的階層中搜尋且根據搜尋引擎的資料來判斷相關性再藉由多欄式的介面呈現。Apatitle 通過了使用性測試,且可以在網路上試用。

諸多程式設計師花費相當多的時間在api文件的查詢上,而龐大的api 庫,像是 .net 或是 java ,有經驗的工程師也無法熟悉每個部份。這使得工程師們經常需要以任務為導向來搜尋api。有些學生會搭配搜尋引擎來找到相關的討論或是範例,但此舉有利有弊,壞處在於仍然參雜了許多不相關的資料進來。

作者提出的 Apatite 有四個特點:

  1. 在一張圖中呈現所有的資訊
  2. 呈現出來的元素都是最常使用的
  3. 選擇了其中一個元素,Apatitie會連著帶出相關的元素
  4. 使用者可以從”動作”或是方法的角度切入api文件,不再是從類別開始

本研究以javadoc 為改造對象。如上圖一所示,一開始會秀出最常見的元素,且用字體大小來表示其常用的程度。點選了一個元素之後,第二欄被帶出,顯示與被選定的元素相關的資料。

每個api元素的熱門程度是藉著透過全名去google所得到的結果排序而來,動作的分組則是根據完整名稱前面的第一個駝峰字是否為動詞,舉例來說: read 出現的頻率 = readInt 的頻率+ readLine 的頻率。兩者的相關性是透過搜尋一個名稱的前一百個結果中,另一個組合元素出現的次數來計算。

作者認為Apatitie 對於api文件的使用性上有諸多貢獻。例如可以幫助api設計者得知最常用的組合為何、相關的元素為何。最後作者提到如果可以一開始透過名詞與動詞兩個類別來展開api文件會對使用者相當有幫助,他們也正在實驗從api文件中拿出動詞的更好作法。

note:

網址在 http://www.cs.cmu.edu/~apatite

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 變更 )

Twitter picture

You are commenting using your Twitter account. Log Out / 變更 )

Facebook照片

You are commenting using your Facebook account. Log Out / 變更 )

Google+ photo

You are commenting using your Google+ account. Log Out / 變更 )

連結到 %s