XÂY DỰNG
HỆ THỐNG NHÚNG
CƠ BẢN
GV: Nguyễn Ngọc Tú
Email:
Bài 04: Thiết kế -cài đặt các hệ thống nhúng
NNTu
Hệ Thống Nhúng (Spring 2008)
2
Nội dung
Phương pháp luận thiết kế
Luồng thiết kế
Phân hoạch HW/SW
Phân tích yêu cầu và đặc tả
Ngôn ngữ đặc tả
Thiết kế kiến trúc
Thẻ CRC
Đảm bảo chất lượng
Xác nhận đặc tả
Xem xét thiết kế
Đánh giá tỉ lệ lỗi
Ví dụ thiết kế thử nghiệm: HP Ink Jet
NNTu
Hệ Thống Nhúng (Spring 2008)
3
Phương pháp luận thiết kế
Phương pháp luận thiết kế:tiến trình thiết kế
để tạo hệ thống.
Tại sao phải có phương pháp thiết kế ?
Nhiều hệ thống phức tạp:
Đặc tả lớn
Nhiều người thiết kế
Chuyển trực tiếp tới bộ phận sản xuất.
Quy trình đúng giúp cải thiện:
Chất lượng – chính xác, tin cậy, dễ sử dụng
Chi phí thiết kế sản xuất
Thời gian tiếp cận thị trường.
NNTu
Hệ Thống Nhúng (Spring 2008)
4
Luồng thiết kế
Luồng thiết kế:chuỗi các công việc thực hiện cho
thiết kế
Có thể được tự động hóa một phần hay toàn bộ.
Sử dụng công cụ CAD chuyển đổi và kiểm tra thiết kế.
Là một phần của phương pháp, có các mô hình sau
Waterfall
Spiral
Đồng thiết kế (co-design) Hardware/software
Luồng thiết kế có thứ tự (Hierarchical design flow)
Kỹ nghệ đồng thời
NNTu
Hệ Thống Nhúng (Spring 2008)
5
C
C
á
á
c th
c th
à
à
nh ph
nh ph
ầ
ầ
n
n
ph
ph
ầ
ầ
n c
n c
ứ
ứ
ng
ng
Góc nhìn tổng quát
Yêu c
Yêu c
ầ
ầ
u
u
Đ
Đ
ặ
ặ
c t
c t
ả
ả
T
T
í
í
ch h
ch h
ợ
ợ
p
p
h
h
ệ
ệ
th
th
ố
ố
ng
ng
C
C
á
á
c th
c th
à
à
nh ph
nh ph
ầ
ầ
n
n
ph
ph
ầ
ầ
n m
n m
ề
ề
m
m
T
h
i
T
h
i
ế
ế
t
k
t
k
ế
ế
(
S
y
n
t
h
e
s
i
s
,
L
a
y
o
u
t
,
(
S
y
n
t
h
e
s
i
s
,
L
a
y
o
u
t
,
…
…
)
)
T
h
i
T
h
i
ế
ế
t
k
t
k
ế
ế
(
C
o
m
p
i
l
a
t
i
o
n
,
(
C
o
m
p
i
l
a
t
i
o
n
,
…
…
)
)
Phân chia
Phân chia
HW/SW
HW/SW
Thi
Thi
ế
ế
t k
t k
ế
ế
ki
ki
ế
ế
n tr
n tr
ú
ú
c
c
X
X
á
á
c th
c th
ự
ự
c,
c,
đ
đ
á
á
nh gi
nh gi
á
á
,
,
tinh ch
tinh ch
ế
ế
(l
(l
ĩ
ĩ
nh v
nh v
ự
ự
c,
c,
ngu
ngu
ồ
ồ
n,
n,
h
h
ệ
ệ
u năng
u năng
,
,
…
…
)
)
NNTu
Hệ Thống Nhúng (Spring 2008)
6
Mô hình: Thác nước (Waterfall)
Mô hình phát triển phần mềm đầu tiên:
Yêu cầu
Kiến trúc
Mã hóa
Kiểm tra
Bảo trì
NNTu
Hệ Thống Nhúng (Spring 2008)
7
Mô hình: Thác nước (Waterfall)
Mô hình: Waterfall
Yêu cầu: xác định các đặc tính cơ bản.
Kiến trúc: phân rã thành các module.
Mã hóa: hiện thực và tích hợp.
Kiểm tra: thực hiện và phát hiện lỗi.
Bảo trì: cài gặt, gỡ lỗi, cập nhật.
Yếu điểm
Chỉ có sự phản hồi thông tin cục bộ.
Không tích hợp cách thiết kế top-down , bottom-
up.
Với giả sử là phần cứng đã có/đã xây dựng sẵn.
NNTu
Hệ Thống Nhúng (Spring 2008)
8
Mô hình: Xoắn ốc (Spiral)
Yêu cầu
Thiết kế
Kiểm tra
Tính khả thi của hệ thống
Đặc tả
Bản mẫu
Hệ thống ban đầu
Hệ thống được “gia cố”
NNTu
Hệ Thống Nhúng (Spring 2008)
9
Mô hình: Xoắn ốc (Spiral) – yếu
điểm
Làm rõ – tinh chế yêu cầu hệ thống.
Bắt đầu với bản sao/mô hình, chuyển dần từ hệ
thống đơn giàn thàn hệ đầy đủ các chức năng.
Cung cấp chế độ phản hồi từ dưới lên từ các
giai đoạn trước.
Công việc thực hiện qua các giai đoạn tốn
nhiều thời gian.
NNTu
Hệ Thống Nhúng (Spring 2008)
10
Tinh chế liên tục
specify
architect
design
build
test
Hệ thống khởi động
specify
architect
design
build
test
Hệ thống được tinh chế
NNTu
Hệ Thống Nhúng (Spring 2008)
11
Phương pháp luận thiết kế
HW/SW
Yêu cầu – đặc tả
Kiến trúc
Thiết kế HW
Thiết kế SW
Tích hợp
Kiểm tra
NNTu
Hệ Thống Nhúng (Spring 2008)
12
Phương pháp luận Đồng thiết
kế
Kiến trúc HW/SW đồng bộ, mật thiết với
nhau:
Cung cấp đủ tài nguyên
Tránh tình trạng “thắt cổ chai” cho SW.
Có thể xây dựng các phần độc lập nhưng
việc tích hợp rất quan trọng.
Yêu cầu phản hồi thông tin từ dưới lên.
NNTu
Hệ Thống Nhúng (Spring 2008)
13
Luồng thiết kế phân cấp
Phải được thiết kế thông qua nhiều mức
khác nhau:
Kiến trúc hệ thống;
Hệ HW - SW;
Các thành phần HW - SW.
Thường có các luồng thiết kế lặp trong quá
trình thiết kế khác.
NNTu
Hệ Thống Nhúng (Spring 2008)
14
Luồng HW/SW theo lớp
spec
architecture
HW SW
integrate
test
system
spec
HW architecture
detailed design
integration
test
hardware
spec
SW architecture
detailed design
integration
test
software
NNTu
Hệ Thống Nhúng (Spring 2008)
15
Kỹ nghệ đồng thời
Những dự án lớn cần kiến thức nhiều người
nhiều ngành.
Làm vài công việc trong một thời điểm để
giảm thiểu thời gian thiết kế.
Phản hồi thông tin giúp cải tiến chất lượng và
giảm việc trễ giữa các phần .
NNTu
Hệ Thống Nhúng (Spring 2008)
16
Kỹ thuật của kỹ nghệ đồng thời
Nhóm liên nhiệm vụ
Các thành viên tập hợp từ những ngành khác nhau
Hiện thực sản phẩm đồng thời
Thiết kế các hệ con đồng thời để giảm thời gian thiết kế
Tăng cường thông tin chia sẻ
Cập nhật mới được chia sẻ và tích hợp trong thiết kế sớm nhất
có thể
Quản lý dự án tích hợp
Đảm bảo một người nào đóchịu trách nhiệm cho toàn bộ dự án
Bao gồm nhà cung cấp: liên tục và sớm
Sử dụng tốt nhất năng lực nhà cung cấp
Chú trọng khách hàng liên tục và sớm
Đảm bảo đáp ứng đúng nhu cầu cần thiết của khách hàng
NNTu
Hệ Thống Nhúng (Spring 2008)
17
Phân tích yêu cầu
Yêu cầu:những mô tả không chính thức về
những gì khách hàng muốn
Đặc tả:mô tả chính xác nhóm thiết kế nên
dẫn xuất ra
Pha xác định yêu cầu gắn liền với khách
hàng và người thiết kế
NNTu
Hệ Thống Nhúng (Spring 2008)
18
Kiểu yêu cầu
Chức năng:mối quan hệ xuất nhập.
Phi chức năng:
Tiêu tốn năng lượng
Chi phí thiết thế
Chi phí sản xuất
Kích cỡ vật lý
Thời điểm tiếp cận thị trường
Độ tin cậy
v v
NNTu
Hệ Thống Nhúng (Spring 2008)
19
Các yêu cầu tốt
Đúng:mô tả đúng những gì khách hàng
muốn.
Không mập mờ: sáng sủa và có ngôn ngữ
giải thích rõ ràng
Đầy đủ:tất cả các yêu cầu được bao gộp
Khả năng xác minh:cóthể thẩm tra khi
nào mỗi yêu cầu được đảm bảo trong hệ
thống cuối
Phù hợp: các yêu cầu không mâu thuẫn
các yêu cầu khác
NNTu
Hệ Thống Nhúng (Spring 2008)
20
Các yêu cầu tốt
Có thể sửa đổi: có thể cập nhật yêu cầu
dễ ràng
Khả năng lần vết:
Biết tại sao mỗi yêu cầu tồn tại
Liên kết tài liệu nguồn tới yêu cầu
Liên hệ yêu cầu tới hiện thực
Lần ngược thông tin từ hiện thực về yêu cầu
NNTu
Hệ Thống Nhúng (Spring 2008)
21
Thiết lập các yêu cầu
Phỏng vấn khách hàng
So sánh với đối thủ
Thông tin phản hồi từ buôn bán
Mô hình và bản mẫu
NNTu
Hệ Thống Nhúng (Spring 2008)
22
Đặc tả
Nắm bắt các đặc tính chức năng và phi chức năng:
Kiểm tra tính đúng đắn của đặc tả
So sánh đặc tả với hiện thực
Nhiều văn phong đặc tả:
Hướng điều khiển – hướng dữ liệu
Văn bản – đồ họa
Biểu diễn lại đặc tả
UML là ngôn ngữ thiết kế - đặc tả
Ngôn ngữ mô tả và đặc tả (SDL)
Lưu đồ trạng thái
Bảng AND/OR
Ngôn ngữ máy trạng thái yêu cầu (Requirements state
machine language - RSML)
NNTu
Hệ Thống Nhúng (Spring 2008)
23
SDL
Sử dụng trong thiết kế
giao thức truyền thông
Mô hình máy trạng thái
hướng sự kiện
Điện thoại
đang KN
Tín hiệu KN
Nhấc, nhấn
điện thoại
Nhận tín hiệu
chuông
State
Input
Output
Task Decision Save
NNTu
Hệ Thống Nhúng (Spring 2008)
24
Lưu đồ trạng thái
Dạng ban đầu của sơ đồ trạng thái trong
UML.
Trạng thái phức hợp:
OR
AND
Trạng thí phức hợp làm giảm sự kích cỡ của
đồ thị chuyển trạng thái
NNTu
Hệ Thống Nhúng (Spring 2008)
25
Trạng thái OR
S1
S2
S3
S4
i1
i1
i2
i2
i2
traditional
S1
S2
S3
S4
i1
i1
i2
OR state
s123