Xác minh và xác nhận các mô hình để tính toán kỹ thuật. Sự phù hợp của mô hình mô phỏng. Xác nhận đầu ra của toàn bộ mô hình mô phỏng. Các định nghĩa khác về xác minh

Mục tiêu của công việc – nghiên cứu các phương pháp kiểm tra sự phù hợp của mô hình mô phỏng đã phát triển với hệ thống thực.

Trong quá trình làm việc trong phòng thí nghiệm, sinh viên phải học cách xác minh mô hình mô phỏng bằng cách xây dựng sơ đồ khối logic và theo dõi tương tác tiến trình mô phỏng bằng chương trình gỡ lỗi được tích hợp trong ngôn ngữ GPSS/H chuyên dụng; kiểm tra tính đúng đắn của việc xây dựng mô hình khái niệm trong máy tính; tiến hành kiểm chứng mô hình mô phỏng bằng cách so sánh kết quả thực nghiệm với kết quả tính toán phân tích.

Ghi chú

Giả định rằng sinh viên đã quen thuộc với lý thuyết về hệ thống xếp hàng và các kiến ​​thức cơ bản về mô hình hóa hệ thống bằng ngôn ngữ GPSS/H chuyên biệt.

2. Những quy định lý thuyết

2.1. Xác minh và xác nhận các mô hình mô phỏng

Nếu mô hình phản ánh không chính xác động lực của hệ thống, thì rõ ràng kết quả thu được với sự trợ giúp của nó sẽ không chính xác. Vì vậy, một trong những vấn đề chính trong mô hình hóa là kiểm tra sự phù hợp của mô hình đã phát triển với hệ thống thực. Ở Nga, việc kiểm tra như vậy được gọi là tính đầy đủ, còn ở nước ngoài, nó được chia thành xác minh và xác nhận.

Xác minh là kiểm tra xem mô hình khái niệm có được xây dựng chính xác trong máy tính hay không. Nó được sử dụng để so sánh một mô hình khái niệm với biểu diễn máy tính của nó và trả lời các câu hỏi: Mô hình này có chạy chính xác trên máy tính không? Các thông số đầu vào có được trình bày chính xác và cấu trúc logic người mẫu?

Các phương pháp được sử dụng để xác minh:

1. Kiểm tra tính chính xác của kết quả đối với các giá trị “cực đoan”. Trong đó:

— đặt giá trị 0 cho các tham số đầu vào của mô hình và phân tích kết quả. Nếu kết quả khác 0 thì mô hình sẽ được kiểm tra và tinh chỉnh;

— họ đặt các giá trị của các tham số đầu vào của mô hình, những tham số này không thể tồn tại trong hệ thống thực và dựa trên kết quả mô phỏng, họ đánh giá tính đúng đắn của phản hồi của mô hình;

- thực hiện mô hình hóa dài hạn và đánh giá kết quả. Đồng thời, xác định các lỗi và nghi ngờ: tải trên các thiết bị dịch vụ bằng 0; số lần xuất hiện yêu cầu trong thiết bị không bằng 0 và tải trên thiết bị bằng 0; số lượng mục vào hàng đợi bằng với nội dung hiện tại của nó.

2. Tính toán phân tích đặc tính và so sánh với kết quả mô hình. Trong thời gian dài, việc sử dụng thiết bị được tính toán thủ công và giá trị tính toán được so sánh với kết quả mô phỏng. Nhưng có những đặc điểm không thể tính toán được bằng phương pháp phân tích, chẳng hạn như thời gian trung bình để phục vụ một ứng dụng. Tuy nhiên, các tham số trong một mô hình có liên quan với nhau và việc kiểm tra một đặc tính sẽ làm tăng độ tin cậy (hoặc thiếu độ tin cậy) trong các tham số khác và toàn bộ mô hình, ngay cả khi chưa xác định được mối quan hệ chính xác giữa các đặc điểm và thay đổi theo từng lần chạy.

3. Xây dựng sơ đồ khối logic và giám sát tương tác tiến trình mô phỏng bằng các chương trình gỡ lỗi. Vẽ sơ đồ khối logic đơn giản cho bất kỳ nút nào của mô hình. Ví dụ: đối với QS một kênh, bạn có thể tạo sơ đồ khối được hiển thị.

Sau đó, bằng cách sử dụng các chương trình gỡ lỗi được tích hợp trong các gói mô phỏng, họ kiểm tra xem logic của mô hình có tương ứng với sơ đồ khối được xây dựng hay không. Trong trường hợp này họ sử dụng:

- chạy đến một thời điểm hoặc sự kiện nhất định và hiển thị thông tin trong một khoảng thời gian nhất định;

- tạm dừng mô hình hóa dựa trên giá trị của giá trị biến hiện tại của thành phần mô hình đã chọn (hàng đợi, thiết bị, bộ đếm, thuộc tính).

4. Sử dụng dấu vết mô phỏng. Dấu vết mô phỏng là bản in chi tiết về những thay đổi trong mô hình theo thời gian. Nó được phát triển đặc biệt để sử dụng trong các chương trình mô phỏng. Nó cho phép bạn xem giá trị của các biến được chọn ở mỗi lần tăng (từ sự kiện này sang sự kiện khác). Khi phân tích dấu vết mô phỏng như vậy, có thể xác định được các lỗi và sự không nhất quán giữa mô hình và hệ thống thực.

5. Tài liệu về mô hình và xác nhận của người không tham gia vào việc phát triển mô hình. Phương pháp này thường bị bỏ qua. Nhưng nếu người lập mô hình viết các nhận xét ngắn trong mô hình máy tính, xác định tất cả các biến và tham số, đồng thời ghi chú các mô-đun chính của mô hình, thì mọi người và bản thân người lập mô hình sẽ dễ dàng kiểm tra logic của nó hơn nhiều.

6. Kiểm tra hoạt ảnh. TRONG Gần đây Phần mềm mô phỏng được kết hợp với các chương trình hoạt hình trên máy tính. Hoạt ảnh cho phép bạn theo dõi hoạt động của mô hình, hiển thị trên màn hình động lực hoạt động của các phần tử của nó dưới dạng đồ họa tương tự của hệ thống thực. Bằng cách sử dụng hoạt ảnh, các loại lỗi đặc trưng được xác định: chuyển động không kịp thời, biến mất hoặc chồng chéo của các đối tượng hiển thị gói dữ liệu, ô tô, con người, v.v.

Xác thực - kiểm tra xem mô hình có phải là đại diện hợp lệ của hệ thống thực hay không. Mục đích của việc xác nhận gồm hai phần: thứ nhất, tạo ra một mô hình thể hiện hành vi của hệ thống thực một cách hoàn chỉnh nhất có thể. Thứ hai, tăng mức độ tin cậy của mô hình có thể chấp nhận được để mô hình có thể được sử dụng để phân tích hệ thống và ra quyết định.

Nhìn chung, không có đánh giá định lượng nào được chấp nhận rộng rãi về việc xác nhận mô hình. Hầu hết các tác giả đều cho rằng nếu độ lệch của kết quả mô phỏng so với các chỉ số của hệ thống thực hoặc được xác định bằng phương pháp khác không vượt quá 7-10% thì mô hình được coi là hợp lệ.

Mặc dù việc xác minh và xác nhận khác nhau về mặt khái niệm nhưng chúng thường được thực hiện đồng thời. Một số phương pháp thậm chí còn giống hệt nhau (ví dụ: kiểm tra mô hình bằng hoạt ảnh, tạo dấu vết mô phỏng).

Thẩm định mô hình kỹ thuật số các sản phẩm

Alexander Shchelyaev
Giám đốc Phòng Động lực học Chất lỏng Tính toán, TESIS LLC

Chu trình sản xuất công nghệ hiện đại dựa trên việc sử dụng biểu diễn kỹ thuật số điện tử ba chiều của mẫu sản phẩm. Mô tả các đường viền hình học của sản phẩm là thông tin chính mô tả đối tượng và các yêu cầu về chất lượng sản xuất của nó. Do đó, các đường viền hình học của sản phẩm, phương pháp tạo/xây dựng và phương pháp chuyển chúng từ môi trường làm việc này sang môi trường làm việc khác trong khi vẫn duy trì tính toàn vẹn phải là đối tượng được các cơ cấu kiểm soát của doanh nghiệp chú ý chặt chẽ. Các công cụ thông tin để làm việc với mô hình CAD được sử dụng trong công nghiệp, giống như bất kỳ công cụ nào khác, yêu cầu giám sát liên tục kết quả sử dụng cũng như ghi lại quá trình sử dụng chúng theo yêu cầu của hệ thống quản lý chất lượng doanh nghiệp. Các yêu cầu tương tự ở thị trường phương Tây được xây dựng cả ở cấp độ tiêu chuẩn quốc tế của bộ ISO 9000 và ở cấp độ yêu cầu của từng tập đoàn, ví dụ như Boeing D6-51991. Trong thực tế, điều này có nghĩa là mọi thao tác với mô hình CAD của sản phẩm đều phải kết thúc bằng việc xác thực mô hình CAD để phát hiện sự vi phạm tính toàn vẹn của mô tả các đường viền hình học của sản phẩm, cả ở cấp độ hình học. và cấu trúc liên kết (xem bài viết “Gói phần mềm 3DTransVidia - bản dịch chất lượng cao mô hình kỹ thuật số của sản phẩm” / / CAD và đồ họa. 2014. Số 6), và ở cấp độ đối tượng và thuộc tính ngữ nghĩa. Kết quả xác nhận phải được ghi lại và lưu trữ cho công việc tiếp theo để cải thiện quy trình làm việc. Hoạt động với mô hình CAD chủ yếu có nghĩa là dịch mô hình từ định dạng này sang định dạng khác hoặc chuyển nó giữa các định dạng khác nhau. sản phẩm phần mềm, được sử dụng trong dây chuyền sản xuất. Xác thực được hiểu là kiểm tra chất lượng của mô hình CAD ở tất cả các giai đoạn sử dụng trong khuôn khổ quản lý tài liệu điện tử trong chu trình sản xuất. Việc xác minh được thực hiện bằng cách so sánh mô hình CAD dẫn xuất sau khi dịch (nhập) với mô hình CAD gốc được chấp nhận làm tiêu chuẩn.

Chúng ta hãy xem xét phương pháp xác nhận mô hình CAD bằng ví dụ về sự tương tác giữa Tập đoàn Boeing và các nhà thầu (nhà thầu phụ) của họ trong khuôn khổ hợp tác quốc tế trong sản xuất máy bay chở khách. Tập đoàn Boeing, với tư cách là công ty mẹ, trong khuôn khổ hợp tác, chịu trách nhiệm phát triển máy bay mới, sản xuất các bộ phận hoặc bộ phận quan trọng nhất và khâu lắp ráp cuối cùng. Việc sản xuất tất cả các bộ phận, linh kiện và lắp ráp khác của máy bay được thực hiện bởi các nhà thầu phụ của tập đoàn trên khắp thế giới. Tập đoàn Boeing khi thực hiện các dự án dân dụng sử dụng các sản phẩm phần mềm Dassault Systemes (trong đó có hệ thống CATIA CAD) làm môi trường thiết kế và hỗ trợ cho vòng đời máy bay phiên bản khác nhau và thế hệ). Mọi nỗ lực buộc các công ty liên quan phải sản xuất các sản phẩm tương tự của Dassault Systemes sẽ dẫn đến sự gia tăng chi phí của máy bay Boeing, vì các công ty liên quan sẽ bắt đầu tính vào giá thành sản phẩm chi phí mua và hỗ trợ kỹ thuật của phần mềm đắt tiền từ Hệ thống Dassault Tập đoàn Boeing cho phép các nhà thầu phụ của mình sử dụng trong công việc của họ bất kỳ sản phẩm phần mềm nào thuận tiện và có lợi cho họ cả từ quan điểm kinh tế lẫn quan điểm Năng lực kỹ thuật. Tuy nhiên, để loại bỏ những hậu quả tiêu cực có thể xảy ra khi làm việc trong môi trường CAD/CAM/CAE/CAI đa thương hiệu, Tập đoàn Boeing đã đưa ra tiêu chuẩn doanh nghiệp D6-51991 mà tất cả các công ty liên quan bắt buộc phải tuân thủ. Tiêu chuẩn này quy định sự tương tác của công ty mẹ với các đơn vị đồng thực hiện trong việc kiểm soát chất lượng việc sử dụng các mô hình sản phẩm số. Đồng thời, các sản phẩm phần mềm xuất hiện trên thị trường cho phép bạn tự động hóa quy trình xác thực và, trong số những thứ khác, hỗ trợ tiêu chuẩn D6-51991. Nếu nhà thầu phụ không thể chứng minh với công ty mẹ rằng họ giám sát đầy đủ chất lượng của mẫu sản phẩm kỹ thuật số nhận được từ Boeing thì nhà thầu phụ đó không được phép làm việc trong các dự án của Boeing. Yêu cầu của Boeing rất khắt khe nhưng lại buộc tất cả các công ty liên quan phải phát triển các biện pháp tổ chức và kỹ thuật để sử dụng đúng mô hình CAD nhằm đảm bảo chất lượng sản phẩm được đảm bảo. Tiêu chuẩn Boeing D6-51991 quy định rằng “nhà thầu phụ chịu trách nhiệm truyền đạt dữ liệu được sử dụng trong chế tạo (sản xuất) và kiểm tra kỹ thuật, đồng thời phải có quy trình rõ ràng để ghi lại cả hai bước. Quy trình được ghi lại phải bao gồm phương pháp xác minh độ chính xác của bản dịch” (Hình 1).

Một sản phẩm phần mềm hỗ trợ đầy đủ các yêu cầu của tiêu chuẩn Boeing D6-51991 là CompareVidia (Hình 2).

Mô tả quy trình làm việc

Chương trình CompareVidia kiểm tra mô hình CAD thu được từ quá trình dịch thuật (nhập), so sánh nó với mô hình CAD tham chiếu. CompareVidia cho phép bạn kiểm tra ở ba cấp độ khác nhau:

  1. Kiểm tra toàn cầu- bài kiểm tra đặc điểm tích hợp Các mô hình CAD, chẳng hạn như diện tích bề mặt, tọa độ tâm hình học của mô hình
    và như thế. Loại này kiểm tra là nhanh nhất.
  2. Kiểm tra địa phương - xác minh từng phần tử của các nguyên thủy hình học như vậy của mô hình CAD như điểm-điểm, cạnh-cạnh, bề mặt-bề mặt, cơ thể-cơ thể. Loại xác minh này mất nhiều thời gian hơn vì nó yêu cầu kiểm tra lượng dữ liệu lớn hơn. Tuy nhiên, điều này cho phép bạn bản địa hóa vị trí bị biến dạng trong mô hình CAD, điều này sẽ giúp bạn có thể thực hiện phân tích và tìm ra lý do thay đổi trong mô hình CAD.
  3. Kiểm tra thuộc tính- xác minh phụ trợ các thuộc tính mô hình CAD, bao gồm các đối tượng PMI.
  4. Sơ đồ xác nhận đa cấp này cho phép linh hoạt tùy chỉnh quy trình xác minh cho mọi thứ từ bề mặt tấm vỏ cánh lớn đến các cụm lắp ráp lớn bao gồm nhiều bộ phận đơn giản.

Sơ đồ quy trình xác nhận điển hình được hiển thị trong Hình 2. 3.

Mô hình tham chiếu, đã được Boeing thử nghiệm trước đây, được cung cấp cho nhà thầu phụ ở định dạng CATIA (không có cây xây dựng) và bổ sung ở định dạng STEP. Nhà thầu phụ sau khi nhận được mô hình sẽ mở nó trong các ứng dụng CAD/CAM/CAE/CAI của mình để thực hiện các hoạt động tương ứng trong chu trình công nghệ của mình và lưu nó ở định dạng STEP. Sau đó, mô hình CAD gốc và mô hình phái sinh sẽ được tải vào chương trình CompareVidia. Để thực hiện việc này, CompareVidia chỉ định tiêu chí xác minh và các tham số số của chúng.

sử dụng Kiểm tra toàn cầu cần thiết lập độ chính xác phần trăm của việc kiểm tra các đặc tính tích phân (Hình 4).

sử dụng Séc địa phương cần thiết lập độ chính xác tuyến tính và góc của phép thử (Hình 5).

Nếu cần xác định độ an toàn của thuộc tính hoặc đối tượng ngữ nghĩa thì cần thiết lập các tham số xác minh phù hợp (Hình 6).

Xác thực mô hình CAD cho các yêu cầu sản xuất

Các yêu cầu tiêu chuẩn để kiểm tra hình dạng của mô hình CAD cho đến gần đây chỉ bao gồm việc kiểm tra các đường viền hình học để tuân thủ độ chính xác nhất định. Kỹ thuật này đã được sử dụng thành công trong một thời gian dài trong việc chuẩn bị mô hình cho sản xuất, nhưng nó không cho phép theo dõi những thay đổi về cấu trúc liên kết của mô hình hình học, có thể xảy ra do sự khác biệt trong quá trình thực hiện. hàm toán học lõi hình học của một hệ thống CAD cụ thể. Ví dụ: CATIA V4 có hỗ trợ đa thức bậc cao hơn hệ thống CAD hiện đại. Cần lưu ý rằng việc vi phạm cấu trúc liên kết của mô hình CAD, theo quy định, không dẫn đến vi phạm mô tả các đường viền hình học trong độ chính xác đã chỉ định, không làm sai lệch mô tả trạng thái rắn, do đó, theo tiêu chí chính thức , đây không phải là khiếm khuyết (Hình 7).

Tuy nhiên, với việc tiếp tục sử dụng mô hình CAD như vậy trong sản xuất, các vấn đề có thể phát sinh liên quan đến đặc thù của ứng dụng CAM. Ví dụ, một phần quan trọng của ứng dụng CAM xây dựng đường dẫn của công cụ gia công CNC dựa trên đặc điểm của các bề mặt tạo nên mô hình CAD của phôi. Trước hết, thuật toán nhằm mục đích ưu tiên xây dựng quỹ đạo dao dọc theo các cạnh dài của bề mặt gia công. Điều này cho phép bạn thực hiện chế độ xử lý ở trạng thái ổn định và đạt được tốc độ tối đa chuyển động của dụng cụ. Ranh giới của các bề mặt trong mô hình CAD được xác định bởi cấu trúc liên kết của nó và nếu cấu trúc liên kết đã được chuyển đổi thì một bề mặt sẽ được phân chia thành nhiều bề mặt kích thước nhỏ hơn. Trong các ứng dụng CAM, điều này dẫn đến việc tổ chức lại các đường dẫn dao và tăng số lượng khu vực mà dao thay đổi hướng chuyển động của nó. Khi hướng chuyển động thay đổi, tính đều đặn của việc xử lý bề mặt cũng thay đổi, dẫn đến sự thay đổi độ nhám bề mặt (Hình 8), tương đương với lỗi sản xuất.

TRONG tình huống tương tự hóa ra là một trong những nhà thầu của Boeing - Triumph Interiors, công ty chịu trách nhiệm sản xuất khung cửa sổ của máy bay chở khách. Mô hình toán học của khung của Boeing đã được xác nhận đầy đủ và đáp ứng các yêu cầu về chất lượng hình học. Một bộ khung cửa sổ hoàn chỉnh cho toàn bộ máy bay đã được sản xuất và chuyển đến khách hàng. Tuy nhiên, toàn bộ lô hàng đã bị trả lại do bị từ chối. Phân tích cho thấy việc xác thực mô hình CAD không ảnh hưởng đến việc xác minh cấu trúc liên kết. Đồng thời, trong quá trình đọc mô hình CAD vào ứng dụng CAM, cấu trúc liên kết của mô hình đã được chuyển đổi, dẫn đến sự thay đổi các chế độ xử lý trên máy (Hình 9). Do đó, việc xác nhận đầy đủ hơn cho phép chúng tôi tìm ra nguồn gốc của vấn đề, loại bỏ các khiếm khuyết trong quá trình sản xuất và cho phép Triumph Interiors tiếp tục tham gia dự án Boeing.

Cần lưu ý rằng cuối cùng, Tập đoàn Boeing đã đi đến quyết định thắt chặt các tiêu chí kiểm tra mô hình CAD và bắt buộc kiểm tra tính toàn vẹn của cấu trúc liên kết. Chỉ được phép sai lệch so với yêu cầu này trong những trường hợp đặc biệt và với điều kiện là kết quả sẽ không ảnh hưởng đến chất lượng của sản phẩm.

Một khả năng quan trọng khác cho sản xuất là kiểm tra tính toàn vẹn của các đối tượng PMI - như trong biểu diễn vectơ, trong đó ký tự văn bảnđược trình bày dưới dạng tập hợp các đường đa tuyến và dưới dạng biểu tượng, với văn bản có thể chỉnh sửa. Riêng biệt, tính toàn vẹn của các kết nối ngữ nghĩa được kiểm tra, tức là kết nối giữa đối tượng PMI và bề mặt của mô hình CAD (Hình 10).

Xác nhận mô hình cho các yêu cầu kiểm soát kỹ thuật

Quy trình kiểm soát chất lượng sản xuất hiện đại cũng dựa vào việc sử dụng mô hình CAD. Các phép đo của các bộ phận cụ thể được thực hiện bằng máy đo tọa độ cố định hoặc di động (CMM) cung cấp một loạt các điểm kiểm soát, trong các ứng dụng CAI (Kiểm tra có sự trợ giúp của máy tính) được xếp chồng lên mô hình CAD tham chiếu và sau đó là bản đồ sai lệch giữa sản phẩm thật và mô hình toán học của nó. Cần phải hiểu rằng ứng dụng CAI cũng được xây dựng trên cơ sở một số loại hạt nhân hình học, có nghĩa là bạn phải luôn kiểm tra xem mô hình CAD được nhập vào ứng dụng này có trải qua bất kỳ biến dạng nào không.

Từ quan điểm xác thực dữ liệu ở giai đoạn kiểm soát đo lường, các tính năng sau của chương trình CompareVidia mang lại sự tiện lợi và tốc độ đáng kể cho việc triển khai:

  • hỗ trợ làm việc với các mô hình NURBS tham số, lưới STL và đám mây điểm (Hình 11);
  • tự động căn cứ các mô hình so sánh trong hệ thống thống nhất tọa độ

Ghi lại quá trình xác nhận mô hình

Theo yêu cầu tiêu chuẩn hiện đại chất lượng, quá trình xác nhận mô hình CAD phải được ghi lại để điều tra có thể tiếp theo về nguyên nhân gây ra lỗi trong mô tả hình học hoặc cấu trúc liên kết của mô hình CAD.

Trong gói phần mềm CompareVidia, kết quả xác thực được tự động trình bày dưới dạng báo cáo chứa tất cả số liệu thống kê của các mô hình được so sánh, số lỗi, loại lỗi, vị trí lỗi trên mô hình, đặc điểm số của chúng, v.v. Độ sâu của thông tin được trình bày trong báo cáo có thể được người dùng tùy chỉnh. Báo cáo có thể được lưu ở định dạng 2D/3D PDF, HTML hoặc TXT và được in ra để người chịu trách nhiệm ký (Hình 12).

Phương pháp kiểm tra tính chính xác của việc xác nhận mô hình CAD

CompareVidia là gói phần mềm, cùng với những thứ khác, đánh giá chất lượng của mô hình CAD trong quá trình xác thực. Do đó, sẽ khá hợp lý khi hỏi về phương pháp kiểm tra tính chính xác của việc xác thực bằng CompareVidia.

Là một phương pháp đánh giá tính chính xác của CompareVidia, ASCO, một trong những nhà cung cấp của Boeing và Airbus, đã đề xuất một phương pháp so sánh trong đó nó kiểm tra mô hình tham chiếu, có chứa các sai lệch rõ ràng được đưa vào nó (những thay đổi về tham số tuyến tính của các phần tử xây dựng, thay đổi vị trí góc, độ dịch chuyển của tâm các lỗ, v.v.). Nhờ xác thực mô hình “khiếm khuyết” bằng chương trình CompareVidia, tất cả các lỗi có trong mô hình đều được phát hiện với việc xác định chính xác các đặc tính số của chúng (Hình 13).

CompareVidia hỗ trợ các định dạng sau: CATIA V4, CATIA V5, ProE/Creo, UG NX, Inventor, SolidWorks, Solid Edge, JT, STEP, IGES, ACIS, Parasolid, SAT, VDA-FS, VRML, STL, MESH, QIF, 3DXML và Adobe 3D PDF (Hình 14).

Giống như tất cả các sản phẩm do TESIS cung cấp trong lĩnh vực kiểm soát chất lượng mô hình kỹ thuật số, CompareVidia cũng cho phép bạn chọn độ chính xác và đơn vị đo khi mở các mô hình so sánh (Hình 15).

Làm việc với một hội đồng

Làm việc với một bộ phận lắp ráp cho phép bạn thực hiện tất cả các thao tác có sẵn ở cấp độ của một bộ phận riêng lẻ, cũng như kiểm tra tính toàn vẹn của tài liệu lắp ráp: sự hiện diện hay vắng mặt của các bộ phận riêng lẻ; thay đổi mô tả thiết kế của các bộ phận; điều khiển kết cấu lắp ráp.

Kiến trúc và làm việc với hệ thống PDM

Ngành kiến ​​​​trúc gói phần mềm CompareVidia dựa trên mô tả và hỗ trợ mô-đun ngôn ngữ kịch bản Dựa trên XML. Điều này cho phép CompareVidia được tích hợp vào quy trình làm việc của tài liệu doanh nghiệp, nơi việc xác minh và báo cáo từng phần có thể được tự động hóa ở mọi cấp độ. Có thể xử lý hàng loạt một loạt các tập tin.

Cấp phép

Hệ thống cấp phép có thể cấp giấy phép để vận hành CompareVidia như trong chế độ cục bộ cho một nơi làm việc và trong mạng - dưới dạng giấy phép mạng nổi. Việc cấp phép được tổ chức theo loại định dạng CAD để đọc và viết, cũng như khả năng dịch hàng loạt và sử dụng chế độ vận hành Thay đổi kỹ thuật theo dõi (TEC), để bản địa hóa nơi phát hiện lỗi trên mô hình mà không định lượng lỗi.

Hệ thống cấp phép CompareVidia không yêu cầu phải có giấy phép cho các hệ thống CAD tương ứng tại nơi làm việc và chỉ hoạt động ở chế độ ngoại tuyến. Tất cả các phiên bản của định dạng CAD được nhà phát triển hỗ trợ đều có sẵn cho người dùng.

Gói phần mềm CompareVidia là một trong những sản phẩm chủ lực trong dòng công cụ hình học do TESIS cung cấp. Hệ thống này có giao diện tiếng Nga, tài liệu tiếng Nga và hỗ trợ kỹ thuật. Công ty TESIS cung cấp triển khai hệ thống, bao gồm đào tạo và hỗ trợ kỹ thuật. Thông tin về các phiên bản mới của gói phần mềm CompareVidia có thể được tìm thấy trên trang web TESIS
(www.tesis.com.ru). 

Xác thực dữ liệu người dùng, logic và quy tắc kinh doanh quan trọng là yêu cầu chính của hầu hết các ứng dụng web. ASP.NET MVC 2 cung cấp rất nhiều tính năng mới giúp việc triển khai xác thực dữ liệu người dùng và mô hình hóa cũng như xem logic xác thực mô hình trở nên dễ dàng hơn nhiều. Chức năng mới được thiết kế với tính năng xác thực bắt buộc ở phía máy chủ nhưng cũng có thể được triển khai bổ sung ở phía máy khách bằng cách sử dụng JavaScript. Cơ sở hạ tầng và chức năng xác thực trong ASP.NET MVC 2 được triển khai như sau:
1) Các nhà phát triển có thể dễ dàng tận dụng tính năng xác thực DataAnnotation được tích hợp trong .NET Framework. DataAnnotation cho phép, trong cách dễ dàng, khai báo thêm các quy tắc xác thực vào các đối tượng và thuộc tính bằng cách sử dụng một lượng mã tối thiểu.

2) Các nhà phát triển có thể tích hợp thêm công cụ xác thực của riêng họ hoặc sử dụng các khung của bên thứ ba: Trình xác thực Castle, Thư viện xác thực EntLib. Khả năng xác thực của ASP.NET MVC 2 được thiết kế để làm cho kiến ​​trúc xác thực có thể mở rộng dễ dàng.

Điều này có nghĩa là việc xác thực rất đơn giản trong một số trường hợp phổ biến, trong khi vẫn mang lại sự linh hoạt cho việc mở rộng.

Kết nối xác thực trong ASP.NET MVC 2 và DataAnnotation

Hãy xem một kịch bản CRUD đơn giản trong đó chúng ta sẽ sử dụng chức năng mới - DataAnnotation. Cụ thể, hãy tạo biểu mẫu “Tạo” để thêm bạn bè cho người dùng:

Trước khi lưu vào cơ sở dữ liệu, chúng ta muốn đảm bảo rằng thông tin nhập vào là chính xác, nếu không sẽ hiển thị thông báo lỗi thích hợp:

Chúng tôi muốn việc xác thực diễn ra ở cả hai phía - máy chủ và máy khách, đồng thời chúng tôi cũng muốn đảm bảo rằng mã tuân theo nguyên tắc DRY ("không lặp lại chính mình") - chúng tôi áp dụng các quy tắc xác thực một lần, sau đó tất cả các bộ điều khiển, hành động và quan điểm tuân thủ của họ.

Tôi đang triển khai kịch bản này bằng VS 2010, nhưng bạn cũng có thể thực hiện nó trong VS 2008.

Bước 1: Tạo FriendsController (bắt đầu, không cần xác thực)

Hãy bắt đầu bằng cách thêm lớp học đơn giản“Người” trong dự án mới ASP.NET MVC 2:

Lớp này có bốn thuộc tính được tạo bằng cách sử dụng các thuộc tính được triển khai tự động trong C#, được giới thiệu trong VB với VS 2010.

Hãy thêm một lớp trình điều khiển “FriendsController” vào dự án của chúng ta, chúng ta sẽ mở rộng lớp này bằng hai phương thức hành động “Tạo”. Phương thức đầu tiên được gọi trong yêu cầu GET /Friends/Create - nó sẽ hiển thị một biểu mẫu trống để nhập dữ liệu về người đó. Phương thức thứ hai được gọi trong yêu cầu POST /FriendsCreate - nó liên kết dữ liệu biểu mẫu đã nhập với đối tượng Person, kiểm tra lỗi trong quá trình liên kết và nếu không có lỗi xảy ra thì cuối cùng sẽ lưu nó vào cơ sở dữ liệu (chúng tôi sẽ triển khai thực tế hoạt động với cơ sở dữ liệu muộn hơn một chút). Nếu dữ liệu nhập vào form có lỗi thì phương thức sẽ trả về form có lỗi cho người dùng:

Sau khi tạo bộ điều khiển, chúng ta có thể nhấp chuột phải vào một trong các phương thức hành động và chọn "Thêm chế độ xem", chúng ta sẽ sử dụng giàn giáo để tạo chế độ xem "Tạo" chấp nhận đối tượng Person:

Visual Studio sẽ tạo một tệp xem cho chúng tôi, Create.aspx, trong thư mục \Views\Friends của dự án của chúng tôi. Xin lưu ý cách sử dụng:

Và bây giờ, khi chúng ta khởi chạy ứng dụng và đi tới /Friends/Create, chúng ta sẽ nhận được một biểu mẫu trống để nhập dữ liệu:

TRÊN khoảnh khắc này không có gì ngăn cản chúng tôi nhập dữ liệu không chính xác.

Bước 2: Thêm xác thực bằng DataAnnotation

Hãy tăng cường ứng dụng của chúng tôi quy tắc đơn giản xác thực dữ liệu đến. Chúng ta sẽ triển khai các quy tắc này trong mô hình Person chứ không phải trong bộ điều khiển hoặc dạng xem. Cách tiếp cận này sẽ cung cấp xác thực cho bất kỳ kịch bản nào trong ứng dụng của chúng tôi mà đối tượng Person được sử dụng (ví dụ: nếu chúng tôi thêm tập lệnh chỉnh sửa), đồng thời đảm bảo rằng mã tuân thủ nguyên tắc DRY và loại bỏ sự trùng lặp các quy tắc trong các phần khác nhau của mã.

Trong ASP.NET MVC 2, các nhà phát triển có thể dễ dàng thêm các thuộc tính xác thực khai báo vào mô hình hoặc xem các lớp mô hình, những thuộc tính này sau này được sử dụng trong các hoạt động liên kết mô hình. Để thấy điều này hoạt động, hãy cập nhật lớp Person bằng cách thêm một vài thuộc tính. Hãy thêm định nghĩa "bằng cách sử dụng" cho không gian tên "System.ComponentModel.DataAnnotations", sau đó tạo kiểu cho các thuộc tính Person bằng cách sử dụng các thuộc tính , và xác thực

Lưu ý rằng văn bản lỗi được khai báo dưới dạng chuỗi. Bạn có thể khai báo chúng trong tệp tài nguyên và bản địa hóa chúng dựa trên ngôn ngữ hoặc văn hóa đã chọn của người dùng. Tìm hiểu thêm về việc bản địa hóa các lỗi xác thực.

Và bây giờ chúng ta đã thêm các thuộc tính xác thực cho lớp Person, hãy khởi động lại ứng dụng của chúng ta để xem phản hồi đối với dữ liệu được nhập không chính xác bằng cách gửi nó đến máy chủ:

Bạn có nhận thấy mọi thứ đã trở nên tử tế với chúng ta như thế nào không? Văn bản lỗi được đánh dấu màu đỏ và lỗi đó được hiển thị bên cạnh trường. Biểu mẫu lưu dữ liệu đã nhập nên chúng tôi giúp người dùng không phải nhập lại. Và làm thế quái nào mà tất cả chuyện này lại xảy ra được?

Để hiểu cách hoạt động của nó, chúng ta hãy xem phương thức hành động Tạo xử lý yêu cầu POST của biểu mẫu của chúng tôi:

Khi của chúng tôi biểu mẫu HTML trả về dữ liệu cho máy chủ, phương thức trên được gọi. Vì phương thức hành động lấy đối tượng Person làm tham số nên ASP.NET MVC sẽ tạo đối tượng Person và tự động liên kết dữ liệu biểu mẫu đến với các giá trị của nó. Là một phần của quy trình này, DataAnnotation của đối tượng Person sẽ được kiểm tra xem có tuân thủ các quy tắc xác thực hay không. Nếu kiểm tra thành công, ModelState.IsValid sẽ trả về true và chúng ta sẽ lưu kết quả vào cơ sở dữ liệu và chuyển hướng người dùng về trang chủ.

Nếu xảy ra bất kỳ lỗi xác thực nào, phương thức hành động của chúng tôi sẽ hiển thị lại biểu mẫu với dữ liệu đối tượng Person không chính xác. Điều này được thực hiện bằng cách sử dụng dòng cuối cùng trong đoạn mã trên.

Thông báo lỗi được hiển thị trên trang nhờ phương pháp trợ giúp<%= Html.ValidationMessageFor() %>sau mỗi cái<%= Html.TextBoxFor() %>ở dạng Tạo. Phương thức trợ giúp Html.ValidationMessageFor() sẽ hiển thị thông báo lỗi thích hợp cho mọi thuộc tính mô hình không hợp lệ được chuyển đến dạng xem:

Sự tiện lợi của mẫu này là dễ dàng triển khai mã, cũng như dễ dàng thêm hoặc thay đổi các quy tắc xác thực cho lớp Person của chúng ta mà không cần phải thay đổi mã bên ngoài mô hình. Khả năng xác định các quy tắc xác thực ở một nơi và thực thi các quy tắc đó ở bất kỳ đâu trong ứng dụng cho phép chúng tôi nhanh chóng phát triển ứng dụng của mình với nỗ lực tối thiểu đồng thời tránh trùng lặp mã.

Bước 3: Thêm xác thực phía máy khách

Hiện tại, ứng dụng của chúng tôi chỉ hỗ trợ xác thực phía máy chủ, yêu cầu người dùng gửi dữ liệu đến máy chủ trước khi thấy bất kỳ thông báo lỗi nào.

Một trong những ưu điểm của ASP.NET MVC 2 là kiến ​​trúc xác thực, hỗ trợ xác thực phía máy chủ và phía máy khách. Để làm điều này chúng ta chỉ cần thêm hai Tập lệnh JavaScript trong chế độ xem và viết một dòng mã:

Sau khi thêm ba dòng, ASP.NET MVC 2 sẽ sử dụng siêu dữ liệu xác thực mà chúng tôi đã chỉ định trong lớp Person và tạo logic xác thực phía máy khách bằng JavaScript. Người dùng sẽ thấy lỗi ngay khi chuyển sang phần tử khác.

Để xem hành động đăng ký của khách hàng, hãy khởi động lại ứng dụng và điền dữ liệu chính xác vào ba trường văn bản đầu tiên, sau đó thử nhấp vào “Tạo”. Lưu ý cách chúng tôi nhận được thông tin về lỗi; không có dữ liệu nào được gửi đến máy chủ:

Nếu chúng tôi nhập văn bản không phải là địa chỉ hợp lệ E-mail, khi đó lỗi sẽ ngay lập tức thay đổi từ “Yêu cầu email” thành “Không phải email hợp lệ”, chúng ta đã khai báo cả hai thông báo trước đó trong lớp Person:

Khi chúng ta nhập đúng địa chỉ email, thông báo lỗi sẽ biến mất và nền của trường văn bản sẽ trở lại bình thường:

Chúng ta không cần phải viết bất kỳ JavaScript gốc mã để thêm logic xác thực. Mã của chúng tôi vẫn tuân theo nguyên tắc DRY.

Vì lý do bảo mật, quy tắc xác thực luôn được chạy trên máy chủ, ngay cả khi bạn đã bật xác thực phía máy khách. Điều này ngăn chặn tin tặc cố gắng đánh lừa máy chủ của bạn bằng cách bỏ qua xác thực trên máy khách.

Xác thực JavaScript phía máy khách có thể hoạt động với mọi khung/công cụ bạn sử dụng với ASP.NET MVC. Không có hạn chế nào trong việc sử dụng DataAnnotation, toàn bộ khung chạy độc lập với DataAnnotation và có thể hoạt động với Trình xác thực Castle, Khối xác thực EntLib hoặc bất kỳ giải pháp nào khác.

Nếu không muốn sử dụng các tệp JavaScript của chúng tôi, bạn có thể thay thế chúng bằng plugin xác thực jQuery và sử dụng nó. Tiện ích bổ sung ASP.NET MVC Futures sẽ bao gồm hỗ trợ jQuery Thẩm định.

Bước 4: Tạo thuộc tính xác thực (email) của riêng bạn

Không gian tên System.ComponentModel.DataAnnotations chứa một số thuộc tính xác thực tích hợp sẵn mà bạn có thể sử dụng. Chúng ta đã sử dụng bốn - , , và .

Nhưng bạn có thể khai báo thuộc tính xác thực của riêng mình và sử dụng nó. Bạn có thể tạo một thuộc tính hoàn toàn mới bằng cách kế thừa từ lớp ValidationAttribution, nằm trong không gian tên System.ComponentModel.DataAnnotations. Hoặc bạn có thể tạo thuộc tính dựa trên thuộc tính hiện có nếu bạn chỉ muốn mở rộng chức năng của chúng.

Ví dụ: để giữ mã sạch trong lớp Person, chúng tôi muốn tạo một thuộc tính xác thực mới đóng gói một biểu thức chính quy để xác thực địa chỉ email. Một cách đơn giản là kế thừa từ lớp RegularExpression và gọi hàm tạo của lớp RegularExpression với biểu thức chính quy tương ứng:

Bây giờ chúng ta có thể cập nhật lớp Person và sử dụng thuộc tính xác thực mới thay vì biểu thức chính quy trước đó, đồng ý - mã sạch hơn:

Khi tạo thuộc tính xác thực của riêng mình, bạn có thể xác định quy tắc xác thực trên máy chủ và máy khách.

Cuối cùng, để tạo các thuộc tính của riêng bạn truy cập vào các thuộc tính riêng lẻ của một đối tượng, bạn có thể truy cập các thuộc tính xác thực ở cấp lớp. Điều này cho phép bạn triển khai logic kết hợp với nhiều thuộc tính trên một đối tượng. Ví dụ: bạn có thể xem thuộc tính "PropertiesMustMatchAttribution", nằm trong tệp AccountModels.cs/vb trong mẫu chuẩnỨng dụng ASP.NET MVC 2 (Tệp>Dự án web ASP.NET MVC 2 mới trong VS 2010).

Bước 5: Vào cơ sở dữ liệu

Bây giờ hãy triển khai logic cần thiết để lưu bạn bè của chúng ta vào cơ sở dữ liệu.

Chúng tôi hiện đang sử dụng lớp kiểu cũ (thường được gọi là lớp “POCO” - “đối tượng CLR cũ đơn giản”) với C#. Một cách tiếp cận là viết mã riêng biệt liên kết lớp hiện có với cơ sở dữ liệu. Ngày nay, các giải pháp chiếu quan hệ đối tượng (ORM) như NHibernate hỗ trợ hoàn hảo phong cách giao tiếp POCO. ADO.NET Entity Framework (EF), sẽ được phát hành cùng với .NET 4, cũng hỗ trợ liên lạc POCO và giống như NHibernate, hỗ trợ thêm khả năng giao tiếp thông qua mã mà không cần sử dụng tệp liên kết hoặc hàm tạo.

Nếu đối tượng Person của chúng ta được kết nối với cơ sở dữ liệu theo một trong những cách sau thì chúng ta không cần thực hiện bất kỳ thay đổi nào đối với lớp Person.

Điều gì sẽ xảy ra nếu chúng ta sử dụng một công cụ trực quan cho các kết nối ORM của mình?

Ngày nay, nhiều nhà phát triển sử dụng Visual Studio không viết logic kết nối ORM của riêng họ mà sử dụng các nhà thiết kế được tích hợp trong VS để giải quyết vấn đề này.

Một câu hỏi phổ biến khi sử dụng DataAnnotation (hoặc bất kỳ dạng thuộc tính dựa trên xác thực nào khác) là "làm cách nào để áp dụng các quy tắc khi mô hình của đối tượng bạn đang làm việc được tạo bằng trình thiết kế GUI?" Ví dụ: nếu chúng ta thay vì lớp Person, được thiết kế theo kiểu POCO, hãy tạo một lớp Personal trong Visual Studio, sử dụng công cụ giao tiếp GUI - LINQ to SQL hoặc ADO.NET EF:

Trong ảnh chụp màn hình, bạn có thể thấy lớp Person được khai báo bằng trình thiết kế ADO.NET EF trong VS 2010. Cửa sổ trên cùng xác định lớp Person, cửa sổ dưới cùng hiển thị trình chỉnh sửa liên kết, cụ thể là cách các thuộc tính được liên kết với bảng cơ sở dữ liệu People. Sau khi lưu, lớp Person sẽ được tạo tự động. Điều này thuận tiện, ngoại trừ mỗi khi thay đổi, bạn sẽ cần lưu tệp, thao tác này sẽ tạo lại hoàn toàn lớp Person và bạn sẽ mất tất cả các thuộc tính xác thực đã khai báo.

Giải pháp sẽ giúp bạn áp dụng siêu dữ liệu thuộc tính bổ sung cho lớp được tạo tự động là các lớp thân thiện. Về cơ bản, bạn tạo một lớp riêng biệt chứa các thuộc tính siêu dữ liệu và xác thực của mình, sau đó liên kết nó với lớp được tạo bằng cách áp dụng thuộc tính “MetadataType” cho lớp một phần được tạo. Ví dụ: chúng ta muốn áp dụng các quy tắc xác thực mà chúng ta đã sử dụng trước đó cho lớp Person được tạo bằng cách sử dụng hàm tạo LINQ to SQL hoặc ADO.NET EF, để thực hiện điều này, chúng ta sẽ chuyển mã xác thực của mình vào lớp “Person_Validation” và liên kết nó với lớp “Người”:

Tùy chọn này không tinh tế như tùy chọn POCO, nhưng nó có ưu điểm là làm việc với hầu hết các công cụ hoặc mã do nhà thiết kế tạo ra trong Visual Studio.

Bước cuối cùng là Lưu Friend vào cơ sở dữ liệu.

Bước cuối cùng của chúng tôi, bất kể cách tiếp cận mà chúng tôi đã sử dụng: POCO hay lớp Person do công cụ tạo ra, sẽ lưu các đối tượng Friend hợp lệ vào cơ sở dữ liệu.

Để thực hiện việc này, chúng tôi thay thế nhãn “Todo” trong lớp FriendsController bằng ba dòng mã sẽ lưu người bạn mới vào cơ sở dữ liệu. Dưới đây là phiên bản hoàn chỉnh của lớp FriendsController hoạt động với ADO.NET EF:

Bây giờ, khi truy cập URL /Friends/Create, chúng ta có thể dễ dàng thêm đối tượng People mới vào danh sách bạn bè trong cơ sở dữ liệu:

Việc xác thực tất cả dữ liệu xảy ra trên máy khách và máy chủ. Chúng ta có thể dễ dàng thêm/thay đổi/xóa các quy tắc xác thực và chúng sẽ được sử dụng chắc chắn bởi bất kỳ bộ điều khiển hoặc chế độ xem nào trong ứng dụng của chúng ta.

Hãy tóm tắt lại

ASP.NET MVC 2 giúp việc tích hợp xác thực vào các ứng dụng web trở nên dễ dàng hơn nhiều. Cung cấp cách tiếp cận dựa trên mô hình để xác thực, tránh trùng lặp mã trong Những nơi khác nhau và cũng cho phép bạn đảm bảo rằng các quy tắc xác thực được đảm bảo sẽ được sử dụng trong toàn bộ ứng dụng. Hỗ trợ tích hợp cho DataAnnotation cho phép bạn triển khai các tùy chọn xác thực phổ biến ngay lập tức. Hỗ trợ mở rộng cơ sở hạ tầng xác thực cho phép bạn triển khai các kịch bản xác minh khác nhau và kết nối mọi khung xác thực.

Xác nhận là quá trình kiểm tra xem một mô hình có phải là mô tả đủ chính xác về hệ thống cho mục đích của một nghiên cứu cụ thể hay không.

Việc xác nhận chỉ có ý nghĩa khi mục tiêu của nghiên cứu được xác định

*Xác nhận mô hình của hệ thống hiện tại thường dễ hơn xác thực mô hình của hệ thống được thiết kế

*Không trì hoãn việc xác nhận cho đến khi kết thúc công việc

*Nếu như mẫu cũđược sử dụng cho mục đích mới thì việc xác nhận phải được lặp lại

Các phương pháp xác nhận mô hình khái niệm

*Xác định mục tiêu nghiên cứu

*Mô tả mô hình khái niệm (“Giả định”)

*Thu hút các chuyên gia trong lĩnh vực xác minh [chính thức] mô hình khái niệm (“xác thực khuôn mặt” và theo dõi)

Phương pháp xác thực dữ liệu

*Phân tích độ nhạy của kết quả mô phỏng với sự thay đổi của dữ liệu đầu vào

*Kiểm tra thống kê về phân bố xác suất theo kinh nghiệm

* Kiểm tra tính nhất quán

Các phương pháp tăng độ tin cậy

* Tương tác liên tục với người dùng, giải thích chi tiết và sự thống nhất về các giả định có trong mô hình

* Chứng minh rằng mô hình đã được xác thực và xác minh. Xác nhận, xác minh và công nhận độc lập mô hình

*Cung cấp cho người dùng khả năng thực hiện mô phỏng một cách độc lập. Hình dung kết quả đẹp và rõ ràng

* Danh tiếng của nhà phát triển mô hình

Khái niệm về sự kiện trong mô hình mô phỏng.

Nếu một mô hình được xây dựng để nghiên cứu các mối quan hệ nhân quả vốn có trong một hệ thống thì nên mô tả động lực của hệ thống đó dưới dạng các sự kiện.

Một sự kiện là một sự thay đổi tức thời trong một số thành phần của hệ thống hoặc trạng thái của toàn bộ hệ thống. Sự kiện này được đặc trưng bởi:

Điều kiện (hoặc quy luật) xảy ra;

Loại xác định thứ tự xử lý (kỷ luật dịch vụ) của một sự kiện nhất định;

Thời lượng bằng không.

Sự kiện được chia thành hai loại:

Các sự kiện trình tự, kiểm soát việc khởi tạo các quy trình (hoặc các hoạt động riêng lẻ trong một quy trình);

Các sự kiện thay đổi trạng thái (các thành phần của hệ thống hoặc toàn bộ hệ thống).

Cơ chế sự kiện được sử dụng làm cơ sở để xây dựng các mô hình được thiết kế để nghiên cứu mối quan hệ nhân quả trong các hệ thống khi không có ràng buộc về thời gian. Những nhiệm vụ như vậy bao gồm, ví dụ, một số nhiệm vụ đánh giá độ tin cậy.

Nguyên tắc phát triển mô hình mô phỏng.

Khi phát triển mô hình mô phỏng, phải tuân thủ các nguyên tắc sau.

Nguyên tắc cung cấp thông tin.

Tại sự vắng mặt hoàn toàn thông tin về hệ thống đang nghiên cứu thì không thể xây dựng được mô hình của nó. Với sự hiện diện của thông tin đầy đủ về hệ thống, việc mô hình hóa nó là vô nghĩa. Do đó, có một mức độ quan trọng nhất định của thông tin tiên nghiệm về hệ thống (mức độ đầy đủ thông tin), khi đạt được thì có thể thu được mô hình đầy đủ của nó.

Nguyên tắc khả thi.

Mô hình được tạo phải đảm bảo đạt được mục tiêu đã đặt ra với xác suất khác 0 và trong thời gian hữu hạn. Thông thường, xác suất ngưỡng p0 để đạt được mục tiêu mô hình hóa được chỉ định, biểu thị bằng hàm p(t), cũng như giới hạn thời gian chấp nhận được t0 để đạt được mục tiêu này. Mô hình được coi là khả thi nếu bất đẳng thức p(t) ? p0, t? t0.

Nguyên tắc của nhiều mô hình.

Nguyên tắc này là chìa khóa. Trước hết, mô hình được tạo phải phản ánh các thuộc tính của hệ thống đang được triển khai hoặc các hiện tượng ảnh hưởng đến chỉ số hiệu suất đã chọn.

Khi sử dụng bất kỳ mô hình cụ thể nào, chỉ có một số khía cạnh của thực tế được xem xét. Để nghiên cứu đầy đủ hơn về một đối tượng hoặc hệ thống, cần có một số mô hình cho phép các mặt khác nhau và phản ánh quá trình đang được xem xét với mức độ chi tiết khác nhau.

Nguyên tắc tổng hợp.

Một hệ thống phức tạp có thể được biểu diễn dưới dạng tập hợp hoặc hệ thống con, mỗi hệ thống có thể được mô tả bằng một số phương pháp toán học tiêu chuẩn hoặc mô hình ứng dụng. Nguyên tắc này cho phép bạn xây dựng lại một cách linh hoạt mô hình chung hệ thống trong khuôn khổ giải quyết các vấn đề được giải quyết trong quá trình nghiên cứu.

Nếu nghiên cứu các mô hình được xây dựng cho kết quả tương tự thì nghiên cứu đã hoàn thành thành công. Nếu các kết quả khác nhau thì cần phải xem xét lại cách trình bày bài toán hoặc đặt ra câu hỏi về tính thích hợp của các mô hình toán học.

Nguyên tắc tham số hóa.

Trong một số trường hợp, hệ thống được mô hình hóa chứa một số hệ thống con tương đối biệt lập, hoạt động của chúng được đặc trưng bởi các tham số nhất định, cũng có thể được đặc trưng bởi đại lượng vectơ. Những hệ thống con như vậy có thể được thay thế trong mô hình bằng các giá trị số tương ứng, thay vì mô tả quá trình hoạt động của chúng. Sự phụ thuộc của giá trị của các đại lượng này, tùy theo tình huống, có thể được chỉ định dưới dạng bảng, biểu đồ hoặc biểu thức phân tích. Nguyên tắc tham số hóa giúp giảm khối lượng tính toán và công việc khác cũng như thời gian lập mô hình. Tuy nhiên, việc tham số hóa có thể làm giảm tính đầy đủ của mô hình.

Nguyên tắc thiết thực.

Cần phải so sánh độ chính xác của dữ liệu nguồn với kết quả cần thu được.

Nguyên tắc bền vững.

Bất kỳ hệ thống phức tạp nào luôn chịu tác động nhỏ từ bên ngoài và bên trong, vì vậy mô hình phải ổn định và cố gắng duy trì các đặc tính và cấu trúc của nó, ngay cả trong trường hợp có nhiều ảnh hưởng khác nhau.

Nguyên tắc về sự thỏa đáng.

Mô hình phải phản ánh những đặc điểm cơ bản của hiện tượng đang được nghiên cứu nhưng không được đơn giản hóa quá nhiều các quy trình đang được nghiên cứu.

Mức độ thực hiện các nguyên tắc được liệt kê trong mỗi mô hình cụ thể có thể khác nhau và điều này không chỉ phụ thuộc vào mong muốn của nhà phát triển mà còn phụ thuộc vào việc tuân thủ công nghệ mô hình hóa của anh ta.

Khi lập mô hình, người nghiên cứu phải tin tưởng vào tính đúng đắn của mô hình, phù hợp với nguyên mẫu thật. Sự chính xác mô hình toán học phụ thuộc vào mức độ mô hình toán học phản ánh các thuộc tính của đối tượng. Điều quan trọng là nhà nghiên cứu phải biết mình nhận được kết quả với sai số nào, vì trong trường hợp có sai số lớn, phép tính sẽ trở nên vô nghĩa.

Độ chính xác của mô hình bị ảnh hưởng bởi Các tính năng sau đây:

■ đơn giản hóa mô hình;

■ sai sót khi xây dựng mô hình;

■ sử dụng các phần tử có độ chính xác thấp, gần đúng tuyến tính;

■ sự hiện diện của các phần tử hữu hạn suy biến trong mô hình;

■ kết nối không chính xác;

thông số không chính xác mô hình;

■ thuộc tính không chính xác của các phần tử;

■ điều kiện biên và ban đầu không đúng;

■ sai sót trong phương pháp tính toán.

Dựa trên kết quả kiểm tra, chẳng hạn như chỉ số của thiết bị, những thay đổi được thực hiện đối với mô hình toán học. Kết quả là, một mô hình được tạo ra, kết quả của nó trùng khớp với các đối tượng thực có lỗi nhất định.

Xác minh mô hình(xác minh mô hình) – kiểm tra tính đúng đắn, đầy đủ của nó. Dịch sát nghĩa từ tiếng Anh: xác minh là: 1) kiểm soát, xác minh; Đồng bộ: kiểm tra, kiểm tra; 2) xác nhận, xác nhận (dự đoán, nghi ngờ) (a); xác nhận có tuyên thệ (b); 3) chứng kiến. Liên quan đến các mô hình mô tả, việc xác minh mô hình là so sánh kết quả tính toán sử dụng mô hình với dữ liệu thực tế tương ứng - sự kiện và mô hình phát triển kinh tế. Đối với các mô hình quy chuẩn (bao gồm cả tối ưu hóa), tình hình phức tạp hơn: trong điều kiện của cơ chế kinh tế hiện tại, đối tượng được mô hình hóa chịu các tác động kiểm soát khác nhau mà mô hình không cung cấp; cần phải thực hiện một thí nghiệm kinh tế đặc biệt có tính đến các yêu cầu về độ sạch, tức là. loại bỏ ảnh hưởng của những ảnh hưởng này, đây là một nhiệm vụ khó khăn và phần lớn chưa được giải quyết.

Việc xác minh mô hình mô phỏng là kiểm tra xem hành vi của nó có phù hợp với các giả định của người thử nghiệm hay không. Khi một mô hình được tổ chức dưới dạng một chương trình máy tính, các lỗi viết mô hình bằng ngôn ngữ thuật toán trước tiên sẽ được sửa, sau đó tiến hành xác minh. Đây là bước đầu tiên trong việc chuẩn bị thực sự cho thí nghiệm mô phỏng. Một số dữ liệu ban đầu được chọn để có thể dự đoán được kết quả tính toán. Nếu máy tính tạo ra dữ liệu trái ngược với dữ liệu được mong đợi khi mô hình được hình thành thì mô hình đó không chính xác, tức là. không đáp ứng được mong đợi của nó. Nếu không, họ sẽ chuyển sang giai đoạn tiếp theo để kiểm tra hiệu suất của mô hình – xác thực mô hình.

Mẫu chính thức(xác thực mô hình) – kiểm tra sự tuân thủ của dữ liệu thu được trong quá trình mô phỏng máy với diễn biến thực tế của các hiện tượng mà mô hình được tạo ra. Nó được thực hiện khi người thử nghiệm bị thuyết phục ở giai đoạn trước (xác minh) về tính đúng đắn của cấu trúc (logic) của mô hình và bao gồm thực tế là dữ liệu đầu ra sau khi tính toán trên máy tính được so sánh với thông tin thống kê có sẵn. về hệ thống được mô hình hóa.

Trong hơn nhìn chung Xác minh là sự xác nhận, dựa trên việc cung cấp bằng chứng khách quan, rằng các yêu cầu cụ thể đã được đáp ứng. Nói một cách hình tượng, xác minh là một thủ tục để so sánh những gì đã được thực hiện (hoặc vẫn đang được thực hiện) với những gì đã được dự định (quy định) phải thực hiện, tức là. so sánh kết quả đã hoàn thành hoặc kết quả trung gian với yêu cầu đầu vào - “nhìn lại”.

Xác nhận là sự xác nhận, dựa trên việc cung cấp bằng chứng khách quan, rằng các yêu cầu dành cho mục đích sử dụng hoặc ứng dụng cụ thể đã được đáp ứng. Nói một cách hình tượng, xác nhận là một thủ tục để so sánh những gì dự định thực hiện (hoặc vẫn đang được thực hiện) với những gì người tiêu dùng cần cho một ứng dụng cụ thể, tức là. so sánh kết quả dự kiến ​​hoặc trung gian của một hoạt động với yêu cầu đầu ra hiện tại - “look Forward”. Dịch sát nghĩa từ tiếng Anh: xác nhận là: 1) phê chuẩn, phê duyệt, Đồng bộ: phê chuẩn; 2) hợp pháp hóa, công nhận hiệu lực pháp luật, trao hiệu lực pháp lý.

Xác minh là một công cụ xác nhận, một phần của nó. Quá trình xác minh tiếp tục cho đến thời điểm chương trình được mã hóa và quá trình xác thực diễn ra ngay sau đó. Do đó, trong thực hành mô hình hóa bằng máy tính, việc xác minh và xác nhận các mô hình được hoàn thành sau khi tiến hành thử nghiệm tính toán và xác nhận sự tuân thủ của nó với kết quả của cả quá trình thực tế của đối tượng đang nghiên cứu và việc tuân thủ các điều kiện áp dụng (hoặc yêu cầu) cụ thể. ). Tuy nhiên, trong hầu hết các trường hợp, các quy trình xác minh, xác nhận, thử nghiệm và triển khai đều trùng lặp về mặt thời gian.

Hai cách tiếp cận để xác nhận phần mềm được sử dụng. Cách tiếp cận đầu tiên suy diễn,được đại diện bởi các lĩnh vực nghiên cứu như chứng minh định lý tự động, sử dụng nhiều tập hợp và đồ thị, cũng như nhiều loại đại số chuyên ngành. Một hệ thống phần mềm được mô tả trong khuôn khổ của một chủ nghĩa hình thức nhất định, sau đó một bằng chứng toán học nghiêm ngặt về việc hệ thống này sở hữu một số thuộc tính nhất định được thực hiện. Cách tiếp cận thứ hai - người mẫu; Những người theo ông không tìm cách lắp hệ thống vào khuôn khổ lý thuyết mà thay vào đó xây dựng một mô hình của hệ thống, có thể được coi là một cỗ máy hoặc máy tự động. Mọi yêu cầu hệ thống đều được kiểm tra cho từng trạng thái có thể có của máy.

Cách tiếp cận mô hình không chỉ hỗ trợ xác minh hoàn chỉnh mà còn hỗ trợ xác minh một phần, có thể nhằm mục đích chỉ kiểm tra một thuộc tính nhỏ, loại bỏ các chi tiết ít quan trọng hơn của hệ thống. Nói cách khác, để tiến hành xác minh, không nhất thiết phải đạt được sự chính thức hóa tất cả các yêu cầu đặc tả mà không có ngoại lệ. Không giống như thử nghiệm và sử dụng trình mô phỏng, trong cách tiếp cận dựa trên mô hình không có xác suất phát hiện lỗi: nếu có lỗi, nó sẽ được phát hiện trong một thời gian hữu hạn.

Trong trường hợp tài sản bị vi phạm, thông tin chẩn đoán được cung cấp dưới dạng phản ví dụ.

Quá trình kiểm tra mô hình không yêu cầu sự điều khiển thủ công của người dùng cũng như cấp độ cao tính chuyên nghiệp. Có mô hình, bạn có thể tự động kiểm tra nó tính chất cần thiết. Quá trình xác minh được tích hợp vào chu trình thiết kế tiêu chuẩn, cho phép, như thực tế cho thấy, giảm thời gian tạo ứng dụng, có tính đến việc tái cấu trúc mã chương trình.

Tuy nhiên, cách tiếp cận mô hình cũng có mặt yếu. Việc xác minh được thực hiện theo mô hình chứ không phải theo hệ thống thực, do đó giá trị của kết quả thu được trực tiếp phụ thuộc vào tính chính xác của mô hình, điều này đòi hỏi nhân sự tạo mô hình chương trình phải được đào tạo ở trình độ cao. Cách tiếp cận mô hình không thể được áp dụng hiệu quả nếu không có các thuật toán ra quyết định chính xác. Không có sự đảm bảo nào về tính đầy đủ: chỉ những thuộc tính được chỉ định rõ ràng mới được kiểm tra.

Xây dựng mô hình và xây dựng yêu cầu đòi hỏi trình độ kiến ​​thức cao và khả năng áp dụng chúng. Kết quả có thể sai lệch (trình xác minh cũng là một chương trình và cũng có thể mắc lỗi, mô hình có thể chứa lỗi; tuy nhiên, các quy trình cơ bản để kiểm tra mô hình được chứng minh chính thức bằng các gói chứng minh định lý tự động). Không có trình xác minh nào hỗ trợ việc khái quát hóa; ví dụ: không thể kiểm tra một hệ thống nếu số lượng thực thể trong đó không cố định.

Có thể tìm thấy các ví dụ về áp dụng thành công phương pháp mô hình bằng cách nghiên cứu quá trình phát triển hệ thống phức tạp hoạt động với khối lượng dữ liệu lớn: DBMS, tổ hợp xử lý luồng thông tin giọng nói và văn bản, hệ thống hỗ trợ bảo mật thông tin. Cách tiếp cận mô hình để xác minh phần mềm cho phép, với sự phân tích chính xác của toàn bộ tổ hợp, thiết kế và phát triển các mô-đun và thành phần nguyên tử, xác định các lỗi logic ở giai đoạn thiết kế. Do đó, khi phát triển phần mềm xử lý luồng hình ảnh raster, trong khuôn khổ phương pháp tiếp cận mô hình, một mô hình đã được hình thành để xác minh trình quản lý công việc xử lý luồng và trình xử lý tác vụ nguyên tử, giúp xác định các lỗi trong thiết kế giao thức cho sự tương tác của các mô-đun phức tạp và thuật toán xác định trình xử lý tác vụ nguyên tử. Mô hình này dựa trên việc sử dụng mạng Petri và các thuật toán liên quan.

Nói về chức năng, chúng ta thường muốn nói đến một tập hợp các thuộc tính nhất định được thiết kế để tồn tại một bộ nhất định chức năng và tính chất đặc biệt của chúng để đạt được mục tiêu:

sự phù hợp.Ứng dụng có thực hiện nhiệm vụ dự định của nó không? Có thể được xác minh bằng cách mô phỏng chính xác môi trường đi kèm (một cách tiếp cận tương tự như thử nghiệm);

sự chính xác. Kết quả từ ứng dụng chính xác đến mức nào? Khó thực hiện bằng cách tiếp cận mô hình; xác minh logic trong trong trường hợp này sẽ hiệu quả hơn;

sự an toàn. Có bất kỳ rò rỉ thông tin trái phép? Được xác minh trực tiếp bằng cách xây dựng các truy vấn thích hợp. Ngoài ra còn có một số trình xác minh không có mô hình có thể giải quyết vấn đề tương tự;

thư tín. Chức năng được triển khai có tuân thủ không? tiêu chuẩn này? Tiêu chuẩn được sử dụng làm đặc tả (nguồn yêu cầu), việc thực hiện chức năng được mô hình hóa;

khả năng tương thích.Ứng dụng này có thể giao tiếp với phần mềm liên quan của các nhà sản xuất khác không? Một giá trị gần đúng được ngụ ý là khả năng tương thích miễn là có sự phù hợp với tiêu chuẩn và không có tính năng nào không có giấy tờ. Nếu cần kiểm tra chính xác hơn, nó sẽ tự động tháo gỡ và mô phỏng các phần được chỉ định của mã chương trình, gỡ lỗi thủ công và xây dựng biểu đồ điều khiển và truyền dữ liệu.

Nhiều thuộc tính độ tin cậy mô tả khả năng của phần mềm trong việc duy trì một mức dịch vụ nhất định được cung cấp trong những điều kiện nhất định và trong một khoảng thời gian nhất định:

sự trọn vẹn. Mức độ dịch vụ được cung cấp ban đầu có đủ không? Mọi thứ đã được thực hiện chưa? Theo định nghĩa, thuộc tính này không thể được xác minh bằng thử nghiệm chính thức: đối với mỗi chức năng dự kiến, một yêu cầu (hoặc bộ yêu cầu) được xây dựng và thử nghiệm trên mô hình;

khả năng chịu lỗi. Chương trình có hoạt động phù hợp khi được cung cấp dữ liệu đầu vào rõ ràng là không chính xác không? Việc thực hiện theo phương pháp mô hình là rất kém hiệu quả và cồng kềnh, có những phương pháp thử nghiệm tốt để giải quyết vấn đề này;

sức đề kháng môi trường (sức mạnh). Ứng dụng có thể hoạt động tốt trong môi trường không chuẩn hoặc không ổn định không? Việc sử dụng cách tiếp cận mô hình trong trường hợp này chỉ có thể thực hiện được nếu có khả năng mô hình hóa môi trường. Tuy nhiên, việc mô hình hóa chính xác một tình huống căng thẳng là rất nhiệm vụ không tầm thường;

khả năng phục hồi.Ứng dụng có thể tiếp tục chạy sau khi gặp sự cố không? Theo quy định, thuộc tính này được ghi rõ ràng trong chương trình và chỉ cần kiểm tra. Có thể được xác minh bằng cả xác minh và thử nghiệm mô hình.

Nhiều thuộc tính để dễ sử dụng mô tả những khó khăn trong việc sử dụng phần mềm và Đánh giá chủ quan một hoặc một nhóm người dùng khác:

trong trẻo. Nó trực quan đến mức nào? giao diện người dùng các ứng dụng? Nó không phù hợp với việc hình thức hóa khoa học. Mặc dù các quy tắc ít chính thức hơn đã tồn tại từ lâu nhưng việc xác minh mô hình là không thể;

khả năng học tậpỨng dụng có thích ứng với nhu cầu cụ thể của người dùng không? Thuật toán được sử dụng trí tuệ nhân tạo, có thể xác minh được thì dấu hiệu có thể xác minh được tương ứng;

khả năng kiểm soát. Quản lý ứng dụng có dễ dàng không? Khu vực này, theo truyền thống được dành riêng cho thử nghiệm beta, gần đây đã được chuyển sang tay các chuyên gia giao diện người dùng.

Nhiều thuộc tính hiệu suất xác định mối quan hệ giữa mức độ dịch vụ do ứng dụng cung cấp và lượng tài nguyên được sử dụng:

hành vi theo thời gian. Lịch trình thời gian sử dụng nguồn lực có phù hợp không? Trong trường hợp này bạn cần kiểm tra hệ thống thực chứ không phải mô hình của nó (ví dụ: để tìm rò rỉ bộ nhớ). Hoàn toàn không phù hợp để xác minh mô hình;

sử dụng tài nguyên. Các nguồn lực có được sử dụng hiệu quả không? Tập trung vào hệ thống thực và có các phương pháp thử nghiệm chính thức hiệu quả, chủ yếu dựa trên sự kết hợp giữa mạng Petri và các ngôn ngữ chuyên dụng để mô tả các mô hình xác minh khi chạy định lượng tài nguyên có khả năng được sử dụng; giá trị tối đa đưa ra ước tính hoàn toàn hiệu quả, phù hợp với hầu hết các triển khai;

thuật toán hóa. Các thuật toán được sử dụng tối ưu như thế nào? Phân tích cổ điển của các thuật toán cùng với xác minh chính thức của chúng cung cấp kết quả nhanh chóng và chính xác.

Rất nhiều thuộc tính hỗ trợđề cập đến nỗ lực thực hiện một số thay đổi nhất định đối với một ứng dụng đang chạy:

khả năng phân tích. Việc xác định những phần cần thay đổi có dễ dàng không? Không tuân theo chính thức hóa;

tính hay thay đổi. Cần nỗ lực gì để thực hiện thay đổi? Không tuân theo sự chính thức hóa, mức độ có thể được thiết lập trước;

khả năng tùy biến Có thể đạt được hiệu quả mong muốn mà không cần thay đổi chương trình, chỉ thay đổi cài đặt không? Vấn đề được giải quyết bằng cách thử nghiệm trong điều kiện thực tế;

sự ổn định. Chương trình hoạt động như thế nào khi các thay đổi được thực hiện nhanh chóng? Giải quyết hiệu quả bằng cách xác minh mô hình bằng cách sử dụng các quy trình song song không xác định;

khả năng kiểm chứng. Việc kiểm tra hoạt động của mạch đã thay đổi có dễ dàng như thế nào? Nó được giải quyết song song với việc kiểm tra hoặc một cách chủ động và rõ ràng và thực tế không liên quan gì đến việc xác minh.

Rất nhiều thuộc tính di động mô tả khả năng của phần mềm được chuyển từ môi trường này sang môi trường khác:

khả năng thích ứng.Ứng dụng có thể thay đổi theo sự thay đổi của môi trường không? Tương tác các quá trình tuần tự không xác định tạo ra kết quả tốt, kể cả trong cách tiếp cận mô hình;

khả năng cài đặt.Ứng dụng có thể được cài đặt trên nền tảng khác nhau hoặc trong cấu hình khác nhau? Theo quy định, nó được chỉ định rõ ràng trong đặc tả và được triển khai rõ ràng và không cần phải kiểm tra;

Tính nhất quán. Những tiêu chuẩn nào đã được sử dụng trong ứng dụng? Không yêu cầu xác minh, nhưng bản thân việc tuân thủ các tiêu chuẩn có thể và cần được xác minh;

khả năng thay thế.Ứng dụng có thể được sử dụng theo cách tương tự như ứng dụng tương đương của nhà sản xuất khác không? Nó có phụ thuộc vào danh sách các tùy chọn của các ứng dụng liên quan có thể hoặc nên được triển khai không?

Điều này liên quan đến giai đoạn xây dựng yêu cầu và do đó không liên quan đến việc xác minh.

Danh sách chung sau đây về các thuộc tính có thể được xác minh bằng kỹ thuật xác minh và xác thực mô hình càng ngắn càng tốt. Các thuộc tính không được đề cập (ví dụ: khả năng mở rộng hoặc khả năng tồn tại) nhưng gặp phải trong thực tế, có thể được rút gọn vào danh sách này. Điều quan trọng cần lưu ý là việc xác minh và xác nhận các mô hình được triển khai bằng công nghệ máy tính có thể được thực hiện bằng cách kiểm tra phần mềm được sử dụng trong mô hình hóa ở cấp độ hệ thống, các yêu cầu về kiến ​​trúc và chức năng đối với phần mềm, trong khi kiểm tra mã của nó không thay thế các thủ tục xác minh và xác nhận mô hình.