Giá phải trả cao trong những hệ thống nguy hiểm

Trong các lĩnh vực như không gian hàng không khí, năng lượng, giao dịch, và chăm sóc sức khỏe, thất bại phần mềm không chỉ đơn thuần là những bất tiện trong hệ thống kỹ thuật có thể dẫn đến những hậu quả thảm khốc. chẳng hạn, giảm án phạt và thiệt hại về danh tiếng tại New York 2015.

Những nguyên tắc bổ sung để giảm thiểu thời gian

Phục hồi hiệu quả trong môi trường nhiệm vụ nghiêm trọng , và [FLT:] bảo tồn [FLT: t [FLT: 1], [FLT:] bảo tồn , thay đổi dần , và kiểm tra phòng] [FLT:] . Bảo tồn hành vi bảo đảm rằng mỗi bước làm cho kết xuất của hệ thống được nhận. Tăng dần thay đổi giới hạn của việc nổ tung bán kính. Khi thử nghiệm chỉ một lần, không có sự thay đổi nào xảy ra mỗi bước, sau khi các nguyên tắc này giảm đi và xác suất của thời gian.

Những hoạt động quan trọng để được an toàn

Chế độ đồng bộ và chạy bộ

Trong chế độ bóng, thành phần được phục hồi chạy bên cạnh hệ thống gốc, xử lý các dữ liệu tương tự nhưng âm thầm bỏ đi kết quả. Các kỹ sư so sánh kết quả để phát hiện sự khác biệt mà không ảnh hưởng đến hoạt động trực tiếp. Một khi tự tin cao, thành phần bóng có thể được nâng cấp lên trạng thái chính. Kỹ thuật này đặc biệt hữu ích cho các thuật toán học hoặc dữ liệu xử lý thông tin nơi sự sửa chữa là tối ưu.

Tính năng Chuyển đổi

Tính năng bật (hay cờ) cho phép bạn gói mã đã sửa chữa nằm sau một cấu hình. Đường dẫn đã thỏa mãn vẫn không hoạt động cho đến khi bật lên rõ ràng, cho các đội điều khiển khả năng bật nó dần dần hoặc cuộn lại ngay lập tức nếu có vấn đề nảy sinh. Trong hệ thống quan trọng, bật ( hẹn lúc khởi động) thay vì năng động để tránh hành vi bất ngờ khi chạy thay đổi thời gian.

Phát hành chim yến

Thông báo chim hoàng yến chỉ một phần trăm nhỏ giao thông tới hệ thống phục hồi lại trong khi phần lớn tiếp tục trên phiên bản ổn định. Cách tiếp cận này cung cấp khả năng xác thực sự trong quá trình sản xuất. Nếu chim yến hiển thị tỷ lệ lỗi cao hoặc nhiễu, giao thông có thể được chuyển tiếp ngay lập tức. Đối với phần mềm kỹ thuật điều khiển thiết bị vật lý, việc phát hành chim yến có thể cần thiết môi trường thử nghiệm mà gương chứa nhưng bị cô lập riêng lẻ khỏi hoạt động trực tiếp.

Tăng cường xanh lá cây

Việc triển khai xanh lá cây duy trì hai môi trường giống nhau: “Sự chuyển đổi màu xanh dương (hiện nay ổn định) và“ xanh dương (được tạo ra) sau khi đã xác nhận kỹ lưỡng về môi trường xanh lá cây, giao thông được chuyển từ xanh sang xanh lá cây trong một hoạt động nguyên tử duy nhất. Nếu có vấn đề xảy ra, việc chuyển đổi sang màu xanh dương sẽ xảy ra nhanh chóng.

Cửa sổ bảo trì đã lên kế hoạch

Mặc dù nỗ lực tốt nhất, một số cách sửa đổi không thể được giới thiệu một cách minh bạch. Trong trường hợp như vậy, thay đổi lịch trong các cửa sổ bảo trì xác định - xác định khi tải hệ thống thấp nhất. Hãy thông báo rõ ràng cửa sổ cho người giữ lại, và đảm bảo các thủ tục cuộn ngược được thực hiện và ghi chép. Không bao giờ triển khai lại thay đổi trong thời gian hoạt động cao nhất hoặc ngay trước thời hạn nhất thời hạn nhất định.

Xây dựng ống nghiệm mới

Thử thách đơn vị và Hợp nhất

Một bộ thử nghiệm toàn diện là không thể thương lượng cho hệ thống quan trọng. Các thử nghiệm đơn giản xác nhận các chức năng riêng lẻ, trong khi các thử nghiệm tích hợp xác nhận rằng mô- đun đã có khả năng tương tác chính xác với các thành phần đã có. Hãy dùng [FLT: 0] công cụ giám sát [FLT:] để xác định các đường mã không kiểm tra. Phần mềm này xác định [TTT:] [T], xem [T] [ xứng đáng] [FL:], [T], s phải có những thí dụ thay đổi kiểu mẫu kiểu mẫu. [FL:] cần phải được chứng minh bằng cách thức chuyển đổi kiểu mẫu kiểu mẫu [FT].K].

Thử ra hồi quy và liên tục hợp nhất

Thử nghiệm hồi quy tự động chạy trên mỗi lỗi bắt sớm. Các ống dẫn tích hợp (CI) nên thực hiện bộ chuỗi hồi quy đầy đủ trong vòng vài phút. Đối với hệ thống quan trọng, chạy [FLT: 0] kiểm tra hiệu quả [FLT: 0] [FLT: 1] để đảm bảo tính toán lại thời gian hoặc sử dụng tài nguyên không bị suy giảm. Bộ thử nghiệm lại [FL: 3) cần thiết. Khi bạn sửa lỗi, hãy thêm một thử nghiệm để tái tạo lỗi, trước khi sửa chữa lỗi.

Hỗn loạn kỹ thuật để kiểm tra tính kiên cường

Kỹ thuật hỗn độn cố tình tiêm lỗi vào hệ thống để quan sát cách nó hoạt động dưới sự căng thẳng. Ứng dụng để sửa đổi thành phần, nó có thể hiển thị giả định đã thay đổi hoặc chế độ lỗi mới được đưa ra bởi việc tái cấu trúc. Công cụ như [FLT: 0]Chaos [FLT: 1] có thể mô phỏng mạng chia vùng, kiệt sức tài nguyên, hoặc đột ngột sự sụp đổ giao thông. Tính năng này được tổ chức như Netflix và Amazon chấp nhận để đảm bảo sự phục hồi trong hệ thống không thể giảm thời gian.

Những bước để hàn gắn lại hệ thống quan trọng

Sự phân tích và hoạch định

Bắt đầu với phân tích kỹ lưỡng của cấu trúc hệ thống. Xác định các mô- đun có độ xác định cao, có khả năng kiểm tra, và được tách ra khỏi các đường dẫn nghiêm trọng. Hãy dùng [FLT: 0] đồ thị phụ thuộc [FLT: 1] để hiểu tác động. Rank bù đắp ứng cử viên bằng rủi ro và giá trị kinh doanh.

Name

Mỗi thay đổi phục hồi cần phải được cam kết đến một chi nhánh riêng biệt với một thông điệp rõ ràng mô tả sự chuyển đổi. Đánh dấu cách giải phóng ổn định trước khi bắt đầu làm việc. Kế hoạch cuộn ngược nên chi tiết không chỉ các mã được hoàn lại mà còn phải thay đổi cấu hình cần phải được hủy bỏ. Thực hiện các thủ tục cuộn trong môi trường cuộn nên nó trở thành tự nhiên thứ hai trong một sự kiện.

Môi trường cấu hình

Một môi trường điều khiển việc sản xuất gương trong phần cứng, phần mềm, phần mềm và tập tin mạng, là thiết yếu để sửa chữa an toàn. Chạy các dấu băng thử nghiệm đầy đủ và hiệu suất ở đây. Đối với phần mềm đó giao diện với máy móc (v. d., bộ điều khiển robot, bộ điều khiển mạng lưới điện), dàn xếp các vòng lặp cần thiết để sao chép các đầu vào và xuất ra thực tế. Chỉ sau khi sắp xếp mọi tiêu chuẩn thay đổi nên chuyển sang sản xuất.

Theo dõi và quan sát

Việc theo dõi bổ sung phải theo dõi cả chức năng sửa chữa chức năng lẫn sức khỏe hoạt động. Đặt [FLT: 0] Đang nạp để tăng tốc độ lỗi, tăng hiệu suất, và thay đổi tiêu dùng tài nguyên. Dùng việc phân phối để theo dõi các yêu cầu qua các đường mã đã sửa đổi. Trong hệ thống chỉ trích, hãy theo dõi không chỉ phần mềm mà còn bất kỳ phần cứng nào được kết nối cho dị thường. Giữ bảng điều khiển so sánh trước và sau khi hoạt động thường.

Những phương pháp sửa chữa thông thường để sửa đổi bộ luật nghiêm trọng

Không phải mọi kỹ thuật phục hồi đều an toàn như nhau, mà là những kỹ thuật có thể sửa chữa được.

  • Phương pháp thực nghiệm ) – Di chuyển một khối mã vào một phương pháp mới để cải thiện khả năng đọc. Bảo đảm phương pháp chiết xuất không thêm hiệu ứng phụ.
  • Tên biến thay đổi hoặc hàm – cải tiến độ trong suốt không thay đổi thực hiện. Dùng ID- hỗ trợ thay đổi tên của ID để có thể truy cập mọi tham chiếu.
  • Số ma thuật thay thế với hằng số ) – loại bỏ nghĩa đen cứng có thể gây nhầm lẫn trong việc bảo trì.
  • Mở rộng biểu thức điều kiện ) – Decompost complex if-else igations to guards or switching as, nhưng chỉ sau khi kiểm tra kỹ lưỡng các chi nhánh.
  • [FLT: 0] Đối tượng tham số ) – Nhóm tham số liên quan đến một đối tượng để giảm sự phức tạp chữ ký phương pháp.

Mỗi kỹ thuật phải được áp dụng trong sự cô lập, kiểm tra và thực hiện trước khi tiếp theo. [FLT: 0] Phần mềm phát triển của Tập đoàn cải thiện giấy trắng về hệ thống an toàn [FLT: 1) cung cấp hướng dẫn thực tế về việc chọn phương pháp đúng cho môi trường độ dễ chịu cao.

Nguy cơ bị ảnh hưởng bởi việc chuyển sang cơ quan lãnh đạo

Comment

Mỗi lần trả tiền phải được xem xét lại bởi ít nhất hai kỹ sư quen thuộc với hệ thống. lập trình đôi trong phiên họp tái tạo có thể ngăn chặn những lỗi nhỏ nhặt và thúc đẩy sự chuyển đổi kiến thức.

Kiểm tra kỹ năng

Trong các miền quan trọng, bao gồm các chuyên gia đánh dấu chủ đề (SMEs) những người hiểu vật lý, hóa học hoặc logic hoạt động mà phần mềm mã hóa. Một hệ thống SME có thể nhận thấy biến số đã thay đổi bây giờ xung đột với một chữ viết tắt phổ biến rộng rãi trong lĩnh vực, hoặc một phương pháp chiết xuất trong sự sắp xếp lại ngẫu nhiên các thao tác trong một chuỗi thời gian nhạy cảm.

Thay đổi bảng cố vấn

Để phần mềm là một phần của hệ thống được chứng nhận lớn hơn (v.g., avionics, điều khiển lò phản ứng hạt nhân), bất kỳ sự thay đổi mật mã nào cũng có thể cần thiết được ủy nhiệm từ một bảng điều khiển thay đổi. Bảng duyệt lại kế hoạch, đánh giá rủi ro, chiến lược cuộn và bằng chứng của việc xác thực. Việc ghi rõ tính hợp lý và kết quả thử định dạng trong một tiêu chuẩn công nghiệp (v. d. D. 178C, IE608) đảm bảo khả năng kiểm toán.

Kết luận

Giải quyết không phải là kết thúc chính nó là một phương tiện để giữ phần mềm kỹ thuật quan trọng an toàn, bảo trì và bền vững. Bằng cách áp dụng thay đổi tăng cường, kiểm tra nghiêm ngặt, và triển khai chiến lược giảm thiểu rủi ro, các kỹ sư có thể giảm thiểu các khoản nợ kỹ thuật mà không gây ra thời gian giảm. Chìa khóa là điều trị phục hồi với cùng một kỷ luật như bất kỳ thay đổi khác trong một môi trường nghiêm trọng: lên kế hoạch kỹ thuật, kiểm tra và luôn luôn có một cuộn băng sẵn sàng. Khi làm đúng, chuyển đổi chuyển đổi brittles thành mã mạnh mà không làm gián đoạn hệ thống phụ thuộc vào hệ thống.