Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 299 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
299
Dung lượng
28,27 MB
Nội dung
PGS.TS Huỳnh Xuân Hiệp BỘ MÔN CÔNG NGHỆ PHẦ N MỀ M Khoa CNTT& TT – Trường ĐH Cần Thơ Tổng quan Thiết kế liệu/lớp Thiết kế kiến trúc Thiết kế giao diện Thiết kế thành phần Thiết kế hướng mẫu Thiết kế hướng web Thiết kế hướng dịch vụ [1] IBM Rational Software, DEV496 Mastering IBM Rational Software Architect – Acme Case Study (Part No 800-027176-000), IBM Rational University, 2005 [2] IBM Rational Software, DEV496 Mastering IBM Rational Software Architect – Student Exercise Guide (Part No 800-027175-000), IBM Rational University, 2005 [3] Julia H Allen et al., Software Security Engineering, Pearson Education, 2008 [4] Barry W Boehm, Software Engineering, IEEE Computer Society - Wiley, 2007 [5] Alphonse Carlier, Le développement du logiciel, Hermes, 1995 [6] Scott E Donaldson and Stanley G Siegel, Successful Software Development (2nd edition), Prentice Hall, 2000 [7] Christopher Harris-Jones, Knowledge Based Systems Methods: A Practitioners’ Guide, Prentice Hall, 1995 [8] IEEE, Guide to the Software Engineering Body of Knowledge - SWEBOK®, IEEE Computer Society, 2004 [9] IEEE Std 610.12-1990, IEEE Standard Glossary of Software Engineering Terminilogy, IEEE, 1990 [10] Stephen H Kan, Metrics and Models in Software Quality Engineering, Addison-Wesley, 2002 [11] Per Kroll and Philippe Kruchten, The Rational Unified Process Made Easy: A Practitioner's Guide to the RUP, Addison Wesley, 2003 [12] Philippe Kruchten, The Rational Unified Process: An Introduction (2nd, 3rd editions), Addison Wesley, 2000, 2003 [13] Craig Larman, Agile and Iterative Development: A Manager's Guide, Addison Wesley, 2003 [14] Timothy C Lethbridge and Robert Laganière, Obiect-Oriented Software Engineering: Practical Software Development Using UML and Java, McGraw-Hill, 2002 [15] Raymond J Madachy, Software Process Dynamics, IEEE Press – Wiley, 2008 [16] Mario E Moreira, Software Configuration Management Implementation Roadmap, Wiley, 2004 [17] Rational Software White Paper, Reaching CMM Levels and with the Rational Unified Process, Rational Software Corporation, 2000 [18] John W Rittinghouse, Managing Software Deliverables: A Software Development Management Methodology, Digital Press – Elsevier, 2004 [19] Robert E Park, Software Size Measurement: A Framework for Counting Source Statements, Technical Report CMU/SEI-92-TR-020 ESC-TR-92-020, 1996 [20] Roger S Pressman, Software Engineering: A Practitioner’s Approach (5th, 6th, 7th editions), McGraw-Hill, 2003, 2005, 2009 [21] Stephen R Schach, Object-Oriented and Classical Software Engineering (5th,6th,7th, 8th editions), McGraw-Hill, 2002, 2005, 2007, 2011 [23] Ian Sommerville, Software Engineering (6th,8th editions), Addison-Wesley, 2001, 2006 [24] Jeff Tian, Software Quality Engineering: Testing Quality Assurance and Quantifiable Improvement, IEEE Computer Society - Wiley, 2005 [25] Hans van Vliet, Software Engineering: Principals and Practice (2nd edition), Wiley, 2000 [26] MK.PUB, Design Patterns, Nhà xuất bản Phương Đông, 2005 [27] http://www.rspa.com/ [28] http://www.sei.cmu.edu/ [29] http://computingcareers.acm.org/ TỔNG QUAN (Overview) Thiết kế phần mềm bao gồm tập hợp nguyên tắc, khái niệm và thực hành dẫn đến phát triển hệ thống chất lượng cao sản phẩm Nguyên tắc thiết kế thiết lập triết lý quan trọng mà hướng dẫn người thiết kế công việc thiết kế phải thực Khái niệm thiết kế phải hiểu trước chế thực hành thiết kế áp dụng Việc thực hành thiết kế dẫn đến việc tạo đại diện khác phần mềm Thiết kế đóng vai trò then chốt cho thành cơng cơng nghệ phần mềm Mục đích thiết kế tạo mơ hình miêu tả thể độ vững chắc, tính thương phẩm thích thú Để thực điều này, cần phải thực hành đa dạng hóa (diversification) sau hội tụ (convergence) Quyết định thiết kế với thiết kế thay từ lựa chọn khác nhau: ◦ Đường thẳng biểu diễn cho tùy chọn ◦ Đường đậm nét tập hợp định đưa Thiết kế phần mềm nằm lõi kỹ thuật (technical kernel) công nghệ phần mềm và áp dụng không phụ thuộc vào mơ hình quy trình phần mềm sử dụng Bắt đầu từ yêu cầu phần mềm phân tích và mơ hình hóa, thiết kế phần mềm là hành động công nghệ phần mềm cuối hoạt động mơ hình hóa (modeling) đặt giai đoạn xây dựng (sinh mã lệnh kiểm thử) Mỗi phần tử mơ hình u cầu (requirements model) cung cấp thơng tin là cần thiết để tạo bốn mơ hình thiết kế (design model) cần thiết cho đặc tả thiết kế hoàn chỉnh mơ hình thiết kế: ◦ ◦ ◦ ◦ Thiết kế liệu/lớp (data/class design) Thiết kế kiến trúc (architectural design) Thiết kế giao diện (interface design) Thiết kế thành phần (component design) 10 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 ... tạo sở cho hoạt động thiết kế liệu Một phần thiết kế lớp kết hợp với thiết kế kiến trúc phần mềm Thiết kế lớp chi tiết thực thực thiết kế thành phần phần mềm 13 Thiết kế kiến trúc xác... người thiết kế công việc thiết kế phải thực Khái niệm thiết kế phải hiểu trước chế thực hành thiết kế áp dụng Việc thực hành thiết kế dẫn đến việc tạo đại diện khác phần mềm Thiết kế đóng... tin là cần thiết để tạo bốn mơ hình thiết kế (design model) cần thiết cho đặc tả thiết kế hoàn chỉnh mơ hình thiết kế: ◦ ◦ ◦ ◦ Thiết kế liệu/lớp (data/class design) Thiết kế kiến trúc (architectural