Weitere ähnliche Inhalte
Mehr von TaiMe Sakdisri (17)
Unit01
- 1. วัตถุประสงค
เพื่อใหนักศึกษาสามารถ
อธิบายลักษณะของระบบซอฟตแวรได
อธิบายวงจรชีวิตการพัฒนาระบบได
อธิบายลักษณะของซอฟตแวรคุณภาพได
อธิบายปญหาในการพัฒนาระบบได
หนวยที่ 1: ความรูพื้นฐานเกียวกับการ
่
พัฒนาระบบซอฟตแวร
(Introduction to Software Systems Development)
OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 1 OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 2
ระบบซอฟตแวร (Software ระบบซอฟตแวร (Software
System) System)
ระบบ (System) ระบบทีอิงกับสวนของซอฟตแวรในระบบคอมพิวเตอร
่
ดํารงอยูในสภาพแวดลอม (Environment) ซอฟตแวร, โปรแกรมประยุกต (application)
มีขอบเขต (Boundary) การพัฒนาระบบซอฟตแวร (Software system) เปน
มีอินพุทและเอาทพุต อุตสาหกรรม
แปลงอินพุท (input) เพื่อสรางเอาทพุต (output)
การพัฒนาระบบซอฟตแวรที่มีประสิทธิภาพใหประสบ
มีอินเตอรเฟส (interface) เพื่อการสื่อสารระหวางระบบ
ความสําเร็จตองการ
อาจมีระบบยอย (subsystem) ระบบยอยก็เปนระบบเชนกัน และ
ระเบียบวิธีการผลิต (methodology)
อาจมีระบบยอยของตัวเองลงไปอีก
เครื่องมือ (tool)
มีการควบคุมภายในระบบ
อาศัยผลตอบกลับ (feedback) ในการทํางาน
มีคุณสมบัติองครวม (emergent properties)
OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 3 OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 4
1
- 3. ขั้นการวิเคราะห (Analysis Phase) ขั้นการออกแบบ (Design Phase)
กระบวนการในการทําความเขาใจการใชระบบ การกําหนดวาระบบจะทํางานอยางไร?
ขั้นตอน ขั้นตอน
รวบรวมขอมูล กําหนดนโยบายการสราง
กําหนดความตองการ ออกแบบสถาปตยกรรม (ฮารดแวรและซอฟตแวร)
ระบุขอมูลและกระบวนทํางานในระบบใหม
ออกแบบสวนติดตอผูใช
ผลงาน ออกแบบฐานขอมูลและแฟมขอมูล
แบบเสนอระบบ (system proposal) ออกแบบโปรแกรม
ขอกําหนดความตองการ
ผลงาน
แบบจําลองการวิเคราะห
ขอกําหนดของระบบ (system specification)
OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 9 OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 10
ขั้นการทําใหเกิดผล
ประเภทของซอฟตแวร
(Implementation Phase)
เพื่อสงมอบระบบ ซอฟตแวรเฉพาะ (custom software)
ขั้นตอน พัฒนาเพื่อตอบสนองความตองการที่เจาะจงของลูกคาผู
การสราง (construction) หนึ่ง
เขียนโปรแกรม
ทดสอบ
ซอฟตแวรทั่วไป (general software)
การติดตั้ง (installation) สรางเพื่อขายใหกับผูใชทั่วไป
การใชงาน (operation) ซอฟตแวรฝงตัว (embedded software)
การบํารุงรักษา (maintainance)
ควบคุมอุปกรณเฉพาะ
ผลงาน
ระบบ
ติดตั้งมากับอุปกรณ (hardware) เมื่อซื้อ
แผนสนับสนุน (support plan)
OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 11 OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 12
3
- 4. วิศวกรรมซอฟตแวร (Software
ประเภทของซอฟตแวร
Engineering)
ซอฟตแวรทํางานแบบทันที (real time software) วิศวกรรมซอฟตแวรเปนศาสตรที่สําคัญในการ
ทํางานตอบสนองทันที พัฒนาระบบซอฟตแวร
มักเกี่ยวกับความปลอดภัย วิศวกรรมซอฟตแวรคือกระบวนการแกปญหาของ
ลูกคาดวยการพัฒนาและวิวัฒนาการอยางเปนระบบ
ซอฟตแวรประมวลผลขอมูล (data processing ของระบบซอฟตแวรขนาดใหญ คุณภาพสูง ภายใน
software) ตนทุน เวลา และขอกําหนดอื่นๆ
ในดําเนินธุรกิจ การวิเคราะหและออกแบบเชิงวัตถุ (object-
ความแมนยําและความปลอดภัยของขอมูลเปนสิ่งสําคัญ oriented analysis and design) เปนสวนหนึ่งของ
ซอฟตแวรบางตัวมีลักษณะทั้งสองอยาง วิศวกรรมซอฟตแวรเชิงวัตถุ (object-oriented
software engineering)
OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 13 OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 14
ผูเกี่ยวของในโครงการพัฒนา คุณภาพของระบบ (Software
ระบบซอฟตแวร Quality)
1. ผูใช (user) งายตอการใชงาน (usability)
ผูใชเรียนรูไดรวดเร็ว และสามารถทํางานใหเสร็จไดงาย
บุคคลที่ใชระบบ มีประสิทธิภาพ (Efficiency)
2. ลูกคา (client/customer) ไมใชทรัพยากรเปลือง เชน เวลาซีพียู และหนวยความจํา
บุคคลที่จายคาระบบซอฟตแวร มีความนาเชื่อถือ (reliability)
ทําสิ่งที่ตองปฏิบัติไดโดยไมมีการผิดพลาด
3. นักพัฒนาระบบ (Software developers) งายตอการบํารุงรักษา (maintainability)
บุคคลที่พัฒนาและบํารุงรักษาซอฟตแวร เปลี่ยนแปลงไดงาย
ใชงานซ้ําได (reusability)
4. ผูบริหารการพัฒนา (Development Managers) สวนของซอฟตแวรสามารถนําไปใชในโครงการอื่นได ทําใหไม
ผูบริหารองคกรที่พัฒนาซอฟตแวร ตองเขียนโปรแกรมซ้ํา
ทั้งสี่บทบาทนี้อาจกระทําโดยบุคคลเดียวกัน
OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 15 OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 16
4
- 5. คุณภาพของระบบ และ คุณภาพของระบบ: ความขัดแยง
ผูเกี่ยวของ และวัตถุประสงค
ผูใช คุณภาพในแตละดานขัดแยงกันได
ลูกคา
แกปญหาในตนทุนที่ยอมรับได
เรียนรูงาย การเพิ่มประสิทธิภาพ (efficiency) อาจทําใหความงาย
มีประสิทธิภาพในการใชงาน
ในเชิงของเงินงบประมาณและ
ชวยในการทํางานใหสําเร็จ
ตอการบํารุงรักษาและความนาเชื่อถือ (reliability)
ทรัพยากรที่ใช
ลดลง
ซอฟตแวร การเพิ่มความงายในการใชงานอาจลดประสิทธิภาพ
คุณภาพ (efficiency)
การกําหนดวัตถุประสงคหลักดานคุณภาพเปน
นักพัฒนา ผูบริหารการพัฒนา
ออกแบบงาย ขายไดมากและทําใหลูกคาพอใจ กิจกรรมสําคัญ
บํารุงรักษางาย ขณะที่ตนทุนในการผลิตและ ออกแบบใหไดตามวัตถุประสงค
บํารุงรักษาต่ํา
ใชซ้ํางานงาย
หลีกเลี่ยงการกระทําเกินจําเปน
OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 17 OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 18
ประเภทของโครงการพัฒนาระบบ ประเภทของโครงการพัฒนาระบบ
ซอฟตแวร ซอฟตแวร
โครงการเชิงวิวัฒนาการ (evolutionary project) โครงการปรับโครงสรางใหม(re-engineering project) หรือ
โครงการปรับสมบูรณ (perfective project): เปลี่ยนแปลง
หรือการบํารุงรักษา (maintenance project) ภายในระบบเพื่อใหบํารุงรักษางายขึ้น
เกี่ยวกับการเปลี่ยนแปลงระบบที่มีอยู โครงการใหม (Green field project)
แบงเปนประเภทดังนี้ การพัฒนาระบบใหม
โครงการแกไข (corrective project): แกไขขอบกพรอง
โครงการปรับเปลี่ยน (Adaptive project): เปลี่ยนแปลงระบบ
เพื่อตอบสนองกับความเปลี่ยนแปลงของสภาพแวดลอม
(เทคโนโลยี หรือนโยบาย เปนตน)
โครงการขยาย (enhancement project): เพิ่มความสามารถ
ใหมเพื่อผูใช
OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 19 OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 20
5
- 6. ประเภทของโครงการพัฒนาระบบ อุปสรรคและความเสี่ยงในการ
ซอฟตแวร พัฒนาระบบซอฟตแวร
โครงการสรางซอฟตแวรจากองคประกอบสําเร็จ ความซับซอน และรายละเอียดปริมาณมาก
เกี่ยวกับการประกอบองคประกอบที่พัฒนาไวแลว ซึ่งมี ความไมแนนอนดานเทคโนโลยี
ความสามารถที่เปนประโยชนอยางสําคัญ
ความไมแนนอนดานความตองการ
เฟรมเวิรค (Framework) หรือ คอมโพเน็นต
(component) คือระบบซอฟตแวรที่ออกแบบมาเพื่อให ความไมแนนอนดานทักษะวิศวกรรมซอฟตแวร
ใชซ้ําในการพัฒนาระบบที่แตกตางกัน การเปลี่ยนแปลงตลอดเวลา
ไดรับประโยชนการจากใชซอฟตแวรที่เชื่อถือไดซ้ํา การเสื่อมของการออกแบบซอฟตแวร
แตยังคงอิสระในการสรางสรรค ความเสี่ยงเชิงการเมือง (political risks)
OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 21 OOAD 1/2551 ภาคปกติ ดร.สุขสถิต มีสถิตย 22
6