การวิเคราะห์และออกแบบระบบ

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
เทคโนโลยีฐานข้อมูลสำนักงาน
Advertisements

คำอธิบายรายวิชา ระบบธุรกิจ วัฏจักรของการพัฒนาระบบงาน ระเบียบ วิธีการและเครื่องมือในการวิเคราะห์ ผังงานระบบ ตารางและการตัดสินใจ การศึกษาความเป็นไปได้ของระบบการวิเคราะห์ความคุ้มค่าในการลงทุนในการพัฒนา.
วงจรพัฒนาระบบ (System Development Life Cycle)
การกำหนดปัญหา และความต้องการ (Problem Definition and Requirements)
(Material Requirement Planning)
โดย ดร.วรินทร์ สุวรรณวิสูตร อาจารย์ผู้ประสานงานวิชาโครงการ
การวิเคราะห์ระบบและวิธีปฏิบัติงาน
ผลงานประเมินเข้าสู่ตำแหน่งนักวิชาการเงินและบัญชีชำนาญการพิเศษ
ขั้นตอนการดำเนินงานศูนย์ข้อมูลกลางทางวัฒนธรรมระดับหน่วยงาน
Object-Oriented Analysis and Design
ระบบธุรกิจการป้องกันอัคคีภัย...!!!
Business Modeling (บางส่วนอ้างอิงจาก ดร.อดิศร ณ อุบล)
Object-Oriented Analysis and Design
Information System Project Management
บทที่ 5 การจำลองแบบเชิงวัตถุ Object Modeling
เนื้อหา ประเภทของโปรแกรมภาษา ขั้นตอนการพัฒนาโปรแกรม
การวิเคราะห์ความต้องการด้านระบบ
การวางแผน IT และการพัฒนาระบบขององค์กร
Surachai Wachirahatthapong
SCC - Suthida Chaichomchuen
บรรยายโดย สุรางคนา ธรรมลิขิต
SCC : Suthida Chaichomchuen
Software Process Models
CSE323 การวิเคราะห์และออกแบบระบบ (Systems Analysis and Design)
Chapter 2 Database systems Architecture
Analyzing The Business Case
บทที่ 2 การพัฒนาระบบ (System Development)
Waterfall model แบบจำลองน้ำตก
การจัดทำคู่มือ การปฏิบัติงาน Work Manual
System Integration.
บทที่ 2 การพัฒนาระบบสารสนเทศ
การศึกษาความเป็นไปได้ (Problem Definition and Feasibility Study)
การพัฒนาระบบสารสนเทศ (Information System Development)
วิธีการทางคอมพิวเตอร์
การออกแบบฐานข้อมูลและการบริหารธุรกิจ
แบบจำลองกระบวนการซอฟต์แวร์
System Development Lift Cycle
SYSTEM ความรู้ทั่วไปเกี่ยวกับระบบ
3. การพัฒนาระบบสารสนเทศ
Chapter 2 Software Process.
บทที่ 3 การวิเคราะห์ Analysis.
ที่ใช้ใน Object-Oriented Design
การออกแบบระบบฐานข้อมูล
II > วงจรการพัฒนาระบบ (System Development Life Cycle)
การวิเคราะห์และออกแบบ ระบบสารสนเทศ
2.1 วิธีแก้ปัญหาด้วยคอมพิวเตอร์ (Computer problem solving methods)
Evaluation as a Strategy ; สำนักประเมินผล สำนักงบประมาณ
บทที่ 1 ระบบสารสนเทศ และบทบาทของนักวิเคราะห์ระบบ
หลักการแก้ปัญหา.
วิชา เทคโนโลยีสารสนเทศสำหรับงานทะเบียนบุคคลและการจ่ายเงินเดือน (Information Technology for Personal Record and Payroll) - การพัฒนาระบบสารสนเทศ.
school of Information communication Tecnology,
Modeling and Activity Diagram
Unified Modeling Language
Chapter 1 Introduction to Software Engineering – Software Engineering Chaichan Kusoljittakorn 1.
Planing : ระบบการวางแผนงบประมาณ
การพัฒนาการเรียนรู้รายวิชาการโปรแกรมคอมพิวเตอร์ด้วย e-Learning
อาจารย์ วิทูร ธรรมธัชอารี. เนื้อหาในการเรียน  เครื่องมือในการออกแบบและพัฒนาระบบ บัญชีด้วยคอมพิวเตอร์  ความรู้เบื้องต้นเกี่ยวกับฐานข้อมูล  การวางระบบบัญชีด้วยคอมพิวเตอร์
Thai Quality Software (TQS)
2 การพัฒนาระบบสารสนเทศ (Information System Development)
Information System Development
บทที่ 5 ความต้องการ วิศวกรรมความต้องการ แบบจําลองการวิเคราะห์
การวิเคราะห์ซอฟต์แวร์
UML (Unified Modeling Language)
วิศวกรรมซอฟต์แวร์ (Software Engineering)
การออกแบบบทเรียนคอมพิวเตอร์
การพัฒนาระบบสารสนเทศ (Information System Development)
บทที่ 3 กระบวนการผลิตซอฟต์แวร์ (Software Process)
Introduction to Structured System Analysis and Design
ใบสำเนางานนำเสนอ:

การวิเคราะห์และออกแบบระบบ ฝ่ายประยุกต์เทคโนโลยี (APD) ศูนย์เทคโนโลยีอิเล็กทรอนิกส์และคอมพิวเตอร์แห่งชาติ (NECTEC) สำนักงานวิทยาศาสตร์และเทคโนโลยีแห่งชาติ (NSTDA)

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

ขั้นตอนในการพัฒนาระบบสารสนเทศ ( Software Development Life Cycle = SDLC ) ช่วงการเริ่มต้นโครงการ ศึกษาความเป็นไปได้ และความเหมาะสมในด้านต่างๆ ศึกษาระบบปัจจุบัน และ รวบรวมความต้องการ วิเคราะห์ และ ออกแบบระบบ การพัฒนาภายในเอง หรือ การจัดจ้างผู้ที่พัฒนาจากภายนอก การพัฒนา และการติดตั้งระบบ การใช้งาน และ งานการปฏิบัติการ การประเมินผล และการตรวจสอบ การดูแลรักษา และ การปรับปรุง ระบบ

Requirement Analysis Process Understanding Requirement Capture Developer Feasibility Study Requirement Statements Domain expert Validation Classification user Specification Document

implementation independent, Design Process Model of the system requirement specification Concrete, implementation dependent detailed architectural: skeletal system Abstract, implementation independent, general architecture Logical Design: Partition What does a component do? Relate components Detailed Design: Refinement How does a component do it? Design of the relationships

Software Process Models Waterfall Model V Model Prototyping Model Spiral Model Phased Development Model incremental development model iterative development model Operational Specification Model Transformation Model

Waterfall Model Requirements Analysis System Design Program Design Coding Unit & Integration Testing System Testing Acceptance Testing Operation & Maintenance Go Back to Previous Stage or Stop

V Model Operation & Maintenance Requirements Analysis Validate requirements Requirements Analysis Acceptance Testing System Design System Testing Verify design Program Design Unit & Integration Testing Coding

Prototyping Model List of Revisions List of Revisions List of revise prototype user/ customer review Prototype Requirements Prototype Design Prototype System Test System Requirements (sometimes informal or incomplete) Delivered System

Phased Development Model : incremental Requirements Analysis Arrange Requirements in Increments Design and Develop Increment NO Validate Increment Integrate Increment System OK YES

Phased Development Model : iterative Design System version N N = N + 1 NO System Complete Develop System version N Validate System version N YES

Operational Specification Model Execute and Revise Operational Specification (Problem-Oriented) Transformed Specification (Implementation- Oriented) Test System Requirements (sometimes informal or incomplete) Delivered System

Transformational Model Compare with requirements; update as needed Formal Development Record Sequence of transformations plus rationale for them Transform N Formal Specification Transform 2 Test Transform 1 System Requirements (sometimes informal or incomplete) Delivered System

Object-Oriented Systems Development Life Cycle Analysis Build a Use-Cases Model Object Validate/Test Iteration & Reuse Implementation Using TOOLS CASE and/or OO Programming Languages User Satisfaction Usability & QA Tests Design Design Classes, define Attributes and Methods Build Object and Dynamic Model Build User Interface and Prototype User Satisfaction Test, Usability Test, and Quality Assurance Test

แนวคิดและเทคโนโลยีของการพัฒนาระบบสารสนเทศ Structure Development Object-Oriented Development Identifying Objects Identifying Structures Defining Subjects Defining Attributes and Instance Connections Defining Operations and Message Connections

Object-Oriented Philosophy Encapsulation Information/Implementation Hiding State Retention Object Identity Messages Classes Inheritance Polymorphism Genericity

Unified Modeling Language (UML) ภาษามาตรฐานสำหรับการจำลองระบบสารสนเทศ ด้วยภาพ UML เป็นภาษาในการวาดแบบจำลองเพื่อจุดประสงค์ 4 ประการ จำลองด้วยภาพ (visualizing) แสดงข้อกำหนด (specifying) ช่วยสร้างระบบ (constructing) ช่วยบันทึก (documenting) ชิ้นงานในขั้นตอนต่างๆ ของการพัฒนาระบบสารสนเทศ

UML: Unified Modeling Language ไดอะแกรม 9 ชนิด อาจจัดแบ่งได้เป็น 2 กลุ่ม ส่วนที่ใช้อธิบายโครงสร้างนิ่งของระบบ (Static Structures) Use Case Diagrams Class Diagrams Object Diagrams Component Diagrams Deployment Diagrams ส่วนที่ใช้อธิบายพฤติกรรมที่เคลื่อนไหวของระบบ (Dynamic Behavior) Sequence Diagrams Collaboration Diagrams Activity Diagrams State Diagrams Interaction Diagrams = Sequence Diagrams, Collaboration Diagrams

ตัวอย่างประโยชน์ของไดอะแกรมใน UML Use Case Diagram ใช้เพื่อแสดงขอบเขตของระบบ และ ฟังก์ชั่นการทำงานหลักของระบบ Activity Diagrams ใช้เพื่ออธิบาย กระบวนการทำงานในภาพรวม หรือ กระบวนการในรายละเอียด Interaction Diagrams ใช้เพื่ออธิบายรายละเอียดของแต่ละ Use Case Class Diagrams & Object Diagrams ใช้เพื่ออธิบายโครงสร้างคงที่ของระบบสารสนเทศทั้งด้านข้อมูล และ กิจกรรมหลักที่กระทำกับข้อมูลนั้น State Transition Diagrams ใช้เพื่อการอธิบายสถานะที่เปลี่ยนแปลงไปในรายละเอียดของแต่ละ ออปเจค Component & deployment diagrams ใช้เพื่ออธิบายสถาปัตยกรรมของระบบในด้านกายภาพ

ขั้นตอนการรวบรวม และวิเคราะห์ความต้องการ “ความผิดพลาด ความไม่ครบถ้วนเป็นธรรมดาของมนุษย์” ดังนั้น ข้อเสนอ คือ ช่วยกันกำหนดความต้องการให้ชัดเจนตั้งแต่ขั้นตอนแรก และ ช่วยกันหาข้อผิดพลาดของระบบตั้งแต่ขั้นตอนแรก ของการพัฒนาระบบ ให้ความสำคัญ (เวลา บุคลากร งบประมาณ) เพื่อวิเคราะห์ออกแบบ เครื่องมือ เทคนิค เวลา บุคลากร งบประมาณ มาทุ่มที่ “ขั้นตอนการรวบรวม และ วิเคราะห์ความต้องการ” Cost ของ การแก้ไข เมื่อเจอ ข้อผิดพลาด เจอข้อผิดพลาด ที่ขั้นตอนไหน ของการพัฒนาระบบ Requirement – Analysis – Design – Implementation – Maintenance - Deployment

บทบาทผู้เกี่ยวข้อง และ สรุป เข้าใจความยากในการพัฒนาระบบสารสนเทศ และ หาทางอุดช่องโหว่ และ หาทางบรรเทาปัญหา ขั้นตอนการรวบรวมความต้องการงาน และ สรุป Software Requirement Specification ให้ชัดเจน การทำงานเป็นทีม การสื่อสาร และการสร้างความเข้าใจร่วม ภาษาสำหรับการสื่อสาร UML การสื่อสารด้วยภาพ (Visual Modeling) อ่านและตรวจสอบความถูกต้องของแบบ (พิมพ์เขียว) โดยเฉพาะอย่างยิ่ง Use Case Diagrams, Activity Diagrams, Sequence Diagrams, Class Diagrams

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