Site hosted by Angelfire.com: Build your free website today!

What is software

-   Computer programs and associated documentation คือ โปรแกรมและเอกสาร เช่น คู่มือการใช้งาน

-   Software products สินค้าสามารถออกแบบเป็นเฉพาะกลุ่ม หรือลูกค้าทั่วไป

Software engineering เป็นวิธีการหรือกระบวนการในการจัดการสิ่งที่เกี่ยวข้องกับสิ่งที่เกี่ยวข้องกับผลิตภัณฑ์

สิ่งที่ควรจะมี

-   เป็นการทำงานเป็นระบบและยังการจัดการงาน

-    มีการใช้เครื่องมือที่ใช้อย่างเหมาะสม เหมาะสมกับการทำงานนั้นๆ เช่นการใช้เอ็กเซลในการทำผังงาน ใช้เวิคในการทำเอกสาร เป็นต้น คือการเลือกใช้เครื่องมือที่เหมาะสม รวมถึงการใช้เทคนิคที่เหมาะสม

-   ขึ้นอยู่กับปัญหาที่ต้องการแก้ไข

-   ความสนใจในส่วนที่จะพัฒนา

-   คุณมีทรัพยากรในการพัฒนาอะไรบ้าง เช่น คน โปรแกรม เป็นต้น

ความแตกต่างระหว่างวิทยาศาสตร์คอมพิวเตอร์ กับ วิศวะ

-   วิทยาศาสตร์ เน้นทางด้านทฤษฎีเป็นหลัก

-   วิศวะ เน้นการด้านพัฒนาโปรแกรมรวมถึงการส่งมอบงานที่มีประโยชน์และใช้งานได้

-   การพัฒนาอะไรที่เป็นระบบจะคำนึงถึงทุกอย่าง ฮาร์ดแวร์ ซอฟต์แวร์ กระบวนการที่ใช้ในการจัดการ

System engineers จะคำนึงถึงหลายๆ อย่าง

-   System specification

-   Architectural design

-   Integration and deployment

Software Process

-   กลุ่มของกิจกรรมที่มีเป้าหมายที่จะพัฒนาวิวัฒนาการของซอฟต์แวร์

-   กิจกรรมของซอฟต์แวร์

-   Specification การกำหนดของเขตอะไรบ้างที่ระบบควรจะมีและจะต้องมีการพัฒนาเกี่ยวกับเรื่องอะไรบ้าง

-   Development การพัฒนา กระบวนการที่จะผลิตซอฟต์แวร์

-   Validation การตรวจสอบความถูกต้องของ Software ว่าใช้สิ่งที่ลูกค้าต้องการจริงหรือไม่

-   Evolution มีการวิวัฒนาการ จะต้องมีการเปลี่ยนแปลงซอฟต์แวร์ได้ง่าย เช่น การเปลี่ยนภาษีได้ภายในอนาคต

Software process model

-          Workflow perspective ลำดับการทำงาน inputs outputs and dependencies

-          Data – flow perspective การไหลของข้อมูล

-          Role/action perspective มองในบทบาทในแง่ของการกระทำ

Costs of software

-          60 เปอร์เซ็นต์ในการทำ

-          40 เปอร์เซ็นต์ใช้ในการทดสอบ

-          ต้นทุนมีการเปลี่ยนแปลงขึ้นอยู่กับชนิดของระบบ ขึ้นอยู่กับความต้องการ และประสิทธิภาพที่ต้องการและความน่าเชื่อถือ

-          ต้นทุนที่ใช้ในการพัฒนาขึ้นอยู่กับโมเดลที่ใช้ในการพัฒนาด้วย

What is CASE ? เครื่องมือที่ใช้ในการพัฒนา

การพัฒนาของซอร์ฟแวร์ที่ดี

-   Maintainability การบำรุงรักษาที่ง่าย

-   Dependability มีความน่าเชื่อถือ และน่าไว้วางใจ

-   Efficiency มีประสิทธิภาพ ไม่ควรที่จะสูญเสียทรัพยากรโดยเปล่าประโยชน์

-   Usability จะต้องสามารถใช้งานได้โดยผู้ใช้ตามที่คุณได้ออกแบบเอาไว้ไม่ใช้ออกแบบไว้อย่างนึกพอถึงเวลาใช้ไม่ได้

What is the dey challenges facing software engineering?

อะไรที่ทำให้ประสพความสำเร็จในการทำงาน

-   Legacy Systems เป็นระบบที่บำรุงรักษาและupdated ได้

-   Heterogeneity สามารถผสมผสานระหว่างฮาร์ดแวร์และซอฟต์แวร์ได้

-   Delivery การส่งมอบงานให้เร็วและทันเวลารวมถึงการรับสโขบงานสูงๆ

How program are usually written

-   The Requirement specification was defined like this การเขียนความต้องการเกินความเป็นจริงก่อน

-   The developers understood it in that way ความต้องการอย่างหนึ่ง คนเขียนต้องการอีกอย่างหนึ่ง

-   This is how the problem was solved before เข้าใจปัญหาแล้ว แต่ แก้ผิดทาง

-   This is how the problem is solved now ค้นพบทางแก้ปัญหา แต่ใช้ไม่ได้

-   That is the program after debugging แก้ปัญหาที่ปลายเหตุ

-   This is how the program is described by marketing department เป็นการสร้างภาพในมุมมองของการตลาด วาดฝันไว้สวยงาม

-   This, in fact, is what the customer wanted…  การใช้งานได้จริง