1. Trang chủ
  2. » Giáo Dục - Đào Tạo

mô hình hóa phần mềm

51 439 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 51
Dung lượng 2,07 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nguyễn Thị Minh Tuyền Nhập môn CNPM Mô hình hóa hệ thống system modeling v Là quy trình phát triển các mô hình trừu tượng của một hệ thống, trong đó mỗi mô hình biểu diễn một góc nh

Trang 1

Nguyễn Thị Minh Tuyền

Mô hình hóa phần mềm

Nội dung của slide này dựa vào các slides của Ian Sommerville

Trang 2

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Trang 3

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Mô hình hóa hệ thống (system

modeling)

v Là quy trình phát triển các mô hình trừu

tượng của một hệ thống, trong đó mỗi mô

hình biểu diễn một góc nhìn

v Hiện nay mô hình hóa hệ thống đã trở

thành một phương tiện để biểu diễn một hệ thống sử dụng một số ký hiệu đồ họa UML

(Unified Modeling Language)

Trang 4

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Mô hình cho hệ thống đã tồn tại và

cho hệ thống mới

v  Các mô hình của những hệ thống đã có sẵn

yếu của nó Từ đó sẽ tìm ra những yêu cầu cho hệ thống mới

v  Các mô hình cho hệ thống mới

thống

viết tài liệu hệ thống cho phần cài đặt

v  Quy trình công nghệ hướng mô hình (model-driven

engineering process) có thể phát sinh một phần hay

toàn bộ cài đặt hệ thống từ mô hình hệ thống

4

Trang 5

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Các góc nhìn hệ thống

5

• Mô hình hóa tổ chức

của một hệ thống hay cấu trúc của dữ liệu được xử lý bởi

hệ thống

• Mô hình hóa hành vi

động của hệ thống

và cách nó trả lời sự

kiện như thế nào

• Mô hình hóa tương

tác giữa một hệ thống và môi trường của nó, hoặc giữa các component của một hệ thống

• Mô hình hóa ngữ

cảnh hay môi trường

của hệ thống

external perspective perspective interaction

structural perspective

behavioral perspective

System

Trang 6

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Các loại biểu đồ UML

6

Biểu đồ hoạt động (activity diagram)

• Chỉ ra các hoạt động trong một quy trình hay trong việc xử lý dữ liệu

Biểu đồ use case (use case diagram)

• Chỉ ra các tương tác giữa một hệ thống và môi trường của nó

Biểu đồ tuần tự (sequence diagram)

• Chỉ ra các tương tác giữa các actor và hệ thống, và giữa các component của

hệ thống với nhau

Biểu đồ lớp (class diagram)

• Chỉ ra các lớp đối tượng trong hệ thống và các quan hệ giữa các lớp này

Biểu đồ trạng thái (state diagram)

• Chỉ ra hệ thống tương tác với các sự kiện bên trong và bên ngoài như thế

nào

UML có nhiều loại biểu đồ hỗ trợ cho việc tạo ra nhiều loại mô hình hệ thống khác nhau

Có 5 loại sau đây có thể biểu diễn được các yếu tố cần thiết của một hệ thống

Trang 7

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Cách sử dụng các mô hình đồ họa

v Là phương tiện để thảo luận về hệ thống có

sẵn hoặc hệ thống đề ra

thể chấp nhận vì vai trò của chúng là để hỗ trợ việc thảo luận

v Là một cách để viết tài liệu về hệ thống có sẵn

chính xác nhưng không cần đầy đủ

v Là một mô tả chi tiết về hệ thống, có thể được

sử dụng để phát sinh việc cài đặt hệ thống

7

Trang 8

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Trang 9

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Mô hình ngữ cảnh (context model)

v   Được dùng để minh họa cho ngữ cảnh

vận hành của một hệ thống

§   Chỉ ra cái nào nằm bên trong hệ thống, cái nào nằm bên ngoài hệ thống

v   Các vấn đề về xã hội và tổ chức có thể ảnh hưởng đến quyết định đưa ra vị trí đường ranh giới hệ thống

v   Các mô hình kiến trúc chỉ ra kiến trúc

của hệ thống và mối quan hệ của nó với các hệ thống khác

9

Trang 10

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Ranh giới hệ thống

v Các ranh giới hệ thống được thiết lập để định nghĩa cái gì ở bên trong và cái gì ở bên ngoài

hệ thống

thống đang xây dựng như thế nào

v Vị trí của đường ranh giới hệ thống có ảnh

hưởng sâu sắc đến yêu cầu hệ thống

v Định nghĩa một đường ranh giới hệ thống là

một quyết định liên quan đến chính trị

cho có thể làm tăng/giảm ảnh hưởng hoặc tăng giảm dòng công

việc của các bộ phận khác nhau trong một tổ chức

10

Trang 11

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Appointments System

Trang 12

Ngữ cảnh của một hệ thống ATM

Nguyễn Thị Minh Tuyền 12

ATM System

Trang 13

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Góc nhìn về mặt quy trình

v Các mô hình ngữ cảnh

môi trường đó

v Các mô hình quy trình làm nổi rõ việc hệ thống đang phát triển được sử dụng trong các quy

trình thương mại như thế nào

v Các biểu đồ hoạt động UML có thể được dùng

để định nghĩa các mô hình quy trình thương

mại (business process model)

13

Trang 14

Mô hình quy trình của việc giam giữ bắt buộc đối với bệnh nhân

Transfer to police station

Transfer to secure hospital

Inform next

of kin

Inform social care Inform

patient of rights

Update register

«system»

Admissions system

[dangerous]

[not available]

[not dangerous]

[available]

14

Trang 15

Mô hình quy trình mua thiết bị

Nguyễn Thị Minh Tuyền 15

Get cost estimates

Accept delivery of equipment

Check delivered items

Validate specification

Specify

equipment

r equired

Choose supplier

Place equipment

or der

Install equipment

Find suppliers

Supplier

database

Accept delivered equipment

Equipment database

Equipment spec

Check ed spec

Deli v ery note

Delivery note

Order notification

Installation instructions

Installation acceptance

Equipment details

Check ed and signed or der f or m

Order details plus blank order

f orm

Spec + supplier + estimate Supplier list

Equipment

spec

Trang 16

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Trang 17

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Mô hình tương tác

v Mô hình tương tác người dùng là quan trọng vì

nó hỗ trợ việc nhận diện các yêu cầu người

dùng

v Mô hình hóa tương tác của một hệ thống với hệ thống khác làm nổi rõ các vấn đề về mặt giao tiếp có thể phát sinh

v Mô hình hóa tương tác component giúp ta hiểu liệu một cấu trúc hệ thống được đưa ra có đáp ứng được hiệu năng và độ tin cậy của hệ thống hay không

v Có thể sử dụng biểu đồ use case và biểu đồ

tuần tự để mô hình hóa tương tác

17

Trang 18

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Mô hình hóa use case

v   Về nguồn gốc, các use case được phát

triển để hỗ trợ cho việc thu thập yêu

cầu và hiện nay nó được tích hợp vào

trong UML

v   Mỗi use case biểu diễn một tác vụ rời

rạc và chứa tương tác bên ngoài với một

hệ thống

v   Các actor trong một use case có thể là người hoặc các hệ thống khác

18

Trang 19

Nguyễn Thị Minh Tuyền Nhập môn CNPM

MHC-PMS: Truyền dữ liệu

v   Một use case trong hệ thống MHC-PMS

Medical receptionist Patient record system

Transfer data

19

Trang 20

Bảng mô tả

MHC-PMS: truyền dữ liệu

System (hệ thống hồ sơ bệnh nhân PRS)

tới CSDL hồ sơ bệnh nhân Thông tin được truyền có thể là thông tin bổ sung về bệnh nhân (địa chỉ, số điện thoại, .) hoặc một bản tóm tắt về các triệu chứng và việc điều trị của bệnh nhân

điều trị

cập vào thông tin bệnh nhân và PRS

20

Trang 21

Các use cases về tương tác của

‘Medical Receptionist’

Medical receptionist

Register patient

Transfer data

Contact patient

View patient info.

Unregister patient

21

Trang 22

Nguyễn Thị Minh Tuyền Nhập môn CNPM

trường hợp của use case

v Các đối tượng và các actor liên quan được liệt

kê ở phía trên biểu đồ, với một đường nét đứt

vẽ theo chiều đứng từ các đối tượng này

v Các tương tác giữa các đối tượng này được

bằng những đường mũi tên có chú thích

22

Trang 23

Biểu đồ tuần tự để xem thông tin

chu kỳ sống (lifeline) của đối tượng

thông điệp

(message)

thông điệp trả

về (return message) điều kiện

Trang 24

Biểu đồ tuần tự để truyền dữ liệu

P: PatientInfo

login ( ) D: MHCPMS-DB AS: Authorization

authorization [sendInfo]

summarize (UID )

authorize (TF, UID)

authorization authorize (TF, UID)

:summary update (PID) UpdateSummary( )

logout ( )

alt

update OK Message (OK)

24

Trang 25

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Trang 26

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Mô hình cấu trúc

v Các mô hình cấu trúc của phần mềm hiển thị cấu trúc của một hệ thống về các component tạo nên hệ thống đó và mối quan hệ của

chúng

v Các mô hình cấu trúc có thể là

kế hệ thống,

của hệ thống khi nó được thực thi

v Tạo ra các mô hình cấu trúc của một hệ thống khi thảo luận và thiết kế kiến trúc hệ thống

26

Trang 27

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Biểu đồ lớp (class diagram)

v  Được sử dụng khi phát triển một mô hình hệ

thống hướng đối tượng để chỉ ra

v  Một lớp đối tượng có thể được xem như một định nghĩa tổng quát về một loại đối tượng hệ thống

v Một kết hợp (association) là một liên kết giữa

các lớp mà nó chỉ ra rằng có một quan hệ giữa

những lớp này

v Khi đang phát triển các mô hình trong những giai đoạn đầu của quy trình công nghệ phần mềm

dụ như bệnh nhân, đơn thuốc, bác sĩ, …

27

Trang 29

Các lớp và các kết hợp trong hệ thống MHC-PMS

Patient practitionerGeneral

Consultation

Consultant

Medication

Treatment Hospital

diagnosed-attends

prescribes

prescribes runs

Trang 30

Lớp Consultation

Consultation

Doctors Date Time Clinic Reason Medication prescribed Treatment prescribed Voice notes

Transcript

New ( ) Prescribe ( ) RecordNotes ( ) Transcribe ( )

30

Tên lớp

Thuộc tính

Thao tác

Trang 31

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Tổng quát hóa ( Generalization )

v Tổng quát hóa là một kỹ thuật mà ta thường

v Cho phép suy luận ra rằng các thành phần

khác nhau của những lớp này có một số điểm chung

31

Trang 32

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Tổng quát hóa

v  Trong các hệ thống mô hình hóa, việc kiểm tra các lớp trong một hệ thống để xem có thể tổng quát hóa

những lớp này được hay không

cùng một chỗ

v  Trong ngôn ngữ hướng đối tượng như Java chẳng hạn, tổng quát hóa được cài đặt sử dụng cơ chế kế thừa

được tích hợp trong ngôn ngữ

v  Trong một tổng quát hóa, các thuộc tính và thao tác

liên quan với các lớp ở mức cao hơn cũng liên quan đến các lớp ở mức thấp hơn

v  Các lớp ở mức thấp hơn là các lớp con (subclass) kế

thừa các thuộc tính và thao tác từ lớp cha

(superclass) Những lớp ở mức thấp hơn sau đó có thể thêm vào các thuộc tính và thao tác cụ thể hơn

32

Trang 33

Một hệ thống phân cấp tổng quát hóa

Doctor

General practitioner

Hospital doctor

Consultant Team doctor

Trainee doctor Qualifieddoctor

33

Doctor là superclass của Hospital

doctor và General practitioner

Lớp General practitioner là subclass của lớp Doctor

Trang 34

Một cây phân cấp chi tiết hơn

Doctor

General practitioner Hospital doctor

Name Phone # Email

register ( ) de-register ( )

Staff # Pager #

Practice Address

34

Trang 35

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Mô hình cộng gộp lớp đối tượng

v   Một mô hình cộng gộp (aggregation

model) chỉ ra cách mà các lớp được tập hợp lại thành các lớp khác

v   Các mô hình cộng gộp tương tự như

quan hệ part-of trong các mô hình dữ

liệu ngữ nghĩa

35

Trang 37

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Trang 38

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Mô hình hành vi ( b ehavioral model)

v   Là các mô hình hành vi động (dynamic behavior) của một hệ thống khi nó đang thực thi

v   Các mô hình này chỉ ra cái gì xảy ra

hoặc cái gì được giả định là xảy ra khi

một hệ thống trả lời một tác động

(stimuli) từ môi trường

v   Có hai loại tác động mà ta đề cập đến:

§  Dữ liệu Một số dữ liệu đến mà hệ thống phải xử lý

§  Events Một số sự kiện xảy ra làm kích hoạt việc xử lý của hệ thống

38

Trang 39

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Mô hình hướng dữ liệu

v Nhiều hệ thống doanh nghiệp là hệ thống xử lý

dữ liệu Những hệ thống này được điều khiển bởi dữ liệu đầu vào của hệ thống, với việc xử lý khá ít các sự kiện bên ngoài

v Mô hình hướng dữ liệu chỉ ra một chuỗi tuần tự các hành động gồm việc xử lý dữ liệu đầu vào

và phát sinh đầu ra tương ứng

v Những mô hình này đặc biệt hữu ích trong suốt quá trình phân tích yêu cầu vì chúng có thể chỉ

ra được việc xử lý end-to-end trong một hệ

thống

39

Trang 40

Mô hình hoạt động của máy bơm

insulin

Calculate pump commands

Pump control commands

Insulin requirement

Get sensor value

Sensor data

Compute sugar level

Calculate insulin delivery

Control pump

Trang 41

Xử lý đơn đặt hàng

:Order Fillin ( )

Trang 42

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Mô hình hướng sự kiện

v Các hệ thống thời gian thực thường là những

hệ thống hướng sự kiện, với việc xử lý dữ liệu cực tiểu

sự kiện như ‘receiver off hook’ bằng việc phát sinh

chuông

v Mô hình hướng sự kiện chỉ ra cách một hệ

thống trả lời các sự kiện bên trong và bên

Trang 43

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Mô hình máy trạng thái

v Mô hình hóa hành vi của hệ thống để trả lời

các sự kiện bên trong và bên ngoài

v Chỉ ra các trả lời của hệ thống đối với sự kiện

vì vậy thường được sử dụng để mô hình hóa

các hệ thống thời gian thực

v Các mô hình máy trạng thái (state machine

model) chỉ ra các trạng thái của hệ thống như

là các nút và sự kiện như là một cung giữa các nút đó Khi một sự kiện xảy ra, hệ thống

chuyển từ trạng thái này sang trạng thái khác

v Biểu đồ trạng thái là một phần của UML và

được dùng để biểu diễn các mô hình máy trạng thái

43

Trang 44

Biểu đồ trạng thái của một lò vi ba

Full power

Enabled

do: operate oven

Full power

Half

power

Half power

Full power

Number

Door open

Door closed

Door closed

Door open Start

do: set power

= 600

Half power do: set power

= 300

Set time do: get number exit: set time

Disabled

Operation

Cancel

Waiting do: display time

Waiting do: display time

do: display 'Ready'

do: display 'Waiting'

Trang 45

Trạng thái của lò vi ba (a)

Trạng thái Mô tả

Half power Nguồn được thiết lập ở mức 300 watts Màn hình hiển thị ‘Half

power’

Full power Nguồn được thiết lập ở mức 600 watts Màn hình hiển thị ‘Full

power’

Set time Thời gian nấu được thiết lập bởi giá trị đầu vào của người dùng

Màn hình hiển thị thời gian nấu đã được chọn và cập nhật lại thời gian người dùng đã thiết lập

sáng Màn hình hiển thị ‘Not ready’

lò tắt Màn hình hiển thị ‘Ready to cook’

Operation Lò đang ở trạng thái hoạt động Đèn trong lò bật sáng Màn hình

hiển thị bộ đếm lùi Khi nấu xong, có một tiếng buzz trong 5s Đèn trong lò bật sáng Màn hình hiển thị ‘Cooking complete’ khi đang có tiếng buzz

45

Trang 46

Các tác động vào lò vi ba (b)

Tác động Mô tả

gian

46

Trang 47

Hoạt động của lò vi ba

Cook do: run generator

Done do: buzzer on for 5 secs.

Waiting

Alarm do: display event

do: check status Checking

Turntable fault

Emitter fault

Disabled

OK

Timeout Time

Door open CancelOperation

47

Trang 48

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Tổng kết

v   Mô hình là góc nhìn trừu tượng của một hệ thống

mà nó bỏ qua các chi tiết của hệ thống Các mô

hình hệ thống được sử dụng để chỉ ra ngữ cảnh,

tương tác, cấu trúc và hành vi của hệ thống

v   Mô hình ngữ cảnh hỗ trợ việc định nghĩa ranh giới của hệ thống được phát triển và môi trường mà nó thực thi trong đó

v   Biểu đồ use case và biểu đồ tuần tự được dùng để

mô tả tương tác giữa người dùng và hệ thống đang được thiết kế

bên ngoài;

cách chỉ ra tương tác giữa các đối tượng hệ thống

48

Trang 49

Nguyễn Thị Minh Tuyền Nhập môn CNPM

Tổng kết

v   Mô hình cấu trúc chỉ ra tổ chức và thiết kế của một

hệ thống Biểu đồ lớp được dùng để định nghĩa cấu trúc tĩnh của các lớp trong hệ thống và mối quan

hệ của chúng

v   Mô hình hành vi được dùng để mô tả hành vi động của hệ thống đang thực thi Hành vi này có thể

được mô hình hóa từ góc nhìn của dữ liệu được xử

lý bởi hệ thống, hoặc bằng sự kiện mà nó kích thích việc trả lời từ một hệ thống

v   Biểu đồ hoạt động có thể được dùng để mô hình

hóa quy trình xử lý dữ liệu, trong đó mỗi hoạt động biểu diễn một bước của quy trình

v   Biểu đồ trạng thái được dùng để mô hình hoá hành

vi của hệ thống để trả lời các sự kiện bên trong và bên ngoài

49

Ngày đăng: 26/10/2016, 06:46

HÌNH ẢNH LIÊN QUAN

Hình biểu diễn một góc nhìn. - mô hình hóa phần mềm
Hình bi ểu diễn một góc nhìn (Trang 3)
Hình hệ thống được sử dụng để chỉ ra ngữ cảnh, - mô hình hóa phần mềm
Hình h ệ thống được sử dụng để chỉ ra ngữ cảnh, (Trang 48)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w