Homework 2 Present.

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
เรื่อง การแก้ไขปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
Advertisements

ส่วนที่ : 2 เรื่อง การวางแผน
การวางแผนพัฒนาระบบสำนักงาน
ความสำคัญของงานวิจัย เสนอ รศ.ดร.เผชิญ กิจระการ
การฝึกอบรมหลักสูตร การบริหารจัดการโครงการ และการติดตามประเมินผล
Chapter 11 : System Implementation
วงจรพัฒนาระบบ (System Development Life Cycle)
OpenProject รุ่นที่ มกราคม 2553 การเคหะแห่งชาติ อ
ระบบการประเมินเพื่อพัฒนาผลการปฏิบัติงาน บุคลากรสายสนับสนุน
ขั้นตอนในการทำวิจัย.
หลักการออกแบบของ ADDIE model ADDIE model
หลักการพัฒนา หลักสูตร
Object-Oriented Analysis and Design
Information System Project Management
สุนีย์ พงษ์พินิจภิญโญ
การพัฒนากิจกรรม การเรียนรู้ โดยโครงงาน
การออกแบบและพัฒนาซอฟต์แวร์ (Software design and development) 4 (3-2-6)
การวิเคราะห์ความต้องการด้านระบบ
การวางแผนและการดำเนินงาน
นวัตกรรม Innovation สุทธินันท์ สระทองหน.
Surachai Wachirahatthapong
SCC - Suthida Chaichomchuen
Software Process Models
Knowledge Management (KM)
การติดตาม และประเมินโครงการ.
ความรู้พื้นฐานเกี่ยวกับการวิจัย
The General Systems Theory
การเสริมประสิทธิภาพการวัด และประเมินผลในชั้นเรียน
การวางแผนและ การจัดทำ IT Audit
การออกแบบฐานข้อมูลเชิงสัมพันธ์
Waterfall model แบบจำลองน้ำตก
บทที่ 12 การเปลี่ยนแปลง และการพัฒนาองค์การ.
การจัดทำคู่มือ การปฏิบัติงาน Work Manual
บทที่ 15 Start การซ่อมบำรุงระบบ (System Maintenance) Next.
บทที่ 1 ความรู้พื้นฐานในการ พัฒนาระบบ
บทที่ 2 การพัฒนาระบบสารสนเทศ
การพัฒนาระบบสารสนเทศ (Information System Development)
วิธีการทางคอมพิวเตอร์
แบบจำลองกระบวนการซอฟต์แวร์
System Development Lift Cycle
3. การพัฒนาระบบสารสนเทศ
โครงการพัฒนาคุณภาพการบริหารจัดการภาครัฐ (PMQA : Public Sector Management Quality Award) ประจำปีงบประมาณ พ.ศ
บทที่ 4 Plan การวางแผน.
Chapter 2 Software Process.
การเพิ่มผลผลิต Productivity
เรื่องหลักการแก้ปัญหา
การออกแบบตัวชี้วัดที่ประสบความสำเร็จในการทำ E-Learning โดย เบคิม เฟทาจิ , เมย์ลินดา เฟทาจิ มหาวิทยาลัยยุโรปตะวันออกเฉียงใต้ คณะวิทยาศาสตร์และเทคโนโลยีร่วมสมัย.
Week 4 : การบริหารโครงการ
2.1 วิธีแก้ปัญหาด้วยคอมพิวเตอร์ (Computer problem solving methods)
วิชา วิศวกรรมซอฟต์แวร์ (Software Engineering)
การเขียนเกณฑ์การประเมิน (Rubric)
A Comparison on Quick and Bubble sort on large scale data
หลักการแก้ปัญหา.
Educational Standards and Quality Assurance ผศ.ดร.ชัยยุทธ ศิริสุทธิ์
แนวทางการพัฒนาเพื่อธำรงบันไดขั้นที่ 2 สู่ HAการสถาบันรับรองคุณภาพสถานพยาบาล (องค์การมหาชน) พฤศจิกายน 2557.
การวิเคราะห์และออกแบบระบบ System Analysis and Design
ADDIE Model.
Chapter 1 Introduction to Software Engineering – Software Engineering Chaichan Kusoljittakorn 1.
หลักการเขียนโครงการ.
การสอนโดยการแบ่งกลุ่มทำกิจกรรม
ให้โอกาสผู้เรียนมีส่วนร่วมรับผิดชอบ สร้างความมีวินัย การตรงต่อเวลา
การบริหารคุณภาพทั่วทั้งองค์กร Total Quality control : QCC
การออกแบบสื่อเพื่อการศึกษา ADDIE Model
หน่วยที่1 ข้อมูลทางการตลาด
Evaluating e-learning systems using e-traceability systems นาย จีรวัฒน์ คำภิรา รหัสนิสิต
แนวทางพัฒนางานประจำ สู่งานวิจัย
Business System Analysis and Design (BC401)
Measuring Agility in Agile Software Development
Software Evolution แบบจำลองกระบวนการพัฒนา/ผลิตซอฟต์แวร์ (Process Model) แบบจำลองใช้สำหรับชี้นำถึงกิจกรรมหลัก (key Activities) ในการพัฒนาซอฟต์แวร์ ด้วยการกำหนดรายละเอียดหรือข้อบัญญัติไว้ในแต่ละกิจกรรมในแต่ละขั้นตอนที่มีลำดับขั้นตอนการพัฒนาที่ชัดเจน.
ใบสำเนางานนำเสนอ:

Homework 2 Present

หัวข้อการนำเสนอ Capability Maturity Model Agile Model eXtreme Programming Unified Process – UP Scrum Model Aspect-Oriented Software Development

Capability Maturity Model Capability Maturity Model หรือที่เรียกกันว่า (CMM) คือ แบบจำลองวุฒิภาวะความสามารถ เกิดจาก SEI ของมหาวิทยาลัยคาร์เนที เมลลอน ถูกกำหนดขึ้นเพื่อวัดความเชื่อมั่นและคุณภาพของกระบวนการพัฒนาซอฟต์แวร์ โดย CMM ได้รวมเอาข้อดีของ TQM มาปรับใช้กับการพัฒนาซอฟต์แวร์ โดยเฉพาะ จึงเป็นโมเดลที่ใช้วัดความเชื่อมั่น และคุณภาพของกระบวนการพัฒนาซอฟต์แวร์ในปัจจุบัน

ระดับมาตรฐานของ CMM ระดับเริ่มต้น เรียกว่า Initial Level ระดับจัดทำโครงการเบื้องต้น เรียกว่า Repeatable Level ระดับที่มีการกำหนดขึ้นอย่างชัดเจน เรียกว่า Defined Level ระดับมีการจัดการ เรียกว่า Managed Level ระดับปรับปรุงให้เหมาะสมที่สุด เรียกว่า Optimizing Level

ประโยชน์ของ CMM การทำงานเป็นระบบมากขึ้น มีการทำงานที่ ตรวจสอบได้โดยง่าย โอกาสในการประสบผลสำเร็จในการทำงานมีมากขึ้น มีวิธีการปฏิบัติที่เป็นมาตรฐาน และสามารถยืดหยุ่น ได้ สามารถรับงานจากต่างประเทศ และทำรายได้เข้า ประเทศได้

Agile Model Agile Model เป็นแนวคิดใหม่สำหรับการพัฒนาซอฟต์แวร์ ที่พยายามที่จะแทรกตัวเข้าไปใน methodology แบบเดิม เพื่อให้งานสั้นลง ซึ่งการพัฒนาอาจจะใช้เวลาสั้นๆ ประมาณ 1 – 4 สัปดาห์ โดยจะเน้นการสื่อสารแบบตัวต่อตัวมากกว่าการใช้เอกสาร ทีมงานโดยทั่วไปอย่างน้อยต้องประกอบด้วย โปรแกรมเมอร์และลูกค้า ที่ใช้กำหนดขอบเขต และระบบงาน

รูปแบบการทำงานของ AM เลือกบางหลักการมาทำ เป็นวิธีหนึ่งที่จะเอาหลักการของ Agile มาจัดการกับเอกสารและระบบเดิมที่มีอยู่ได้ ใน Agile ประกอบด้วย value ผลลัพธ์ principle หลักการ practices วิธีปฏิบัติ ทั้งสามอย่างนี้เป็นส่วนหนึ่งในโมเดล Agile ที่สามารถนำมาพัฒนา SW ให้มีประสิทธิภาพ และเกิด overhead น้อย ให้มอง Agile เป็นส่วนขยายของกระบวนการพัฒนา SW แบบเดิมได้ ให้ Agile เข้าไปกำกับ ดูว่าของเดิมที่มีอยู่อันไหนสำคัญก็ทำ ไม่สำคัญก็ละ นำ Agile มาจัดลำดับความสำคัญ ดูว่ากิจกรรมไหน ควรทำ ไม่ควรทำ

eXtreme Programming Extreme Programming หรือ XP เป็นกระบวนการพัฒนาซอฟต์แวร์แบบ Agile (lightweight) มีปัจจัยพื้นฐาน ดังนี้ communication : เน้นเรื่องการพบปะพูดคุย (หลักการ Agile) Simplicity : ออกแบบและเขียนโปรแกรมให้ง่าย ไม่เน้น performance มากนัก เน้นเรื่องแก้ Feedback : เน้นเรื่องลูกค้า feedback เราเปลี่ยนได้เรื่อยๆ โดยใช้ refactor Courage : เราต้องสามารถตัดสินใจเองได้ โปรแกรมเมอร์มีความกล้า ในการตัดสินใจ

12 กิจกรรมหลักของ XP วางแผนเกม (The Planning Game) พยายามซอยงานให้ถี่ๆ (Small Releases) มีตัวกลางคั่นระหว่าง user และตัวเรา (System Metaphor) ออกแบบให้ง่าย (Simple Design) ทดสอบเสมอ (Continuous Testing) แก้ code บ่อยๆ (refactoring)

12 กิจกรรมหลักของ XP ทำงานเป็นคู่ (pair programming) (ต่อ) ทำงานเป็นคู่ (pair programming) Team code ownership ทำการรวบรวมงานอย่างต่อเนื่อง (Continuous Integration) ทำงานไปเรื่อยๆ ไม่หักโหม ห้ามว่าง (40- Hour-work-week) มองทีมเป็นหนึ่ง (On-site Customer) ใช้มาตรฐานการ code แบบเดียวกัน (Coding Standards)

Unified Process (UP) Unified Process (UP) คือกระบวนการทางวิศวกรรมซอฟต์แวร์ ที่เกิดจากการรวมเอาสิ่งที่ผู้เชี่ยวชาญทางการพัฒนาซอฟต์แวร์ ที่เคยกำหนดไว้ และได้ผลดีในการพัฒนาซอฟต์แวร์มารวมกัน โดยเลือกแต่เทคนิคที่ดี และขั้นตอนหลักที่เหมือนๆกัน มารวมกัน(Unify) และกำหนดให้มีชื่อใหม่ว่า “กระบวนการพัฒนาซอฟต์แวร์แบบรวมเป็นหนึ่งเดียว (Unified Process)

6 กระบวนการของ UP การพัฒนาซอฟต์แวร์ควรเป็นการพัฒนาแบบวนกลับ (Iterative Development) โครงสร้างถูกแบ่งออกเป็นรอบ (Iteration) สิ่งที่ได้จะมีการพัฒนาเพิ่มจนกว่าจะกลายเป็นระบบที่สมบูรณ์ ในแต่ละรอบทีมจะต้องทำงานซ้ำ (Iterate) การวิเคราะห์ ออกแบบ พัฒนาโปรแกรม และทดสอบ การพัฒนาซอฟต์แวร์ ใดๆ ควรมีการจัดการความต้องการ ได้ (Requirement Management)

6 กระบวนการของ UP (ต่อ) การใช้แนวคิดสถาปัตยกรรมแบบองค์ประกอบ (Component –based Model Architecture) การนำกลับมาใช้ได้อีก (Reusable) เพื่อเป็นพื้นฐานในการจัดการโครงการ เพื่อให้มีการควบคุมการทำงานอย่างชาญฉลาด การสร้างต้นแบบของระบบที่สามารถมองเห็นได้ (Visual Model) ด้วยภาษา UML

6 กระบวนการของ UP (ต่อ) การตรวจสอบคุณภาพของซอฟต์แวร์ที่พัฒนาอย่าง ต่อเนื่อง (Continuously Verify) การทดสอบการทำงานของระบบ (Function Testing) การทดสอบการใช้ระบบ (Usability Testing) การทดสอบความน่าเชื่อถือของระบบ (Reliability Testing) การทดสอบประสิทธิภาพ (Performance Testing) การทดสอบการสนับสนุน (Supportability) การจัดการการเปลี่ยนแปลง (Change Management)

Scrum Model Scrum เป็น development process ที่อยู่บนพื้นฐานของ Sprint เป็นหนึ่งใน Implementationหลายๆวิธีที่อยู่ในค่าย Agile Software Development Scrum จะ sprint เป็นช่วงๆตามหลักการแล้วคือช่วงละ 2-4 สัปดาห์ โดยจะเป็นช่วงที่เราจะเร่งทำงานอย่างเต็มที่เต็มขีดจำกัด หลังจบ sprint ก็จะพักบ้างสัก 3-5 วัน ก่อนที่จะ sprint ต่อไป

3 Concept ของ Scrum ว่าด้วยเรื่องของทีมงาน (Role) Scrum Team Product Owner Scrum Master ว่าด้วยเรื่องของวิธีการทำงาน (Process) Backlog Sprint phase Daily scrum ว่าด้วยเรื่องของการประเมินและติดตามงาน (Demonstration and Evaluation)

Aspect-Oriented Software Development Aspect-Oriented Software Development (AOSD) เป็นความพยายามในการช่วยนักพัฒนาสำหรับแยกคอนเซินในการเขียนโปรแกรม โดยเฉพาะอย่างยิ่งคอนเซินตัดขวาง (crosscutting concern) เพื่อเพิ่มความเป็น module การใช้งาน AOP อาจจะต้องทำการปรับเปลี่ยนภาษาในการพัฒนา ในขณะที่การใช้ AOSD จะรวมถึงความเกี่ยวข้องกับภาษา สภาพแวดล้อมและวิธีการพัฒนา

SA – WAD – D - JA สวัสดีครับ - ค่ะ