Tải bản đầy đủ

phương pháp nghiên cứu khoa học trong tin học phân tích các nguyên tắc sáng tạo qua quá trình phát triển của web


Đại học Công Nghệ Thông Tin

Phương pháp nghiên cứu
khoa học trong tin học

Phân tích các nguyên tắc sáng tạo qua quá
trình phát triển của Web

Giáo viên hướng dẫn: GS.TSKH. Hoàng Kiếm


Học viên
Lương Chấn Viễn
MSHV
CH1101155
Niên khóa
K6-2011














TP. Hồ Chí Minh, tháng 04 năm 2012

Mục lục
Khái niệm về Nghiên cứu khoa học
Khoa học
Nghiên cứu khoa học
Phân loại theo chức năng nghiên cứu
Triz
40 nguyên tắc (thủ thuật trong sáng tạo)
Nguyên tắc phân nhỏ
Nguyên tắc tách khỏi
Nguyên tắc phẩm chất cục bộ
Nguyên tắc phản đối xứng
Nguyên tắc kết hợp
Nguyên tắc vạn năng
Nguyên tắc chứa trong
Nguyên tắc phản trọng lượng
Nguyên tắc gây ứng suất sơ bộ
Nguyên tắc thực hiện sơ bộ
Nguyên tắc dự phòng
Nguyên tắc đẳng thế
Nguyên tắc đảo ngược
Nguyên tắc cầu (tròn) hoá
Nguyên tắc linh động
Nguyên tắc giải “thiếu” hoặc “thừa”
Nguyên tắc chuyển sang chiều khác
Nguyên tắc sử dụng các dao động cơ học
Nguyên tắc tác động theo chu kỳ
Nguyên tắc liên tục tác động có ích
Nguyên tắc “vượt nhanh”
Nguyên tắc biến hại thành lợi
Nguyên tắc quan hệ phản hồi
Nguyên tắc sử dụng trung gian
Nguyên tắc tự phục vụ
Nguyên tắc sao chép (copy)
Nguyên tắc “rẻ” thay cho “đắt”
Thay thế sơ đồ cơ học
Sử dụng các kết cấu khí và lỏng
Sử dụng vỏ dẻo và màng mỏng
Sử dụng các vật liệu nhiều lỗ
Nguyên tắc thay đổi màu sắc
Nguyên tắc đồng nhất
Nguyên tắc phân hủy hoặc tái sinh các phần
Thay đổi các thông số hoá lý của đối tượng
Sử dụng chuyển pha
Sử dụng sự nở nhiệt
Sử dụng các chất oxy hoá mạnh
Thay đổi độ trơ
Sử dụng các vật liệu hợp thành (composite)
Sự phát triển của Web
Web sơ khai
Server side Web Engine
CSS
Javascript - DHTML Web

Web application
Tương lai của web
Tóm tắt các nguyên tắc được sử dụng quá trình phát triển Web
Nguyên tắc phân nhỏ
Nguyên tắc tách khỏi
Nguyên tắc thực hiện sơ bộ
Nguyên tắc tự phục vụ
Kết luận
Tài liệu tham khảo



Lời mở đầu
Sự phát triển của khoa học và công nghệ thể hiện sự phát triển của một quốc gia. Một đất
nước phát triển không phài là một nước giàu tài nguyên khoáng sản, mà là nơi có trình độ
khoa học kỹ thuật cao. Vì thế người nghiên cứu phái biết và nắm rõ những nguyên tắc và
phương pháp làm khoa học và vận dụng trong thực tiễn của mình.
Tin học là công cụ hỗ trợ mạnh mẽ cho công việc của con người. Tin học phát triển giúp
cho con người có thể giải quyết vấn đề một cách hiệu quả, dễ dàng và tiết kiệm. Hiện nay,
Tin học có thể được coi là ngành khoa học có tốc độ phát triển cao. Vì thế đòi hỏi các nhà
nghiên cứu phát triển phải không ngừng lao động để đưa ra kết quả theo kịp quá trình phát
triển và nhu cầu ngày càng cao của con người.
Chuyên đề “Phương pháp nghiên cứu khoa học trong tin học” là nguồn kinh nghiệm được
đúc kết, tích lũy của các quá trình nghiên cứu từ trước đến nay. Là công cụ định hướng cho
ta cách thức giải quyết vấn đề để đạt được mục tiêu kỳ vọng.
Bài tiểu luận này sẽ trình bày tóm lượt các nguyên tắc sáng tạo và những ứng dụng của nó
trong lĩnh vực tin học. tiếp theo là phần phân tích quá trình phát triển của mạng máy tính
hay cụ thể là các ứng dụng web (đang là một xu hướng thịnh hành của thời đại). Bài tiểu
luận thể hiện kiến thức của em đã đạt được qua môn học này. Qua đó, em cũng xin được
gửi lời cám ơn đến thầy Hoàng Kiếm. Những bài giảng của thầy đã giúp em có được nền
tảng kiến thức về các phương pháp nghiên cứu khoa học.

Khái niệm về Nghiên cứu khoa học
Khoa học
Khoa học là quá trình nghiên cứu nhằm khám phá ra những kiến thức mới, học thuyết
mới,… về tự nhiên và xã hội. Những kiến thức hay học thuyết mới này, tốt hơn, có thể thay
thế dần những cái cũ, không còn phù hợp. Ví dụ: Quan niệm thực vật là vật thể không có
cảm giác được thay thế bằng quan niệm thực vật có cảm nhận.
Như vậy, khoa học bao gồm một hệ thống tri thức về qui luật của vật chất và sự vận động
của vật chất, những qui luật của tự nhiên, xã hội, và tư duy. Hệ thống tri thức này hình
thành trong lịch sử và không ngừng phát triển trên cơ sở thực tiễn xã hội. Phân biệt ra hai
hệ thống tri thức: tri thức kinh nghiệm và tri thức khoa học.
Nghiên cứu khoa học
Nghiên cứu khoa học là một họat động tìm kiếm, xem xét, điều tra, hoặc thử nghiệm. Dựa
trên những số liệu, tài liệu, kiến thức,… đạt được từ các thí nghiệm NCKH để phát hiện ra
những cái mới về bản chất sự vật, về thế giới tự nhiên và xã hội, và để sáng tạo phương
pháp và phương tiện kỹ thuật mới cao hơn, giá trị hơn. Con người muốn làm NCKH phải có
kiến thức nhất định về lĩnh vực nghiên cứu và cái chính là phải rèn luyện cách làm việc tự
lực, có phương pháp từ lúc ngồi trên ghế nhà trường.
Phân loại theo chức năng nghiên cứu
Nghiên cứu mô tả
là những nghiên cứu nhằm đưa ra một hệ thống tri thức về nhân dạng sư vật, giúp con
người phân biệt được sự khác nhau, về bản chất giữa sự vật này với sự vật khác. Nội dung
mô tả có thể bao gồm mô tả hình thái, động thái, tương tác; mô tả định tính tức là các đặc
trưng về chất của sự vật; mô tả định lượng nhằm chỉ rõ các đặc trưng về lượng của sự vật.
Nghiên cứu giải thích
là những nghiên cứu nhằm làm rõ nguyên nhân dẫn đến sự hình thành và quy luật chi phối
quá trình vận động của sự vật. Nội dung của giải thích có thể bao gồm giải thích nguồn gốc;
động thái; cấu trúc; tương tác; hậu quả; quy luật chung chi phối quá trình vận động của sự
vật.
Nghiên cứu dự báo
là những nhiên cứu nhằm nhận dạng trạng thái của sự vật trong tương lai. Mọi dự báo đều
phải chấp nhận những sai lệch, kể cả trong nghiên cứu tự nhiên và xã hội. Sự sai lệch trong
kết quả dự báo có thể do nhiều nguyên nhân : sai lêch khách quan trong kết quả quan sát:
sai lệch do những luận cứ bị biến dạng trong sự tác động của các sự khác; mội trường cũng
luôn có thể biến động, …
Nghiên cứu sáng tạo
là nghiên cứu nhằm làm ra một sự vật mới chưa từng tồn tại. Khoa học không bao giờ dừng
lại ở mô tả và dự báo mà luôn hướng vào sự sáng tạo các giải pháp cải tạo thế giới.
TRIZ
TRIZ - Lý thuyết giải các bài toán sáng chế, là phương pháp tạo ra những ý tưởng sáng tạo
từ kết quả điều tra một số lượng lớn các bằng sáng chế.

TRIZ đơn giản chỉ là chuỗi những thủ thuật sáng tạo giúp bạn nhìn thấy vấn đề từ nhiều góc
độ khác nhau, giúp bạn hiểu thấu đáo vấn đề thực sự là gì, và nhìn ra các giải pháp có thể.
TRIZ có nhiều cấp bậc thực hiện, từ việc sử dụng các công cụ của nó một cách riêng lẻ để
có được những lời giải tốt, đến việc làm việc một cách hệ thống nhờ chuổi các kỹ thuật sáng
tạo và tìm ra đáp án tốt nhất cho vấn đề.

40 nguyên tắc (thủ thuật trong sáng tạo)
Nguyên tắc phân nhỏ
Nội dung
Chia đối tượng thành các phần độc lập.
Làm đối tượng trở nên tháo lắp được.
Tăng mức độ phân nhỏ đối tượng.
Ứng dụng
Áp dụng hầu như ở mọi mặt trong tin học, từ lập trình (lập trình thủ tục) cho đến việc xây
dựng một hệ thống lớn. Nhờ vào đó, công việc thực hiện dễ dàng hơn, thuận tiện hơn. Và
việc tái sử dụng các module giúp linh hoạt hơn trong việc hơn trong việc thiết kế cũng như
sửa chữa, nâng cấp.
Nguyên tắc tách khỏi
Nội dung
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.
Ứng dụng
Được ứng dụng song song với nguyên tắc phân nhỏ, nguyên tắc tách khỏi giúp cho việc
thiết kế xây dựng hệ thống đơn giản hơn nhiều. Các thành phần được tách riêng,được xây
dựng trên các ngôn ngữ khác nhau. Sau đó được kết hợp lại thành một ngôn ngữ hoàn
chỉnh.
Người ta thường tách các server (nơi có lượng dữ liệu vào ra lớn) thành một mạng riêng lẻ
so với mạng của các user bình thường khác.
Các hệ thống quan trong được tách ra và đặt sau Firewall để bảo vệ dữ liệu.
Máy laptop có phần sạc được tách riêng ra ngoài so với máy, làm tính di động của máy cao
hơn, trong khi các máy để bàn, tivi thì bộ nguồn nằm bên trong thân máy.
Nguyên tắc phẩm chất cục bộ
Nội dung
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.
Các phần khác nhau của đối tượng phải có các chức năng khác nhau.
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.
Ứng dụng
Trong một hệ thống thường ta tách phần nhân với phần giao diện ra. Nhờ đó ta đạt được
hiệu suất thực thi cao từ phần nhân.
Nguyên tắc phản đối xứng

Nội dung
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ật đối
xứng).
Ứng dụng
Trong thiết kế con chuột cho máy tính, ban đầu con chuột có hình dạng đối xứng. Nhưng
sau này người ta thiết kế con chuột với đường cong một bên, thuận tiên cho tay thuận của
người sử dụng. Không những thế, những thế hệ chuột đời mới, người ta còn thêm nút sử
dụng vào phần hông bên ngón cái (nhưng phần hông bên ngón áp út và ngón út thì không),
giúp người sử dụng linh hoạt hơn trong việc điều khiển chuột. Cũng như thế, khi ban đầu,
bộ phận cảm ứng chuyển động thường được thiết kế ở ngay giữa con chuột, nhưng do hoạt
động của cánh tay cố định tai cổ tay và vươn dài tại các ngón tay người ta thiết kế bộ phận
cảm ứng lệch một chút để tầm hoạt động của chuột rộng hơn.
Tương tự như thế, thiết kế bàn phím, ban đầu các phím được sắp xếp theo hàng thẳng
(hình trái), hhưng sau này, ta thiết kế lại hơi cong sao cho phù hợp với tay người sử dụnh.

Trong bàn phím laptop, với thiết kế cong như vậy, không những giúp người dùng thuận tiện
trong việc đánh máy, mà còn giúp người dùng đở phiền phức hơn với touchpad. Vì với thiết
kế bàn phím cong ra ngoài thì khi đán 2 lòng tay người dùng sẽ cách xa hơn và “khó” đụng
chạm vào touchpad hơn.

Nguyên tắc kết hợp
Nội dung
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.
Kết hợp về mặt thời gian các hoạt động đồng nhất hoặc kế cận.
Ứng dụng
Trong tính toán, ta kết hợp rất nhiều máy tính để xử lý chung một vấn đề lớn hiện đang là
một lĩnh vực rất được quan tâm: Grid computing.
Kết hợp dịch vụ truyền thoại với Internet ta có VoIP.
Nguyên tắc vạn năng
Nội dung
Đối tượng thực hiện một số chức năng khác nhau, do đó không cần sự tham gia của các đối
tượng khác.
Ứng dụng

Các smart-phone hiện nay đang rất được quan tâm do tính tiện dụng của nó. iPhone chính
là một trong số các điện thoại tiêu biểu như vậy. Kết hợp điện thoại với máy chụp hình, nhờ
đó ta sẽ không bỏ lỡ dịp để chụp những bức hình đẹp có thể xuất hiện bất cứ lúc nào. Và
ngay tức khắc, ta có thể chia sẽ lên mạng mà không cần dây nối, máy tình rườm rà. Không
những thế, smart-phone có thể đóng vai trò một tờ báo, một máy nghe nhạc, một máy trò
chơi điện tử cầm tay, một trợ lý nhắc nhở ta.
Hiện nay trên thị trường có bán các router-wifi có chức năng như một router, vừa có khả
năng phát wifi.
Các tivi thế hệ mới như GoogleTV cho phép ta có thể xem Tivi chất lượng cao mà còn có
thể lướt các trang web như Youtube, Netflix…
Nguyên tắc chứa trong
Nội dung
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
Một đối tượng chuyển động xuyên suốt bên trong đối tượng khác.
Ứng dụng
Được thể hiện trong môt nguyên lý của lập trình hướng đối tượng: Encapsulation. Bên trong
mỗi đối tượng chứa dữ liệu thể hiện tình trạng hay thuộc tính của nó. Mỗi đối tượng được
trang bị những hành vi hay phương thức để thực hiện một số nhiệm vụ nhất định, nhằm
thông báo hay làm thay đổi thuộc tính của chính nó. Đối tượng là sự kết hợp dữ liệu và thao
tác trên dữ liệu đó thành một thể thống nhất.
Nguyên tắc phản trọng lượng
Nội dung
Bù trừ trọng lượng của đối tượng bằng cách gắn nó với các đối tượng khác có lực nâng.
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
Nguyên tắc gây ứng suất sơ bộ
Nội dung
Gây ứng suất trước 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).
Nguyên tắc thực hiện sơ bộ
Nội dung
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.
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.
Ứng dụng
Các template được thiết kế sẳn, được định dạng sẳn các vị trí, giúp cho người dùng dễ
dàng hơn. Khi bắt đầu viêt một văn bản trong MS Word, MS Word cung cấp cho ta các mẫu

template trình bày của một bài báo cáo, lên kế hoạch một dự án… Nhờ vào đó, công việc
được giảm thiểu nhiều hơn. Thời gian thiết kế, tinh chỉnh được giảm thiểu.
Trong tìm kiếm, lập chỉ mục giúp ta tìm kiếm dễ dàng hơn, nhanh chóng hơn. Trong việc
sắp xếp tìm kiếm, thuật toán PageRank sẽ cho điểm các kết quả tìm kiếm trả về được. Nhờ
vào đó, việc tìm kiếm sẽ nhanh chóng hơn vì các kết quả tốt sẽ xuất hiện trước.
Nguyên tắc dự phòng
Nội dung
Bù đắp độ tin cậy không lớn của đối tượng bằng cách chuẩn bị trước các phương tiện báo
động, ứng cứu, an toàn.
Ứng dụng
Là một nguyên tắc không thể bỏ qua, nhất là các lĩnh vực trong doanh nghiệp. Các hệ thống
được thiết kế đều phải để ý đến việc sao lưu dữ liệu, đề phòng các rủi ro từ nhiều cấp độ
khác nhau. Nhờ vào các nguyên tắc dự phòng, ta có thể khắc phục nhanh các sự cố, giảm
thiểu thiệt hại.
Trong lập trình, các VCS (version control system) như Subversion hay Git giúp cho lập trình
viên dễ dàng quản lý các project, phục hồi lại những version cũ một cách chính xác.
Nguyên tắc đẳng thế
Nội dung
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.
Ứng dụng
P2P network là một tiêu biểu trong việc áp dụng nguyên tắc đẳng thế. Nó loại bỏ việc kết
nối vào một máy chủ duy nhất từ các máy con. Loại bỏ các hiện tượng nghẽn cổ chai, quá
tải cho server. Một trong các ứng dụng rộng rãi là Torrent. Cách chia sẽ mạng ngang hàng
Torrent giúp cho việc chia sẽ dữ liệu dễ dàng hơn, mà không bị hạn chế bởi các nhược
điểm của cách thức truyền thống.
Nguyên tắc đảo ngược
Nội dung
Thay vì hành động như yêu cầu 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).
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.
Nguyên tắc cầu (tròn) hoá
Nội dung
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.
Sử dụng các con lăn, viên bi, vòng xoắn.
Chuyển sang chuyển độg quay, sử dung lực ly tâm.
Ứng dụng

Điều khiển cầm tay trong trong trò chơi điện tử ban đầu chỉ có 4 phím bấm theo 4 hướng,
sau này được cải tiến thành joystich có thể trượt theo hình tròn, giúp người chơi điều khiển
dễ dàng hơn, chính xác hơn.
Nút điều khiển trên iPod xoay theo dạng hình tròn giúp người dùng lướt nhanh (fast forward)
hay tăng giảm âm lương một cách liên tục không đứt quãng. Nếu thiết kế trượt theo đường
thẳng, khi đến cuối đường trượt, ta phải đưa ngón tay về và trượt tiếp, làm cho thao tác
không liên tục, dễ gây mỏi, không chính xác.
Nguyên tắc linh động
Nội dung
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.
Phân chia đối tượng thành từng phần, có khả năng dịch chuyển với nhau.
Nguyên tắc giải “thiếu” hoặc “thừa”
Nội dung
Nếu như khó nhận được 100% hiệu quả cần thiết, nên nhận ít hơn hoặc nhiều hơn “một
chút”. Lúc đó bài toán có thể trở nên đơn giản hơn và dễ giải hơn.

Ứng dụng
Trong sản xuất CPU 4 nhân của AMD, 85% sản phẩm hoàn thiện, 10% sản phẩm bị hư 1
nhân, 3 nhân còn lại chạy tốt, và 5% sản phẩm hoàn toàn không thể hoạt động gì. Hãng này
đã vô hiệu hóa nhân hư trong 10% sản phẩm và gọi nó là CPU 3 nhân và bán ra thị trường
1
.
Nâng hiệu suất từ 85% lên 95%. Cách giải quyết này không những giúp cho hãng AMD giải
quyết được bài toán kinh tế, mà còn giúp cho người dùng có dòng sản phẩm 3 nhân năng
suất cao hơn dòng 2 nhân mà giá tiền không chênh lệch mấy ($110 cho 3 nhân và $100 cho
2 nhân) thay vì mua loại 4 nhân có giá từ $300 trở lên.
Nguyên tắc chuyển sang chiều khác
Nội dung
Những khó khăn do chuyển động (hay sắp xếp) đối tượng theo đường (một chiều) sẽ được
khắc phục nếu cho đối tượng khả năng di chuyển trên mặt phẳng (hai chiều). Tương tự,
những bài toán liên quan đến chuyển động (hay sắp xếp) các đối tượng trên mặt phẳng sẽ
được đơn giản hoá khi chuyển sang không gian (ba chiều).
Chuyển các đối tượng có kết cấu một tầng thành nhiều tầng.
Đặt đối tượng nằm nghiêng.
Sử dụng mặt sau của diện tích cho trước.
Sử dụng các luồng ánh sáng tới diện tích bên cạnh hoặc tới mặt sau của diện tích cho
trước.
Ứng dụng
Các thuật toán PCA
2
, ICA
3
trong máy học giúp giảm bớt số chiều của feature x, làm cho việc
phân tích dữ liệu đơn giản và hiệu quả hơn.
Một số việc kiểm thử các ràng buộc trong việc nhập dữ liệu của người dùng được thực hiện
bên client thay vì bên server. Làm cho việc truyền dữ liệu được giảm tải nhiều hơn.
Bàn phím được đặt nằm nghiêng hơn so với mặt phẳng ngang, giúp ta dễ dàng đánh máy
hơn.
Nguyên tắc sử dụng các dao động cơ học
Nội dung
Làm đối tượng dao động. Nếu đã có dao động, tăng tầng số dao động (đến tầng số siêu
âm).
Sử dụng tầng số cộng hưởng.
Thay vì dùng các bộ rung cơ học, dùng các bộ rung áp điện.
Sử dụng siêu âm kết hợp với trường điện từ.
Ứng dụng
Kính 3 chiều có tần số tắt mở, làm cho mắt trái và mắt phải tạ cùng một lúc nhận được hình
ảnh khác nhau. Do đó ta nhận được các hình ảnh có độ sâu, giúp cảm nhận như thật hơn.
Nguyên tắc tác động theo chu kỳ
1
http://www.cpu-world.com/info/AMD/Unlocking_cores_and_L3.html
2
Principal component analysis
3
Independent component analysis


Nội dung
Chuyển tác động liên tục thành tác động theo chu kỳ (xung).
Nếu đã có tác động theo chu kỳ, hãy thay đổi chu kỳ.
Sử dụng các khoảng thời gian giữa các xung để thực hiện tác động khác.
Nguyên tắc liên tục tác động có ích
Nội dung
Thực hiện công việc một cách liên tục (tất cả các phần của đối tượng cần luôn luôn làm việc
ở chế độ đủ tải).
Khắc phục vận hành không tải và trung gian.
Chuyển chuyển động tịnh tiến qua lại thành chuyển động qua.
Ứng dụng
Dữ liệu được đưa đọc và xử lý một cách liên tục và lưu trữ tạm ở bộ đệm buffer thay vì mỗi
lần cần thì mới đọc và xử lý.
Nguyên tắc “vượt nhanh”
Nội dung
Vượt qua các giai đoạn có hại hoặc nguy hiểm với vận tốc lớn.
Vượt nhanh để có được hiệu ứng cần thiết.
Ứng dụng
Để quay một đoạn video, người ta chụp liên tục các hình ảnh với tốc độ nhanh, và chiếu liên
tục với tốc độ nhanh, làm người sử dụng có cảm giác như đang nhìn một chuyển động thực
vậy.
Để chụp một hình ảnh ở tốc độ nhanh, máy chụp hình được chỉnh tốc độ đóng cửa chập
cao nhất để các điểm ảnh tại thời điểm chụp không bị “nhiễu” bởi sự thay đổi ánh sáng của
thời điểm tiếp theo.
Nguyên tắc biến hại thành lợi
Nội dung
Sử dụng những tác nhân có hại (thí dụ tác động có hại của môi trường) để thu được hiệu
ứng có lợi.
Khắc phục tác nhân có hại bằng cách kết hợp nó với tác nhân có hại khác.
Tăng cường tác nhân có hại đến mức nó không còn có hại nữa.
Ứng dụng
Các chương trình diệt virus có hại đối với các hacker, nhưng các hacker lại lợi dụng sự tin
tưởng của người dùng về chương trình diệt virus để gạt người dùng cài đặt chương trình
diệt virus giả mạo
4
và kiểm soát máy tính của họ.
Nguyên tắc quan hệ phản hồi
4
Moheeb Abu Rajab and Luca Ballard (2010-04-13). The Nocebo Effect on the Web: An
Analysis of Fake Anti-Virus Distribution. Google. Retrieved 2010-11-18.

Nội dung
Thiết lập quan hệ phản hồi
Nếu đã có quan hệ phản hồi, hãy thay đổi nó.
Ứng dụng
Trong kết nối TCP, bên nhận luôn truyền thông tin phản hồi cho bên gửi để đảm bảo được
các tính chất của TCP.
Catch và throw exception trong quá trình thực hiện nếu xảy ra lỗi.
Nguyên tắc sử dụng trung gian
Nội dung
Sử dụng đối tượng trung gian, chuyển tiếp.
Ứng dụng
Các tracker làm đơn vị trung gian để kết nối các peer trao đổi dữ liệu với nhau trong giao
thức truyền dữ liệu P2P.
Nguyên tắc tự phục vụ
Nội dung
Đối tượng phải tự phục vụ bằng cách thực hiện các thao tác phụ trợ, sửa chữa.
Sử dụng phế liệu, chát thải, năng lượng dư.
Ứng dụng
Các self-managed packet trong truyền dữ liệu có khả năng tìm đường đi tốt nhất của nó.
Nguyên tắc sao chép (copy)
Nội dung
Thay vì sử dụng những cái không được phép, phức tạp, đắt tiền, không tiện lợi hoặc dễ vỡ,
sử dụng bản sao.
Thay thế đối tượng hoặc hệ các đối tượng bằng bản sao quang học (ảnh, hình vẽ) với các
tỷ lệ cần thiết.
Nếu không thể sử dụng bản sao quang học ở vùng biẻu kiến (vùng ánh sáng nhìn thấy
được bằng mắt thường), chuyển sang sử dụng các bản sao hồng ngoại hoặc tử ngoại.
Ứng dụng
Sử dụng các mã, các thư viện được cung cấp trên mạng. Nhất là các cộng đồng mã nguồn
mở.
Sử dụng các phần mềm mô phỏng thay vì mô phỏng vật lý, giảm thiểu rủi ro và tiết kiệm về
kinh tế.
Sử dụng các máy ảo để kiểm thử phần mềm thay vì phải mua máy hay cài máy ở các hệ
điều hành khác nhau.
Sử dụng texture trong đồ họa máy tính thay vì phải render cho từng chi tiết, vừa tốn kém tài
nguyên, vừa chậm.

Nguyên tắc “rẻ” thay cho “đắt”
Nội dung
Thay thế đối tượng đắt tiền bằng bộ các đối tượng rẻ có chất lượng kém hơn (thí dụ như về
tuổi thọ).
Ứng dụng
Các registry trong CPU và các thanh ghi trong RAM là 2 vật dụng thay tế nhau. Registry
trong CPU có tốc độ truy xuất rất nhanh so với thanh ghi trong RAM như giá cả thì mắc hơn
nhiều. Vì thế người ta sử dụng RAM trong việc lưu trữ phần ngoài và registry trong việc lưu
trữ phần trong.
Sử dụng các thuật toán có độ phức tạo cao nhưng cài đặt dễ dàng hơn để giải quyết các bài
toán con có khối lượng không lớn.
Thay thế sơ đồ cơ học
Nội dung
Thay thế sơ đồ cơ học bằng điện, quang, nhiệt, âm hoặc mùi vị.
Sử dụng điện trường, từ trường và điện từ trường trong tương tác với đối tượng
Chuyển các trường đứng yên sang chuyển động, các trường cố định sang thay đổi theo thời
gian, các trường đồng nhất sang có cấu trúc nhất định .
Sử dụng các trường kết hợp với các hạt sắt từ.
Ứng dụng
Dữ liệu thay vì được truyền thông qua dòng điện trong các dây đồng, ta sử dụng ánh sáng
trong các cáp quang, sóng điện từ trong các mạng di động…
Sử dụng các kết cấu khí và lỏng
Nội dung
Thay cho các phần của đối tượng ở thể rắn, sử dụng các chất khí và lỏng: nạp khí, nạp chất
lỏng, đệm không khí, thủy tĩnh, thủy phản lực.
Sử dụng vỏ dẻo và màng mỏng
Nội dung
Sử dụng các vỏ dẻo và màng mỏng thay cho các kết cấu khối.
Cách ly đối tượng với môi trường bên ngoài bằng các vỏ dẻo và màng mỏng.
Sử dụng các vật liệu nhiều lỗ
Nội dung
Làm đối tượng có nhiều lỗ hoặc sử dụng thêm những chi tiết có nhiều lỗ (miếng đệm, tấm
phủ…)
Nếu đối tượng đã có nhiều lỗ, sơ bộ tẩm nó bằng chất nào đó.

Nguyên tắc thay đổi màu sắc
Nội dung
Thay đổi màu sắc của đối tượng hay môi trường bên ngoài
Thay đổi độ trong suốt của của đối tượng hay môi trường bên ngoài.
Để có thể quan sát được những đối tượng hoặc những quá trình, sử dụng các chất phụ gia
màu, hùynh quang.
Nếu các chất phụ gia đó đã được sử dụng, dùng các nguyên tử đánh dấu.
Sử dụng các hình vẽ, ký hiệu thích hợp.
Nguyên tắc đồng nhất
Nội dung
Những đối tượng, tương tác với đối tượng cho trước, phải được làm từ cùng một vật liệu
(hoặc từ vật liệu gần về các tính chất) với vật liệu chế tạo đối tượng cho trước.
Ứng dụng
Microsoft đưa ra .NET Framework cho các lập trình viên dù viết ở ngôn ngữ nào (C#, C++,
F#, VB) đều có thể sử dụng của nhau nhờ biên dịch xuống dạng ngôn ngữ đồng nhất trung
gian CIL.
Nguyên tắc phân hủy hoặc tái sinh các phần
Nội dung
Phần đối tượng đã hoàn thành nhiệm vụ hoặc trở nên không càn thiết phải tự phân hủy (hoà
tan, bay hơi ) hoặc phải biến dạng.
Các phần mất mát của đối tượng phải được phục hồi trực tiếp trong quá trình làm việc.
Ứng dụng
Giải phóng bộ nhớ không cần thiết bởi các destructor trong C++ hoặc GC trong các
managed code như Java, C#
Thay đổi các thông số hoá lý của đối tượng
Nội dung
Thay đổi trạng thái đối tượng.
Thay đổi nồng độ hay độ đậm đặc.
Thay đổi độ dẻo
Thay đổi nhiệt độ, thể tích.
Sử dụng chuyển pha
Nội dung
Sử dụng các hiện tượng nảy sinh trong quá trình chuyển pha như: thay đổi thể tích, toả hay
hấp thu nhiệt lượng

Sử dụng sự nở nhiệt
Nội dung
Sử dụng sự nở (hay co) nhiệt của các vật liệu.
Nếu đã dùng sự nở nhiệt, sử dụng với vật liệu có các hệ số nở nhiệt khác nhau.
Sử dụng các chất oxy hoá mạnh
Nội dung
Thay không khí thường bằng không khí giàu oxy.
Thay không khí giàu oxy bằng chính oxy.
Dùng các bức xạ ion hoá tác động lên không khí hoặc oxy.
Thay oxy giàu ozon (hoặc oxy bị ion hoá) bằng chính ozon.
Thay đổi độ trơ
Nội dung
Thay môi trường thông thường bằng môi trường trung hoà.
Đưa thêm vào đối tượng các phần , các chất , phụ gia trung hoà.
Thực hiện quá trình trong chân không.
Sử dụng các vật liệu hợp thành (composite)
Nội dung
Chuyển từ các vật liệu đồng nhất sang sử dụng những vật liệu hợp thành (composite). Hay
nói chung sử dụng các vật liệu mới.


Sự phát triển của Web
Web sơ khai
Lúc đầu được phát triển trong quân sự, mạng máy tính hiện nay đã trở nên thông dụng với
mọi người trên khắp thế giới. Mạng máy tính giúp ta kết nối và chia sẻ thông tin một cách dễ
dàng, xóa nhòa khoảng cách địa lý và làm cho thế giới trở nên “phẳng” hơn.
Thời kỳ đầu của mạng máy tính là các trang web với nội dung tĩnh. Các thông tin ược trình
bày trên các trang web được viết chỉ bởi ngôn ngữ đặc tả HTML, không thay đổi về nội dung
lẫn hình thức trình bày. Tiểu biểu của các trang web thời kỳ đầu là trang chỉ mục các trang
web yêu thích “Jerry and David's Guide to the World Wide Web” (tiền thân của Yahoo bây
giờ).
Vào giáng sinh năm 1990, máy chủ web đầu tiên trên thế giới ra đời tại phòng thí nghiệm
CERN bởi Tim Berners Lee và các đồng nghiệp.
Server side Web Engine
Nhược điểm của các trang web HTML tĩnh là sự khó khăn trong quản lý, sửa đổi thông tin
của các trang web, cũng như việc thay đổi hình thức trình bày. Cụ thể, các trang web tĩnh
thì cố định, không linh hoạt và dư thừa thông tin, làm cho việc cập nhật thông tin khó khăn
khi phải bảo đảm tính nhất quán của thông tin. Hơn nửa, các trang web tĩnh nghèo nàn
trong việc tương tác với người dùng.
Để giải quyết các vấn đề này, người ta tách bạch thông tin ra khỏi trang web, hay đúng hơn,
các trang web được tạo ra từ thông tin khi người dùng có yêu cầu. Khi đó, thông tin hay dử
liệu được quản lý bởi một module riêng, mọi thao tác trên dữ liệu được thiết kế một cách
dễ dàng hơn, bảo đảm các tính chất cần thiết của dữ liệu như tính đồng bộ, tính nhất quán
hoặc các ràng buộc cụ thể cho từng loại dữ liệu. Các nội dung HTML không còn được tạo
sẳn nửa, thay vào đó, nội dung HTML sẽ được tạo ra tùy vào yêu cầu người dùng.
Ưu điểm:
● Dữ liệu được quản lý riêng, dẫ quán lý, thao tác cũng như đảm bảo các ràng buộc về
dữ liệu.
● Việc xử lý tương tác với người dùng được cải thiện, thông tin trang web được trình
bày một cách linh hoạt, thay đổi tùy theo người dùng.
● Thay đổi kiểu trình bày nội dung dễ dàng và nhất quán.
Các framework phổ biến trong việc xây dựng các website như trên
JSP, ASP(.NET), PHP, Ruby on Rail
CSS
Một trang web ngoài thông tin, người ta còn quan tâm đến hình thức trình bày. Cũng giống
như một văn bản, một trang web cũng có thể được trình bày theo ý của người thiết kế.
Người thiết kế sẽ sắp xếp cách dàn trang, kiểu chữ, độ lớn tùy theo ý của mình. Trước đây,
việc trình bày được đính kèm trong nội dụng HTML, và nếu phải sửa một thuộc tính (ví dụ
như màu chữ) sẽ cần phải nhiều thao tác trên hàng loạt các nội dung trang web, làm cho
việc tùy chỉnh hình thức khó khăn hơn.
CSS được đưa ra nhằm tách riêng việc trình bày trang web và nội dung của nó. Khi đó, ta
có thể điều khiển việc hiển thị nhiều trang web thông qua CSS. Nó chính xác hoác việc định
dạng cách hiển thị của trang web, nhất quán hóa các thông số hiển thị. Và hơn thế nửa, nhà
thiết kế có thể có nhiều kiểu định dạng khác nhau (đặc tả trên các tập tin CSS) để phục vụ

cho các đối tượng người dùng khác nhau, hay cho phép người dùng thay đổi việc trình bày
nội dụng trang web sao cho hợp ý của mình mà không làm phiền đến những người dùng
còn lại.
CSS
● CSS (Cascading Style Sheets) là một ngôn ngữ đặc tả quy định cách trình bày cho
các tài liệu văn bản HTML.
● CSS cung cấp một lượng lớn các thuộc tính trình bày cho các đối tượng trong văn
bản, phong phú và chính xác hơn HTML.
● CSS thể hiện một chuẩn quy định việc trình bày nội dung, giúp cho việc hiển thị nội
dung giống nhau trên các trình duyệt khác nhau như IE, Chrome, Opera, Firefox ,
hay các hệ thống khác nhau (Windows, Mac, Linux).
● CSS ngắn gọn, dễ đọc, dễ viết, dễ quản lý. Tiết kiệm tài nguyên bộ nhớ lẫn băng
thông.
● CSS hướng người dùng, có thể tùy chỉnh CSS cho từng người dùng khác nhau
mà không ảnh hưởng đến người dùng còn lại. CSS hướng phương tiên giúp cho
việc thể hiện nội dung thích hợp cho từng loại phương tiên hiển thị (mobile, tablet,
desktop, printer ).

Trình bày nội dung bởi nhiều cách hiển thị tùy theo đối tượng người dùng.

Nội dung trang web hiển thị tùy theo phương tiện.
Javascript - DHTML Web
Vào năm 1995, Netscape (trình duyệt web thông dụng lúc bấy giờ) giới thiệu Javascript
5

như một loại ngôn ngữ script chạy trên trình duyệt client. Với mục đích chính là cho phép
nhà phát triển web có thể thao tác vào các thành phần của trang web mà chạy trên trình
duyệt của người dùng.
Nếu như trước đây, mỗi thao tác hay tương tác của người dùng đều tạo một post request
đến server, thì việc giới thiệu javascript làm giảm bớt một số các request đến server không
cần thiết. Ví dụ như khi điền thông tin vào một form dữ liệu, javascript chạy trên trình duyệt
sẽ kiểm tra nội dung có phù hợp với ràng buộc hay không mà không cần phải truy cập đến
server để kiểm tra. Việc này giảm bớt lượng công việc cho server, giảm lưu lượng băng
thông không cần thiết, và việc phản hồi cho người dùng được trả về tức thời (nếu có lỗi) tiết
kiệm thời gian.
Ngoài ra, javascript còn hỗ trợ các hiệu ứng trên ứng dụng web. Như ẩn nút nhấn (button)
hay đường link nếu không thỏa một số điều kiện, hay hiện thông tin thông báo lỗi nếu có lỗi
xảy ra làm cho ứng dụng web được thân thiện với người dùng.
5
Press release announcing JavaScript, "Netscape and Sun announce Javascript", PR
Newswire, December 4, 1995

Việc kiểm tra đầu vào bằng javascript được thực hiện trên client, các đầu vào có lỗi được
viền đỏ nổi bật giúp người dùng dễ dàng nhận ra.
Web application
Nội dung của ứng dụng web được tạo ra từ thông tin trên/bởi máy chủ web và trả về cho
người dùng. Người dùng cần thao tác trên dữ liệu (đọc, tạo, xóa, sửa) sẽ tạo ra request đến
máy chủ. Máy chủ nhận được yêu cầu và xử lý, trả thông tin kết quả về cho người dùng
bằng nội dụng đặc tả bởi HTML. Ta thấy lượng thông tin tra đổi từ hai phía (client - server)
được chèn vào trong nội dung HTML là không cần thiết.
Ajax (Asynchronous JavaScript and XML) được giới thiệu như là một phương thức truyền
tải thông tin giữa client và server thông qua javascript. Khi đó, nội dung thông tin được cô
đọng (thay vì biểu diễn thông tin và nội dung trình bày bỡi HTML, ta chỉ biểu diễn thông tin
thuần) và truyền tải về cho client, javascript của client khi bắt được nội dung sẽ thực hiện
công việc của máy chủ web trước đây là xây dựng nội dung trình bày bằng HTML dựa trên
thông tin trả về và đưa ra cho người dùng.
Việc tách bạch thông tin và nội dung trình bày giúp (i) giảm thiểu tối đa lượng công việc (tạo
nội dung trình bày HTML từ thông tin, đọc thông tin từ nội dụng HTML) của máy chủ web,
giảm thiểu băng thông (chỉ truyền thông tin thay vì phải đính kèm trong nội dung trình bày).
Ngoài ra, trình duyệt không cần phải tải lại trang mới (giảm lưu tượng băng thông dư thừa
của các thành phần không cần thiết như hình ảnh, banner), (ii) giảm độ trễ không cần thiết
khi tải và vẽ trang. (iii) Thông tin có thể quản lý dễ dàng hơn tại client và (iv) tương tác giữa
client và server được trong suốt.
Một ví dụ điển hình của các ứng dụng web hiện tại là Google Docs, một ứng dụng văn
phòng có tính năng như Microsoft® Office, gồm các chức năng như soạn thảo văn bản,
bảng tính, bài thuyết trình. Bản thân bài tiểu luận này cũng được soạn thảo trên Google
Docs.


Bảng: Một số ứng dụng web hữu ích

Chức năng Ứng dụng desktop tương ứng
Google Docs
Ứng dụng văn phòng Microsoft Office, LibreOffice
Quản lý ghi chú OneNote (Ms Office)
Quản lý danh bạ
Quản lý dự án Microsoft Project
Google Calendar
Ứng dụng lập lịch, thời
khóa biểu
Ms Outlook, iCal

Soạn thảo bài thuyết
trình


Hiện nay, các ứng dụng web đã phong phú và gần như có thể thay thế được các ứng dụng
desktop thông dụng. Một minh chứng dễ thấy là dự án Chrome OS của Google nhằm xây
dựng một hệ điều hành trên trình duyệt, sử dụng các ứng dụng web thay thế, lưu trữ dữ liệu
trên đám mây.
Tương lai của web
Tuy chưa thể sánh ngang với các ứng dụng trên desktop, các ứng dụng web vẫn có những
điểm nổi trội như chạy bất cứ lúc nào, bất cứ nơi đâu, trên bất cứ nền tảng nào, cho phép
truy cập dữ liệu ở mọi nơi và đồng bộ hóa công việc.
HTML5 đang được phát triển cùng các công nghệ như LocalStorage, IndexedDB xóa
nhòa khoảng cách giữa các ứng dụng web với ứng dụng native trên desktop. Các ứng dụng
web trong tương lai có thể hoạt động offline và đồng bộ dữ liệu khi có kết nối. Ví dụ như
Google Mail Offline cho phép ta soạn thảo mail khi offline và sẽ gửi mail khi có kết nối trở lại,
ngoài ra, Google Mail Offline còn cho phép ta truy cập mail khi không có kết nối internet.

là một game khá phổ biến trên các thiết bị điện thoại thông minh. Game có
các bản cho desktop. Vào cuối năm 2011, hãng Rovio đã hợp tác với Google cho ra đời
phiên bản Angry Bird trên trình duyệt
6
không thua kém phiên bản native trước đó.
Microsoft® vào chiến dịch quảng cáo IE10 sắp ra mắt đã cho ra đời phiên bản Cut the
Rope nổi tiếng chạy trên trình duyệt, nhằm quảng cáo khả năng chạy đồ họa của IE10 so
với các đối thủ khác.
Hai ví dụ trên cho thấy việc phát triển Game trên trình duyệt
7
là một xu hướng sẽ nổi trong
tương lai.
Tóm tắt các nguyên tắc được sử dụng quá trình phát triển Web
Nguyên tắc phân nhỏ
Là nguyên tắc được sử dụng nhiều nhất trong quá trình phát triển. Nguyên tắc phân nhỏ
được áp dụng khi tách riêng thông tin và nội dung trình bày. Kết quả, trong một hệ thống
Website, người ta thường tách riêng ra gồm:
1. Phần quản lý thông tin như các hệ quản trị cơ sở dữ liệu
2. Phần trình bày nội dung thông tin, tùy theo từng hệ thống, việc trình bày nội dung
được thực hiện tại máy chủ hoặc máy truy cập (client) bởi các render engine và
temaplte. Việc trình bày nội dung cũng được phân nhỏ gồm:
a. Cấu trúc nội dung đặc tả trên HTML
b. Hình thức trình bày đặc tả trên CSS
3. Phần giao tiếp giữa máy chủ và máy khách, các request từ client sẽ được hướng
dẫn bởi Router đến các End point.
Nguyên tắc tách khỏi
6
IE9, Chrome 16+, Firefox 8+, Safari for Mac 5+
7
Ở đây, ta không kể các game được phát triển trên nền Flash của hãng Adobe.

Ta tách phần thông tin cần thiết ra khỏi việc trình bày nội dụng, tức thay vì truyền thông tin
đã được đính kèm trong nội dung trình bày làm cho việc thao tác trên thông tin khó khăn, ta
trực tiếp truyền thông tin, rồi mới từ đó tạo nội dung cần trình bày.
Nguyên tắc thực hiện sơ bộ
Ta thực hiện việc xem xét các ràng buộc của thông tin đã thỏa chưa trước khi truyền thông
tin, từ đó giảm bớt số lần và thời gian giao tiếp giữa máy chủ và máy khách.
Nguyên tắc tự phục vụ
Thay vì việc xây dựng nội dung trình bày HTML từ thông tin được thực hiện trên máy chủ, ta
chuyển côgn việc đó xuống cho máy khách (client), khi đó lượng thông tin cần truyền được
cô đọng, việc giao tiếp giữa máy chủ và máy khách hiệu quả hơn, các thao tác trên thông tin
dễ dàng hơn. Hơn nữa, ta đẩy lượng công việc này xuống máy khách giúp giảm bớt công
việc của máy chủ, nơi phải phục vụ cho hàng ngàn, hàng triệu lượt yêu cầu từ các máy
khách.
Kết luận
40 nguyên lý sáng tạo khoa học là một công cụ mạnh mẽ để giải quyết các vấn đề trong tin
học nói riêng vào khoa học nói chung. Đó là kim chỉ Nam trong việc định hướng phương
pháp để giải quyết vấn đề, phát triển sản phẩm Việc học tập và áp dụng các nguyên lý
sáng tạo là cần thiết để đạt được thành công trong cuộc sống. Sử dụng đúng và hợp lý các
nguyên lý sẽ rút bớt thời gian giải quyết vấn đề.


Tài liệu tham khảo
Bài giảng môn học "Phương pháp nghiên cứu khoa học trong Tin học”
Giảng viên: GS. TSKH Hoàng Văn Kiếm.
Phan Dũng, Phương pháp luận sáng tạo và đổi mới (quyển 1 của bộ sách ‘‘sáng tạo và đổi
mới’‘) Trung tâm sáng tao KHKT (TSK), TP.HCM 2004.
Phan Dũng, Thế giới bên trong con người sáng tạo (quyển 2 của bộ sách ‘‘sáng tạo và đổi
mới’‘) Trung tâm sáng tao KHKT (TSK), TP.HCM 2005.
Phan Dũng, Tư duy logich, biện chứng và hệ thống (quyển 3 của bộ sách ‘‘sáng tạo và đổi
mới’‘) Trung tâm sáng tao KHKT (TSK), TP.HCM 2006.
Phan Dũng, Sổ tay sáng tạo : Các thủ thuật (nguyên tắc) cơ bản. Ủy ban khoa học và kỹ
thuật TP.HCM 1992.
Wikipedia - http://wikipedia.org/

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×

×