Chulalongkorn University Theses and Dissertations (Chula ETD)

วิธีการสร้างเครื่องประมวลผลตรรกะทางธุรกิจ

Other Title (Parallel Title in Other Language of ETD)

An approach for constructing business logic engine

Year (A.D.)

2012

Document Type

Thesis

First Advisor

ธาราทิพย์ สุวรรณศาสตร์

Faculty/College

Faculty of Engineering (คณะวิศวกรรมศาสตร์)

Degree Name

วิทยาศาสตรมหาบัณฑิต

Degree Level

ปริญญาโท

Degree Discipline

วิศวกรรมซอฟต์แวร์

DOI

10.58837/CHULA.THE.2012.1116

Abstract

สาเหตุสำคัญของการแก้ไข ปรับเปลี่ยนโปรแกรมประยุกต์ เป็นผลมาจากการเปลี่ยนแปลงความต้องการ และการเปลี่ยนแปลงของกฎธุรกิจ ทั้งในระหว่างขั้นตอนการออกแบบ ขณะกำลังทำการพัฒนา และหลังจากที่โปรแกรมได้นำไปใช้งานจริงแล้ว ซึ่งการพัฒนาซอฟต์แวร์แบบดั้งเดิม กฎธุรกิจจะถูกรวมเข้าไปอยู่ในโค้ดของโปรแกรมประยุกต์ เมื่อต้องมีการเปลี่ยนแปลงแก้ไข ทำให้ใช้ระยะเวลานาน และมีค่าใช้จ่ายสูง แม้เป็นการเปลี่ยนแปลงเพียงเล็กน้อย ดังนั้นจึงเกิดแนวความคิดในการแยกกฎธุรกิจให้เป็นอิสระออกจากโค้ดของโปรแกรมประยุกต์ขึ้นมา งานวิจัยนี้นำเสนอวิธีการกำหนดกฎให้อยู่ในรูปแบบของฟังก์ชัน ด้วยภาษาเอกซ์เอ็มแอล โดยมีไวยากรณ์ในการเขียนกฎที่คล้ายคลึงกับการเขียนโปรแกรม พร้อมกันนี้ยังได้พัฒนาเครื่องประมวลผลสำหรับกฎดังกล่าว ซึ่งมีลักษณะเป็นส่วนประกอบที่สามารถนำไปใช้ทำงานร่วมกับโปรแกรมประยุกต์อื่นได้ โดยไม่ผูกติดกับสถาปัตยกรรม จากผลการทดสอบแสดงให้เห็นว่าเครื่องประมวลผลทำงานได้อย่างถูกต้อง สามารถฝังตัวอยู่ในโปรแกรมประยุกต์ได้ทั้งแบบที่ทำงานอยู่บนเครือข่าย และแบบที่ไม่ได้ทำงานอยู่บนเครือข่าย (สแตนด์อโลน) ทำให้บรรลุวัตถุประสงค์ในการแยกตรรกะทางธุรกิจออกจากตรรกะของโปรแกรมประยุกต์

Other Abstract (Other language abstract of ETD)

A major cause of modifications in software applications is attributed to changes in requirements and business rules during design, development, and maintenance. Traditional software development includes business rules directly into the application code. Maintenance of these applications leads to escalation in time and cost for even small changes. Therefore, the concept to isolate the business rules from the application is introduced. This thesis introduces an approach for defining rules as functions using XML. The rules have syntax which is similar to programming syntax. Furthermore, it also describes the implementation of an execution engine for these rules. This engine is a pluggable component which can operate within another application. It is not tightly coupled with the architecture of an application. The testing results showed that the execution engine works correctly and can be embedded in any application both online and offline (standalone) to achieve the separation of business logic from application logic.

Share

COinS