SDF SCM PMNơi sản xuất Producer AM S CDS Doanh nghiệp Enterprise Người dùng Use r LAN LAN CD ODF IT LAN Enterprise Deployment3.3.1 Mô hình hóa quy trình vận hành Hình: Vận hành phần mềm
Trang 2NỘI DUNG
3.1 Giới thiệu
3.2 Vận hành phần mềm là gì
3.3 Các hoạt động vận hành phần mềm 3.4 Tổng kết
Trang 33.1 Giới thiệu
• Vận hành phần mềm được thực hiện từ
khi kết thúc sự phát triển p/mềm
• CNPM mới tập trung chủ điểm vào
hđộng phát triển và cải tiến => vận hành chưa được đầu tư đúng đắn
=> Vận hành ứng dụng vẫn được xem như một nghệ thuật và rất nghèo nàn trong việc tự động hóa.
Trang 4lượng lớn các thành phần, các phiên bản và các biến đổi
• Các ứng dụng được cải tiến ngày càng nhanh (một vài
tháng giữa hai phiên bản phát hành)
3.1 Giới thiệu
Trang 63.2 Vận hành phần mềm là gì
• Vận hành phần mềm là tất cả các hoạt
động mà tạo cho một hệ thống phần mềm có thể sử dụng tại nơi tiêu thụ.
Trang 73.3 Các hoạt động vận hành phần mềm
3.3.1 Mô hình hóa quy trình vận hành
3.3.2 Tiến trình vận hành
Trang 83.3.1 Mô hình hóa quy trình vận hành
• Vận hành phần mềm doanh nghiệp được
mô hình hóa chia ra thành 3 tầng:
– Tầng sản xuất (producer), – tầng doanh nghiệp(Enterprise) và – tầng người dùng(Users)
Trang 9SDF SCM PM
Nơi sản xuất (Producer)
AM S
CDS
Doanh nghiệp (Enterprise)
Người dùng (Use r)
LAN
LAN
CD
ODF IT
LAN
Enterprise Deployment3.3.1 Mô hình hóa quy trình vận hành
Hình: Vận hành phần mềm doanh nghiệp và các kỹ thuật hiện thời
Software Description Formalisms (SDF):
- Đặc tả hình thức
- Đặc tả phi hình thức
Software Configuration Managers (SCM): [7,8]
- Mục đích: Thiết lập và bảo trì sự tích hợp của các
s/phẩm dự án
-Nhẫn mạnh các nguyên tắc, các kỹ thuật khởi tạo,
đánh giá và điều khiển các thay đổi của p/m trong và
sau tiến trình phát triển
- Cung cấp một cơ chế để xác định, điều khiển và lưu
vết các thay đổi p/m, trả lời câu hỏi: “Someone did
something, how can one can reproduce it”
-Cung cấp một cơ chế lựa chọn để lựa chọn một cấu
hình hệ thống phù hợp từ không gian phiên bản, và
cấu trúc tuần tự hệ thống từ các file nguồn đã lựa chọn
-Ví dụ: Adele[7], ClearCase[8] Package Managers [9,10]: Các hệ quản lý
Content delivery system [11,12, 13,14]:
-Nhiệm vụ: Phát hành p/m qua các phương tiện truyền thông
-Ví dụ: Hệ phát hành nội dung Cisco (CDSC): Cho phép phát
hành các dịch vụ lên trên mạng/qua sóng ăngten/sóng mạng
không dây và cho phép người dùng truy cập qua nhiều thiết
bị như PC, MT xách tay, ĐTDĐ,…
Installation Tools [15, 16,17,18]:
-Hỗ trợ tự động hầu hết các hoạt động buildtime
trên tầng user: Chuyển đổi, sắp đặt, lựa chọn, mở gói, cài đặt, cập nhật, thích nghi, cấu hình, dịch, tháo bỏ cài đặt, …
Configurable Distributed Systems [24,25]:
-Tập trung vào việc quản lý hệ thống , cấu hình lại hệ thống sau khi nó được
vận hành: cập nhật các thành phần để đảm bảo phù hợp với hệ thống đang
vận hành
-Gắn các thành phần cùng nhau để đạt được sự tương tác và giao tiếp
Trang 10- Các kỹ thuật SDF, SCM và PM tập trung trên các hoạt động được thực hiện ở tầng sản xuất.
Trang 11a) Vận hành Producer
3.3.2 Tiến trình vận hành
Trang 12a) Vận hành Producer
muốn phát hành đến nơi tiêu thụ sản phẩm.
• Theo quan điểm của người sản xuất, vận hành ứng dụng gồm 2 hoạt động:
– Phát hành và
– không phát hành
• Các hoạt động vận hành ở tầng sản xuất ( hình dưới )
– mô tả kết nối giữa các hoạt động phát triển
ứng dụng và vận hành ứng dụng.
Trang 13PDS
Trang 14• Là hoạt động phải làm trước khi chuyển dịch ứng dụng thực tế đến các nơi tiêu thụ.
Trang 15InstallShell hoặc MepInstaller
Trang 16• Là hoạt động nhỏ của cả hai hoạt động
• Có thể quảng cáo qua
– điện thoại, hoặc
– qua email, và các phương tiện truyền thông khác
Quảng cáo:
Trang 17• Là ngăn cản sự hỗ trợ của sản phẩm đến các nơi tiêu thụ ứng dụng, hoạt động
• Khi một ứng dụng đang nghỉ hưu, phải tạo
sự chắc chắn rằng hoạt động này là không ảnh hưởng đến các ứng dụng khác trong
chia sẽ một số thành phần của nó cho ứng dụng khác, )
Không phát hành ứng dụng:
Trang 18Nghỉ hưu
• Ứng dụng không còn được hỗ trợ bởi nhà sản xuất, và không được sử dụng nữa
Trang 19Nhận xét:
• Các kỹ thuật đang tồn tại hầu hết liên quan đến các hoạt động vận hành ở tầng sản xuất:
– Các hệ thống quản lý cấu hình phần mềm (SCM) như: Adele [7], Clearcase [8]
– Các p/m quản lý gói (PM) như: RPM của RedHat [9], hoặc MKpck Command của HP – UX
• Các công cụ cài đặt như:
Trang 20b) Vận hành Enterprise
• Mục đích:
– chuẩn bị vận hành vật lý trên các máy tính của
người dùng trong doanh nghiệp.
• nhằm xác định khi nào và l àm thế nào sự vận hành vật
lý sẽ được thực hiện => Mô hình vận hành
Trang 21software Push/pull
Trang 22• Sau khi phát hành, cần chuyển dịch ứng dụng và môitrường phát triển p/m (SDK) đến doanh nghiệp tiêu thụ.
• sử dụng kỹ thuật đẩy (push),
– trong khi điều khiển hoạt động chuyển dịch ở nơi tiêu thụ:
• sử dụng kỹ thuật kéo (pull)
Chuyển dịch ứng dụng
Trang 23• Sau khi gói ứng dụng được dịch
chuyển đến nơi tiêu thụ:
– Tiến trình vận hành Enterprise bắt đầu
Trang 24Rele ased
application
package
Deployable enterprise package
Ente rprise application
package
assemble
unpack compose te st pack
Ente rprise mode l
Deployment policies
SDK
predispose advertise
Deployment mode l
EDS
EDS
Tiến trình vận hành ở tầng Enterprise
Trang 25– các khối/các thành phần có thể được xây dựng từ
• các gói ứng dụng liên quan của các nhà sản xuất khác nhau
• các phát triển mở rộng bởi chính các doanh nghiệp tiêu thụ,
=> Là đầu mối cho việc lắp ráp vận hành các ứng dụng trở nên khó khăn và phức tạp
Trang 26• Lắp ráp ứng dụng: Gồm 4 hoạt động nhỏ:
– mở gói, biên soạn, kiểm thử và đóng gói.
• Sau khi mở gói, các thành phần của gói ứng dụng có thểdùng trực tiếp, gói chứa các thành phần/khối đến từnhững nhà x/suất khác nhau
• Sau đó bắt đầu hoạt động biên soạn
– Nhiệm vụ: đặt các thành phần đến từ các nguồn khác nhau vào cùng nhau được thực hiện chủ yếu bởi việc lập trình thủ công – Các công cụ hỗ trợ việc lập trình
• một môi trường phát triển đầy đủ hoặc
• bộ công cụ hỗ trợ phát triển phần mềm (SDK – Software Developtment Kit).
– Kết quả của hoạt động xây dựng là ứng dụng cụ thể hoặc nguyên mẫu
• sau đó nguyên mẫu được kiểm thử,
• và cuối cùng là đóng gói ứng dụng trở lại trước khi nóđược chuyển đến mỗi desktop của người dùng cuối
Trang 27Hoạt động tiền sắp đặt
• Đầu vào :
– Mô hình doanh nghiệp : mô tả tổ chức của doanh nghiệp, vị trí các MT người dùng và mối quan hệ
Trang 28• Kết quả của hoạt động này là phát sinh một mô hình vận hành giúp xác định:
– Phiên bản ứng dụng nào và khi nào mỗi MT user sẽ có tùy
theo vai trò, vị trí, các hoạt động của user ấy
– Toàn bộ các điều khiển, lịch biểu và sự đồng bộ hóa giữa tất
cả các hoạt động vận hành trong doanh nghiệp cũng như điều khiển mỗi hoạt động xác định.
– Tiến trình mà có thể xem như một kịch bản được thông dịch
bởi cơ sở hạ tầng vận hành để thực hiện tự động hóa các hoạt động vận hành trên mỗi desktop người dùng cuối.
Trang 29• Hoạt động quảng cáo:
– Xảy ra sau hoạt động dẫn dắt
– là quảng cáo trong doanh nghiệp,
– mô hình vận hành cũng có thế xác định hoạt động quảng cáo, ví dụ mô tả khi nào và quảng cáo đến ai được thực hiện
• Nhận xét
Các kỹ thuật đang tồn tại hầu hết không hỗ trợ cho các hoạt động ở tầng Enterprise, điều này đặc biệt đúng cho hoạt động dẫn dắt mà là trung tâm của hoạt động vận hành doanh nghiệp
Trang 30– Một số hoạt động xảy ra trong thời gian dịch
– Một số hoạt động xảy ra trong thời gian chạy
Trang 31• Đầu vào:
– Gói ứng dụng doanh nghiệp: Ứng dụng có thể
chạy trên doanh nghiệp cụ thế
– Mô hình vận hành: Đặc tả tiến trình vận hành đến
ai, khi nào, và làm thế nào để vận hành
– Mô hình vị trí: Chỉ ra vị trí của các MT người dùng
cuối, cấu hình p/c và p/m của mỗi vị trí
• Một số hoạt động diễn ra trong thời gian dịch
(build - time):
– hình 1
c) Vận hành User
Trang 32Ente rprise
application
package
Deployment mode l
dispose
Deployable application
Site mode l
install
Excutable application
Trang 33• Là hoạt động đầu tiên
• Tác dụng: chuyển dịch ứng dụng
từ vị trí doanh nghiệp đến mỗi vị trí của người dùng
Hoạt động chuyển dịch
Trang 34– Mở gói: k/quả: Ứng dụng có thể vận hành trên mỗi vịtrí người dùng cuối
Trang 35• Ứng dụng có thể vận hành:
– Được cài đặt, cập nhật và thích nghi với mỗi vị trí
người dùng
• Các hoạt động cài đặt, cập nhật, thích nghi
đều có 2 hoạt động nhỏ là cấu hình và dịch lại
• Tháo bỏ cài đặt: Gỡ bỏ các thành phần phần
mềm: Nếu ứng dụng nghỉ hưu
dụng có thể chạy trên các vị trí (*.exe)
Trang 36• Các hoạt động diễn ra trong thời gian
chạy (run time)
Executable application
Executing application
UDS Reconfigurate
UDS
UDS
Trang 37– mô tả cấu hình động như đã mô tả trong các hệ
thống phân phối cấu hình,
– vi dụ: thêm vào, xóa bỏ, cập nhật hoặc định vị lại
các thành phần trong khi ứng dụng đang chạy
c) Vận hành User
Trang 38• là một phần của toàn bộ tiến trình vận
hành
• được bao trùm tốt nhất bởi các kỹ
thuật đang tồn tại.
• Các công cụ cài đặt (IT) cung cấp hầu
hết các hoạt động trong thời gian dịch với việc thông báo các ngoại lệ qua hoạt động kiểm thử
c) Vận hành User
Trang 39• Các hệ thống phân phối cấu hình như:
– ArchShell [24] hoặc Arunja [25] tập trung vào các hoạt động đang chạy.
• Các hệ thống quản lý ứng dụng như:
– Software Distributor của HP Open View,
– ZENwork của Novell [20],
– Software Distribution của doanh nghiệp Tivoli[0],
– EDM ADS của Amdahl [21].
– Doanh nghiệp Tivoli [22] và Dịch vụ quản lý hệ thống 2.2 (SMS) của Microsoft [23] bao trùm hầu hết tất cả các hoạt động.
=> Mục đích của chúng là :
– Quản lý các ứng dụng đã phát hành trên các mạng cục bộ LAN
dựa trên các kiến trúc client/server.
– Bên trong một mạng LAN, một server có thể chụi trách nhiệm phát
hành ứng dụng và vận hành trên các MT client
c) Vận hành User
Trang 40• Một mô tả về kiến trúc ứng dụng như:
– Các thành phần của ứng dụng, các phiên bản và các lựa chọn – Các khả năng so sánh giữa hai phiên bản thành phần
Trang 413.4.2 Các mô hình doanh nghiệp
• Một mô hình doanh nghiệp là:
– Sự trừu tượng hóa của doanh nghiệp này
– Mô tả cách tổ chức của doanh nghiệp theo các
thuật ngữ như:
• các nhóm, các nhóm con, các tác nhân (con người), các
vị trí (quản lý, kỹ sư, ) và các vai trò (người lập trình, người kiểm thử, …)
– Thiết lập một kết nối giữa việc tổ chức của một
doanh nghiệp và các vị trí của người dùng
• Mô hình doanh nghiệp có thể mô tả tốt:
– các dự án, tiến trình và luồng dữ liệu được sử
dụng trong tổ chức – mà có thể hữu ích cho việc vận hành.
Trang 43• Mô hình tự động: tiến trình vận hành hoàn toàn yên tĩnh và thực hiện tự động các hoạt động khác nhau
• MH lập trình thủ công: yêu cầu sự xác nhận của người dùng
trước khi thực hiện bất kỳ hoạt động nào
• bán tự động: Trong mô hình bán tự động, người dùng có thể đặc tả các hoạt động có thể được thực hiện tự động hóa và những hoạt động được làm thủ công
Trang 44Các mô hình vị trí
• Là sự trừu tượng hóa của các MT
desktop của người dùng
• Chỉ rõ thông tin:
– Hệ điều hành và phần cứng như:
• loại bộ xử lý, bộ xử lý tần xuất , bô nhớ và không
gian đĩa có thể, hệ điều hành, phiên bản, …
– Phần mềm như:
• các công cụ có thể phát sinh (các hệ soạn thảo,
các trình dịch, ….) và các thành phần và ứng dụng
đã vận hành
Trang 45qua các phương tiện truyền thông
• Trước khi phát hành ta cần lựa chọn phiên
bản, cấu hình p/c, p/m phù hợp với các ràng buộc được mô tả trong đặc tả ứng dụng sau đó dịch và đóng gói
Trang 46– Tầng doanh nghiệp:
• Chuyển ứng dụng sau khi phát hành đến
doanh nghiệp
• Tiền sắp đặt: Lựa chọn và cấu hình lại gói ứng
dụng để tương thích với cấu hình p/c và p/m hiện có của doanh nghiệp, sau đó đóng gói => gói ứng dụng doanh nghiệp
• Xây dựng mô hình vận hành dựa trên các chính
sách vận hành và mô hình tổ chức của doanh nghiệp: Nhắm đặc tả khi nào, ở đâu và làm thế nào để vận hành ứng dụng đến các vị trí người dùng
3.4 Tổng kết
Trang 47– Tầng người dùng:
• Chuyển dịch ứng dụng từ doanh nghiệp đến
các vị trí người dùng của doanh nghiệp (thường 1 server làm nhiệm vụ này)
• Lựa chọn các thành phần ứng dụng phù hợp
với cấu hình mỗi MT vị trí của doanh nghiệp
• Thực hiện các hoạt động cài đặt, cập nhật,
thích nghi để phù hợp với cấu hình mỗi vị trí
• Kích hoạt/khử kích hoạt để chạy, ktra và tắt
ứng dụng trên mỗi vị trí
3.4 Tổng kết
Trang 48Tài liệu tham khảo
Trang 52HẾT CHƯƠNG.