Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 16

CÔNG NGHỆ PHẦN MỀM

I.Phân loại phần mềm


1.Phần mềm theo phương thức hoạt động
1.1
1.2
1.3.Phần mềm nghiệp vụ
1.4.Phần mềm trí tuệ nhân tạo
1.5.Phần mềm nhúng

2.Phần mềm theo kiểu kinh doanh


II.Một số vấn đề trong ptr phần mềm
III.Công nghệ và quy trình phần mềm
1.Công nghệ phần mềm
2.Quy trình ptr phần mềm
CƠ SỞ DỮ LIỆU PHÂN TÁN
CHƯƠNG 1:TỔNG QUAN
Một hệ thống phân tán bao gồm:
+Mạng máy tính : là một tập hợp các máy tính tự vận hành, được kết nối lại và có khả năng trao đổi thông
tin.
+Các máy tính trên một mạng đc kết nối với nhau bằng một đường truyền
+Một mạng máy tính là một trường hợp đặc biệt của môit trường xử lí phân tán

- Hình thức tổ chức hệ thống phân tán


+peer to peer (mô hình nhóm làm việc)
Phù hợp với những hệ thống mạng nhỏ k có yêu cầu cao

+file server(máy dịch vụ file)


Đc gán trực tiếp vào mạng LAN
Một thiết bị quản lý các hd file và phục vụ các máy tính cá nhân đc kết nối trong mạng LAN
Hạn chế: ...

+Client/server ( mô hình khách chủ)


Server có c/n lưu trữ csdl, xử lý các truy vấn và quản lý việc khai thác tài nguyên trên mạng của
máy tính khác
Thuật ngữ client đc sd để chỉ ng khai thác tài nguyên mạng

- Định nghĩa csdl phân tán: là một tập hợp dữ liệu, mà về mặt logic tập hợp này thuộc cùng 1 hệ
thống, nhg về mặt vật lý dữ liệu đó đc phân tán trên các vị trí khác nhau của 1 mạng máy tính, có
một số ràng buộc với nhau.

26/10
-có tính biệt lập và bảo mật
+trong hệ phân tán phức tạp hơn nhiều so với hệ tập trung

Ưu điểm hệ phân tán:


+Đáp ứng nhanh hầu hết các ứng dụng sd dữ liệu tại các trạm
+Tăng cường các đơn thể ứng dụng và csdl mà k làm cản trở ng sd hiện tại
+Kiểm soát dữ liệu địa phương theo hướng hoàn thiện sự tích hợp và quản trị dữ liệu từ xa
Nhược:
+Phần mềm đắt và phức tạp
+Phải xử lí các thay đổi thông báo trong mọi địa điểm
+Khó kiểm soát tính toàn vẹn dữ liệu với nhiều bản sao được phân bố khắp mọi nơi

CÁC LOẠI TRUY XUẤT CSDL PHÂN TÁN


-Truy xuất từ xa thông qua các tác vụ cơ bản
-Truy xuất từ xa thông qua chương trình phụ trợ
=> CSDL phân tán là quan trọng trong kte, tổ chức và kỹ thuật. Chúng có thể được cài đặt trên
một mạng máy tính có phạm vi rộng lớn hoặc nhỏ bé
Hiện nay các DDBMSs thương mại đều tích hợp các ứng dụng phân tnas nên rất tiện cho ng sd
CÂU HỎI:
1. Ưu và nhược điểm của các mạng máy tính
-Ưu:
+Giúp bạn có thể kết nối với nhiều máy tính với nhau để gửi và nhận thông tin khi truy cập
mạng
+Giúp bạn chia sẻ máy in, máy quét và email
+Giúp bạn chia sẻ thông tin với tốc độ nhanh
+Giao tiếp điện tử hiệu quả hơn và ít tốn kém hơn so với khi k có mạng
-Nhược:
+Đầu tư cho phần cứng và phần mềm có thể tốn kém cho quá trình thiết lập ban đầu
+Nếu bạn k thực hiện các biện pháp phòng ngừa, bảo mật, tường lửa thì dữ liệu của bạn sẽ
gặp rủi ro cao
+Một số thành phần của thiết kế mạng có thể phải nâng cấp theo từng năm
+Yêu cầu phải có người có chuyên môn để quản lý và theo dõi liên tục để xử lý các vấn đề về
máy chủ và các vd khác

2. Trong mô hình client/server, hãy cho biết mục đích của:


+trình diễn thông tin phân tán
+trình diễn từ xa
+quản lý dữ liệu từ xa
+phân tán các chức năng
3.Định nghĩa csdl phân tán, hệ quản trị csdl phân tán. Các tphan yêu cầu trong một DDBMSs
thương mại.Cho ví dụ về một csdl phân tán
4.So sánh csdl phân tán và csdl tập trung

CSDL tập trung CSDL phân tán

-Toàn bộ csdl được lưu ở một dàn máy tính ( có thể -Dữ liệu k được lưu trữ tập trung ở một máy
bao gồm một hoặc nhiều máy, được điều hành chung mà được lưu trữ ở nhiều máy trên mạng và
như một máy) được tổ chức thành những csdl con
-Đặc trưng: -Đặc trưng:
+Dữ liệu được lưu trữ trên máy tính trung tâm +Dữ liệu có thể đc lưu trữ ở nhiều csdl con
+Nhiều ng dùng từ xa có thể truy cập csdl +Có thể sd dữ liệu ở nhiều nơi để truy vấn
-Phân loại: -Phân loại:
+Hệ csdl cá nhân +Hệ csdl thuần nhất
+Hệ csdl trung tâm +Hệ csdl hỗn hợp
+Hệ csdl khách chủ

5.Ưu và nhược điểm của hệ phân tán


6. Các truy xuất từ xa trong hệ thống phân tán
CHƯƠNG 2: THIẾT KẾ CÁC HỆ CSDL PHÂN TÁN

2.1.Kiến trúc cơ bản của một csdl phân tán

Hệ quản trị csdl tại vị trí 1 (DBMS 1) Hệ quản trị csdl tại vị trí n (DBMS n)

Sơ đồ định vị : Các sơ
i là đoạn đồ độc
lập vị
j là trạm trí
Sơ đồ ánh xạ địa phương
+Thực hiện ánh xạ các ảnh vật lý lên các đối tượng đc thực hiện bởi hệ quản trị csdl địa phương

Ba yếu tố đc suy ra từ kiểu kiến trúc trên là:


+Tách rời khái niệm phân đoạn dữ liệu với khái niệm định vị dữ liệu
+Biết đc dữ liệu dư thừa
+Độc lập với các hệ quản trị csdl địa phương

*Các chiến lược phân tán dữ liệu


-Tập trung dữ liệu:
+tất cả dữ liệu tập trung một chỗ
+nhược : k sẵn sàng cho ng truy nhập từ xa, chi phí lớn, toàn bộ hệ thống ngừng khi csdl bị sự cố
-Chia nhỏ dữ liệu:
+chia thành các phần nhỏ liên kết với nhau ( o trùng lặp )
+mỗi phần dữ liệu đc đưa đến các trạm một cách thích hợp để sd
-Sao lặp dữ liệu:
+phân thành nhiều bản từng phần
-Phương thức lai

2.2.Các đặc điểm chính của hệ phân tán


2.2.1.Chia sẻ tài nguyên
+Được thực hiện qua mạng truyền thông
+Mỗi tài nguyên cần phải đc quản lý bởi một ctr có giao diện truyền thông
+Các tài nguyên có thể đc truy nhập, cập nhật một cách tin cậy, nhất quán
-Quản lý tài nguyên
+Lập kế hoạch dự phòng
+Đặt tên cho các lớp tài nguyên
+Cho phép tài nguyên đc truy nhập từ nơi này đến nơi khác
+Ánh xạ tên tài nguyên vào địa chỉ truyền thông

2.2.2.Tính mở
Là tính dễ dàng mở rộng phần cứng của nó
Có tính mở cần những điều kiện sau:
+Hệ thống có thể tạo nên bởi nhiều loại phần cứng và phần mềm của nhiều nhà cung cấp khác nhau
+Có thể bổ sung vào các dịch vụ dùng chung tài nguyên mà k phá hỏng hay nhân đôi các dịch vụ đang
tồn tại
+Các giao diện chính của một hệ tương thích với các nhà ptr phần mềm

2.2.3.Khả năng song song


-Hệ phân tán hoạt động trên một mạng truyền thông có nhiều máy tính, mỗi máy có thể có một hay nhiều
CPU
-Có thể thực hiện nhiều tiến trình trg cùng một thời điểm
-Hai trường hợp song song:
+Nhiều ng sd đồng thời đưa ra các lệnh hay các tương tác với ctr ứng dụng
+Nhiều tiến trình server chạy đồng thời, mỗi tiến trình phải đáp ứng yêu cầu từ các clients

2.2.4.Khả năng mở rộng


Khi hệ đc mở rộng phần mềm hệ thống và phần mềm ứng dụng k thay đổi

2.2.5.Khả năng thứ lỗi


+Dùng khả năng thay thế để đảm bảo sự hđ liên tục và hiệu quả
+Dùng các ctr hồi phục dữ liệu khi xảy ra sự cố

2.2.6.Đảm bảo tin cậy và nhất quán


+Bí mật của dữ liệu
+Các chức năng khôi phục hư hỏng phải đảm bảo
+Tính nhất quán thể hiện ở chỗ: k có mâu thuẫn trg nội dung csdl

2.3.Trong suốt phân tán


Tính trong suốt: là việc che khuất đi các thành phần riêng biệt của hệ đối với người sd và những ng lập
trình ứng dụng

2.3.1.Trong suốt phân đoạn


VD: Xét qhe tổng thể NCC(Id,Tên,Tuổi)
Và các phân đoạn: NCC1 , NCC2, NCC3
Khi muốn tìm Id= “Id1” thì chỉ cần tìm trên qhe tổng thể NCC mà k cần biết qhe NCC có phân tán hay
không
SELECT *
FROM NCC
WHERE Id= “Id1”

2.3.2.Trong suốt về vị trí


VD: Với qhe tổng thể R và các phân đoạn như đã nói ở trên nhưng giả sử DBMS cung cấp trong suốt về
vị trí nhưng k cung cấp trong suốt về phân đoạn. Xét câu truye vấn tìm người Id= “Id1”
SELECT *
FROM NCC1
WHERE Id= “Id1”
IF NOT #FOUND THEN
SELECT *
FROM NCC2
WHERE Id= “Id1”

 Đầu tiên hệ thống sẽ thực hiện tìm kiếm ở NCC1 nếu DBMS trả về biến điều khiển #FOUND thì một
câu lệnh truy vấn tương tự đc thực hiện trên NCC2. Ở đây NCC2 đc sao làm hai bản trên hai vị trí 2 và 3,
ta chỉ cần tìm trên NCC2 mà k cần qtam nó ở vị trí nào

2.3.3.Trong suốt ánh xạ địa phương


Là một đặc tính qtrong trong một hệ thống DBMS k đồng nhất

2.3.4.Không trong suốt


CHƯƠNG 2: (tiếp)
2.1 Nội dung thiết kế một htpt

2.1.1.Đối tượng thiết kế của csdl phân tán


+Tiến trình địa phương
+Tính sẵn có và dễ hiểu của dữ liệu phân tán
+Phân chia khối lượng công việc
+Giá cả thiết bị lưu trữ và tính sẵn có

2.1.2.Các công việc cần phải làm để thiết kế hệ thống phân tán
+Xđ kiến trúc mô hình phân tán tổng thể
+Định vị các địa phương cần phân tán, loại hình phân tán sd cho mỗi địa phương
+Tiến hành cân đối các yếu tố đc phân tán bao gồm các phần tử dữ liệu và các hoạt động xử
lý trên mỗi trạm
+Thiết kế csdlpt
+Thiết kế các ctr ứng dụng

2.1.3.Các sp yêu cầu sau khi phân tích thiết kế


1. Mô tả các trạm
+Thông tin địa lý
+Thiết bị vật lý
+Thông tin hạ tầng
+Đặc trưng về con người
2.Mô tả về sd dữ liệu cho mỗi trạm
+Các ptu dữ liệu sd từ hệ thống
+Các ptu dữ liệu cần phải tạo ra
+Các ptu dữ liệu cập nhật
+Các ptu dữ liệu xóa
3.Mô tả qtr nghiệp vụ cho mỗi trạm
+Danh sách các xử lý
+Mô tả các xử lý
4.Các thỏa thuận về phương án kiến trúc hệ thống cho mỗi trạm
+Cho nhu cầu về dữ liệu và xử lý cho trạm đó
+Có cần hay không về các trợ giúp k phải kỹ thuật
+ hệ thống địa phương, nối mạng
+ cấu hình phân tán khác

2.2.Các chiến lược phân tán dữ liệu


+Tập trung dữ liệu
+Chia nhỏ dữ liệu
+Sao lặp dữ liệu
+Phương thức lai

2.3.Phương pháp thiết kế csdl phân tán


2.3.1.Sơ đồ thiết kế tổng thể

-Thiết kế lược đồ quan hệ tổng thể


+Thiết kế các qhe tổng thể
+Mô tả toàn bộ dữ liệu sẽ được dùng trg hệ thống
-Thiết kế phân đoạn : thực hiện chia nhỏ dữ liệu thành các phần
-Thiết kế định vị các đoạn
+Là qtr thực hiện ánh xạ các đoạn vào các trạm khác nhau
+Tạo các ảnh vật lý tại trạm
+Các đoạn dữ liệu được đưa vào các vị trí lưu trữ thích hợp với yêu cầu hoạt động thực tế của hệ thống
-Thiết kế csdl vật lý : thiết kế dữ liệu vật lý cho các qhe tại các trạm
2.3.2.Các phương pháp thiết kế csdlpt
-Thiết kế từ trên xuống
+Thiết kế từ tổng thể đến riêng biệt
+Phân rã một hệ thống lớn thành các hệ thống con
+Phân tích các yêu cầu nhằm định nghĩa môi trường hệ thống
+Thu thập các yêu cầu về dữ liệu và nhu cầu xửu lý của các trạm có sd csdl
+Thiết kế view : xd khung nhìn dữ liệu cho ng sd ở các trạm
+Thiết kế mức quan niệm : là một tiến trình ktra và xđ rõ hai nhóm qhe : ptich thực thể và ptich chức
năng
+Thiết kế phân tán : gồm phân đoạn và định vị
+Thiết kế lược đồ quan niệm địa phương
+Thiết kế vật lý
+Quan sát và ktra

-Thiết kế từ dưới lên


+Chọn một mô hình dữ liệu chung để mô tả lược đồ tổng thể
+Chuyển mỗi lược đồ địa phương theo mô hình dữ liệu chung đã chọn
+Tích hợp các lược đồ địa phương vào lược đồ tổng thể

2.4.Phân mảnh dữ liệu


-Là việc chia một qhe thành nhiều qhe nhỏ hơn dgl phân mảnh qhe
-Các lí do phân mảnh (trg bài giảng)
-Khuyết điểm
-Các kiểu
+Phân mảnh ngang : 1 qhe tổng thể n-bộ R là tách R thành các qhe con n-bộ R1,R2,...
Sao cho qhe R có thể được khôi phục lại từ các qhe con này bằng phép hợp R=R1 U R2 U...U Rk
K bị mất mát dữ liệu, tập các vị từ đóng vai trò qtrong
Có phân mảnh ngang nguyên thủy dựa trên các vị từ được định nghĩa trên qhe đó và dẫn xuất dựa trên các
vị từ đc định nghĩa trên qhe khác
+Dọc : .... sao cho qhe R có thể đc khôi phục lại từ các qhe con này bằng ghép nối R=R1 nối R2 nối....nối
Rk
+Hỗn hợp
ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM
-XÂY DỰNG MỘT BÁO CÁO VỀ KẾ HOẠCH ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM
CỦA MỘT PHẦN MỀM NÀO ĐÓ
CHƯƠNG 1:KHÁI NIỆM VÀ CÁC YẾU TỐ VỀ CHẤT LƯỢNG PHẦN MỀM
1.Đặc điểm
* k sờ nắm được
-Phần mềm là một sp đặc biệt, k giống các sp công nghiệp khác nên ngta thường gọi là ptr phần
mềm
-Để phân biệt sự khác nhau giữa sp phần mềm và các sp khác ta sẽ xem xét 3 đặc điểm sau:
+Độ phức tạp của sp
+Tính trực quan của sp
+Tiến trình sản xuất và ptr phần mềm (các pha trg việc ptpm)
-Phần mềm gồm những phần sau đây:
+Ctr máy tính
+Các thủ tục
+Tài liệu liên quan
+Dữ liệu cần thiết cho sự vận hành của hệ thống
=>Mỗi thành phần đều có chức năng riêng và chất lượng của chúng đóng góp chung vào chất
lượng phần mềm cũng như bảo trì phần mềm sau này.
2.Lỗi phần mềm và nguyên nhân
-3 lỗi chính:
+Error: lỗi khi code có thể là logic, ngữ pháp hoặc khi phân tích hệ thống
+Fault: là các error mà nó gây ra hoạt động k chính xác của phần mềm trg một ứng dụng cụ thể
+Failures:các fault sẽ trở thành failures chỉ khi chúng đc activated, là khi ng dùng cố gắng áp
dụng các phần mềm cụ thể bị faulty=>nguồn gốc của failures chính là error.
-Nguyên nhân:
+Định nghĩa yêu cầu lỗi ( đc coi là nghiêm trọng nhất )
+Lỗi giao tiếp giữa khách hàng và người ptr
+Sự thiếu rõ ràng của các yêu cầu phần mềm
+Lỗi thiết kế logic
+Lỗi coding
+K phù hợp với chỉ thị tài liệu và chỉ thị coding
+Thiếu sót trg qtr kiểm thử
+Lỗi thủ tục
+Lỗi tài liệu
Các giai đoạn ptr pm:
1.Xđ yêu cầu ( khảo sát, đặt vde )
2.Phân tích yêu cầu
3.Thiết kế--kiến trúc
--chi tiết
--giao diện—người và máy
---máy và máy
---phần mềm và phần cứng
--DB
4.Code
5.Kiểm thử
6.Triển khai, bảo trì (tích hợp)
7.Nâng cấp

3.Định nghĩa chất lượng phần mềm và đảm bảo chất lượng phần mềm
-Theo IEEE chất lượng phần mềm là:
+Mức độ mà một hệ thống thành phần hoặc một tiến trình đạt đc yêu cầu đã đặc tả
+......................................................................................................những nhu cầu hay mong đợi
của khách hàng hoặc ng sd
-Theo Daniel Galin:
+Đảm bảo chất lượng phần mềm là một tập hợp các hđ đã đc lập kế hoạch và có hệ thống, cần
thiết để cung cấp đầy đủ sự tin cậy vào quy trình ptr phần mềm hay quy trình bảo trì phần mềm
của sp hệ thống phần mềm phù hợp với các yêu cầu chức năng kỹ thuật cũng như với các yêu cầu
của quản lý mà giữ cho lịch biểu và hoạt động trg phạm vi ngân sách.

4.Yếu tố chất lượng phần mềm


+Yếu tố vận hành: tính chính xác, tin cậy, hiệu quả, tính toàn vẹn, sd được
+Yếu tố rà soát, sửa đổi sp: tính bảo trì, linh hoạt, có thể test đc
+Yếu tố chuyển giao: tính khả chuyển, có khả năng sd lại.

CHƯƠNG 2:
TIẾN TRÌNH RÀ SOÁT HỢP ĐỒNG VÀ CÁC BƯỚC THỰC HIỆN
Chia làm 2 giai đoạn:
- Gd1 : rà soát bản dự thảo đề xuất. Gd này rà soát lại bản dự thảo cuối cùng và những cơ sở đề
xuất những tài liệu yêu cầu của khách hàng, chi tiết yêu cầu thêm của khách hàng và dự diễn giải
các yêu cầu, các ước lượng chi phí và tài nguyên, những hợp đồng hiện tại hoặc là những bản dự
thảo hợp đồng của nhà cung cấp với các đối tác và các nhà thầu phụ
- Gd2 : rà soát lại bản dự thảo hợp đồng trc khi kí

CÁC MỤC TIÊU RÀ SOÁT HỢP ĐỒNG ( BẢN DỰ THẢO ĐỀ XUẤT )


-Mục đích :
+ Những yêu cầu của khách hàng đã đc giải thích chi tiết và có chú giải
+ Lựa chọn những phương pháp thực hiện dự án đã được ktra
+Những khía cạnh hình thức của mqh giữa khách hàng và công ty phần mềm phải được nêu rõ
+ Xđ những rủi ro khi phát triển ( con người, công nghệ,...)
+Ước lượng đầy đủ những tài nguyên và thời gian biểu của dự án
+Ktra năng lực của cty đối với dự án
+Ktra năng lực của khách hàng để đáp ứng những yêu cầu của mình
+Định nghĩa đối tác và nhà thầu phụ tham gia
+Định nghĩa và bảo vệ quyền sở hữu

THỰC THI RÀ SOÁT HỢP ĐỒNG


TRÍ TUỆ NHÂN TẠO
CHƯƠNG 1: TỔNG QUAN VỀ TRÍ TUỆ NHÂN TẠO
1.LỊCH SỬ
- AI ( Artificial Intelligence) là trí thông minh đc thể hiện bằng máy móc, trái ngược với trí thông minh
tự nhiên đc con người thể hiện. Thông thường, thuật ngữ ”trí tuệ nhân tạo” thường đc sd để mô tả các
máy móc( or máy tính) bắt chước các chức năng “ nhận thức” mà con ng liên kết với tâm trí con ng, như
“học tập” và “giải quyết vấn đề”.
- Ba hệ thống khác nhau về AI:
+AI phân tích : dựa trên kq dữ liệu trg quá khứ để phân tích để thông báo các quyết định trg tương lai
+AI con người : có những yếu tố cảm xúc, nhận định, nhận thức như con người
+AI nhân cách hóa : có các đặc điểm của tất cả các loại trí tuệ nhận thức, cảm xúc và xã hội, có khả năng
tự ý thức và tự nhận thức dc trong các tương tác

- Một số định nghĩa khác:


+Hành động giống con người
+Suy nghĩ giống con ng
+Suy luận hợp lý
+Hành động hợp logic
- Lịch sử:
+ Giữa thập niên 1960: khởi đầu lạc quan với nhiều phong trào nghiên cứu rộng
+ Những năm 1974: gián đoạn lần 1, mùa đông AI với sự thất vọng, mất phương hướng và thiếu
hụt kinh phí
+Đầu những năm 1980: hồi sinh nhờ thành công các sp thương mại của AI hệ chuyên gia
+Năm 1987: AI rơi vào gián đoạn và khó khăn lần thứ 2
+Cuối những năm 90 và đầu thế kỉ 21: AI trở thành trợ lý của con ng
+Năm 2015: hàng loạt các dự án phần mềm sd AI (vd: google,..)

2.CÁC LĨNH VỰC TRÍ TUỆ NHÂN TẠO NGHIÊN CỨU

Khả năng Nhánh nghiên cứu Mục tiêu


Học Học máy, học sâu Học máy nghiên cứu, ptr kỹ
thuật giúp máy tính có thể học
trí thức từ dữ liệu đầu vào
Biểu diễn tri thức và suy diễn Các phương pháp biểu diễn trí Nhánh cung cấp cơ sở để máy
thức và suy diễn tính có thể thực hiện vc suy diễn
như con ng
Nghe, nhìn Thị giác máy tính, xử lý tiếng Giúp máy tính có thể nghe và
nói nhìn như con ng
Sd ngôn ngữ Xử lý ngôn ngữ tự nhiên Hiểu đc ngôn ngữ mà con ng sd
Thể hiện cử chi Robotics Thể hiện các hành động và cử
chi như con người

3.CÁC VD TRÍ TUỆ NHÂN TẠO CHƯA GIẢI QUYẾT ĐƯỢC

- Khả năng đặt các câu hỏi và đào sâu vào những lý do và nhân tố cơ bản để thực hiện và hoàn thành một
nhiệm vụ, công việc

- Tính sáng tạo, không có khả năng tưởng tượng

- Khả năng giao tiếp

You might also like