UML ประกอบด้วย 3 ส่วนหลักคือ Things, Relationships และ Diagrams
- ส่วน Things แบ่ง 4 ประเภท คือ Structural things, Behavioral things, Group things และ An notational things
- ส่วน Relationships แบ่ง 3 ประเภท คือ Meaning, Structural และ Generalized/Specialized
- ส่วน Diagrams แบ่ง 6 ประเภท คือ Use case, Static structure, Interaction, State, Activity และ Implementation What is uml? UML คือ โมเดลมาตรฐานที่ใช้หลักการออกแบบ OOP(Object oriented programming) รูปแบบของภาษา UML จะมี Notation ซึ่งเป็นสัญลักษณ์ที่นำไปใช้ใน Model ต่างๆ UMLจะมีข้อกำหนดกฎระเบียบต่างๆ ในการโปรแกรม โดยกฎระเบียบต่างๆ จะมีความหมายต่อการเขียนโปรแกรม(Coding) ดังนั้นการใช้ UML จะต้องทราบความหมายของ Notation ต่างๆ เช่น Generalize, association dependency class และ package สิ่งเหล่านี้มีความจำเป็นอย่างยิ่งต่อการตีความของการออกแบบและ Design ระบบ ก่อนนำไป Implement ระบบงานจริง ในปัจจุบันมีเครื่องมือมากมายที่สามารถแปลง Model UML เป็น Coding ภาษาต่างๆ เช่น Java, Power builder และ VB เป็นต้น
Visual Modeling : Visual modeling join the business people and the computer people meet the appropriate point
Use case Driven
กระบวนการการพัฒนาโครงการใดๆ นั้นมีวัตถุประสงค์เพื่อทำการสนับสนุนการทำงานของ User เป็นหลัก หรือ สนับสนุนความต้องการของผู้ใช้ ทั้งนี้ User ไม่ได้หมายถึงคนเพียงอย่างเดียว อาจจะหมายถึง ระบบอื่นที่อยู่ภายนอกระบบก็ได้ (Some one or something such as other system out side the system) User จะมีการกระทำกิจกรรมใดๆ ต่อ ระบบ เช่น การสอดบัตรพลาสติกลงในเครื่องอ่านบัตร การกดปุ่มตอบสนองต่อหน้าจอที่ปรากฏต่อผู้ใช้ การใช้งานเครื่อง Automatic Teller Machine (ATM) และ การรับเงินที่เครื่องส่งออกมา โดย ATM หรือระบบจะมีการสร้างลำดับของงานขึ้นมาก่อน จากนั้นจึงส่งผลลัพธ์ให้ User หรือผู้ใช้
วัตถุประสงค์ของ Analysis model
1. ต้องการแยกการวิเคราะห์ระบบ 2. ต้องการภาพรวมของระบบ(Integrated part) 3. ต้องการทราบวิธีการอื่น(ถ้ามี) (Alternative Solution) 4. ศึกษาเพื่อสร้างระบบที่เกี่ยวข้องกับระบบ หรือสิ่งที่มีอยู่แล้ว( Legacy system)
5 มุมมองหลักของ UML
• Use-case view : หน้าที่การทำงานของระบบซอฟต์แวร์ โดยพิจารณาจากมุมมองของผู้ใช้ภายนอก หรือ ระบบภายนอก use-case diagram • Logical view : หน้าที่การทำงานของระบบมีโครงสร้างอย่างไร มองในรูปของ static structure และdynamic behavior class diagram, object diagram, state, sequence, collaboration, activity diagrams • Component view : องค์ประกอบย่อยในการ implement ที่ประกอบเป็นระบบ และ dependency ระหว่างองค์ประกอบเหล่านั้น component diagram • Concurrency view: การแบ่งแยก process และ processors โดยพิจารณาทั้ง communication และ synchronization dynamic diagrams (state, sequence, collaboration activity) implementation diagrams(component และ deployment) • Deployment view : โครงสร้างทางกายภาพเกี่ยวกับ การติดตั้ง และใช้งานระบบ deployment diagram
Software Performance
UML ถูกนำมาใช้เพื่อสนับสนุนการทำ Software Performance โดยมีลักษณะการพัฒนาที่ต้องการดังนี้ คือ 1. Shortest Development life cycle 2. Increase productivity 3. Improve software quality 4. Support legacy system 5. Improve team connectivity
Brief history of UML
เกิดจากการรวมเอาข้อดีของ 3 แนวคิดมารวมกัน กล่าวคือ 1. Grady Booch - Booch method 2. Jame Rumbough - Object modeling Techniques(OMT) 3. Ivar Jacobson - Object Oriented Software Engineer(OOSE)
โดยทั้ง 3 คน ได้ร่วมกันทำงานในบริษัท Rational Rose Corporation
Why UML
1. UML สามารถแสดงส่วนประกอบในการสร้างโปรเจคในรูปของ OOP 2. เชื่อมแนวคิดกับการออกแบบระบบโดยใช้ Object Oriented Code 3. ง่ายต่อการทำความเข้าใจและสามารถแปลงเป็น Code program ได้