วิวัฒนาการของการพัฒนาแอปพลิเคชัน

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
การพัฒนาระบบทะเบียน ของ โรงเรียนเมโทรเทคโนโลยี จังหวัดเชียงใหม่
Advertisements

การจัดทำเว็บไซต์สำเร็จรูปด้วยโปรแกรม Joomla!
 เครือข่ายคอมพิวเตอร์  การที่ระบบเครือข่ายมีบทบาทและ ความสำคัญเพิ่มขึ้น เพราะไมโครคอมพิวเตอร์ได้รับ การใช้งานอย่างแพร่หลาย จึงเกิดความต้องการที่จะ.
แนวทางการสอน เพื่อพัฒนาทักษะเด็กตามรูปแบบการสอน
ซอฟต์แวร์ระบบที่รู้จักกันดี คือซอฟต์แวร์ควบคุมการปฏิบัติการ ของคอมพิวเตอร์ที่เรียกว่า ระบบปฏิบัติการ ระบบปฏิบัติการเป็นชุดคำสั่งที่ใช้ควบคุมระบบฮาร์ดแวร์และ.
การพัฒนาระบบสารสนเทศ
Pro/Desktop.
Software Development and Management
Chapter I พฤติกรรมผู้บริโภค.
กาญจนา ทองบุญนาค สาขาวิชาคอมพิวเตอร์ คณะวิทยาศาสตร์และเทคโนโลยี
การรายงานผลการฝึกประสบการณ์วิชาชีพ
บทที่ 1 หลักการทำโครงงาน
เอกสารแนะนำการใช้งานระบบจัดเก็บและบันทึกข้อมูลทะเบียนพาณิชย์ (เบื้องต้น) โดย นายพชร อินทรวรพัฒน์ กรมพัฒนาธุรกิจการค้า.
กลุ่ม 6 ผลการประชุมระดมความ คิดเห็น เพื่อกำหนดทิศทางก้าวใหม่ ในการให้บริการ : ฝึกอบรมนักวิทยาศาสตร์ ห้องปฏิบัติการ.
LOGO แนวคิดเกี่ยวกับระบบ สารสนเทศ นางสาวกนกรัตน์ นพ โสภณ SMET
CSIT-URU อ. กฤษณ์ ชัยวัณณคุปต์ Mathematics and Computer Program, URU บทที่ 1 ความรู้ทั่วไปเกี่ยวกับ เทคโนโลยีสารสนเทศ Introduction to Information.
นาย สรวิศ เตธัญญวรากูล ปวช.3/2 นาย ศิวกร มาลี ปวช.3/2.
ลักษณะงานของวิศวกร ซอฟต์แวร์ ● วิเคราะห์และจัดทำความ ต้องการซอฟต์แวร์ ● ออกแบบซอฟต์แวร์ ● พัฒนาซอฟต์แวร์ ● ทดสอบซอฟต์แวร์ ● บำรุงรักษาซอฟต์แวร์ ● จัดการองค์ประกอบ.
การพัฒนาบทเรียนคอมพิวเตอร์ช่วยสอน เรื่อง หลักการทำงานของคอมพิวเตอร์ วิชาคอมพิวเตอร์พื้นฐาน สำหรับนักเรียนชั้นมัธยมศึกษาปีที่ 1 โรงเรียนเฉลิมราชประชาอุทิศ.
บทที่ 3 นักวิเคราะห์ระบบและการ วิเคราะห์ระบบ. 1. นักวิเคราะห์ระบบ (System Analysis) 1.1 ความหมายของนักวิเคราะห์ระบบ นักวิเคราะห์ระบบ (System Analysis:
การจัดกิจกรรมการ เรียนรู้แบบการทำ โครงงานคอมพิวเตอร์ การจัดกิจกรรมการ เรียนรู้แบบการทำ โครงงานคอมพิวเตอร์ ครูชาญณรงค์ ปานเลิศ โรงเรียนพระบางวิทยา ครูชาญณรงค์
การกำจัดขยะ โดยใช้หลัก 3R. มารู้จักหลัก 3R กัน Reduce Reuse Recycle.
Project Management by Gantt Chart & PERT Diagram
วิชาเทคโนโลยีสารสนเทศเพื่อชีวิต
เทคโนโลยีพื้นฐานของระบบสารสนเทศ
เรื่อง กระบวนการเทคโนโลยีสารสนเทศ
การกำจัดขยะ โดยใช้หลัก 3R. มารู้จักหลัก 3R กัน Reduce Reuse Recycle.
หน่วยที่ 1 ข้อมูลทางการตลาด. สาระการเรียนรู้ 1. ความหมายของข้อมูลทางการตลาด 2. ความสำคัญของข้อมูลทางการตลาด 3. ประโยชน์ของข้อมูลทางการตลาด 4. ข้อจำกัดในการหาข้อมูลทาง.
By Btech GPS : Jan GPS By BtechGPS By Btech GPS : Jan
อาจารย์อภิพงศ์ ปิงยศ บทที่ 3 : รูปแบบการเชื่อมต่อเครือข่ายและส่วนประกอบของเครือข่ายท้องถิ่น (Topologies and LAN Components) Part3.
การใช้ Social Media เพื่อการสื่อสาร
อาจารย์อภิพงศ์ ปิงยศ บทที่ 2 : แบบจำลองเครือข่าย (Network Models) part1 สธ313 การสื่อสารข้อมูลและเครือข่ายคอมพิวเตอร์ทางธุรกิจ อาจารย์อภิพงศ์
กระบวนการพัฒนาซอฟต์แวร์
บทที่ 7 การวิเคราะห์และพัฒนาระบบ
การพัฒนาการใช้งานในระบบเว็บ
อาจารย์อภิพงศ์ ปิงยศ บทที่ 3 : รูปแบบการเชื่อมต่อเครือข่ายและส่วนประกอบของเครือข่ายท้องถิ่น (Topologies and LAN Components) Part3.
การพัฒนาระบบสารสนเทศ Information System Development
อยู่ระหว่างดำเนินการ
การจัดหาพัสดุในส่วนของรายจ่ายลงทุนในภาพรวม ประจำเดือนมิถุนายน 2561
บทที่ 1 ระบบสารสนเทศ (Information System)
บทที่ 8 การควบคุมโครงการ
Software Engineering ( )
ระบบหนังสืออิเล็กทรอนิกส์ Electronic Book System
กรณีศึกษา : นักเรียน ระดับ ปวช.2 สาขาวิชาการบัญชี
อำเภออนามัยการเจริญพันธุ์
Information System MIS.
โดย ศรีปัญญา ม่วงเพ็ชร พยาบาลวิชาชีพชำนาญการ
บทที่ 5 ระบบสารสนเทศเพื่อการบริหารทรัพยากรมนุษย์
พื้นฐานการพัฒนาคอมโพเนนต์
การจัดการข้อมูล ดร. นพ. วรสิทธิ์ ศรศรีวิชัย
ความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์และเทคโนโลยีสารสนเทศ
ระบบการจัดการคลินิกครบวงจร
ฝ่ายการดำเนินงานในโรงแรม
บทที่ 7 การวิเคราะห์และพัฒนาระบบ
บทที่ 3 ซอฟต์แวร์ประยุกต์
การบริหารโครงการซอฟต์แวร์
KMA หมวด 6 การจัดการกระบวนการ.
การออกแบบและเทคโนโลยี
Object-Oriented Programming การเขียนโปรแกรมเชิงอ็อบเจ็กต์
แผนระบบสารสนเทศประจำปีงบประมาณ และ แผน e-Faculty ประจำปีงบประมาณ คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่
SMS News Distribute Service
กองแผนงานและวิชาการ & ศูนย์ เทคโนโลยีสารสนเทศ
ผู้ช่วยศาสตราจารย์จุฑาวุฒิ จันทรมาลี
บทที่ 7 การบริหารงานขนส่ง ( Transportation Management System : TMS )
ตัวแบบมาร์คอฟ (Markov Model)
บทที่ 2 การพัฒนาระบบสารสนเทศ
การเขียนโปรแกรมด้วยภาษาไพทอน การเขียนโปรแกรมแบบทางเลือก
บทที่ 15 การติดตั้งระบบและการทบทวนระบบงาน.
บทที่ 4 การให้บริการแพลตฟอร์ม Platform as a service(PaaS) 4.1 ความหมาย
กระดาษทำการ (หลักการและภาคปฏิบัติ)
ใบสำเนางานนำเสนอ:

วิวัฒนาการของการพัฒนาแอปพลิเคชัน อาจารย์สมเกียรติ ช่อเหมือน สาขาวิชาวิศวกรรมซอฟต์แวร์ คณะวิทยาศาสตร์และเทคโนโลยี (tko@webmail.npru.ac.th)

หัวข้อที่สนใจ บทนำ แบบจำลองกระบวนการพัฒนาแอปพลิเคชัน ความสำคัญของการพัฒนาแอปพลิเคชัน สรุปท้ายบท

บทนำ ก่อนการพัฒนาแอปพลิเคชัน การวิเคราะห์ข้อกำหนดความต้องการและทำความเข้าใจระบบขององค์กร การจัดสรรเวลาและทรัพยากร ในการพัฒนาข้อเสนอโครงการของทีม สัมภาษณ์คนในองค์กรและรวบรวมข้อมูลโดยใช้แบบสอบถามและรายงาน ความคล้ายคลึงกันของกระบวนการพัฒนาแอปพลิเคชัน SDLC และ OOAD มีการวางแผนและการสร้างแผนภาพ Agile และ OOAD มีการสร้างระบบย่อย Agile และ SDLC มีการจัดการแบบเรียงลำดับขั้นตอน

Rapid Application Development (RAD) แบบจำลองกระบวนการพัฒนาแอปพลิเคชันอย่างเร่งรัด https://www.wavemaker.com/rapid-application-development-vs-traditional-sdlc/

Object-Oriented Analysis and Design (OOAD) แบบจำลองการวิเคราะห์และออกแบบเชิงวัตถุ http://www.w3computing.com/systemsanalysis/object-oriented-systems-analysis-design/

Agile and Scrum แนวคิดการทำงานของบริษัทยุคใหม่ Project Management เน้นผู้จัดการและวางแผนก่อนเริ่มโปรเจกต์

แนวคิดสำคัญของเอจาย (Agile) ไม่เน้นกระบวนการและเอกสาร ยอมรับความเปลี่ยนแปลง ทำทีละนิดแต่ทำบ่อยๆ ผิดพลาดให้เร็ว ทำงานเป็นทีมมากกว่าที่จะสนใจกระบวนการ  ‘Agile’ มักจะมาคู่กับกรอบการทำงานแบบ ‘Scrum’ เน้นการจัดการงานที่ตนเองรับผิดชอบ และสื่อสารในทีม

ทีมการทำงานแบบสกรัม (Scrum) Product Owner : มีหน้าที่ประเมินค่า (Values) และจัดความสำคัญ (Priorities) ของงานต่างๆ ให้กับทีม Scrum Master : เป็นผู้ทำให้การทำงานเป็นไปอย่างราบลื่น ไม่ได้หมายถึงการเป็นผู้นำทีม ช่วยแก้ปัญหาและทำให้ทีมบรรลุเป้าหมาย Team : จะทำงานแบบจัดการตัวเอง (Self-Management) ทีมจะประกอบด้วย 3-9 คน และทุกตำแหน่งเป็น Designer, Programmer, UI/UX, Testing เข้าด้วยกัน เพื่อให้ทีมสามารถทำงานตั้งแต่ต้นจนจบได้ด้วยตัวเอง โดยไม่ต้องข้ามแผนก

ขั้นตอนการทำงานของ Scrum Backlog : เป็นส่วนงานที่ต้องทำ ข้อกำหนดความต้องการของลูกค้าและทีม Product Owner เลือกงานที่จะทำ Sprint Sprint Phase : เน้นการส่งงานให้เร็ว รอบของ Sprint (2-4 สัปดาห์) Sprint -> Deliver (งานที่ประเมินไว้) -> ประเมินผลงาน (ผู้ใช้, ลูกค้า) Daily Scrum Meeting : ประชุม 10-15 นาที เพื่อบอกสิ่งที่ทำ https://www.scrumalliance.org/why-scrum

วิวัฒนาการของการพัฒนาแอปพลิเคชัน โปรแกรมเชื่อมต่อเครือข่าย (Network connected programs) เว็บแอปพลิเคชัน (Web Applications) เว็บเซอร์วิส (Services) ส่วนประสานในการเขียนโปรแกรม (API) บริการย่อย (Micro services) http://www.macstroke.com/15488/apps-no-longer-differentiator-in-ios-vs-android-war-services-next-battleground

ทำไมต้องมีกระบวนการพัฒนาซอฟต์แวร์ ใช้กับเครื่องเดียว ใช้กับทุกเครื่อง https://www.youtube.com/watch?v=BXbezSxCn20 https://www.leaderwings.co/business/note-udom/

โปรแกรมแบบสแตนด์อโลน โปรแกรมที่สามารถทำงานได้โดยลำพังบนเครื่องเดียว ปัญหาของการทำงานเครื่องเดียว การจัดการรวมเข้าไว้ด้วยกัน การปรับขนาดโปรแกรม การจัดการทรัพยากรอย่างมีประสิทธิภาพ ทุกอย่างที่ต้องการจะเขียนตั้งแต่เริ่มต้นใหม่ทุกครั้ง ไม่มีการเชื่อมต่อแม่ข่าย ไม่มีการกำหนดมาตรฐาน https://twitter.com/ukstandalone

ซอฟต์แวร์ ผลิตภัณฑ์ที่นำไปใช้ประมวลผลข้อมูลคอมพิวเตอร์ http://daxushequ.com/applications.html https://bus206.pressbooks.com/chapter/chapter-3-information-systems-software/ https://play.google.com/store/search?q=thai&c=apps&price=2

แอปพลิเคชันแบบแม่ข่ายและลูกข่าย Brown, A. W. (2000). Component-Based Development.

การแยกระบบแบบกระจายเป็นชั้น Distributed Systems N-Tier Brown, A. W. (2000). Component-Based Development.

การให้บริการผ่านเครือข่าย แบ่งตามหน้าที่ แบ่งเป็นฟังก์ชัน Brown, A. W. (2000). Component-Based Development.

ฟังก์ชันการทำงานทั่วไป • https://pirun.ku.ac.th/~b521090026/webpage/ ส่วนประกอบในร่างกาย.html

ฟังก์ชันการทำงานทั่วไป (ต่อ) • รายละเอียดของการสร้างฐานข้อมูล (Generate database schema) • การออกแบบส่วนติดต่อผู้ใช้ (User interface design) •การเพิ่มประสิทธิภาพฐานข้อมูล (Database optimization) • การกระจายและถ่ายโอนข้อมูล (Data distribution and replication) • ตัวแทนในการเข้าถึงแม่ข่าย (Provide remote access to server) • การเข้าถึงและติดต่อใช้งาน (Generate browser-aware interfaces) • การเข้าถึงส่วนต่อประสาน (Remote component integration)

ตัวอย่างแบบจำลองแนวคิดทางธุรกิจ http://searchbusinessanalytics.techtarget.com/feature/Understanding-BI-analytics-tools-and-their-benefits

โมบายแอปพลิเคชันที่รองรับการดำเนินธุรกิจ https://www.marutitech.com/7-trends-of-mobile-application-development/

การพัฒนาโมบายแอปพลิเคชัน 1. Cross Platform Apps 2. IoT (Internet of Things) Applications 3. Cloud Computing Apps 4. Enterprise Applications 5. Wearable Devices 6. Location Based Services (LBS) 7. Mobile Security Apps http://pinngle.me/blog/pinngle/the-future-of-mobile-application-development-7-trends

สถาปัตยกรรมซอฟต์แวร์แบบกระจายชิ้นส่วน สถาปัตยกรรมซอฟต์แวร์แบบกระจายที่มีขนาดใหญ่ ตัวอย่างการแยกชิ้นส่วนของ Java Enterprise System Architectures “ชิ้นส่วนของซอฟต์แวร์ ที่มีความอิสระ เชื่อมโยงกันเป็นระบบเดียวกัน” https://docs.oracle.com/cd/E19396-01/819-0061/architecture.html

การสร้างแบบจำลองชิ้นส่วนที่ใช้ซ้ำได้ https://alistapart.com/article/content-modelling-a-master-skill https://www.lucidchart.com/pages/database-diagram/database-models

รูปแบบใหม่สำหรับพัฒนาแอปพลิเคชัน มีจุดเริ่มต้นหลายจุด (Multiple entry points) ปรับเปลี่ยนขนาดของงาน (Scalability to different size tasks) เอกสารในการตัดสินใจด้านวิศวกรรม กำหนดรายละเอียดและวิเคราะห์อินเทอร์เฟซของคอมโพเนนต์ http://idratherbewriting.com/2011/05/13/examples-of-help-systems-that-provide-users-with-multiple-entry-points/

กิจกรรมตามแนวคิดการนำกลับมาใช้ใหม่ Brown, A. W. (2000). Component-Based Development.

ความกังวนในการจำหน่ายแอปพลิเคชัน การแข่งขันกับบริษัทขนาดเล็ก และเครื่องมือที่นำมาใช้ แฟลตฟอร์มและการใช้โค้ดเดิม ความคิดใหม่ ๆ ในการสร้าง https://www.codebee.co.th/labs/ราคาทำแอพ-เรทราคาแอพ/ /

ตัวอย่างการจำลองส่วนประกอบระบบ

สรุปท้ายบท การพัฒนาแอปพลิเคชันจากอดีตไปสู่อนาคต โดยมีแนวคิดในการทำงานแบบใหม่ เช่น Agile การนำสถาปัตยกรรมซอฟต์แวร์แบบกระจายมาใช้ในการพัฒนา การนำชิ้นส่วนของซอฟต์แวร์กลับมาใช้และง่ายต่อการพัฒนา รูปแบบการพัฒนาและกิจกรรมที่สนับสนุนการนำกลับมาใช้ใหม่ เกิดจากความกังวลในการจำหน่ายและการสร้างรายได้