Michael Bieber

Phòng tin học

Ying Wu College of Computing

Viện Công nghệ New Jersey

Đại học Heights, Newark, NJ 07102 Hoa Kỳ

bieber@njit.edu

http://web.njit.edu/~bieber

TRỪU TƯỢNG

Chúng tôi áp dụng phương pháp tiếp cận hai giai đoạn cho các ứng dụng kỹ thuật cho World Wide Web. Đầu tiên, kỹ sư phần mềm thực hiện Phân tích Điều hướng Mối quan hệ, phân tích một ứng dụng hiện có hoặc mới đặc biệt về các quan hệ nội bộ và liên hệ của nó. Điều này dẫn anh ta hoặc cô ta hiểu rõ hơn về sự phức tạp và phong phú của ứng dụng, cũng như cung cấp tốt hơn các loại truy cập và hiểu biết người dùng mong muốn. Thứ hai, một động cơ hypermedia động (DHymE), tự động tạo các liên kết cho mỗi mối quan hệ và hiểu biết các mục trong thời gian chạy, cũng như các kỹ thuật điều hướng phức tạp thường không được tìm thấy trên Web (ví dụ: các chuyến tham quan có hướng dẫn, tổng quan, truy vấn cấu trúc) đầu những liên kết này. Các liên kết và điều hướng, cũng như các tính năng chú thích, bổ sung chức năng chính của ứng dụng.

Động lực

Khi World Wide Web và các công cụ lập trình của nó hoàn thiện, chúng tôi ngày càng tìm thấy các ứng dụng phân tích với các giao diện Web và các trang Web khác có nội dung được tạo ra thay vì tạo bằng tay. Điều này bao gồm các lớp lớn của các hệ thống di sản mà các tổ chức đang gấp rút chuyển đổi sang giao diện Web [Be95]. Bài viết này liên quan đến thiết kế ứng dụng cho tất cả các hệ thống như vậy. Nó cũng giải quyết mối nguy hiểm mà các nhà phát triển sẽ ưu tiên cho các hệ thống này với một số liên kết thay vì tôn tạo chúng bằng lớp phong phú về các cơ hội liên kết và điều hướng mà Web có thể hỗ trợ [BV97].

Hơn nữa, các nhà phát triển các ứng dụng phân tích này thường đấu tranh với nhu cầu trình bày thông tin phức tạp theo cách mà người dùng có thể hiểu rõ nhất. Thông thường, các nhà phát triển sẽ dựa vào các kỹ thuật trực quan sâu sắc và thiết kế giao diện người dùng tốt. Những cách tiếp cận này không tầm thường, và đối với một số ứng dụng không thể truyền đạt thông tin đơn giản cho tất cả người dùng, đặc biệt là sinh viên, người mới và những người không quen thuộc với các chi tiết cấp thấp của miền ứng dụng (chẳng hạn như người quản lý phi kỹ thuật, người phải đưa ra quyết định dựa trên công việc của nhà phát triển). Ngay cả đối với các ứng dụng có hiển thị thông tin đơn giản, người dùng vẫn có thể có câu hỏi về ý nghĩa của một mục cụ thể hoặc cách xác định mục đó. Về mặt logic, mỗi phần tử trong một ứng dụng Web có thể được coi là một điểm khởi đầu tiềm năng cho việc thăm dò thông tin. Khả năng khám phá một mẩu thông tin chi tiết hơn có thể giúp người dùng giải quyết những nghi ngờ hoặc đơn giản là hiểu rõ hơn về cả mục đó, cũng như phân tích hoặc hiển thị nó là một phần. Người dùng có thể muốn tìm hiểu sâu hơn về giá trị dữ liệu và ký hiệu mà họ thấy, nhãn trên biểu đồ hoặc biểu mẫu nhập của người dùng, tùy chọn trong danh sách bật lên, thông tin người dùng nhập làm đầu vào (trước khi thực sự gửi) hoặc thậm chí trên các lệnh menu và các điều khiển khác họ có thể gọi.

Để làm phức tạp công việc của nhà phát triển, người dùng thường có các mô hình tinh thần khác nhau của một ứng dụng (và tên miền cơ bản của nó) so với nhà phát triển (nhà phân tích ứng dụng hoặc kỹ sư phần mềm). Ngay cả khi các nhà phát triển làm việc chặt chẽ với người dùng, kết quả cuối cùng có thể không trực quan bằng nhau cho tất cả người dùng hoặc phục vụ các tác vụ cá nhân của từng người dùng một cách bình đẳng. Người dùng có thể muốn truy cập một màn hình, chức năng hoặc thông tin cụ thể mà họ tin rằng ngay lập tức có liên quan đến nhiệm vụ, nhưng hệ thống không thể truy cập từ màn hình hiện tại hoặc vùng lân cận.

Cung cấp các liên kết đại diện cho các mối quan hệ ứng dụng cung cấp cho người dùng quyền truy cập vào những gì họ muốn là một trong những mục đích chính của hypermedia. Chúng tôi áp dụng phương pháp tiếp cận hai giai đoạn cho các ứng dụng kỹ thuật cho World Wide Web. Đầu tiên, nhà phát triển thực hiện Phân tích Điều hướng Mối quan hệ, phân tích một ứng dụng hiện có hoặc mới cụ thể về các mối quan hệ nội bộ và nội bộ của nó. Điều này dẫn anh ta hoặc cô ta hiểu rõ hơn về sự phức tạp và phong phú của ứng dụng, cũng như cung cấp tốt hơn các loại truy cập và hiểu biết người dùng mong muốn. Thứ hai, một động cơ hypermedia động (DHymE), tự động tạo các liên kết cho mỗi mối quan hệ và hiểu biết các mục trong thời gian chạy, cũng như các kỹ thuật điều hướng phức tạp thường không được tìm thấy trên Web (ví dụ: các chuyến tham quan có hướng dẫn, tổng quan, truy vấn cấu trúc) đầu những liên kết này. Các liên kết và điều hướng, cũng như các tính năng chú thích, bổ sung chức năng chính của ứng dụng [BK95, Bi98].

Phân tích định hướng mối quan hệ:

  1. Kỹ thuật phân tích mối quan hệ (ARN) có 5 bước:
  2. phân tích các bên liên quan
  3. phân tích phần tử
  4. mối quan hệ và phân tích metaknowledge
  5. phân tích điều hướng
  6. mối quan hệ và metaknowledge thực hiện phân tích

RNA có hai mục đích chính. Ngày của riêng mình, một phân tích mối quan hệ sẽ giúp các nhà phát triển hình thành một sự hiểu biết sâu sắc hơn về ứng dụng. Điều này xảy ra chủ yếu ở bước 1-4. Sau đó, nhà phát triển phải quyết định mối quan hệ nào thực sự thực hiện. Một số có thể chỉ mang lại lợi ích cận biên. Những người khác có thể rất tốn kém hoặc khó thực hiện. Những quyết định này diễn ra trong bước cuối cùng.

Mặc dù khá hữu ích ở dạng hiện tại, chúng tôi dự định phát triển kỹ thuật RNA hơn nữa bằng cách tạo ra các nguyên tắc cụ thể cho từng bước và bằng cách giảm phạm vi tùy chọn mà nhà phát triển phải xem xét trong bước 2 và 3 của phân tích. Những cải tiến này sẽ làm cho việc phân tích có hệ thống và dễ thực hiện hơn, đồng thời cho phép nó vẫn nhất thiết phải mở kết thúc.

Bước 1: Phân tích các bên liên quan

Mục đích của phân tích các bên liên quan là xác định đối tượng của ứng dụng. Biết ai sẽ quan tâm đến một ứng dụng sẽ giúp nhà phát triển xác định rộng rãi toàn bộ phạm vi các yếu tố quan trọng và các mối quan hệ, và sau đó tập trung vào những đặc điểm này. Đặc biệt là các ứng dụng có quyền truy cập Web công cộng có phạm vi rộng hơn các bên liên quan nhiều hơn tưởng tượng. Nhiều nhà phát triển, trên thực tế, thấy đây là phần khai sáng nhất của ARN. Nhà phát triển cũng phải xác định và hiểu các tác vụ mà từng loại người dùng sẽ muốn thực hiện trong ứng dụng. Điều này sẽ giúp các nhà phát triển tập trung vào các lĩnh vực cụ thể trong các bước RNA tiếp theo.

Bước 2: Phân tích phần tử

Ở đây, nhà phát triển liệt kê tất cả các yếu tố tiềm năng quan tâm trong ứng dụng. Ở một mức độ, chúng bao gồm tất cả các loại mục được hiển thị trong bất kỳ màn hình trực tuyến nào (màn hình thông tin, biểu mẫu, tài liệu và bất kỳ loại màn hình nào khác), cũng như màn hình, biểu mẫu và tài liệu. Cách dễ nhất để bắt đầu là kiểm tra từng màn hình (hoặc giả lập) và xác định từng giá trị và nhãn mà nó chứa. Lưu ý rằng nhà phát triển nên xác định các loại hoặc các thành phần của các phần tử, chứ không phải các cá thể riêng lẻ. Các loại mối quan hệ mà chúng ta thảo luận trong bước 3 tất cả đều dành cho các loại phần tử cụ thể. Ví dụ, trong miền phân tích quyết định, chúng bao gồm “mô hình” và “giá trị dữ liệu” thay vì các mô hình hoặc giá trị dữ liệu cụ thể.

Bước 3: Phân tích mối quan hệ

Phân tích mối quan hệ liên quan đến mối quan hệ giữa các mối quan hệ nội bộ và sự hiểu biết. Nhà phát triển nên xem xét từng yếu tố quan tâm được xác định trong bước trước đó về từng loại mối quan hệ chung sau đây, cho từng nhóm các bên liên quan. Một số mối quan hệ sẽ chỉ hữu ích cho các bên liên quan nhất định, và động cơ hypermedia sẽ lọc chúng. Các mối quan hệ có thể dẫn đến thông tin bên trong và bên ngoài ứng dụng. Các nhà phát triển không nên cảm thấy bị hạn chế bởi những cân nhắc về tính khả dụng hoặc chi phí và nỗ lực thực hiện của thế giới thực. Trong bước này, họ nên tập thể dục sáng tạo của mình càng đầy đủ càng tốt. Chỉ trong bước 5, họ nên xem xét làm thế nào để thực hiện các mối quan hệ và metaknowledge tìm thấy.

RNA hiện tại giúp các nhà phát triển xác định các loại mối quan hệ và sự hiểu biết sau trong một ứng dụng: lược đồ, quy trình, hoạt động, cấu trúc, mô tả, tham số, thống kê, hợp tác và đặt hàng các mối quan hệ. [Bi98] cung cấp thêm chi tiết cho mỗi. Bieber và Vitali [BV97] cho thấy một số loại quan hệ chung này có thể bổ sung một hóa đơn bán hàng trực tuyến như thế nào. [Bi98] cho thấy cách họ có thể bổ sung một hệ thống hỗ trợ quyết định mô hình toán học.

Bước 4: Phân tích điều hướng

Khi chúng tôi xác định các mối quan hệ, chúng tôi có thể nghĩ cách người dùng có thể truy cập chúng. Việc thực hiện đơn giản nhất sẽ làm cho mỗi mối quan hệ trở thành một liên kết, và sau đó cung cấp sự truyền tải đơn giản (người dùng chọn một liên kết và liên kết, và hệ thống hiển thị đích liên kết). Nhưng một số loại mối quan hệ nhất định cho bản thân họ điều hướng tinh vi hơn. Khái niệm về hypermedia bao gồm nhiều tính năng điều hướng khác dựa trên mối quan hệ hoặc liên kết. Chúng bao gồm các tour du lịch có hướng dẫn và những con đường mòn, tổng quan và truy vấn cấu trúc [BVA97, Ni95]. Trong bước này của RNA, nhà phát triển nên quyết định các tính năng điều hướng nào có thể phục vụ tốt nhất nhu cầu của các bên liên quan.

Bước 5: Phân tích triển khai mối quan hệ và điều hướng

Rõ ràng bước 3 có thể tạo ra rất nhiều mối quan hệ và bước 4 có thể tạo ra nhiều cơ hội điều hướng có thể. Trong bước này, nhà phát triển phải quyết định thực sự thực hiện điều gì. Bước này không phải là thực hiện thực tế, chỉ đơn giản là quyết định hợp lý mà các mối quan hệ để thực hiện. Nhà thiết kế nên xem xét các chi phí và lợi ích (thực tế và cận biên) của cả việc triển khai và hiển thị từng loại. Chúng tôi tách riêng bước này từ bước 3 và 4 để nhà thiết kế có thể thực hiện tất cả tài năng sáng tạo của mình ở đó mà không bị ràng buộc bởi những cân nhắc trong thế giới thực. Sau đó, nhà thiết kế viết quy tắc ánh xạ (sử dụng định dạng được chỉ định của chúng tôi) cho mỗi mối quan hệ được triển khai. Các quy tắc ánh xạ chỉ định các lệnh hoặc thuật toán để tìm điểm cuối của mỗi mối quan hệ.

DHymE (Động cơ Hypermedia động)

Công cụ siêu âm DHymE thực hiện riêng biệt với ứng dụng đích. Chúng tôi viết một chương trình bao bọc cho mỗi ứng dụng để tích hợp nó vào kiến trúc động cơ của chúng tôi. Ứng dụng hoặc trình bao bọc của chúng sau đó kết nối với DHymE thông qua máy chủ proxy web. DHymE chặn tất cả các thông điệp đi qua giữa ứng dụng và giao diện người dùng, và sử dụng các quy tắc ánh xạ được chỉ định ở trên để ánh xạ từng phần tử thích hợp của thông báo tới nút siêu kết nối hoặc neo. Trình bao bọc trình duyệt web của chúng tôi tích hợp các neo này vào tài liệu đang được hiển thị và chuyển nó qua máy chủ proxy tới trình duyệt Web của người dùng. Khi người dùng chọn một neo, trình bao bọc trình duyệt chuyển nó tới DHymE, nó trả về một danh sách các liên kết có thể (một cho mỗi mối quan hệ thích hợp được xác định bởi các quy tắc ánh xạ). Nếu người dùng chọn một lệnh ứng dụng thông thường (ánh xạ tới một liên kết hoạt động), DHymE sẽ chuyển lệnh đó đến ứng dụng để xử lý. Nếu người dùng chọn liên kết động cơ hypermedia (ví dụ: để tạo chú thích), DHymE sẽ xử lý hoàn toàn. Nếu người dùng chọn một lược đồ bổ sung, quy trình, hoạt động, cấu trúc, mô tả, thông tin hoặc mối quan hệ xảy ra, DHymE sẽ nhập các lệnh ứng dụng thích hợp, các hoạt động meta-application (ví dụ, ở cấp hệ điều hành hoặc cấp lược đồ) hoặc các hoạt động của động cơ hypermedia tạo ra thông tin mong muốn. Nếu người dùng chọn chú thích do người dùng tạo, DHymE sẽ lấy nó. Do đó DHymE tự động cung cấp tất cả các liên kết hypermedia (cũng như chuyển hướng) cho các ứng dụng, mà vẫn còn hypermedia-unaware và trên thực tế thường hoàn toàn không thay đổi. Chúng tôi hiện đang tích hợp một số ứng dụng với DHymE, tự động cung cấp cho mỗi giao diện web hoặc bổ sung giao diện Web hiện tại của nó. công cụ phân tích hỗ trợ quyết định. [Bi98] mô tả những ý tưởng này và một nguyên mẫu DHymE cũ hơn, không phải trên Web chi tiết hơn. [Bi97, CB97] cũng cung cấp một số thông tin cơ bản về động cơ.

Phần kết luận

Chúng tôi hy vọng rằng sự đóng góp lâu dài nhất của chúng tôi là thuyết phục thành công các nhà phát triển ứng dụng Web (cả mới và được vận chuyển từ môi trường máy tính khác) để tận dụng lợi thế của việc liên kết trong các ứng dụng của họ. Thời gian và thời gian một lần nữa các nhà thiết kế đã nói với chúng tôi rằng RNA đã cho họ thấy các liên kết mà họ không bao giờ tưởng tượng trong các ứng dụng của riêng họ. Xác định đây là bước đầu tiên cần thiết để thực hiện. Thực hiện một cách chu đáo, các cơ sở liên kết và điều hướng của Web có thể đi một chặng đường dài để giảm sự phức tạp của các ứng dụng cho người dùng. RNA cung cấp cho nhà phát triển một công cụ để xác định cơ hội để liên kết bổ sung trong các ứng dụng. Công cụ siêu âm DHymE tự động tạo ra các liên kết này, với ít hoặc không có thay đổi đối với ứng dụng.

Lời cảm ơn

Chúng tôi rất biết ơn tài trợ cho nghiên cứu này bởi chương trình học bổng nghiên cứu khoa học của NASA JOVE, do Trung tâm nghiên cứu đa phương tiện New Jersey, Trung tâm Quốc gia về Vận tải và Năng suất Công nghiệp tại Viện Công nghệ New Jersey (NJIT), Sở New Jersey Giao thông vận tải, bởi Ủy ban Khoa học và Công nghệ New Jersey, cũng như tài trợ từ Quỹ Sloane và Quỹ AT & T, và chương trình SBR của NJIT.

Tài liệu tham khảo

[Be95] BENNETT, K. Hệ thống cũ: đối phó với thành công. Phần mềm IEEE, tháng 1 năm 1995, 19-23.

[Bi97] BIEBER, M., Hypertext Engine: Hỗ trợ cho các ứng dụng tính toán, Lưu ý kỹ thuật, 1997.

[Bi98] BIEBER, M., Bổ sung các ứng dụng với Hypermedia, theo đệ trình, 1998.

[BK95] BIEBER, M. VÀ KACMAR, C. Thiết kế hỗ trợ siêu văn bản cho các ứng dụng tính toán. Truyền thông của ACM 38 (8), 1995, 99-107.

[BV97] BIEBER, M. và VITALI, F. (1997). Hướng tới hỗ trợ cho hypermedia trên World Wide Web. Máy tính IEEE 30 (1), 1997, 62-70.

[BVA97] BIEBER, M., VITALI, F., ASHMAN, H., BALASUBRAMANIAN V., và OINAS-KUKKONEN, H. Hypermedia thế hệ thứ tư: một số liên kết còn thiếu cho World Wide Web. Tạp chí Quốc tế về Nghiên cứu Máy tính Con người 47, 1997, 31-65.

[CB97] CHIU, C. AND BIEBER, M., một trình bao bọc ánh xạ động chung cho hỗ trợ hệ thống siêu văn bản mở của các ứng dụng phân tích, Hypertext’97 Proceedings, ACM Press, New York, NY, April 1997, 218-219.

[Ni95] NIELSEN, J. Đa phương tiện và siêu văn bản: Internet và hơn thế nữa. AP Professional, 1995.

 

Link to original source: https://web.njit.edu/~bieber/web-engineering.html