Từ mô hình hóa quy trình đến thiết kế hệ thống tự động (Phần 1)

“Một ngày trong cuộc đời của một con sóc” hay từ mô hình hóa quy trình đến thiết kế hệ thống kế toán tài sản tự động “Belka-1.0” (Phần 1)

Từ mô hình hóa quy trình đến thiết kế hệ thống tự động (Phần 1)
Một hình minh họa được sử dụng cho “Truyện kể về Sa hoàng Saltan” của A.S. Pushkin, do Nhà xuất bản Văn học Trẻ em xuất bản, Moscow, 1949, Leningrad, tranh vẽ của K. Kuznetsov

“Sóc” có liên quan gì tới chuyện này?

Tôi sẽ giải thích ngay con sóc có liên quan gì đến việc này. Đã xem qua các dự án thú vị trên Internet để học UML dựa trên một lĩnh vực chủ đề mượn từ truyện cổ tích (ví dụ: đây [1]), tôi cũng quyết định chuẩn bị một ví dụ tương tự cho học sinh của mình để các em chỉ có thể nghiên cứu ba loại sơ đồ để bắt đầu: Sơ đồ hoạt động, Sơ đồ ca sử dụng và Sơ đồ lớp. Tôi cố tình không dịch tên các sơ đồ sang tiếng Nga để tránh tranh chấp về “khó khăn trong dịch thuật”. Tôi sẽ giải thích nó là gì sau. Trong ví dụ này tôi đang sử dụng khung Enterprise Architect của một công ty Úc Hệ thống Sparx [2] – một công cụ tốt với mức giá hợp lý. Và như một phần của các buổi đào tạo của tôi, tôi sử dụng người mẫu [3], một công cụ thiết kế hướng đối tượng miễn phí tốt hỗ trợ các tiêu chuẩn UML2.0 và BPMN, không có chuông và còi không cần thiết về khả năng trực quan, nhưng khá đủ để học những điều cơ bản về ngôn ngữ.

Chúng tôi sẽ tự động hóa hoạt động kế toán tài sản vật chất phát sinh trong các quy trình này.

...
Một hòn đảo nằm trên biển, (E1, E2)
Có mưa đá trên đảo (E3, E1)
Với những nhà thờ mái vòm dát vàng (E4)
Với tháp và vườn; (E5, E6)
Một cây vân sam mọc trước dinh, (E7, E8)
Và bên dưới là một ngôi nhà pha lê; (E9)
Một con sóc thuần hóa sống ở đó, (A1)
Vâng, thật là một cuộc phiêu lưu! (A1)
Con sóc hát những bài hát, (P1, A1)
Vâng, anh ấy cứ gặm hạt, (P2)
Nhưng quả hạch không hề đơn giản, (C1)
Tất cả vỏ đều bằng vàng, (C2)
Lõi là ngọc lục bảo nguyên chất; (C3)
Người hầu canh sóc, (P3, A2)
Họ phục vụ cô như nhiều người hầu khác nhau (P4)
Và một thư ký đã được phân công (A3)
Một tài khoản nghiêm ngặt về các loại hạt là tin tức; (P5, C1)
Quân đội chào cô; (P6, A4)
Một đồng xu được đổ ra từ vỏ sò, (P7, C2, C4)
Hãy để họ đi khắp thế giới; (P8)
Cô gái đổ ngọc lục bảo (P9, A5, C3)
Vào nhà kho và có mái che; (E10, E11)
...
(A.S. Pushkin “Câu chuyện về Sa hoàng Saltan, về người anh hùng vinh quang và dũng mãnh của ông, Hoàng tử Guidon Saltanovich và Công chúa Thiên nga xinh đẹp”, công việc viết truyện cổ tích có lẽ bắt đầu vào năm 1822; truyện cổ tích được Pushkin xuất bản lần đầu tiên trong tuyển tập “Những bài thơ của A. Pushkin” (Phần III, 1832, trang 130-181) - Nhân tiện, 10 năm từ ý tưởng đến xuất bản!)

Một chút về các mã được viết ở bên phải dòng. “A” (từ “Actor”) có nghĩa là dòng chứa thông tin về người tham gia quy trình. “C” (từ “Class”) – thông tin về các đối tượng lớp được xử lý trong quá trình thực thi các quy trình. “E” (từ “Môi trường”) – thông tin về các đối tượng lớp đặc trưng cho môi trường để thực thi các quy trình. “P” (từ “Quy trình”) – thông tin về chính các quy trình đó.

Nhân tiện, định nghĩa chính xác về một quy trình cũng được cho là nguyên nhân gây ra tranh chấp về phương pháp luận, nếu chỉ do thực tế là có các quy trình khác nhau: kinh doanh, sản xuất, công nghệ, v.v. và như thế. (ví dụ, bạn có thể tìm hiểu, đây [4] và đây [5]). Để tránh tranh cãi, hãy đồng ý rằng Chúng tôi quan tâm đến quy trình này từ quan điểm về tính lặp lại của nó theo thời gian và nhu cầu tự động hóa, I E. chuyển việc thực hiện bất kỳ phần nào của hoạt động quy trình sang hệ thống tự động.

Lưu ý khi sử dụng sơ đồ Hoạt động

Hãy bắt đầu mô hình hóa quy trình của chúng tôi và sử dụng sơ đồ Hoạt động cho việc này. Trước tiên, hãy để tôi giải thích cách sử dụng các mã trên trong mô hình. Sẽ dễ dàng hơn để giải thích bằng một ví dụ minh họa, nhưng đồng thời chúng ta sẽ phân tích một số thành phần (gần như tất cả những thành phần chúng ta cần) của sơ đồ Hoạt động.
Hãy phân tích đoạn sau:

...
Con sóc hát những bài hát, (P1, A1)
Vâng, anh ấy cứ gặm hạt, (P2)
Nhưng quả hạch không hề đơn giản, (C1)
Tất cả vỏ đều bằng vàng, (C2)
Lõi là ngọc lục bảo nguyên chất; (C3)
...

Chúng tôi có hai bước quy trình P1 và P2, người tham gia A1 và các đối tượng thuộc ba lớp khác nhau: một đối tượng của lớp C1 là đầu vào cho bước này, các đối tượng của lớp C2 và C3 là đầu ra do hoạt động của bước P2 này của chúng tôi. quá trình. Đối với sơ đồ, chúng tôi sử dụng các yếu tố mô hình hóa sau đây.

Từ mô hình hóa quy trình đến thiết kế hệ thống tự động (Phần 1)

Một phần trong quy trình của chúng tôi có thể được biểu diễn giống như thế này (Hình 1).

Từ mô hình hóa quy trình đến thiết kế hệ thống tự động (Phần 1)

Hình 1. Đoạn sơ đồ hoạt động

Để tổ chức không gian và cấu trúc sơ đồ Hoạt động, chúng tôi sẽ sử dụng một cách tiếp cận không chuẩn, theo quan điểm sử dụng ký hiệu UML cổ điển. Nhưng có một số lý do cho việc này. Đầu tiên, ngay trước khi bắt đầu lập mô hình, chúng ta sẽ biên dịch cái gọi là thỏa thuận mô hình, trong đó chúng tôi ghi lại tất cả các tính năng của việc sử dụng ký hiệu. Thứ hai, cách tiếp cận này đã được áp dụng thành công nhiều lần ở giai đoạn mô hình hóa nghiệp vụ trong các dự án thực tế để tạo ra các hệ thống phần mềm; kết quả đã được nhóm tác giả nhỏ của chúng tôi ghi lại trong đối tượng bản quyền tương ứng [6] và cũng được sử dụng trong sổ tay đào tạo [ 7]. Đối với sơ đồ Hoạt động, chúng tôi xác định rằng trường sơ đồ được cấu trúc bằng cách sử dụng “làn đường bơi”. Tên bản nhạc sẽ tương ứng với loại thành phần biểu đồ sẽ được đặt trên bản nhạc đó.

"Các tạo phẩm đầu vào và đầu ra": Bản nhạc này sẽ chứa các phần tử Đối tượng - các đối tượng được sử dụng hoặc là kết quả của việc thực hiện một số bước quy trình.
“Các bước xử lý”: Ở đây chúng ta sẽ đặt các phần tử Hoạt động - hành động của những người tham gia quá trình.
"Những người tham gia": một đường dẫn cho các phần tử sẽ biểu thị vai trò của những người thực hiện hành động trong quy trình của chúng tôi; đối với họ, chúng tôi sẽ sử dụng cùng một phần tử mô hình hóa Đối tượng - một đối tượng, nhưng chúng tôi sẽ thêm khuôn mẫu “Diễn viên” vào đó.
Bài hát tiếp theo có tên "Quy tắc kinh doanh" và trên đường đi này, chúng tôi sẽ đặt dưới dạng văn bản các quy tắc để thực hiện các bước của quy trình và để làm được điều này, chúng tôi sẽ sử dụng phần tử mô hình hóa Ghi chú - một ghi chú.
Chúng ta sẽ dừng ở đây, mặc dù chúng ta cũng có thể sử dụng đường dẫn "Công cụ" để thu thập thông tin về mức độ tự động hóa quy trình. Một con đường cũng có thể có ích "Vị trí và sự phân chia của người tham gia", nó có thể được sử dụng để liên kết các vai trò với các vị trí và phòng ban của những người tham gia quy trình.

Mọi thứ tôi vừa mô tả chỉ là một mảnh vỡ quy ước mô hình hóa, phần này của thỏa thuận liên quan đến các quy tắc tổ chức một sơ đồ và theo đó, các quy tắc viết và đọc nó.

"Công thức"

Bây giờ hãy xem xét tùy chọn mô hình hóa hệ thống một cách cụ thể từ sơ đồ Hoạt động. Đây chỉ là một trong những lựa chọn, tôi lưu ý rằng tất nhiên nó không phải là lựa chọn duy nhất. Sơ đồ hoạt động sẽ khiến chúng ta quan tâm từ quan điểm về vai trò của nó trong quá trình chuyển đổi từ mô hình hóa quy trình sang thiết kế một hệ thống tự động. Để làm được điều này, chúng tôi sẽ tuân thủ các khuyến nghị về phương pháp luận - một loại công thức chỉ bao gồm năm giai đoạn và chỉ cung cấp cho việc phát triển ba loại sơ đồ. Sử dụng công thức này sẽ giúp chúng tôi có được mô tả chính thức về quy trình mà chúng tôi muốn tự động hóa và thu thập dữ liệu để thiết kế hệ thống. Và đối với những sinh viên mới bắt đầu học UML, đây là một loại cứu cánh sẽ không cho phép họ chìm đắm trong tất cả các phương tiện và kỹ thuật trực quan đa dạng có trong UML và các công cụ mô hình hóa hiện đại.

Trên thực tế, đây chính là công thức, sau đó làm theo các sơ đồ được xây dựng cho chủ đề “câu chuyện cổ tích” của chúng ta.

Giai đoạn 1. Chúng tôi mô tả quy trình dưới dạng sơ đồ Hoạt động. Đối với một quy trình có hơn 10 bước, việc áp dụng nguyên tắc phân rã bước quy trình để cải thiện khả năng đọc sơ đồ là điều hợp lý.

Giai đoạn 2. Chọn những gì có thể được tự động hóa (ví dụ: các bước có thể được đánh dấu trên sơ đồ).

Giai đoạn 3. Bước tự động hóa phải gắn với một chức năng hoặc các chức năng của hệ thống (mối quan hệ có thể là nhiều-nhiều), hãy vẽ sơ đồ Use-case. Đây là những chức năng của hệ thống của chúng tôi.

Giai đoạn 4. Hãy mô tả tổ chức bên trong của AS bằng sơ đồ lớp - Lớp học. Lộ trình “Đối tượng đầu vào và đầu ra (Tài liệu)” trong sơ đồ Hoạt động là cơ sở để xây dựng mô hình đối tượng và mô hình mối quan hệ thực thể.

Giai đoạn 5. Cùng phân tích những nốt nhạc trong bài “Quy tắc kinh doanh”, chúng cung cấp nhiều loại hạn chế và điều kiện khác nhau, dần dần được chuyển thành các yêu cầu phi chức năng.
Tập hợp sơ đồ kết quả (Hoạt động, Ca sử dụng, Lớp) cung cấp cho chúng ta mô tả chính thức theo ký hiệu khá nghiêm ngặt, tức là có cách đọc rõ ràng. Bây giờ bạn có thể phát triển các thông số kỹ thuật, làm rõ các thông số kỹ thuật của yêu cầu, v.v.

Hãy bắt đầu làm mẫu.

Giai đoạn 1. Mô tả quy trình dưới dạng sơ đồ hoạt động

Hãy để tôi nhắc bạn rằng chúng tôi đã cấu trúc trường sơ đồ bằng cách sử dụng các làn “bơi”; mỗi làn chứa các phần tử cùng loại (Hình 2). Ngoài các thành phần sơ đồ được mô tả ở trên, chúng ta sẽ sử dụng các thành phần bổ sung, hãy mô tả chúng.

Từ mô hình hóa quy trình đến thiết kế hệ thống tự động (Phần 1)

Quyết định (Quyết định) biểu thị điểm phân nhánh của quy trình của chúng tôi trong sơ đồ và các chủ đề hợp nhất (Hợp nhất) – điểm thống nhất của chúng. Điều kiện chuyển tiếp được viết trong dấu ngoặc vuông trên các chuyển tiếp.

Giữa hai bộ đồng bộ hóa (Fork), chúng tôi sẽ hiển thị các nhánh quy trình song song.
Quá trình của chúng tôi chỉ có thể có một điểm bắt đầu - một điểm vào (Ban đầu). Nhưng có thể có một số lần hoàn thành (Cuối cùng), nhưng không phải đối với sơ đồ cụ thể của chúng tôi.

Có khá nhiều mũi tên; với số lượng lớn các phần tử và kết nối, trước tiên bạn có thể xác định các giai đoạn của quy trình, sau đó thực hiện phân tách các giai đoạn này. Nhưng để rõ ràng, tôi muốn thể hiện toàn bộ quá trình “cổ tích” của chúng tôi trên một sơ đồ, trong khi tất nhiên, chúng tôi cần đảm bảo rằng các mũi tên “không dính vào nhau”, có thể theo dõi chính xác những gì được kết nối đến cái gì.

Từ mô hình hóa quy trình đến thiết kế hệ thống tự động (Phần 1)

Hình 2. Sơ đồ hoạt động - cái nhìn tổng quát về quy trình

Bởi vì trong những dòng thơ, một số chi tiết trong quá trình bị lược bỏ, phải khôi phục lại, thể hiện bằng những yếu tố có nền trắng. Những chi tiết này bao gồm bước Truyền/Nhận để lưu trữ và xử lý cũng như một số thành phần đầu vào và đầu ra. Điều đáng chú ý là bước này cũng không tiết lộ đầy đủ quy trình, bởi vì chúng ta sẽ cần chỉ định riêng bước truyền và bước tiếp nhận, thậm chí thêm một bước riêng cho shell, đồng thời cũng nghĩ rằng trước tiên tất cả các giá trị vật chất này phải được lưu trữ tạm thời ở đâu đó, v.v. và như thế.
Chúng ta cũng hãy lưu ý rằng câu hỏi về nguồn gốc của các loại hạt vẫn chưa có câu trả lời - chúng đến từ đâu và làm thế nào chúng đến được với con sóc? Và câu hỏi này (được đánh dấu bằng phông chữ màu đỏ trong ghi chú - phần tử Note) cần phải nghiên cứu riêng! Đây là cách một nhà phân tích làm việc - thu thập thông tin từng chút một, đưa ra các giả định và nhận được "được" hoặc "không được" từ các chuyên gia về chủ đề - những người rất quan trọng và đơn giản là không thể thay thế ở giai đoạn mô hình hóa kinh doanh khi tạo ra hệ thống.

Cũng lưu ý rằng bước quy trình P5 bao gồm hai phần.

Từ mô hình hóa quy trình đến thiết kế hệ thống tự động (Phần 1)

Và chúng ta sẽ phân tích từng phần và xem xét chi tiết hơn (Hình 3, Hình 4), bởi vì các hoạt động được thực hiện trong các bước cụ thể này sẽ được tự động hóa.

Từ mô hình hóa quy trình đến thiết kế hệ thống tự động (Phần 1)

Hình 3. Sơ đồ hoạt động - chi tiết (phần 1)

Từ mô hình hóa quy trình đến thiết kế hệ thống tự động (Phần 1)

Hình 4. Sơ đồ hoạt động - chi tiết (phần 2)

Giai đoạn 2. Chọn những gì có thể được tự động hóa

Các bước cần tự động hóa được đánh dấu màu trên sơ đồ (xem Hình 3, Hình 4).
Từ mô hình hóa quy trình đến thiết kế hệ thống tự động (Phần 1)

Tất cả đều được thực hiện bởi một người tham gia quy trình - Thư ký:

  • Nhập thông tin về trọng lượng của đai ốc vào báo cáo;
  • Nhập thông tin về việc chuyển đai ốc vào báo cáo;
  • Ghi lại sự biến đổi của một hạt thành vỏ và nhân;
  • Nhập thông tin về hạt nhân vào câu lệnh;
  • Nhập thông tin về vỏ hạt vào danh sách.

Phân tích công việc đã thực hiện. Cái gì tiếp theo?

Vì vậy, chúng tôi đã thực hiện rất nhiều công việc chuẩn bị: chúng tôi đã thu thập thông tin về quy trình mà chúng tôi sẽ tự động hóa; bắt đầu hình thành thỏa thuận về mô hình hóa (cho đến nay chỉ về việc sử dụng sơ đồ Hoạt động); đã thực hiện mô phỏng quy trình và thậm chí phân tách một số bước của nó; Chúng tôi đã xác định các bước quy trình mà chúng tôi sẽ tự động hóa. Bây giờ chúng ta đã sẵn sàng chuyển sang các bước tiếp theo và bắt đầu thiết kế chức năng cũng như tổ chức nội bộ của hệ thống.

Như bạn đã biết, lý thuyết mà không thực hành thì chẳng là gì cả. Bạn chắc chắn nên thử "làm mô hình" bằng chính đôi tay của mình, điều này cũng hữu ích để hiểu cách tiếp cận được đề xuất. Ví dụ: bạn có thể làm việc trong môi trường người mẫu người mẫu [3]. Chúng tôi chỉ phân tách một phần các bước của sơ đồ quy trình tổng thể (xem Hình 2). Là một nhiệm vụ thực tế, bạn có thể được yêu cầu lặp lại tất cả các sơ đồ trong môi trường Modelio và thực hiện phân tách bước “Chuyển/Nhận để lưu trữ và xử lý”.
Chúng tôi chưa xem xét làm việc trong môi trường mô hình hóa cụ thể, nhưng điều này có thể trở thành chủ đề của các bài báo và đánh giá độc lập.

Trong phần thứ hai của bài viết, chúng tôi sẽ phân tích các kỹ thuật thiết kế và mô hình hóa cần thiết ở giai đoạn 3-5; chúng tôi sẽ sử dụng sơ đồ Lớp và Trường hợp sử dụng UML. Còn tiếp.

Danh sách các nguồn

  1. Trang web "UML2.ru". Diễn đàn cộng đồng phân tích. Phần chung. Ví dụ. Ví dụ về truyện cổ tích được định dạng dưới dạng sơ đồ UML. [Tài nguyên điện tử] Chế độ truy cập: Internet: http://www.uml2.ru/forum/index.php?topic=486.0
  2. Trang web Hệ thống Sparx. [Tài nguyên điện tử] Chế độ truy cập: Internet: https://sparxsystems.com
  3. Trang web Modelio. [Tài nguyên điện tử] Chế độ truy cập: Internet: https://www.modelio.org
  4. Từ điển bách khoa lớn. Quá trình (giải thích). [Tài nguyên điện tử] Chế độ truy cập: Internet: https://dic.academic.ru/dic.nsf/enc3p/246322
  5. Website “Tổ chức quản lý hiệu quả”. Blog. Chuyên mục "Quản lý quy trình kinh doanh". Định nghĩa về một quy trình kinh doanh. [Tài nguyên điện tử] Chế độ truy cập: Internet: https://rzbpm.ru/knowledge/pochemu-processy-stali-s-pristavkoj-biznes.html
  6. Giấy chứng nhận số 18249 về đăng ký và lưu chiểu tác phẩm trí tuệ. Alfimov R.V., Zolotukhina E.B., Krasnikova S.A. Bản thảo đồ dùng dạy học có tựa đề “Mô hình hóa một môn học bằng Enterprise Architect” // 2011.
  7. Zolotukhina E.B., Vishnya A.S., Krasnikova S.A. Mô hình hóa quy trình kinh doanh. — M.: KHÓA HỌC, SIC INFRA-M, EBS Znanium.com. - 2017.

Nguồn: www.habr.com

Thêm một lời nhận xét