No account yet?
 
 
You are here:: Training/Seminar Training Schedule Design Technique for Transaction Design
 
 

Design Technique for Transaction Design

Categories : Software Architecture and Design
Posted by : juntima | Posted On : Monday, 20 December 2010 12:46
Training Date : 24 July 2017 - 26 July 2017

เขตอุตสาหกรรมซอฟต์แวร์ประเทศไทย ขอแจ้งยืนยันการเปิดอบรมหลักสูตรตามกำหนดการค่ะ

10 October 2016 - 12 October 2016
12 September 2016 - 14 September 2016
16 May 2016 - 18 May 2016
13 July 2015 - 15 July 2015
21 September 2015 - 23 September 2015
27 April 2015 - 29 April 2015
24 November 2014 - 26 November 2014
28 April 2014 - 30 April 2014
16 December 2013 - 18 December 2013
19 August 2013 - 21 August 2013
25 March 2013 - 27 March 2013
20 August 2012 - 22 August 2012
23 April 2012 - 25 April 2012
07 December 2011 - 09 December 2011
01 August 2011 - 03 August 2011
20 April 2011 - 22 April 2011
Please Login before registering . No account ? signup here
กรุณา ล็อกอิน ก่อนลงทะเบียน หรือสร้างบัญชีผู้ใช้ใหม่ได้ ที่นี่
Time : 18 Hour(s)
Days : 3 Day(s)
Duration : 09:30 - 16:30
Fee : 12,000 THB (Excluded Vat 7%)
Language : Thai
Instructor : Mr.Narong Chansoi
Objectives :

ปัจจุบันมีวิกฤติสำคัญหนึ่งในการพัฒนาระบบซอฟต์แวร์และแอพพลิเคชั่นมากมาย คือปัญหาและผลกระทบจากการทำงานของ 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 โดยหลักสูตรนี้เน้นทั้งพื้นฐานและหลักการวิเคราะห์และออกแบบ โดยมุ่งหวังให้ผู้เรียนสามารถนำความรู้ที่ได้กลับไปประยุกต์กับงานได้ ไม่ว่าผู้เรียนจะออกแบบและพัฒนาระบบประเภทใดหรือใช้เทคโนโลยีใดอยู่ และหากมีข้อสงสัยต้องการปรึกษากับผู้สอนภายหลังการอบรม อันเนื่องจากจำนวนวันอบรมที่จำกัด ก็สามารถทำได้โดยผ่านเว็บไซต์สังคมออนไลน์ต่าง ๆ และการติดต่อผ่านทางช่องทางต่าง ๆ ตามตกลงกันระหว่างผู้สอนและผู้เรียนระหว่างอบรม

Who Should Attend :

การอบรมนี้ออกแบบมาสำหรับ solution architect, system analyst, software architect, enterprise architect, IT architect, requirement engineer, IT manager, programmer, developer, performance engineer, tester และผู้ที่สนใจทั่วไป
พื้นฐานของผู้เข้ารับการอบรม (Prerequisities)
ผู้เรียนควรมีความรู้และทักษะพื้นฐานด้านการพัฒนาซอฟต์แวร์, Object-Orientation, การวิเคราะห์และออกแบบระบบ และ Software Development Life Cycle (หลักสูตรนี้มีการใช้ UML บ้าง แต่ไม่มากนัก)

Benefits :
  • เข้าใจพื้นฐานด้าน 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
  • สามารถนำความรู้ที่ได้รับกลับไปประยุกต์กับงานได้
  • สามารถปรึกษากับผู้สอนภายหลังการอบรมได้
Course Outline :

Transaction Processing and Management Overview

  • 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

Analysis

  • 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

Design

  • Modeling Transaction Graph
  • Analyzing Transaction Graph Model
  • Refactoring Transactions by Applying the ACID
  • Grouping Transactions

Additional Concerns

  • 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 Condition :

Payment can be made by:

    1. Cash or Credit Card or Bank Cheque payable to “Software Park Thailand #2” (a post-dated cheque is not accepted) on the first day of the service or within the last day of the service.
    2. Account transfer and send the proof of the payment (the deposit slip) via fax or email to fax no. 02-583-2884 or email ttd@swpark.or.th

        2.1 Siam Commercial Bank, Chaengwattana Branch
              Saving Account Number: 324-2-56262-0
             Account Name: Software Park Thailand#2

        2.2 Krungsri Bank, Chaengwattana (Software Park) Branch
              Saving Account Number: 329-1-34850-3
             Account Name: Software Park Thailand#2

Notes:

- 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:

Juntima Klumchaun

Tel: +66-2583-9992 Ext. 1424

Fax: +66-2583-2884

Email: juntima@swpark.or.th

You are encouraged to use the course schedule as a guide to plan your training. The schedule is accessible at www.swpark.or.th for more information.