1 / 29

บท ที่ 4 รวบรวมความต้องการ ( Requirements Gathering )

บท ที่ 4 รวบรวมความต้องการ ( Requirements Gathering ). การวิเคราะห์และออกแบบระบบ (System Analysis and Design. วัตถุประสงค์. เห็นความสำคัญของการวิเคราะห์ความต้องการ เพื่อให้ได้มาซึ่งความต้องการที่แท้จริงและถูกต้อง บอกบทบาทหน้าที่ของผู้ใช้ที่ดี

hue
Download Presentation

บท ที่ 4 รวบรวมความต้องการ ( Requirements Gathering )

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. บทที่ 4 รวบรวมความต้องการ(Requirements Gathering) การวิเคราะห์และออกแบบระบบ (System Analysis and Design

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

  3. บทนำ • การวิเคราะห์ระบบ เป็นกระบวนการของการสร้างแผนงาน(plan) เพื่อแสดงให้เห็นถึงโครงร่าง กระบวนการทำงานของระบบทำงานอย่างไร (how) สอดคล้องกับจุดประสงค์และความต้องการหรือไม่ • วัตถุประสงค์ของการวิเคราะห์ระบบ คือ การทำความเข้าใจในฟังก์ชันหน้าที่ทางธุรกิจ (Business Functions) และพัฒนาออกมาเป็นความต้องการของระบบ (System Requirements)

  4. ขั้นตอนการพัฒนาระบบตามแบบแผน SDLC AS-IS System Planning Analysis Design Implement To-Be System Understand As-is system Identify improvements Develop Concept for The to-be system แสดงขั้นตอนการพัฒนาระบบตามแบบแผน SDLC โดยในระยะการวิเคราะห์ จะต้องทำความเข้าใจกับระบบงานเดิม การเพิ่มเติมความต้องการ เพื่อพัฒนาแนวคิดสำหรับระบบใหม่ที่จะเกิดขึ้น

  5. การวิเคราะห์ระบบ • การศึกษาระบบงานเดิม ประกอบด้วย 3 ระยะ คือ • ทำความเข้าใจกับระบบงานเดิม (Understand AS-IS System) • เป็นการศึกษาขั้นตอนการทำงานของระบบงานเดิมที่เป็นอยู่ในปัจจุบัน มีจุดอ่อนหรือจุดแข็งอย่างไร • กำหนดสิ่งที่ต้องการปรับปรุงเพิ่มเติม (Identity Improvements) • เป็นการกำหนดแนวทางในการปรับปรุงระบบให้เป็นไปในทิศทางที่ดีขึ้น • พัฒนาแนวความคิดสำหรับระบบงานใหม่ (Develop Concept for the To-Be System) • สร้างแบบจำลองกระบวนการและแบบจำลองข้อมูล ทำให้ทราบถึงรายละเอียดของสารสนเทศ

  6. การรวบรวมความต้องการ (Requirements Gathering) • หน้าที่สำคัญอย่างหนึ่งที่นักวิเคราะห์ระบบจะต้องทำ ก็คือ การเข้าไปค้นหาความต้องการของผู้ใช้ • ซึ่งขั้นตอนการค้นหาความต้องการและการจดบันทึกความต้องการนั้นมิใช่สิ่งที่ง่าย • นักวิเคราะห์ระบบควรจดบันทึกความต้องการให้อยู่ในรูปแบบมาตรฐาน เพื่อนำไปพัฒนาเป็นซอฟต์แวร์ได้ต่อไป • หลักการในการค้นหาความต้องการ คือ 5W + 1H

  7. หลักการในการค้นหาความต้องการ (5W + 1H) • Who มีใครเกี่ยวข้องบ้าง? บทบาทของแต่ละคนนั้นคืออะไร? ใครเป็นบุคคลแท้จริงที่ร้องขอเพื่อพัฒนาระบบใหม่? • What อะไรคือสิ่งที่ทำให้เกิดปัญหา? ระบบที่ต้องการหรือระบบที่อยากได้คือ ระบบอะไร? มีฟังก์ชันการทำงานอะไรบ้าง? • When ระบบติดตั้งได้เมื่อไร? ผู้สนับสนุนเงินทุนพร้อมที่จะสนับสนุนเมื่อไร? ทดสอบระบบใหม่เมื่อไร? • Where บริเวณสถานที่ใด ที่ระบบใหม่สามารถดำเนินการได้อย่างเหมาะสม • Why ทำไมต้องแสวงหาระบบใหม่? ทำไมผู้ใช้จึงเชื่อว่าระบบใหม่สามารถแก้ไขปัญหาได้? • Howระบบใหม่จะทำงานได้อย่างไร? มีข้อจำกัดอย่างไร?

  8. การรวบรวมความต้องการ (Requirements Gathering) • กิจกรรมการค้นหาความต้องการ และการจดบันทึกความต้องการนั้น มีหลักการสำคัญ คือ จะต้องค้นหาความจริงให้ได้ว่าผู้ใช้ต้องการสิ่งใดเป็นสำคัญ • ก่อนที่นักวิเคราะห์ระบบจะเข้าไปค้นหาความต้องการจากผู้ใช้ตามหน่วยงานต่างๆ นักวิเคราะห์ระบบจำเป็นต้อง ศึกษารูปแบบองค์กร • ผู้ใช้ (User)มีบทบาทสำคัญในการวิเคราะห์ระบบในการให้ข้อมูลแก่นักวิเคราะห์ระบบ

  9. คุณสมบัติของผู้ใช้(user)ที่ดีคุณสมบัติของผู้ใช้(user)ที่ดี • จะต้องสามารถอธิบายขั้นตอนการทำงานของระบบปัจจุบันที่ดำเนินงานอยู่ได้ • จะต้องสามารถชี้แจงปัญหาต่างๆ ที่เกิดขึ้นในระบบได้ • จะต้องสามารถระบุความต้องการในระบบใหม่ได้ • ควรจัดเตรียมเอกสาร หรือรายงานที่เกี่ยวข้องให้แก่นักวิเคราะห์ระบบ • ควรให้ความร่วมมือแก่นักวิเคราะห์ระบบ • ควรมีส่วนร่วมต่อโครงการพัฒนาระบบใหม่ รวมทั้งสามารถแนะนำหรือเสนอแนวทางแก้ไขให้แก่นักวิเคราะห์ระบบ

  10. ชนิดของความต้องการ (Type of Requirements) แบ่งเป็น 2 ชนิดด้วยกัน คือ • ความต้องการที่เป็นฟังก์ชันการทำงาน (Function Requirements) • ความต้องการที่ไม่ได้เป็นฟังก์ชันการทำงาน (Non-Function Requirements)

  11. ความต้องการที่เป็นฟังก์ชันการทำงาน (Function Requirements) • คือ กิจกรรมที่ระบบต้องปฏิบัติ กล่าวคือ เป็นขั้นตอนการทำงานที่ประกอบด้วยกิจกรรมต่างๆ (สิ่งที่ระบบควรต้องทำหรือเป็นหน้าที่หลักของระบบ) ที่ข้องเกี่ยวกับผู้ปฎิบัติงาน โดยแต่ละกิจกรรมจะก่อให้เกิดผลการดำเนินงานออกมา • โดยปกติ ความต้องการที่เป็นฟังก์ชันการทำงานมักเขียนอยู่ในรูปแบบของกริยา (Verb Phrase)

  12. ตัวอย่าง Functional Requirements • ระบบเงินเดือน (Payroll System) • กิจกรรมการปฎิบัติงานของระบบเงินเดือน ประกอบด้วยฟังก์ชันหน้าที่ต่างๆ คือ • คำนวณเงินเดือนและค่าคอมมิชชัน • คำนวณภาษี • พิมพ์สลิปเงินเดือนและพิมพ์รายงาน • สามารถจัดพิมพ์รายงานภาษีประจำปีแก่สรรพากร • ระบบใหม่ต้องจัดการกับฟังก์ชันเหล่านี้ได้ทั้งหมด

  13. ความต้องการที่เป็นฟังก์ชันการทำงาน (Function Requirements) • สรุปได้ว่า ความต้องการที่เป็นฟังก์ชันการทำงานนั้น ตั้งอยู่บนพื้นฐานของขั้นตอนการทำงานและกฎเกณฑ์ขององค์กรที่ใช้สำหรับดำเนินธุรกิจเป็นสำคัญ • ดังนั้น ความต้องการที่เป็นฟังก์ชันการทำงานจึงเกี่ยวข้องกับ • มีอะไรบ้างที่ต้องอินพุตเข้าไปในระบบ • มีเอาต์พุตอะไรบ้าง ที่ระบบต้องดำเนินการ • มีข้อมูลอะไรบ้าง ที่ระบบต้องจัดเก็บ เพื่อให้ระบบอื่นๆ ที่เกี่ยวข้อง นำข้อมูลไปใช้งานได้ • การคำนวณอะไร ที่ระบบต้องดำเนินการ • ซึ่งสิ่งเหล่านี้จะต้องประสานการทำงานกันอย่างมีระบบ

  14. ความต้องการที่เป็นฟังก์ชันการทำงาน (Function Requirements) • คือ คุณสมบัติหรือคุณภาพของซอฟต์แวร์ที่พึงมี ไม่ใช่หน้าที่หลัก เช่น • ความสามารถในการใช้งาน (Usability) • ประสิทธิภาพของระบบ (Efficiency) • ระบบความปลอดภัย (Security) • ความน่าเชื่อถือของระบบ (Reliability) • เวลาตอบสนอง (Time Response) • ความง่ายต่อการใช้งาน (User Friendliness) • ความสะดวกในการเคลื่อนย้ายไปยังสภาพแวดล้อมใหม่ (Portability)

  15. ชนิดของความต้องการ (Type of Requirements) Non-Function Function บันทึกลงในเอกสาร บันทึกลงในเอกสาร • ทราบขั้นตอน • อินเตอร์เฟช • บรรยายถึงคุณภาพ • เทคนิคต่างๆ ที่ซอฟต์แวร์ • พึงมี แนวทางการออกแบบ (guide design) แนวทางการวิเคราะห์ (guide analysis)

  16. Funtional Requirements (FRs)and Non-Function Requirements (NFRs) • ตัวอย่างเช่น ระบบบัญชี ทำหน้าที่หลักคือ บันทึกข้อมูล Transaction รายวัน ,สรุปยอดบัญชีได้ (สิ่งที่ระบบบัญชีควรทำหรือหน้าที่หลัก) - - > Functional requirements • ผู้ใช้ต้องใส่รหัสผ่าน ชื่อผู้ใช้ เชื่อมโยงกับอินเทอร์เน็ตได้ เชื่อมโยงระบบบัญชีกับบริษัทอื่น (ไม่ใช่หน้าที่หลัก) - - >Non-Functinal requirements

  17. การวิเคราะห์ความต้องการ(RequirementsAnalysis)การวิเคราะห์ความต้องการ(RequirementsAnalysis) • นักวิเคราะห์ระบบ(SA) นำความต้องการที่ได้รวบรวมมา ผ่านกระบวนการวิเคราะห์ความต้องการ (Requirements Analysis) เพื่อให้ได้มาซึ่งข้อกำหนดความต้องการ (Requirement Specification) เพื่อใช้ในการพัฒนาซอฟต์แวร์ โดยการวิเคราะห์ความต้องการเพื่อกำหนดเป็นความต้องการของระบบใหม่ ประกอบด้วย 3 ขั้นตอน คือ

  18. การวิเคราะห์ความต้องการ(RequirementsAnalysis)การวิเคราะห์ความต้องการ(RequirementsAnalysis) • วิเคราะห์ข้อเท็จจริงในข้อมูล (Analysis of factual Data) พิจารณาว่าระบบจะต้องดำเนินงานอย่างไร เพื่อให้ตรงกับวัตถุประสงค์ตามที่ต้องการ • กำหนดสาระสำคัญของความต้องการ (Identification of Essential Requirements) คือ คุณสมบัติหรือสาระสำคัญที่ระบบใหม่พึงมี • คัดเลือกความต้องการที่ตรงกับวัตถุประสงค์ (Selection of Requirements Fulfillment) ใช้เป็นพื้นฐานในการออกแบบ

  19. การวิเคราะห์ความต้องการ(RequirementsAnalysis)การวิเคราะห์ความต้องการ(RequirementsAnalysis) Business Process ………………. ………………. ………………. ………………. ……………… ……………….. Business Information Requirements Gathering And Analysis Business Rules Requirements Specification แสดงขั้นตอนการนำความต้องการที่รวบรวมมาผ่านการวิเคราะห์ และสรุปลงในเอกสารข้อกำหนดความต้องการของระบบ (Requirements Specification)

  20. Requirement Specification • คือ ข้อมูลที่สร้างขึ้นมาระหว่างการสืบเสาะข้อเท็จจริงด้วยการวิเคราะห์ความต้องการเพื่อให้ได้มา ซึ่งข้อกำหนดความต้องการที่ใช้อธิบายคุณสมบัติของระบบใหม่ • หรือ ข้อกำหนดที่มีการอธิบายว่าระบบควรมีการทำงานอย่างไรบ้าง รายละเอียดอะไรบ้างที่ต้องทำให้สำเร็จ อาจเป็นข้อบังคับเกี่ยวกับกระบวนการพัฒนาระบบงาน ข้อตกลงร่วมกันเกี่ยวกับคุณภาพของซอฟต์แวร์

  21. หลักการค้นหาความต้องการที่ดีหลักการค้นหาความต้องการที่ดี • ค้นหาข้อมูลความต้องการกับบุคคลที่เกี่ยวข้องโดยตรง และให้ตรงวัตถุประสงค์มากที่สุด • ระบุความต้องการต่างๆ ลงในรูปของเอกสาร และมีการทำข้อตกลงร่วมกันทั้งสองฝ่าย • Requirement ที่ดีต้องตกลงร่วมกันทั้งสองฝ่าย • คำจำกัดความหรือคำอธิบายบนเอกสารที่ได้บันทึกไว้ ควรมีความชัดเจน พยายามอย่าใช้คำกำกวม

  22. สเตคโฮลเดอร์: แหล่งทรัพยากรของความต้องการระบบ (Stakeholders : The Source of System Requirements) • สเตคโฮลเดอร์หรือ Information Worker คือ บุคคลที่มีความสนใจและพร้อมให้ความร่วมมือกับงานพัฒนาระบบสารสนเทศใหม่ เพื่อให้เกิดผลสำเร็จ สามารถแบ่งออกเป็น 6 กลุ่มหลักๆ คือ • เจ้าของระบบ (System Owners) Sponsors • ผู้ใช้ระบบ (System User) • นักออกแบบระบบ (System Designers) • นักพัฒนาระบบ (System Developers) Programmer • นักวิเคราะห์ระบบ (System Analysts) • ร้านค้าจำนวนอุปกรณ์ไอทีและที่ปรึกษา (IT Vendors and Consultants)

  23. เทคนิคการรวบรวมความต้องการ (RequirementsGathering Techniques) • ในบางครั้ง อาจเรียกว่า การสืบเสาะข้อเท็จจริง (Fact-Finding) โดยมีเทคนิคสำคัญ ดังนี้ • การรวบรวมเอกสาร (Documentation) • การสัมภาษณ์และสนทนากับผู้ใช้ (Conduct Interviews and Discussions with Users) • การสังเกตการจากกระบวนการเดินเอกสารในธุรกิจ (Observe and Document Business Processes) • การแจกจ่ายและรวบรวมแบบสอบถาม (Distribute and Collect Questionaires) • การวางแผนความต้องการร่วมกัน (Joint Requirements Planning: JRP)

  24. เทคนิคการรวบรวมความต้องการ (RequirementsGathering Techniques) • การรวบรวมเอกสาร (Documentation) • การรวบรวมแบบฟอร์ม หรือรายงานต่างๆ ที่ใช้อยู่ หรือการถ่ายสำเนาเอกสาร • การสัมภาษณ์และสนทนากับผู้ใช้ (Conduct Interviews and Discussions with Users) • การสัมภาษณ์แบบไม่มีโครงสร้าง (Unstructured Interview) ไม่มีการกำหนดคำถามก่อนว่าจะถามเกี่ยวกับอะไร มีลักษณะพูดคุยสนทนา • การสัมภาษณ์แบบมีโครงสร้าง (Structured Interview) มีการกำหนดคำถามเพื่อการสัมภาษณ์โดยเฉพาะ

  25. เทคนิคการรวบรวมความต้องการ (RequirementsGathering Techniques) • การสังเกตการจากกระบวนการเดินเอกสารในธุรกิจ (Observe and Document Business Processes) • สัมผัสจากการทำงานที่เป็นเหตุการณ์จริงของพนักงาน เช่น กระบวนการทำงาน มีขั้นตอนใดที่ต้องเข้าไปปรับปรุงเพื่อให้ระบบดีขึ้น โดยใช้ไดอะแกรม “เวิร์กโฟลว์ (Workflow)” • การแจกจ่ายและรวบรวมแบบสอบถาม (Distribute and Collect Questionaires)โดยที่แบบสอบถามมีอยู่ 2 ประเภท คือ • คำถามปลายเปิด สร้างขึ้นเพื่อให้ผู้ตอบแบบสอบถามมีอิสระในการตอบคำถาม ประโยชน์คือ ได้รับคำถามในลักษณะความคิดเห็น ข้อเสนอแนะ ซึ่งสามารถใช้เป็นแนวทางปฎิบัติหรือปรับปรุงต่อไป • คำถามปลายปิด เป็นคำถามที่มีการกำหนดคำตอบให้ผู้ตอบแบบสอบถาม มีตัวเลือกคำตอบที่ชัดเจน แยกแยะความแตกต่างได้ชัด

  26. เทคนิคการรวบรวมความต้องการ (RequirementsGathering Techniques) • ปัจจุบันคุณทำงานในตำแหน่ง? • คุณทำงานในหน่วยงานนี้เป็นเวลา…..ปี…เดือน • ปัจจุบันคุณอายุ ….ปี • ระบบงานที่คุณใช้อยู่นั้น เกิดปัญหาในการดำเนินงานด้านใดบ้าง? ตัวอย่างแบบสอบถาม ที่ตั้งคำถามปลายเปิด

  27. เทคนิคการรวบรวมความต้องการ (RequirementsGathering Techniques) 1. บริษัทของคุณมีจำนวนพนักงานเท่าไร [ ] 1-2 คน [ ] 20-100 คน [ ] 100-200 คน [ ] มากกว่า200 คน 2. คุณจบการศึกษาในระดับใด [ ] มัธยม [ ] ปวช./ปวส. [ ] ปริญญาตรี [ ] สูงกว่าปริญาตรี ตัวอย่างแบบสอบถาม ที่ตั้งคำถามปลายปิด

  28. เทคนิคการรวบรวมความต้องการ (RequirementsGathering Techniques) • การวางแผนความต้องการร่วมกัน (Joint Requirements Planning: JRP)ใช้เทคนิค Brainstorming ในการทำ Workshop มีการแบ่งงานหรือมอบหมายหน้าที่ และทุกคนต้องร่วมมือร่วมใจในการประชุมร่วมกันเพื่อปรึกษาหารือ จึงสามารถบรรลุผลสำเร็จได้ดี

  29. Q & A End

More Related