Anti patterns in it project management

46
ANTI PATTERNS in IT Project Management Agile Vietnam Conference 2016 Nguyễn Vũ Hưng 2016/10/16, Hà Nội

Transcript of Anti patterns in it project management

Page 1: Anti patterns in it project management

ANTI PATTERNSin IT Project Management

Agile Vietnam Conference 2016Nguyễn Vũ Hưng

2016/10/16, Hà Nội

Page 2: Anti patterns in it project management

Agenda

1. Warmup with a real world case study2. List of anti patterns; my stories3. Your stories; discussions4. Q&A5. Closing

Page 3: Anti patterns in it project management

About Myself

1. Nguyễn Vũ Hưng, 19782. CTO, Fuji Technology 3. POS:

a. Agileb. Open Sourcec. 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/[email protected]+84-904-28-7878

2016/09/07, @VJU - Nguyen Vu Hung

Page 4: Anti patterns in it project management

Target Audiences

1. CEO, CIO, CTO2. (IT) Project Managers3. Project Leaders4. Team Lead

Page 5: Anti patterns in it project management

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.”

Page 6: Anti patterns in it project management

Anti Pattern

“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.”

Page 7: Anti patterns in it project management

(Why) Most Software Projects FailAccording 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

RequirementsLack of

Supervision

Lack of Resources

Unrealistic Expectations

Page 8: Anti patterns in it project management

A Word Before We Start

Page 9: Anti patterns in it project management

https://www.facebook.com/groups/agilevietnam/permalink/1092577944171737/

Page 10: Anti patterns in it project management

Avalance: Mixing Waterfall and Agile(Quy trình hiệu quả hay quy trình ”chuẩn"?)

Page 11: Anti patterns in it project management

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

Page 12: Anti patterns in it project management

Gold Plating: Optimize Beyond the Scope

(nên/cần hay không?)

Page 13: Anti patterns in it project management

Scope Creep: Keep Scope Under ControlUncontrolled 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 control2. lack of proper initial identification of what is required to bring

about the project objectives3. weak project manager or executive sponsor4. poor communication between parties5. lack of initial product versatility

Page 14: Anti patterns in it project management

Brooks' LawAdding 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.

Page 15: Anti patterns in it project management

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.

Page 16: Anti patterns in it project management

Software Bloat: Fat & HeavyVí dụ: Windows, ERP.

Triết lý Unix: KISS

Page 17: Anti patterns in it project management

Overengineering: (Spending resources making a project more robust and complex than is needed, tương tự gold plating)

Page 18: Anti patterns in it project management

Micromanagement:Pay (too much) Attention to Details

Hãy để team membes chủ động

Page 19: Anti patterns in it project management

Vendor Lock-in:(FOSS is the Way to Go)

Page 20: Anti patterns in it project management

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)

Page 21: Anti patterns in it project management

Too Many ReportsToo 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 12h2 tuần qua: Họp liên tục 6h

Page 22: Anti patterns in it project management

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.

Page 23: Anti patterns in it project management

Viewgraph EngineeringToo 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ị.

Page 24: Anti patterns in it project management

Fear of SuccessDeclare 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

Page 25: Anti patterns in it project management

Irrational Management:1. Tạm dịch: Bất cập trong Quản lý2. PM thiếu năng lực3. 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 định9. 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

Page 26: Anti patterns in it project management

Project Mismanagement1. Tạm dịch: Quản lý sai2. 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àm4. Không priority được cái quan trọng nhất5. Không nhìn ra được rủi ro lớn nhất (để hạn chế)

Page 27: Anti patterns in it project management

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àng3. 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?

Page 28: Anti patterns in it project management

Throw It over the Wall:The Code is finished (no testing, no documentation)

Technical debt cực lớn

Page 29: Anti patterns in it project management

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

Page 30: Anti patterns in it project management

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. "

Page 31: Anti patterns in it project management

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.

Page 32: Anti patterns in it project management

Q&A

Page 33: Anti patterns in it project management

ANTI PATTERNSin IT Project Management

Agile Vietnam Conference 2016Nguyễn Vũ Hưng

2016/10/16, Hà Nội

Page 34: Anti patterns in it project management

REFERENCES

Page 36: Anti patterns in it project management

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

Page 37: Anti patterns in it project 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

Page 38: Anti patterns in it project management

Dark LaunchingDark 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).

Page 39: Anti patterns in it project management

E-mail Is Dangerous:Không trao đổi thông tin nhạy cảm qua email.

Trao đổi trực tiếpKhông có log, chứng cứ

Page 40: Anti patterns in it project management

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)

Page 41: Anti patterns in it project management

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ị)

Page 42: Anti patterns in it project management

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.

Page 43: Anti patterns in it project management

The Feud:Conflicts between Managers

Developers ăn đòn

Page 44: Anti patterns in it project management

Endless Development:Phát triển mãi không xong.

Page 45: Anti patterns in it project management

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.

Page 46: Anti patterns in it project management

Endless Meetings: