SA Chapter 8

2,307 views

Published on

SA Chapter 8

Published in: Education
  • Be the first to comment

SA Chapter 8

  1. 1. Phase 3 : Systems Design – Overview บทที่ 8
  2. 2. Selecting Software Alternatives Planning Analysis Make, build Purchase In – house system Commercial software package Implementation Customized software
  3. 3. Selecting Software Alternatives <ul><li>Decision will effect remaining SDLC phases </li></ul><ul><li>Systems Analyst’s involvement depends on which alternative is selected </li></ul>
  4. 4. Evaluating Software Alternatives <ul><li>In-house developed software </li></ul><ul><li>In-house customization of a software package </li></ul><ul><li>In-house software developed by contract personnel </li></ul><ul><li>End-user computing </li></ul><ul><li>Outsource a customized software package </li></ul><ul><li>Software vendor customizes its software package </li></ul><ul><li>Software vendor enhances its software package </li></ul><ul><li>Software package used without modification </li></ul>High Low
  5. 5. <ul><li>1. ออกแบบระบบงาน (Application Design) </li></ul><ul><ul><li>1.1 System interfaces </li></ul></ul><ul><ul><ul><li>Defining the interfaces </li></ul></ul></ul><ul><ul><ul><li>Supporting clerical systems </li></ul></ul></ul><ul><ul><ul><li>Man-machine interfaces (screens, forms, type and number of terminals, locations) </li></ul></ul></ul><ul><ul><ul><li>Machine-machine interfaces </li></ul></ul></ul><ul><ul><li>1.2 Program and their design </li></ul></ul><ul><li>2. ออกแบบฐานข้อมูล (Data Base Design) </li></ul>Systems Design : การออกแบบระบบ
  6. 6. Systems Design Activities <ul><li>1. Review the system requirements </li></ul><ul><li>2. Design the system </li></ul><ul><ul><li>user interface - dialogues, screens, forms, reports </li></ul></ul><ul><ul><li>input process - sources documents, audit trails, system security </li></ul></ul><ul><ul><li>data - how data will be organized, tables, ER – diagram </li></ul></ul><ul><ul><li>program specification </li></ul></ul><ul><ul><li>system architecture - processing method, network config uration. </li></ul></ul><ul><li>3. Present the design </li></ul>
  7. 7. Systems Design Considerations <ul><li>User Considerations </li></ul><ul><ul><li>Consider points where users interact with the system (e.g. where users receive output or provide input to the system. Make the system user-friendly. </li></ul></ul><ul><ul><li>Anticipate future user, system and organization needs </li></ul></ul><ul><li>Processing Considerations </li></ul><ul><ul><li>Use a modular design </li></ul></ul><ul><ul><li>Design independent modules that perform a single function </li></ul></ul><ul><li>Data Considerations </li></ul><ul><ul><li>Enter data where and when it occurs </li></ul></ul><ul><ul><li>Verify data where it is input </li></ul></ul><ul><ul><li>Use automated data-entry methods whenever possible </li></ul></ul><ul><ul><li>Control access for data entry </li></ul></ul><ul><ul><li>Report every instance of entry and change to data </li></ul></ul><ul><ul><li>Entry data only once </li></ul></ul>
  8. 8. Design tradeoffs <ul><li>Design goals often conflict with each other </li></ul><ul><ul><li>Easier use might create more complex programming requirements </li></ul></ul><ul><ul><li>More flexibility might increase maintenance needed </li></ul></ul><ul><ul><li>Meeting one user’s requirements might make it harder to satisfy another’s needs </li></ul></ul><ul><ul><li>A major issue is quality versus cost </li></ul></ul>
  9. 9. System Modeling Current Physical Model แสดงการทำงานของระบบปัจจุบัน Current Logical Model ปรับ current physical model ให้ มีเฉพาะ ฟังก์ชั่นงานที่จำเป็น เหมาะสมแก้ไขปัญหาที่ เกิดขึ้นได้ New Logical Model ปรับ เพิ่มฟังก์ชั่น ตามความต้องการของผู้ใช้ และตามข้อเสนอแนะของนักวิเคราะห์ระบบ ซึ่งรวมการปรับแต่งทั้ง process, data store และ data flow ที่มีส่วนกระทบ New Physical Model ปรับ logical model ของระบบงานใหม่ในแง่ของความเป็นไปได้ในการใช้งานจริง พิจารณาในส่วนของข้อจำกัดในการพัฒนา ทรัพยากรที่ต้องใช้และการแบ่งส่วนขั้นตอนการทำงาน clerical procedure และ computer procedure
  10. 10. <ul><ul><li>ทำ System Modeling : จาก DFDs ของระบบงานใหม่ (New Physical Model) นักวิเคราะห์ระบบสามารถ ออกแบบฟังก์ชั่น ลำดับงานและการประมวลผล โดยเขียนเป็น Hierarchical chart </li></ul></ul><ul><ul><li>ออกแบบ จอภาพ , รายงาน , user interface, dialogue design, input data control โดยใช้เทคนิคต่างๆที่จะได้ศึกษาในบทต่อไปโดยยึดตามฟังก์ชั่นที่มีใน Hierarchical chart ว่าแต่ละฟังก์ชั่นงานนั้นๆควรมีจอภาพ , รายงาน หรือ แบบฟอร์มใดแล้วจัดทำ sequence dialogue diagram ไว้ด้วย </li></ul></ul><ul><ul><li>ออกแบบ data base </li></ul></ul><ul><ul><li>จัดทำเอกสารโปรแกรม - Program Specification ซึ่งแสดง process logic ของแต่ละโปรแกรม และอาจต้องมีการทบทวน screen design และ data base design ที่ได้ทำไว้บ้างแล้วในข้อ 2 และ ข้อ 3 อี ก </li></ul></ul><ul><ul><li>นอกจากนั้นนักวิเคราะห์ระบบยังต้องออกแบบในส่วนของ ขั้นตอนการปฏิบัติงาน (procedure), network, hardware architecture </li></ul></ul>ขั้นตอนการออกแบบออกแบบระบบงาน (Design the System)
  11. 11. <ul><ul><li>เป็นการแสดงให้เห็นว่าระบบมีการจัดการงานหลักและงานย่อยอะไรบ้าง </li></ul></ul><ul><ul><li>จากแผนภาพกระแสข้อมูลของระบบงานใหม่นักวิเคราะห์ระบบต้องเปลี่ยนฟังก์ชั่นที่อยู่ในรูปของแผนภาพกระแสข้อมูลให้อยู่ในรูปของผังงานโครงสร้างที่แสดงลำดับการทำงานและรายละเอียดของแต่ละฟังก์ชั่น </li></ul></ul>การออกแบบฟังก์ชั่น ลำดับงานและการประมวลผล
  12. 12. <ul><ul><li>นักวิเคราะห์ระบบอาจเปลี่ยนแผนภาพกระแสข้อมูลมาเป็นโครงสร้างแบบลำดับชั้น (hierarchy) หรือบางทีอาจเรียกว่าผังงานลำดับชั้น (hierarchical chart) </li></ul></ul><ul><ul><li>ผังงานลำดับชั้นจะมีลักษณะเหมือนผังการจัดสายงาน (organization charts) ในระบบธุรกิจโดยจะใช้รูปสี่เหลี่ยมผืนผ้าแทนขั้นตอนต่างๆของระบบงานที่เรียงลำดับจากระบบงานใหญ่ไปยังระบบงานย่อย </li></ul></ul>การออกแบบฟังก์ชั่น ลำดับงานและการประมวลผล
  13. 13. การออกแบบฟังก์ชั่น ลำดับงานและการประมวลผล ระบบรับการสั่งซื้อ 0 ฝ่ายคลัง ฝ่ายบัญชี ลูกค้า ฝ่ายขาย ธนาคาร ใบสั่งซื้อ ใบแจ้งไม่มีสินค้า ใบแจ้งหนี้ รายการคอมมิชชั่น รายการฝากเงิน รายการสินค้า รายละเอียดการเงิน
  14. 14. การออกแบบฟังก์ชั่น ลำดับงานและการประมวลผล ฝ่ายบัญชี ธนาคาร ใบแจ้งไม่มีสินค้า ใบแจ้งหนี้ ใบสั่งซื้อ รายการคอมมิชชั่น รายการฝากเงิน รายละเอียดการเงิน 2 จัดทำใบแจ้งหนี้ สำเนาใบสั่งซื้อ 3 รับชำระเงิน ใบแจ้งหนี้ D1 สำเนาใบแจ้งหนี้ D2 ใบสั่งซื้อ สำเนาใบสั่งซื้อที่บันทึกแล้ว ใบแจ้งหนี้ ใบแจ้งหนี้ที่รับชำระเงินแล้ว ฝ่ายขาย บันทึกข้อมูลการสั่งซื้อ 1 ฝ่ายคลัง รายการสินค้า ลูกค้า
  15. 15. การออกแบบฟังก์ชั่น ลำดับงานและการประมวลผล ระบบรับการสั่งซื้อ (0 ) จัดทำใบแจ้งหนี้ (2.0) รับชำระเงิน (3.0) บันทึกข้อมูลการสั่งซื้อ (1.0) ... (1.1) ... (1.2) ... (1.3) ... (2.1) ... (2.2) ... (3.1) ... (3.2) ... (3.3) ... (3.4)
  16. 16. Designing and using codes การจัดทำรหัสเกิดขึ้นเมื่อ <ul><li>a new system is being introduced </li></ul><ul><li>an existing code is outgrown </li></ul><ul><li>more than one organizations with different coding system merge </li></ul>
  17. 17. Designing and using codes <ul><li>Unique identification </li></ul><ul><li>to replace a name of an item </li></ul><ul><li>to give information </li></ul><ul><li>to give security / confidentiality </li></ul>จุดประสงค์การให้รหัสข้อมูล
  18. 18. Designing and using codes ก่อนการออกแบบรหัสขึ้นใช้ควรทำการศึกษาและกำหนดนิยาม (definition) ได้แก่ ความยาวของรหัสที่จะใช้ (code length), รูปแบบรหัส (code format), เนื้อความที่จะอยู่ในรหัส (character content) และกำหนดเป็นกฎเกณฑ์การตั้งรหัสออกมา (assignment conventions) การใช้รหัสแทนข้อมูลนั้นหากรหัสถูกออกแบบให้ซับซ้อนเกินไป จะทำให้จำได้ยากและยุ่งยากแก่การใช้งาน ข้อแนะนำในการออกแบบรหัส มีดังนี้
  19. 19. Designing and using codes หลักการออกแบบรหัส ( Developing a code ) 1. Keep code concise พยายามให้รหัสมีความกระทักรัด ไม่สั้นหรือยาวเกินไป 2. Allow for expansion กำหนดให้รหัสสามารถรองรับการขยายในอนาคต 3. Keep code stable and consistent รหัสเมื่อกำหนดใช้แล้วต้องคงที่ไม่เปลี่ยนแปลงไปมา 4. Make code unique 5. Use sortable code เมื่อออกแบบให้คำนึงถึงรหัสที่สามารถจัดเรียงลำดับได้ 6. Avoid confusing code หลีกเลี่ยงการสร้างรหัสที่ก่อให้เกิดความสับสนได้ เช่น เลขศูนย์ กับอักษร โอ (0, O) ตัวแอลเล็กกับตัวไอใหญ่ ( l, I)
  20. 20. Designing and using codes Type of data codes 1. Significant code 2. Non - significant code
  21. 21. Significant code - Logical code Matrix : แสดงความสัมพันธ์ระหว่าง 2 components 1=Red 2=Green 3=Blue 4=Yellow 5=Black 1=Hat 11 12 13 14 15 2=Coat 21 22 23 24 25 3=Gloves 31 32 33 34 35 4=Scarf 41 42 43 44 45
  22. 22. Significant code - Logical code <ul><li>Self-Checking - เป็นรหัสที่ปะต่อท้ายเพื่อประโยชน์การตรวจสอบ check character ได้จากการใช้ algorithm ในการคำนวณหา </li></ul>Code : 1 2 3 4 5 6 Weights : 1 7 3 1 7 3 Modulus : 10 Code * Weights : 1 14 9 4 35 18 sum of results : 81 Different from next multiply of ten : 90 - 81 = 9 or 81/10 = 8 remainder = 1 ( 10 – 1 = 9 ) Check-character = 9
  23. 23. ตรวจสอบ Self-Checking Code with check-character : 1234569 Weights : 1731731 Checking by multiply each digit by its weight : 1 + 14 + 9 + 4 + 35 + 18 + 9 = 90 Dividing sum by 10 : 90/10 ได้เศษ 0 แสดงว่าข้อมูลที่รับเข้ามาถูกต้อง Code with check-character : 7 234569 Weights : 1731731 Checking by multiply each digit by its weight : 7+ 14 + 9 + 4 + 35 + 18 + 9 = 96 Dividing sum by 10 : 96/10 ได้เศษ 6 แสดงว่าข้อมูลที่รับเข้ามาไม่ถูกต้อง
  24. 24. ตรวจสอบ Self-Checking Code with check-character : 21 34569 Weights : 1731731 Checking by multiply each digit by its weight : 2 + 7 + 9 + 4 + 35 + 18 + 9 = 84 Dividing sum by 10 : 84/10 ได้เศษ 4 แสดงว่าข้อมูลที่รับเข้ามาไม่ถูกต้อง
  25. 25. Significant code - Logical code Self-Checking - modulus 11 Code : 3 1 6 0 2 Weights : 6 5 4 3 2 Code * Weights : 18 5 24 0 4 sum of results : 51 Divide sum of result by modulus : 51/11 = 4 remainder = 7 Subtract remainder from modulus : 11 - 7 = 4 check character = 4 code with check character : 31602 4
  26. 26. Significant code - Collating code <ul><li>1. Alphabetic เรียงลำดับตามตัวอักษร </li></ul><ul><li>01 Apples </li></ul><ul><li>02 Bananas </li></ul><ul><li>03 Cherries </li></ul>
  27. 27. Significant code - Collating code <ul><li>2. Soundex code : </li></ul><ul><li>e.g. Use first letter ignore vowels and H, W and Y and replace the next three by </li></ul><ul><li>1 for B,F,P,V Lawrance L652 </li></ul><ul><li>2 for C,G,J,K,Q,S,X,Z Lawrence L652 </li></ul><ul><li>3 for D,T Laurence L652 </li></ul><ul><li>4 for L Laurent L653 </li></ul><ul><li>5 for M,N </li></ul><ul><li>6 for R </li></ul>
  28. 28. Significant code - Collating code 3. Classification codes จัดรหัสตาม categories 3.1 Decimal : 3 Social science 37 Education in 372 Elementary 372.2 Kindergarten 372.21 Method 372.215 Songs and games
  29. 29. Significant code - Collating code 3. Classification codes จัดรหัสตาม categories 3.2 Faceted : face 1 = type, face 2 = sex, face 3 = size, face 4 = style, face 5 = material SU M 38L 17 384 Suit male size 38long style 17 material 384
  30. 30. Significant code - Collating code 3.3 Significant digit codes : ใช้ชุดของตัวเลขแบ่งเป็น group, subgroup แต่ละ subgroup มีความหมาย 99 99 99 999 Warehouse location section Part Type Serial number
  31. 31. Significant code - Abbreviation 1. Mnemonic cm centimeter m meter 2. Acronyms RADAR - Radio Detecting And Ranging
  32. 32. Significant code - Other codes 1. Cipher codes เป็นการ encode ข้อมูล 2. Action codes ใช้รหัสแทนการกระทำที่ต้องการ เช่น A หมายถึง Add X หมายถึง eXit จาก program
  33. 33. Non - Significant code 1. Sequential code Block sequential code 2. Random codes
  34. 34. 1) Discussion – Data Code สำนักทะเบียน 2) Class Exercise การออกแบบฟังก์ชั่น ลำดับงาน และการประมวลผล - ส่งด้วย

×