SlideShare a Scribd company logo
1 of 46
Download to read offline
ANTI PATTERNS
in IT Project Management
Agile Vietnam Conference 2016
Nguyễn Vũ Hưng
2016/10/16, Hà Nội
Agenda
1. Warmup with a real world case study
2. List of anti patterns; my stories
3. Your stories; discussions
4. Q&A
5. Closing
About Myself
1. Nguyễn Vũ Hưng, 1978
2. CTO, Fuji Technology
3. POS:
a. Agile
b. Open Source
c. Project Management
"Nguyen Vu Hung is the CTO of Fuji Technology.He has numerous years of IT and software development, project/product management in
both Japan and Vietnam. Considering himself as a FOSS and Agile evangelist and being a Agile lover and an CTO, he is also interested in
not-so-related domains such as human resource management and (organization) (re)structuring."
facebook.com/nguyenvuhung
vuhung16plus@gmail.com
+84-904-28-7878
2016/09/07, @VJU - Nguyen Vu Hung
Target Audiences
1. CEO, CIO, CTO
2. (IT) Project Managers
3. Project Leaders
4. Team Lead
Design Pattern
“In software engineering, a design pattern
is a general repeatable solution to a
commonly occurring problem in software
design. A design pattern isn't a finished
design that can be transformed directly
into code. It is a description or template
for how to solve a problem that can be
used in many different situations.”
“AntiPatterns, like their design pattern
counterparts, define an industry vocabulary for
the common defective processes and
implementations within organizations. A
higher-level vocabulary simplifies
communication between software practitioners
and enables concise description of higher-level
concepts.”
(Why) Most Software Projects Fail
According to a new research,
success in 68% of technology
projects is "improbable." Poor
requirements analysis causes
many of these failures, meaning
projects are doomed right from
the start (ZDNet)
Project
Failure
Poor
Requirements
Lack of
Supervision
Lack of
Resources
Unrealistic
Expectations
A Word Before We Start
https://www.facebook.com/groups/agilevietnam/permalink/1092577944171737/
Avalance: Mixing Waterfall and Agile
(Quy trình hiệu quả hay quy trình ”chuẩn"?)
99% Rule: It is NEARLY done
(nhưng mãi mãi không bao giờ xong)
Gần DONE, nhưng không CLOSE được, hoặc mãi mãi không close được.
The first 90 percent of the code accounts for the first 90 percent of the
development time. The remaining 10 percent of the code accounts for
the other 90 percent of the development time.[1]
— Tom Cargill, Bell Labs
Gold Plating:
Optimize Beyond the Scope
(nên/cần hay không?)
Scope Creep:
Keep Scope Under Control
Uncontrolled changes or continuous growth in a project’s scope, or adding new features to
the project after the original requirements have been drafted and accepted (also known as
requirement creep and feature creep)
Possible cauues:
1. poor change control
2. lack of proper initial identification of what is required to bring
about the project objectives
3. weak project manager or executive sponsor
4. poor communication between parties
5. lack of initial product versatility
Brooks' Law
Adding more resources to a project to increase velocity,
when the project is already slowed down by coordination overhead.
Vào cuối dự án, càng thêm người dự án càng chậm.
Tester Driven Development
Software projects in which new requirements are specified in bug reports
Để testers lead cuộc chơi là hỏng. Khách hàng/PO hãy dẫn đầu.
Software Bloat: Fat & Heavy
Ví dụ: Windows, ERP.
Triết lý Unix: KISS
Overengineering:
(Spending resources making a project more robust and complex than is needed, tương tự gold plating)
Micromanagement:
Pay(too much) Attention to Details
Hãy để team membes chủ động
Vendor Lock-in:
(FOSS is the Way to Go)
Death by Planning:
(Don’t take too much time on planning. Thay vào đó, thãy tạo value cho sản phẩm/khách hàng)
Too Many Reports
Too Many Meetings
Developers spend too much time answering the concerns of managers and decision makers.
Họp dài nhất: Liên tục 12h
2 tuần qua: Họp liên tục 6h
Analysis Paralysis:
Don’t think, just start any way in an Agile way
Phân tích qua nhiều. Thay vào đó, hãy làm prototype, làm luôn, chấp nhận technical debt và kaizen vào sprints tiếp theo.
Viewgraph Engineering
Too much document, they are interim output that end-users don’t really want
Agile không chú trọng tài liệu bằng giá trị.
Fear of Success
Declare your success! Make your team confident.
Sợ không thành công.
Lo nhiều quá và không bắt đầu.
Suy nghĩ tiêu cực
Irrational Management:
1. Tạm dịch: Bất cập trong Quản lý
2. PM thiếu năng lực
3. Tính (xấu) của người quản lý dự án
4. “Tôi - PM - là người chạy dự án này, chứ không phải cách anh"
5. Độc tài
6. Gây khó chịu, mâu thuẫn nội bộ
7. Có bias (về kỹ thuật, con người, quy trình)
8. Không đưa ra được quyết định
9. Micromanagement là một ví dụ
10. Người lãnh đạo dự án (PM) không gây được ảnh hưởng, không động viên,
khích lệ được nhân viên
Project Mismanagement
1. Tạm dịch: Quản lý sai
2. Quản lý không đúng chỗ, cái cần quản lý thì không quản lý
3. Monitor và controll sai cái cần làm
4. Không priority được cái quan trọng nhất
5. Không nhìn ra được rủi ro lớn nhất (để hạn chế)
Guessworks
1. Vừa làm vừa đoán
2. Đầu vào (tài liệu thiết kế, test, code, yêu
cầu…) không rõ ràng
3. Phải vừa làm vừa đoán
4. Tăng chi phí communication
5. Trao đổi
a. Hệ quả là gì?
b. Phát sinh muda, muri, mura ra sao?
Throw It over the Wall:
The Code is finished (no testing, no documentation)
Technical debt cực lớn
Conway's Law
1. Thiết kế chương trình phản ánh cơ cấu tổ chức
2. Việc ra quyết định phức tạp dần nếu tổ chức phức tạp
3. Luồng thông tin trao đổi trong tổ chức ra sao thì dự án
chạy cũng như vậy
Death March
Chạy nước rút vào phút cuối.
"In project management, a death march is a project where
the members feel it is destined to fail, or requires a stretch
of unsustainable overwork. "
Zoombies
Thành viên nhóm không nói, không hỏi.
Không ai biết họ nghĩ gì, có issue gì, hiểu hay không hiểu.
Hệ quả: Thường là chìm xuồng.
Q&A
ANTI PATTERNS
in IT Project Management
Agile Vietnam Conference 2016
Nguyễn Vũ Hưng
2016/10/16, Hà Nội
REFERENCES
References
1. http://en.wikipedia.org/wiki/Anti-pattern#Project_management
2. AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis
3. http://sourcemaking.com/antipatterns/software-project-management-antipatterns
4. http://www.javagyan.com/tutorials/anti-patterns/software-architecture-antipatterns
5. AntiPatterns in Project Management 1st Edition
Software Development AntiPatterns
● Golden Hammer
● Dead End
● Spaghetti Code
● Input Kludge
● Walking through a Minefield
● Cut-And-Paste Programming
● Mushroom Management
● Golden Hammer
● Dead End
● Spaghetti Code
● Input Kludge
● Walking through a Minefield
● Cut-And-Paste Programming
● Mushroom Management
Software Architecture AntiPatterns
● Software Architecture AntiPatterns
● Autogenerated Stovepipe
● Stovepipe Enterprise
● Jumble
● Stovepipe System
● Cover Your Assets
● Vendor Lock-In
● Software Architecture AntiPatterns
● Autogenerated Stovepipe
● Stovepipe Enterprise
● Jumble
● Stovepipe System
● Cover Your Assets
● Vendor Lock-In
Dark Launching
Dark launching is a technique of "wrapping" the code of
new software features in a way that let you turn them on or
off. Perhaps turning them on and off for all your users, or
perhaps turning them on and off for only a subset of your
users (that meet some criteria).
E-mail Is Dangerous:
Không trao đổi thông tin nhạy cảm qua email.
Trao đổi trực tiếp
Không có log, chứng cứ
Intellectual Violence:
A form of communication breakdown
Đề cập tới một lý thuyết, phương pháp mới mà mọi người không hiểu (không follow được)
Corncob:
My ex-colleague, a difficult person (khó chịu, luôn phản đối, đưa ra ý kiến tiêu cực, tự nâng cao bản thân, ghen tị)
Fire Drill:
Months of boredom followed by demands for immediate delivery
Bình thường không có việc. Nhưng tự nhiên bắt làm luôn và ngay.
The Feud:
Conflicts between Managers
Developers ăn đòn
Endless Development:
Phát triển mãi không xong.
Change is Bad:
Nghĩ rằng Thay đổi (Change, Change Request) là không tốt, muốn stick mà plan/design/requirement ban đầu.
Thực tế: Sản phẩm, thị trường, yêu cầu, mọi thứ luôn biến động thay đổi.
Endless Meetings:

More Related Content

What's hot

ScrumDay Vietnam 2013: PMBOK là Waterfall hay Agile? - Phùng Thanh Cường
ScrumDay Vietnam 2013: PMBOK là Waterfall hay Agile? - Phùng Thanh CườngScrumDay Vietnam 2013: PMBOK là Waterfall hay Agile? - Phùng Thanh Cường
ScrumDay Vietnam 2013: PMBOK là Waterfall hay Agile? - Phùng Thanh Cường
Vu Hung Nguyen
 
ScrumDay Vietnam 2013: Phương pháp luận phần mềm - Truyền thống và Agile - Ng...
ScrumDay Vietnam 2013: Phương pháp luận phần mềm - Truyền thống và Agile - Ng...ScrumDay Vietnam 2013: Phương pháp luận phần mềm - Truyền thống và Agile - Ng...
ScrumDay Vietnam 2013: Phương pháp luận phần mềm - Truyền thống và Agile - Ng...
Vu Hung Nguyen
 
Nhập môn BDD
Nhập môn BDDNhập môn BDD
Nhập môn BDD
Ngoc Dao
 

What's hot (16)

Vuhung xDay4 Định hướng nghề nghiệp cho người làm nghề CNTT
Vuhung xDay4 Định hướng nghề nghiệp cho người làm nghề CNTTVuhung xDay4 Định hướng nghề nghiệp cho người làm nghề CNTT
Vuhung xDay4 Định hướng nghề nghiệp cho người làm nghề CNTT
 
Scrum
ScrumScrum
Scrum
 
Agile scrum
Agile scrumAgile scrum
Agile scrum
 
Đường vào agile - 2013
Đường vào agile - 2013Đường vào agile - 2013
Đường vào agile - 2013
 
Các loại nghề Công nghệ Thông tin - Học gì lương cao
Các loại nghề Công nghệ Thông tin - Học gì lương caoCác loại nghề Công nghệ Thông tin - Học gì lương cao
Các loại nghề Công nghệ Thông tin - Học gì lương cao
 
Phương pháp phát triển phần mềm: Truyền thống và Agile
Phương pháp phát triển phần mềm: Truyền thống và AgilePhương pháp phát triển phần mềm: Truyền thống và Agile
Phương pháp phát triển phần mềm: Truyền thống và Agile
 
Hướng dẫn Scrum
Hướng dẫn ScrumHướng dẫn Scrum
Hướng dẫn Scrum
 
[HanoiScrum.net] Scrum foundation
[HanoiScrum.net] Scrum foundation[HanoiScrum.net] Scrum foundation
[HanoiScrum.net] Scrum foundation
 
Tài liệu đào tạo Scrum
Tài liệu đào tạo ScrumTài liệu đào tạo Scrum
Tài liệu đào tạo Scrum
 
ScrumDay Vietnam 2013: PMBOK là Waterfall hay Agile? - Phùng Thanh Cường
ScrumDay Vietnam 2013: PMBOK là Waterfall hay Agile? - Phùng Thanh CườngScrumDay Vietnam 2013: PMBOK là Waterfall hay Agile? - Phùng Thanh Cường
ScrumDay Vietnam 2013: PMBOK là Waterfall hay Agile? - Phùng Thanh Cường
 
AGILE project management - Quản lý dự án linh hoạt & Ứng dụng trong eCommerce
AGILE project management - Quản lý dự án linh hoạt & Ứng dụng trong eCommerceAGILE project management - Quản lý dự án linh hoạt & Ứng dụng trong eCommerce
AGILE project management - Quản lý dự án linh hoạt & Ứng dụng trong eCommerce
 
ScrumDayVietnam 2012 - Agile tutorial -Tan
ScrumDayVietnam 2012 - Agile tutorial -TanScrumDayVietnam 2012 - Agile tutorial -Tan
ScrumDayVietnam 2012 - Agile tutorial -Tan
 
Làm việc hiệu quả với sếp Nhật (2017)
Làm việc hiệu quả với sếp Nhật (2017)Làm việc hiệu quả với sếp Nhật (2017)
Làm việc hiệu quả với sếp Nhật (2017)
 
Agile trong dự án fixed price case study
Agile trong dự án fixed price case studyAgile trong dự án fixed price case study
Agile trong dự án fixed price case study
 
ScrumDay Vietnam 2013: Phương pháp luận phần mềm - Truyền thống và Agile - Ng...
ScrumDay Vietnam 2013: Phương pháp luận phần mềm - Truyền thống và Agile - Ng...ScrumDay Vietnam 2013: Phương pháp luận phần mềm - Truyền thống và Agile - Ng...
ScrumDay Vietnam 2013: Phương pháp luận phần mềm - Truyền thống và Agile - Ng...
 
Nhập môn BDD
Nhập môn BDDNhập môn BDD
Nhập môn BDD
 

Viewers also liked

Beyond project management
Beyond project managementBeyond project management
Beyond project management
Duy Tan Geek
 
The way to set automation testing
The way to set automation testingThe way to set automation testing
The way to set automation testing
Duy Tan Geek
 
Systems thinking - Tư duy hệ thống
Systems thinking - Tư duy hệ thốngSystems thinking - Tư duy hệ thống
Systems thinking - Tư duy hệ thống
The Tai Dang
 
Tu duy he thong
Tu duy he thongTu duy he thong
Tu duy he thong
ptmkhanh
 
Basic & Advanced Scrum Framework
Basic & Advanced Scrum FrameworkBasic & Advanced Scrum Framework
Basic & Advanced Scrum Framework
Vu Hung Nguyen
 

Viewers also liked (20)

CHIẾN TRANH THÔNG TIN VÀ NHIỆM VỤ QUỐC PHÒNG BẢO VỆ CHỦ QUYỀN QUỐC GIA TRÊ...
CHIẾN TRANH THÔNG TIN  VÀ  NHIỆM VỤ QUỐC PHÒNG  BẢO VỆ CHỦ QUYỀN QUỐC GIA TRÊ...CHIẾN TRANH THÔNG TIN  VÀ  NHIỆM VỤ QUỐC PHÒNG  BẢO VỆ CHỦ QUYỀN QUỐC GIA TRÊ...
CHIẾN TRANH THÔNG TIN VÀ NHIỆM VỤ QUỐC PHÒNG BẢO VỆ CHỦ QUYỀN QUỐC GIA TRÊ...
 
Tạp chí lập trình VOL.2 Tháng 4/2013 Tinh Giản
Tạp chí lập trình VOL.2 Tháng 4/2013 Tinh GiảnTạp chí lập trình VOL.2 Tháng 4/2013 Tinh Giản
Tạp chí lập trình VOL.2 Tháng 4/2013 Tinh Giản
 
Beyond project management
Beyond project managementBeyond project management
Beyond project management
 
Agile Mindset - Duong Trong Tan 2014/09 @septeni technology
Agile Mindset - Duong Trong Tan 2014/09 @septeni technologyAgile Mindset - Duong Trong Tan 2014/09 @septeni technology
Agile Mindset - Duong Trong Tan 2014/09 @septeni technology
 
The way to set automation testing
The way to set automation testingThe way to set automation testing
The way to set automation testing
 
Insights from google for vietnam 03/2016
Insights from google for vietnam 03/2016Insights from google for vietnam 03/2016
Insights from google for vietnam 03/2016
 
Tran Minh: big data platform in high performance computing at NISCI
Tran Minh: big data platform in high performance computing at NISCITran Minh: big data platform in high performance computing at NISCI
Tran Minh: big data platform in high performance computing at NISCI
 
Agile có thể giúp chúng ta những gì?
Agile có thể giúp chúng ta những gì?Agile có thể giúp chúng ta những gì?
Agile có thể giúp chúng ta những gì?
 
Delivering Happiness - The Meddler Game
Delivering Happiness - The Meddler GameDelivering Happiness - The Meddler Game
Delivering Happiness - The Meddler Game
 
People As the Conveyor of Knowledge at Agile Vietnam
People As the Conveyor of Knowledge at Agile VietnamPeople As the Conveyor of Knowledge at Agile Vietnam
People As the Conveyor of Knowledge at Agile Vietnam
 
Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...
Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...
Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...
 
Systems thinking - Tư duy hệ thống
Systems thinking - Tư duy hệ thốngSystems thinking - Tư duy hệ thống
Systems thinking - Tư duy hệ thống
 
Tu duy he thong
Tu duy he thongTu duy he thong
Tu duy he thong
 
Basic & Advanced Scrum Framework
Basic & Advanced Scrum FrameworkBasic & Advanced Scrum Framework
Basic & Advanced Scrum Framework
 
Fuji Technology Workshop: Learning Skills
Fuji Technology Workshop: Learning SkillsFuji Technology Workshop: Learning Skills
Fuji Technology Workshop: Learning Skills
 
Nguyen Vu Hung - Software Project Management with Jira Agile
Nguyen Vu Hung - Software Project Management with Jira AgileNguyen Vu Hung - Software Project Management with Jira Agile
Nguyen Vu Hung - Software Project Management with Jira Agile
 
Coder nên biết thêm gì ngoài việc lập trình
Coder nên biết thêm gì ngoài việc lập trìnhCoder nên biết thêm gì ngoài việc lập trình
Coder nên biết thêm gì ngoài việc lập trình
 
Mindmap and Plan Planning
Mindmap and Plan PlanningMindmap and Plan Planning
Mindmap and Plan Planning
 
Domain Driven Design Introduction
Domain Driven Design IntroductionDomain Driven Design Introduction
Domain Driven Design Introduction
 
ITEC - Qua trinh phat trien he thong BigData
ITEC - Qua trinh phat trien he thong BigDataITEC - Qua trinh phat trien he thong BigData
ITEC - Qua trinh phat trien he thong BigData
 

Similar to Anti patterns in it project management

Phuongphapluanduanphanmem truyenthongvaagilengotrungvietscrumday2013-13100720...
Phuongphapluanduanphanmem truyenthongvaagilengotrungvietscrumday2013-13100720...Phuongphapluanduanphanmem truyenthongvaagilengotrungvietscrumday2013-13100720...
Phuongphapluanduanphanmem truyenthongvaagilengotrungvietscrumday2013-13100720...
Working in Japan
 
Week 03-software process
Week 03-software processWeek 03-software process
Week 03-software process
Nguyen Tran
 
Quản trị dự án công nghệ thông tin
Quản trị dự án công nghệ thông tinQuản trị dự án công nghệ thông tin
Quản trị dự án công nghệ thông tin
Anh Dam
 
Lập trình tinh giản
Lập trình tinh giảnLập trình tinh giản
Lập trình tinh giản
Dieu Le Hoang
 
Quản lý dự án
Quản lý dự ánQuản lý dự án
Quản lý dự án
Tran Tien
 

Similar to Anti patterns in it project management (20)

Sang tao y tuong trong to chuc event
Sang tao y tuong trong to chuc eventSang tao y tuong trong to chuc event
Sang tao y tuong trong to chuc event
 
SCRUM căn bản
SCRUM căn bảnSCRUM căn bản
SCRUM căn bản
 
Phuongphapluanduanphanmem truyenthongvaagilengotrungvietscrumday2013-13100720...
Phuongphapluanduanphanmem truyenthongvaagilengotrungvietscrumday2013-13100720...Phuongphapluanduanphanmem truyenthongvaagilengotrungvietscrumday2013-13100720...
Phuongphapluanduanphanmem truyenthongvaagilengotrungvietscrumday2013-13100720...
 
PP Thứ 6 thi vietsub.pdf
PP Thứ 6 thi vietsub.pdfPP Thứ 6 thi vietsub.pdf
PP Thứ 6 thi vietsub.pdf
 
QLDA Phan mem -Bai gioi thieu_gvcô Linh.ppt
QLDA Phan mem -Bai gioi thieu_gvcô Linh.pptQLDA Phan mem -Bai gioi thieu_gvcô Linh.ppt
QLDA Phan mem -Bai gioi thieu_gvcô Linh.ppt
 
Tai lieu microsoft project 2007 smith.n
Tai lieu microsoft project 2007   smith.nTai lieu microsoft project 2007   smith.n
Tai lieu microsoft project 2007 smith.n
 
[Lean sigma] JIDOKA
[Lean sigma] JIDOKA[Lean sigma] JIDOKA
[Lean sigma] JIDOKA
 
Qlda bai 6 ket thuc
Qlda bai 6 ket thucQlda bai 6 ket thuc
Qlda bai 6 ket thuc
 
Week 03-software process
Week 03-software processWeek 03-software process
Week 03-software process
 
Agile Scrum for your startup
Agile Scrum for your startupAgile Scrum for your startup
Agile Scrum for your startup
 
CƠ CẤU CỦA TIẾN TRÌNH QUẢN LÝ DỰ ÁN PHẦN MỀM
CƠ CẤU CỦA TIẾN TRÌNH QUẢN LÝ DỰ ÁN PHẦN MỀM CƠ CẤU CỦA TIẾN TRÌNH QUẢN LÝ DỰ ÁN PHẦN MỀM
CƠ CẤU CỦA TIẾN TRÌNH QUẢN LÝ DỰ ÁN PHẦN MỀM
 
các khái niệm cơ bản dự án phần mềm
các khái niệm cơ bản dự án phần mềmcác khái niệm cơ bản dự án phần mềm
các khái niệm cơ bản dự án phần mềm
 
Quản trị dự án công nghệ thông tin
Quản trị dự án công nghệ thông tinQuản trị dự án công nghệ thông tin
Quản trị dự án công nghệ thông tin
 
Nhóm 8
Nhóm 8Nhóm 8
Nhóm 8
 
Ứng dụng mạng Nơ-ron nhân tạo phát triển phần mềm theo Agile
Ứng dụng mạng Nơ-ron nhân tạo phát triển phần mềm theo AgileỨng dụng mạng Nơ-ron nhân tạo phát triển phần mềm theo Agile
Ứng dụng mạng Nơ-ron nhân tạo phát triển phần mềm theo Agile
 
Lập trình tinh giản
Lập trình tinh giảnLập trình tinh giản
Lập trình tinh giản
 
[AI Series Talk #2] Moving AI from PoC Stage to Production
[AI Series Talk #2] Moving AI from PoC Stage to Production[AI Series Talk #2] Moving AI from PoC Stage to Production
[AI Series Talk #2] Moving AI from PoC Stage to Production
 
Quản lý dự án
Quản lý dự ánQuản lý dự án
Quản lý dự án
 
Giao trinh qlda tong hop
Giao trinh qlda tong hopGiao trinh qlda tong hop
Giao trinh qlda tong hop
 
Agile Development & XP
Agile Development & XPAgile Development & XP
Agile Development & XP
 

More from Vu Hung Nguyen

More from Vu Hung Nguyen (17)

Co ban horenso - Tai lieu training noi bo
Co ban horenso - Tai lieu training noi boCo ban horenso - Tai lieu training noi bo
Co ban horenso - Tai lieu training noi bo
 
Funix techtalk: Tự học hiệu quả thời 4.0
Funix techtalk: Tự học hiệu quả thời 4.0Funix techtalk: Tự học hiệu quả thời 4.0
Funix techtalk: Tự học hiệu quả thời 4.0
 
Học cờ cùng con - Nguyễn Vỹ Kỳ Anh [U8]
Học cờ cùng con - Nguyễn Vỹ Kỳ Anh [U8]Học cờ cùng con - Nguyễn Vỹ Kỳ Anh [U8]
Học cờ cùng con - Nguyễn Vỹ Kỳ Anh [U8]
 
Japanese for it bridge engineers
Japanese for it bridge engineersJapanese for it bridge engineers
Japanese for it bridge engineers
 
2018 Học cờ cùng con - Nguyễn Vũ Kỳ Anh [U7]
2018 Học cờ cùng con - Nguyễn Vũ Kỳ Anh [U7]2018 Học cờ cùng con - Nguyễn Vũ Kỳ Anh [U7]
2018 Học cờ cùng con - Nguyễn Vũ Kỳ Anh [U7]
 
Using Shader in cocos2d-x
Using Shader in cocos2d-xUsing Shader in cocos2d-x
Using Shader in cocos2d-x
 
Pham Anh Tu - TK Framework
Pham Anh Tu - TK FrameworkPham Anh Tu - TK Framework
Pham Anh Tu - TK Framework
 
My idol: Magnus Carlsen vs. Ky Anh 2G1 NGS Newton
My idol: Magnus Carlsen vs. Ky Anh 2G1 NGS NewtonMy idol: Magnus Carlsen vs. Ky Anh 2G1 NGS Newton
My idol: Magnus Carlsen vs. Ky Anh 2G1 NGS Newton
 
FPT Univ. Talkshow IT khong chi la lap trinh
FPT Univ. Talkshow IT khong chi la lap trinhFPT Univ. Talkshow IT khong chi la lap trinh
FPT Univ. Talkshow IT khong chi la lap trinh
 
Agile Vietnam Conference 2016: Recap
Agile Vietnam Conference 2016: RecapAgile Vietnam Conference 2016: Recap
Agile Vietnam Conference 2016: Recap
 
IT Public Speaking Guidelines
IT Public Speaking GuidelinesIT Public Speaking Guidelines
IT Public Speaking Guidelines
 
Học cờ vua cùng con Nguyễn Vũ Kỳ Anh (U6)
Học cờ vua cùng con Nguyễn Vũ Kỳ Anh (U6)Học cờ vua cùng con Nguyễn Vũ Kỳ Anh (U6)
Học cờ vua cùng con Nguyễn Vũ Kỳ Anh (U6)
 
xDay 2016/08/07 Giới thiệu Chương trình FUNiX Career Advising (tư vấn ...
xDay 2016/08/07 Giới thiệu Chương trình FUNiX Career Advising (tư vấn ...xDay 2016/08/07 Giới thiệu Chương trình FUNiX Career Advising (tư vấn ...
xDay 2016/08/07 Giới thiệu Chương trình FUNiX Career Advising (tư vấn ...
 
Luan an tien si Nguyen Vu Hung
Luan an tien si Nguyen Vu HungLuan an tien si Nguyen Vu Hung
Luan an tien si Nguyen Vu Hung
 
Cau lac bo nhiep anh vysa clbnn - Nguyen Vu Hung
Cau lac bo nhiep anh vysa clbnn - Nguyen Vu HungCau lac bo nhiep anh vysa clbnn - Nguyen Vu Hung
Cau lac bo nhiep anh vysa clbnn - Nguyen Vu Hung
 
Proof of Kraft Mc-Millan theorem - nguyen vu hung
Proof of Kraft Mc-Millan theorem - nguyen vu hungProof of Kraft Mc-Millan theorem - nguyen vu hung
Proof of Kraft Mc-Millan theorem - nguyen vu hung
 
Kỹ năng soạn thảo tiếng Việt
Kỹ năng soạn thảo tiếng ViệtKỹ năng soạn thảo tiếng Việt
Kỹ năng soạn thảo tiếng Việt
 

Anti patterns in it project management

  • 1. ANTI PATTERNS in IT Project Management Agile Vietnam Conference 2016 Nguyễn Vũ Hưng 2016/10/16, Hà Nội
  • 2. Agenda 1. Warmup with a real world case study 2. List of anti patterns; my stories 3. Your stories; discussions 4. Q&A 5. Closing
  • 3. About Myself 1. Nguyễn Vũ Hưng, 1978 2. CTO, Fuji Technology 3. POS: a. Agile b. Open Source c. Project Management "Nguyen Vu Hung is the CTO of Fuji Technology.He has numerous years of IT and software development, project/product management in both Japan and Vietnam. Considering himself as a FOSS and Agile evangelist and being a Agile lover and an CTO, he is also interested in not-so-related domains such as human resource management and (organization) (re)structuring." facebook.com/nguyenvuhung vuhung16plus@gmail.com +84-904-28-7878 2016/09/07, @VJU - Nguyen Vu Hung
  • 4. Target Audiences 1. CEO, CIO, CTO 2. (IT) Project Managers 3. Project Leaders 4. Team Lead
  • 5. Design Pattern “In software engineering, a design pattern is a general repeatable solution to a commonly occurring problem in software design. A design pattern isn't a finished design that can be transformed directly into code. It is a description or template for how to solve a problem that can be used in many different situations.”
  • 6. “AntiPatterns, like their design pattern counterparts, define an industry vocabulary for the common defective processes and implementations within organizations. A higher-level vocabulary simplifies communication between software practitioners and enables concise description of higher-level concepts.”
  • 7. (Why) Most Software Projects Fail According to a new research, success in 68% of technology projects is "improbable." Poor requirements analysis causes many of these failures, meaning projects are doomed right from the start (ZDNet) Project Failure Poor Requirements Lack of Supervision Lack of Resources Unrealistic Expectations
  • 8. A Word Before We Start
  • 10. Avalance: Mixing Waterfall and Agile (Quy trình hiệu quả hay quy trình ”chuẩn"?)
  • 11. 99% Rule: It is NEARLY done (nhưng mãi mãi không bao giờ xong) Gần DONE, nhưng không CLOSE được, hoặc mãi mãi không close được. The first 90 percent of the code accounts for the first 90 percent of the development time. The remaining 10 percent of the code accounts for the other 90 percent of the development time.[1] — Tom Cargill, Bell Labs
  • 12. Gold Plating: Optimize Beyond the Scope (nên/cần hay không?)
  • 13. Scope Creep: Keep Scope Under Control Uncontrolled changes or continuous growth in a project’s scope, or adding new features to the project after the original requirements have been drafted and accepted (also known as requirement creep and feature creep) Possible cauues: 1. poor change control 2. lack of proper initial identification of what is required to bring about the project objectives 3. weak project manager or executive sponsor 4. poor communication between parties 5. lack of initial product versatility
  • 14. Brooks' Law Adding more resources to a project to increase velocity, when the project is already slowed down by coordination overhead. Vào cuối dự án, càng thêm người dự án càng chậm.
  • 15. Tester Driven Development Software projects in which new requirements are specified in bug reports Để testers lead cuộc chơi là hỏng. Khách hàng/PO hãy dẫn đầu.
  • 16. Software Bloat: Fat & Heavy Ví dụ: Windows, ERP. Triết lý Unix: KISS
  • 17. Overengineering: (Spending resources making a project more robust and complex than is needed, tương tự gold plating)
  • 18. Micromanagement: Pay(too much) Attention to Details Hãy để team membes chủ động
  • 19. Vendor Lock-in: (FOSS is the Way to Go)
  • 20. Death by Planning: (Don’t take too much time on planning. Thay vào đó, thãy tạo value cho sản phẩm/khách hàng)
  • 21. Too Many Reports Too Many Meetings Developers spend too much time answering the concerns of managers and decision makers. Họp dài nhất: Liên tục 12h 2 tuần qua: Họp liên tục 6h
  • 22. Analysis Paralysis: Don’t think, just start any way in an Agile way Phân tích qua nhiều. Thay vào đó, hãy làm prototype, làm luôn, chấp nhận technical debt và kaizen vào sprints tiếp theo.
  • 23. Viewgraph Engineering Too much document, they are interim output that end-users don’t really want Agile không chú trọng tài liệu bằng giá trị.
  • 24. Fear of Success Declare your success! Make your team confident. Sợ không thành công. Lo nhiều quá và không bắt đầu. Suy nghĩ tiêu cực
  • 25. Irrational Management: 1. Tạm dịch: Bất cập trong Quản lý 2. PM thiếu năng lực 3. Tính (xấu) của người quản lý dự án 4. “Tôi - PM - là người chạy dự án này, chứ không phải cách anh" 5. Độc tài 6. Gây khó chịu, mâu thuẫn nội bộ 7. Có bias (về kỹ thuật, con người, quy trình) 8. Không đưa ra được quyết định 9. Micromanagement là một ví dụ 10. Người lãnh đạo dự án (PM) không gây được ảnh hưởng, không động viên, khích lệ được nhân viên
  • 26. Project Mismanagement 1. Tạm dịch: Quản lý sai 2. Quản lý không đúng chỗ, cái cần quản lý thì không quản lý 3. Monitor và controll sai cái cần làm 4. Không priority được cái quan trọng nhất 5. Không nhìn ra được rủi ro lớn nhất (để hạn chế)
  • 27. Guessworks 1. Vừa làm vừa đoán 2. Đầu vào (tài liệu thiết kế, test, code, yêu cầu…) không rõ ràng 3. Phải vừa làm vừa đoán 4. Tăng chi phí communication 5. Trao đổi a. Hệ quả là gì? b. Phát sinh muda, muri, mura ra sao?
  • 28. Throw It over the Wall: The Code is finished (no testing, no documentation) Technical debt cực lớn
  • 29. Conway's Law 1. Thiết kế chương trình phản ánh cơ cấu tổ chức 2. Việc ra quyết định phức tạp dần nếu tổ chức phức tạp 3. Luồng thông tin trao đổi trong tổ chức ra sao thì dự án chạy cũng như vậy
  • 30. Death March Chạy nước rút vào phút cuối. "In project management, a death march is a project where the members feel it is destined to fail, or requires a stretch of unsustainable overwork. "
  • 31. Zoombies Thành viên nhóm không nói, không hỏi. Không ai biết họ nghĩ gì, có issue gì, hiểu hay không hiểu. Hệ quả: Thường là chìm xuồng.
  • 32. Q&A
  • 33. ANTI PATTERNS in IT Project Management Agile Vietnam Conference 2016 Nguyễn Vũ Hưng 2016/10/16, Hà Nội
  • 35. References 1. http://en.wikipedia.org/wiki/Anti-pattern#Project_management 2. AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis 3. http://sourcemaking.com/antipatterns/software-project-management-antipatterns 4. http://www.javagyan.com/tutorials/anti-patterns/software-architecture-antipatterns 5. AntiPatterns in Project Management 1st Edition
  • 36. Software Development AntiPatterns ● Golden Hammer ● Dead End ● Spaghetti Code ● Input Kludge ● Walking through a Minefield ● Cut-And-Paste Programming ● Mushroom Management ● Golden Hammer ● Dead End ● Spaghetti Code ● Input Kludge ● Walking through a Minefield ● Cut-And-Paste Programming ● Mushroom Management
  • 37. Software Architecture AntiPatterns ● Software Architecture AntiPatterns ● Autogenerated Stovepipe ● Stovepipe Enterprise ● Jumble ● Stovepipe System ● Cover Your Assets ● Vendor Lock-In ● Software Architecture AntiPatterns ● Autogenerated Stovepipe ● Stovepipe Enterprise ● Jumble ● Stovepipe System ● Cover Your Assets ● Vendor Lock-In
  • 38. Dark Launching Dark launching is a technique of "wrapping" the code of new software features in a way that let you turn them on or off. Perhaps turning them on and off for all your users, or perhaps turning them on and off for only a subset of your users (that meet some criteria).
  • 39. E-mail Is Dangerous: Không trao đổi thông tin nhạy cảm qua email. Trao đổi trực tiếp Không có log, chứng cứ
  • 40. Intellectual Violence: A form of communication breakdown Đề cập tới một lý thuyết, phương pháp mới mà mọi người không hiểu (không follow được)
  • 41. Corncob: My ex-colleague, a difficult person (khó chịu, luôn phản đối, đưa ra ý kiến tiêu cực, tự nâng cao bản thân, ghen tị)
  • 42. Fire Drill: Months of boredom followed by demands for immediate delivery Bình thường không có việc. Nhưng tự nhiên bắt làm luôn và ngay.
  • 43. The Feud: Conflicts between Managers Developers ăn đòn
  • 45. Change is Bad: Nghĩ rằng Thay đổi (Change, Change Request) là không tốt, muốn stick mà plan/design/requirement ban đầu. Thực tế: Sản phẩm, thị trường, yêu cầu, mọi thứ luôn biến động thay đổi.