---
# System prepended metadata

title: PUI 期末報告

---

# PUI 期末報告

## 死線
* 5/12 小組媒合完畢
* 5/21 上傳 proposal
* 6/4 上傳 slide 跟 1 分鐘 demo 影片至討論區
* 6/5 presentation 
* 6/9 Final report 截止

## 規範
* 人數：2~3人
* 題目：不限。以下是一些可能可作為題目的提案：
    1. 建立類似 Wix 的界面構建工具 (interface builder) 工具，讓使用者能夠放置控件並設置其屬性。
        * 這類似於作業二中的圖形編輯器，但調色板包含按鈕、滑塊、文本框和其他 html 輸入元素。
        * 使用者可以選擇「運行模式」和「構建模式」。在運行模式中，使用者可以查看控件運作方式；在構建模式中，則可以拖曳、擺放不同控件。
        * 你也可以提供有趣的方式來指定控件的佈局 (layout)，例如使用 css 屬性而不是僅在固定位置。

    2. 建立原型設計工具，例如 Figma、Balsamiq、Axure 或 Adobe XD。此工具與界面構建工具相似，但不使用任何實際控件，僅支援頁面切換行為。

    3. 使用類似 Google DialogFlow 的工具建立語音、對話或聊天機器人系統。

    4. 使作業中的圖形編輯器更加完整，具有真正的編輯器需要的功能，例如保存和加載、圖像、更改物件大小、置頂或置底、對齊、分組等。
    5. 提供手勢識別庫，方便介面設計者在介面上新增手勢操作功能。例如：
        * J.O. Wobbrock, AD Wilson, Y Li. "Gestures without libraries, toolkits or training: a $1 recognizer for user interface prototypes", In UIST '07, p. 159-168. [ACM DL Ref](https://dl.acm.org/doi/10.1145/1294211.1294238)
    6. 實現 Stephen Oney 的高級輸入處理程式，使得前端工程師可以更容易使用滑動和其他高級手勢，如本文所述：
        * Stephen Oney, Rebecca Krosnick, Joel Brandt, Brad Myers. "Implementing Multi-Touch Gestures with Touch Groups and Cross Events," Proceedings SIGCHI '2019: Human Factors in Computing Systems. Glaskow, UK. May 4-9, 2019. [ACM DL](https://dl.acm.org/doi/10.1145/3290605.3300585) or [local pdf](http://www.cs.cmu.edu/~NatProg/papers/paper355-Oney-CHI2019.pdf). (Best Paper Honorable Mention Award.)
    7. 實作如 3/27 課程簡報 Input-Output-2 中所提及之 Amulet 交互器 (interactors)。
    8. 以 Topaz 系統的風格，在作業 5 中添加選擇性撤消、選擇性重複和腳本（選擇性重複一系列操作）：
        * Brad A. Myers. "Scripting Graphical Applications by Demonstration," Proceedings CHI'98: Human Factors in Computing Systems. Los Angeles, CA, April 18-23, 1998. pp. 534-541. [ACM DL Reference](https://dl.acm.org/doi/10.1145/274644.274716) and [local pdf](http://www.cs.cmu.edu/~amulet/papers/commandsbydemo-p534-myers.pdf) and [video](https://www.cs.cmu.edu/~amulet/videos/Topaz.mp4). (Topaz)
    9. 實作狀態轉換圖編輯器 (state transition diagram editor) 和 / 或解釋器 (interpreter)。例如，當使用者畫一張圖，然後進入運行模式時，他可以執行指定的事件，確保事件引起正確的狀態轉換，並透過物件的強調顯示使用了哪些狀態和轉換。
    10. 任何自行設計的網頁應用程式，並且需要較為精細的使用者介面。


## 評分標準

* 組內互評 (10%)

    * 填寫表單給除自己以外的組員評貢獻分數：0 ~ 10 分
    * 自己所獲得的平均貢獻分數即為最終分數
    
* 組間互評 (10%)
    * 依照每組獲得的組間互評分數排序後，以最低 5 分最高 10 分等差給分
* 報告 (Report) 分數 (50%)
    * Proposal　(10%)
    * Final report (40%)
* 期末發表 (Presentation) 分數 (30%)

## 成果繳交細節
### 組別媒合
* <font color="#f00">**截止日期：2023/05/12 下午 23:59 (UTC+8)**</font>
* 找好組員者請填寫[分組表單](https://forms.gle/QHxjDTe5Ciqm2TmK9)
* 媒合方式：
    * 助教將於 NTU COOL 討論區開媒合專區，想尋找組員者可於下方留言
    * 留言格式：
        * 姓名、學號
        * 想做的題目
        * 聯絡方式
* 截止時沒有組別的學生將由助教隨機分組

### 專題一頁 Proposal 繳交規範
* <font color="#f00">**截止日期：2023/05/21 下午 23:59 (UTC+8) 繳交至 NTU COOL**</font>
* <font color="#f00">**每一組僅需繳交一份**</font>
* **格式**：標楷體 or Times New Roman 12 號字，單行間距， 1 頁， pdf
* **Proposal 內容**：
    * **標題**：
        * 格式：網站名稱：長標題
            * 網站名稱：請簡短並須具與主題相關之意義
            * 長標題：一個簡短的句子，敘述你們正在做的內容
    * **組員名單**
    * **專題題目內容**：
        * 請對你們進行的題目進行全面的解釋，包含打算實作那些功能、可能的目標使用者及粗略解釋你們打算如何實作。
    * **使用平台 / 語言 / 框架**：
        * 你們正在使用的平台，包括使用的語言和框架（例如，你們會使用純 JavaScript、React.JS 或其他）；此外，也需說明你們是從你們的作業、開源項目還是從頭開始開發的；同時，也請列出你將使用的工具（例如，D3、DialogFlow、VoiceFlow等）及插件，例如 React 函式庫，或其他從 npm 中獲得的東西。
    * **分工方式**：
        * 請提到你們如何將工作分配給小組成員（誰會負責哪部分）
    * **參考資料**：
        * 如果你們正在建立一個現有研究論文的基礎上，或正在製作與其他商業系統相似的東西，請提供一些參考文獻，以顯示你對相似或相關的其他研究有所了解。 
        * 如果你正在現有系統的基礎上建立，這些內容可以放在上面的「使用平台」主題中。

### Presentation 繳交
* <font color="#f00">**截止日期：2023/06/04 下午 23:59 (UTC+8) 上傳至 NTU COOL討論區**</font>
* 請各組別開啟一個以你們的 **Proposal 網站名稱** 為主題標題的討論文章（除非於 proposal 後發生必須大幅改變主題的情況），並上傳下列文件/連結：
    * 你們的投影片　（pdf 或/與 連結）
        * 投影片內容請看[下一段](#Presentation詳細內容)
    * 實作網站URL （如果有的話）
    * 簡短示範影片( Youtube link )
        * 時間請在 30 秒~ 1 分鐘左右
        * 請在示範影片內大約展示你們實作的主要功能，供同學了解你們實作的網站/工具的目標與大約如何運作。
* 其他組的同學可於討論區下方留言提問，每提問 1 題加 1 分，最多 5 分
* 提問需在 2023/06/07 下午 23:59 (UTC+8) 前提出
* 各組**必須**於 Final report 繳交前回答討論區下方 6/7 前提出的提問（1 題沒回答扣 1 分）

### Presentation詳細內容
* <font color="#f00">**時間：2023/06/05 上課時間**</font>
* 所有組別都將在同一天報告，請同學在報告前先將各組上傳的一分短片先看完
* 每一組的報告應包含**8 ~ 10分鐘**的報告時間與**4分鐘**的QA時間
* 請控制好報告時間並確保你們有時間 demo
* 助教會於8分鐘及10分鐘時提醒
* 報告內容須包含但不僅限以下項目：
    * 標題
    * 成員
    * 簡介：
        * 實作功能
        * 目標用戶
        * 相關研究 / 競品
    * 使用平台 / 語言 / 框架：
        * 與 proposal 相同
    * 使用方法：
        * 提供幾張畫面截圖，簡單描述如何使用你們的網站/工具
    * 技術架構 / 實作方法：
        * 簡單描述你的網頁架構及所使用的演算法等。
        * 例如：假設你有使用後端的話，那你們將什麼資料儲存在哪？
    * 現場演示或網頁操作影片：
        * 請預留時間現場展示你們的成果，並盡可能展示所有的功能。
        * 若是你們認為現場演示沒辦法完整呈現你們的內容(譬如工具需要花費一定的時間處理任務)，你們也可以採用影片與後製的方式(不得造假)，但請確保影片能在報告時間能播放完畢，且影片內容應該要完整、清楚且包含旁白說明。
* 不允許延後報告
* 組別內所有成員於報告當日都應出席
* 若當天現場 QA 時間有提問，請填寫[ QA 表單 ](https://forms.gle/4UXv1kpJUUbeixxr9)加分，加分包含在討論區提問加分內（與 NTU COOL QA 合併總加分為 5 分）
    * 表單內容：
        * 學號、姓名
        * 提問組別
        * 提問問題
        * 回答 
* 當天請填寫[組間互評表單](https://forms.gle/TZiRonf9xvGGkJNh7)，評分各組專題的實作結果，並提供一些改進的意見。
    * 表單內容：
        * 給該組的分數
        * 給該組的文字建議與回饋

### 書面報告內容
* <font color="#f00">**截止日期：2023/06/09 下午 23:59 (UTC+8) 繳交至 NTU COOL**</font>
* <font color="#f00">**每一組僅需繳交一份**</font>
* **格式**：標楷體 or Times New Roman 12 號字，單行間距， 5 ~ 10 頁， pdf
* 報告內容須包含但不僅限以下項目：
    * **標題與作者**：
        * 請維持同樣的網站名稱（除非於 proposal 後發生必須大幅改變主題的情況）。
        * 你們的長標題可以與 proposal 不同。
    * **Github連結及網站URL**：
        * 請將所使用的程式碼全部上傳到 Github 上並提供我們可使用的連結。
        * 若你們有將網站架設在網路上，也請提供給我們連結。
        * <font color="#f00">**這應該要放在你們報告的開頭**</font>。
    * **範例影片連結**：
        * 請錄製一部影片(可以與你們在報告時使用的是同一部)，完整展示你們的系統如何運作。
        * 影片中應包含旁白說明畫面內容，並上傳至youtube。
        * <font color="#f00">**這應該要放在你們報告的開頭**</font>。
    * **簡介**：
        * 簡短描述你們做了什麼，並特別指出你們的專題有沒有什麼創新及有趣之處。
    * **相關研究 / 競品分析**：
        * 請介紹與你們的專題有關的研究，或是現今市場內已經存在類似的系統。
        * 稍微討論其與你們的專題有何相同/不同之處，並適當的引用方便我們了解你們參考的資料。
    * **安裝指南(須包含使用平台 / 語言 / 框架)**：
        * 請具體說明：
            * 從你們的 Github 下載程式碼後，我們需要做什麼才能使你們的專題運作？
            * 是否需要下載其他函式庫或工具？
            * 是否有要求放置所有檔案的位置？
        * 提示：我們強烈建議你們向不在你們團隊中的人提供你們的說明，以測試是否一切正常，並確保你們沒有漏掉任何細節。如果第一次無法正常運行，我們將扣除分數！
    * **詳細使用說明 / 文件 (包含截圖)**：
        * 請配合截圖詳細說明你們的系統中的每個元件，以確保使用者能夠完整理解每個部份要如何使用。
        * 同上，我們建議你們在繳交前提供給不在你們團隊中的人測試，以確保你們包含了每個項目。
    * **設計原理**：
        * 請詳細說明：
            * 為何你們最後選擇當前的使用者介面設計？
            * 你們在此之前嘗試了什麼以及該設計為何運作不良？
            * 你們在初始設計到最後做了那些改動？
        * 被否決的設計：如果你嘗試過某些事情或者有早期的設計但是被放棄了，或者你改變了想法，請描述這些設計以及為什麼決定不使用它們。
        * 提示：你們可以在一開始討論時粗略繪製你們的使用者介面原型( prototype )與流程圖( workflow )，並與最後的介面與流程圖做對比。你們也可以保留你們腦力激盪( brainstorming )時所產生的想法，並解釋最後選擇那些設計的理由。
    * **技術架構 / 實作方法**
        * 請解釋你們的系統背後是如何運作的，例如：
            * 你們使用了什麼演算法？
            * 系統架構如何運用使用的工具與函式庫？
            * 實作過程中遇到的任何困難/障礙。
    * **討論 / 未來展望**
        * 你們的系統有什麼優點？
        * 你們的系統當前有哪些缺陷？
        * 你們沒有完成哪些內容？
        * 如果有人繼續開發系統，你們想像系統最後會如何？
        * 在進行項目時有什麼你們沒有時間探索的新想法？
    * **參考資料**
* 遲交原則：與作業同。請勿遲交。
* 繳交完畢後，請所有組員填寫[組內互評表單](https://forms.gle/HjKCJG73tMbtw3Lt9)，說明組內的分工情形。
    * 表單內容：
        * 組員姓名
        * 貢獻分數
        * 組內分工

## Final report 助教評分標準
* 題目創意與實用性 (10%)
* UI/UX (美感評分) (10%)
* 技術難度 (50%)
    * 課程教學內容之應用
    * 是否包含後端、資料庫、部屬
    * 額外使用的工具或方法
* 完成度 (30%)

