Ngôn ngữ mô hình hóa UML

16 671 5
Ngôn ngữ mô hình hóa UML

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Đề tài Ngơn ngữ mơ hình hóa UML I Xây dựng hệ thống phần mềm theo hướng đối tượng I.1 Các khái niệm công nghệ hướng đối tượng Hướng đối tượng công nghệ để sản sinh mơ hình phản ánh m ột cách t ự nhiên nghiệp vụ thực tế Xét cho quy trình nghi ệp v ụ th ực t ế đ ều s ự tương tác đối tượng theo trình tự nhằm đạt m ục đích c ụ th ể Nói cách khác, đối tượng mối quan hệ chúng phản ánh quy trình nghi ệp v ụ Ví d ụ nh nghiệp vụ tuyển nhân cho cơng ty tóm tắt qua chuỗi tương tác sau: Công ty đưa thông báo tuyển nhân tới ứng viên có nhu cầu Ứng viên gửi hồ sơ dự tuyển tới công ty Công ty duyệt hồ sơ gửi giấy hẹn vấn tới ứng viên Công ty vấn ứng viên Công ty ký hợp đồng với ứng viên từ chối Trong ví dụ có tham gia hai đối tượng “công ty” “ ứng viên” S ự trao đ ổi thông tin hai đối tượng cho thấy mối quan hệ phụ thuộc chúng (dependence) Một ví dụ khác hệ thống quản lý nhân có đ ối t ượng nh ư: nhân viên, quản lý,…cho thấy mối quan hệ dạng khác: nhân viên làm công việc qu ản lý t ất nhiên nhân viên công ty có thêm thu ộc tính riêng bi ệt – m ột quan h ệ k ế thừa (inheritance) Trong hệ thống bán hàng, đơn hàng bao gồm thơng tin v ề khách hàng, ngày giờ, …và danh mục mặt hàng Khi ta nói r ằng gi ữa đ ơn hàng m ặt hàng tồn quan hệ bao gồm (aggregation) Mục tiêu công nghệ hướng đối tượng th ể hi ện đ ược đ ối t ượng mối quan hệ chúng vào hệ thống phần mềm Vì vậy, hệ thống phần m ềm theo công nghệ hướng đối tượng phản ánh cách tự nhiên trung th ực nghi ệp v ụ th ực t ế có khả đáp ứng thay đổi dễ dàng Phát triển hệ thống phần mềm theo hướng đối tượng dựa khái ni ệm c bản: Lớp (class), đối tượng (object), thông ệp (mesage), th ừa k ế (inheritance) đa hình (polymorphism) Lớp trừu tượng hóa đối tượng thực tế theo ph ạm vi nghi ệp v ụ L ví d ụ v ề hệ thống quản lý sinh viên trường ĐHBK Hà Nội cần qu ản lý nhi ều đ ối t ượng sinh viên khác trừu tượng hóa thành lớp đối tượng có tên SinhVien chẳng hạn Sự trừu tượng hóa lớp đối tượng cho ta kết m ột tập thu ộc tính (attributes) hành vi (operations) đặc trưng cho đ ối t ượng thu ộc l ớp Đối tượng thực tế có vơ số thuộc tính hành vi ch ỉ thu ộc tính hành vi phạm vi nghiệp vụ xét đến Sự chi tiết phụ thuộc vào phạm vi nghiệp vụ Sự trừu tượng hóa diễn nhiều cấp độ Lấy ví dụ: lớp động vật có vú bao gồm l ớp động vật chân, lớp chân lại bao gồm lớp lớp mèo, lớp trâu,… Mỗi đối tượng biểu thực tế lớp object = name + attributes + operations Hệ thống hướng đối tượng mơ hình linh ho ạt, d ễ hiệu ch ỉnh, cài đặt dễ dàng ngôn ngữ hướng đối tượng Các h ệ th ống ph ần m ềm h ướng đối tượng cài đặt ngôn ngữ lập trình hướng đối tượng 13 Hướng đối tượng khơng lý thuyết mà đ ược ch ứng minh b ằng nh ững ứng dụng thành công thực tế nhiều lĩnh vực khác Tuy nhiên, lĩnh vực cần chuẩn hóa I.2 Quy trình chung phát triển hệ thống phần mềm Xây dựng hệ thống phần mềm hướng đối tượng tuân theo quy trình chung công nghệ khác: Requirements : Thu thập yêu cầu Analysis : Phân tích Design: Thiết kế Implementation: Cài đặt Test: Kiểm thử Deployment: Triển khai Theo nguyên tắc chung này, công ty lại ứng dụng công ngh ệ khác đ ể phát triển ứng dụng mơ hình water fall, mơ hình hướng chức năng,… I.3 Những thách thức ngành công nghiệp phần mềm Mặc dù ứng dụng cơng nghệ tiến tiến quy trình phát tri ển chuẩn hóa nh ưng ngành cơng nghiệp phần mềm phải đối mặt với thách thức: Sự gia tăng quy mô từ nhỏ đến lớn ứng dụng Sức ép thời gian hồn thành Sự phân tán khơng gian làm việc Đa dạng nội dung Sự thay đổi yêu cầu người sử dụng Những thách thức nói gắn liền với m ọi công ty ph ần m ềm đ ặc bi ệt Việt Nam, nơi mà vai trò q trình khảo sát, phân tích cịn b ị xem nhẹ nh cơng ty cịn bỡ ngỡ với mở rộng quy mô thi ếu nhân l ực chun mơn v ề phân tích thiết kế II Lịch sử phát triển ngôn ngữ mô hình hóa UML II.1 Tóm tắt lịch sử UML Những năm 1980 thời kỳ bùng nổ số lượng công ty ph ần m ềm s d ụng ngơn ngữ lập trình hướng đối tượng(Object Oriented Programming - OOP) đ ể xây d ựng ứng dụng Điều dẫn tới địi hỏi phải có quy trình làm phần mềm tiếp cận theo hướng phân tích thiết kế hướng đối tượng (Object Oriented Analyze and Design - OOAD) Nhi ều nhà nghiên cứu phương pháp có Booch, Rumbaugh Jacobson làm vi ệc đ ộc l ập đề xuất quy trình thỏa mãn yêu cầu Mỗi m ột quy trình có m ột t ập ký hi ệu mơ hình riêng để truyền đạt diễn tả kết phân tích thiết kế Vào đầu năm 1990, cơng ty khác nhau, chí phận khác công ty sử dụng quy trình khác Thêm vào đó, cơng ty l ại muốn sử dụng cơng cụ phần mềm hỗ trợ quy trình c h ọ Với nhi ều quy trình khác nhau, cơng ty phần mềm khó khăn việc cung cấp công c ụ Đi ều cho thấy việc cần thiết phải có quy trình với tập ký hiệu thống Năm 1994, James Rumbaugh hợp tác Grady Booch công ty phần m ềm Rational Software Corporation để xây dựng quy trình th ống d ựa k ết qu ả 14 người Sau Ivar Jacobson sớm gia nhập nhóm Năm 1996, nhóm cho xuất phiên UML tới cộng đồng phát tri ển ph ần m ềm yêu c ầu ph ản hồi Cũng thời gian đó, tổ chức có tên Object Management Group (OMG) m ời nhóm đệ trình ngơn ngữ mơ hình OMG tổ chức phi lợi nhuận chuyên xúc tiến việc sử dụng công nghệ hướng đối tượng ngành công nghi ệp phần m ềm thông qua vi ệc đ ưa hướng dẫn đặc tả OOP Các thành viên OMG ban đầu 3Com Corporation; American Airlines; Canon, Inc.; Data General; Hewlett-Packard; Philips Telecommunications N.V.; Sun Microsystems; Unisys Corporation Các tập đoàn lớn nh HP, IBM, Microsoft, Oracle Rational Software nhận thấy lợi ích c UML nhận l ời tài tr ợ cho d ự án UML OMG Năm 1997, OMG tiếp tục xem xét lại UML đ ến năm 2001 phiên UML 1.4 đời Hiện OMG phát hành tới phiên UML 2.0 nghiên c ứu phiên 2.1 II.2 Khái niệm UML UML – Unified Modeling Language ngôn ngữ dùng s đ mô hình th ống để mơ hình hệ thống phần mềm Mục đích UML là: • Trở thành ngơn ngữ mơ hình mà tất người làm mơ hình sử dụng • Tập trung hướng tới giải vấn đề tồn phát tri ển ph ần m ềm • Đơn giản mơ hình phần lớn ứng dụng • Nâng cao tính tái sử dụng thành phần hệ thống phần mềm • UML ngơn ngữ diễn tả, UML khơng phải quy trình Thuật ngữ “Unified” có ý nghĩa quan trọng, nói lên nguyên tắc UML: • Thống phương thức, ký hiệu, thuật ngữ • Gắn kết chu trình phát triển • Khơng phụ thuộc vào lĩnh vực ứng dụng • Khơng phụ thuộc vào ngơn ngữ lập trình mơi trường thực • Khơng phụ thuộc vào quy trình phát triển • Gắn kết chặt chẽ khái niệm nội hệ thống II.3 Đặc trưng UML Hiện nay, UML ngôn ngữ OMG chuẩn hóa đ ược đặc t ả rõ ràng T ất mơ hình, sơ đồ UML theo hướng đối tượng Các đặc tính UML bao gồm: • Mơ hình class (class diagrams) mô tả cấu trúc tĩnh c h ệ th ống m ối quan h ệ đối tượng • Mơ hình tương tác (interaction diagrams), mơ hình trạng thái (state diagrams), mơ hình hoạt động (activity diagrams) mô tả hành vi đ ộng c đ ối t ượng hệ thống thơng điệp chúng • Mơ hình Use-case mơ hình hoạt động mơ tả u c ầu lu ồng cơng việc hệ thống • Các mơ hình cấu trúc hỗn hợp (composite structure diagrams) mô t ả s ự h ợp tác đặc điểm cài đặt 15 • Mơ hình triển khai (deployment diagrams) mô tả việc triển khai phần m ềm môi trường xác định III Ngôn ngữ UML III.1 Các thành phần UML Xét khía cạnh ngơn ngữ diễn tả, UML có đầy đ ủ mơ hình s đ đ ể th ể hầu hêt khía cạnh hệ thống phần mềm Các thành phần c ngôn ngữ UML bao gồm: • Các Views (các hướng nhìn): Các view thể cách nhìn khác t ới h ệ thống Một hệ thống mơ tả sơ đồ Nhiều hướng nhìn khác cho ta nhiều sơ đồ mô tả đầy đủ hệ thống Các hướng nhìn liên kết ngơn ngữ mơ hình với quy trình đ ược ch ọn cho vi ệc phát tri ển hệ thống • • Các Diagrams (các sơ đồ): Các sơ đồ bao gồm phần tử hình v ẽ dùng để mô tả nôi dung View UML 2.0 bao gồm 13 loại sơ đồ khác Các Model Elements (các phần tử mơ hình): Các khái ni ệm sử dụng sơ đồ phần tử sơ đồ diễn tả khái ni ệm phổ bi ến c công nghệ hướng đối tượng class, object, message (thông ệp) m ối quan h ệ chúng bao gồm quan hệ dependence, inheritance aggregation M ột phần tử mơ hình sử dụng nhiều sơ đồ chúng có ý nghĩa ký hiệu giống 16 • Các General Mechanisms (các đặc tả chung m rộng): Mơ t ả thơng tin thích, ngữ nghĩa phần tử mơ hình, thuật ngữ III.2 Các hướng nhìn (view) Use-case view: Đây hướng nhìn mặt chức hệ thống thực hi ện tác nhân bên   Use  Cases                                             udPrimary                 HÖ   thèng    bán   hàng   qua m  ạng   Interrnet                                 Chän   hµng                                  Xem chi tiÕt                       s¶n   phÈm                           Kh¸ch    hµng                     Gưi th«ng CËp nhËt giá    hµng                                         tin ph¶n   håi                                                                                                 Đ ăng   ký        Lập  đ ơn m  ua              khách hàng Quản lý              danh   m  ôc                 hàng hóa Quản   trị  hÖ                             thèng Tr¶ lêi                    khách    hàng           CËp nhËt hµng                                                                 th«ng    tin                                                                                  Theo dõi Nhâ   n viên   kinh               đơ nhàng   doanh                                                                          mặ t hàng                                               Các nguyên tắc cho việc xây dựng use-case view là:  • Các   use-case      đ ượ  c hình   thành   trên   cơ sở nhìn   từ bên  ngoài    vào   trong   hệth ống  (out-> in)  • Các   use-case      ph  ải đầy đủ  , chúng    đượ  c tổng  hợp theo    ph  ươ   ng  pháp   đi từt ố  iđa   đến tối thiểu (ban đầu mở rộng tối đa use-case có th ể sau thu h ẹp l ại    theo   nhu   cầ  u khách    hàng)                                • Các use-case cần có tính độc lập tương đối để dễ tổ chức nhóm làm vi ệc có    tính   tái  sử  dụ  ng  cao                                  Bên cạnh sơ đồ, người làm mô hình sử dụng mơ tả b ằng văn chi ti ết cho    (text    detail)    M ỗ  imô  tả c ầnđảm  bả  o   thông   tin sau:                  use-case                                                                                                                      17                                                       Tên use-case Mục tiêu use-case Phạm vi use-case Các tác nhân Tiền điều kiện Dịng Dịng phụ Ngoại lệ Hậu điều kiện Sau ví dụ use-case text detail: Use-case: Địi tiền bồi thường Phạm vi: Cơng ty Bảo hiểm PCM Actor chính: Người địi bồi thường Dịng Người địi bồi thường gửi đơn u cầu với liệu chứng tai nạn Công ty bảo hiểm xác nhận người viết đơn có quyền lợi bảo hiểm hợp lệ Cơng ty bảo hiểm phân công cho đại lý xác minh trường hợp Đại lý đối chiếu tất chi tiết đơn theo sách b ảo hi ểm c công ty Công ty bảo hiểm trả tiền bảo hiểm Dòng phụ 1a Bằng chứng tai nạn không đầy đủ 1a1 Công ty bảo hiểm yêu cầu liệu thiếu 1a2 Người đòi bồi thường gửi lại liệu thiếu 2a Người đòi bồi thường khơng có sách bảo hiểm hợp lệ 2a1 Công ty bảo hiểm từ chối yêu cầu, nhắc nhở, ghi lại kết thúc xử lý vụ việc 3a Khơng có đại lý rảnh rỗi 3a1 (Cơng ty bảo hiểm làm trường hợp này???) 4a Vụ tai nạn vi phạm sách bảo hiểm 4a1 Công ty bảo hiểm từ chối yêu cầu, nhắc nhở, ghi lại kết thúc xử lý vụ việc 4b Vụ tai nạn vi phạm sách bảo hiểm nhỏ 4b1 Cơng ty bảo hiểm điều đình với người đòi bảo hiểm đồng ý trả bảo hiểm Trong trường hợp use-case phức tạp chưa đ ược mơ t ả rõ ràng, chúng có th ể tác thành use-case nhỏ theo hai dạng: • Include: use-case tách bao gồm use-case cách vơ điều kiện 18 uc Use Case Model Use Case Include Use Case Principal ã ôincludeằ Extend: use-case mi xy điều kiện xảy use-case uc Use Case Model Use Case Principal «extend» Use Case Extend Nói chung, use-case view giúp ta trả lời câu hỏi WHAT? hệ thống Logical views Đây hướng nhìn cho biết chức thi ết kế vào hệ th ống nh th ế (HOW?) thông qua việc mô tả cấu trúc tĩnh hành vi động hệ th ống Sau số sơ đồ quan trọng thường sử dụng Các cấu trúc tĩnh (static structure): Cấu trúc tĩnh mơ hình UML class diagrams Đây mơ hình khái niệm ứng dụng, đ ặc ểm n ội mối quan hệ chúng 19 Các khái niệm Classes Mơ hình hóa Attributes Operations Object Ví dụ mơ hình class: cd Jav a M odel                                                                                   Order            - date: Date deliveryInstructions:                          String          - orderNumber: String   «enumeration»            +  checkForOutstandingOrders()               :void     OrderStatus property get  enum           -status  +  getDate()      : Date              - closed: int + getDeliveryInstructions() : String - delivered: int + getLineItem()  -  dispatched:       int              :LineItem            + getOrderNumber() : String - new: int + getStatus() : OrderStatus  -  packed:     int       property     set                 + setDate(Date) : void              +  setDeliveryInstructions(String)               :void     + setLineItem(LineItem) : void              +  setOrderNumber(String)            : void        + setStatus(OrderStatus) : void              -account             Account                           - billingAddress: String closed: boolean   -  deliveryAddress:         String              -basket - emailAddress: String   -  name:    String                             + createNewAccount() : void           : void       +  loadAccountDetails() + markAccountClosed() : void             :void     +  retrieveAccountDetails() + submitNewAccountDetails() : void +  validateUser(String,           String)        property get + getBasket() : ShoppingBasket                    + getBillingAddress() : String + getClosed() : boolean           : String       +  getDeliveryAddress() + getEmailAddress() : String +  getName()      : String            + getOrder() : Order property     set               + setBasket(ShoppingBasket) : void + setBillingAddress(String) : void           : void       +  setClosed(boolean) + setDeliveryAddress(String) : void +  setEmailAddress(String)             : void     + setName(String) : void +  setOrder(Order)         :void                        -account      LineItem                  - quantity: int    property     get          + getItem() : StockItem    + getQuantity()       : int      property set    + setItem(StockItem)          : void   + setQuantity(int) : void                             -  Author:     string                   - catalogNumber: string  -  costPrice:      number                 -i tem - listPrice: number   -  title:   string                                                                                                                                                                                                           ShoppingBasket property get +  getAuthor()       : string          + getCatalogNumber() : string + getCostPrice()          : number         + getListPrice() : number + getTitle() : string                   property set + setAuthor(string) : void +  setCatalogNumber(string)              :void   + setCostPrice(number) : void +  setListPrice(number)           : void     + setTitle(string) : void                                                                    StockItem                            Transaction                 - shoppingBasketNumber: String - date: Date orderNumber:                               String              + addLineItem() : void + createNewBasket() : void + loadAccountHistory() : void + deleteItem()       : void               +  loadOpenOrders()         :void           + processOrder() : void property get property get                       +  getAccount()      : Account              + getLineItem() : LineItem + getDate() : Date property set +  getLineItem() : LineItem                                          + setLineItem(LineItem) : void + getOrderNumber() : String                                                                                           property set                                                     + setAccount(Account) : void -hi story + setDate(Date) : void                       +  setLineItem(LineItem)          : void                  + setOrderNumber(String) : void                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           Các hành vi động: State machine: 20 Đây mơ hình mơ tả việc chuyển đổi trạng thái đối tượng trình tham gia hoạt động nghiệp vụ hệ thống Trạng thái đối tượng bị thay đổi b ởi m ột hành vi Sơ đồ hành động (activity diagrams): Đây sơ đồ mô tả luồng nghiệp vụ hệ thống 21 Sơ đồ tương tác (interaction diagram): Đây sơ đồ mô tả tương tác đối tượng theo trình tự thời gian (cịn gọi sequence diagram) Các sơ đ sequence có th ể đ ược mơ tả mức hệ thống (Sequence System – có user tương tác với h ệ th ống) ho ặc m ức chi tiết (Sequence Detail – Các đối tượng thơng điệp chúng định hình): 22    sd  Sequence               V              C              M                                                                        Khach     mua          DangKy         hang Page    AccountUtilities               AccountTable                        Nhap  thong   tin dang   ky                                                                                                                                   DangKyKhachHang()                                                                                                                                          Click "Dang Ky" XacNhanThongT inDangKy()                                                          sd  MuaHang V M C                                                          Khach Hang TrangChu TrangDanhMucSanPham SanPhamUtilities SanPhamTable                                                          Chon xem san pham theo hang                                                          Redirect                              LayDanhSachSanPham                                                                                                                                              HienThi                                                                                                                        Các   class   trong   hệ th  ống  đượ  c chia   thành  ba lo ạ itách  bi ệt: M  (Model)     – V(View)    –C              (Control) Các class V chịu trách nhiệm hiển thị giao diện tương tác với người sử d ụng, c mơ hình hóa từ thơng tin đ ối tượ quản lý khicác   class   M lưu trữ  dữ li ệ uđượ  ng  trong  class C       ệutừ M  đượ  cđưa tớigiao  di  ệ n V  ư th ế nào hoặc xử  lý  yêu nơi đi ều khi ển việc dữ li nh V sau cập nh ậtvào M   cầu từ  Sơ đồ triển khai  (Deployment        Diagram)      :                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      23                                                                                                                   III.3 Ứng dụng UML quy trình làm phần mềm Như trình bày trên, UML túy ngơn ngữ mơ hình Các cơng ty phần mềm khác ứng dụng UML sử d ụng quy trình phát tri ển khác 24 Sơ đồ cho thấy trình tự sử dụng mơ hình UML để xây d ựng m ột ứng dụng Xuất phát từ ý tưởng ban đầu túy mang tính nghi ệp v ụ, b ước ti ếp theo c ần làm song song xây dựng mơ hình use-case vẽ phác thảo giao di ện chương trình Ti ếp theo xây dựng mơ hình sequence system thơng qua giao diện ta bi ết user tương tác v ới system Sau xây dựng mơ hình class mức phác thảo, sơ đ tr ạng thái s đ hành động Đến ta biết user tương tác với cụ thể đối tượng c system thông điệp đối tượng từ mơ hình class Đây c sở để xây dựng sequence detail hoàn chỉnh mơ hình class với quan hệ đầy đủ Theo quan điểm phân tích thiết kế UML việc lập trình rõ ràng khơng ch ỉ bắt đầu cài đặt class sequence detail m ột ngơn ngữ lập trình mà th ực t ế lập trình từ xây dựng mơ hình use-case viết text detail cho Nh v ậy việc lập trình cài đặt tiến hành sau cac mơ hình hồn tất Trong q trình xây dựng mơ hình cần liên tục tiếp xúc với khách hàng đ ể đảm bảo tính xác c mơ hình Một mơ hình tài liệu đặc tả hồn ch ỉnh, vi ệc coding th ực s ự ch ỉ chi ếm khoảng 20% tổng số thời gian Sau số công cụ giúp sử dụng UML phát triển hệ thống phần mềm: 25 IV Quy trình Rational Unified Process (RUP) phát triển phần mềm dựa UML IV.1 Giới thiệu RUP Trong số quy trình nay, RUP phát triển b ởi công ty Rational Software sử dụng phổ biến Lịch sử: RUP phối hợp cách tiếp cận công nghệ h ướng đ ối t ượng c Rational năm 1980s 1990s với công nghệ xử lý đối tượng Ival Jarcobson Phiên RUP version 7.0 phát hành 2005 Động phát triển RUP tìm nguyên nhân lỗi phần mềm tìm cách kh ắc phục chúng thơng qua quy trình IV.2 Các ngun tắc RUP: 1- Tn thủ tiến trình (Adapt the process) 2- Cân ưu tiên stakeholder (Balance stackeholder priorities) Stakeholder người đưa ý kiến có ảnh hưởng lớn tới tư tưởng thiết kế hệ thống 3- Cộng tác nhóm (Collaborate across teams) 4- Thể kết theo quy trình lặp (Demonstrate value iteratively) K ết thúc m ỗi quy trình cần theo dõi kết kiểm tra chặt chẽ 5- Nâng cao mức độ trừu tượng (Elevate the level of abstraction) 6- Tập trung theo dõi chất lượng liên tục (Focus continuously on quality) IV.3 Vòng đời phần mềm theo quy trình RUP Trong vịng đời phần mềm, có pha: Inception, Elaboration, Construction Transition Biểu đồ cho biết trình tự pha lượng tài nguyên sử dụng cho pha • Inception: Đây giai đoạn chuẩn bị, tiếp xúc với khách hàng để n ắm bắt ý tưởng thu thập yêu cầu, chuẩn bị nhân lực, vật tư kỹ thuật • Elaboration: Sau thu thập yêu cầu pha thiết kế phác thảo sử dụng sơ đồ UML để mơ hình hóa yêu c ầu, quy trình nghi ệp v ụ ứng dụng,… • Construction: Pha xây dựng hệ thống yêu c ầu sử d ụng nhi ều nhân l ực, tài nguyên công ty Các công việc thiết kế chi tiết, cài đặt, ki ểm thử,… tiến hành pha 26 • Transition: Pha chuyển giao cho khách hàng Một biểu đồ khác chi tiết cho ta thấy các giai đo ạn phát triển đ ược ti ến hành mức độ sử dụng tài nguyên chúng pha theo nguyên tắc chung Các giai đoạn công việc RUP bao gồm: • Mơ hình hóa nghiệp vụ (business modeling): mơ tả cấu trúc quy trình nghi ệp vụ • Xác định u cầu (requirement): mơ tả nghiệp vụ ph ương pháp “tình sử dụng” (use case base method) • Phân tích thiết kế (analysis & design): mô tả kiến trúc h ệ th ống thơng qua sơ đồ phân tích thiết kế • Lập trình (Implement): thực việc xây dựng chương trình ngơn ngữ lập trình • Thử nghiệm (Test): mơ tả tình kịch thử nghiệm, tiến hành thử nghiệm hệ thống phần mềm • Triển khai (Deployment): đưa hệ thống phần mềm vào sử dụng • Quản trị cấu hình quản trị thay đổi (Configuration & Change Management): kiểm soát thay đổi trì hợp thành phần dự án • Quản trị dự án: quản lý tồn q trình làm việc dự án • Đảm bảo môi trường: đảm bảo hạ tầng cần thiết để phát triển hệ thống 27 IV.4 Các công cụ RUP Để áp dụng quy trình phát triển hệ thống phần mềm Rational u c ầu khơng thể thiếu hệ thống phần mềm công cụ hỗ trợ Hãng Rational xây dựng hệ thống công cụ vậy, mà tiêu biểu thường dùng là: • Phần mềm Rational Requisite Pro: cho phép phân tích yêu c ầu, xây d ựng k ế hoạch thực hiện, xác định tác nhân hệ thống tình sử dụng • Phần mềm Rational Rose: cho phép xây dựng mơ hình phân tích, thi ết k ế, triển khai Phần mềm Rational XDE: cho phép vừa xây dựng mơ hình v ừa k ết sinh mà nguồn chương trình song song với • Phần mềm Rational Clear Case: quản trị dự án phân tích thiết kế, cho phép làm việc theo nhóm Bài tập Xây dựng mơ hình use-case cho hệ thống quản lý việc mượn trả sách th viện Hãy tiết text detail xây dựng mơ hình sequence system cho use-case : “M ượn sách” “Trả sách” Hãy mơ tả quy trình ứng dụng UML phát triển hệ thống phần mềm 28 ... II.2 Khái niệm UML UML – Unified Modeling Language ngôn ngữ dùng s đ mơ hình th ống để mơ hình hệ thống phần mềm Mục đích UML là: • Trở thành ngơn ngữ mơ hình mà tất người làm mơ hình sử dụng • Tập... ềm môi trường xác định III Ngôn ngữ UML III.1 Các thành phần UML Xét khía cạnh ngơn ngữ diễn tả, UML có đầy đ ủ mơ hình s đ đ ể th ể hầu hêt khía cạnh hệ thống phần mềm Các thành phần c ngơn ngữ. .. UML quy trình làm phần mềm Như trình bày trên, UML túy ngôn ngữ mô hình Các cơng ty phần mềm khác ứng dụng UML sử d ụng quy trình phát tri ển khác 24 Sơ đồ cho thấy trình tự sử dụng mơ hình UML

Ngày đăng: 30/09/2013, 09:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan