2019/01/07
2020/07/18 (增加連結)
第一週
第二週
Project Planning: Scope
Collect requirements
Specification by Example (第十一週補充)
FeatureMap (Starter for free, 2 maps)
Prototyping
prototype可以操作
mockup模擬真實最後產出的樣子 (擬真)
wireframe專注在功能和操作上的示意
Axure RP (Windows / Mac)
Ninjamock: (Cloud) 1 project for free
The Best Mockup & Wireframing Design Tools & Apps for UI/UX Designers in 2017
第三週 ** 放假 **
第四週 (第四組報告)
第五週 (第二組報告)
Project Planning: Schedule
第六週
Project Planning: Cost
第七週
Project Monitoring and Control
Scope control (requirement change)
Schedule control
Cost control
Issue Management
Jira
Redmine
Bugzilla (open source)
Mantis Bug Tracker (open source)
ProjectLibre (open source, Java based; windows, BSD, Mac, Solaris, Linux)
主要功能: Gantt Chart、PERT Chart(network diagram)、Resource Management、Critical Path、Earned Value Management
Trello: Trello是個雲端服務,可以方便進行專案的進度追蹤
第八週
Project Quality Management
第九週
Software Configuration Management
軟體設置管理 (詳參: Software Configuration Management 或 Configuration management)
設置管理 (Configuration management) 又譯為建構管理、配置管理、形態管理或組態管理
在軟體開發的領域裡,設置管理談的是開發過程中程式碼的版本管理、程式碼相關設定的版本管理。所以,當新版本要上線時,所有相關的程式碼是否都正確,相關的環境及資料是否正確。
在ITSM的領域裡,設置管理談的是所有的資訊資產以及資產間關係的管理,當硬體要升級時,可以知道相關會影響的硬體及軟體,以便在變更時能了解及管控相關的影響。與軟體開發相關的部份是當系統新版本要上線時,要了解影響的相關軟體、硬體、資料。
版本管理軟體
檔案層級的版本管控(如:Axure Share 的版本管控),有幾個基本動作 (詳參: WORKING WITH TEAM PROJECTS)
Check Out:編輯前要先check out,別人就不能編輯了
Check In:編輯後要check in,別人才可以check out
Get Changes:看最新的內容
Send Changes:讓大家可以看到我的更動,但是,還沒有要Check in
SVN (Subversion) (詳參: SVN 基本指令教學、Subversion(SVN)概念與工具介紹)
Checkout (下載檔案)
Update (下載更新內容)
Commit (上傳更新到repository)
Copy / Merge (SVN的branch)
Git (詳參: 連猴仔都能懂得的Git入門指南 、30 天精通 Git 版本控管、 為你自己學 Git )
Commit (到本地的 repository)
Push (本地的 repository到遠端的 repository)
Pull (下載檔案)
Conflict
當產生衝突時,需要去解決衝突
Branch / Merge
How to adopt a Git branching strategy
Use feature branches for all new features and bug fixes
Merge feature branches into the master branch using pull requests
Keep master branch up-to-date
第十週
DevOps / Continuous Delivery (CD) / Continuous Integration (CI)
陳胤宏(2014) & 陳易昇(2017)
第十一週
Software Testing (詳參: Software testing)
實例化需求 (補充)
TDD
廖家盛 (2015)
第十二週 (第一組報告)
Project Resource Management
規劃
招募
團隊建立(經營)
Peopleware談到辦公室空間對工作效率的影響,這篇文章也有同樣的觀點: Why open office design makes you less productive
Interruptions & Meetings
Micro-management
Vagueness
Seagull Management
Credit Greediness
Environment — Noises, Motion, Workspace Design…
Scope Creepiness
Product Definition Process
Lack of Consideration to Technical Debt
Tool Multiplicity & Hardware
“How” Documentation
Impossibly Tight Deadlines
Building Amazing Development Teams
Training
Motivation
Responsibilities
People
Implementing Change
Team Management
材料管理
機械設備管理
技術管理
資金管理
第十三週 (第三組報告)
Project Communications / Stakeholders Management
專案溝通管理計畫
需要溝通的內容(要求)、溝通的頻率
溝通的技術
正式、非正式
單向、雙向
書面、口頭溝通 (媒介)
資訊發佈
要注意發佈後的回饋及應對
績效報告
結案
專案關係人管理計畫
專案關係人分析 (詳參: Stakeholder analysis)
影響力(power)、相關性(Interest)
涉入程度
不知情
抗拒
中立
支持
主導
溝通管理
針對不同的利害關係人應該有不同的溝通策略
問題管理
在溝通過程中所發現的問題,必須記錄並決定處理的方式
第十四週
** 不上課 **
第十五週
第十六週 (第五組報告)
Project Procurement Management (詳參: Project procurement management PMBOK Sixth Edition)
制定採購計劃 (Plan Procurement Management)
進行採購 (Conduct Procurements)
管理採購 (Control Procurements)
制定採購計劃
採購過程管理
採購成本分析
採購安全和保密
Build or outsource?
第十八週 期末反思 & 課程建議
一個好的專案經理
6 Essential Project Management Skills They Don’t Teach in School
Delegating
Negotiating
Selecting the right team
Firing someone
Managing up
Responding to change
Good to Great: How to Be the Best Project Manager
Good project managers take care of scheduling, production and communication. Great project managers are deeply involved in building team skills and in tactical execution of strategic vision.
Good project managers stay on track. Great project managers know that the track will have some unexpected curves and can create real-time solutions.
Good project managers worry about how they’ll get everything done. Great project managers know that collaboration, negotiation and problem solving are the keys to a successful outcome.
Good project managers fret over outcomes. The best project managers are highly skilled at problem solving, and know the steps to take to achieve a solution.
Good project managers hire talented teams. Great project managers understand “the art of people,” and know how to utilize each person’s skills the right way at the right time.
TOP 10 QUALITIES OF A PROJECT MANAGER / Top 10 Qualities of a Project Manager / 10 Characteristics Of a Good Project Manager
Inspires a Shared Vision
Good Communicator
Integrity
Enthusiasm
Empathy
Competence
Ability to Delegate Tasks
Cool Under Pressure
Team-Building Skills
Problem Solving Skills
7 Project Management Skills To Master
Leadership
Communication
Time management
Risk management
Planning
Negotiation
Subject matter expertise
6 Essential Skills for Project Managers
Communication
Leadership
Team management
Negotiation
Personal organization
Risk management
How to Hire Great Software Project Managers – Part 1/2: Criteria
Project Management craft
Working knowledge on the topic they are going to manage
Business Acumen (商業頭腦 )
Excellent people skills (no exceptions)
Great culture fit
How to Hire Great Software Project Managers Part 2/2: Recruiting Process
專案管理
Joseph Heagney, 何霖 譯 (2017) Fundamentals of Project Management, Fifth Edition 我懂了!專案管理 經濟新潮社
How to review your team’s software development practices
1) We do not do this
2) We do not need this
3) We do this, but not enough/consistently
4) We do this, but we do not see the expected benefits
5) We do this and see the expected benefits
Practices
Separate Development and Deployment Environments
Use of Version Control
Clear Branching Strategy
Use of a Bug Tracking System
Collective Code Ownership
Continuously Refactoring
Writing Unit Tests
Code Reviews
Build Automation
Automated Tests and Test Automation
Continuous Integration
Continuous Delivery
Configuration Management by Code
Code Documentation
Step by step development process guide
Step by step deployment process guide
Monitoring and Logging
Being aware of technical debt
Good design
敏捷
Hammarberg & Sundén (2014) Kanban in Action (看板實戰:用一張便利貼訓練出100分高效率工作團隊)
Sutherland (2014) SCRUM: The Art of Doing Twice the Work in Half the Time (SCRUM:用一半的時間做兩倍的事)
Jeff Sutherland是Scrum之父
蔡慧蘭 (2014) 敏捷軟體開發方法於台灣資訊服務業之研究 輔仁大學資訊管理研究所碩士論文
範疇、需求
時程管理
品質管理
溫伯格的軟體管理學套書(全4卷) Quality Software Management
Weinberg, Gerald M. (1992), Quality Software Management: Volume 1, Systems Thinking
Weinberg, Gerald M. (1993), Quality Software Management: Volume 2, First-Order Measurement
Weinberg, Gerald M. (1994), Quality Software Management: Volume 3, Congruent Action
Weinberg, Gerald M. (1997), Quality Software Management: Volume 4, Anticipating Change
System Quality
Information Quality
Service Quality
CI / CD / DevOps
Kim, Behr, Spafford (2017), The Phoenix Project (鳳凰專案:看IT部門如何讓公司從谷底翻身的傳奇故事)
陳易昇 (2017) 資訊系統持續整合之障礙:組織與技術觀點 輔仁大學資訊管理研究所碩士論文
陳胤宏 (2014) 資訊系統持續整合應用之個案研究 輔仁大學資訊管理研究所碩士論文
Humble & Farley (2010), Continuous Delivery: Reliable software releases through build, test, and deployment automation (Continuous Delivery中文版:利用自動化的建置、測試與部署完美創造出可信賴的軟體發佈)
測試
廖家盛 (2015) 軟體測試應用現況之探討 輔仁大學資訊管理研究所碩士論文
Project Human Resource Management
Tom DeMarco, Timothy Lister (2014), Peopleware: Productive Projects and Teams, 3rd Edition
黃佩君 (2014) PG Pool團隊結構之研究 輔仁大學資訊管理研究所碩士論文
風險管理
委外管理
陳振文 (2011) 醫院區域聯盟行政電子表單系統委外決策模式之個案研究 輔仁大學資訊管理研究所碩士論文