Tài nguyên của tôi

Hỗ trợ trực tuyến

  • (Nguyễn Tấn Tài)

Điều tra ý kiến

Website của Nguyễn Tấn Tài như thế nào?
Đẹp và hay
Đầy đủ tài liệu
Bình thường
Ý kiến khác

Thống kê

  • truy cập   (chi tiết)
    trong hôm nay
  • lượt xem
    trong hôm nay
  • thành viên
  • Mấy giờ rồi

    Ảnh ngẫu nhiên

    Video_vong_tuan_hoan_cua_nuoc.flv Bang_tuan_hoan_hoa_hoc.jpg Quang_canh_ngay_291945.jpg Luoc_do_phan_bo_rung_o_Viet_Nam.jpg To_chuc_thong_tin_trong_may_tinh.jpg Tin_9.jpg Tin_6.jpg Tin_6_1.jpg 4_seasons.swf Bach_Tuyet_va_7_chu_lun.jpg Bai_Ve_ngoi_nha_dang_xay.jpg Cay_tran_chau_la_tron.jpg Seismic_waves.swf Shadows.swf Cuttings.swf Luoc_do_chien_dich_Thu_Dong_1947.jpg Luoc_do_Viet_Nam.jpg Mach_co_bong_den_va_nam_cham_dien__tr109.jpg Mat_troi_sao_Thuy_sao_Kim_Qua_dat.jpg Mot_so_bien_phap_bao_ve_moi_truong1.jpg

    Thành viên trực tuyến

    1 khách và 0 thành viên

    Nhập môn CNPM

    Wait
    • Begin_button
    • Prev_button
    • Play_button
    • Stop_button
    • Next_button
    • End_button
    • 0 / 0
    • Loading_status
    Nhấn vào đây để tải về
    Báo tài liệu có sai sót
    Nhắn tin cho tác giả
    (Tài liệu chưa được thẩm định)
    Nguồn:
    Người gửi: Nguyễn Tấn Tài (trang riêng)
    Ngày gửi: 16h:30' 23-11-2012
    Dung lượng: 4.2 MB
    Số lượt tải: 4
    Số lượt thích: 0 người
    1
    Chương 1: Tổng quan về CNPM
    2
    Nội dung
    Một số khái niệm cơ bản
    Công nghệ phần mềm
    Quy trình công nghệ phần mềm:
    Quy trình thác nước
    Quy trình thác nước cải tiến
    Quy trình Prototype
    Quy trình xoắn ốc
    3
    Khái niệm về phần mềm
    Ví dụ: xét một số phần mềm sau:
    Phần mềm quản lý học sinh cấp 3.
    Phần mềm quản lý thư viện.
    Phần mềm quản lý nhà sách.
    Phần mềm quản lý khách sạn.
    Phần mềm quản lý phòng mạch tư.
    Phần mềm quản lý sổ tiết kiệm.
    Phần mềm quản lý bán vé chuyến bay.
    Phần mềm xếp thời khóa biểu

    4
    Khái niệm về phần mềm




    Được xem xét ở hai góc độ:
    Góc nhìn người dùng
    Góc nhìn chuyên viên tin học
    Phần mềm là gì?
    5
    Phần mềm dưới góc nhìn của người sử dụng:
    Chương trình thực thi được trên máy tính hoặc các thiết bị chuyên dụng khác
    Nhằm hỗ trợ cho các nhà chuyên môn trong từng lĩnh vực chuyên ngành thực hiện tốt hơn các thao tác nghiệp vụ của mình
    Khái niệm về phần mềm
    6
    Môi trường triển khai phần mềm:
    Máy tính: Desktop, Laptop, Tablet PC…
    Thiết bị chuyên dụng:
    Thiết bị di động: PDA, Pocket PC, ĐTDĐ
    Các thiết bị chuyên dụng khác: set-top box, router,...
    Hỗ trợ làm tốt hơn các thao tác nghiệp vụ:
    Tin học hóa nghiệp vụ hiện đang làm thủ công
    Cải tiến chức năng nghiệp vụ hiện đang được thực hiện trên máy tính
    Đề ra, xây dựng và triển khai chức năng nghiệp vụ mới
    Khái niệm về phần mềm
    7
    Phần mềm dưới góc nhìn của chuyên viên Tin học:
    Đây là một hệ thống bao gồm 3 thành phần cơ bản:
    Thành phần giao tiếp
    Thành phần xử lý
    Thành phần lưu trữ
     Cần được xây dựng để thực hiện theo yêu cầu của người sử dụng
    Khái niệm về phần mềm
    8
    Thành phần giao tiếp (Giao diện):
    Cho phép tiếp nhận các yêu cầu về việc sử dụng phần mềm từ người sử dụng, từ các thiết bị thu thập dữ liệu, hoặc từ các phần mềm khác.
    Cho phép trình bày các kết quả của việc thực hiện các yêu cầu cho người dùng (kết quả của công việc khi thực hiện trên máy tính) hoặc điều khiển hoạt động các thiết bị điều khiển (đóng/mở cửa, dừng hay cho chuyển động…)
    Khái niệm về phần mềm
    9
    Thành phần giao tiếp (Giao diện):
    Một cách tổng quát, thành phần giao tiếp cho phép nhập/xuất thông tin cùng với hình thức trình bày/giao tiếp tương ứng.
    Mục tiêu chính của thành phần này là đưa thông tin từ thế giới thực bên ngoài phần mềm (người sử dụng, các thiết bị, phần mềm khác…) vào bên trong, hoặc ngược lại.
    Khái niệm về phần mềm
    10
    Thành phần xử lý:
    Kiểm tra tính hợp lệ của thông tin nguồn được cung cấp từ người dùng theo các quy định ràng buộc trong thế giới thực
    Ví dụ: chỉ cho mượn tối đa 3 quyển sách, mỗi lớp học không quá 50 học sinh…
    Tiến hành xử lý cho ra kết quả mong đợi theo quy định tính toán có sẵn trong thế giới thực
    Hoặc tiến hành xử lý theo thuật giải tự đề xuất
    Khái niệm về phần mềm
    11
    Thành phần xử lý (tt):
    Việc xử lý dựa trên thông tin nguồn từ người sử dụng cung cấp
    Ví dụ: tính nghiệm phương trình bậc 2 dựa trên các hệ số nhập vào hoặc dữ liệu lưu trữ có sẵn
    Ví dụ: tính tiền phạt dựa trên ngày trả sách được nhập vào và thông tin về loại sách đã được lưu trữ
    Việc xử lý cho ra kết quả có thể dùng để xuất cho người dùng xem qua thành phần giao diện, hay lưu trữ lại qua thành phần lưu trữ, hoặc cả hai
    Khái niệm về phần mềm
    12
    Một cách tổng quát, thành phần xử lý là hệ thống chuyên xử lý tính toán, biến đổi dữ liệu.
    Dùng thông tin nguồn từ thành phần giao diện (chức năng nhập) hay thành phần dữ liệu (chức năng đọc);
    Kiểm tra tính hợp lệ (chức năng kiểm tra) và sau đó tiến hành xử lý (chức năng xử lý) – nếu cần thiết
    Để cho ra kết quả sẽ được trình bày thông qua thành phần giao diện (chức năng xuất) hoặc lưu trữ lại trong thành phần dữ liệu (chức năng ghi)
    Khái niệm về phần mềm
    13
    Thành phần lưu trữ (thành phần dữ liệu)
    Cho phép lưu trữ lại (chức năng ghi) các kết quả đã xử lý
    Ví dụ: Việc mượn sách đã được kiểm tra hợp lệ, bảng lương tháng đã được tính trên bộ nhớ phụ với tổ chức lưu trữ được xác định trước
    Ví dụ: tập tin có cấu trúc, tập tin nhị phân, cơ sở dữ liệu
    Khái niệm về phần mềm
    14
    Thành phần lưu trữ (thành phần dữ liệu)
    Cho phép truy xuất lại (chức năng đọc) các dữ liệu đã lưu trữ phục vụ cho các hàm xử lý tương ứng
    Một cách tổng quát thành phần dữ liệu là hệ thống chuyên đọc ghi dữ liệu cùng với mô hình tổ chức lưu trữ dữ liệu tương ứng.
    Mục tiêu chính của thành phần này là chuyển đổi dữ liệu giữa bộ nhớ chính và bộ nhớ phụ
    Khái niệm về phần mềm
    15
    Khái niệm lớp phần mềm
    Phân lớp theo mục đích sử dụng:
    Lớp phần mềm quản lý học sinh
    Lớp phần mềm đánh cờ
    Lớp phần mềm giải bài tập
    ...
    Phân lớp theo mục tiêu tạo lập
    Lớp phần mềm theo hợp đồng
    Lớp phần mềm khung
    Lớp phần mềm đóng gói
    16
    Khái niệm lớp phần mềm
    Lớp phần mềm:
    Lớp phần mềm là hệ thống các phần mềm trên cùng một lĩnh vực hoạt động nào đó
    Do cùng lĩnh vực hoạt động nên các phần mềm cùng lớp thường có cấu trúc và chức năng tương tự nhau
    Mục tiêu của ngành Công nghệ Phần mềm
    Xây dựng được phần mềm có chất lượng
    Dễ dàng xây dựng phần mềm mới từ các phần mềm có sẵn cùng lớp
    17
    Chất lượng phần mềm
    Phần mềm
    Con người
    Phần cứng
    Phần mềm khác
    Tính đúng đắn
    Tính đúng đắn:
    Đầy đủ
    Chính xác
    Dưới góc nhìn của Người sử dụng
    18
    Chất lượng phần mềm
    Phần mềm
    Con người
    Phần cứng
    Phần mềm khác
    Tính tiện dụng
    Tính tiện dụng:
    Dễ học
    Dễ sử dụng
    Giao diện trực quan
    Tự nhiên
    Tính đúng đắn
    Dưới góc nhìn của Người sử dụng
    19
    Chất lượng phần mềm
    Phần mềm
    Con người
    Phần cứng
    Phần mềm khác
    Tính hiệu quả
    Tính hiệu quả:
    Tối ưu sử dụng CPU*
    Tối ưu sử dụng bộ nhớ*
    Tối ưu sử dụng thiết bị
    Tính đúng đắn
    Tính tiện dụng
    Dưới góc nhìn của Người sử dụng
    20
    Chất lượng phần mềm
    Phần mềm
    Con người
    Phần cứng
    Phần mềm khác
    Tính tương thích
    Tính tương thích:
    Import/Export dữ liệu
    Tương tác
    Tính đúng đắn
    Tính tiện dụng
    Tính hiệu quả
    Dưới góc nhìn của Người sử dụng
    21
    Chất lượng phần mềm
    Phần mềm
    Con người
    Phần cứng
    Phần mềm khác
    Tính tiến hóa
    Tính tiến hóa: một trong các tính chất quan trọng nhất được quan tâm xem xét trong ngành Công nghệ Phần mềm
    Tính đúng đắn
    Tính tiện dụng
    Tính hiệu quả
    Tính tương thích
    Dưới góc nhìn của Người sử dụng
    22
    Chất lượng phần mềm
    Phần mềm
    Con người
    Phần cứng
    Phần mềm khác
    Tính tiến hóa
    Tính đúng đắn
    Tính tiện dụng
    Tính hiệu quả
    Tính tương thích
    ………
    Dưới góc nhìn của Người sử dụng
    23
    Tính dễ kiểm tra: việc kiểm tra các thành phần phù hợp với yêu cầu phần mềm là dễ dàng nhất có thể được
    Tính dễ sửa lỗi: khi có sự không phù hợp (so với yêu cầu) trong quá trình kiểm tra một thành phần, việc phát hiện chính xác “vị trí lỗi” và sửa lỗi là nhanh nhất có thể được.
    Tính dễ bảo trì: khi cần nâng cấp, cải tiến một thành phần (theo yêu cầu mới), việc cập nhật phần mềm là nhanh, chính xác nhất có thể được và đặc biệt là cố gắng hạn chế ảnh hưởng đến các thành phần khác
    Tính tái sử dụng: các thành phần đã thực hiện có thể dùng lại trong các phần mềm cùng lớp (hoặc cùng lĩnh vực) với thời gian và công sức ít nhất có thể được
    Dưới góc nhìn của chuyên viên Tin học
    ………
    Chất lượng phần mềm
    24





    Các chỉ tiêu cơ bản
    Tính dễ hiểu
    Thời gian
    (Phần cứng phát triển)
    Yếu
    tố
    khái
    niệm
    phần
    mềm
    tốt
    Đặc
    trưng
    gần
    đây
    Hiệu suất xử lý
    25
    Phát triển của Công nghệ phần mềm
    Giai đoạn 1 (1950 – giữa 1960)
    Xử lý theo lô, xử lý tập trung, ít xử lý phân tán, ít sửa đổi phần mềm
    Giai đoạn 2 (từ giữa 1960 đến giữa 1970)
    Hệ thống đa chương trình và đa nguời dùng
    Bắt đầu cuộc “khủng hoảng” phần mềm
    Giai đoạn 3 (từ giữa 1970 đến giữa 1980)
    Sự phát triển và sử dụng rộng rãi máy tính cá nhân
    Sự phát triển của các công ty phần mềm
    Giai đoạn 4 (từ giữa 1980 đến nay)
    Phần cứng ngày càng phát triển
    Hệ thống phần mềm ngày càng đa dạng, phong phú, xử lý ngày
    càng phức tạp, công nghệ ngày càng phát triển…
    26
    Cuộc khủng hoảng phần mềm
    Số lượng các phần mềm tăng vọt (do sự phát triển của phần cứng: tăng khả năng, giá thành hạ)
    Có quá nhiều khuyết điểm trong các phần mềm được dùng trong xã hội:
    Thực hiện không đúng yêu cầu (tính toán sai, không ổn định…)
    Thời gian bảo trì nâng cấp quá lâu, chi phí cao, hiệu quả thấp
    Khó sử dụng, Thực hiện chậm
    Không chuyển đổi dữ liệu giữa các phần mềm

    27
    Một số kết luận:
    Việc tăng vọt số lượng phần mềm là điều hợp lý và sẽ còn tiếp diễn
    Các khuyết điểm của phần mềm có nguồn gốc chính từ phương pháp, cách thức và quy trình tiến hành xây dựng phần mềm:
    Cảm tính: mỗi người theo một phương pháp riêng
    Thô sơ, đơn giản: chỉ tập trung vào việc lập trình mà ít quan tâm đến các công việc cần làm khác (khảo sát hiện trạng, phân tích yêu cầu, thiết kế…)
    Thủ công: còn thiếu các công cụ hỗ trợ quy trình phát triển
    Cuộc khủng hoảng phần mềm
    28
    Công nghệ phần mềm
    Khái niệm:
    Công nghệ phần mềm là ngành khoa học nghiên cứu về việc xây dựng các phần mềm có chất lượng cao trong thời gian và chi phí thực hiện hợp lý
    Công nghệ phần mềm
    Phương pháp
    Công cụ
    Quy trình
    29
    Các đối tượng nghiên cứu của Công nghệ phần mềm:
    Quy trình công nghệ phần mềm:
    Hệ thống các giai đoạn mà quá trình phát triển phần mềm phải trải qua, với mỗi giai đoạn cần xác định rõ:
    Mục tiêu, kết quả nhận từ giai đoạn trước đó,
    Kết quả chuyển giao cho giai đoạn kế tiếp
    Phương pháp phát triển phần mềm:
    Hệ thống các hướng dẫn cho phép từng bước thực hiện một giai đoạn nào đó trong quy trình phần mềm
    Công nghệ phần mềm
    30
    Các đối tượng nghiên cứu của Công nghệ phần mềm:
    Công cụ và Môi trường phát triển phần mềm:
    Hệ thống các phần mềm trợ giúp trong lĩnh vực xây dựng phần mềm
    Hỗ trợ các chuyên viên tin học trong các bước xây dựng phần mềm theo một phương pháp nào đó với một quy trình được chọn trước
    Công nghệ phần mềm
    31
    Qui trình Công nghệ phần mềm
    Phần mềm
    Yêu cầu phần mềm
    Lập trình
    Thiết kế
    Lập trình
    Phân tích
    Thiết kế
    Lập trình
    Phân tích
    Thiết kế
    Lập trình
    Kiểm tra
    1
    2
    3
    4
    32
    Qui trình Công nghệ phần mềm
    Phân tích: Mô tả mức phát thảo các thành phần của phần mềm (đã có yêu cầu)
    Thiết kế: Mô tả mức chi tiết các thành phần của phần mềm (đã có yêu cầu)
    Lập trình: Thực hiện các thành phần của phần mềm (đã thiết kế)
    Kiểm tra: kiểm chứng các thành phần của phần mềm (đã thực hiện)
    33
    Quy trình thác nước
    Xác định
    Yêu cầu
    Phân tích
    Thiết kế
    Cài đặt
    Kiểm chứng
    Triển khai
    Khảo sát
    Hiện trạng
    Waterfall
    Các hoạt động trong thế giới thực
    Các yêu cầu
    Mô hình Thế giới thực
    Mô hình phần mềm
    Phần mềm
    Phần mềm
    “chất lượng”
    34
    Quy trình thác nước cải tiến
    Xác định
    Yêu cầu
    Phân tích
    Thiết kế
    Cài đặt
    Kiểm chứng
    Triển khai
    Khảo sát
    Hiện trạng
    35
    Quy trình Prototype
    Xác định
    yêu cầu
    “Thiết kế
    nhanh”
    Xây dựng
    Prototype
    Đánh giá và
    xác định rõ yêu cầu
    Phát triển
    phần mềm
    36
    Quy trình xoắn ốc
    Tiếp xúc
    Khách hàng
    Lập kế hoạch
    Phân tích rủi ro
    Phân tích, thiết kế
    Xây dựng
    và triển khai
    Đánh giá
    của khách hàng
    37
    Bài tập
    Xét phần mềm giải bài tập về đa thức. Giả sử chỉ xét chức năng tính đạo hàm một đơn thức P(x) = a.xn (với a là số thực, n là số nguyên không âm), theo qui tắc tính đạo hàm Q(x) = P’(x) = n.a.xn-1
    Viết chương trình giải phương trình bậc 2
    Xét phần mềm quang hình học, giả sử chỉ xem xét chức năng xác định ảnh của một vật qua một thấu kính. Cho biết công thức xác định ảnh: 1/d + 1/d’ = 1/f
    Chức năng xác định hình chiếu điểm M trên đường thẳng d
    38
     
    Gửi ý kiến

    ↓ CHÚ Ý: Bài giảng này được nén lại dưới dạng RAR và có thể chứa nhiều file. Hệ thống chỉ hiển thị 1 file trong số đó, đề nghị các thầy cô KIỂM TRA KỸ TRƯỚC KHI NHẬN XÉT  ↓