33
อาจารย์ผู้สอน อ. วิชิต นางแล ปร.ด กำาลังศึกษา (เทคโนโลยีสารสนเทศคุณภาพ) มหาวิทยาลัยราชภัฏเพชรบุรี วท.ม. (เทคโนโลยีสารสนเทศและอินเทอร์เน็ต) มหาวิทยาลัยนเรศวร วิชา ITSC2301 วิศวกรรมซอฟต์แวร์ (Software Engineering) 07/09/14 1 วิศวกรรมซอฟต์แวร์ อ.วิชิต นางแล Software Engineering T 1/2556 A. Wichit nanglae

บทนำ วิศวกรรมซอฟต์แวร์

  • Upload
    -

  • View
    705

  • Download
    4

Embed Size (px)

Citation preview

Page 1: บทนำ วิศวกรรมซอฟต์แวร์

อาจารยผ สอนอ. วชต นางแล ปร.ด กำาลงศกษา (เทคโนโลยสารสนเทศคณภาพ) มหาวทยาลยราชภฏเพชรบรวท.ม. (เทคโนโลยสารสนเทศและอนเทอรเนต)

มหาวทยาลยนเรศวร

วชา ITSC2301 วศวกรรมซอฟตแวร (Software Engineering)

07/09/14

1

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 2: บทนำ วิศวกรรมซอฟต์แวร์

แนะนำารายวชา เนอหาวชาครอบคลมพนฐานทางวทยาศาสตรสำาหรบ

วศวกรรมซอฟตแวรโดยเรยนรกระบวนการพฒนาและ วฏจกรในการพฒนาซอฟตแวร ซงมงเนนไปทการนำา

หลกการเชงวตถมาใชกบรปแบบการพฒนาซอฟตแวร รวมทงครอบคลมถงกลยทธตางๆ ทใชในการพฒนาซอฟตแวร

07/09/14

2

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 3: บทนำ วิศวกรรมซอฟต์แวร์

โปรแกรมทใชในการเรยนการสอน

07/09/14วศวกรรมซอฟตแวร อ.วชต นางแล

3

Software Engineering T 1/2556 A. Wichit nanglae

Page 4: บทนำ วิศวกรรมซอฟต์แวร์

ขอตกลงในชนเรยน เวลาเขาเรยนไมตำากวารอยละ 80

ขาดไดไมเกน 3 ครง มาสายกวาเวลาเรยนครงชวโมง 2 ครง ถอวาขาด 1

ครง สงงานทไดรบมอบหมายทงหมดครบและตรงตาม

ระยะเวลาทกำาหนด การแตงกาย ใหเปนไปตามระเบยบมหาวทยาลย

กำาหนด หากฝาฝนจะไมไดรบอนญาตใหเขาชนเรยน

07/09/14

4

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 5: บทนำ วิศวกรรมซอฟต์แวร์

ขอตกลงในชนเรยน หากนกศกษาผใดไมไดเขาสอบกลางภาค และมา

ตดตอผสอนหลงจากสปดาหท 12 ไปแลว จะไมไดรบอนญาตใหสอบกลางภาค ยกเวนกรณ ปวย,ไดรบอบตเหต มกจธระสำาคญทางราชการ โดยจะตองทำาจดหมายลาหรอมหนงสอชแจงลวงหนา ทงนขนอยกบดลยพนจของผสอน

07/09/14

5

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 6: บทนำ วิศวกรรมซอฟต์แวร์

ขอตกลงในการกำาหนดคะแนน ระหวางภาค (70%) แบงเปน

ความสนใจ (การเขาเรยน จรยธรรม และ การแตงกาย)15%

งานทไดรบมอบหมาย25%

สอบกลางภาค 30% ปลายภาค (30%)

สอบปลายภาค 30%07/09/14

6

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 7: บทนำ วิศวกรรมซอฟต์แวร์

ระดบการประเมนผล (องเกณฑ) 80-100 A 75-79 B+ 70-74 B 65-69 C+ 60-64 C 55-59 D+ 50-54 D 0-49 E

07/09/14

7

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 8: บทนำ วิศวกรรมซอฟต์แวร์

เรยนอะไรในวชา บทนำา - ว ศวกรรมซอฟตแวร (Introduction to Software

Engineering) ภาพรวมของกระบวนการ (A Generic View of Process) แบบจำาลองกระบวนการพฒนาระบบ (Process Model) การประมาณการซอฟตแวร (Software Estimation) ว ศวกรรมความตองการ (Requirement Engineering) การสร างแบบจำาลองการว เคราะห (Analysis Model) การว เคราะห เช งว ตถ (Object Oriented Analysis) ว ศวกรรมการออกแบบ (Design Engineering) การออกแบบสวนตอประสานผใช (User Interface Design) การทดสอบซอฟตแวร (Testing)

สอบกลางภาค

สอบปลายภาค

07/09/14

8

วศวกรรมซอฟตแวร อ.วชต นางแล

Page 9: บทนำ วิศวกรรมซอฟต์แวร์

หนงสอทใชในการทบทวน วศวกรรมซอฟตแวร (Software

Engineering) Roger S. Pressman แปลโดย

ผศ.ดร. พรฤด เนตโสภากล การวางแผนโครงการพฒนาซอฟตแวร

(Software Project Planning) เมสน นาคมณ 07/09/14

9

วศวกรรมซอฟตแวร อ.วชต นางแล

Page 10: บทนำ วิศวกรรมซอฟต์แวร์

Introduction วศวกรรมซอฟตแวร (Software Engineering)

มมมองทางการศกษาในแงของสาขาวชา ในป ค.ศ. 1968 คำาวา”วศวกรรมซอฟตแวร(software

engineering)” ถกใชอยางแพรหลายเพอแสดงถงกจกรรม ตางๆทรวมถงการเขยนโปรแกรม (programming) และการ

รหส(coding) [Macro, 1987]. กอนป ค.ศ. 1974 สาขา วชาวศวกรรมซอฟตแวรยงไมปรากฏ [Barnes, 1998].

สถาบนเทคโนโลยโรเชสเตอร (The Rochester Institute of Technology (RIT)) ในประเทศสหรฐอเมรกาไดอางวาเปนสถาบนแรกทแนะนำาหลกสตรปรญญาตรสาขาวศวกรรม

ซอฟตแวร [Lutz, 1999].

07/09/14

10

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 11: บทนำ วิศวกรรมซอฟต์แวร์

ว ศวกรรมซอฟตแวร (Software Engineering) วศวกรรมซอฟตแวร คอกระบวนการสรางสรรค

โปรแกรมโดยใชหลกทางวศวกรรมเขามาชวยในการ ดำาเนนการสราง (อ. สมหมาย สขคำา)

“Software Engineering is systematic approach to the development operation , maintenance , retirement of software” (IEEE 83b)

“ วชาการวาดวยการออกแบบโปรแกรมคอมพวเตอร ตลอดจนการบรหารงานการพฒนาเพอทจะไดมาซง

ผลตผลซอฟตแวรทมคณภาพสง ราคาถก และภายในเวลาทกำาหนดให” (สชาย ธนวเสถยร)

07/09/14

11

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 12: บทนำ วิศวกรรมซอฟต์แวร์

ว ทยาการคอมพวเตอร และว ศวกรรมซอฟตแวร วทยาการคอมพวเตอร (Computer Science)

อยบนรากฐานของวทยาศาสตร ซงเนนการทำาความเขาใจและคนหาความจรงเกยวกบความรทาง

คอมพวเตอร เพอสรางแนวคด/ ทฤษฎใหม หรอปฏเสธแนวคด/ ทฤษฎเดม และขยายวงความรใหกวางขนจากแนวคด/ทฤษฎทมอย

* ผลงานถกพจารณา หรอ ตดสนโดยกลมนกวทยาศาสตร

07/09/14

12

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 13: บทนำ วิศวกรรมซอฟต์แวร์

ว ทยาการคอมพวเตอร และว ศวกรรมซอฟตแวร วศวกรรมซอฟตแวร (Software Engineering)

อยบนรากฐานของวธการทางวศวกรรมศาสตร ซงประยกตแนวคด/ ทฤษฎทางวทยาศาสตรคณตศาสตรและเทคโนโลยขณะนนในการสรางผลตภณฑทเปนประโยชนและปลอดภยตอสาธารณะ

* ผลงานถกพจารณา หรอ ตดสนโดยกลมผใช 07/09/14

13

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 14: บทนำ วิศวกรรมซอฟต์แวร์

ลกษณะของว ศวกรรมซอฟตแวร เกยวของกบการสรางโปรแกรมขนาดใหญ สามารถจดการเกยวกบความซำาซอนได เนนการทำางานรวมกนของบคลากร สามารถเปลยนแปลงไดงายเมอจำาเปน เนนการพฒนาใหมประสทธภาพ สนองความตองการของผใช

07/09/14

14

วศวกรรมซอฟตแวร อ.วชต นางแล

Page 15: บทนำ วิศวกรรมซอฟต์แวร์

องคประกอบของการว ศวกรรมซอฟตแวร การวศวกรรมซอฟตแวรเปนกระบวนการผลต

(production) ทประกอบดวยกจกรรมชวงตางๆ เพอสรางผลตภณฑซอฟตแวร (software

products) การทำากจกรรมในแตละชวงอาศย เทคนคและเครองมอชวยตางๆ (support tools) ท

นกวชาการคอมพวเตอรและนกวจยไดเสนอไว

07/09/14

15

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 16: บทนำ วิศวกรรมซอฟต์แวร์

องคประกอบของการว ศวกรรมซอฟตแวร

Software production processes

Software products

Support tools

/Environments

Market places /

users

07/09/14

16

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 17: บทนำ วิศวกรรมซอฟต์แวร์

คณลกษณะของกระบวนการว ศวกรรมซอฟตแวร Understandability : มการนยามขอบเขตของ

กระบวนการทชดแจงและงายตอการเขาใจ Visibility : ทำาใหกจกรรมกระบวนการชดเจนทสด

เพอสามารถมองเหนจากภายนอกไดชดเจน Supportability : เครองมอชวยการวศวกรรม

ซอฟตแวร (CASE)สามารถชวยสนบสนนกจกรรมกระบวนการในขอบเขตใด

07/09/14

17

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 18: บทนำ วิศวกรรมซอฟต์แวร์

คณลกษณะของกระบวนการว ศวกรรมซอฟตแวร Acceptability : กระบวนการทกำาหนดสามารถ

ยอมรบและใชโดยวศวกรซอฟตแวรในการผลตผลตภณฑซอฟตแวร

Reliability : กระบวนการถกออกแบบในแนวทางซงความผดพลาดของกระบวนการถกหลกเลยงกอนทจะสงผลตอความผดพลาดของผลตภณฑซอฟตแวร

Robustness : กระบวนการสามารถทำางานตอไดแมนวามปญหาทไมคาดการณเกดขน07/09/14

18

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 19: บทนำ วิศวกรรมซอฟต์แวร์

คณลกษณะของกระบวนการว ศวกรรมซอฟตแวร Maintainability : กระบวนการสามารถ

ววฒนาการเพอตอบสนองการเปลยนแปลงความตองการขององคกร

Rapidity : กระบวนการสามารถทำาใหสงมอบผลตภณฑไดเรวนบจากทรปแบบคณลกษณะของซอฟตแวร(Software specifications) ถกกำาหนด

07/09/14

19

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 20: บทนำ วิศวกรรมซอฟต์แวร์

Introduction ซอฟตแวร (software) หมายถงชดคำาสงหรอ

โปรแกรมทใชสงงานใหคอมพวเตอรทำางานซอฟตแวรจงหมายถงลำาดบขนตอนการทำางานท

เขยนขนดวยคำาสงของคอมพวเตอร คำาสงเหลาน เรยงกนเปนโปรแกรมคอมพวเตอร

ซอฟตแวร หมายรวมถงโปรแกรมคอมพวเตอรทกประเภทททำาใหคอมพวเตอรทำางานได

07/09/14

20

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 21: บทนำ วิศวกรรมซอฟต์แวร์

Introduction คณสมบตของซอฟตแวร

ซอฟตแวรถกพฒนาหรอจดการใหเกดขน ซอฟตแวรไมสกหรอ ถกสรางตามแบบทลกคาตองการ (Custom build)

07/09/14

21

วศวกรรมซอฟตแวร อ.วชต นางแล

Page 22: บทนำ วิศวกรรมซอฟต์แวร์

การเสอมสภาพของฮารดแวร ความผดพลาด

เวลา07/09/14

22

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 23: บทนำ วิศวกรรมซอฟต์แวร์

การเสอมสภาพของซอฟตแวร (อดมคต)

ความผดพลาด

เวลา07/09/14

23

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 24: บทนำ วิศวกรรมซอฟต์แวร์

การเสอมสภาพของซอฟตแวรความผดพลาด

เวลา07/09/14

24

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 25: บทนำ วิศวกรรมซอฟต์แวร์

ซอฟตแวร (software) ชนดของซอฟตแวร

หากแบงแยกชนดของซอฟตแวรตามสภาพการ ทำางาน แบงแยกซอฟตแวรไดเปน 2 ประเภท

คอ ซอฟตแวรระบบ (system software) ซอฟตแวรประยกต (application software)

07/09/14

25

วศวกรรมซอฟตแวร อ.วชต นางแล

Page 26: บทนำ วิศวกรรมซอฟต์แวร์

ซอฟตแวร (software) ซอฟตแวร ระบบ คอ ซอฟตแวรทบรษทผผลตสราง

ขนมาเพอใชจดการกบระบบ หนาทการทำางานของ ซอฟตแวรระบบคอดำาเนนงานพนฐานตาง ๆ ของ

ระบบคอมพวเตอร เชน รบขอมลจากแผงแปน อกขระแลวแปลความหมายใหคอมพวเตอรเขาใจ

นำาขอมลไปแสดงผลบนจอภาพหรอนำาออกไปยง เครองพมพ จดการขอมลในระบบแฟมขอมลบน

หนวยความจำารอง 07/09/14

26

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 27: บทนำ วิศวกรรมซอฟต์แวร์

ซอฟตแวร (software) ซอฟตแวร ประย กต เปนซอฟตแวรทใชกบงาน

ดานตาง ๆ ตามความตองการของผใช ทสามารถนำา มาใชประโยชนไดโดยตรง ปจจบนมผพฒนา

ซอฟตแวรใชงานทางดานตาง ๆ ออกจำาหนายมากการประยกตงานคอมพวเตอรจงกวางขวางและแพร

หลาย เราอาจแบงซอฟตแวรประยกตออกเปนสอง กลมคอ ซอฟตแวรสำาเรจ และซอฟตแวรทพฒนาขน

ใชงานเฉพาะ 07/09/14

27

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 28: บทนำ วิศวกรรมซอฟต์แวร์

ซอฟตแวร (software)

07/09/14

28

วศวกรรมซอฟตแวร อ.วชต นางแล

Page 29: บทนำ วิศวกรรมซอฟต์แวร์

ซอฟตแวร (software) ชนดของซอฟตแวร

ในปจจบน สามารถแบงลกษณะของซอฟตแวรออก เปน 7 ประเภท ดงน

1. ซอฟตแวรระบบ (System Software)

2. ซอฟตแวรประยกต (Application Software)

3. ซอฟตแวรเชงวศวกรรม/ วทยาศาสตร(Engineering/Scientific Software)

4. ซอฟตแวรฝงตว (Embedded Software)07/09/14

29

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 30: บทนำ วิศวกรรมซอฟต์แวร์

ซอฟตแวร (software)

5. ซอฟตแวรสายการผลต (Product-line Software)

6. เวบแอพพลเคชน (Web-application)

7. ซอฟตแวรปญญาประดษฐ (Artificial Intelligence Softwear)

07/09/14

30

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 31: บทนำ วิศวกรรมซอฟต์แวร์

ว ว ฒนาการของซอฟตแวร (Software Evolution) กฎแหงการเปลยนแปลงอยางตอเนอง (Law of

Continuing Change) กฎแหงความซบซอนทเพมขน (Law of

Increasing Complexity) กฎแหงการวางระเบยบตวเอง (Law of Self-

regulation) กฎแหงอนรกษสภาพเสถยรการจดระเบยบ (Law of

Conservation of Organizational Stability) กฎการคงไวซงความคนเคย (Law of

Conservation of Familiarity)

07/09/14

31

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 32: บทนำ วิศวกรรมซอฟต์แวร์

ว ว ฒนาการของซอฟตแวร (Software Evolution) กฎแหงการเตบโตอยางตอเนอง (Law of

Continuing Growth) กฎแหงการลดลงซงคณภาพ (Law of Declining

Quality) กฎระบบยอนกลบ (Feedback System Law)

07/09/14

32

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae

Page 33: บทนำ วิศวกรรมซอฟต์แวร์

THE END

จะนำา PowerPoint ประกอบการเรยนขนเวบภายในวนอาทตย

07/09/14

33

วศวกรรมซอฟตแวร อ.วชต นางแล

Software Engineering T 1/2556 A. Wichit nanglae