Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 24 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
24
Dung lượng
392,71 KB
Nội dung
TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ C HÍ MINH TRƯỜNG ĐẠI HỌ C KHOA HỌC TỰ NHIÊN N GÀ NH: KHOA HỌC MÁ Y TÍNH BÀI THU HOẠCH MÔN HỌC PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC Đề tài: CÁC NGUYÊN LÝ SÁNG TẠO VÀ PHẦN MỀM MÁY TÍNH Giảng viên hướng dẫ n: GS.TS KH.Hoàng Kiếm Học viên: Nguyễn Khắc Duy Khóa 22 KHMT - Mã s ố: 12 11 017 TP HC M, năm 2012 NGUYỄN KHẮC DUY – K22 – 12 11 017 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH NGUYỄN KHẮC DUY – K22 – 12 11 017 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH Mở đầu Khoa học công nghệ trở thành yếu tố cốt tử phát triển, ảnh hưởng trực tiếp đến kinh t ế toàn cầu Điều đư ợc phản ánh rõ việc hoạch định sách chiến lược phát triển khoa học, cơng nghệ k inh tế nhiều nước giới Nghiên cứu khoa học ngày q uan tâm với việc đầu tư quốc gia Trong thu hoạch em muốn tóm tắt lại số kiến thức phương pháp nghiên cứu khoa học, đồng thời liên hệ với thực tế việc áp dụng “ 40 nguyên lý sáng tạo” phần mềm máy tính Qua đ ây, em xin gửi lời cảm ơn chân thành đến Giáo sư - T iến sỹ Khoa Học Hồng Kiếm, người khơng tận tâm truyền đạt nhữ ng kiến thứ c tảng cho chúng em môn học “Phương pháp nhiên cứu khoa học tin học” mà cịn kích thích tư duy, tăng khả nghiên cứu tìm tịi cá nhân Cũng xin gởi lời cảm ơn đến bạn bè học viên lớp, nhữ ng ngư ời bạn sẵng sàng chia sẻ kiến thức thu nhận với Học viên: Nguyễn Khắc Duy NGUYỄN KHẮC DUY – K22 – 12 11 017 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH MỤC LỤC Mở đầu .3 I GIỚI THIỆU: .5 II LIÊN HỆ 40 NGUYÊN LÝ SÁNG TẠO VÀ PHẦN MỀM MÁY TÍNH : .5 Nguyên tắc phân nhỏ Nguyên tắc “tách khỏi” .6 Nguyên tắc phẩm chất c ục .6 Nguyên tắc phản đối xứng Nguyên tắc kết hợp .8 Nguyên tắc vạn năn g Nguyên tắc “chứa tron g” Nguyên tắc phản trọng lượng .9 Nguyên tắc gây ứn g suất sơ 10 10 Nguyên tắc thực sơ 10 11 Nguyên tắc dự ph òn g 10 12 Nguyên tắc đẳng 11 13 Nguyên tắc đảo n gược 11 14 Ngun tắc c ầu (trịn) hố 11 15 Nguyên tắc linh đ ộng 12 16 Nguyên tắc gi ải “thiếu” h oặc “thừa” 12 17 Nguyên tắc ch uy ển sang chi ều khác 12 18 Nguyên tắc sử dụng dao độn g học 13 19 Nguyên tắc tác động theo ch u kỳ 13 20 Nguyên tắc liên tục tác độn g có ích 14 21 Nguyên tắc “ vượt nhanh” 14 22 Nguyên tắc biến hại thành lợi 14 23 Nguyên tắc quan hệ phản hồi 15 24 Nguyên tắc sử dụng trun g gian 15 25 Nguyên tắc tự ph ục v ụ 15 26 Nguyên tắc chép (copy) 16 27 Nguyên tắc “ rẻ” thay cho “đắt” 16 28 Thay sơ đồ học 16 29 Sử dụng vỏ dẻo m àng mỏng 17 30 Nguyên tắc thay đổi màu sắc 19 31 Nguyên tắc phân hủy tái sinh phần 19 32 Thay đổi thông số hoá lý đố i tượng 19 33 Sử dụng vật liệu hợp thành (com posite) 20 Đặc điểm chung: 21 III KẾT LUẬN: 23 IV TÀI LIỆU THAM KHẢO: 24 NGUYỄN KHẮC DUY – K22 – 12 11 017 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH I GIỚI THIỆU: Genrich Altshuller phát triển 40 nguyên tắc cách 20 năm Ông cộng củ a đánh giá hàn g ngàn sáng chế toàn giới, lựa chọn đặc biệt từ n gành công nghiệp hàng đầu, đúc kết nên chất sáng t ạo giải pháp cho mâu thuẫn kỹ thuật Đặc biệt, Altshuller quan tâm đến việc điều tra mâu thuẫn đư ợc giải mà khơng có thỏa hiệp Altshuller nhận thấy việc sử dụng nguyên tắc trước sử dụng để giải vấn đề tương tự sáng tạo giải pháp khác giải quy ết vấn đề kỹ thu ật Altshuller xác định 40 nguyên t ắc từ phân tích phát minh, sáng chế thành công II LIÊN HỆ 40 NGUYÊN LÝ SÁNG TẠO VÀ PHẦN MỀM MÁY TÍNH : Nguyên tắc p hâ n nhỏ a) Chia đối tư ợng thành phần độc lập Ví dụ: Intelligent Agents (Các tác tử thơng minh) hoạt động độc lập với nhau, đạt đư ợc mục tiêu chung b) Làm đối tư ợng trở nên tháo lắp đư ợc Ví dụ: C++ temp lat es: cung cấp phương tiện chứa mã để tổng quát hóa trường hợp để xử lý, không cần t hiết phải xử lý trường hợp có chung đặc điểm (generic programming) T ối ưu hóa mã nguồn, tránh lặp lại xử lý c) Tăng mức độ phân nhỏ đối tượng Ví dụ: NGUYỄN KHẮC DUY – K22 – 12 11 017 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH Tăng mức độ phân nhỏ đạt đến ngư ỡng - atomic threshold (Ngưỡng nguyên tử đơn vị cấu trúc nhỏ đối tư ợng thành phần, ví dụ, bit xem nguy ên tử bối cảnh chương trình m ã hóa) Phần mềm Ví dụ: Fragm ent ation of Confidential Objects (Tạm gọi Phân mảnh đối tượng bí mật) Ý tưởng này, dự a phân m ảnh đối tư ợng thời gian thiết kế, giảm chế biến đối tượng bí mật, nhiều đối tượng khơng bảo mật s ản xuất thời gian thiết kế, đối tượng ứng dụng đư ợc xử lý máy tính dùng chung khơng đáng tin cậy 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 “cần thiết” (tính chất “cần thiết”) khỏi đối tư ợng Ví dụ 1: Khai t hác văn hình ảnh Kĩ thuật phân tách văn hữu ích việc định vị giải nén khối văn hình ảnh Th uật tốn hoạt động mà khơng có kiến thức trư ớc kích thư ớc văn bản, định hư ớng font chữ Nó thiết kế để loại bỏ thơng tin hình ảnh đánh dấu, xác định khu vực hình ảnh có a văn Ví dụ 2: Parser Dữ liệu phân tích cú pháp đề cập đến q trình lập trình liệu đầu vào đư ợc chia thành m ảnh nhỏ riêng biệt thơng tin mà dễ dàng giải thích hành động Nguyên tắc p hẩm chất cục a) Chuyển đối tư ợng (hay mơi trư ờng bên ngồi, tác động bên ngồi) có cấu trúc đồng thành k hơng đồng b) Các phần khác đối tư ợng phải có chức khác c) Mỗi phần đối tư ợng phải điều kiện thích hợp đối v ới cơng việc NGUYỄN KHẮC DUY – K22 – 12 11 017 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH Ví dụ 1: Một phương pháp lấy mẫu thống không cho nhận dạng ký tự Phương pháp xác định khai thác tính t ính lấy mẫu chiều m ột hướng vng góc với định hướng dịng định Nó mẫu tính khoảng thời gian không thống để tránh misidentifyin g hai dòng gần dịng Ví dụ 2: Non-uniform access algorithms (Các th uật tốn truy cập khơng đồn g đều) Trong môi trư ờng không dây, thông tin phát sóng kênh truyền thơng cho khách hàng cách sử d ụng mạnh mẽ, hoạt động pin palmtops Để bảo tồn lượng, thông t in phát sóng phải tổ c để khách hàng có chọn lọc có t hể điều chỉnh p hần m ong m uốn phát sóng Hầu hết công việc t ại t ập trung vào phát sóng t hống Tuy nhiên, thư ờng xuyên, m ột lượng nhỏ thông tin thư ờng xuyên truy cập số lư ợng lớn khách hàng phần cịn lại nhu cầu Sử dụng chất lư ợng chủ yếu địa phương, khơng thống thuật t ốn đư ợc phát triển để dự đoán hành vi truy cập thích hợp cho hoạt động cụ thể Ví dụ 3: Thúc đẩy đối tượng liệu đến level cao m ột single index tree Xét bối cảnh liệu không gian (spatial data) kĩ thuật xử lý quản lý liệu Không thống liệu mứ c độ đặc tính chung liệu khơng gian Lập mục liệu không đồng cách sử dụng cấu trúc số thông thư ờng khơng gian R-cây khơng hiệu hai lý do: (1) thống nhất, làm tăng khả chồng chéo mục mục, và, (2) phân cụm liệu khơng đồng khơng gian số chết phân nhóm liệu thống Sử dụng cách TRIZ, phải nhìn mơi trường để thự c chức hữu ích Để thực t ác động bất thường "hữu ích", phát m inh kế hoạch t húc đẩy đối tư ợng liệu NGUYỄN KHẮC DUY – K22 – 12 11 017 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH cấp độ cao cấu trúc số dự a cây, nhữ ng đối tượng sau thực chức khác dựa vào bối cảnh vị trí mục Nguyên tắc p 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) Ví dụ: Trong việc xây dựng thuật tốn đồ họa m áy tính ngun lý phản đối xứ ng áp dụng Nguyên tắc kết hợp a) Kết hợp đối tư ợng đồng đối tư ợng dùng cho hoạt động kế cận b) Kết hợp mặt thời gian hoạt động đồng kế cận Ví dụ: Các hệ thống giao dịch trự c tuyến (internet banking, core b anking) ngân hàng Ngày đa số ngân hàng liên minh với việc xử lý giao dịch khách hàng Vì địi hỏi m ỗi ngân hàng phải có phần mềm xử lý giao dịch cho phép liên thông, kết nối, phối hợp đồng với ngân hàng khác Nguyên tắc vạn Đối tư ợng thực số chức k hác nhau, khơng cần tham gia đối tư ợng khác Ví dụ: Simulink phần mềm dùng để mơ hình hóa, mơ p hân tích hệ thống động Sim ulink cho phép mô t ả hệ thống tuyến tính, hệ phi tuyến phương trình thời gian liên tục, gián đoạn hay hệ kết hợp liên tục gián đoạn Hệ thống có nhiều tốc độ khác NGUYỄN KHẮC DUY – K22 – 12 11 017 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH Cơng cụ mơ Sim ulink tích hợp sẵn thư viện mơ hình chứa khối khối nhận tín hiệu, nguồn tín hiệu, phần tử tuyến tính phi ến ,…mơ nhiều lĩnh vự c: hàng không, kỹ thuật số, dao động, khí, giao thơng, …Việc thiết kế Simulink theo ngun tắc vạn giúp tiết kiệm không gian, không cần thiết phải xây dựng m ỗi công cụ cho m ỗi chức Đồng thời, ngư ời dùng tạo khối c mới, tăng số c đối tư ợng Nguyên tắc “chứa tro ng” a) Một đối tư ợng đư ợc đặt bên đối tượng khác thâ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 đối tư ợng khác Ví dụ: Phần mềm Matlab Tính tốn kỹ thuật lĩnh vực rộng lớn Do đó, kho cơng cụ Matlab quản lí theo nguyên tắc a Hộp Toolbox a đựng nhiều Toolbox cho nhiều lĩnh vực khác Bên Toolbox chứa: + Các Tool: phần mềm có cấu trúc khác nhau, sử dụng t hư viện lệnh Toolbox + Help: Danh mục hàm t ham số hàm dùng Toolbox + Demos: chức ví dụ thự c sẵn giải thích + Product Page: trang trao đổi thông tin trực tuyến T ool “M ột đối tượng chuyển động xuyên suốt bên đối tượng khác”, khởi động m ột Tool, chức T ool đuợc khởi động Các chức hoạt động suốt thời gian hoạt động Tool kết thúc đóng T ool Như vậy, chức Tool hồn t ồn chứa T ool Ngun tắc p n trọng lượng a) Bù trừ trọng lư ợng đối tượng cách gắn với đối tư ợng khác có lực nâng b) Bù trừ trọng lư ợng đối tượng tư ơng tác với môi trư ờng sử dụng lự c thủy động, khí động NGUYỄN KHẮC DUY – K22 – 12 11 017 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH Ví dụ: Các p hần mềm open source, chất lư ợng kém, bù trừ cho chi phí quy ền phần mềm Nguyên tắc gây ứng suất sơ Gây ứng suất trư ớc với đối tư ợng để chống lại ứ ng suất không cho phép không mong muốn đối tượng làm việc (hoặc gây ứng suất trước để k hi làm việc dùng ứng suất ngược lại ) Ví dụ: Facebook tạo phương án khắc phúc cố q tải (vơ hiệu hóa c quan trọng để t ăng hiệu chức chính) chứng tỏ Facebook ứ ng dụng nguy ên t ắc ứng suất sơ 10.Nguyên tắc t hực sơ a) Thự c trư ớc thay đổi cần có, hồn toàn phần, đối tượng b) Cần xếp đối tượng trước, cho chúng hoạt động từ vị trí thuận lợi nhất, khơng thời gian dịch chuyển Ví dụ: Java Virtual Machine chuy ển văn m ã thành m ột dạng trung gian trước thực / biên dịch thành dạng số nhị phân cụ thể máy 11.Nguyên tắc dự p hò ng Bù đắp độ tin cậy không lớn đối tượng cách chuẩn bị trước phương tiện báo động, ứng c ứu, an tồn Ví dụ: Trong phần mềm HTM L loại bỏ nhiều thẻ cũ t hực chất có số thẻ cịn sử dụng đư ợc phiên thứ năm thẻ , Nhưng theo ý kiến riêng em, thẻ không khuyến NGUYỄN KHẮC DUY – K22 – 12 11 017 10 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH cáo sử dụng đừng nên sử dụng nhiều Vì sau thẻ thực bị loại bỏ hoàn toàn phiên tương lai Một số thẻ cũ đề nghị thay thẻ có nhiều tính như: Thẻ đư ợc thay thẻ Thẻ , , v.v… thay CSS 12.Nguyên tắc đẳng Thay đổi điều kiện làm việc để nâng lên hay hạ xuống đối tượng Ví dụ: Lập trình ứng dụng web, có số trư ờng hợp giới hạn băn g thơng đường truyền, ta load trang web với dung lư ợng lớn, để giữ ngun băng thơng đư ờng truyền ta phải u mã nguồn website(image, javascript…) 13.Nguyên tắc đảo ngược a) Thay hành động n hư yêu cầu toán, hành độn g ngư ợc lại (ví dụ, k hơng làm nóng mà làm lạ nh đối t ượng) b) Làm phần chuyển động đối tư ợng (hay môi t rườ ng bên ngoài) th ành đứ ng yên ngược lại, phần đứng yên thành chuyển động Ví dụ: Trong số ngơn ngữ lập trình (C, Visual basic…) thay xét số biểu thức logic có giá trị “true” ta lại xét có giá trị “f alse” 14.Ngun tắc cầu (tr ịn) hố a) Chuyển phần thẳng đố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 lăn, viên bi, vòng xoắn c) Chuyển sang chuyển động quay, sử dụ ng l ực l y tâm NGUYỄN KHẮC DUY – K22 – 12 11 017 11 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH Ví dụ: Phần mềm phân tích xử lý tín hiệu thu nhận từ vệ tinh, sử dụng mặt cầu để xác định điểm giao thay sử dụng đư ờng trịn 15.Ngun tắc linh độ ng a) Cần thay đổi đặt trưng đối tượng hay mơi trường bên ngồi s ao cho chúng tối ưu giai đoạn làm việc b) Phân chia đối tượng thành phần, có khả dịch chuyển v ới Ví dụ: Ngơn ngữ lập trình visual basic.net ta có kiểu liệu “object” chứa giá trị thuộc kiểu int, string, double… 16.Nguyên tắc giải “thiếu” hoặ c “t hừa” Nếu k hó nhận 100% hi ệu cần thiế t, nên nhận nhiều “một chút” Lúc to án tr nên đơn giản dễ giải Ví dụ: Một ứng dụng phổ biến Facebook ứng dụng Hình ảnh (Photos), nơi thành viên upload album hình ảnh Facebook cho phép ngư ời dùng tải lên không giới hạn số hình ảnh, so với dịch vụ lưu trữ hình ảnh kh́ c Photobucket Flickr, ́p dụng giới hạn số lượng c ác bứ c ảnh mà ngư ời dùng phép tải lên Điều đóng góp phần thành cơng Facebook ngày 17.Nguyên tắc chuyển sang chiều khác a) Những khó k hăn chuyển động (hay xếp) đối tượng theo đư ờng (một chiều) kh ắc phục c ho đối tượng khả di chuyển mặt phẳng (hai chiều) Tương tự, toán liên quan đến chuyển động (hay x ếp) đối tượng trê n mặt phẳng s ẽ đơn giản hố chuyển sang khơng gian (ba chiều) b) Chuyển đối tư ợng có kết cấu tầ ng thành nhiều tầng NGUYỄN KHẮC DUY – K22 – 12 11 017 12 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH c) Đặt đối tượng nằm nghi êng d) Sử dụng mặt sau diện tích c ho trướ c e) Sử dụng luồng ánh sáng tới diện tích bên cạnh hoặ c tới mặt sau diện tích cho trước Ví dụ: Áp dụng mơ hình thác nước cơng nghệ phần mềm, chuyển sang giai đoạn coding, t a quay trở lại giai đoạn phân t ích thiết kế 18.Nguyên tắc sử dụng dao độ ng họ c a) Làm đối tư ợng d ao động Nếu có dao động, tă ng t ầng số dao động ( đến tầng số siêu âm) b) Sử dụng tầng số cộng hư ởng c) Thay dùng run g học, dùng rung áp điện d) Sử dụng siêu âm kết hợp với trư ờng điện từ Ví dụ: Lĩnh vực điện tốn đám mây (cloud computing), với điện toán đám mây, ngư ời dùng thông thường không cần phải để t âm đến việc đầu tư phần cứng để lưu trữ liệu xử lý công việc Tất mọ i thứ lư u trữ máy chủ nhà cung cấp dịch vụ web Bằng cách này, nhiều người truy cập chia sẻ liệu T rong tương lai, viễn cảnh đư ợc đư a r a người dùng cần thiết bị cài sẵn trình duyệt, khơng cần ổ ng, kết nối Internet truy cập, xử lý liệu từ đâu Trong công nghệ ảo hóa, trước kia, hệ điều hành cần phải cài máy vật lý riêng biệt, cần m áy tính vật lý chạy nhiều hệ điều hành lúc Trong tương lai, điện thoại thông minh khởi động lúc nhiều hệ điều hành(nguồn internet) 19.Nguyên tắc tác độ ng theo chu kỳ a) Chuyển tác động liên tục nh t ác động theo chu k ỳ (xung) b) Nếu có tác động theo chu kỳ, thay đổi chu kỳ NGUYỄN KHẮC DUY – K22 – 12 11 017 13 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH c) Sử dụng khoảng thời gian xung để thực tác động kh ác Ví dụ: Các phần mềm máy tính đa số sử dụng nguyên tắc Có thể lấy số phần mềm ứng dụng phổ biến chương trình virus lập trình cho q trình update liệu Hay window có q trình updat e theo chu kỳ 20.Nguyên tắc liên tục tác động có ích a) Thự c cơng việc cách liên tục (tấ t phần đối tượng cần luôn l àm việc chế độ đ ủ tả i) b) Khắc phục vận hành không tải trung gian c) Chuyển chuyển động tịnh tiến qua lại thành chuyển động qua Ví dụ: Lĩnh vực điện tốn đám mây (cloud comp ut ing), cơng nghệ ảo hóa, hệ thống trung tâm máy chủ phải chạy liên tục 24/24 ngư ời dùng khắp nơi giới, không thời điểm truy cập dịch vụ web xử lý thông tin 21.Nguyên tắc “vượt nha nh” a) Vượt qua giai đoạn có hại nguy hiểm với vận tốc lớn b) Vượt nhanh để có h iệu ứng cần thiết Ví dụ: Phần m ềm diệt virus BKAV có hai chế Quick Scan hay Full Scan 22.Nguyên tắc biến hại thành lợi a) Sử dụng tác nhân có hại (thí dụ tác động có hại mơi trường) để thu đư ợc hiệu ứng có lợi b) Khắc phục tác nhân có hại cá ch kết hợp với tác nhân có hại khác c) Tăng cư ờng tác nhân có hại đến mức khơng cịn có hại Ví dụ: NGUYỄN KHẮC DUY – K22 – 12 11 017 14 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH Ngày quốc gia giới t hường thực phương thứ c chiến tranh điện tử, virus đư ợc lập trình để phá hoại hệ thống phịng thủ, máy bay khơng ngư ời lái… 23.Ngun tắc q ua n hệ p hản hồi a) Thiết lập quan hệ phản hồi b) Nếu có quan hệ phản hồi, thay đổi Ví dụ: Hệ điều hành giao tiếp với ngừ sử dụng nên Windows phải có khả phản hồi lại yêu cầu người dùng thông qua giao diện đồ hoạ thân thiện với ngư ời dùng dể dụng Sau phản hồi Windows chở hành động t iếp theo ngư ời dùng dựa vào để thự c thi process Như trình xử lý tiệp tục m ọi nhu cầu người sử dụng đáp ứng 24.Nguyên tắc sử dụng trung gian Sử dụng đối tư ợng trung gian, chuyển tiếp Ví dụ: Một số ứng dụng phần mềm ngân hàng, chứng khoán, t hư ơng mại điện tử…có số giao dịch có tính chất tạm thời, chờ xử lý, chờ xác nhận… thư ờng ta lưu trữ vào table tạm, sau hoàn tất giao dịch t a đư a liệu vào table thức 25.Nguyên tắc tự p hục vụ a) đối tư ợng phải tự phục vụ cách thực thao tác phụ trợ, sửa chữ a b) Sử dụng phế liệu, chất thải, lượng dư Ví dụ: Symantec Update, ứng dụng kiểm tra định kỳ cập nhật, có nhữ ng thay đổi m ới cần phải cập nhật, đ thị phụ thuộc thực việc thực phục vụ cho ứng dụng NGUYỄN KHẮC DUY – K22 – 12 11 017 15 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH 26.Nguyên tắc chép (copy) a) Thay sử dụng nhữ ng khơng phép, phức tạp, đắt tiền, k hông tiện lợi dễ v ỡ, sử dụng b) Thay đối tượng hệ đối tư ợng quang học (ảnh, hình vẽ) với tỷ lệ cần thiết c) Nếu sử dụng quang học vùng biểu k iến (vùng ánh sáng nhìn thấy đư ợc mắt thường), chuyển sang sử dụng b ản hồng ngoại tử ngoại Ví dụ: Tương tự phần m ềm: T hay tạo đối tượng mà m ất nguồn tài nguyên không cần thiết, ta thự c shallow copy Một shallow copy xây dựng m ột đối tượng hợp chất m ới sau (đến mứ c có thể) chèn tham chiếu vào để đối tượng đư ợc tìm thấy gốc 27.Nguyên tắc “ rẻ” t hay cho “đắt” Thay đối tượng đắt tiền đ ối tượng rẻ có chất lượng (thí dụ tuổi thọ) Ví dụ: Thay ph át triển m ột ứng dụng đầy đủ m ột mẫu thử nghiệm gây chi phí đ tiền, sử dụng Throwaway (or rapid) prototypes Throwaway (or rapid) prototypes: Được xây dựng nhanh tốt, khơng có kỹ thuật thích hợp, Thực yêu cầu chưa hiểu rõ, Được sử d ụng để t ìm hiểu y cầu bị cho có thật không thật, Được “ vứt bỏ” sau thông t in m ong m uốn đư ợc học 28.Thay sơ đồ học a Thay sơ đồ học điện, quang, nhiệt, âm mùi vị NGUYỄN KHẮC DUY – K22 – 12 11 017 16 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH b Sử dụng điện trư ờng, từ trường điện từ trư ờng tư ơng tác v ới đối tượng c Chuyển trư ờng đứng yên sang chuyển động, trư ờng cố định sang thay đổi theo thời gian, trường đồng sang có cấu trúc định d Sử dụng trường k ết hợp v ới hạt sắt từ Đây ví dụ đơn giản: nhận dạng giọng nói làm giảm bớt tác động học việc đánh máy việc gõ nhầm phím 29.Sử dụng vỏ dẻo mà ng mỏ ng a) Sử dụng vỏ dẻo v màng mỏng thay cho kết cấu khối b) Cách ly đối tượng v ới mơi trường bên ngồi vỏ dẻo màng mỏng Ví dụ: Một wrapper (hay adapter object) phân lập đối tư ợng với đối tượng từ m trường bên ngồi cách trì giao diện cố định đ ối tượng bên đối tư ợng bên (đối tượng wrapper) Wrapper tên gọi kỹ thuật tách liệu từ website chuyển đổi nguồn thông tin dạng dễ sử dụng (bao gồm end users developer) Đây nhữ ng giải pháp thu thập liệu thư ơng mại thời kỳ dotcom bùng nổ Wrapper hay gọi xác Wrapper Generation - Wrapper Generator giống robot bán tự động tự động nhận đầu vào website, truy vấn bóc tách phần nội dung có ích trả cho user N guồn liệu thông thường ghi trực tiếp lên database theo mơ hình mà h ệ thống cung cấp trư ớc để phục phụ vào nhữ ng mụ c đích khác Th ời kỳ thư ơng mại điện tử phát triển hệ NGUYỄN KHẮC DUY – K22 – 12 11 017 17 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH thống search chư a thực mạnh nguồn thơng tin có giá cho m ột doanh nghiệp tổ chức Wrapper G eneration khơng có mơ hình kỹ thuật chung m tên gọi cho giải pháp bóc t ách liệu từ net Kỹ thuật có t hể dự a vào trự c tiếp source code HTM L : css, t ag nam e, attributes, để xác định vị trí nội dung cần lấy Hoặc cách khác, phân tích HTML docum ent HTM L DOM Tree dự a vào tree để lấy phần liệu cần thiết (dựa vào index tree node hay tree path, ) M ột cách khác nữ a cho user làm việc trực tiếp renderer browser, nghĩa user phần cần lấy hệ thống tự học ghi lại cấu hình bóc tách, cách thức "học" hệ thống vào html tag nguồn cộng với nhãn (tên) phần nội dung.Wr apper dựa mơ hình mapping, nghĩa đầu vào cung cấp cấu trúc tài liệu chuẩn cho trước, sau lấy data thô về, nguồn data n ày chuyển đổi theo m hình hệ thống tiến hành bóc tách thông tin Những hệ thống phứ c t ạp sau định vị liệu websit e nguồn bắt buộc user phải map kết vào dạng thứ c m họ định ra, chẳng hạn bảng hay xml document HTML Document nguồn liệu định dạng, , hầu hết website "động", có nghĩa liệu định sẵn theo m ột mơ hình chung, trước gửi client Do đó, phân tích cú pháp website cụ thể tìm nhữ ng quy luật bóc t ách nguồn liệu từ w ebsite Tuy nhiên, có kỹ thuật làm việc v ới website khơng có nghĩa chạy tốt v ới website khác Dạng thứ c bày bố khác cộng với HTML document thường bị sai cú pháp, b ản thân html tag có nhiều t ag option (khơng cần đóng được) gây khó khăn cho việc định luật chung để bóc t ách liệu Mỗi kỹ thuật trình bày làm việc tốt m ột nhóm dạng website nhóm w ebsite bán hàng, nhóm website thơng tin, nhóm dịch vụ, forum, X ây dựng Wrapper thường phục phụ cho việc lấy nguồn liệu có ích vào mục đích cụ thể nên hệ thống đạt nhữ ng thành công định Ngày mà yêu cầu chia sẻ nội dung với Sem antic Web, đặc t ả liệu cung cấp dư ới dạng chuẩn (RSS, RDF, NGUYỄN KHẮC DUY – K22 – 12 11 017 18 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH ATOM , M ETA Tag, ) nên vào nhữ ng đặc tả xây dự ng mô hình bóc tách nội dung Hiện có nhiều m hình bóc tách liệu, cần vào google gõ từ Data Ext raction, Crawler, Web Clipping , HTML DOM , thu đư ợc nhữ ng nguồn tài liệu đặc tả chi tiết kỹ thuật bóc tách 30.Nguyên tắc t hay đổi màu sắc a) Thay đổi màu sắc đối tư ợng hay mơi trư ờng bên ngồi b) Thay đổi độ suốt của đối tư ợng hay môi trường bên ngồi c) Để quan sát đối tư ợng trình, sử dụng chất phụ gia màu, hùynh quang d) Nếu chất phụ gia đư ợc sử d ụng, dùng nguyên tử đánh dấu e) Sử dụng cá c hình vẽ, ký hiệu thích hợp Ví dụ: Chứ c transparency (làm suốt) chương trình chỉnh sửa ảnh hay chương trình vẽ 31.Nguyên tắc p hâ n hủy hoặ c tái sinh phầ n a) Phần đối tượng hoàn thành nhiệm vụ trở nên khơng cần thiết phải tự phân hủy (hồ tan, bay ) phải biến dạng b) Các phần mát đối tượng phải đư ợc phục hồi trực tiếp q trình làm việc Ví dụ: Tiến trình thu gom rác ngơn ngữ lập trình Java, định kỳ "dọn dẹp" nhớ cách hủy bỏ đối tượng s ống qua phạm vi chúng 32.Thay đổi thơng số hố lý đối tượng a) Thay đổi trạng thái đối tượng b) Thay đổi nồng độ hay độ đậm đặc NGUYỄN KHẮC DUY – K22 – 12 11 017 19 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH c) Thay đổi độ dẻo d) Thay đổi nhiệt độ, thể tích Ví dụ: Một ứng dụng phần mềm chuyển đổi để cung cấp dịch vụ khác dựa thuộc tính thay đổi tự động Sự linh hoạt cho phép đa vai trò đối tượng ứng dụng 33.Sử dụng vật liệ u hợp nh (composite) Chuyển từ vật liệu đồng sang sử dụng vật liệu hợp thành (composite) Hay nói chung sử dụng vật liệu Ví dụ: Software design patterns (các mẫu thiết kế phần mềm) khái niệm trừu tượng cốt lõi đằng sau thành công giải pháp vấn đề định kỳ thiết kế phần mềm Tổng hợp mẫu thiết kế trừ u tượng cốt lõi đằng sau khuôn khổ thành công theo định kỳ M ột mẫu thiết kế composite tốt m ô t ả t ập mơ hình tích hợp cho thấy kết hợp mà làm cho thành phần nhiều tổng phận Bài viết trình bày ví dụ m ẫu compos ite, thảo luận phân tích kỹ thuật tổng hợp, chứng m inh mơ hình hỗn hợp mở rộng ý tưởng mơ hình từ giải pháp vấn đề khn khổ hư ớng đối tư ợng Trong công nghệ p hần mềm, mẫu thiết kế (Design Pattern) giải pháp áp dụng lại cho vấn đề chung thường gặp thiết kế phần mềm Một phần mềm hồn thành mà khơng có góp mặt Design Pattern ng có mặt Design Pattern giúp xác định toán nhanh giải quy ết cách hiệu Một mẫu thiết kế thiết kế hồn thiện để chuyển đổi trực tiếp thành mã Nó hư ớng dẫn ví dụ mẫu cách giải v ấn đề m có th ể áp dụng vào nhiều tình khác NGUYỄN KHẮC DUY – K22 – 12 11 017 20 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH Các giải thuật không đư ợc xem m ẫu thiết kế, chúng giải vấn đề tính tốn vấn đề thiết kế Các m ẫu thiết kế giúp tăng t ốc trình phát triển phần m ềm cách cung cấp mẫu hình (paradigms) phát triển chứng thực kiểm ng Để thiết kế phần m ềm hiệu đòi hỏi phải xem xét yếu tố m trở nên rõ ràng sau thực Xác định đư ợc chúng, thông qua mẫu thiết kế, thoát khỏi chúng chúng dẫn đến rắc rối lớn cải tiến khả dễ đọc m ã cho ngư ời viết mã nhà kiến trúc cảm thấy quen thuộc với mẫu Thông thư ờng, ngư ời biết cách áp dụng số kĩ thu ật thiết kế phần mềm vào v ài vấn đề cụ thể Những kĩ thuật khó áp dụng mở rộng cho vấn đề khác Các mẫu thiết kế cung cấp giải pháp chung, viết tài liệu m ột định dạng mà không gắn liền với vấn đề cụ thể Các mẫu cho phép nhà phát triển giao tiếp với dùng tên dễ hiểu, dùng rộng rãi để đặt cho tương tác phần mềm Các mẫu thiết kế chung cải tiến qua t hời gian, để trở nên ổn định t hiết kế t heo đặc thù (adhoc designs) Các mẫu thiết kế đư ợc phân loại dựa vào nhiều tiêu chí, chung dựa vào vấn đề mà chúng giải Theo tiêu chuẩn này, mẫu thiết kế phân loại thành nhiều lớp, số chúng là: Các m ẫu Cơ Sở (Fundamental pattern) Các mẫu T ạo Lập (Creational pattern) Các mẫu Cấu Trúc (Structural pattern) Các mẫu Ứ ng Xử (Behavioral pattern) Các mẫu Đồng T hời (Concurrency pattern) Các mẫu xử lí Sự Kiện (Event handling pattern) Các mẫu Kiến Trúc (Architect ural pattern) Đặc điểm chung: NGUYỄN KHẮC DUY – K22 – 12 11 017 21 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH Pattern hiểu theo nghĩa tái sử dụng ý tưởng mã lệnh Pattern cho phép nhà thiết kế ngồi lại với giải quy ết vấn đề mà khơng phải nhiều thời gian tranh cãi Trong nhiều trường hợp, dự án phần mềm thất bại nhà phát triển khơng có hiểu biết chung vấn đề kiến trúc phần mềm Ngoài ra, pattern cung cấp thuật ngữ khái niệm chung t hiết kế Nói cách đơn giản, đề cập đến m ột pattern đấy, biết pattern nhanh chóng hình dung “bức tranh” giải pháp Và cuối cùng, áp dụng pattern hiệu việc bảo trì phần m ềm tiến hành thuận lợi hơn, nắm bắt kiến trúc hệ thống nhanh Pattern hỗ trợ tái sử dụng kiến trúc mô hình thiết kế phần mềm theo quy mơ lớn Cần phân biệt design pattern với fram ework Framework hỗ trợ tái sử dụng mơ hình thiết kế m ã nguồn mức chi tiết Trong đó, design pattern vận dụng mức tổng quát hơn, giúp nhà phát triển hình dung ghi nhận cấu trúc tĩnh động quan hệ tương tác giữ a giải pháp trình thiết kế ứ ng dụng chuyên khu riêng biệt Pattern đa tương thích Patte rn khơng phụ thuộc vào ngơn ngữ lập trình, cơng nghệ tảng lớn J2EE Sun hay Microsoft NET Framework.T iềm ứng dụng pattern lớn Các thiết kế dự a pattern đư ợc sử dụng nhiều phần mềm mã nguồn m ở, tảng J2EE NET… Trong dạng ứng dụng này, có t hể dễ dàng nhận số tên lớp chứa tiền tố hậu t ố Factory, Proxy , Adapter… NGUYỄN KHẮC DUY – K22 – 12 11 017 22 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH III KẾT LUẬN: Sự tương quan vấn đề phần mềm v n guyên tắc sáng tạo mà em tìm hiểu phần nhỏ nhiều mối liên kết thực tiễn phương pháp giải vấn đề t heo khoa học phát minh, sáng ch ế Những nguyên tắc nặng tính vật lý cịn “khoảng cách” với vấn đề phần mềm, lẽ phần m ềm phải xem xét cách trừu tượng, t a “ nắm bắt cách vật lý” Tuy nhiên, ta tìm thấy tương tự ngầm ẩn xem xét kĩ lư ỡng áp dụng TRIZ thường xuy ên cho vấn đề phần mềm NGUYỄN KHẮC DUY – K22 – 12 11 017 23 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH IV TÀI LIỆU THAM KHẢO: Slide giảng “Phương pháp nghiên cứu khoa học T in Học”, GS.TSKH Hoàng Kiếm http://www.triz-journal.com Kevin C Rea, “TRIZ and Software - 40 Principle Analogies”, Part 1, Part Dr Genrich Altshuller, “The Innovation Algorithm”, T echnical Innovation Center, Inc July 2000 Phương pháp nghiên cứu khoa học tin học GS.T SKH Hồng Kiếm Giải tốn máy tính nào, t ập 1,2,3 GS.T SKH Hoàng Kiếm NGUYỄN KHẮC DUY – K22 – 12 11 017 24 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ... TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH MỤC LỤC Mở đầu .3 I GIỚI THIỆU: .5 II LIÊN HỆ 40 NGUYÊN LÝ SÁNG TẠO VÀ PHẦN MỀM MÁY TÍNH : .5 Nguyên tắc... CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH NGUYỄN KHẮC DUY – K22 – 12 11 017 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH... TIỂU LUẬN: CÁC NG UYÊN LÝ SÁNG TẠO VÀ PH ẨN MỀM MÁY TÍNH c) Sử dụng khoảng thời gian xung để thực tác động kh ác Ví dụ: Các phần mềm máy tính đa số sử dụng nguyên tắc Có thể lấy số phần mềm ứng