วันพฤหัสบดีที่ 25 สิงหาคม พ.ศ. 2559

การเขียนผังงานเบื้องต้น Basic Flowcharting

การเขียนผังงาน (Flowchart)


การเขียนผังงาน (Flowchart)
หลังจากทำความเข้าใจและวิเคราะห์ปัญหาโจทย์จนได้ข้อสรปุว่าโจทย์ต้องการอะไรแล้ว ผู้เขียนโปรแกรมก็จะทำการกำหนดแผนในการแก้ไขปัญหาโดยการเขียนผังงาน (Flowchart) ซึ่งการเขียนผังงานคือการเขียนแผนภาพที่เป็นลำดับ เพื่อแสดงขั้นตอนการทำงานของโปรแกรมเพื่อให้ง่ายต่อการทำความเข้าใจ การเขียนผังงานมี 3 แบบคือ แบบเรียงลำดับ(Sequential) แบบมีการกำหนดเงื่อนไข(Condition) และแบบมีการทำงานวนรอบ(Looping)
56
7
8
9
10
11
12
13
14
15
1617181920
ผังงานกับชีวิตประจำวัน 
การทำงานหลายอย่างในชีวิตประจำวัน จะมีลักษณะที่เป็นลำดับขั้นตอน ซึ่งก่อนที่ท่านจะได้ศึกษาวิธีการเขียนผังงานโปรแกรม จะแนะนำให้ท่านลองฝึกเขียนผังงานที่แสดงการทำงานในชีวิตประจำวันวันก่อนเพื่อเป็นการสร้างความคุ้นเคยกับสัญลักษณ์รูปภาพต่าง ๆ ที่จะมีใช้ในผังงานโปรแกรมต่อไป ดังตัวอย่าง
21

โครงสร้างการทำงานแบบมีการเลือก ( Selection ) 
เป็นโครงสร้างที่ใช้การตรวจสอบเงื่อนไขเพื่อการทำงานอย่างใดอย่างหนึ่ง โดยโครงสร้างแบบนี้จะมีอยู่ด้วยกัน 2 รูปแบบ คือ IF – THEN – ELSE และ IF – THEN
2223
                       โครงสร้างแบบ IF – THEN – ELSE   เป็นโครงสร้างที่จะทำการเปรียบเทียบเงื่อนไขที่ใส่ไว้ในส่วนหลังคำว่า IF และเมื่อได้ผลลัพธ์จากการเปรียบเทียบก็จะเลือกว่าจะทำงานต่อในส่วนใด กล่าวคือถ้าเงื่อนไขเป็นจริง ( TRUE ) ก็จะเลือกไปทำงานต่อที่ส่วนที่อยู่หลัง THEN แต่ถ้าเงื่อนไขเป็นเท็จ ( FALSE ) ก็จะไปทำงานต่อในส่วนที่อยู่หลังคำว่า ELSE แต่ถ้าสำหรับโครงสร้างแบบ IF – THEN เป็นโครงสร้างที่ไม่มีการใช้ ELSE ดังนั้น ถ้ามีการเปรียบเทียบเงื่อนไขที่อยู่หลัง IF มีค่าเป็นจริง ก็จะไปทำส่วนที่อยู่หลัง Then แต่ถ้าเงื่อนไขเป็นเท็จ ก็จะไปทำคำสั่งที่อยู่ถัดจาก IF – THEN แทน
ตัวอย่าง
การเขียนผังงานอ่านค่าข้อมูลเข้ามาเก็บไว้ในตัวแปร A และ B แล้วทำการเปรียบเทียบในตัวแปรทั้งสอง โดยมีเงื่อนไขดังนี้ ถ้า A มากกว่า B ให้คำนวณหาค่า A – B และเก็บผลลัพธ์ไว้ในตัวแปรชื่อ RESULT ถ้า A น้อยกว่าหรือเท่ากับ B ให้คำนวณหาค่า A + B และเก็บผลลัพธ์ไว้ในตัวแปรชื่อ RESULT
24
ตัวอย่าง
การเขียนผังงานเปรียบเทียบค่าข้อมูลที่เก็บอยู่ในตัวแปร X โดยมีเงื่อนไขดังนี้
ถ้า X > 0 ให้พิมพ์คำว่า ” POSITIVE NUMBER ”
ถ้า X < 0 ให้พิมพ์คำว่า ” NEGATIVE NUMBER ”
ถ้า X = 0 ให้พิมพ์คำว่า ” ZERO NUMBER ”
25
โครงสร้างการทำงานแบบมีการทำงานซ้ำ 
เป็นโครงสร้างที่มีการประมวลผลกลุ่มคำสั่งซ้ำหลายครั้ง ตามลักษณะเงื่อนไขที่กำหนด อาจเรียก การทำงานซ้ำแบบนี้ได้อีกแบบว่า การวนลูป ( Looping ) โครงสร้างแบบการทำงานซ้ำนี้จะมีอยู่ 2 ประเภท คือ
*DO WHILE
*DO UNTIL
          *DO WHILE 
เป็นโครงสร้างที่มีการทดสอบเงื่อนไขก่อน ถ้าเงื่อนไขเป็นจริงก็จะเข้ามาทำงานในกลุ่มคำสั่งที่ต้องทำซ้ำ ซึ่งเรียกว่าการเข้าลูป หลังจากนั้นก็จะย้อนกลับไปตรวจสอบเงื่อนไขใหม่อีก ถ้าเงื่อนไขยังคงเป็นจริงอยู่ ก็ยังคงต้องทำกลุ่มคำสั่งซ้ำหรือเข้าลูปต่อไปอีก จนกระทั่งเงื่อนไขเป็นเท็จ ก็จะออกจากลูปไปทำคำสั่งถัดไปที่อยู่ถัดจาก DO WHILE หรืออาจเป็นการจบการทำงาน
26
              *DO UNTIL
เป็นโครงสร้างการทำงานแบบทำงานซ้ำเช่นกัน แต่มีการทำงานที่แตกต่างจาก DO WHILE คือจะมีการเข้าทำงานกลุ่มคำสั่งที่อยู่ภายในลูปก่อนอย่างน้อย 1 ครั้ง แล้วจึงจะไปทดสอบเงื่อนไข ถ้าเงื่อนไขเป็นเท็จก็จะมีการเข้าทำกลุ่มคำสั่งที่ต้องทำซ้ำอีก หลังจากนั้นก็จะย้อนกลับไปตรวจสอบเงื่อนไขใหม่อีก ถ้าเงื่อนไขยังคงเป็นเท็จอยู่ ก็ยังต้องทำกลุ่มคำสั่งซ้ำหรือเข้าลูปต่อไปอีก จนกระทั่งเงื่อนไขเป็นจริง จึงจะออกจากลูปไปทำคำสั่งถัดจาก UNTIL หรืออาจเป็นการจบการทำงาน
27
สรุปข้อแตกต่างระหว่าง DO WHILE และ DO UNTIL มีดังนี้
1. DO WHILE ในการทำงานครั้งแรกจะต้องมีการตรวจสอบเงื่อนไขก่อนทุกครั้ง ก่อนที่จะมีการเข้ลูปการทำงาน
2. DO UNTIL การทำงานครั้งแรกจะยังไม่มีการตรวจสอบเงื่อนไข แต่จะเข้าไปทำงานในลูปก่อนอย่างน้อย 1 ครั้งแล้วจึงจะไปตรวจสอบเงื่อนไข
3. DO WHILE จะมีการเข้าไปทำงานในลูปก็ต่อเมื่อตรวจสอบเงื่อนไขแล้วพบว่า เงื่อนไขเป็นจริง แต่เมื่อพบว่าเงื่อนไขเป็นเท็จ ก็จะออกจากลูปทันที
4. DO UNTIL จะมีการเข้าไปทำงานในลูปก็ต่อเมื่อตรวจสอบเงื่อนไขแล้วพบว่า เงื่อนไขเป็นเท็จ แต่เมื่อพบว่าเงื่อนไขเป็นจริง ก็จะออกจากลูปทันที
ตัวอย่าง
จงเขียนผังงานแสดงการเพิ่มของข้อมูลตัวเลขที่เก็บอยู่ในหน่วยความจำที่แอดเดรส 1 โดยที่ค่าเริ่มต้นจาก 0 ให้ทำการเพิ่มค่าทีละ 1 เรื่อยไปจนกระทั่ง J มีค่าข้อมูลมากกว่า 100 จึงหยุดการทำงาน ตัวอย่างนี้ เป็นตัวอย่างการทำงานแบบทำซ้ำ ซึ่งจะสามารถแสดงการเขียนได้ทั้งแบบ DO WHILE และ DO UNTIL ดังนี้
28
ตัวอย่างการเขียน Flowchart
เราต้องการเขียน Flowchart เพื่อคำนวณภาษีที่พนักงานต้องชำระ อัตราภาษี 10% Flowchart ดังกล่าวกำหนดให้ผู้ใช้ป้อนค่าเงินเดือน (salary) แล้วเครื่องจะทำการคำนวณ ภาษี (tax) 10% ให้โดยอัตโนมัติ และจะพิมพ์ค่า salary กับ taxOutput ที่เราต้องการก็คือ salary และ tax (การสั่งพิมพ์ขึ้นอยู่ที่เราว่าเราต้องการให้พิมพ์อะไร ไม่จำเป็นต้องพิมพ์ salary, tax ตามตัวอย่างก็ได้ เราอาจสั่งพิมพ์ tax อย่างเดียวก็ได้ Input คือสิ่งที่ผู้ใช้ต้องป้อนให้ระบบ จากตัวอย่างก็คือ salary เพราะหากผู้ใช้ไม่ป้อน salary ระบบจะคำนวณ tax ไม่ได้ ส่วนอัตราภาษี 10% ผู้ใช้ไม่ต้องป้อนเพราะมีการกำหนด มาอยู่แล้วว่าภาษีคือ 10% ระบบไม่จำเป็นต้องถามผู้ใช้ เพราะฉะนั้นอัตราภาษี 10% จึงไม่ใช่ input หากจะสรุปง่ายๆ input ก็คือสิ่งที่เราต้องถามผู้ใช้ ส่วนอัตราภาษีคือ ค่าคงที่ ซึ่งเราจะกำหนดไว้ในโปรแกรมเลย โดยผู้ใช้ไม่ต้องป้อน
29
หากเราต้องการเขียน Flowchart ให้บวกเลข 1 ถึง 10 จะพบว่า Flowchart ดังกล่าวไม่มี input เลยเพราะ flow ดังกล่าวไม่จำเป็นต้องถามผู้ใช้ ดังรูป แต่หากเราต้องการเขียน Flowchart ให้บวกเลขจำนวนที่หนึ่ง ถึง เลขจำนวนที่สอง เราจะพบว่าผู้ใช้จำเป็นต้องบอกเราว่า จำนวนที่หนึ่ง คือเลขอะไร และ จำนวนที่สอง คือเลขอะไร เพราะฉะนั้น input คือ first (เลขจำนวนที่หนึ่ง) และ last (เลขจำนวนที่สอง) ดังรูป
30
Iteration (การทำซ้ำ) Flowchart หากเราต้องการให้คำนวณคนที่สอง สาม สี่ … เราจะต้องสั่งให้กลับมาทำงานดังรูป
31ให้สังเกตว่า flowchart ดังกล่าวไม่มีทางออกจาก loop ได้เลย นั่นหมายถึงหลังจากคำนวณภาษีเสร็จเครื่องจะรอรับค่า salary คนต่อไปไม่มีวันสิ้นสุด
คำถามที่เกิดขึ้นก็คือ เมื่อไหร่ที่เราต้องการออกจาก loop คำตอบก็คือ เมื่อคำนวณภาษีให้พนักงานทุกคนครบแล้ว วิธีการที่เราจะบอกระบบว่าพนักงานหมดแล้วเราสามารถบอกได้โดย “ถ้าเรา input ค่า salary เป็น 0 หมายถึงพนักงานหมดแล้ว นั่นคือให้ออกจาก loop” (ที่ใช้เป็น 0 เพราะไม่มีพนักงานคนใดที่มีเงินเดือนเท่ากับ 0 บาท) ซึ่งเราเรียกค่าดังกล่าวว่าค่า dummy ดังได้กล่าวไว้ต้นแล้วว่าการเลือกใช้ loop มีให้เลือกใช้สองชนิดคือ DO WHILE และ DO UNTIL ซึ่ง DO WHILE จะทำการเช็คเพื่อออกจาก loop ที่ต้น loop ในขณะที่ DO UNTIL เช็คปลาย loop
32สังเกตว่า การเช็ค ณ ต้น loop คือ การเช็คก่อนมี process ใดๆทั้งสิ้น (DO WHILE) ในขณะที่การเช็ค ณ ปลาย loop คือให้มี process ทุกอย่างก่อนแล้วค่อยเช็ค (DO UNTIL) โดยปกติแล้วเราจะใช้ DO WHILE หรือ DO UNTIL ก็ได้ (แต่มีบางกรณีที่จำเป็นต้องใช้ DO WHILE หรือ DO UNTIL) จาก flowchart รูปที่ 11 หากเราใช้ DO UNTIL จะได้ flowchart ดังรูป
33             จะเห็นว่าเงื่อนไขออกจาก loop จะต้องเป็นจริง และการเช็คออกจาก loop จะอยู่ ณ ตำแหน่งสุดท้ายของ loop นอกจากนี้การที่ต้องมี input salary เพิ่มขึ้นมาอีกหนึ่ง process และไว้อยู่หน้าการเช็คเพื่อออกจาก loop เพราะว่า เมื่อ ผู้ใช้ใส่ค่า 0 มา ระบบจะทำการออกจาก loop ทันที เพราะหากไว้ตำแหน่งอื่นระบบอาจจะมีการ print หรือคำนวณ tax ซึ่งเราไม่ต้องการให้ทำ
Flowchart แสดงการใช้ DO WHILE loop ให้สังเกตุว่า การเช็คเพื่อที่จะออกจาก loop อยู่ต้น loop และเงื่อนไขเพื่อที่จะออกจาก loop จะเป็นเท็จ (เพราะฉนั้น เงื่อนไขจึงต้องเป็น salary > 0)
34
ใน Flowchart จะมีการ input Salary อยู่สองตำแหน่งคือบนสุด และใน loop ณ ตำแหน่งล่างสุด input Salary ซึ่งอยู่บนสุดมีไว้เพื่อ input ค่า salary คนแรก เท่านั้น สำหรับค่า salary คนต่อๆมา จะถูก input จาก input salary ที่อยู่ใน loop สาเหตุที่เราไม่สามารถเขียน flowchart ให้วนกลับไป input salary คนต่อๆมาดังรูปที่ 14 แม้ว่าจะสามารถทำงานได้ถูกต้อง เนื่องจากจะผิดกฏ DO WHILE ซึ่งกำหนดไว้ว่า การเช็คเพื่อออกจาก loop จะต้องอยู่ต้น loop
353637 38 39 40 41 42 43

Systems Analysis and Design (การวิเคราะห์และออกแบบระบบ)

Systems Analysis and Design

(การวิเคราะห์และออกแบบระบบ)
ความรู้เบื้องต้นในการวิเคราะห์และการออกแบบระบบ
- ระบบสารสนเทศ (Information System) คืออะไร
- ประเภทของระบบสารสนเทศ
- ระดับการจัดการ (Management Level)
- การวิเคราะห์และการออกแบบระบบคืออะไร
- นักวิเคราะห์ระบบทำอะไรบ้าง
- ใครคือผู้ใช้ระบบ (User)
- กลยุทธ์ในการพัฒนาระบบสารสนเทศ
- Systems Development Life Cycle (SDLC)

ความหมายของระบบ
ระบบ = มีลักษณะกลุ่ม (Set) ที่มีองค์ประกอบ (Component) หลาย ๆ ส่วนรวมกันโดยแต่ละองค์ประกอบจะทำงานร่วมกันเพื่อจุดประสงค์อันเดียวกัน
ตัวอย่างเช่น ระบบคอมพิวเตอร์ 
ระบบการเรียนการสอน
  ระบบคอมพิวเตอร์ (HW + SW + PW) = ผลลัพธ์ที่ตรงตามความต้องการ
  ระบบการเรียนการสอน (ครู + นักเรียน + เนื้อหา + วิธีการสอน) = นักเรียนที่มีความรู้
ประเภทของระบบ
1.ระบบปิด (Closed System) เป็นระบบที่ไม่มีปฏิสัมพันธ์กับสิ่งแวดล้อม มีจุดมุ่งหมายในการทำงานภายในตัวเอง โดยไม่ยุ่งเกี่ยวหรือรับข้อมูลจากสิ่งแวดล้อมใด ๆ เข้ามา  ตัวอย่างเช่น สัญญาณจราจรแบบปิด
2.ระบบเปิด (Open System) เป็นระบบที่มีปฏิสัมพันธ์กับสิ่งแวดล้อมด้วยการแลกเปลี่ยน หรือรับข่าวสารจากสภาพแวดล้อมเข้ามาในระบบเพื่อทำการประมวลผลร่วม ตัวอย่างเช่น สัญญาณไฟจราจรแบบเปิด ที่มีตัวเซ็นเซอร์ตรวจจับความหนาแน่นของรถในแต่ละแยก
ระบบเปิด Open System
เป็นระบบที่มีปฏิสัมพันธ์กับสิ่งแวดล้อม ให้สภาพแวดล้อมภายนอกมาเป็นตัวแปรกำหนดการทำงาน
เกิดการแลกเปลี่ยนซึ่งกันและกันกับสภาพแวดล้อม
ตัวอย่างเช่น สัญญาณไฟจราจร  ตัวอย่างไฟฟ้าฉุกเฉินที่จ่ายไฟอัตโนมัติ
ระบบธุรกิจ
ระบบธุรกิจ (Business System) : ส่วนใหญ่ประกอบด้วยระบบย่อยพื้นฐาน เช่น ระบบการผลิต ระบบการตลาด ระบบสินค้าคงคลัง ซึ่งมีความสัมพันธ์กันทั้งกิจกรรมที่เกี่ยวข้องและการแลกเปลี่ยนสารสนเทศ ดังนั้นเมื่อมีการศึกษาระบบงาน ควรพิจารณาจากมุมมอง 4 ด้าน คือ
What : วัตถุประสงค์ของระบบคืออะไร
How : วิธีการทำงานอย่างไรเพื่อให้งานสำเร็จ
When : การเริ่มดำเนินงานและผลสำเร็จจุลุล่วงเมื่อไร
Who : บุคคลหรือคณะใดที่ผู้รับผิดชอบในขอบเขตงานของตน
องค์การและระบบสารสนเทศ
องค์การ (Organization) เป็นโครงสร้างของสังคมที่มีการนำทรัพยากร จากสภาพแวดล้อมมาผ่านกระบวนการผลิตเพื่อให้ได้ผลผลิต ออกมา โดยเป้าหมายองค์การทางธุรกิจ คือผลกำไรจากการดำเนินงานทางธุรกิจ ซึ่งมีรูปแบบของผลตอบแทน                                         1. ผลตอบแทนที่สามารถประเมินค่าได้ (Tangible) เช่น การเพิ่มยอดขายารลดค่าใช้จ่าย การประหยัดพลังงาน การเพิ่มช่องทางการตลาด
     2. ผลตอบแทนที่ไม่สามารถประเมินค่าได้  (Intangible)  เช่น ทัศนคติของลูกค้า ผลิตภัณฑ์ที่มีคุณภาพสูงขึ้น ขวัญและกำลังใจของพนักงาน เพิ่มประสิทธิภาพและประสิทธิผล ความน่าเชื่อถือ  การนำเสนอสารสนเทศตรงเวลา
ข้อมูลและสารสนเทศ (Data and Information)
ข้อมูล  คือ ข้อมูลดิบ (Raw Data) หรือข้อเท็จจริงที่เกิดขึ้น  ซึ่งยังไม่ก่อให้เกิดประโยชน์
สารสนเทศ คือ การนำข้อมูลดิบมาผ่านกระบวนการ (Process) เพื่อให้เกิดผลลัพธ์ หรือสารสนเทศที่มีประโยชน์ต่อการตัดสินใจ
ประเภทของระบบสารสนเทศ (แบ่งตามผู้ใช้)
1. Transaction Processing System (TPS)
2. Management Information System (MIS)
3. Office Automation System/Office Information System(OAS/OIS)
4. Decision Support System (DSS)
5. Executive Support System (ESS)
6. Expert System (ES)
ระบบประมวลผลรายการประจำวัน
        —เป็นการประมวลผบข้อมูลทางธุรกิจประจำวันที่เกี่ยวข้องกับการดำเนินงานประจำวัน  เช่น การบันทึกรายการสั่งซื้อสินค้าจากลูกค้า จัดเป็นการปฏิบัติงานที่กระทำซ้ำ ๆ ในแต่ละวัน และข้อมูลเหล่านี้จะถูกรวบรวมเพื่อนำไปจัดทำรายงานตามความต้องการต่อไป ในบางครั้งอาจเรียกว่า ระบบปฏิบัติงาน (Operational Systems)
Management Information systems : MIS
ระบบสารสนเทศเพื่อการจัดการ (MIS) เป็นแหล่งรวมของระบบ TPS  และเมื่อมีการทำรายงานสรุปยอดประจำสัปดาห์ หรือประจำเดือน โดย MIS
ตัวอย่าง ธนาคารจะดูรายงานเกี่ยวกับการฝาก ถอนเงินรวมในแต่ละเดือนของลูกค้า เพื่อเตรียมเงินสำรองไว้ให้สินเชื่อแก่ลูกค้า 
Office Automation System  : OAS
Office Information System  : OIS
        เป็นระบบที่เพื่อประสิทธิภาพในการทำงานด้านการจัดการสำนักงานและการสื่อสาร โดยมีผลิตภัณฑ์ Software ที่สนับสนุนงานในลักษณะนี้ ประกอบด้วย
  ¿ โปรแกรมประมวลผลคำ
  ¿ โปรแกรมตารางงาน
  ¿ โปรแกรมฐานข้อมูล
  ¿ โปรแกรมนำเสนอผลงาน
  ¿ โปรแกรมออกแบบกราฟิก
  ¿ จดหมายอิเล็กทรอนิกส์  ฯลฯ
Decision Support Systems : DSS
—           จัดทำขึ้นเพื่อสนองความต้องการของผู้บริหาร ด้วยการจัดทำรายงานวิเคราะห์ผลทางสถิติ หรือในรูปของกราฟเปรียบเทียบ เพื่อนำไปประกอบเป็นทางเลือกในการตัดสินใจของผู้บริหารหาทางเลือกที่เหมาะสมที่สุด นอกจากจะนำสารสนเทศภายในระบบ TPS และ MIS มาใช้งานแล้ว อาจจะนำสารสนเทศจากภายนอกระบบมาใช้งานร่วมด้วย   เช่น ข้อมูลจากตลาดหุ้น หรือราคาของคู่แข่งขันมาประกอบ  ในการพิจารณา
Executive Support System : ESS
  •    —ระบบสนับสนุนการตัดสินใจ DSS มักใช้กับงานด้านการพยากรณ์และการทำนายเป็นส่วนใหญ่ จะใช้ประกอบการตัดสินใจของผู้บริหารระดับกลาง 
  • ระบบสนับสนุนการตัดสินใจของผู้บริหาร ESS จะคล้ายกับ DSS แต่จะต่างกันที่ ESS จะเป็นการตัดสินใจในระดับกลยุทธ์และนโยบายของผู้บริหารระดับสูง
Expert Systems : ES
         —เป็นการรวบรวมความรู้ความเชี่ยวชาญเฉพาะด้านในสาขาต่าง ๆ เข้าด้วยกัน หรืออาจเรียกว่า ระบบฐานความรู้ (Knowledge Base) เป็นระบบที่สนับสนุนการทำงานเฉพาะด้าน เช่น นักวิทยาศาสตร์ วิศวกร หมอ เป็นต้น  นอกจากนี้ ES ยังเป็นแขนงหนึ่งของระบบปัญญาประดิษฐ์ (Artificial Intelligence : AI)  ซึ่งเป็นระบบที่ใช้คอมพิวเตอร์ในระดับสูงขึ้นโดยมีระบบสมองกลเป็นผู้โปรแกรมคำสั่งโดยตรง
การวิเคราะห์ (System Analysis)
           การวิเคราะห์ระบบ เป็นการศึกษาถึงปัญหาที่เกิดขึ้นในระบบงานปัจจุบัน (Current System) เพื่อออกแบบระบบใหม่ (New System) เป้าหมายยังรวมถึงการปรับปรุงและแก้ไขระบบงานเดิมให้ดีขึ้น ในการวิเคราะห์ระบบเพื่อพัฒนาระบบใหม่ทดแทนระบบงานเดิมจะประกอบด้วยเหตุผลดังนี้
    h ปรับปรุงบริการแก่ลูกค้า
    h เพิ่มประสิทธิภาพการทำงาน
    h เพิ่มกระบวนการควบคุมการทำงาน
    h ลดต้นทุนการดำเนินงาน
    h ต้องการสารสนเทศมากขึ้น
การวิเคราะห์ (System Analysis)
แนวทางในการจัดการดำเนินการของระบบจะประกอบด้วย 3 แนวทาง คือ
  J ไม่ต้องดำเนินการใด ๆ
  J ปรับปรุงระบบเดิมให้ดีขึ้น
  J พัฒนาระบบใหม่
นักวิเคราะห์ระบบ (System Analyst : SA)
1. คือ ผู้ประสานการติดต่อบุคคลต่าง ๆ
2. เพื่อรวบรวมข้อมูลความต้องการของผู้ที่เกี่ยวข้องกับระบบ
3. แล้วนำเอาข้อมูลเหล่านั้นมาวิเคราะห์  เพื่อทำการสร้างระบบใหม่
4. งานหลัก คือ
วางแผน (Planning)
วิเคราะห์ความต้องการ (Requirement Analysis)
พิจารณาตัดสินใจใช้ระบบสารสนเทศ
กำหนดรายละเอียดระบบใหม่
จัดหา Hardware & Software ใหม่
เหตุผลที่ต้องมี SA
SA มีวิธีการนำเทคโนโลยีคอมพิวเตอร์มาใช้ในงานพัฒนาระบบงานข้อมูล เพื่อช่วยในงานธุรกิจ ซึ่งนักธุรกิจจะไม่มีความรู้ในเทคโนโลยีคอมพิวเตอร์ แต่ Programmer มีความรู้ในเทคนิคการเขียนโปรแกรม แต่อาจจะไม่เข้าใจในระบบธุรกิจ
ทีมงานพัฒนาระบบ
1.คณะกรรมการดำเนินงาน (วางนโยบาย แนวทาง วัตถุประสงค์)
2.ผู้จัดการระบบสารสนเทศ (ควบคุมระดับปฏิบัติการ 3 - 7)
3.นักวิเคราะห์ระบบ (วิเคราะห์และออกแบบระบบงาน)
4.โปรแกรมเมอร์ (เขียนโปรแกรมตามที่นักวิเคราะห์ออกแบบมา)
5.วิศวกรระบบ (สร้างระบบสื่อสาร)
6. ผู้สนับสนุนฝ่ายเทคนิค (ผู้ช่วยสนับสนุนทางเทคนิคต่าง ๆ)
7.เจ้าหน้าที่รวบรวมข้อมูล (รวบรวมข้อมูลเพื่อการพัฒนา)
8.ผู้ใช้งาน (ผู้ใช้งานระบบ, ผู้แจ้งความต้องการของระบบ)