Bài giảng Phát triển vận hành bảo trì phần mềm - Chương 5: Khả năng sử dụng lại và kiểm thử - Nguyễn Thị Thanh Trúc
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Phát triển vận hành bảo trì phần mềm - Chương 5: Khả năng sử dụng lại và kiểm thử - Nguyễn Thị Thanh Trúc", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bai_giang_phat_trien_van_hanh_bao_tri_phan_mem_chuong_5_kha.ppt
Nội dung text: Bài giảng Phát triển vận hành bảo trì phần mềm - Chương 5: Khả năng sử dụng lại và kiểm thử - Nguyễn Thị Thanh Trúc
- TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM PHÁT TRIỂN VẬN HÀNH BẢO TRÌ PHẦN MỀM ThS. NGUYỄN THỊ THANH TRÚC UIT-VNUHCM 2009 1
- Nội dung (Chương 5) TÍNH DÙNG LẠI VÀ KHẢ NĂNG DÙNG LẠI KiỂM THỬ TIN Thảo luận và làm bài tập UIT-VNUHCM 2009 Company Logo 2
- Chương 4: KHẢ NĂNG SỬ DỤNG LẠI VÀ KiỂM THỬ 5.1 TÍNH DÙNG LẠI VÀ KHẢ NĂNG DÙNG LẠI 5.2 KiỂM THỬ UIT-VNUHCM 2009 3
- KHẢ NĂNG SỬ DỤNG LẠI VÀ KiỂM THỬ q TÍNH DÙNG LẠI VÀ KHẢ NĂNG DÙNG LẠI o Giới thiệu o Định nghĩaDefinitions o Mục đích của việc sử dụng lại o Mục tiêu và lợi ích của việc dùng lại o Hướng tiếp cận của dùng lại o Phân tích phạm vi o Công nghệ cấu phần o Mô hình qui trình dùng lại o Các yếu tố tác động lên việc sử dụng lại q KiỂM THỬ o Giới thiệu o Định nghĩa o Tại sao kiểm thử phần mềm o Công việc của người kiểm thử phần mềm o Kiểm thử gì và như thế nào o Phân loại kiểm thử o Thẩm định và đánh giá o Kế hoạch kiểm thử UIT-VNUHCM 2009 4
- 5.1 TÍNH DÙNG LẠI VÀ KHẢ NĂNG DÙNG LẠI qGiới thiệu qĐịnh nghĩa qMục đích của việc sử dụng lại qMục tiêu và lợi ích của việc dùng lại qHướng tiếp cận của dùng lại qPhân tích phạm vi qCông nghệ cấu phần qMô hình qui trình dùng lại qCác yếu tố tác động lên việc sử dụng lại UIT-VNUHCM 2009 5
- Mục đích của việc sử dụng lại qTo increase productivity: qTo increase quality: qTo facilitate code transportation: qReduction in maintenance time and effort: qTo improve maintainability: UIT-VNUHCM 2009 6
- Bài tập qExercise 8.3 Give reasons why it is important to reuse programs instead of writing them from scratch. qExercise 8.4 What benefits can be derived from reusing software? UIT-VNUHCM 2009 7
- Approaches to Reuse qComposition-Based Reuse o Black-box reuse: o White-box reuse: qGeneration-Based Reuse o Application Generator Systems o Transformation-Based Systems o Evaluation of the Generator-Based Systems UIT-VNUHCM 2009 8
- Phân tích phạm vi qHorizontally reusable and vertically reusable components UIT-VNUHCM 2009 9
- Công nghệ cấu phần (Components engineering) qDesign for Reuse o Characteristics of Reusable Components o Problems with Reuse Libraries qReverse Engineering qComponents-Based Processes UIT-VNUHCM 2009 10
- Characteristics of Reusable Components qGenerality: qCohesion versus coupling: qInteraction: qUniformity and standardisation: qData and control abstractions: qInteroperability: UIT-VNUHCM 2009 11
- Problems with Reuse Libraries qThe granularity and size dilemma: qThe search problem: qThe classification problem: qThe specification and flexibility problems: UIT-VNUHCM 2009 12
- qExercise 8.5 Compare and contrast the different approaches to reuse, giving examples of systems that can be obtained from each of these approaches. UIT-VNUHCM 2009 13
- Mô hình qui trình dùng lại q This is a result of several factors [133]: q Software reuse is not inherently top-down, as are some of the lifecycle models (for example, the waterfall model). q In software reuse, the developer or maintainer takes a view that extends beyond single projects or systems. q Reuse involves the exploitation of commonality at many levels of abstraction besides that easily captured in code. q Reuse depends, to a large extent, on the ability to analyse specific domains in order to extract maximally reusable components. Structured methodologies designed for top- down life-cycle models, however, rarely provide specific techniques to analyse domains. UIT-VNUHCM 2009 14
- qGeneric Reuse/Reusability Model UIT-VNUHCM 2009 15
- generic reuse model q The steps of this generic reuse model are summarised below: q Step 1: This step involves understanding the problem to be solved and then identifying a solution structure based on predefined components available. q Step 2: The solution structure is then reconfigured in order to maximise the potential of reuse at the current and the next phase. q Step 3: The major task at this stage is preparing the reusable components identified in the solution structure in readiness for integration. q Step 4: The main aim at this stage is integrating the completed components into the product(s) required for the next phase of the software life-cycle. q Step 5: In this step, the experience from the preceding steps is used to evaluate the reusability prospects of two categories of component. The first category is those components that need to be developed forthe sub-problems for which no reusable components exist. UIT-VNUHCM 2009 16
- Accommodating a Reuse Process Model UIT-VNUHCM 2009 17
- Các yếu tố tác động lên việc sử dụng lại qTechnical Factors o Programming Languages o Representation of Information o Reuse Library o Reuse-Maintenance Vicious Cycle qNon-Technical Factors o Initial Capital Outlay o Not Invented Here Factor o Commercial Interest o Education o Project Co-ordination o Legal Issues UIT-VNUHCM 2009 18
- q Exercise 8.6 You have just joined a team of software engineers in which you are the only one who has studied and practised software reuse and reusability. The company you work for has no reuse programme although they are willing to start one. You are asked to implement the reuse programme. o What is the first step you would take? o Outline the technical, managerial and organisational steps you o would go through. What tactics do you need to employ in order for the programme to succeed? o What difficulties do you anticipate and how would you overcome them? UIT-VNUHCM 2009 19
- qExercise 8.7 A mechanical engineering contractor has been using a large and complex Fortran software system for over 12 years. There is no documentation for the system and the maintenance programmers have moved to a different company. In order to take advantage of state-of-the-art parallel machines, the contractor wants the software to be reimplemented on a parallel platform. o Briefly describe the techniques that will be needed to accomplish the task. o How would you go about performing the job, bearing in mind the merits of software reuse? UIT-VNUHCM 2009 20
- 5.2 KiỂM THỬ qGiới thiệu qĐịnh nghĩa qTại sao kiểm thử phần mềm qCông việc của người kiểm thử phần mềm qKiểm thử gì và như thế nào qPhân loại kiểm thử qThẩm định và đánh giá qKế hoạch kiểm thử UIT-VNUHCM 2009 21
- Tại sao kiểm thử phần mềm qQuestion: Why do we test software? Answer: To see if it works? Another question and answer was given to compare: qQuestion: Why did you drive across town today? Answer: To look at the opening hours notice on the shop, to see if it will be open on the 3rd Saturday in June next year. UIT-VNUHCM 2009 22
- qTesting Code o Black Box and White Box Testing o Structured Testing o Integration Testing o Regression Testing UIT-VNUHCM 2009 23
- Yêu cầu thực hiện tuần tiếp theo qViết lại các báo cáo cho các thảo luận trên lớp và các bài tập qTiếp tục chuẩn bị công việc cho nhóm qMỗi nhóm tự chuẩn bị tìm hiểu và thử nghiệm một trong các công cụ hỗ trợ qui trình bảo trì hướng dẫn sử dụng và demo trước lớp UIT-VNUHCM 2009 24