EXTREME PROGRAMMING LÀ GÌ

  -  

Trong số những cách thức Phát triển Phần mềm Linch hoạt (Call tắt là Agile) thời kì đầu, chỉ duy nhất gồm eXtreme Programming (viết tắt XP) là triệu tập đầy đủ cố gắng vào các biện pháp kinh nghiệm (technical practices) để triển khai ra ứng dụng chất lượng. Cho cho thời buổi này, các kĩ thuật trong XP sẽ trsống đề xuất thông dụng và không thể thiếu, nhỏng TDD, Pair-programing, daily standup, refactoring, simple thiết kế, chuyển nhượng bàn giao tiếp tục với tích đúng theo thường xuyên CI.

Bạn đang xem: Extreme programming là gì

Mục đích sau cùng của XPhường là trở nên tân tiến đầy đủ ứng dụng với unique cao nhất, với ngân sách thấp tốt nhất, ít lỗi nhất, khôn cùng năng suất với tối đa hóa ROI đầu tư (chữ Extreme). XPhường. có tác dụng điều này trải qua các những cực hiếm định hướng (values), lý lẽ (principles) với kỹ năng thực hành(Practices) tính chất theo định hướng của triết lí Agile.

1. Các quý giá chủ công của XP

Giao tiếp (Communication): hồ hết tín đồ vào team thương lượng trực diện hàng ngày, trong toàn bộ những công việc từ bỏ đối chiếu trải nghiệm cho đến lập trìnhTính dễ dàng và đơn giản (Simplicity): chỉ có tác dụng số đông gì quan trọng, ko rộng. Làm phần đông gì cần thiết mang lại thì hiện giờ, chưa hẳn tương lai quá xa, với rất nhiều bước nhỏ dại nhằm cán đích cùng giản lược buổi tối đa các sai hỏng.Phản hồi (Feedback): cam kết tráng lệ nhằm liên tục chuyển giao các ứng dụng chạy tốt vào thời gian cuối những phân đoạn (iteration) nđính. Luôn có thể demo phần mềm chạy giỏi từ bỏ nhanh chóng cùng thường xuyên, lắng tai đánh giá từ các bên cùng thực hiện các điều chỉnh cần thiết.Tôn trọng (Respect): phần lớn tín đồ trường đoản cú Cảm Xúc và được kính trọng vì chưng chúng ta là hầu hết member đặc biệt của nhóm. Mỗi người phần đa đóng vai trò vào Việc tạo ra những giá trị ko kể các bước ra sao.Can đảm (Courage): luôn luôn nói đúng về quá trình cùng ước chừng. Không quan trọng đề xuất sợ điều gì bởi vì member ko làm việc cô độc. Mỗi Lúc tất cả thay đổi, nhóm sẽ sở hữu được những hành động quan trọng nhằm yêu thích ứng. Can đảm vào vấn đề quăng quật đi đông đảo gì không thực thụ cần thiết nữa (mã nguồn, giấy tờ …)

2. Các cơ chế XPKen Beông chồng, một Một trong những bạn được xem như là thân phụ đẻ của XPhường, đã biểu lộ những chính sách cơ bạn dạng của XP vào cuốn sách “Extreme Programming Explained: Embrace Change”, gồm:

Phản hồi nhanh(Rapid Feedback): luôn luôn lắng tai đánh giá từ không ít phía, mang được phản hồi một biện pháp nkhô giòn tốt nhất, tìm hiểu chúng và chuyển rất nhiều gọi biết đó vào vào hệ thống nhanh khô độc nhất vô nhị hoàn toàn có thể. Lập trình viên rất có thể học được giải pháp kiến tạo, thiết kế, kiểm thử tốt nhất có thể vào phạm vi từng phút ít chứ đọng chưa phải hằng ngày, tuần hoặc thậm chí còn hằng mon.Giả định Đơn giản(Assume Simplicity): Đối xử cùng với các vấn đề nlỗi thể bọn chúng rất có thể giải quyết và xử lý bởi đa số giải pháp dễ dàng cho ngớ ngẩn. Đây có thể là ngulặng lí cực nhọc “xơi” tốt nhất của XP..Txuất xắc đổi tiệm tiến(Incremental Change): không chuyển đổi cả “lố”, mà lại chỉ chuyển đổi một ít trong kiến thiết, công dụng.Sống bình thường với Thay đổi(Embracing Change): giải pháp tốt nhất là tôn trọng toàn bộ các năng lực trong những khi giải quyết và xử lý những vấn đề áp lực độc nhất.Công câu hỏi chất lượng cao(Quality Work): buộc phải luôn chi tiêu để sở hữu được chất lượng công việc tối đa, tới mức “trả hảo”.

Xem thêm: Latam Là Gì ? Latam Airlines

Ngoài ra, bao hàm vẻ ngoài không ngừng mở rộng khác cũng đóng góp phần tđắm đuối gia quy định và kiểm soát và điều chỉnh các hoạt động của lực lượng cải tiến và phát triển, gồm:

Dạy cho nhau (Teach Learning)Đầu tứ lúc đầu buổi tối giản (Small Initial Investment)Chơi để thắng (Play to Win)Thử nghiệm ví dụ (Concrete Experiments)Giao tiếp msống và chân thực (mở cửa, honest Communication)Làm việc tương xứng với bản năng của con tín đồ, chưa hẳn ngăn chặn lại bọn chúng (Work with people’s instincts – not against them)Các trách nát nhiệm được xác nhận (Accepted Responsibility)Thích ứng toàn thể (Local Adaptation)Di gửi dìu dịu (Travel Light)Độ đo chân thực (Honest Measurement)

3. Các kỹ năng thực hànhXPhường áp dụng 12 cách thức thực hành thực tế được thực hiện trong quá trình cải tiến và phát triển phần mềm, gồm:

Trò chơi Lập kế hoạch(The Planning Game) — nhanh chóng khẳng định phạm vi của lần phát hành (release) cho tới bằng phương pháp kết hợp rất nhiều ưu tiên nghiệp vụ (business priorities) và ước lượng kinh nghiệm (technical estimates). Khi thực tiễn gồm có ảnh hưởng cho tới chiến lược, update planer. Trò nghịch Lập planer được áp dụng cả vào bài toán lập chiến lược desgin (Release Planning) lẫn lập Kế hoạch Phân đoạn (Iteration Planning).Các bản thi công nhỏ(Small releases) — Đưa hệ thống vào tâm trạng cung ứng (production, trái chiều với tâm trạng “development” – phát triển), rồi xây đắp phiên bạn dạng new vào thời điểm cuối mỗi vòng đời nlắp.System Metaphor(Ẩn dụ Hệ thống) — Hướng dẫn toàn bộ quy trình trở nên tân tiến bằng phần đa mẩu truyện share dễ dàng và đơn giản về phong thái nhưng khối hệ thống đã làm việc. Đó có thể là 1 trong hệ thống mọi quan niệm về phần lớn lớp, cách tiến hành sẽ giúp member nhóm cách tân và phát triển dễ ợt đoán được tác dụng nó thực hiện.Thiết kế Đơn giản(Simple design) — Hệ thống cần được thiết kế dễ dàng và đơn giản tốt nhất hoàn toàn có thể trên bất kỳ thời gian như thế nào. Mỗi lúc phát hiện ra nơi nào phức hợp, bắt buộc đào thải ngay tắp lự.Kiểm thử(Testing) — Lập trình viên tiếp tục viết những kiểm demo đơn vị (unit tests) trong những lúc cải tiến và phát triển, còn khách hàng thì viết ra đều bài xích kiểm demo nhằm xác định ĐK xong cho từng tính năng.Tái cấu trúc(Refactoring) — Lập trình viên tái kết cấu hệ thống nhưng mà không làm cho ảnh hưởng mang lại hoạt động của khối hệ thống nhằm loại bỏ những đụng hàng, dư quá, nhằm cải thiện tính tiếp xúc, đơn giản dễ dàng cùng gia tăng sự linh hoạt của hệ thống.Lập trình theo cặp(Pair programming) — Tất cả những đoạn mã sản xuất (production code, riêng biệt cùng với “test code”-những mã lệnh viết ra để kiểm thử) đề nghị được viết bởi vì nhị xây dựng viên trên mỗi laptop.Slàm việc hữu tập thể(Collective sầu ownership) — Bất kì fan như thế nào hầu hết rất có thể thay đổi bất kỳ chiếc lệnh như thế nào vào bất cứ thời gian như thế nào.Tích hòa hợp liên tục(Continuous integration) — Tích phù hợp và thiết kế (build) khối hệ thống những lần trong ngày, mỗi một khi một tác vụ được xong xuôi.Làm vấn đề 40 giờ một tuần— Không thao tác nhiều hơn 40 giờ đồng hồ 1 tuần. Không bao giờ làm việc vượt giờ đến tuần sản phẩm nhì.Khách hàng trên chỗ(On-site customer) — Kết hợp một người tiêu dùng thật vào đội ngũ cách tân và phát triển, thao tác làm việc toàn thời gian nhằm trả lời các thắc mắc mang đến team cách tân và phát triển.Các chuẩn mực lập trình(Coding standards) — Lập trình viên viết toàn bộ các mã lệnh tuân theo phần nhiều luật lệ nhằm mục tiêu khuyến nghị tiếp xúc trải qua mã lệnh.

Xem thêm: Tiểu Sử Warren Buffett - Tiểu Sử Tỉ Phú Warren Buffett

4. Quy trình của một dự án công trình XPhường. trông như vậy nào?Hình vẽ dưới đây bộc lộ khái lược một quy trình cải tiến và phát triển dự án công trình XP, tự lập chiến lược tạo ra (Release Planning) cho tới phần nhiều vận động thiết kế hằng ngày:

*

Ngày ni, tương đối nhiều kinh nghiệm thực hành thực tế của XP được sử dụng rộng rãi cho dù lực lượng cách tân và phát triển có sử dụng XPhường hay không. Các kĩ thuật như thiết kế theo cặp, thiết kế phía kiểm demo (TDD), tích thích hợp liên tiếp v.v. là số đông phương án “tiêu chuẩn” nhằm các team Agile đã đạt được chất lượng kĩ thuật tối đa (technical excellence) vào trở nên tân tiến phần mềm linch hoạt, giúp loại trừ được những món nợ kĩ thuật vốn là những vụ việc hoa mắt của những quy mô cải cách và phát triển ứng dụng truyền thống lâu đời. Theo dữ liệu của VersionOne một sự chọn lọc phổ cập của các team Agile là kết hợp form thao tác Scrum (thiên về quản lí lí công việc) với XPhường (ưu tiền về kĩ thuật) để sở hữu được một tiến trình trở nên tân tiến ứng dụng không hề thiếu, dễ dàng mà vẫn kết quả cùng khỏe khoắn.