Chính xác thì mô hình phần mềm điều khiển (MDSE) là gì?


10

Tôi đã đi qua accronym MDSE ngày hôm nay trên trang thông tin và thông tin tôi có thể tìm thấy những gì khá không rõ ràng và mô tả có đầy đủ từ thông dụng:

MDSE là về việc cho phép các kỹ sư phần mềm làm việc ở mức độ trừu tượng trong đó các yêu cầu, kiến ​​trúc và thông tin thiết kế được sắp xếp tối đa (về mặt thông tin "entropy") và được bảo tồn. (Gọi đây là "sản phẩm thiết kế công việc"). Hơn nữa, MDSE nên cung cấp cho các kỹ sư phương tiện để xác minh và xác nhận thiết kế của họ chủ yếu theo các điều khoản của "sản phẩm công việc thiết kế" của họ

Và rõ ràng, mọi người đang làm điều đó: (từ bài báo một lần nữa)

Chúng ta đang ở thời kỳ khởi đầu của thời đại MDSE. Trong 5 - 10 năm tới, chúng ta sẽ chứng kiến ​​sự thay đổi đáng kể đối với MDSE, đến mức tôi tin rằng vào cuối giai đoạn này, có lẽ 60 - 80% phần mềm sẽ được thiết kế bằng các kỹ thuật dựa trên mô hình.

Tôi muốn có một mô tả cụ thể, không có từ thông dụng về MDSE là gì. Có phải nó đang vẽ các hộp UML và tạo mã với nó, giống như chúng đã làm trong những năm 90 với Rational Rose?

(trong khi đó, nếu bất cứ ai có một ví dụ về phần mềm được tạo bằng các kỹ thuật đó, tôi thực sự muốn xem một ví dụ cụ thể).


2
Điều này nghe có vẻ tương tự như Thiết kế hướng miền. Về cơ bản, đưa logic kinh doanh vào mô hình của bạn. Từ thông dụng liên quan: Người mẫu béo, Người điều khiển gầy.
Greg Burghardt

Tôi nghi ngờ một mô tả miễn phí từ thông dụng là không thể vì chúng dường như không thể tách rời với bản chất của khái niệm này.
whatsisname

Câu trả lời:


1

"Kỹ thuật phần mềm điều khiển mô hình (MDSE)" là lời hứa tiếp thị của các nhà sản xuất công cụ phần mềm rằng "sớm" các phần mềm quan trọng có thể được tạo ra từ các mô hình phần mềm.

Đối tác phỏng vấn trong bài viết mà bạn đang đề cập đến , Robert Howe là nhà sản xuất công cụ (xem http://www.verum.com/ để biết chi tiết)

Nhưng chống lại lời hứa của nhà sản xuất công cụ, mdse vẫn chưa trở thành xu hướng.

Các hệ thống hybris cửa hàng Internet là một ví dụ làm việc của "MDSE": bạn như là một phần mềm developper duy trì xml-mô hình-file ( "* -items.xml") và codegenerators / phiên dịch tạo db-modell / java-code cho persistence / GUIs ra khỏi nó Nếu bạn cần một thuộc tính bổ sung, chỉ cần thêm nó vào mô hình xml và sau khi trình tạo / trình thông dịch đã thực hiện công việc đó, bạn có thể sử dụng thuộc tính để triển khai logic nghiệp vụ.


0

IMHO "mô hình điều khiển " là một cường điệu lớn, đặc biệt là khi được sử dụng cùng với các từ thông dụng như "thiết kế" hoặc "công nghệ phần mềm" (thay vì "phát triển"). Nó có thể được phát minh bởi một số người có quan niệm sai lầm "thiết kế phần mềm" được thực hiện bằng cách vẽ một số mô hình đồ họa chủ yếu bằng UML, giống như một kiến ​​trúc sư đang vẽ một bản thiết kế cho một ngôi nhà, và "mã hóa" giống như đặt viên gạch cho ngôi nhà, theo kế hoạch chi tiết. (Tôi hy vọng tôi không phải giải thích ở đây tại sao điều này sai, nếu bạn có ý kiến ​​khác, vui lòng đọc "Code as Design" của Jack Reeves trước khi đánh giá thấp tôi.)

Đây là một mô hình tinh thần tuyệt vời cho những người tự gọi mình là "kiến trúc sư", "nhà phân tích kinh doanh", "nhà thiết kế", "kỹ sư phần mềm", người đã nghiên cứu năm năm về khoa học máy tính, nhưng chỉ có nửa năm kinh nghiệm lập trình thực sự (tối đa là nửa năm ) và hiện đang tìm kiếm một công việc trong ngành công nghiệp phần mềm bao gồm "thiết kế phần mềm" mà không cần mã hóa. Tôi đoán đây là lý do thực sự tại sao buzzwords "mô hình điều khiển" này rất phổ biến.

Đừng hiểu sai ý tôi, tôi là một fan hâm mộ lớn của các mô hình và trình tạo mã để giảm nhu cầu viết mã soạn sẵn. Trong một số khu vực hạn chế như, ví dụ, cơ sở dữ liệu, mô hình (dữ liệu) có thể thực sự là một công cụ tốt để giao tiếp với người miền. Phác thảo luồng dữ liệu giữa các thành phần theo mô hình là IMHO một trong những kỹ thuật quan trọng nhất để đưa cấu trúc vào hệ thống phần mềm (thật không may, người UML đã quên từ chối đưa các sơ đồ luồng dữ liệu vào ký hiệu của họ; thay vào đó, họ đã thêm một loạt các thứ không cần thiết, không cần thiết mà không ai sử dụng trong thực tế).

Nhưng tôi sẽ gọi đây là " phát triển phần mềm hỗ trợ mô hình ", chứ không phải là " công nghệ phần mềm điều khiển mô hình ", điều này cho thấy rõ rằng mô hình hóa chỉ hỗ trợ các hoạt động chính trong phát triển, thay vì chính hoạt động chính.


Hummm ... Câu trả lời rất rút gọn, dựa trên một ý kiến ​​không hay liên quan đến một số chuyên gia CNTT ...
Rénald

@ Rénald: tốt, không có gì trong câu trả lời của tôi mà không dựa trên kinh nghiệm cá nhân. Và tôi không nói rằng không có kiến ​​trúc sư, BA hay nhà thiết kế có kinh nghiệm ngoài kia - nhưng khi họ thực sự có kinh nghiệm, có lẽ họ không tin vào những lời hứa sai lầm của MDSE.
Doc Brown

-1

Điều này nhắc nhở tôi rất nhiều mô hình Fat, khái niệm bộ điều khiển gầy .
Ý tưởng chính của khái niệm này là đưa càng nhiều logic kinh doanh càng tốt vào mô hình và giữ cho bộ điều khiển và một khung nhìn rất đơn giản.
Cá nhân tôi thấy đây là một ý tưởng rất thú vị, mặc dù tôi chưa có cơ hội sử dụng nó.
Đáng ngạc nhiên, 8 trên 10 liên kết hàng đầu trong tìm kiếm google nói chống lại nó.
Nhưng, nếu bạn nghĩ về một mô hình không phải là một lớp đơn lẻ, mà là một mặt của nhiều lớp bên trong, nó có ý nghĩa hoàn hảo để giữ logic kinh doanh trong mô hình.


1
Tôi không nghĩ nó có nghĩa là mô hình như trong MVC, nhưng 'mô hình hóa' như trong thiết kế hệ thống.
gbjbaanb
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.