วันศุกร์ที่ 29 มิถุนายน พ.ศ. 2555

ได้ทำแบบนี้ก็ดีนะ :)

เพื่อนๆ
                   เราไปนั่งดู Youtube แล้วเจอ คลิปนี้เลยแวะเอามาฝาก  เราว่าเนื้อหาคล้ายๆกับที่อาจารย์สอนเมื่อ คลาสที่แล้ว ลองดูกันนะ สำหรับคนที่ไม่ได้เข้าคลาสที่แล้ว :)


Part 1


Part 2




มันอาจจะดูจืดๆไปหน่อยนะ แต่ก็ได้ความรู้ดี

ไม่แน่เราอาจจะได้ทำคลิปแบบนี้ส่งอาจารย์จงดี ก็เป็นไปได้ 5555


นักวิเคราะห์ระบบฯ (System Analyst) เค้าทำงานกันอย่างไร?


นักวิเคราะห์ระบบ เค้าทำงานกันอย่างไร?




 วันนี้ขอพาท่านผู้ชม ผู้อ่าน และแฟนคลับทุกๆ ท่าน เข้าไปสัมผัส ตำแหน่งงานหนึ่งของ กสท นั่นก็คือ “นักวิเคราะห์ระบบงานคอมพิวเตอร์“ ที่ดูเหมือนว่าจะเป็นที่ต้องการเป็นอย่างมาก เนื่องจากถึงคราวเปิดรับสมัครบุคลากรเข้าทำงานทีไร ตำแหน่งนี้มีเข้าร่วมชิงชัยในสนามสอบด้วยเกือบทุกครั้ง เมื่อรู้อย่างนี้แล้ว หลายคนก็คงอยากรู้แหละว่า คนพวกนี้เค้าต้องทำงานกันอย่างไร? งั้นเราไปดูกันเลยดีกว่า

คุณสมบัติเบื้องต้นของนักวิเคราะห์ระบบที่ควรจะมี คือ

1. มีความรู้ความสามารถทาง คอมพิวเตอร์ เทคโนโลยีสารสนเทศและการสื่อสาร (ICT) มีประสบการณ์ในการเขียนโปรแกรม
 เนื่องจากเป็นงานที่ข้องเกี่ยวกับทั้งอุปกรณ์คอมพิวเตอร์ (Hardware) ซอฟต์แวร์  ระบบเครือข่าย  และข้อมูล เป็นหลัก เจอกับมันทุกวัน จนเรียกว่าแทบจะเป็นส่วนหนึ่งของชีวิตไปเลย

2. มีความสามารถในสื่อสาร
เนื่องจาก เป็นงานที่ต้องพบปะผู้คน เรียนรู้ปัญหา เข้าใจปัญหาได้อย่างรวดเร็ว รวมทั้งสามารถนำเสนอแนวความคิดของตนเองให้ผู้อื่นเข้าใจได้

3. มีทักษะการแก้ไขปัญหาทั้งเฉพาะหน้าและปัญหาในระยะยาวได้ดี
เนื่องจาก เมื่อเข้าไปทำงาน หน้าที่ของคนกลุ่มนี้คือ ช่วยแก้ปัญหาในการทำงาน หรือเสนอวิธีการใหม่ ที่สามารถนำเอาเทคโนโลยีเข้าไปช่วยเป็นเครื่องในการเพิ่มประสิทธิภาพการทำงาน

4. มีมนุษยสัมพันธ์ที่ดีมีใจรักในงานให้บริการ
เนื่องจาก เป็นงานที่ต้องติดต่อกับคนจำนวนมาก การสร้างมนุษยสัมพันธ์ที่ดีจึงเป็นสิ่งที่หลีกเลี่ยงไม่ได้ เพื่อให้การทำงานเกิดความคล่องตัว และจำเป็นต้องอาศัยความร่วมมือจากคนจำนวนมากเพื่อให้ระบบงานประสบความสำเร็จ

5. มีความเป็นผู้นำและสร้างทีมในการทำงานได้
เพราะไม่เพียงแค่ต้องติดต่อกับคนทำงานหรือผู้ที่กำลังจะกลายเป็นผู้ใช้งาน(User) เท่านั้น ยังจำเป็นต้องสามารถสร้างทีม เพื่อเข้ามาช่วยในการพัฒนาระบบงานที่มีเวลาค่อนข้างจำกัด และมีความยาก ง่าย ต่างกันไปตามเงื่อนไขของผู้ที่ต้องการใช้งาน ภายในทีมงานนั้น จะประกอบไปด้วย นักพัฒนาโปรแกรมหลายๆ คน (Developer หรือ Programmer) นักทดสอบโปรแกรมหรือซอฟต์แวร์ (Tester) ผู้จัดการฝึกอบรม  รวมทั้งยังต้องทำหน้าที่เป็นผู้ประสานงานได้อย่างยอดเยี่ยม

6. ขยัน อดทนต่อสถานการณ์ที่กดดันได้ และมีความรับผิดชอบสูง
เนื่องความต้องการของผู้ใช้งานมักจะเปลี่ยนแปลงอยู่ตลอดเวลา จึงมีความจำเป็นอย่างยิ่งต้องอาศัยความวิริยะอุตสาหะ ขยันหมั่นเพียร อดทน ทุ่มเท เพื่อให้งานที่รับผิดชอบประสบความสำเร็จ และผู้ใช้งานเกิดความพึงพอใจสูงสุด

คราวนี้เราจะไปดูกันต่อค่ะว่า ในแต่ละวันงานของคนพวกนี้เค้าทำอะไรกันบ้าง โดยทั่วไปแล้วงานของคนกลุ่มนี้จะยึดหลักการทำงานตามวงจรของการพัฒนาระบบงานทางคอมพิวเตอร์ที่ประกอบได้ด้วยขั้นตอนต่างๆ ดังนี้

1. ศึกษาความเป็นไปได้ 
ในการพัฒนาะบบงานคอมพิวเตอร์ โดยทำการเก็บรวบรวมข้อมูลคร่าวๆ ว่างานที่คนอื่นทำๆ กันอยู่เป็นประจำทุกวันนั้น หากนำเอาคอมพิวเตอร์เข้าไปช่วยในการทำงานแล้วจะส่งผลอย่างไร เกิดความคุ้มค่าอย่างไร เกิดผลดี ผลเสียอย่างไร จากนั้นก็จะทำการประเมินว่า งานนี้ควรที่จะนำเอาระบบคอมพิวเตอร์เข้าไปทำงานแทนคน จะดีหรือไม่ หากประเมินแล้วไม่ผ่าน งานนี้ก็เป็นอันยกเลิก แล้วคงต้องไปดูงานอื่นๆ ต่อไป แต่โดยส่วนใหญ่แล้วมักจะผ่าน เพราะเดี๋ยวนี้การทำงานเกือบทุกอย่างก็ใช้คอมพิวเตอร์เกือบทั้งนั้น  เมื่อผ่านขั้นตอนนี้ก็ไปสู่ขั้นตอนต่อไป

2. เก็บรวบรวมความต้องการของผู้ใช้งาน 
โดยเข้าไปสัมภาษณ์ผู้ที่ทำงานอยู่ในปัจจุบัน  สังเกตการทำงาน ให้ทำแบบสอบถาม เพื่อจะได้รู้ว่างานที่ทำๆ กันอยู่เดิมนั้นเป็นอย่างไร หรือเรียกได้ว่าเข้าไปดูกระบวนการทำงานทั้งหมดของการทำงานเดิมนั่นเอง จากนั้นก็เก็บปัญหาที่เกิดขึ้นในปัจจุบัน แล้วก็คิดหาวิธีในการแก้ปัญหาโดยใช้คอมพิวเตอร์ช่วยในการทำงาน ซึ่งในขั้นตอนนี้แหละค่ะ ประสบการณ์ของนักวิเคราะห์ระบบจะมีส่วนสำคัญที่จะเสนอแนะวิธีการแก้ปัญหาแบบใดถึงจะดีที่สุด ซึ่งในขั้นตอนก็จะมีเทคนิคต่างๆ เข้ามาช่วย เช่น เทคนิคที่นิยมใช้กันคือ การทำ Prototype หรือการสร้างแบบจำลองคร่าวๆ เพื่อให้ผู้ใช้งานเห็นภาพและเข้าใจได้ง่ายขึ้นว่าสิ่งที่กำลังจะเกิดขึ้นในอนาคตจะเป็นไปในรูปแบบใด พร้อมทั้งยังช่วยให้ผู้ใช้งานมีส่วนร่วมในการพัฒนาระบบงานที่กำลังจะเกิดขึ้นด้วยโดยการให้ข้อเสนอแนะเพิ่มเติมกับ Prototype ที่สร้างขึ้น

3. วิเคราะห์และออกแบบระบบงานใหม่ 
โดยหลังจากที่เก็บความต้องการของผู้ใช้งานได้พอสมควรแล้ว ก็เป็นหน้าที่ของนักวิเคราะห์ที่ต้องมาวิเคราะห์ปัญหาทั้งหมด กำหนดหน้าที่ของระบบที่จะมาทำหน้าที่แทนคน รวมทั้งออกแบบการทำงานของระบบทั้งหมด อาจเรียกขั้นตอนนี้ว่าเป็นการสร้างพิมพ์เขียวก่อนที่จะไปก่อร่างสร้างระบบต่อไป

4. พัฒนาระบบงาน  
โดยในขั้นตอนนี้พระเอกหรือนางเอก จริงๆ ก็คือ โปรแกรมเมอร์ ที่ทำหน้าที่ในการพัฒนาหรือสร้างระบบงานตามที่ออกแบบไว้ส่วนนักวิเคระห์ระบบจะทำหน้าที่เป็นผู้กำกับ ผู้ประสานงานกับผู้ใช้งานและคนเขียนโปรแกรม รวมทั้งยังต้องเข้าไปช่วยในการแก้ปัญหาด้วยในบางครั้ง หากบางครั้งงานรีบเร่ง คนไม่พอ ผู้กำกับอาจต้องเข้าไปแสดงฝีมือเอง นั่นคือเข้าไปช่วยเขียนโปรแกรมด้วย

5. ทดสอบระบบงานที่พัฒนาขึ้น  
เพื่อตรวจสอบดูว่าสิ่งได้ออกแบบไว้แล้วกับที่สร้างขึ้นมาถูกต้องสมบูรณ์มากน้อยเพียงใด โดยคนที่เข้าไปทำการทดสอบก็จะประกอบไปด้วย คนเขียนโปรแกรม นักวิเคราะห์ และผู้ใช้งานค่ะ หากไม่เป็นที่พอใจ เราไม่ยินดีคืนเงินนะคะ แต่ต้องกลับไปแก้ไขให้จนกว่าผู้ใช้งานจะพอใจ

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

7. ดูแลรักษาระบบที่พัฒนาขึ้นให้ใช้งานได้และเป็นปกติดีในทุกๆ วัน 
รวมทั้งรับเรื่องร้องเรียนจากผู้ใช้งานด้วย ในกรณีที่ระบบใช้งานไม่ได้ พร้อมทั้งหาทางแก้ไขต่อไป

ทั้งหมดนี้เป็นเพียงงานหลักๆ ของนักวิเคระห์ระบบที่ต้องทำ ซึ่งเป็นงานที่ต้องใช้เวลาในแต่ละขั้นตอนค่อนข้างมาก และไม่ได้ทำงานเพียงแค่ระบบเดียวแล้วก็เลิกกัน ดังนั้นในเรื่องของการจัดการเวลาจึงเป็นเรื่องที่มีความสำคัญไม่แพ้เช่นกัน

เพิ่มเติมครับ http://catadmin.cattelecom.com/km/blog/jareerat/2008/01/17/sa/

วันพฤหัสบดีที่ 28 มิถุนายน พ.ศ. 2555

ความแตกต่างระหว่าง Logical Data flow Diagram กับ Physical Data flow Diagram


          สืบเนื่องจากที่เพื่อนบางกลุ่ม และกลุ่มเราเองที่ตอนนี้ต้องทำปัญหาพิเศษ ด้านคอมพิวเตอร์ ซึ่งในรายงานนี้ต้องมีการวิเคราะห์ และออกแบบข้อมูล ทำให้ต้องศึกษาหลักการเขียน Data Flow Diagram ไปล่วงหน้าจากบทเรียน ก็เลยนำข้อมูลบางส่วนที่ได้ศึกษามาให้เพื่อน ๆ ได้อ่านกันค่ะ

ความแตกต่างระหว่าง Logical Data flow Diagram กับ Physical Data flow Diagram
           Logical Data flow Diagram เป็นแผนภาพการไหลข้อมูล ที่นักวิเคราะห์เขียนขึ้นมา เพื่อวิเคราะห์ระบบ
งานเดิม หรือระบบงานปัจจุบัน ที่มีการทำงานอยู่ เพื่อเห็นการไหลของข้อมูล และระบบงาน
          Physical Data flow Diagram เป็นแผนภาพการไหลข้อมูล ที่นักวิเคราะห์เขียนขึ้นมา เพื่อวิเคราะห์ระบบใหม่ที่ทำงานผ่านระบบคอมพิวเตอร์ หรือระบบอัตโนมัติ เพื่อการแก้ปัญหา หรือปรับปรุงการทำงานให้มีประสิทธิภาพ
         สามารถสรุปแยกความแตกต่าง ๆ ของ แผนภาพการไหลข้อมูลระหว่าง logical Data flow Diagram กับ Physical Data flow Diagram
Design Feature
Logical DFD
Physical DFD
ให้สัญลักษณ์แทน
ระบบงานเดิมทำงานอย่างไร
ระบบงานใหม่ หรือระบบคอมพิวเตอร์
ทำงานอย่างไร
โพรเซสแสดงอะไร
กิจกรรมหรืองาน ของระบบงานเดิม
โปรแกรม หรือ ส่วนของโปรแกรมหรือการทำงานกับมือ
การจัดเก็บข้อมูล
การบันทึกข้อมูล หรือจัดเก็บตามเอกสาร
ไฟล์ และฐานข้อมูลการทำงานด้วยมือ
ชนิดของที่เก็บข้อมูล
แสดงการเก็บข้อมูลในที่เก็บที่จับต้องได้ เช่นแฟ้มเอกสาร ตู้เอกสาร
แฟ้มข้อมูลหลักแฟ้มข้อมูลประมวลผล
การทำงานระบบ
แสดงกิจกรรมการทำงานของระบบงาน
การตรวจสอบข้อมูลเข้าการทำงานของโปรแกรมคอมพิวเตอร์

เพื่อน ๆ สามารถดูตัวอย่าง และศึกษาข้อมูลเพิ่มเติมได้ที่นี่ค่ะ
http://classroom.hu.ac.th/courseware/SA/CHAPTER9/ch9_4.html 




ดลยา แสงอากาศ

วันอังคารที่ 26 มิถุนายน พ.ศ. 2555

ลองดูกันน๊ะเพื่อนๆรื้อฟื้นกันหน่อย.....

วิธีการและหลักการของการออกแบบฐานข้อมูล
                    สำหรับการออกแบบฐานข้อมูลเชิงสัมพันธ์ ( Relational Database) นี้มีวิธีเริ่มต้นได้มากกว่า 1 วิธี  ซึ่งโดยทั้งไปแล้วนิยมเริ่มต้นด้วยการสร้าง ER Diagram   โดยนำรายละเอียดที่รวบรวมมาได้จากความต้องการของผู้ใช้มาทำการวิเคราะห์  หลังจากนั้นนำข้อมูลที่ได้มาสร้างเป็น ER Diagram และทำการเปลี่ยน ER Diagram ให้เป็นโครงสร้างแบบรีเลชัน (Relational Schemes) ซึ่งมีลักษณะเป็นรูปแบบของตาราง หลังจากนั้นนำรีเลชันต่าง ๆ มาทำการนอร์มัลไลเซชันเพื่อให้ฐานข้อมูลที่ออกแบบมานั้น    มีความซ้ำซ้อนน้อยที่สุด
 
 
Data Analysis
              เป็นการสำรวจระบบงานและนำมาวิเคราะห์ว่า  ในระบบงานนั้นมีข้อมูลอะไรบ้าง มีข้อบังคับเงื่อนไขอะไร  มีใครเกี่ยวข้องบ้างและสารสนเทศที่ได้จากฐานข้อมูลที่ผู้ใช้ต้องการมีอะไรบ้าง
สร้าง ER Diagram
              เมื่อได้ข้อมูลจากขั้นตอน Data Analysis แล้ว  ต่อจากนั้นก็จะนำข้อมูลที่ได้มาเขียนเป็น ER Model  ในการ สร้าง ER  Diagram  มีขั้นตอนต่อไปนี้
               1. กำหนดเอนติตี้

               2. กำหนดแอททริบิวท์ให้แต่ละเอนติตี้

               3. กำหนดความสัมพันธ์ระหว่างเอนติตี้
อ่านรายละเอียดได้ที่....http://demo4.rc.ac.th/chap8_p2/chap8_p2.html

ผังงานระบบ (System Flowchat)

ผังงานระบบ คือ รูปภาพหรือสัญลักษณ์ที่ใช้แทนลำดับ หรือขั้นตอนในโปรแกรมรูปภาพหรือสัญลักษณ์ที่ใช้เป็นเอกลักษณ์ และแทนความหมายอย่างใดอย่างหนึ่ง

โดยทั่วไปผังงานคอมพิวเตอร์แบ่งเป็น 2 ประเภทใหญ่

1. ผังงานระบบ (System Flowchat)
เป็นผังงานที่แสดงถึงขั้นตอนการทำงานภายในระบบหนึ่ง ๆ โดยจะแสดงถึงความเกี่ยวข้องของส่วนที่สำคัญต่างๆ ในระบบนั้น เช่น เอกสารเบื้องต้น หรือสื่อบันทึกข้อมูลที่ใช้อยู่เป็นอะไร และผ่านไปยังหน่วยงานใด มีกิจกรรมอะไรในหน่วยงานนั้น แล้วจะส่งต่อไปหน่วยงานใด เป็นต้น ดังนั้นผังงานระบบอาจเกี่ยวข้องกับคน วัสดุ และเครื่องจักร ซึ่งแต่ละจุดจะประกอบไปด้วย การนำข้อมูลเข้า วิธีการประมวลผลและการแสดงผลลัพธ์ (Input – Process - Output) ว่ามาจากที่ใดอย่างกว้าง ๆ จึงสามารถเขียนโปรแกรมจากผังงานระบบได้

2. ผังงานโปรแกรม (Program Flowchat) หรือเรียกสั้น ๆ ว่า ผังงาน
ผังงานประเภทนี้แสดงถึงขั้นตอนของคำสั่งที่ใช้ในโปรแกรม ผังงานนี้อาจสร้างจากผังงานระบบโดยผู้เขียนผังงานจะดึงเอาแต่ละจุดที่เกี่ยว ข้องการทำงานของเครื่องคอมพิวเตอร์ที่ปรากฏในผังงานระบบมาเขียน เพื่อให้ทราบว่าถ้าจะใช้คอมพิวเตอร์ทำงานในจุดนั้นเพื่อให้ได้ผลลัพธ์ที่ตาม ต้องการ ควรที่จะมีขั้นตอนคำสั่งอย่างไร และจะได้นำมาเขียนโปรแกรมคอมพิวเตอร์ทำงานต่อไป

การใช้งานผังงานระบบ

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

ตัวอย่าง ผังงานระบบและผังงานโปรแกรมของการคำนวณพื้นที่สามเหลี่ยม 100 รูป


ศึกษารายละเอียดเพิ่มเติมได้ที่ >> http://itd.htc.ac.th/st_it50/it5012/P_3/System%20Analysis%20and%20Design/B6.htm

ศิริพร ประวิสารัตน์ 52040811