2009年11月18日

Lean Software Development的七個原則與管理觀念

在agilesoftwaredevelopment.com看到一篇Seven Principles of Lean Software Development才知道原來Agile Software Development和日本製造的JIT有這樣的淵源關係. 依據作者的說法:日本最賺錢的汽車製造商Toyota運用JIT(Just-in-Time)在生產製造上大幅領先同業. Taiichi Ohuno(大野耐一)-JIT創始人,寫了多本相關JIT的書, 最有名的Toyota Proudction System,成為美國Lean Manufacturing的基礎. 在軟體產業上, 則啟發了Lean Software Development(精簡軟體開發)的觀念, 而Lean Software Development醞釀了Agile Software Development Method的兩個分支ScrumCrystal Clear.
















在Lean Software Development中以
Mary and Tom Poppendieck著的書最有名.
在他們著的書中 "Implementing Lean Software Development - from Concept to Cash"(Mary and Tom Poppendieck著作)提出7個實作Lean的原則, 呼應JIT的觀念, 且反應軟體開發的特質. Lean Software Development背後的想法是: 讓客戶在還沒有清楚資訊以供做正確的決定前, 儘量延後"定型". 不過只要客戶一提出要求, 開發團隊可迅速做出客戶所要的, 在客戶來不及改變主意前出貨給他. 這個作法, 就如我們線上一下單購物, 隔天東西就寄來了, 大多收貨者都不會說要退貨或做任何變更.

這七個Lean的原則是:


1. 避免浪費


JIT的「徹底的なムダの排除」(徹底排除浪費), 只要在客戶看來沒有任何附加價值的過程或產出都被視為浪費. 軟體開發的七浪費:
  • Particaly Done Work (開發過程中的預先完成品)
  • Extra Processes(以文件中心來管理的開發最容易有這種現象)
  • Extra Features(應該只開發客戶要的功能)
  • Task Switching(每人應一次只專心完成一件事)
  • Waiting(等待指示或簽核, 等待資訊..)
  • Handoffs(換手的過程一些默認的知識很有可能跟著遺失)
  • Defects(無法馬上測到的問題)
實行重點:
  • 結合市場與技術領導 -整合市場與技術的專家才有可能激發出先進創新的產品. 你必須了解什麼是對你的客戶有價值, 以及你擁有或可以採用什麼技術來實現.
  • 僅聚焦於價值鏈- 小心過分的流程改造, 確定這些流程是你必須的, 你應該聚焦在可以創造價值的流程. (想到軟體專案界常講的CMMI嗎? "裁適"應該比"完美"來得重要)
  • 精簡程式碼 - 越多程式碼相對需要越多的測試,如此增加工作量. 所以如果有的功能沒必要, 就不要浪費時間在上面.
由上看來, 也許我們可以想想自己的團隊是否有以下的問題:
  • 是否有例行的報表, 會議, 或文件但無濟於價值創造呢?
  • 每個人寫的codes在專案範疇內嗎?
  • 需求分析有切中要領, 規劃出真正對客戶有價值的東西嗎?
  • 是否能將工作儘量獨立切分, 平行運作, 避免相依?
  • 如何從coding的品質要求, 即早發現瑕疵?
  • 團隊溝通是否要跑很冗長的流程, 有辦法達到如神經組織般的溝通效能?

2. 增強學習能力

軟體開發這途需要不斷精進技術, 也面臨團隊和專案的scale挑戰, 客戶需求變更的不確定性, 和是否熟悉domain know-how的問題. 所以
  • "增強學習能力"是改善軟體開發競爭力的最佳法門.
  • 避免累積瑕疵, 最好是控管coding的品質或一寫好馬上測試
  • 與其寫很多文件或做詳細的計畫, 不如儘快寫code跟做個build來測試一下想法是否行得通
  • 客戶需求的收集與整理應簡單明瞭,建議以screens的方式與終端使用者討論需求
  • 運用短的開發循環週期(short, full-cycle)來加速學習過程--短週期指的是一個星期到一個月的週期, 每個週期都應做出working software, 週期應包含重構(refactoring)和整合測試(integration testing)
  • 簡短且多次地和客戶溝通, 讓開發者與客戶雙方頻繁的對話, 可清楚釐清現階段應投入的功夫(efforts), 以及未來改進的方向. 客戶可以就每次開發團隊完成的結果更明確給與意見, 開發者也可在多次客戶回饋中更釐清domain know-how以及如何做才能滿足客戶.
實行重點:
  • 建立有設計能力的建築團隊 - 開發團隊的領導者必須能傾聽團隊成員的聲音並聰明提問讓所有成員有辦法很快地自己找答案或解決問題, 或醞釀更新更好的解決方法- 創造一個可以讓人們在工作中持續改善的環境, 他們應該被知會沒有最完美的, 永遠有更好的方法, 且一定要不斷改善別無他途.
  • 培訓問題解決技巧 -開發團隊應該像小的研究單位, 其應該有辦法建立假設, 然後快速執行實驗求證.
由上看來, 也許我們應考慮一下:
  • 團隊是否做daily build?
  • 如何控管coding的品質? 個人能力和自我把關? 有coding style的check或輔助工具?
  • 如何才能即時方便地有記錄地和客戶討論需求, 報告進度, 或做需求變更, 瑕疵回報,文件分享並讓所有參與者知悉呢?
  • 如何才能切出可掌控的工作大小, 排出有效的開發循環週期, 而其中的refactory和integration testing的準則和方法又是什麼?
  • 如何建立持續改善的機制和環境?

3. 儘量延遲決策

軟體開發不確定的變數很多, 在剛開始時很難預測後面的變化, 所以建議儘量多留活口, 採用options-based approach. 應該根據事實而非根據假設來做決策. 不到清楚明朗, 最後關頭, 都要留多個選項. 另一方法是運用iterative approach(如上述的short, full-cycle), 來應變軟體不可避免的需求變更和機動修正錯誤.

實行重點:
  • 到最後關頭才做無法逆轉的決定 - 你應該要知道往哪裡去但你有可能不知道應走哪條路, 但有可能越走越清楚. 最重要的是要往正確的方向走.
  • 打散依賴度 - 元件的關聯應該越鬆越好, 如此才可以任意的次序來開發.
  • 保持彈性 -所有關鍵決策開發多種解決方案以便能從中挑出最好的. 運用Set Based Development的方法:儘可能拆解"產品生產"為可平行運作的"零件生產", 並清楚定義各零件間的整合介面. 如此您可以多頭同時進行, 每個零件也可有多種生產進行的方法. 到要整合的時候, 您將更清楚如何定義這些零件間的整合介面, 且有多種選擇以做出最佳的產品.
建議增加彈性的一些可行方法:
  • 將部分完成的設計資訊分享(不只是團隊內, 也可以權限分級的分享給客戶)
  • 建立團隊每位成員能直接溝通的協同作業機制
  • 建立何時應該做決策的共識
  • 建立如何吸收變更的共識(避免重複, 分散關連, 打包變數, 延遲使用未來開發資源)
  • 致力於重構(refactoring)
  • 採用自動化測試工具

4.
儘快出版

儘快出版的目的是讓您的客戶能在最佳的資訊了解狀態下做最好的決策. 一旦客戶一決策, 您的團隊就能很快提供一個可用的版本. 以市場觀點來看, 越快將沒啥大問題的產品上市讓客戶使用, 可以越早獲得客戶的回饋, 併入下一輪開發排程中. 越短的開發週期, 能越快讓開發團隊從市場獲得即時的資訊, 也讓團隊有辦法快速應變市場的變化. 採取可快速應變後續變動的短週期開發法, 才能降低貿然決策後所遇到客戶或市場需求轉向所造成的衝擊.

實行重點:
  • 以小批生產方式 - 切割專案成多個release cycles,讓每次release間隔不要太長, 保持開發的速度與穩定的開發環境, 如發現窒礙的原因和作法, 請儘量移除.
  • 就資源安排適量工作 - 儘量減少排隊等待的工作(在一兩個iteration後來做還可以), 建議如果要排很久才會輪到的工作, 可以考慮直接排到下一輪, 且如果自己的list裡還有等待自己完成的工作, 就應該拒絕接新的工作.
  • 聚焦 cycle time而非利用人力到最大限度 - 在排程中應該將工作切割成小量, 儘量減少因需時太長而看不到工作完成日的問題. 請降低每一iteration的需時, 將每個工作範圍切少一些, 減少排隊等待完成的工作.

5. 授權與尊重

相較傳統的命令式管理, Work-out技巧已被很多有經驗的經理人證實, 反過來做的成功率比較大, 讓你的組員深入參與並決定怎麼做比較好, 自己給commitment, 經理人僅提供如何加強或改進的建議. 如果回顧管理的歷史(請參考
Mary Poppendieck走過歷史的演說 The role of leadership in software development), 團隊成員不應只被當reources(資源)看待, 並不是給成員工作的list, 然後就可以完成. 激勵(Motivation), 知道為什麼而做, 以及時常的溝通, 讓成員知道所有相關工作者正在發生什麼事, 對於整體的工作士氣會有很大的幫助. 另外, Lean Software Development很鼓勵讓開發者直接面對客戶,如此開發者對於domain kow-how, 以及自己到底為什麼而做, 會有更深的感觸. 而團隊領導者應提供所有團隊成員應有的支援和幫助, 以克服困難, 維持團隊的合作默契和士氣. 至於所有的團隊成員, 應該給與他們在什麼情況下如何應付的經驗分享和培訓, 已幫助他們做正確的決定.

實行重點:
  • 訓練團隊領導者和專家- 訓練你的團隊領導者和專家, 讓他們有能力分享他們的專業, 訓練組員, 建立可實行Lean的環境.
  • 將責任與決策權轉移到有可能的最底層- 讓你的人自己思考和決定, 他們應該知道如何運用複雜的演算法或運用完美的軟體架構來寫程式與運用完美的軟體架構.
  • 加強工藝的自豪感 - 鼓勵團隊成員熱情的參與他們所有的執行工作與方法

6. 整體經驗

客戶對於軟體的感覺不是只有產品本身, 而是整體產品經驗(integrity), 一種是perceived integrity, 包含產品如何行銷, 出貨, 上線, 接觸, 直覺反應, 價格, 和問題解決經驗. 這是客戶不會告訴你的需求, 需要團隊本身細膩的市場觀察. 另外一種是conceptual integrity, 指系統每一零件的運作和合起來運作的在彈性度, 維護度, 效能, 回應效率等整體狀況是否協調,達到某一定的水準. 要達到令顧客滿意的程度一方面要靠對於問題領域有深度了解的基礎, 一方面要能同時快速解決, 而非要按順序一個一個解決. 所需的資料與其要等全部完整寫成一大篇文件或開冗長的會議,不如持續不斷的雙向溝通, 每次溝通的資訊可以是短短的,不浪費太多時間的. 儘量避免長久隔離後才一次給與大量資訊的方式, 這會讓雙方的溝通充滿挫折感, 也較難給客戶好的整體經驗.

實行重點:
  • 順暢詳細的資訊流 - 建立客戶, 使用者, 開發者間快速同步溝通的聯絡網. 正如Agile強調: Customer collaboration over contract negotiation.
  • 與人同步前的品質保證 - 為了讓你的軟體達到高品質, 你應該在一行程式都還沒寫之前就開始操心, 如果你是等到要與別人同步時才開始操心, 會很慘的.
  • 自動化 - 強調及早, 經常, 全面性的測試. 所以如果能夠自動化test, build, deploy,只要是例行作業都能自動化, 將有助於提昇 integrity.
  • 重構(Refactor) - 將程式碼複製降到"零"-每次運用程式重構, 測試, 或文件來降低複雜度

7.系統思考

如果我們去觀察大多數的管理理論, 多強調工作拆解後被分析出來的個個元素的最佳化. 但Lean thinking認為如果你從局部來做最佳化, 常常導致整體的次等化. 為何會這樣? 作者舉例, 如果你想要最佳化測試資源的運用, 那麼你將降低一定時間內整體產生測試過且可用code的數量. 此外, 就算你傾全力來降低個人的瑕疵, 還是避免不了一個有名的事實-80%的瑕疵來自系統工作方式, 也就是管理上的問題. 欲避免這樣的問題, 建議應該去鼓勵人與人之間的溝通協調, 著重"我能影響什麼"而非"我能控制什麼". 由高於"個人"一層來觀察, 如去看整個團隊的瑕疵數量, 而非去探討個人的瑕疵數量. 改善的方式與結果評量也以整體表現來考量. 要求系統思考的原因是: 作者發現加強個人並不會真的提高整體表現, 但發覺如果是整個團隊一起探討改進, 修改系統工作方式, 整體表現可以很顯著的提昇.

實行重點:
  • 聚焦於整體的價值鏈 - 專注於贏得整體的比賽, 不要只看到每個局部的改善, 要從整個組織產品整體來考量最佳化.
  • 完整的出貨 - 整個團隊需要好的領導也需要好的工程師, 業務, 市場專家, 助理秘書...全部合起來以最好產品和服務呈獻給客戶.

總而言之, Lean的基本想法是如果開發者能被尊重且互相有效的溝通協調, 這群開發者就比其他團隊更有可能做出好的產品來滿足客戶---- 聚焦人本與溝通協調.


如果你看上面那7個原則感覺還不夠的話, 建議看看Mary Poppendieck走過歷史的演說 The role of leadership in software development 應該可以更清楚了解整個Lean概念的啟蒙, 以下擷取幾張片段, 看過後應該有更深的感觸.


1. 對於傳統的MRP模式, 作者認為這不是working hard就能100%達到規劃好的進度.
沒有所謂的SOP, 只有how to constantly improve the way to get work done.




















2.第一個提出Perl管理專案概念的Polaris專案成功的原因並不歸功於Perl, 而是以下幾點:















3. 發現Mission Critical Job能夠成功做到不危及生命的Mind Set是:









<





4. US Army 發覺戰勝的Leadership應該是給mission command而不是detailed command. 重點在delegate(委派), 如果你要讓人發揮他的價值, 就要授權讓他思考判斷. 主要讓他知道What need to be achieved, 而不是What to do.

















5. 整個組織要訓練expert能分享他的經驗, 教育其他人, 在產品Concept到Cash的階段, 是個不斷Technology與Marketing marriage的collaboration和創造, 與知識的創造和分享.
















6. 你要找的是認知自己在建教堂的工人, 而不是認為他在切石頭或填飽肚子的工人.













參考資料:

Youtube: The role of leadership in software development

agilesoftwaredevelopment.com Seven Principles of Lean Software Development

Lean Software Development

Wikipedia: JIT生産システム

Wikipedia: Lean software development




2009年8月6日

Tom DeMarco的Software Engineering: An Idea Whose Time Has Come and Gone? 摘要與感想

在Google搜尋時, 剛好在網路上看到Tom Demarco於2009 IEEE 七八月刊的作品: Software Engineering: An Idea Whose Time Has Come and Gone? 很欣賞他連之前的自己都可以否定的勇氣. 我相信越有名, 要說自己以前是錯的越困難.

他在此文對於自己1982年寫的Controlling Software Projects: Management, Measurement, and Estimation(Prentice Hall, Yourdon Press出版),這本啟蒙軟工專案計畫與度量發展的重要作品, 重新評價:
"Do I still believe that metrics are a must for any successful software devleopment effort? My answers are no, no, and no."

還自己說這本書所傳達的message有誤:
"The book's deep message seems to be, metrics are good, more would be better, and most would be best. Today we all understand that software metrics cost money and time and must be used with careful moderation."
"The book's most quoted line is its first sentence: You can't control what you can't measure. This line contains a real truth, but I've become increasingly uncomfortable with my use of it. Implicit in the quote(and indeed in the book's title) is that control is an important aspect, maybe the most important, of any software project. But it isn't. "

他從專案的本質:一個投百萬可賺1.1百萬的案, 和一個投百萬可賺50百萬的案相比, 獲利能力低的案子相對需要較高的control才能成功, 來說明並非每個案子都要一樣的control程度. 那是否獲利低的案子反而要花更多錢跟時間去做measurement, 那利潤不就更低了. 這是做低獲利案的惡性循環. 也回歸到business model的問題, 為什麼要接這樣低利潤的案子?

另一方面, 他也提出人的品質是無法度量的, 你可以度量honor, dignity, discipline, personality, grace under pressure, values, ethics, resourcefulness, loyty, humor, kindness這些嗎? 但事實上這些都深深影響到專案的performance. 所以DeMarco建議要做好專案就回歸人,時間和資源的管理. 在管理的方法上,雖然他很謙虛的說他沒什麼資格來建議軟體開發要用什麼方法, 不過他提倡agile的概念.

雖然他一再說度量, 可預測不是最重要的, 但仍相信軟體開發仍需要工程化, 但不要把on time和on budget當成最高準則. 那什麼是最重要的呢?
"The more important goal is transformation, creating software that changes the world or that transforms a company or how it does business."

我相信這是DeMarco殷切想讓大家不斷去回歸本質想"為什麼我要做這個專案?", "怎樣才能把事情做好?" 而不要因為要達到某專家說的最高境界, 而投入大量資源只為生出很多度量報告, 但忘了去評估做這些報告之於"原始目標" 幫助有多大? 哪些是必要的? 又哪些沒有必要?

如果Google當初是選擇運用搜尋引擎的技術接專案的方式, 今天大概沒有人知道Google是什麼吧. 這應該就是DeMarco在這篇文章一直強調的what is important.

最後, 不相關話題, 但相關Mr. Tom DeMarco
推薦DeMarco "最後期限"的專案管理的小說 有深度又很有趣!

2009年7月24日

宜蘭南方澳的內埤海灘

最近到宜蘭玩, 天氣熱得很, 我和老公找了家冰店解暑. 我們坐到冰店最裡面那桌, 牆上有一張大大的宜蘭蘇澳花蓮區的旅遊地圖. 正在看著地圖討論要去哪裡玩時, 老闆娘建議我們一定要去內埤海灘, 那是當地人才知道的美麗海灘.

內埤海灘在南安國中旁, 很驚訝有個學校的學生, 每天上課就可以看到一大片藍藍的太平洋.
一邊打籃球還可以一邊看海

在沙灘上擺個迷你巨石陣

自行開車:
  1. “國道”五號:由“國道”一號(中山高)至汐止系統交流道轉走“國道”五號(北宜高速公路),過雪山隧道由蘇澳交流道下往臺9號方向行駛,往南方澳方向約4公里延內埤漁港內埤路右轉至南安中學即可到達內埤海灣風景區。
  2. “國道”五號:由“國道”三號(二高)至南港系統交流道轉走“國道”五號(北宜高速公路),過雪山隧道由蘇澳交流道下往臺9號方向行駛,往南方澳方向約4公里延內埤漁港內埤路右轉至南安中學即可到達內埤海灣風景區。

搭乘大眾運輸:
  1. 火車:搭乘北回線火車至蘇澳火車站再步行前往即可到達內埤海灣風景區。
  2. 客運:由宜蘭搭乘往南方澳的臺汽客運班車,在南方澳進安宮站或南方澳南天宮站、南方澳站下車再步行前往即可到達內埤海灣風景區。

2009年5月27日

iMovie學習筆記:如何輸入影像,剪輯, 插入照片與音樂

這裡我們將利用拍攝好的影片,照片和音樂, 做一個連接汐留, 台場, 與東京展示場的海鷗號路線影片介紹. 這裡採用的是iMovie8.0. 請打開iMovie,選擇"檔案", 這裡您會看到"由攝影機輸入"或"輸入影片", 或"輸入iMovie HD計畫案", 請挑其中一種輸入影片. 如果您有影片存在iPhoto, iMovie會把iPhoto中格式相符的影片輸進iMovie. 輸入的影片將出現在下半部, 上半部為編輯的計畫案, 影片輸入後, 請到"檔案"選擇"新增計畫案", 如果你的影片來自Keynote的輸出, 請將此計畫案的大小設定為標準size-4:3. 計畫案為你可以加圖, 加說明文字, 加音樂, 剪輯下面的影片並抓入計畫案再做剪接的地方. 最近剛好去日本東京拍了坐海鷗號的行車影片, 也拍了一些照片,以下就運用這些素材坐個影片囉. 計畫案稱為"Ride with ゆりかもめ". 起頭, 放一些照片, 介紹海鷗號路線與景點, 然後加入片段行車影片. 加入照片的方法, 只要點中間靠右的照相機icon, 將會於右下秀出iPhoto的相片, 將相片拉到計畫案編輯區, 當照片拉到編輯區時, 將看到一條直立的紅線, 紅線所在地, 即為相片插入的位置. 如此照想播的順序插入圖, 可是播放這些圖, 就一張一張全圖變換, 很單調. iMovie提供Ken Burns功能, 可以像Wii播放相片一樣播放圖片. 只要按圖上的升記號 然後右側將有圖的編輯區, 請按Ken Burns, 即可看到起始與結束的框框. 圖將從起始框框中的圖像往結束框框的圖像移動播放. 接下來, 要在影像上加入註釋, 請按中間靠右的"T" icon, 右下區域將出像各種字幕顯示的範例. 只要將想要顯示字幕的範例拖到計畫案編輯的圖中, 將會看到圖的上方出現秒數的對話框框, 將此框框拉長, 則把字幕顯示的時間拉長. 按入此對話框框, 右上區將出現可以輸入字幕的橫條區, 在此寫入註釋即可. 您應該發現上面的圖我已經抓了影片放到照片的後面, 抓影片的方法很簡單, 只要到下半部輸入的影片中, 將鼠標移到要採用的影片起頭, 按住右鍵, 往右拉即會拉出個黃框矩形, 如果矩形所框住的區域未達要剪接的尾部, 只要去拉右邊框線到節錄影片的尾即可. 如何鑑定哪個位置是想要截斷的部份呢? 只要將鼠標移到影片起頭, 在滑鼠右鍵輕點兩下, 您將會看到一條紅線隨著時間往後面的內容移動, 當內容撥到您想要剪接的斷點時, 請記得此紅線的位置, 這裡即是您等下框起來的範圍界線. 框起來後, 只要將鼠標移到框起的部份, 這時鼠標的樣子是一隻手, 請一直按著滑鼠右鍵, 將這整個影片拖到上部計畫案編輯區欲插入影片的地方. 影片中也是可以加旁白喔. 做法與在圖中插入註釋一樣. 您是否看到上圖的計畫案編輯區的影片中, 上方有藍色的秒數對話框?這就是影片插入"T"字幕的結果. 另外, 影片中也許有一小段你想要改成某張圖, 代替原本影片的部分, 只要將圖拉到計畫案編輯區那一小段影片的起頭點, 然後調整那張圖出現的時間, 則會在錄影片播放時, 跳到那張圖的畫面一陣子, 再繼續播放影片. 等一下您看看編輯成果, 在列車行走的影片中插入一張夜間彩虹橋的圖, 即是這種作法. 您每編輯好一些計畫案內容, 隨時可以在內容中任一部分用滑鼠輕點兩下, iMovie即會從這個地方開始播放您做好的內容給您鑑賞一下. 接下來, 我們加入背景音樂, 讓整段影片不會那麼無聊. 加入音樂很簡單, 只要按中間右側的音符(iTunes)icon, 右下部將出現iTunes的所有收藏音樂, 從中挑出想要當背景音樂的那首, 以滑鼠到此按住拉到計畫案編輯區音樂開始唱的部位(同樣的, 也會有紅線清楚顯示可以將此音樂從哪裡起頭), 一放鬆按鍵, 音樂則整首丟進去. 音樂不一定要全部播完, 您可以把鼠標移到音樂的最尾端, 然後一直按著將代表音樂長度的綠色粗線縮回去, 到想要減掉的最後一音的所在地為止. 如果音樂開始放送的時間不太對, 可以先點一整段音樂, 然後運用滑鼠挪動代表音樂綠色粗線的起始位置, 即可變動起唱時間. 有關音樂的大小聲, 請點影片中的喇叭符號進去調整. 您可以把原本錄影的聲音調到最小聲或無聲, 只留背景音樂, 或讓背景音樂在某段影片中有聲音漸漸變小的效果.
如果計畫案中的的影片想要減掉其中一小段, 可以到計畫案中將想減掉的部份框起來, 然後按電腦的delete鍵即可. 製作好之後, 如果你想要分享到YouTube, 只要按上面分享功能, 選YouTube, 填入你的YouTube帳號, 密碼,以及影片的說明, 就可以上傳囉! YouTube也可以讓你上傳後選配樂, 且不會有配樂版權的問題, 所以如果你做的影片僅為了上傳YouTube, 建議也可以不用在iMovie編輯時加配樂, 上傳後再利用YouTube的AudioSwap選一首適合的音樂即可. 不過請注意, 這種方式將去掉原本錄影時所錄下的當場列車行走或講話的聲音, 也就是把原本影片內的所有聲音都替代掉. 結果如下(上傳到YouTube時改名為Enjoy the Trip of ゆりかもめ):

2009年4月8日

Keynote學習筆記6-物件的特效與換頁的特效

物件的特效
Keynote的物件進入與出場的特效以及換頁的特效比Powerpoint多很多也很炫. 不過大多數簡報專家步建議在簡報中加太多引人目不暇給的特效, 以免失焦.

現在就來談物件的特效, 在Keynote中大部分的效果都可以在inspector(i檢閱器)做到, 只要打開inspector, 然後點選幻燈片中想要加特效的物件, 再回到inspector中按物件特效icon-Build Inspector(黃色菱形的小圖),在此有三大類特效, 一類叫Build in(構件進入), 是滑鼠一按物件進入/出現的特效, 另一類叫Build out(構件離開), 是滑鼠一按物件出去/消失的特效, 還有另一類叫Action(動作), 是物件一直這那裡, 不過滑鼠按一下會物件會做個動作, 不會出去或消失. 這些特效可以每個都試試看, 視內容需要來選擇. 較清淡的特效如Appear, Confetti, Diffuse, Dissolve. 較重的特如Shimmer, Sparkle, Blast. 請注意, 時間的長短將影響到進入出去的動作感覺度, 太短看不出動作, 太長又會讓人等得不耐煩. 要配合演講的速度, 適中掌握.


Build in






另一種的物件特效是在同一個固定地方按順序播放的方法, 如每按一次滑鼠則在同一幻燈片的同一個位置換圖. 我們不用inspector, 而是用Smart Builds, 此也有許多種特效可以選, 我比較喜歡用Dissolve的方式.

您只要把圖拉到如底片條的框框內, 到時即可照所放的順序按鍵播放. 也可以運用拖拉的方式將後面的圖拉到前面, 置換順序.

換頁的特效
Keynote的換頁特效同樣的也很多選擇, 可以如將此頁與下頁像骰子隔壁面那樣轉動的Cube, 或像門打開後東西由裡面出來的樣子Doorway, 或像用手翻書的感覺Page Flip. 同樣的, 請打開Inspector(i檢閱器), 然後按左邊算來第二個的大小同心方格的Slide Inspector, 選擇Transision, 再選擇效果


在Keynote 9.0有兩種換頁的效果是Keynote 8.0所沒有的, 且很令人印象深刻
一個是重組


另一個是瞬間移動


我想除了Keynote 9.0有中文介面外, 這兩種效果應該也蠻吸引人的....

2009年3月22日

Keynote學習筆記5-加入串流所有slides的背景音樂與record輸出

看完這篇的內容應該可以讓您完成類似Keynote學習筆記3的影片了....
接上篇, 在Keynote學習筆記4我們已經完成了5個能平順換頁且讓每種花輪流聚焦的slides(幻燈片)
以下我們將嵌入背景音樂,錄製presention, 再輸出成影音檔

11. 嵌入串連整份文件的背景音樂
11-1 仍要打開inspector(i檢閱器), 請挑最左邊的文件檢樂器, 到iTunes去挑背景音樂, 將此音樂檔拉到音訊的配樂框框裡




11-2 到第一頁, 按play播放, 並隨機按滑鼠看看是否換頁音樂仍繼續串流

12. Record motions & music
請按上方Record(錄製)功能icon, 在適當的音樂段落按滑鼠鍵換頁, 到全部播完, 按esc結束音樂(音樂不需要全部播完)

13 現在按play(播放)的話,不需要按滑鼠換頁, 即會依剛剛錄製的順序在音樂流中自動換頁
14 最後, 我們要將這個錄製輸出.
14-1 請到Keynote最上方的"共享"功能選擇"輸出"

14-2 選擇要錄製成的影片種類與大小

14-3 依說明點選下一步到為影片取名, 儲存後此片將可於Mac的影片區找到



欣賞一下吧...這次音樂的段落和Keynote學習筆記3的影片有點不同

p.s. 背景音樂是George Winston的Blossom & Meadow, WINTER INTO SPRING專輯, 轉自購買的CD, 值得購買珍藏(recommend). 照片來自朋友的分享, 很漂亮, 但不知作者是誰, 如果您是作者, 請與我聯絡, 我將把您的網站連結放上去.

Keynote學習筆記4-複製slides與平順的圖片聚焦

接3/21的Keynote學習筆記3

5. 點選3/21做好的三花slide, 按command+D, 每按一次會複製一張slide, 這裡我要複製四張

6. 每張圖的字都可以按上面T 文字框 icon, 然後填入需要的文字完成

7. 在第二個slide, 我們想特別說明左邊的花:鬱金香
7-1 將中間和右邊兩張圖拉小,調位置

7-2 並修這兩個小圖的透明度 (要打開inspector-i檢閱器)

7-3 如此炮製, 中間與右邊的兩個圖變淡了, 並輸入文字

8. 我們可用類似的作法做第三張凸顯中間圖的slide, 和第四張凸顯右邊圖的slide
9. 每頁都調整好且輸入字後, 接下來做每頁的過場效果
9-1 請打開inspector(i檢閱器), 挑選左邊數來第二個icon-幻燈片檢閱器, 挑選"瞬間移動"過場效果

9-2 請到第二~第四的slide, 每個都做同樣的slide過場效果

10. 回到第一張slide,按左上方的Play播放, 只要滑鼠每按一下, 即會看到如Keynote學習筆記3中影片中平順的輪流聚焦秀