Giao trinh CNPM Chuong 1doc

20 5 0
Giao trinh CNPM Chuong 1doc

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trong những ứng dụng trước kia được xây dựng thường xuyên không có sự bàn bạc với người sử dụng, sự cô lập của các công nghệ phần mềm đối với người dùng dẫn đến những hệ thống có khả năn[r]

(1)

CHƯƠNG 1

TỔNG QUAN VỀ CÔNG NGHỆ PHẦN MỀM Công nghệ phần mềm -Software Engineering- hoạt động bao gồm: phát triển, đưa vào hoạt động, bảo trì, loại bỏ phần mềm cách có hệ thống Các kỹ sư phần mềm cung cấp với kỹ thuật, công cụ nhằm phát triển hệ thống phần mềm

Như vậy, công nghệ phần mềm lĩnh vực nghiên cứu tin học, nhằm đề xuất nguyên lý, phương pháp, công cụ, cách tiếp cận phương tiện phục vụ cho việc thiết kế cài đặt sản phẩm phần mềm có chất lượng

1.1 MỞ ĐẦU

Ngày nay, phát triển phần mềm ngày thực khó kiểm sốt được; dự án phần mềm thường kéo dài vượt chi phí cho phép Những nhà lập trình chuyên nghiệp phải cố gắng hồn thành dự án phần mềm cách có chất lượng, hạn chi phí cho phép

Mục đích chương đưa nhận định tạo nên tranh sở phương pháp tiếp cận khác công việc tạo nên công nghệ phần mềm Các vấn đề cần làm rõ, chi tiết thêm trình bày chương tiếp sau giáo trình

1.2 MỘT SỐ KHÁI NIỆM CHUNG

Mục tiêu công nghệ phần mềm tạo phần mềm tốt, giảm đến tối thiểu may rủi gây cho người liên quan Trong trình đề cập, sử dụng thuật ngữ:

Phần mềm (software): tập hợp câu lệnh viết nhiều ngơn ngữ lập trình, nhằm tự động thực số chức giải tốn

Cơng nghệ (engineering): cách sử dụng công cụ, kỹ thuật cách giải vấn đề

(2)

Theo quan điểm nhiều nhà nghiên cứu, nhìn cơng nghệ phần mềm mơ hình phân theo ba tầng mà tất tầng nhằm tới mục tiêu chất lượng, chi phí, thời hạn phát triển phần mềm

Mơ hình phân theo ba tầng cơng nghệ phần mềmđược mô tả sau:

Ở tầng quy trình (process) liên quan tới vấn đề quản trị phát triển phần mềm lập kế hoạch, quản trị chất lượng, tiến độ, chi phí, mua bán sản phẩm phụ, cấu hình phần mềm, quản trị thay đổi, quản trị nhân (trong mơi trường làm việc nhóm), việc chuyển giao, đào tạo, tài liệu;

Tầng phương pháp (methods) hay cách thức, công nghệ, kỹ thuật để làm phần mềm: liên quan đến tất công đoạn phát triển hệ thống nghiên cứu yêu cầu, thiết kế, lập trình, kiểm thử bảo trì Phương pháp dựa nguyên lý cho tất lĩnh vực công nghệ kể hoạt động mơ hình hố kỹ thuật mơ tả

Tầng công cụ (tools) liên quan đến việc cung cấp phương tiện hỗ trợ tự động hay bán tự động cho tầng q trình phương pháp (cơng nghệ)

Qua sơ đồ trên, ta thấy rõ công nghệ phần mềm khái niệm đề cập không tới công nghệ công cụ phần mềm mà cịn tới cách thức phối hợp cơng nghệ, phương pháp cơng cụ theo quy trình nghiêm ngặt để làm sản phẩm có chất lượng

Kỹ sư phần mềm (software engineer): người biết cách áp dụng rộng rãi kiến thức cách phát triển ứng dụng vào việc tổ chức phát triển cách có hệ thống ứng dụng Cơng việc người kỹ sư phần mềm là: đánh giá, lựa chọn, sử dụng cách tiếp cận có tính hệ thống, chuyên biệt, rõ ràng việc phát triển, đưa vào ứng dụng, bảo trì, thay phần mềm

Do đặc điểm nghề nghiệp, người kỹ sư phần mềm phải có kỹ như:

- Định danh, đánh giá, cài đặt, lựa chọn phương pháp luận thích hợp cơng cụ CASE

- Biết cách sử dụng mẫu phần mềm (prototyping) - Biết cách lựa chọn ngôn ngữ, phần cứng, phần mềm

- Quản lý cấu hình, lập sơ đồ kiểm soát việc phát triển tiến trình - Lựa chọn ngơn ngữ máy tính phát triển chương trình máy tính

- Đánh giá định loại bỏ nâng cấp ứng dụng

Quy trình

Quy trình

Phương pháp

Phương pháp

Công cụ

(3)

Mục tiêu kỹ sư phần mềm sản xuất sản phẩm có chất lượng cao phù hợp với quy trình phát triển chuẩn mực

Việc phát triển (development): định phát triển sản phẩm phần mềm kết thúc sản phẩm phần mềm chuyển giao cho người sử dụng

Việc sử dụng (operations): việc xử lý, vận hành ngày sản phẩm phần mềm

Việc bảo trì (maintenance): thực thay đổi mang tính logic hệ thống chương trình để chữa lỗi cố định, cung cấp thay đổi công việc, làm cho phần mềm hiệu

Việc loại bỏ (retirement): thường việc thay ứng dụng thời ứng dụng

1.3 NHÂN TỐ CON NGƯỜI VÀ PHÂN LOẠI NGHỀ NGHIỆP 1.3.1 Nhân tố người ngành công nghiệp phần mềm

Đối với sản phẩn phần mềm, người hoàn thành mà kết lao động nhóm người-ta gọi nhóm phát triển phần mềm Mỗi thành viên nhóm khơng vị kỷ, thành lao động nhóm xen thành chung phải tuyệt đối trung thành với nhóm

Như vậy, nhóm phát triển phần mềm gọi nhóm hợp lý? Sau vài yếu tố cần xem xét:

- Nhóm có thành viên, - Nhóm tổ chức nào,

- Tình hình thực tế thành viên nhóm, - Mơi trường, điều kiện mà nhóm làm việc,

Mỗi thành viên nhóm phải có số kiến thức cần thiết tuỳ thuộc vào vai trị nhóm để phát triển phần mềm

1.3.2 Phân loại nghề nghiệp

Yêu cầu phát triển Công nghệ Thông tin (CNTT) Việt nam địi hỏi cần có người lao động tất ngành kinh tế biết sử dụng hữu hiệu CNTT công việc mình, đồng thời cần có người trực tiếp tham gia vào sản xuất, kinh doanh, vận hành CNTT Do cần có lớp người lao động sau:

 Những người biết vận dụng sáng tạo CNTT vào nghiệp vụ chuyên môn  Những người tham gia quản lí vận hành hệ thống CNTT

 Những người tham gia trực tiếp vào việc phát triển xây dựng sản

phẩm CNTT,

(4)

1.3.2.1. Mức độ kinh nghiệm 1 Sơ cấp

Nhân viên cán mức độ sơ đẳng trực tiếp giám sát chặt chẽ, họ làm công việc chuyên môn cấp độ tối thiểu Những cán mức độ sơ đẳng có kỹ năng, khả để tìm thông tin để mở rộng, thúc đẩy thông tin Thường phải khoảng hai năm để thực công việc đẳng cấp

2 Trung cấp

Những cán có trình độ trung cấp hầu hết làm việc độc lập, yêu cầu trực tiếp số hoạt động Những người bắt đầu mức độ trung cấp có đến năm kinh nghiệm Thời gian trung bình cấp độ từ – năm

3 Cao cấp

Các cán mức độ có trình độ định công việc kinh nghiệm kỹ thuật đào tạo, huấn luyện người khác Những nhân viên giám sát người khác, phụ thuộc vào quy mô, phức tạp dự án, họ thường xuyên có điều kiện tiên để lãnh đạo Những cán có từ – năm kinh nghiệm có năm để học kỹ Rất nhiều người kết thúc nghiệp học vấn họ cấp độ lưu lại vài năm để hoàn thành dự án, trở thành chuyên gia công nghệ ứng dụng

4 Lãnh đạo

Những nhà lãnh đạo làm việc Họ kiêm tất nhiệm vụ giám sát Một người lãnh đạo thường gọi chuyên gia phụ trách dự án Những chuyên gia có kinh nghiệm, kỹ trình độ đại học có mong muốn quản lý vị trí

5 Chuyên gia kỹ thuật

Chuyên gia kỹ thuật người có kinh nghiệm rộng rãi nhiều lĩnh vực Kinh nghiệm chuyên gia bao gồm phát triển ứng dụng, mạng, sở liệu hệ điều hành Các chuyên gia có trình độ quản lý, có bổn phận lực giống mà chịu trách nhiệm quản lý dự án Các chuyên gia làm việc vị trí hệ thống thơng tin khoảng 10 năm lâu trì lâu dài cấp độ

6 Nhà quản lý

(5)

nghiệm làm việc hầu hết họ có trách nhiệm cách quản lý Đối với nhà quản lý kỹ thuật việc phân chia đặc điểm công việc kế hoạch mục tiêu, giám sát, quản lý cá nhân, hoạt động liên lạc, hoạt động quản lý dự án

Sơ đồ mối liên hệ sau thể sau:

1.3.2.2. Loại hình cơng việc

Ở đây, loại hình công việc bàn luận đến dựa vào cách phân loại gồm: phát triển ứng dụng, hỗ trợ ứng dụng, chuyên ngành kỹ thuật, nhân viên vấn đề khác

1 Phát triển ứng dụng

Lập trình viên: Các lập trình viên chuyển đổi đồ án chi tiết kỹ thuật sang module mã tự kiểm tra đơn vị Các lập trình viên luân phiên chịu trách nhiệm phát triển ứng dụng bảo trì Những chuyên gia lập trình trình độ đại học thực nhiệm vụ bên ngồi việc lập trình

Kỹ sư phần mềm: Một kỹ sư phần mềm thực chức nhà phân tích, nhà thiết kế lập trình viên Các phân tích gia trình độ đại học ln ln tham gia vào tổ chức có cấp độ IS để lập kế hoạch nghiên cứu khả thi Các kỹ sư phần mềm làm ba việc – phân tích, thiết kế lập trình đứng lãnh đạo dự án quản lý dự án Một kỹ sư quản lý phần mềm sơ cấp thường dành nhiều thời gian lập trình kỹ sư có trình độ cao cấp lại tập trung vào việc lập kế hoạch, nghiên cứu khả thi, phân tích thiết kế

S c ấp T ru ng c ấp C ao c ấp C hu yê n g

ia k

(6)

Kỹ sư tri thức (KE): Các kỹ sư tri thức suy luận mơ hình ngữ nghĩa từ chuyên gia để từ xây dựng hệ chuyên gia trí tuệ nhân tạo Các kỹ sư tri thức tương tự kỹ sư phần mềm chun mơn hố kỹ để áp dụng vào vấn đề trí tuệ nhân tạo Việc phát triển mơ hình chương trình cấu trúc trí tuệ địi hỏi khả quan sát, kỹ vấn sâu sắc, khả trừu tượng hố vấn đề khơng phải chun môn cá nhân để tạo ý thức lập luận thông tin cần thiết khả phát triển dự đốn thơng tin tính xác với chuyên gia

2 Hỗ trợ ứng dụng

Chuyên gia ứng dụng: Chuyên gia ứng dụng có vùng vấn đề chun mơn hố cho phép họ tham khảo ý kiến đội dự án loại ứng dụng cụ thể Ví dụ nhà phân tích cao cấp chuyển tiền thời gian thực phân chia thời gian dự án chuyển tiền nước quốc tế, biết trước quy tắc, luật lệ phải tuân theo ngân hàng dự trữ liên bang tổ chức chuyển tiền khác

Quản trị liệu: Người quản lý liệu quản lý thông tin nguồn thống Với chức này, phận quản lý liệu giúp cho người sử dụng xác định tất liệu sử dụng, liệu có ý nghĩa q trình thực chức công ty Những người quản lý liệu thiết lập bảo lưu chuẩn mực để thống liệu

Khi liệu xác định, người quản lý liệu làm việc để định dạng xác định cấu trúc sở liệu để sử dụng với ứng dụng Với việc phát triển ứng dụng mới, người quản lý liệu làm việc với phận phát triển ứng dụng để định vị số liệu tự động với phận quản trị CSDL để cung cấp nhóm ứng dụng dễ dàng truy nhập sở liệu tự động hoá

Quản trị sở liệu (DBA): Những người quản lý sở liệu quản lý môi trường liệu vật lý tổ chức DBA phân tích, thiết kế, xây dựng bảo lưu sở liệu môi trường phần mềm sở liệu Làm việc với người quản lý liệu xác định liệu DBA xác định sở liệu vật lý nạp thông tin thực tế vào chúng

Một người quản lý sở liệu làm việc với nhóm phát triển ứng dụng để cung cấp truy nhập đến liệu tự động để định nghĩa rõ ràng sở liệu cần thiết cho thông tin tự động

Kỹ sư trí tuệ nhân tạo: Các kỹ sư trí tuệ nhân tạo làm việc cố vấn giúp đội dự án xác định, thiết kế cài đặt trí tuệ vào ứng dụng Kỹ sư trí tuệ nhân tạo với kỹ sư tri thức dịch kiểm tra vấn đề miền liệu thông tin lập luận ngôn ngữ trí tuệ nhân tạo Các kỹ sư trí tuệ nhân tạo đạt trình độ chun mơn cao kỹ sư tri thức

(7)

nhờ đến hầu hết trường hợp lắp đặt hệ thống cung cấp kỹ bên ngồi khơng sẵn có Bởi họ thường đào tạo đội ngũ bên trong suốt q trình thực cơng việc Khi nhờ đến, người tư vấn mong chờ có kỹ chuyên biệt áp dụng kỹ việc thực tư vấn

3 Chuyên ngành kỹ thuật

Nhà phân tích kỹ sư truyền thơng: Các nhà phân tích kỹ sư truyền thơng phân tích, thiết kế, đàm phán và/ cài đặt thiết bị phần mềm truyền thơng Họ địi hỏi liên quan chặt chẽ tới kỹ thuật truyền thơng làm việc mainframe mạng truyền thông dựa vào PC Để bắt đầu mức xuất phát tảng kiến thức phải có điện tử, kỹ thuật, ứng dụng, khoa học máy tính truyền thơng

Chun gia mạng cục bộ: Các chuyên gia mạng cục đặt kế hoạch, lắp đặt, quản lý trì khả mạng cục Điểm khác chuyên gia mạng cục chuyên gia truyền thông phạm vi Các chuyên gia truyền thông làm việc với nhiều mạng kể mainframe; chuyên gia mạng cục làm việc mạng có giới hạn mặt địa lý cấu thành nhiều máy tính cá nhân

Những người quản lý mạng cục vị trí nhiều cơng ty Một người quản lý mạng cục tạo người sử dụng mới, thực thay đổi mức mã bảo mật, cài đặt version phần mềm điều hành mạng cục bộ, cài đặt version sở liệu phần mềm sở mạng cục khác Giám sát tài nguyên cung cấp qua mạng cục bộ, cung cấp khả phục hồi cho mạng cục bộ, quản lý cấu hình mạng cục

Lập trình viên hệ thống: Các lập trình viên hệ thống cài đặt bảo dưỡng hệ điều hành ứng dụng hỗ trợ phần mềm Định giá đặc điểm xem xét chúng có cần thiết thời điểm khơng kỹ mà lập trình viên hệ thống cần phát triển Giám sát hàng trăm ứng dụng để xem xét rắc rối có liên quan đến vấn đề hệ thống hay không nhiệm vụ quan trọng

Chuyên gia hỗ trợ phần mềm (SSP): Hỗ trợ phần mềm ứng dụng tương tự khác với lập trình viên hệ thống SSP cài đặt bảo dưỡng gói phần mềm sử dụng nhà phát triển ứng dụng người sử dụng Chúng sở liệu, ngơn ngữ hỏi đáp, lưu phục hồi, bảng tính, quản lý khoảng trống đĩa, giao diện, truyền thông

4 Nhân viên

(8)

các liệu nguy cấp cần thiết cho tổ chức Sau chuyên gia giúp trung tâm liệu đội dự án việc phát triển thử nghiệm kế hoạch phục hồi thảm hoạ

Nghiên cứu IBM tổ chức khác cho thấy công ty khơng có kế hoạch lưu phục hồi bị phá sản xẩy thảm hoạ Nghiên cứu tiến hành nhiều vùng địa lý khác nhau, với nhiều loại thảm hoạ khác nhiều năm

Kiểm soát viên (EDP): Các kiểm soát viên EDP thực việc kiểm tra khả tin cậy thiết kế ứng dụng Bất kỳ ứng dụng trì quy định hợp pháp, trách nhiệm dùng hướng dẫn công ty bị tạo lại giao dịch phát tiến trình Các kiểm soát viên EDP đảm bảo mát công ty nhỏ qua việc thiết kế ứng dụng tốt Những khía cạnh thiết kế kiểm soát viên đánh giá rãnh kiểm soát, khả phục hồi bảo mật

Đào tạo: Một người đào tạo kỹ thuật học công nghệ mới, sản phẩm đại lý, đặc điểm ngôn ngữ mới, sau dạy người khác tổ chức sử dụng Đào tạo thực nội tổ chức cơng ty đào tạo có chun mơn đảm nhận

Người viết chuẩn kỹ thuật: Những người phát triển chuẩn làm việc với người quản lý để định mặt công việc họ muốn chuẩn hoá để tiêu chuẩn hoá yêu cầu thành sách thủ tục chuẩn hố cho tổ chức Những kỹ quan trọng người phát triển chuẩn ngôn ngữ chữ viết truyền thông

Phát triển tiêu chuẩn việc viết kỹ thuật hoạt động có liên quan với Người viết kỹ thuật lấy thông tin sản phẩm phần mềm, ứng dụng sản phẩm công nghệ thông tin khác viết tài liệu để mô tả đặc điểm, chức năng, công dụng chúng Người viết kỹ thuật phải có kỹ giao tiếp tốt lĩnh vực kỹ thuật phi kỹ thuật Người viết dùng kỹ giao tiếp kỹ thuật để nói phát triển hiểu biết sản phẩm giới thiệu

Đảm bảo chất lượng (QA): Các dạng kiểm tra khác tuỳ thuộc vào sản phẩm duyệt Một phân tích đảm bảo chất lượng thường thực với kế hoạch phát triển bắt đầu Anh ta hay ta cần phải tham gia đến sản phẩm nhóm phát triển xuất Sau mà tài liệu có, người phân tích đảm bảo chất lượng phải xem xét thống nhất, hồn thiện, xác uyển chuyển linh động Bất vấn đề xuất trình xem xét phải ghi lại để trình lên người quản lý dự án

(9)

Nhân viên đảm bảo chất lượng cần phải nhạy cảm với sách vấn đề phát

Lập kế hoạch công nghệ: Các chuyên gia giám sát phát triển công nghệ xác định xu hướng, lựa chọn cơng nghệ thích hợp để thử nghiệm tổ chức cuối chạy đua thực kỹ thuật tổ chức Những nhân viên cao cấp cầu nối giới bên cộng đồng đại lý với công ty Đội ngũ nhân viên sơ cấp làm việc với nhân viên cao cấp để tìm dẫn hợp tác quản lý công nghệ

5 Những vấn đề khác

Hỗ trợ sản phẩm: Nhân viên hỗ trợ sản phẩm làm việc cho nhóm người dùng cuối bán hàng để cung cấp chuyên môn kỹ thuật liên quan đến sản phẩm hỗ trợ đường dây nóng khác Ngồi kiến thức kỹ thuật sản phẩm, cá nhân công việc cịn phải có kỹ trả lời điện thoại tốt phải nói ngơn ngữ khơng chun người sử dụng vấn đề

Tiếp thị sản phẩm: Nhân viên hỗ trợ tiếp thị làm việc cho nhà bán hàng để cung cấp thông tin kỹ thuật cho đại diện bán hàng tình tiếp thị Loại cơng việc địi hỏi khả giao tiếp kỹ giao tiếp tốt với vài kiến thức tiếp thị, chẳng hạn thu hẹp phạm vi giao tiếp, đề cập đến kỹ thuật để giới thiệu cách hiệu với người đại diện bán hàng Tất công ty tư vấn phần cứng, phần mềm có người để làm cơng việc Thơng thường nhân viên cao cấp thực bạn có trình độ chun mơn lĩnh vực cần thiết bạn làm mà không cần nhân viên cao cấp

Chuyên gia người sử dụng cuối: Chuyên gia người dùng cuối người chuyển yêu cầu sử dụng thành ngôn ngữ kỹ thuật cho nhóm phát triển sử dụng Trong vài tổ chức, chức người phân tích hệ thống kỹ sư phần mềm Ở cơng ty khác, có mơi giới người sử dụng cuối với phận sử dụng để thực chức Tóm lại cơng ty phải có kết hợp đặc điểm công việc khác tất phận

1.4. SẢN PHẨM PHẦN MỀM - ĐẶC TÍNH VÀ PHÂN LOẠI

(10)

điểm riêng, có chức riêng, ngồi cịn cung cấp số thơng tin chung nhằm hồn thiện tất nhiệm vụ

Mọi ứng dụng có số đặc điểm chung (tương đồng) số đặc điểm riêng Các đặc điểm chung ứng dụng thường đề cập là: đặc tính (characteristics) , tính đáp ứng (responsiveness) loại (type) ứng dụng

1.4.1 Các đặc tính phần mềm

Các đặc tính phần mềm tất điểm chung cho ứng dụng: liệu, tiến trình, ràng buộc, giao diện

1.4.1.1 Dữ liệu

Đầu vào: Dữ liệu vào liệu bên máy tính, chúng đưa vào cách sử dụng thiết bị đầu vào Thiết bị đầu vào sử dụng để đưa liệu vào máy tính là: bàn phím, máy quét, truyền từ máy tính khác

Đầu ra: Dữ liệu ngược lại so với liệu vào chỗ, đầu liệu đưa máy tính Một số thiết bị đầu máy in, hình hiển thị, máy tính khác

Sự lưu trữ liệu tìm kiếm liệu: Dữ liệu mô tả dạng vật lý, máy đọc khn dạng liệu Việc tìm kiếm liệu hiểu bạn truy nhập vào liệu dạng lưu trữ Việc lưu trữ tìm kiếm với (cả mức quan niệm lẫn chương trình phần mềm) Việc lưu trữ liệu đòi hỏi hai kiểu định nghĩa liệu kiểu vật lý kiểu logic

1.4.1.2 Xử lý

Xử lý bao gồm chuỗi lệnh kiện có liên quan với làm việc với liệu Kết xử lý là: làm thay đổi sở liệu, đưa liệu trả lời thiết bị đầu cuối, máy in in giấy, yêu cầu trang thiết bị, sản sinh chương trình, lưu trữ luật, thơng tin mới, suy diễn tình huống, phần tử

1.4.1.3 Ràng buộc

Ràng buộc bao gồm: ràng buộc thứ tự trước, ràng buộc thứ tự sau, ràng buộc thời gian, ràng buộc cấu trúc, ràng buộc điều khiển ràng buộc tham chiếu

Ràng buộc thứ tự trước (Prerequisite Constraint): Bắt buộc thứ tự trước

là điều kiện phải đáp ứng để bắt đầu q trình xử lý

Ràng buộc thứ tự sau (Postrequisite Constraint): Ràng buộc loại

điều kiện cần phải thỏa mãn để q trình xử lý hồn thành Cụm câu lệnh đưa vào cuối trình xử lý

Ràng buộc thời gian (Time Constraint): Bao gồm ràng buộc thời gian

(11)

các q trình xử lý bên ngồi, thời gian xử lý đồng bộ, thời gian trả lời cho q trình xử lý với giao diện ngồi

Ràng buộc mặt cấu trúc: Có thể hiểu bao gồm việc xác định loại đầu

vào đầu liệu cho phép, trình xử lý thực mối quan hệ trình với

Ràng buộc điều khiển:Liên quan đến việc trì mối quan hệ liệu  Ràng buộc suy diễn:Đó khả xảy từ ứng dụng,

dựa vào kết trước đó, dựa vào quan hệ liệu, ta dẫn đến kết khác

1.4.1.4 Giao diện

Quan trọng giao diện người sử dụng - phương tiện giao tiếp người sử dụng chương trình Sau giao diện thủ cơng - mẫu báo cáo, số giao diện chuẩn hóa giao diện mạng LAN Institue of Electrical and Electronic Engineers, chuẩn OSI (Open System Interface) International Standards Organization,

1.4.2 Tính đáp ứng

Tính đáp ứng ứng dụng thời gian sử dụng đáp ứng yêu cầu từ người dùng ứng dụng Nó định nghĩa định hướng thời gian mà ứng dụng xử lý như: xử lý theo lô, xử lý theo kiểu trực tuyến hay xử lý theo thời gian thực

1 Xử lý theo lô

Ứng dụng xử lý theo lô ứng dụng mà phiên giao dịch (transactions) gom lại theo thời gian thực theo nhóm Tại thời điểm xác định, cơng việc xếp thành lô đưa vào xử lý

2.Xử lý theo kiểu trực tuyến

Ứng dụng trực tuyến định vị trực tiếp nhớ sử dụng cách phiên giao dịch kiện mà không cần phải nạp lại ứng dụng vào nhớ

3.Xử lý theo thời gian thực

(12)

dịch tiến trình có giao dịch thực thời điểm

1.4.3 Phân loại phần mềm

Phân loại phần mềm định nghĩa định hướng công việc ứng dụng, ví dụ theo kiểu hướng giao dịch, hỏi đáp, trợ giúp định,

1.4.3.1 Ứng dụng hướng giao dịch

Ứng dụng hướng giao dịch cịn có tên hệ thống xử lý giao dịch (TPS – Transaction Processing Systems) sử dụng nhằm hỗ trợ hoạt động ngày công việc, bao gồm: xử lý đơn hàng, quản lý kiểm kê, ghi quỹ, Chúng đặc trưng ứng dụng mà yêu cầu, liệu trình xử lý biết rõ có cấu trúc tốt Theo nghĩa biết rõ, chức phải có tính lập lại, thân thiện rõ ràng Theo nghĩa cấu trúc tốt, vấn đề phải xác định cách đầy đủ rõ ràng Các yêu cầu định danh đội ngũ xây dựng phần mềm

1.4.3.2 Ứng dụng sơ liệu

Ứng dụng sở liệu sử dụng ứng dụng xử lý câu hỏi liệu Ngôn ngữ truy vấn liệu chuẩn SQL cho phép người sử dụng đặt câu hỏi dạng: họ biết họ cần khơng biết làm cách để lấy liệu Các phần mềm máy tính đưa phương pháp xử lý truy cập tối ưu để thực thao tác

Ở đây, có ba loại câu hỏi chính:

1- Tương tác: liệu sử dụng xong không cần nữa?

2- Dữ liệu lưu trữ để sử dụng lại thay đổi tương lai?

3- Dữ liệu lưu trữ để sử dụng thường xuyên số trình lập lại?

Ứng dụng truy vấn hỗ trợ khái niệm kho chứa liệu (data warehouse) Đó sơ đồ lưu trữ xây dựng quan điểm: hầu hết liệu cần phải giữ lại cho truy nhập truy vấn trực tuyến Tại lưu lại phiên cũ phần lớn phần tử sở liệu, lần vào giao dịch ghi liên quan đến số trình hoạt động

1.4.3.3 Ứng dụng hỗ trợ định (Decision Supports System - DSS)

(13)

Vì thơng tin thường khơng đầy đủ, DSS thường giải toán phương pháp lặp, áp dụng mơ hình tốn học thống kê để tới định Dữ liệu hỗ trợ và/hoặc hiệu chỉnh thường đưa trở lại q trình mơ hình hố để làm mịn phân tích

Ta thường gặp số hệ thống xem sản phẩm phụ DSS như: + Hệ thống thông tin thi hành (Excutive Information System - EIS) sản phẩm phụ DSS EIS hỗ trợ định thực cung cấp khả tìm kiếm mơi trường cách tự động Các hệ thi hành hàng đầu phải xử lý vấn đề với thông tin khơng đầy đủ, khơng xác, khơng rõ ràng có liên quan đến tương lai EIS tích hợp thơng tin từ sở liệu bên với ứng dụng nội để tạo khả mơ hình hố tìm kiếm thơng tin tự động Sự khác EIS với DSS liệu khơng hồn chỉnh, khơng rõ ràng chí khơng xác

+ Hệ thống hỗ trợ định theo nhóm (Group DSS - GDSS) dạng đặc biệt ứng dụng DSS GDSS có nhật ký ghi lại trình xây dựng định để hỗ trợ nhóm người có trách nhiệm định (decision maker) GDSS tập trung chủ yếu vào q trình tương tác có khơng có phân tích thống kê mơ hình hố liệu nhóm Các phần mềm sở liệu GDSS có xu hướng xây dựng DSS, bao gồm số bảng tính thủ tục biểu diễn tổng kết bên tham gia dạng số đồ thị Các chức điển hình GDSS là:

1) Ghi lại ý kiến vô danh

2) Tuyển cử dân chủ bầu nhà lãnh đạo

3) Thảo luận bầu cử để đạt thoả thuận nhóm 1.4.3.4 Hệ chuyên gia (Expert Systems - ES)

Các ứng dụng hệ chuyên gia ứng dụng tin học tự động hoá tri thức khả lập luận nhiều chuyên gia lĩnh vực cụ thể ES phân tích đặc trưng tình để đưa lời khuyên, khuyến nghị phác hoạ kết luận trình lập luận tự động Một hệ ES bao gồm bốn thành phần chính: hệ thống thu thập tri thức, sở tri thức, mơ tơ suy diễn (cịn gọi sở luật) hệ thống diễn giải

+ Hệ thống thu thập tri thức phương tiện xây dựng sở tri thức Nói chung, nhiều tri thức hệ thống “thơng minh” Hệ thống thu thập tri thức phải cung cấp kiện khởi đầu, quy tắc mẹo mực (heuristic rules of thumb) dễ dàng bổ sung tri thức

Thông thường, lập luận mà làm cách để tới phương án Từ phân tích q trình người suy nghĩ phân tích vấn đề áp dụng để xây dựng ứng dụng Tại ta lại làm việc đó? Đó q trình suy diễn nội tâm khó diễn giải Khó khăn không riêng Suy luận thông tin từ tri thức chuyên gia khó khăn để xây dựng hệ chuyên gia có hiệu

(14)

vậy, ngôn ngữ đặt biệt cho ES thiết kế, cho phép xác định mối quan hệ mẩu thông tin sử dụng cách mềm dẻo thông tin lập luận

+ Vì mục đích lập luận tìm giải pháp cho tình huống, ES sử dụng lập luận suy diễn để xây dựng nhiều giải pháp cho tình cho trước Một vài giải pháp đưa thơng tin khơng hồn chỉnh lập luận phần Xác suất xác giải pháp hệ thống đưa thường đo mức độ hữu ích giải pháp Các vấn đề liên quan đến quy tắc đạo đức thường xét đến ES so với ứng dụng khác

+ Thành phần quan trọng cuối ES khả diễn giải lập luận cho người sử dụng Tìm lại trình suy diễn điều quan trọng giúp người sử dụng có kinh nghiệm sử dụng hệ thống xác định mức độ tin cậy vào kết ES đưa

1.4.3.5 Các hệ thống nhúng (Embedded systems)

Đây ứng dụng vốn phần hệ thống lớn Thường, thân ứng dụng đơn giản phức tạp chúng giao diện để tạo độ xác hồn hảo, tính theo thời gian thực (real - time) phạm vi đời sống hệ thống lớn Việc phát triển ứng dụng kết hợp địa phận nhà thiết kế theo học ngành khoa học máy tính nhà thiết kế hệ thống thơng tin

1.5. MỘT SỐ MƠ HÌNH XÂY DỰNG PHẦN MỀM

1.5.1 Mơ hình tuyến tính (The linear sequential model)

Đơi lúc cịn gọi mơ hình kinh điển (classic model) hay mơ hình thác nước (waterfall model) Mơ hình xem q trình xây dựng sản phẩm phần mềm bao gồm nhiều giai đoạn tách biệt, sau hồn tất giai đoạn chuyển đến giai đoạn sau

Có hai hoạt động phổ biến thực giai đoạn là: kiểm tra - phê chuẩn quản lý cấu hình Tổng kết giai đoạn kiểm tra, phê chuẩn quản lý cấu hình mục tiêu sản phẩm Việc kiểm tra đưa khuôn mẫu đắn tương ứng sản phẩm phần mềm đặc tính Sự phê chuẩn đưa chuẩn mực phù hợp hay chất lượng sản phẩm phần mềm mục đích trình hoạt động

Tuy vậy, thường dự án có hàng ngàn trang tài liệu mà khơng ngoại trừ tác giả đọc đến Thơng tin ứng dụng nằm đầu người việc trao đổi thông tin trở ngại lớn để có thành cơng hệ thống Kết luận văn phương tiện tốt để mô tả yêu cầu phức tạp ứng dụng Thêm vào đó, mơ hình bộc lộ số nhược điểm quan trọng như:

(15)

 Hệ thống phải kết thúc giai đoạn khó thực

đầy đủ u cầu khách hàng Mơ hình tóm tắt sau:

1.5.2 Mơ hình mẫu (Prototyping model)

Thông thường, khách hàng đưa mục tiêu họ cách chung chung mà họ không đưa cách cụ thể vào, tiến trình xử lý chúng Thêm vào đó, khơng thể khơng quan tâm đến thuật tốn sử dụng, tính tương thích sản phẩm phần mềm với mơi trường như: phần cứng, hệ điều hành Trong trường hợp này, mơ hình mẫu lựa chọn tốt cho người lập trình

Những điểm mơ hình mẫu tóm tắt theo sơ đồ sau: Phác thảo

nét Xây dựng phần mềm phần mềmSử dụng

Hệ thống

thích hợp Chuyển

giao phần mềm Đ

S Phân tích

yêu cầu

Thiết kế

Cài đặt thử nghiệm đơn thể

Thử nghiệm tổng thể

(16)

Mơ hình mẫu cách để phá vỡ khắt khe, cứng nhắc chu trình dự án Tuy vậy, mơ hình mẫu, sử dụng sai làm hỏng phân tích thiết kế, khơng hoàn thiện mẫu thành ứng dụng thực vấn đề cần quan tâm Thêm vào hệ thống khơng chuẩn hóa, chi tiết việc xử lý, việc kiểm tra tính hợp lệ liệu địi hỏi kiểm tốn bị bỏ qn việc đưa mẫu vào sản xuất

Trong tương lai, tạo mẫu thích hợp với đánh giá thiết kế, cải tiến cách dùng phần cứng phần mềm Tạo mẫu thường đơi với ngơn ngữ lập trình bậc cao ngày có nhiều cơng cụ đặt mẫu tích hợp với CASE

1.5.3 Mơ hình xoắn ốc (The spiral model)

Mơ hình Boehm đưa nên đơi lúc cịn gọi mơ hình Boehm's (The Boehm's spiral model) Nó xem kết hợp mơ hình thác nước mơ hình mẫu đồng thời thêm thành phần - phân tích rủi ro Bao gồm bốn hoạt động chính:

 Planning: Xác định mục tiêu, tương tác ràng buộc

 Risk analysis: Phân tích lựa chọn định/giải rủi ro  Engineering : Phát triển sản phẩm

 Customer evaluation: Đánh giá kết xây dựng

Mơ hình tóm tắt sau:

Trong vịng xốy ốc, mục đích, lựa chọn, ràng buộc định nghĩa nguy xác định phân tích Nếu phân tích lỗi có vài u cầu khơng chắn, tạo mẫu dược tiến hành để giúp đỡ nhà phát triển khách hàng Mô mơ hình khác sử dụng để xác định vấn đề làm mịn yêu cầu

Kế hoạch Phân tích rũi ro

Khách hàng đánh giá Xây dựng sản phẩm

Lập kế hoạch thu tập yêu cầu ban đầu Kế hoạch dựa đánh giá khách hàng

Đánh giá sản phẩm

Hướng hoàn thiện hệ thống Bản mẫu Các mẫu Tiếp tục phát

triển hệ thống?

Phân tích rũi ro sở yêu cầu ban đầu

Phân tích rũi ro sở phản ứng

(17)

Khách hàng đánh giá công việc đưa gợi ý Trên sở ý kiến đó, phần lập kế hoạch phân tích lỗi xuất

Mơ hình xốy ốc mơ hình hướng tiếp cận thực để phát triển hệ thống lớn Nó sử dụng mơ hình mẫu chế loại trừ lỗi, cho phép nhà phát triển áp dụng mơ hình mẫu chu trình phát triển Nó kế thừa cách tiếp cận hệ thống bước từ chu kỳ sống cổ điển kết hợp với trình lặp lại phù hợp với thực tế

Giống quy trình khác, mơ hình xốy ốc khơng phải công cụ vạn Đối với hệ thống lớn, khó điều khiển tiến hóa phần mềm Nó địi hỏi phải có kỹ đánh giá lỗi Cuối cần phải có thêm thời gian để kiểm nghiệm phương pháp

1.5.4. Mô hình đài phun nước

Đây mơ hình cách tiếp cận hướng đối tượng, hệ thống xem hệ thống thực thể tác động qua lại để đạt mục đích Mơ hình tương ứng với mơ hình thác nước cách tiếp cận hướng thủ tục Ở đây, ta thấy có phần lặp giao bước phân tích, thiết kế cài đặt

Các điểm mơ hình tóm tắt sau:

1.5.5 Mơ hình phát triển dựa thành phần

Các đối tượng không gian lời giải Các đối tượng

chương trình Bảo trì

Ứng

dụng Phát triển tương

lai

LTHĐT

TKHĐT

PTHĐT Lập trình hướng đối

tượng

Thiết kế hướng đối tượng

Phân tích hướng đối

(18)

Xuất phát từ quan điểm: "Buy not build", tư tưởng phát triển dựa thành phần lắp ráp hệ thống từ thành phần có Do vậy, kiến trúc phần mềm hệ thống dựa vào kiến trúc phần mềm thành phần phần mềm tiêu chuẩn nên hệ thống đạt chất lượng cao

Phương pháp phát triển dựa thành phần gần tương tự phương pháp phát triển hướng đối tượng Hoạt động công nghệ bắt đầu với lớp tham dự để phát triển hệ thống Nếu lớp tìm thấy thư viện thích nghi tốt, chúng lấy phát triển hệ thống Ngược lại, chúng phát triển để sử dụng bổ sung vào thư viện sử dụng lại

Thành phần phần mềm sử dụng lại có độ xác cao nói khơng chứa lỗi Mặc dầu khơng thường xun chứng minh mặt hình thức với việc sử dụng lại, lỗi tìm thấy loại trừ; chất lượng thành phần cải thiện kết

Khi thành phần sử dụng lại ứng dụng thơng qua tiến trình phần mềm, tốn thời gian để tạo kế hoạch, mơ hình, tài liệu, mã liệu mà chúng cần thiết để tạo hệ thống Thêm vào, chức mức phân phối cho người sử dụng với đầu vào cơng sức hơn, vậy, hiệu suất phần mềm cải thiện

Những điểm mơ hình tóm tắt sau:

1.6. PHƯƠNG PHÁP PHÁT TRIỂN PHẦN MỀM

Khác với thời kỳ đầu tin học, chương trình phụ thuộc nhiều vào thiết bị người ta quan tâm đến "mẹo vặt" lập trình, ngày người ta quan tâm đến nguyên lý phương pháp để phát triển phần mềm Các nguyên lý phương pháp đề xuất nhằm nâng cao suất lao động cho nhóm phát triển phần mềm Năng suất bao gồm tính đắn sản phẩm, tính dễ đọc, dễ sửa đổi, dễ thực hiện, tận dụng tối đa khả thiết bị mà khơng bị phụ thuộc vào thiết bị

Có nhiều phương pháp đề cập như: phương pháp hướng chức năng, phương pháp hướng đối tượng, phương pháp ngữ nghĩa, chí khơng

(19)

phương pháp để phát triển phần mềm Bên cạnh phương pháp để định cho việc tạo phân tích thiết kế, người ta cịn ý đến phương pháp làm để đưa người dùng tham gia vào quy trình gọi phương pháp luận xã hội

1.7. VAI TRÒ CỦA NGƯỜI DÙNG TRONG GIAI ĐOẠN PHÁT TRIỂN PHẦN MỀM

Trong ứng dụng trước xây dựng thường xuyên khơng có bàn bạc với người sử dụng, cô lập công nghệ phần mềm người dùng dẫn đến hệ thống có khả làm việc mặt kỹ thuật, thông thường không đáp ứng nhu cầu người sử dụng, thường xuyên làm gián đoạn trình làm việc

Để có tham gia người sử dụng q trình phát triển ứng dụng, phương thức địi hỏi họp lề tất người sử dụng có liên quan người hệ thống - thường người gặp từ đến 10 ngày để phát triển mô tả chức chi tiết yêu cầu ứng dụng Các họp ban ngày sử dụng phân tích mới, họp ban đêm lập tài liệu kết ban ngày để xem xét lại tiếp tục chắt lọc ngày

Có nhiều lợi ích từ việc tham gia người sử dụng phát triển ứng dụng

 Trước tiên xây dựng cam kết người sử dụng - người

đương nhiên đảm nhiệm quyền sở hữu hệ thống

 Thứ hai, người sử dụng chuyên gia thực công

việc tự động - lại đại diện hồn tồn thơng qua phát triển

 Thứ ba, nhiệm vụ người sử dụng thực bao gồm việc thiết

kế hình, mẫu, báo cáo, phát triển tài liệu người sử dụng, phát triển tiến hành kiểm tra công nhận,

Sự tham gia người sử dụng khơng ước muốn mà cịn mệnh lệnh tiến trình sản phẩm phát triển ứng dụng hồn tồn hiệu Khía cạnh quan trọng tham gia người sử dụng phải có ý nghĩa Người sử dụng phải người định người mong muốn tham gia vào trình phát triển Sử dụng đội ngũ nhân viên cấp thấp định nhà quản lý mở rộng cách để kéo người sử dụng vào ứng dụng phát triển

(20)

Việc tham gia người sử dụng có nghĩa người sử dụng điều khiển dự án, tạo nên phần lớn quy định có tính định cuối tất định lớn Các kỹ sư phần mềm nhân viên hệ thống quản lý thông tin khác hoạt động kỹ thuật viên phục vụ, chức họ Câu hỏi

1 Nhân tố người có vai trị ngành cơng nghiệp phần mềm? Tại lại có phân loại nghề nghiệp

2 Các đặc tính phần mềm Việc phân loại phần mềm có đem lại lợi ích việc phát triển phần mềm

Ngày đăng: 25/05/2021, 22:28

Tài liệu cùng người dùng

  • Đang cập nhật ...