Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 1
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
KHOA CÔNG NGHỆ THÔNG TIN
BÀI THU HOẠCH MÔN PHƢƠNG
PHÁP NGHIÊN CỨU KHOA HỌC
GVHD: GS.TSKH Hoàng Kiếm
Học viên: Nguyễn Thanh Tòng – 1212039
Lớp cao học K22
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 2
LỜI CẢM ƠN
Em xin chân thành cảm ơn thầy Hoàng Kiếm đã tạo điều kiện cho em tiếp xúc với
các phương pháp luận sáng tạo trong khoa học nói chung và trong tin học nói riêng.
Môn học đã cung cấp các kiến thức hữu ích về việc áp dụng tư duy sáng tạo vào quá
trình học tập và nghiên cứu khoa học.
Em cũng xin cảm ơn các bạn đã nhiệt tình góp ý, hỗ trợ cho em trong thời gian
thực hiện bài báo cáo này.
Mặc dù đã rất cố gắng hoàn thành trong phạm vi và khả năng cho phép nhưng
chắc chắn nhóm em không thể tránh khói những sai sót, em rất mong nhận được sự góp
ý, chỉ bảo của thầy và các bạn.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 3
Mục lục
I. TỔNG QUAN VỀ ĐÓNG GÓI VÀ TRIỂN KHAI SẢN PHẨM PHẦN MỀM. 6
1. Tổng quan. 6
2. Các giai đoạn. 6
3. Các phương pháp truyền thống. 7
a) Tạo các gói cài đặt (installer). 7
b) Tạo các gói phần mềm portable. 8
II. SOTFWARE APPLIANCE 8
1. Software appliance là gì và tại sao những người phát triển phần mềm lại quan tâm đến nó. 8
Software Appliance: 11
2. Những nguyên tắc sáng tạo có thể suy ra được từ sự ra đời của software appliance. 14
a) Nguyên tắc tương tự hóa (sao chép) 14
b) Nguyên tắc chuyển sang chiều khác. 15
c) Nguyên tắc giải “thiếu” hoặc “thừa”. 15
III. ĐIỆN TOÁN ĐÁM MÂY. 16
1. Giới thiệu về điện toán đám mây. 16
2. Tại sao lại cần điện toán đám mây. 17
a) Chi phí: 17
b) Tự động cập nhật: 17
c) Truy xuất từ xa: 17
d) Cách sử dụng nhân viên được tinh giản: 18
e) Khả năng mở rộng: 18
3. Những bất lợi của điện toán đám mây. 18
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 4
a) Vấn đề về bảo mật 18
b) Độ trễ cao 18
c) Tính linh hoạt 18
d) Có thể xảy thời gian chết (downtime) 18
4. Mô hình dịch vụ của điện toán đám mây. 19
a) Thiết bị người dùng (Cloud client) 19
b) Dịch vụ phần mềm (SaaS – Software as a service) 19
c) Dịch vụ nền tảng (PaaS – Platform as a service) 19
d) Dịch vụ hạ tầng (IaaS – Infrastructure as a service) 20
5. Những nguyên tắc sáng tạo có thể suy ra được từ điện toán đám mây. 20
a) Nguyên tắc phân nhỏ: 20
b) Nguyên tắc tách khỏi 21
c) Nguyên tắc "rẻ" thay cho "đắt" 21
d) Nguyên tắc phân hủy hoặc tái sinh các phần 21
e) Nguyên tắc dự phòng. 21
IV. KẾT LUẬN 22
V. PHỤ LỤC: Trích dẫn 40 nguyên tắc sáng tạo cơ bản 23
VI. TÀI LIỆU THAM KHẢO 32
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 5
LỜI NÓI ĐẦU
Khoa học và công nghệ là đặc trưng của thời đại, nghiên cứu khoa học đã trở
thành hoạt động sôi nổi và rộng khắp trên phạm vi toàn cầu. Các thành tựu của khoa học
hiện đại đã làm thay đổi bộ mặt thế giới. Khoa học và công nghệ đã trở thành động lực
thúc đẩy sự tiến bộ nhân loại. Cùng với nghiên cứu khoa học hiện đại, mọi người đang
chú ý đến phương pháp nhận thức khoa học, coi đó là nhân tố quan trọng để phát triển
khoa học.
Trong lĩnh vực công nghệ thông tin, việc đóng gói và triển khai sản phẩm phần
mềm đến với khách hàng là một công đoạn hết sức quan trọng vì mục tiêu của việc phát
triển phần mềm là được chấp nhận và sử dụng bởi người dùng cuối.
Thông qua những buổi giảng dạy và hướng dẫn của thầy Hoàng Kiếm, em được biết
thêm và hiểu hơn về cách vận dụng các thủ thuật (nguyên tắc) sáng tạo trong quá trình
giải quyết các bài toán, cùng các vấn đề mang tính khoa học. Do đó, trong tài liệu này em
xin phân tích những thủ thuật (nguyên tắc) sáng tạo được áp dụng trong việc cải tiến quá
trình triển khai sản phẩm đến với người dùng.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 6
I. TỔNG QUAN VỀ ĐÓNG GÓI VÀ TRIỂN KHAI SẢN PHẨM PHẦN MỀM.
1. Tổng quan.
Một chương trình (program) vừa mới được tạo ra có thể hoạt động tốt trên máy
của lập trình viên nhưng điều đó không có nghĩa là nó thật sự sẳn sàng cho những
người khác (end user) sử dụng.
Triển khai sản phẩm phần mềm là quá trình làm cho một sản phẩm (hay một hệ
thống) phần mềm sẳn sàng để được sử dụng bởi người dùng cuối.
2. Các giai đoạn.
Quá trình triển khai sản phẩm có thể được chia ra thành các giai đoạn chính sau:
- Release: Tạo ra gói sản phẩm cài đặt và các thiết bị phần cứng cần thiết đi
kèm của sản phầm phần mềm.
- Install and activate: Cài đặt gói sản phẩm lên các thiết bị của người dùng
và kích hoạt sản phẩm.
- Adapt : Là hoạt động chỉnh sửa một hoặc nhiều thành phần của sản phảm
đã được cài đặt. Hoạt động này xuất phát từ yêu cầu của người dùng cuối như
chỉnh sửa các file cấu hình cho phù hợp với môi trường của người dung.
- Update: Là hoạt đọng thay thế toàn bộ hoặc một phần sản phẩm đã cài dặt
(ở version cũ) bằng một bộ phần hoặc toàn bộ sản phẩm mới có version cao hơn.
- Version tracking: Là một hệ thống giúp người dùng cuối theo dõi version
của sản phẩm họ đang sử dụng, tìm kiếm cũng như cài đặt các gói update do nhà
sản xuất cung cấp.
- Uinstall: Là quá trình ngược với quá trình cài đặt, quá trình này gõ bỏ một
phần hoặc toàn bộ sản phẩm đã không còn được sử dụng.
- Retire: Cuối cùng một sản phẩm sẽ bị đánh dấu là không còn được hỗ trợ
bởi nhà sản xuất. Đây là giai đoạn cuối cùng trong cả quá trình phát triển phần
mềm.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 7
3. Các phƣơng pháp truyền thống.
a) Tạo các gói cài đặt (installer).
Figure 1: Hình minh họa về việc cài đặt một ứng dụng bằng installer
Các nhà sản xuất phần mềm thường sử dụng một phần mềm của bên thứ 3
(third party) để tạo các gói cài đặt cho ứng dụng của mình. Mục đích của các
gói cài đặt này là tiến hành cài đặt một cách tự động sản phẩm phần mềm lên
máy của người dùng cuối. Quá trình tự động này thường bao gồm các hoạt
động sau:
- Tiến hành giải nén và sao chép các file thực thi của hệ thống vào máy
người dùng.
- Đọc registry để lấy một số thông tin cần thiết cũng như ghi một số thông tin
của hệ thống vào registry.
- Xỏa bỏ các file tạm được tạo trong quá trình cài đặt.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 8
b) Tạo các gói phần mềm portable.
Figure 2: Hình minh họa phần mềm portable
Phần mềm portable là dạng phần mềm được thiết kế để có thể hoạt động độc
lập với máy chủ(host) sẽ chạy phần mềm đó (mặc dù vẫn còn phải phụ thuộc
vào hệ điệu hành cụ thể). Nghĩa là phần mềm này có thể hoạt động mà không
cần biết các thông tin của máy chủ (như địa chỉ IP, hostname, các thông tin
trong registry). Các phần mềm portable thường nhỏ gọn và có thể được lưu trữ
trong các thiết bị di động như CD, USB hay đĩa mềm. Người dùng có thể chạy
trực tiếp phần mềm được lưu trữ trên các thiết bị di động mà không cần phải
cài đặt phần mềm vào máy.
II. SOTFWARE APPLIANCE
1. Software appliance là gì và tại sao những ngƣời phát triển phần mềm lại
quan tâm đến nó.
Công việc cài đặt và triển khai phần mềm là một quá trình lập đi lập lại và dễ xảy
ra lỗi. Điều này càng đúng khi triển khai những phần mềm lớn chạy trên máy chủ
(server) mà đặc biệt là những phần mềm chạy trên máy chủ mang tính thương mại.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 9
Hình Figure 3 bên dưới là số trang tài liệu mà một người cài đặt phần mềm phải
đọc để cài đặt hệ quản trị cơ sở dữ liệu ORACLE trên máy chạy hệ điều hành
Linux.
Figure 3: Tài liệu hƣớng dẫn cài đặt Oracle Database
55 trang đầu tiên trong tài liệu hướng dẫn thuộc về pre-installation (trước khi cài
đặt) mô tả những công việc mà một người IT phải thực hiện để đảm bảo máy chủ
và hệ điều hành cài đặt trên máy chủ đó đã sẵn sàng cho việc cài đặt ORACLE. Và
nhiều trang trong số (Figure 4) đó cung cấp những giá trị tham số hệ thống đòi hỏi
người IT phải tự điều chỉnh cho hệ thống. Và điều này là thường thấy đối với hầu
hết những phần mềm lớn.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 10
Figure 4: hình minh họa những tham số hệ thống mà ngƣời IT phải tự điều chỉnh
Tất nhiên vẫn có những phần mềm lớn dễ dàng cài đặt hơn so với ví dụ về Oracle
database, tuy nhiên việc cài đặt vẫn có thể thất bại do máy chủ thiếu thư viện cần
thiết hay sai phiên bản, sai kiến trúc của hệ điều hành (điều này thường xảy ra khi
người sử dụng đem những gói phần mềm 64bit cài lên những máy tính 32bit).
Và khi việc cài đặt sản phẩm phần mềm không thành công, những nhà phát triển
phẩn mềm lẫn người dùng cuối phải mất thời gian và chi phí để tìm cách giải
quyết.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 11
Figure 5: Hình minh họa đoạn đối thọai của nhà phát triển phần mềm hổ trợ khách hàng cài đặt sản phẩm
Vậy công việc cài đặt và triển khai phần mềm hiện nay đang gây bực bội cho
người dùng cuối và tốn kém cho các nhà phát triển. Software appliance ra đời là để
khắc phục những khó khăn vừa nêu.
Software Appliance:
Software appliance là một bộ sản phẩm bao cả gồm hệ điều hành, phần mềm ứng
dụng, và tất cả các thư viện cũng như toàn bộ các file cấu hình cần có cho việc thự
thi của phần mềm ứng dụng. Mọi thứ đều đã được cài đặt sẵn, được tích hợp sẵn
và sẵn sàng để đưa vào thực thi. Hay nói cách khác, có thể xem Software
appliance như một hộp đen thực thi một chức năng nào đó, người dùng cuối chỉ
cần sở hữu hợp đen mà không quan tâm đến việc hộp đen đó được tạo ra như thế
nào.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 12
Figure 6: Cách truyền thống
Thay vì yêu cầu người sử dụng phải tự tay cài đặt hệ điều hành, cài đặt phần mềm
ứng dụng, cũng như các phần mềm của bên thứ 3 cần thiết (như ở Figure 6) những
nhà cung ứng phần mềm có thể cung cấp cho khách hàng trọn gói một bộ sản
phẩm đã sẳn sàng để đưa vào thực thi (như ở Figure 7).
Figure 7: Software appliance
Bộ sản phẩm này (appliance) được tích hợp bởi các nhà phát triển phần mềm, nên
việc tích hợp là do những chuyên gia thực hiện, không phải những người dùng
cuối bắt đầu đọc tài liệu hướng dẫn và thực hiện việc cài đặt.
Software appliance thường được đóng gói dưới các định dạng sau đây (Figure 8):
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 13
- ISO file: Do software appliance đã bao gồm cả hệ điều hành và phần mềm ứng
dụng, người dùng chỉ việc dùng file ISO để cài đặt bộ sản phẩm lên thiết bị
phần cứng có trước như cài đặt mới một hệ điều hành, khi kết thúc việc cài đặt
này thì phần mềm ứng dụng cũng đã sẵn sàng để đưa vào hoạt động (Có thể
hình dung việc này như khi cài đặt xong Microsoft window thì Internet
explorer, Window media player cũng đã sẵn sàng hoạt động).
- HDD disk: nhà cung ứng phần mềm cũng có thể cài đặt sẵn bộ sản phẩm lên
đỉa cứng hay USB và phân phối thiết bị này cho người dùng.
- Virtual appliance: các bộ ứng dụng ở định dạng này có thể được triển khai lên
máy ảo (Vmware, Hyper-V) hay điện toán đám mây (Amazon EC2).
Figure 8: Đóng gói appliance
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 14
2. Những nguyên tắc sáng tạo có thể suy ra đƣợc từ sự ra đời của software
appliance.
Có một nhận định nổi tiếng về software appliance như sau: “Car companies don’t
ask us to buy the engine, chassis, and wheels separately and put it all together
ourselves. Why are end-users still doing so much assembly in the software
world?” (Nat Friedman CEO of SUSE studio company-
Tạm dịch: “Các công ty xe hơi không yêu cầu chúng ta mua động cơ, bánh lái,
bánh xe một cách riêng lẽ và tự ráp chúng lại với nhau. Tại sao những người dùng
cuối vẫn còn phải làm rất nhiều việc lắp ráp ở trong thế giới phần mềm?”
Figure 9: Hình minh họa việc lắp ráp các linh kiện xe hơi
a) Nguyên tắc tƣơng tự hóa (sao chép)
Sự ra đời của software appliance chính là nhờ áp dụng nguyên tắc tương tự
hóa, lấy ý tưởng của việc triển khai các sản phẩm như đồ điện gia dụng, xe
hơi,… ở thế giới thực và đưa vào thới giới phần mềm. Nhờ áp dụng nguyên tắc
này, các nhà cung ứng phần mềm có thể cung cấp cho khách hàng một bộ sản
phẩm trọn gói, có thể ngay lập tức sẵn sàng để đưa vào phục vụ khác hàng
(thông qua các hình thức đóng gói đã nói ở Figure 8).
Đây chính là nguyên tắc sáng tạo chủ đạo cho sự ra đời của software appliance.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 15
b) Nguyên tắc chuyển sang chiều khác.
Quá trình cài đặt và triển khai phần mềm hiện nay đa số đều diễn ra theo các
phương thức truyền thống, ở đó việc cài đặt và cấu hình phần mềm thường
diễn ra ở phía của người dùng cuối và do người dung cuối tự thực hiện (đôi khi
có sự giúp đỡ từ các nhà cung ứng). Công việc này thường lập đi lập lại và dễ
mắc phải lỗi.
Nay với việc áp dụng phương thức appliance, quá trình cài đặt và cấu hình
phần mềm được đẩy về phía các nhà cung ứng, họ là những chuyên gia trong
việc cài đặt, triển khai phần mềm. Việc chuyển chiều này giúp tiết kiệm thời
gian cũng như chi phí cả cho nhà cung ứng sản phẩm lẫn người dùng cuối.
c) Nguyên tắc giải “thiếu” hoặc “thừa”.
Bên cạnh sai xót trong việc đọc và thực hiện cài đặt theo hướng dẫn sử dụng
của nhà sản xuất làm cho quá trình cài đặt phần mềm thất bại, thì sự xung đột
của những phần mềm hiện có trên máy chủ của người dùng cuối cũng có thể
làm cho quá trình này diễn ra không thành công, hay nếu cài đặt thành công thì
phần mềm cũng không thể thực hiện tốt.
Đối với software appliance, hệ điều hành và những phần mềm của bên thứ 3
nào được chọn để cài đặt cùng phần mềm ứng dụng là do nhà cung ứng phần
mềm quyết định và thông thường người dùng cuối sẽ không tự tiến hành cài
đặt thêm các sản phẩm khác vào software appliance. Điều này sẽ giúp cho
phần mềm ứng dụng tránh khỏi những xung đột không mong muốn.
Software appliance có thể được xem là một lời giải thừa cho bài toán cài đặt
phần mềm vì người dùng cuối phải có một hệ thống riêng biệt chỉ để chạy một
ứng dụng. Tuy nhiên với công nghệ ảo hóa (Visualization) ngày càng phát
triển, việc có thể có một hệ thống ảo đủ mạnh (với giá thành rẻ) chỉ để chạy
duy nhất một ứng dụng là điều hoàn toàn có thể chấp nhận được. Trên thực tế
những server lớn thường cũng chỉ chạy một ứng dụng. Ví dụ một hệ thống web
server lớn thường phải có 2 máy chủ, 1 máy chủ chỉ để chạy hệ quản trị cơ sở
dữ liệu, còn một máy chủ chỉ để chạy web server.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 16
III. ĐIỆN TOÁN ĐÁM MÂY.
Figure 10: Mô hình điện toán đám mây
1. Giới thiệu về điện toán đám mây.
Điện toán đám mây (Cloud Computing), còn gọi là điện toán máy chủ ảo, là mô
hình điện toán sử dụng các công nghệ máy tính và phát triển dựa vào mạng
Internet. Thuật ngữ "đám mây" ở đây là lối nói ẩn dụ chỉ mạng Internet (dựa vào
cách được bố trí của nó trong sơ đồ mạng máy tính – Mạng Internet được ký hiệu
là một đám mây trong sơ đồ mạng máy tính) và như một liên tưởng về độ phức tạp
của các cơ sở hạ tầng chứa trong nó. Ở mô hình điện toán này, mọi chức năng
(function) liên quan đến công nghệ thông tin đều được cung cấp dưới dạng các
"dịch vụ" (các service), cho phép người sử dụng truy cập các dịch vụ từ một nhà
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 17
cung cấp nào đó "trong đám mây" mà không cần phải có các kiến thức, kinh
nghiệm về công nghệ đó, cũng như không cần quan tâm đến các cơ sở hạ tầng
phục vụ cho công nghệ đó.
Trong mô hình này, thông tin được lưu trữ thường trực, tính toán, xử lý tại các
máy chủ trên Internet (trong đám mây) và chỉ được lưu trữ tạm thời tại các máy
khách (ngoài đám mây). Người dùng có thể dễ dàng truy cập vào đám mây chỉ với
một ứng dụng có khả năng truy cập Internet (thông thường là trình duyệt web
browser) và từ bất kỳ thiết bị nào, bao gồm máy tính, thiết bị cầm tay, di động,
thiết bị giải trí.
Một ví dụ thực tế dễ thấy nhất đang được sử dụng rộng rãi, đại diện cho một ứng
dụng trong mô hình điện toán đám mây, là dịch vụ thư điện tử trực tuyến. Với dịch
vụ này, người sử dụng chỉ cần trình duyệt web và tài khoản cá nhân đã đăng ký
với nhà cung cấp là có thể sử dụng dịch vụ để trao đổi, giao dịch thư điện tử mà
không cần quan tâm đến các vấn đề hạ tầng, kỹ thuật, phần mềm.
2. Tại sao lại cần điện toán đám mây.
a) Chi phí:
Điện toán đám mây có thể làm giảm cả chi phí vốn lẫn chi phí vận hành vì các
tài nguyên chỉ được mua khi cần và chỉ phải trả tiền khi sử dụng. Hơn nữa,
người dùng cuối không còn cần phải trả tiền cho một đội ngũ nhân viên để cài
đặt, triển khai cũng như bảo trì sản phẩm phần mềm. Điều này cũng có nghĩa
người sử dụng không còn phải tốn chi phí đầu tư vào hệ thống phần cứng để
thực thi ứng dụng nữa.
b) Tự động cập nhật:
Các ứng dụng ở trên đám mây thường xuyên được tự động cập nhật bởi các
nhà cung ứng dịch vụ, người dùng cuối không còn mất thời gian đi tìm và cài
đặt các bản cập nhật cũng như các bản vá ứng dụng như cách truyền thống.
c) Truy xuất từ xa:
Người dùng có thể dễ dàng truy cập vào đám mây từ bất cứ nơi đâu chỉ với
một ứng dụng có khả năng truy cập Internet mà không cần phải đến một nơi cố
định như các phần mềm truyền thống.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 18
d) Cách sử dụng nhân viên đƣợc tinh giản:
Việc sử dụng điện toán đám mây giải phóng đội ngũ nhân viên quý giá cho
phép họ tập trung vào việc cung cấp giá trị hơn là duy trì phần cứng và phần
mềm.
e) Khả năng mở rộng:
Điện toán đám mây cho phép khả năng điều chỉnh quy mô ngay lập tức bất cứ
lúc nào mà không cần giao kết dài hạn bằng cách mua các dịch vụ mới từ các
nhà cung ứng trên đám mây.
Và còn rất nhiều lợi ích khác mà điện toán đám mây có thể mang lại.
3. Những bất lợi của điện toán đám mây.
Bên cạnh những lợi ích có thể dễ dàng thấy được, điện toán đám mấy không phải
là không có những bất lợi:
a) Vấn đề về bảo mật
Toàn bộ dữ liệu của người dùng đều được lưu trữ trên các bộ nhớ trên đám
mây và việc bảo mật các dữ liệu này hoàn toàn phải phụ thuộc vào các nhà
cung ứng dịch vụ.
b) Độ trễ cao
Độ trễ ở đây chính là khoảng thời gian từ khi người dùng gửi request và được
một dịch vụ trên đám mây hồi đáp lạ. Do các dịch vụ ở đám mây buộc phải kết
nối thông qua Internet nên khi gặp tình trạng quá tải, thời gian hồi đáp cho một
request cũng sẽ tăng theo.
c) Tính linh hoạt
Tính linh hoạt của các ứng dụng trên đám mây là thấp nếu xét theo tiêu chỉ
người dùng muốn tinh chỉnh lại phần mềm cho phù hợp với nhu cầu cá nhân.
Người dùng không thể can thiệp vào các dịch vụ trên cloud, mọi thứ đều phải
thông qua các nhà cung ứng dịch vụ.
d) Có thể xảy thời gian chết (downtime)
Người sử dụng dịch vụ được cung cấp từ đám mây phải phụ thuộc vào khả
năng kết nối của các thiết bị người dùng với kết dịch vụ trên đám mây, khi các
dịch vụ đó xảy ra sự cố hoặc kết nối Internet bị mất thì người sử dụng cũng
phải ngừng sử dụng dịch vụ.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 19
4. Mô hình dịch vụ của điện toán đám mây.
Figure 11: Mô hình dịch vụ của điện toán đám mây
a) Thiết bị ngƣời dùng (Cloud client)
Người dùng cuối truy cập các ứng dụng trên đám mây thông qua các thiết bị có
thể kết nối Internet như Desktop, Laptop hay Smart phone. Các thiết bị trên khi
truy cập vào đám mây sẽ được gọi là cloud clients. Cloud client là nơi để người
dùng giao tiếp với các dịch vụ trên đám mây.
b) Dịch vụ phần mềm (SaaS – Software as a service)
SaaS là nơi mà các ứng dụng trên đám mây sẽ được cài đặt và triển khai để đưa
vào hoạt động. Mục đích của SaaS là cung cấp ứng dụng hoàn chỉnh như là các
dịch vụ theo yêu cầu cho nhiều khách hàng. Khách hang lựa chọn và sử dụng
các dịch vụ này thông qua cloud client của mình tùy theo yêu cầu mà không
cần quan tâm hay bỏ công sức quản lý tài nguyên tính toán bên dưới.
c) Dịch vụ nền tảng (PaaS – Platform as a service)
PaaS là nơi mà các nhà cung ứng sẽ cung cấp các nền tảng để phát triển phần
mềm. Các nền tảng này bao gồm hệ điều hành, môi trường thực thi ngôn ngữ
lập trình, cơ sở dữ liệu cũng như các công cụ cần thiết cho việc phát triển ứng
dụng trên đám mây. Các nhà phát triển phần mềm (Application developer) sử
dụng các dịch vụ này để phát triển ra phần mềm của họ. Sau đó các phần mềm
này được cài đặt lên SaaS để cung cấp dịch vụ cho người dùng.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 20
Ở mức PaaS, các nhà phát triển ứng dụng không phải quản lý nền tảng Cloud
hay các tài nguyên lớp như hệ điều hành, dữ liệu lưu giữ ở lớp dưới.
d) Dịch vụ hạ tầng (IaaS – Infrastructure as a service)
IaaS là nơi mà các nhà cung ứng cung cấp cho khác hàng một máy tính thật
hoặc ảo ở trên đám mây, cũng như cung cấp các không gian lưu trữ vật lý và
các kết nối mạng cần thiết.
Khách hàng có thể sử dụng tài nguyên hạ tầng này để đáp ứng nhu cầu tính
toán hoặc cài đặt ứng dụng riêng cho họ. Với dịch vụ này khách hàng làm chủ
hệ điều hành, không gian lưu trữ và các ứng dụng do khách hàng cài đặt.
Khách hàng điển hình của dịch vụ IaaS có thể là mọi đối tượng cần tới một
máy tính và tự cài đặt ứng dụng của mình.
Figure 12: Các khách hàng điển hình ứng với từng lớp dịch vụ trong điện toán đám mây
5. Những nguyên tắc sáng tạo có thể suy ra đƣợc từ điện toán đám mây.
a) Nguyên tắc phân nhỏ:
Điện toán đám mây chia thành 3 mô hình dịch vụ: dịch vụ phần mềm, dịch vụ
nền tảng và dịch vụ hạ tầng. Mỗi mô hình nhằm phục vụ cho một mục đích
khác nhau và cung cấp các sản phẩm và dịch vụ khác nhau cho các loại khách
hàng khác nhau.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 21
b) Nguyên tắc tách khỏi
Việc phát triển và triển khai phần mềm theo cách truyền thống là một quá trình
phức tạp và tốn kém nhiều chi phí cho người dùng. Khi muốn sở hữu một ứng
dụng nào đó, người dùng phải chuẩn bị cả từ trang thiết bị phần cứng, mua và
cài đặt, triển khai phần mềm cũng như phải tốn công sức duy trì hoạt động của
nó.
Với sự ra đời điện toán đám mây, những phiền hà trên đã được tách khỏi vai
trò của người dùng. Với những lợi ích mà điện toán đám mây mang lại, người
dùng có thể sở hữu những ứng dụng theo yêu cầu của mình mà không còn phải
quan tâm đến cơ sở hạ tầng phục vụ cho ứng dụng.
c) Nguyên tắc "rẻ" thay cho "đắt"
Chi phí cho việc sử dụng phần mềm của người dùng sẽ giảm đi đáng kể do
không còn tốn chi phí vào quá trình phát triển hay cài đặt, triển khai và bảo trì
sản phẩm. Mọi chi phí trên giờ đây đều được qui cho các nhà cung ứng dịch
vụ. Tuy nhiên đổi lại việc chi phí được giảm bớt này là các vấn đề về an toàn
dữ liệu, độ trễ của dịch vụ cũng như độ tin cậy của các dịch vụ đó. Người dùng
không thể tự quyết định các vấn đề trên (ngược lại với cách truyền thống) mà
phải hoàn toàn phó mặc cho các nhà cung ứng dịch vụ.
d) Nguyên tắc phân hủy hoặc tái sinh các phần
Với mỗi yêu cầu tài nguyên của người sử dụng, hệ thống sẽ đi tìm kiếm các tài
nguyên rỗi và cung cấp cho yêu cầu đó. Khi người dùng không còn nhu cầu sử
dụng tài nguyên đó nữa, hệ thống sẽ tự động giải phóng tài nguyên này và
chuyển nó về trạng thái rỗi để sẳn sàng phục vụ cho nhu cầu khác.
e) Nguyên tắc dự phòng.
Các dịch vụ trên đám mây thường phục vụ cùng lúc rất nhiều người dùng, do
đó khi xảy ra sự cố sẽ tốn rất nhiều chi phí để khắc phục hậu quả.
Để đảm bảo quá trình phục vụ này được xuyên suốt, các nhà cung ứng dịch vụ
thường đặt rất nhiều máy chủ và đường truyền liên kết ở trạng thái standby để
backup cho các máy chủ và đường truyền đang active. Khi sự cố xảy ra, các
máy chủ và đường truyền standby này ngay lập tức được đưa vào hoạt động để
thay thế các máy, đường truyền gặp sự cố.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 22
IV. KẾT LUẬN
Đóng gói và triển khai sản phẩm phần mềm là quá trình không thể thiếu trong chu
trình phát triển phần mềm. Một phần mềm làm ra dù tốt đến đâu nhưng nếu không
thể triển khai một cách dễ dàng đến với người dùng thì cũng sẽ khó được sử dụng
rộng rãi.
Nhờ áp dụng các nguyên tắc và tư duy sáng tạo mà các nhà cung ứng phần mềm
đã cho ra đời 2 giải pháp mới để triển khai sản phẩm phần mềm đến với người
dùng và đã được đề cập trong tài liệu này là Software appliance và điện toán đám
mây. Đây là những giải pháp đã được áp dụng trong thực tế và giải quyết được
những khó khăn gặp phải trong quá trình triển khai sản phẩm phần mềm theo cách
truyền thống.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 23
V. PHỤ LỤC: Trích dẫn 40 nguyên tắc sáng tạo cơ bản
1. Nguyên tắc phân nhỏ
a) Chia đối tượng thành các phần độc lậpb) Làm đối tượng trở nên tháo lắp
được
c) Tăng mức độ phân nhỏ đối tượng
2. Nguyên tắc “tách khỏi”
Tách phần gây “phiền phức” (tính chất “phiền phức”) hay ngược lại tách phần duy
nhất “cần thiết” (tính chất “cần thiết”) ra khỏi đối tượng
3. Nguyên tắc phẩm chất cục bộ
a) Chuyển đối tượng (hay môi trường bên ngoài, tác động bên ngoài) có cấu
trúc đồng nhất thành không đồng nhất
b) Các phần khác nhau của đối tượng phải có các chức năng khác nhau
c) Mỗi phần của đối tượng phải ở trong những điều kiện thích hợp nhất đối
với công việc
4. Nguyên tắc phản đối xứng
Chuyển đối tượng có hình dạng đối xứng thành không đối xứng (nói chung giảm
bậc đối xứng)
5. Nguyên tắc kết hợp
a) Kết hợp các đối tượng đồng nhất hoặc các đối tượng dùng cho các hoạt
động kế cận
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 24
b) Kết hợp về mặt thời gian các hoạt động đồng nhất hoặc kế cận
6. Nguyên tắc vạn năng
Đối tượng thực hiện một số chức năng khác nhau, do đó là không cần sự tham gia
của đối tượng khác.
7. Nguyên tắc “chứa trong”
a) Một đối tượng được đặt bên trong đối tượng khác và bản thân nó lại chứa
đối tượng thứ ba …
b) Một đối tượng chuyển động xuyên suốt bên trong đối tượng khác.
8. Nguyên tắc phản trọng lƣợng
a) Bù trù trọng lượng của đối tượng bằng cách gắn nó với đối tượng khác, có
lực nâng.
b) Bù trừ trọng lượng của đối tượng bằng tương tác với môi trường như sử
dụng các lực thủy động, khí động …
9. Nguyên tắc gây ứng suất sơ bộ
Gây ứng suất trước đối với đối tượng để chống lại ứng suất không cho phép hoặc
không mong muốn khi đối tượng làm việc (hoặc gây ứng suất trước để khi làm
việc sẽ dùng ứng suất ngược lại)
10. Nguyên tắc thực hiện sơ bộ
a) Thực hiện trước sự thay đổi cần có, hoàn toàn hoặc từng phần đối với đối
tượng.
Bài thu hoạch môn phương pháp nghiên cứu khoa học Trang 25
b) Cần sắp xếp đối tượng trước, sao cho chúng có thể hoạt động từ vị trí thuận
lợi nhất, không mất thời gian dịch chuyển
11. Nguyên tắc dự phòng
Bù đắp độ tin cậy không lớn của đối tượng bằng cách chuẩn bị các phuơng tiện
báo động, ứng cứu, an toàn.
12. Nguyên tắc đẳng thế
Thay đổi điều kiện làm việc để không phải nâng lên hay hạ xuống các đối tượng.
13. Nguyên tắc đảo ngƣợc
a) Thay vì hành động như yêu cầu của bài toán, hành động ngược lại (ví dụ
không làm nóng mà làm lạnh đối tượng).
b) Làm phần chuyển động của đối tượng (hay mội trường bên ngoài) thành
đứng yên và ngược lại phần đứng yên thành chuyển động.
14. Nguyên tắc cầu (tròn) hóa
a) Chuyển những phần thẳng của đối tượng thành cong, mặt phẳng thành mặt
cầu, kết cấu hình hộp thành kết cấu hình cầu.
b) Sử dụng các con lăn, viên bi, vòng xoắn.
c) Chuyển sang chuyển động quay, sử dụng lực ly tâm.
15. Nguyên tắc linh động
a) Cần thay đổi các đặc trưng của đối tượng hay môi trường bên ngoài sao cho
chúng tối ưu trong từng giai đoạn làm việc.