Design Technique for Transaction Design
- TTSA04
- Classroom
- Fundamental
- Thai | 0
หลักสูตรนี้ มุ่งเน้นการสร้างความเข้าใจในหลักการด้าน transaction และการออกแบบ transaction ให้มีคุณภาพทั้งด้านประสิทธิภาพ (performance), ความน่าเชื่อถือ (reliability) และรองรับการเปลี่ยนแปลงได้ (modifiability) นอกจากนี้ หลักสูตรนี้ยังมีเวิร์กช็อปให้ผู้เรียนร่วมทำเพื่อเสริมความเข้าใจเพื่อให้ผู้เรียนสามารถนำความรู้ที่ได้กลับไปประยุกต์กับงานได้
Course description
Time
Instructor
Venue
Design Technique for Transaction Design
ปัจจุบันมีวิกฤติสำคัญหนึ่งในการพัฒนาระบบซอฟต์แวร์และแอพพลิเคชั่นมากมาย คือปัญหาและผลกระทบจากการทำงานของ transaction อันเกิดจากการออกแบบและจัดการ transaction ที่ไม่ถูกต้อง ซึ่งรวมถึงการเขียนโปรแกรม และ/หรือการคอนฟิกการจัดการ transaction อีกด้วย ปัญหามากมาย เช่น ปัญหา dead lock, bottle neck, overload, access violation, dirty read, transaction ถูก reject หรือ cancel, การ commit/rollback ที่ไม่สอดคล้องกับ business process และ rule, การออกแบบ data model (เช่น ER diagram) ที่ไม่สอดคล้องกับ transaction และพฤติกรรมการเข้าถึงข้อมูล, การไม่สามารถติดตาม (monitor) การทำงานของ transaction ได้, การคอนฟิกค่าต่างๆ ไม่เหมาะสมกับทรัพยากรที่มี และพฤติกรรมของ transaction ฯลฯ
การแก้ไขปัญหาที่มักพบได้บ่อยๆ คือการแก้โค้ด? การปรับแก้คอนฟิกของฮาร์ดแวร์และซอฟต์แวร์? การเพิ่มทรัพยากรและ/หรือฮาร์ดแวร์? ซึ่งสาเหตุแท้จริงที่มักพบได้บ่อยคือการออกแบบ transaction ที่ไม่สอดคล้องกับปัจจัยต่างๆ เช่น พฤติกรรมของ client, business process, rule, layer, tier, resource ฯลฯ และการขาดความรู้ และทักษะด้าน transaction อย่างดีพอของนักออกแบบและโปรแกรมเมอร์ จึงมักสร้าง transaction ใหญ่เกินไป หรือคอนฟิก transaction attribute ที่ผิด หรือไม่สอดคล้องกับปัจจัยต่างๆ ดังกล่าว
โดยเฉพาะอย่างยิ่งระบบมากมายในปัจจุบันมักเป็น component-based application ที่ทำงานบน middleware เช่น แอพพลิเคชั่นเซิร์ฟเวอร์ ซึ่ง middleware มากมายสมัยนี้มักมีบริการ transaction management อยู่ภายใน โดยผู้ออกแบบและโปรแกรมเมอร์ไม่ต้องเขียนโปรแกรมไปจัดการมาก ซึ่งถือเป็นดาบสองคม ทำให้นักออกแบบและโปรแกรมเมอร์อาจละเลยการใส่ใจศึกษาความรู้พื้นฐานที่สนับสนุนการจัดการ transaction ไป เช่น multi-thread, scheduling, state management, data structure, ACID, distributed transaction management ฯลฯ หรืออีกวิกฤติหนึ่งในปัจจุบันในหลายองค์กรคือการพึ่งพา container หรือเฟรมเวิร์กต่างๆ มากจนเกินไป ปัญหาที่พบบ่อยครั้งคือผู้ใช้มักขาดความเข้าใจในสิ่งเหล่านี้อย่างดีพอ ทำให้ไม่สามารถรับมือได้เนิ่นๆ ตั้งแต่ตอนออกแบบระบบ ฉะนั้นเราจะออกแบบ พัฒนา และจัดการ transaction อย่างไรให้มีประสิทธิภาพ มีความน่าเชื่อถือ และรองรับการเปลี่ยนแปลงได้ โดยไม่ต้องมาพบปัญหาเอาตอนทำ performance testing ภายหลังพัฒนาระบบเสร็จหรือใกล้เสร็จ หรือมาเจอเอาตอนใช้งานระบบจริง หรือตอนจะ enhance ระบบ และจะได้ไม่ต้องตกเป็นเหยื่อด้านค่าฮาร์ดแวร์และ license ของซอฟต์แวร์มหาโหดในปัจจุบัน การจงใจปกปิดหรือละเลยการใส่ใจด้านการติดตาม (monitor) transaction และมักแฝงเร้นไม่ยอมบอกให้เคลียร์ตั้งแต่เนิ่นๆ มักมาบอกกันตอนเจอทางตันที่ไม่อาจปฏิเสธได้แล้ว
หลักสูตรนี้จึงออกแบบมาเพื่อให้ผู้เรียนมีความรู้ความเข้าใจ transaction, การจัดการ transaction และการออกแบบ transaction เพื่อให้สอดคล้องกับปัจจัยสำคัญต่างๆ และนำเสนอแนวทางสำหรับวิเคราะห์และออกแบบระบบที่ต้องการจัดการ transaction ได้อย่างมีประสิทธิภาพ และเพื่อให้ผู้เรียนตระหนักถึงความสำคัญของการออกแบบ transaction ว่ามีความสำคัญมากต่อการออกแบบและพัฒนาระบบซอฟต์แวร์และแอพพลิเคชั่นในปัจจุบัน และสามารถรับมือและจัดการได้โดยไม่ต้องเสียค่าใช้จ่ายฟุ่มเฟือยที่เกินความจำเป็นภายหลัง เนื้อหาหลักสูตรแบ่งออกเป็น 4 ส่วนหลักคือ ความรู้พื้นฐาน, การวิเคราะห์, การออกแบบ และประเด็นสำคัญอื่นๆ ที่ควรพิจารณา นอกจากนี้ หลักสูตรนี้ยังมีเวิร์กช็อปให้ผู้เรียนร่วมทำเพื่อเสริมความเข้าใจระหว่างการอบรมตามสมควรแก่เวลา
หลักสูตรนี้ มุ่งเน้นการสร้างความเข้าใจในหลักการด้าน transaction และการออกแบบ transaction ให้มีคุณภาพทั้งด้านประสิทธิภาพ (performance), ความน่าเชื่อถือ (reliability) และรองรับการเปลี่ยนแปลงได้ (modifiability) โดยยึดหลักการ ACID เป็นหลักสำคัญต่อการออกแบบ transaction โดยหลักสูตรนี้เน้นทั้งพื้นฐานและหลักการวิเคราะห์และออกแบบ โดยมุ่งหวังให้ผู้เรียนสามารถนำความรู้ที่ได้กลับไปประยุกต์กับงานได้ ไม่ว่าผู้เรียนจะออกแบบและพัฒนาระบบประเภทใดหรือใช้เทคโนโลยีใดอยู่ และหากมีข้อสงสัยต้องการปรึกษากับผู้สอนภายหลังการอบรม อันเนื่องจากจำนวนวันอบรมที่จำกัด ก็สามารถทำได้โดยผ่านเว็บไซต์สังคมออนไลน์ต่างๆ และการติดต่อผ่านทางช่องทางต่างๆ ตามตกลงกันระหว่างผู้สอนและผู้เรียนระหว่างอบรม
- การอบรมนี้ออกแบบมาสำหรับ solution architect, system analyst, software architect, enterprise architect, IT architect, requirement engineer, IT manager, programmer, developer, performance engineer, tester และผู้ที่สนใจทั่วไป
- ผู้เรียนควรมีความรู้และทักษะพื้นฐานด้านการพัฒนาซอฟต์แวร์, Object-Orientation, การวิเคราะห์และออกแบบระบบ และ Software Development Life Cycle (หลักสูตรนี้มีการใช้ UML บ้าง แต่ไม่มากนัก)
- เข้าใจพื้นฐานด้าน transaction และการจัดการ transaction
- เข้าใจหลัก ACID
- เข้าใจปัจจัยสำคัญที่ส่งผลต่อการทำงานและการออกแบบ transaction เช่น business process, rules, client behavior, service, resource, transaction data, layer, tier, session, object, data model ฯลฯ
- เข้าใจการวิเคราะห์ และออกแบบ transaction ให้มีประสิทธิภาพ มีความน่าเชื่อถือ และรองรับการเปลี่ยนแปลงได้ โดยสอดคล้องกับปัจจัยต่างๆ
- ได้เรียนรู้การสร้าง transaction model (แบบจำลองทรานแซกชั่น) ประเภทต่างๆ ทั้ง transaction model ใน level of abstraction ต่างๆ
- เข้าใจหลักการการวิเคราะห์และจัดการ transaction traceability เพื่อประกอบการวิเคราะห์และการออกแบบ transaction และการจัดการ transaction เพื่อให้สอดคล้องกับปัจจัยต่างๆ
- เข้าใจประเด็นสำคัญอื่นๆ ที่สำคัญต่อการออกแบบ transaction
- สามารถนำความรู้ที่ได้รับกลับไปประยุกต์กับงานได้
- สามารถปรึกษากับผู้สอนภายหลังการอบรมได้
- Types of Transaction Sample Transaction
- Transaction Handling Operation
- Understanding the ACID
- What is Granularity?
- State Transition, State management and Transaction Propagation
- Working of Unit of Work, Transaction and Sub Transaction
- Handling Simultaneous Access to Shared Resource and Types of Locking
- Transaction Orchestration
- Local and Distributed Transaction Processing
Programmatic Transaction Model -
Declarative Transaction Model and Transaction Attributes
- Analyzing Business Processes and Rules
- Analyzing Client Behaviors
- Analyzing Service (application service and/or business service)
- Analyzing Resource Systems and Connection
- Analyzing Transaction Data and Data Transformation
- Analyzing Architectural Layers and Tiers
- Using Scenario for Detailing Transaction Concerns
- Handling Transaction Traceability
-
Where to Locate the Transaction Control
- Modeling Transaction Graph
- Analyzing Transaction Graph Model
- Refactoring Transactions by Applying the ACID
-
Grouping Transactions
- Consistent Design: Transaction Model, Data Model, Business Process Model, Usage Model, Etc.
- Handling 'Read' Operation
- The Pitfall and Risk of Auto Commit
- Managing Transaction for Asynchronous and Stateless call
- Logging and Monitoring Transaction Processing
- Handling Change Management
Payment can be made by:
-
Cash or Credit Card or Bank Cheque payable to "สำนักงานพัฒนาวิทยาศาสตร์และเทคโนโลยีแห่งชาติ" (a post-dated cheque is not accepted) on the first day of the service or within the last day of the service.
-
Account transfer and send the proof of the payment (the deposit slip) to email [email protected]
- Withholding tax (3%) is exempt.
- Should you need to withdraw, you must send the notice of the withdrawal in writing no later than 7 working days before the commencement date. The cancellation less than 7 days will be subject to a fine of 40% of the fee.
- Software Park Thailand reserves the rights to cancel courses due to unforeseen circumstances.
Contact Person
For more information, contact our course coordinator on:
The schedule is accessible at www.swpark.or.th for more information.
12,000 THB .
ระยะเวลาการฝึกอบรม: 3 วัน (18 ชั่วโมง) เวลา 10.00 - 17:00 น.
สถานที่อบรม : ห้องอบรม ชั้น 3 อาคารซอฟต์แวร์พาร์ค ถนนแจ้งวัฒนะ
สำคัญ!!! กรุณารอการยืนยันเปิดการอบรมจากเจ้าหน้าที่ก่อนการชำระค่าลงทะเบียน
ระยะเวลาการฝึกอบรม: 3 วัน (18 ชั่วโมง) เวลา 10.00 - 17:00 น.
สถานที่อบรม : ห้องอบรม ชั้น 3 อาคารซอฟต์แวร์พาร์ค ถนนแจ้งวัฒนะ
สำคัญ!!! กรุณารอการยืนยันเปิดการอบรมจากเจ้าหน้าที่ก่อนการชำระค่าลงทะเบียน
Course Detail :
Instructor info
นายณรงค์ จันทร์สร้อย
-