วันศุกร์ที่ 18 เมษายน พ.ศ. 2557

What Is Software Engineering Anyway?

Software Engineering จะต้องตอบคำถามจำนวนมากมาย 
     - จะสามารถช่วยลูกค้าไ้ด้อย่างไร สิ่งที่จะต้องแก้ปัญหาของลูกค้าคืออะไร
     - วิธีการที่ผู้ใช้จะโต้ตอบกับระบบเป็นอย่างไร
     - สิ่งที่ระบบปฏิบัติการ, ภาษา, ฮาร์ดแวร์จะถูกใช้งาน คืออะไร
     - สิ่งที่เป็นโครงสร้างโดยรวมของระบบซอฟต์แวร์และวิธีการโต้ตอบขององค์ประกอบอื่นที่แตกต่างมีกันคืออะไร
     - จะจัดการทีมงานเพื่อให้มีที่มีประสิทธิภาพได้อย่างไร
     - เราสามารถจบงานในเวลา เพื่อที่จะมีมันอยู่บนชั้นวางสำหรับช้อปปิ้งวันหยุดได้หรือไม่

SE == CS ?
     - นักวิทยาศาสตร์สร้างสิ่งที่จะเรียนรู้อะไรใหม่ ๆ
     - วิศวกรเรียนรู้สิ่งที่จะออกแบบและสร้างผลผลิตที่มีคุณภาพ

     - นักวิทยาศาสตร์ต้องการที่จะบรรลุความก้าวหน้าทางวิทยาศาสตร์
     - วิศวกรจะหลีกเลี่ยงความล้มเหลวทางวิศวกรรม

     - นักวิทยาศาสตร์คอมพิวเตอร์ต้องการเข้าใจขั้นตอนวิธีการ และรากฐานของการคำนวณทางทฤษฏี
     - วิศวกรซอฟแวร์ ต้องการที่จะเรียนรู้หลักการออกแบบและการปฏิบัติที่ดีที่สุดสำหรับการสร้างระบบซอฟแวร์ที่มีคุณภาพ

     -นักวิทยาศาสตร์ต้องการที่จะรู้ว่าพื้นฐานการทำงานของเทคโนโลยีและการที่จะปรับปรุงให้ดีขึ้น
     - วิศวกรซอฟต์แวร์ต้องการทราบลักษณะของเทคโนโลยีเพื่อให้พวกเขาสามารถออกแบบเทคโนโลยีที่เหมาะสมที่สุดในระบบซอฟต์แวร์ของพวกเขา

     ในหนึ่งปี ทีมหนึ่งมีนักเรียน5คน เขียนโค้ด 26163 บรรทัด 
               *ซึ่งจำนวนหนึ่งสร้างขึ้นจากสคริป*

สิ่งใดที่เหมือนเป็นนักเรียน
     - 1% ของภาคการศึกษาถือเป็น 99% ของห้องสมุด
     - ตอบสนองความต้องการของทุกคน
     - พยายามในสิ่งใหม่มากๆ
     - ทำการบ้าน 20 ชั่วโมงต่อสัปดาห์
     - ทีมเวิร์คเป็นสิง่สำคัญ