Đánh giá mã nguồn và kiến trúc
Một bản đọc thành văn về những gì đang có: cấu trúc, phụ thuộc, độ phủ kiểm thử, nguy cơ bảo mật, và những chỗ cụ thể dễ hỏng nhất. Bạn giữ tài liệu này dù có tiếp tục với chúng tôi hay không.
Chúng tôi tiếp quản những dự án đội khác đã bắt đầu, tìm ra thực sự đang có gì trong đó, và đưa sản phẩm đi tiếp mà không cần một lần viết lại bạn không kham nổi.
Thừa kế một kho mã không phải cùng một công việc với xây mới. Những người đưa ra các quyết định đã rời đi, tài liệu thì mỏng hoặc không có, và những phần trông tệ nhất thường lại là những phần đang giữ cho mọi thứ đứng vững. Trong khi đó sản phẩm vẫn có người dùng, và họ vẫn mong nó chạy được vào sáng thứ Hai.
Lời khuyên thường thấy là viết lại. Điều đó thường sai. Một lần viết lại tiêu tốn nhiều tháng mà không tạo ra thứ gì khách hàng nhìn thấy, và nó vứt bỏ nhiều năm tích lũy các bản vá cho những tình huống biên không ai còn nhớ đã phát hiện ra. Chúng tôi bắt đầu bằng việc tìm hiểu bạn thực sự đang có gì, rồi thay đổi nó theo từng mảnh đủ nhỏ để phát hành và để quay lui được.
Đôi khi câu trả lời trung thực là một thành phần thực sự nên được thay thế. Chúng tôi sẽ nói rõ đó là thành phần nào, vì sao, và tốn bao nhiêu, với lập luận được viết ra để bạn có thể phản biện.
Một bản đọc thành văn về những gì đang có: cấu trúc, phụ thuộc, độ phủ kiểm thử, nguy cơ bảo mật, và những chỗ cụ thể dễ hỏng nhất. Bạn giữ tài liệu này dù có tiếp tục với chúng tôi hay không.
Quyền truy cập kho mã, các môi trường, thông tin đăng nhập, đường triển khai, tên miền và tài khoản bên thứ ba, theo dõi đến khi hoàn tất. Những lỗ hổng phát hiện ở bước này thường là những lỗ hổng đắt đỏ.
Làm cho bản build tái lập được, việc triển khai lặp lại được, và có giám sát, để thay đổi đầu tiên bạn phát hành không đồng thời là lần đầu tiên có người triển khai sau nhiều tháng.
Chuyển framework, môi trường chạy, cơ sở dữ liệu hoặc hạ tầng đám mây, sắp xếp trình tự để sản phẩm vẫn chạy suốt quá trình thay vì phải dừng cho một lần chuyển đổi ồ ạt.
Thay thế những phần đang kìm chân sản phẩm, từng phần một, mỗi phần nằm sau một lần phát hành riêng. Sản phẩm tốt lên trong lúc công việc diễn ra, chứ không phải sau khi nó kết thúc.
Biên bản quyết định kiến trúc và tài liệu vận hành được viết khi bối cảnh còn mới, để người tiếp theo thừa kế hệ thống này không rơi vào đúng vị trí bạn đang đứng bây giờ.
Chúng tôi muốn nói thẳng ngay bây giờ hơn là sau ba tuần. Nếu cột bên phải đúng với tình huống của bạn, cứ nói trong buổi trao đổi và chúng tôi sẽ chỉ bạn tới nơi phù hợp hơn.
Chúng tôi vào kho mã, các môi trường và hệ thống quản lý công việc. Trong vài ngày bạn nhận được ấn tượng đầu tiên, bao gồm bất cứ điều gì khẩn cấp đến mức không nên chờ bản đánh giá đầy đủ.
Một phần việc có giới hạn rõ ràng, tạo ra một bản đánh giá thành văn: đang có gì, đang có rủi ro gì, cần những gì để đi tiếp, và các phương án kèm chi phí. Đây là một sản phẩm bàn giao thật, không phải tài liệu bán hàng.
Build tái lập được, một quy trình triển khai ai cũng chạy được, giám sát, và các lỗi nghiêm trọng nhất. Ngắn thôi, và nó làm mọi thứ phía sau rẻ hơn.
Công việc chuyển đổi và cải tổ tính theo thời gian và khối lượng, có trần ngân sách, demo hàng tuần, và một danh sách công việc bạn nhìn thấy và sắp xếp lại được.
Khi nhịp làm việc đã được kiểm chứng, một phần nhân lực dành riêng theo tháng sẽ giữ cho sản phẩm được bảo trì và cải thiện mà không phải thương lượng lại vài tháng một lần.
Phần đánh giá là giá cố định, vì phạm vi của nó thực sự có thể biết trước. Phần tiếp theo thường là tính theo thời gian và khối lượng, có trần ngân sách, vì không ai có thể trung thực báo một mức giá cố định cho công việc bên trong một kho mã họ chưa đọc. Khi đã hiểu được nhịp độ, công việc lâu dài thường chuyển sang gói tháng luân phiên.
Công việc được thực hiện theo giờ GMT+7. Với một dự án tiếp quản, điều đó quan trọng hơn vẻ ngoài của nó: việc đọc mã diễn ra khi ngày làm việc của bạn đang kết thúc, nên những câu hỏi nảy sinh từ kho mã của bạn thường đã chờ sẵn vào sáng hôm sau chứ không phải tuần sau. TPSolutions là một doanh nghiệp có đăng ký, và thông tin đăng ký có thể tra cứu trước khi bạn trao quyền truy cập cho bất kỳ ai.
Không, và cũng không ai làm được điều đó một cách trung thực. Thứ chúng tôi báo giá được là phần đánh giá, vốn có giá cố định và giới hạn rõ ràng. Nó kết thúc bằng các phương án đã tính chi phí cho phần việc tiếp theo, dựa trên những gì thực sự có trong kho mã chứ không phải những gì chúng tôi hy vọng có ở đó.
Thì chúng tôi nói vậy, bằng văn bản, kèm lập luận. Bạn giữ bản đánh giá và tự do mang nó đi nơi khác. Chúng tôi thà mất phần việc tiếp theo còn hơn bắt đầu một cuộc giải cứu mà chính mình không tin.
Ở đâu họ còn liên lạc được và sẵn lòng thì có. Một buổi bàn giao hợp tác dù chỉ vài giờ cũng tiết kiệm được hàng tuần khảo cổ mã nguồn. Ở đâu họ đã đi hẳn, bản đánh giá sẽ bù vào những khoảng trống đó.
Thường là có, sau bước ổn định. Cố làm cả hai trước khi việc build và triển khai đáng tin cậy thường tạo ra hai công việc dở dang, nên chúng tôi sắp xếp trình tự một cách có chủ ý.
Các nền tảng web và backend phổ biến. Nếu sản phẩm được xây trên thứ gì đó chúng tôi không hỗ trợ tốt được, chúng tôi sẽ nói ngay ở lần đọc đầu tiên chứ không phải sau khi đã xuất hóa đơn.
Những hình thức hợp tác gần với dịch vụ này, kèm lý do bạn có thể cần chúng thay thế. Cả năm đều nằm trong menu Dịch vụ ở đầu trang.
Ba mươi phút gọi video với Tài. Mô tả sản phẩm, ai đã xây nó, và điều gì đang khiến bạn lo. Bạn sẽ ra về với quan điểm rõ ràng về việc một bản đánh giá có đáng để trả tiền hay không.
Mang tới kho mã, hoặc chỉ cần mang tới nỗi lo về nó. Cả hai đều là điểm khởi đầu tốt.