Khái niệm Phần mềm

Một phần của tài liệu Phân tích, thiết kế và xây dựng phần mềm quản lý và kinh doanh vật liệu xây dựng tại công ty Cổ phần Minh Thịnh Hưng Yên (Trang 25)

Khái niệm phần mềm là một khái niệm đã được ra đời cùng với sự xuất hiện của máy tính. Trước đây, khi công nghệ thông tin chưa phát triển. Phần mềm được xem như là tập hợp các chương trình và quy trình làm cho máy tính thực hiện một công việc xác định, được dùng để lưu trữ, quản lý và tìm kiếm dữ liệu, cung cấp thông tin cho các nhà quản lý, chưa nêu lên đầy đủ bản chất và các đặc trưng vốn có của phần mềm. Hệ thống máy tính sẽ không thể sử dụng được nếu không có phần mềm, mục đích chính của phần mềm là trợ giúp người sử dụng điều hành, quản lý và thực hiện giao tác các thành phần của hệ thống hoạt động nhằm tạo ra các thông tin cần thiết.

Theo tiến sĩ Roger Pressman- chuyên gia về công nghệ phần mềm của Mỹ thì “Phần mềm là:

- các chương trình máy tính

- các cấu trúc dữ liệu cho phép chương trình xử lý các thông tin thích hợp - các tài liệu mô tả phương thức sử dụng các chương trình ấy”

2.1.2. Sự phát triển của Phần mềm

Từ khi ra đời phần mềm đã phát triển qua rất nhiều giai đoạn, mỗi một giai đoạn có những đặc trưng riêng, ngày càng tinh vi hơn, tốc độ xử lý nhanh hơn, tiện lợi hơn. Qua mỗi giai đoạn phần mềm đã chứng minh được năng lực của nó thông quả khả năng giải quyết công việc.

Thời kỳ thứ nhất 1950 -1960 Thời kỳ thứ hai Cuối 1960 -1970 Thời kỳ thứ ba 1970 – đầu 1990 Thời kỳ thứ tư 1990 -2000 + Xử lý theo lô + Phần mềm đơn chiếc làm theo đơn đặt hàng + Nhiều người dùng + Thời gian thực + Cơ sở dữ liệu + Phần mềm thương mại +Hệ thống phân tán +Phần mềm thông minh +Phần cứng rẻ +Hiệu quả tiêu thụ

+ Hệ thống để bàn +Hướng đối tượng + Hệ chuyên gia + Mạng nơtơron + Xử lý song song

- Thời kì thứ nhất: Trong những năm đầu phần cứng vạn năng đã trở thành thông dụng. Phần mềm lại được thiết kế theo đơn đặt hàng cho từng ứng dụng và được phân phối khá hạn chế. Máy tính thời kì này có khối lượng lớn và giá thành cao, để thực hiện một phép tính mất rất nhiều thời gian. Xử lý các chương trình theo lô chưa phổ biến, hoạt động riêng rẽ, chưa sử dụng hết năng lượng máy tính.

- Thời kì thứ hai: Sau khi trải qua thời kì phát triển sơ khai , máy tính đã được sử dụng phổ biến hơn ở các nước có nền công nghiệp phát triển. Phần mềm đã được sử dụng phổ biến hơn trước, tốc độ xử lý tăng lên đáng kể. Các hệ thống đa lập trình và đa người sử dụng đã đưa ra những khái niệm mới về thao tác người – máy. Các kỹ thuật tương tác mở ra một thế giới mới cho các ứng dụng và các mức độ mới về độ tinh vi cho cả phần cứng lẫn phần mềm. Các hệ thống thời gian thực có thể thu thập, phân tích và biến đổi dữ liệu từ nhiều nguồn khác nhau. Do đó kiểm soát được các tiến trình và sản xuất ra cái trong phần nghìn giây thay cho nhiều phút.Giai đoạn này máy tính đã được đưa vào hoạt động trong các doanh nghiệp, phân tích dự báo thiên văn…Những tiến bộ trong lưu trữ trực tuyến dẫn tới thế hệ đầu tiên các hệ quản trị cơ sở dữ liệu.

- Thời kì thứ ba: Máy tính thương mại xuất hiện đầu tiên vào năm 1975. Hệ thống phân bố nhiều máy tính, mỗi máy thực hiện một chức năng và có sự tương tác, liên lạc với các máy khác và làm tăng độ phức tạp của các hệ thống dựa trên máy tính. Phần mềm ngày càng phát triển do sự mong đợi của các nhà quản lý cấp

cao là ứng dụng trong sản xuất kinh doanh nhằm nâng cao hiệu quả đầu tư và thu lợi nhuận. Thời kì thứ ba cũng còn được đặc trưng bởi tiến bộ và sự phổ cập sử dung các bộ vi xử lý, máy tính cá nhân và các máy trạm để bàn mạnh. Bộ vi xử lý đã thúc đẩy một phạm vi rộng các sản phẩm thông minh - từ ô tô tới lò vi sóng, từ rô bốt công nghiệp đến thiết bị chuẩn đoán máu. Đến giữa những năm 1980 khi tỷ lệ tăng trưởng bán máy tính được san bằng thì số bán sản phẩm phần mềm vẫn tiếp tục tăng trưởng. Các doanh nghiệp thường tiêu nhiều tiền cho việc mua phần mềm chạy trên máy tính hơn là tiêu để mua chính máy tính.

- Thời kì thứ tư trong phần mềm máy tính mới chỉ mới bắt đầu. Đây là giai đoạn bùng nổ của công nghệ thông tin. Công nghệ phần mềm mới và các ngôn ngữ thế hệ thứ tư cho phép tạo ra sự tích hợp chức năng quản lý kinh doanh và xử lý dữ liệu tự động. Phần mềm mạng notoron nhân tạo đã mở ra những khả năng lý thú để nhận dạng và thực hiện những khả năng xử lý thông tin kiểu con người.

2.1.3. Các đặc trưng chính của phần mềm

Phần mềm là phần tử hệ thống logic chứ không phải là hệ thống vật lí do đó nó có các đặc trưng khác với hệ thống phần cứng. Phần mềm có các đặc trưng sau đây:

- Phần mềm được kỹ nghệ hóa, nó không được chế tạo theo nghĩa cổ điển

Khi con người cảm thấy cần một nhu cầu nào đó hay một sự hỗ trợ nào đó cho công việc của mình thì những nhà lập trình tin học sẽ phân tích yêu cầu đó để tạo ra phần mềm. Và phần mềm có thể được nâng cấp cơi nới tùy theo nhu cầu phát sinh của doanh nghiệp và xã hội.

Phần mềm cũng được thiết kế, chế tạo như phần cứng, nhưng nó không được định hình trước. Chỉ khi phát triển xong người ta mới có sản phẩm cụ thể và biết được nó hoạt động có hiệu quả hay không. Quá trình thiết kế và sản xuất phần mềm phụ thuộc vào con người, vào điều kiện môi trường cụ thể mà tại đó nó được phát

triển. Người ta không thể nói trước được giá thành của phần mềm và hiệu quả của nó. Chính quá trình phát triển phần mềm quyết định giá thành và chất lượng của nó.

- Phần mềm không bị hỏng đi trong quá trình sử dụng

Phần mềm không giống như phần cứng là bị hỏng do tác động của môi trường do mòn cũ. Về mặt lý thuyết, tỷ lệ lỗi của phần mềm là không đổi khi đã đưa vào sử dụng. Nhưng trên thực tế nó lại thoái hóa qua thời gian do lỗi mới sinh ra mỗi khi tiến hành bảo trì trong quá trình sử dụng.

Mỗi khi sửa đổi (bảo trì), một số khiếm khuyết mới sinh ra làm cho phần mềm bị thoái hóa. Việc sửa chỉnh phần mềm làm cho xuất hiện các lỗi mới phát sinh. Dần dần, mức lỗi tối thiểu tăng lên - phần mềm bị thoái hóa do tỷ lệ sai hỏng tăng lên đến mức gây ra những thiệt hại không thể chấp nhận được hoặc người dùng không muốn sử dụng nữa vì có những phần mềm khác tốt hơn.

Phần mềm còn lạc hậu do các công nghệ mới ra đời, người dùng không còn thích dùng phần mềm cũ nữa, hay khi các công nghệ mới (Hệ điều hành(*), các hệ quản trị cơ sở dữ liệu, phiên bản dịch mới, ...) được đưa vào tổ chức làm cho các phần mềm cũ không thể tiếp tục vận hành trên máy với chúng.

- Phần lớn phần mềm được xây dựng theo đơn đặt hàng của khách

Phần mềm không có danh mục các thành phần cố định như phần cứng. Nó thường được đặt hàng theo một đơn vị hoàn chỉnh, theo yêu cầu riêng của mỗi tổ chức, mỗi khách hàng, ít khi có thể lắp ráp theo một khuôn mẫu có sẵn.

Yêu cầu đối với phần mềm của khách hàng tùy thuộc vào môi trường cụ thể mà ở đó nó được phát triển và sử dụng. Môi trường này (phần cứng, phần mềm nền, con người và tổ chức, công nghệ có được, ...) không thể định dạng từ trước và luôn thay đổi theo không gian và thời gian.

Một điều dễ nhận thấy là khi bắt đầu thiết kế , xây dựng một phần mềm thì công ty sản xuất phần mềm thường phải cử người đến tìm hiểu thực tế tại doanh nghiệp có nhu cầu sử dụng phần mềm để từ đó đưa ra những mô tả về nghiệp vụ chính xác nhất.

- Sự phức tạp và tính thay đổi luôn là bản chất của phần mềm

Cốt lõi của phần mềm (mã nguồn) là những khái niệm được thể hiện bằng một hệ thống lôgic được lưu trên giấy hay vật mang. Phải là những người am hiểu về tin học và có khả năng lập trình mới đọc được các tài liệu này. Phần mềm là "không nhìn thấy được", cái mà chúng ta hay sử dụng và gọi là phần mềm thực ra là giao diện tương tác giữa người và máy của phần mềm.

Môi trường xã hội luôn thay đổi do vậy phần mềm cũng phải phải thay đổi một cách tương ứng cùng thời gian. Thay đổi trở thành yêu cầu và thuộc tính tất yếu của phần mềm.

- Ngày nay phần mềm được phát triển theo nhóm

Trong khi nhu cầu về sản phẩm ngày càng tăng và đòi hỏi thời gian xuất ra ngày càng ngắn. Trong điều kiện đó, việc sản xuất phần mềm cần nhiều người với kỹ năng khác nhau tham gia trong các đội phát triển để tạo được phần mềm chất lượng cao với thời gian ngắn. Phát triển phần mềm theo nhóm là một cách lựa chọn duy nhất.

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

Phần mềm được chia thành 2 loại: phần mềm hệ thống và phần mềm ứng dụng.

Phần mềm hệ thống

Bao gồm các chương trình hướng dẫn những hoạt động cơ bản của 1 máy tính như hiện thông tin lên màn hình, lưu trữ dữ liệu trên đĩa từ, in kết quả, liên lạc với các thiết bị ngoại vi, phân tích và thực hiện các lệnh của người dùng, giúp cho phần cứng của máy tính hoạt động một cách hiệu quả. Các chương trình hệ thống thường được lập trình bằng các ngôn ngữ cấp thấp để thu được những bản dịch với chất lượng cao, đảm bảo tiết kiệm thời gian và bộ nhớ cho máy tính. Phần mềm hệ thống gồm 4 loại:

thiết bị phần cứng đồng thời tạo ra môi trường thích hợp cho các phần mềm ứng dụng hoạt động, đảm bảo khai thác tối ưu các tài nguyên của hệ thống.

+ Các chương trình tiện ích: các phần mềm mở rộng, bổ sung thêm các chức năng cho hệ điều hành để giúp tạo sự thuận tiện cho người dùng cũng như nâng cao tình tối ưu cho việc khai thác tài nguyên hệ thống.

+ Các chương trình điều khiển thiết bị: là các phần mềm giúp hệ điều hành có thể nhận biết và điều khiển hoạt động của các thiết bị phần cứng như: DVD, card màn hình, mordem…

+ Chương trình dịch: có nhiệm vụ dịch các chương trình viết bằng ngôn ngữ thuật toán sang ngôn ngữ máy để máy tính có thể hiểu và xử lý được. Mỗi ngôn ngữ lập trình đều đi kèm theo đó một chương trình dịch.

Phần mềm ứng dụng:

Là những phần mềm được làm ra để đáp ứng một yêu cầu nào đó của người dùng. Phần mềm ứng dụng chia làm 4 loại:

+ Phần mềm năng suất: giúp nâng cao năng suất và hiệu quả của người dùng. Một số phần mềm năng suất như: hệ soạn thảo văn bản, các chương trình bảng tính điện tử, các phần mềm đồ họa…

+ Phần mềm kinh doanh: là phần mềm có chức năng quản lý các hoạt động, các giao dịch phát sinh trong quá trình hoạt động của các doanh nghiệp hoàn thành những nhiệm vụ xử lý thông tin có tính chất thủ tục lặp đi lặp lại hàng ngày, hàng năm,… Phần mềm kinh doanh điển hình như: phần mềm quản trị tài chính, phần mềm quản trị sản xuất, phần mềm quản lý bán hàng…Phần mềm quản lý vật tư cũng là một trong những phần mềm kinh doanh nhằm quản lý lượng vật tư hiện có, lượng vật tư mua vào, xuất ra của doanh nghiệp. Từ đó đưa ra được phương án sử dụng vật tư một cách tiết kiệm, hiệu quả cho doanh nghiệp.

+ Phần mềm giáo dục, tham khảo: là phần mềm giúp cung cấp những kiến thức, thông tin cho người dùng về 1 lĩnh vực nào đó.

+ Phần mềm giải trí: là phần mềm người dùng thư giãn, giải trí. Bao gồm các trò chơi, các phần mềm xem phim, nghe nhạc…

Vòng đời phát triển của một phần mềm được hiểu là quy trình từ khi phần mềm ra đời cho đến khi đưa nó vào sử dụng và quá trình nâng cấp bảo trì. Công việc nghiên cứu vòng đời phát triển của phần mềm là nhằm phân chia thành các giai đoạn và trên cơ sở đó tìm ra các giải pháp và công nghệ thích hợp tác động vào từng giai đoạn đó.

Trong công nghệ phần mềm, người ta thường sử dụng mô hình thác nước để biểu diễn vòng đời phát triển cảu phần mềm. Mô hình này bao gồm nhiều giai đoạn và các giai đoạn đứng trước sẽ lần lượt tác động đến các giai đoạn đứng sau.

Hình 2.1 - Mô hình thác nước biểu diễn vòng đời phát triển của phần mềm

Nghiên cứu lập kế hoạch dự án: Mục đích của giai đoạn này là nghiên cứu, đề xuất giải pháp kỹ thuật, tiến hành xây dựng hợp đồng với khách hàng, theo dõi tiến trình thực hiện hợp đồng, tổ chức thanh toán thanh lý hợp đồng và lập kế hoạch tổng quát về dự án, dự trù kinh phí cũng như thời gian thực hiện.

Phân tích: Phân tích là quá trình sử dụng các mô hình để nêu lên những đặc trưng của hệ thống quản lý. Các công cụ thường được sử dụng là các sơ đồ chức năng nghiệp vụ (BFD), sơ đồ luồng dữ liệu (DFD), mô hình dữ liệu (DM), sơ đồ luồng thông tin (IFD), ngôn ngữ có cấu trúc (SL). Có thể nói phân tích là quá trình trung tâm có ý nghĩa quyết định tới quá trình phát triển hệ thống.

Thiết kế: Dựa trên cơ sở của bước phân tích, công đoạn thiết kế tiến hành dịch các yêu cầu về phần mềm thành một biểu diễn của phần mềm. Nội dung thiết

Nghiên cứu lập KHDA Phân tích YC & ĐT Thiết kế HT & PM Mã hóa & kiểm thử đơn vị Kiểmtra tích hợp Vận hành & Bảo trì

kế sản phẩm phần mềm bao gồm : thiết kế kiến trúc phần mềm, thiết kế cấu trúc dữ liệu, các thủ tục, các đặc trưng giao diện được lập thành hồ sơ thiết kế.

Mã hóa: Bản chất của mã hóa là quá trình dịch từ bản vẽ thiết kế sang một ngôn ngữ lập trình cụ thể, rồi thông qua đó trình biên dịch sẽ chuyển thành ngôn ngữ máy để máy tính có thể đọc, hiểu và thực thi được.

Kiểm thử: Kiểm thử là công đoạn kiểm tra và đánh giá chất lượng phần mềm. Tiến trình kiểm thử chủ yếu tập trung vào phần logic bên trong của phần mềm. Mục đích kiểm thử là nhằm đảm bảo tất cả các câu lệnh đều được kiểm tra để phát hiện ra các lỗi nếu có và đảm bảo cho ra kết quả phù hợp với dữ liệu đưa vào.

Bảo trì: Bảo trì là hoạt động được diễn ra sau khi công ty phần mềm đã bàn giao phần mềm và khách hàng đã đưa vào sử dụng. Có 3 loại bảo trì : Bảo trì sửa đổi nhằm loại bỏ những sai sót còn tồn tại khi sử dụng, bảo trì thích nghi đế đáp ứng yêu cầu phù hợp với những thay đổi trong quá trình hoạt động và bảo trì hoàn thiện nhằm nâng cấp, bổ sung tính năng cho phần mềm.

2.1.6. Các tiêu thức để đánh giá một phần mềm tốt

Đứng trên quan điểm của người dùng cuối, một phần mềm quản lý và kinh doanh vật tư tốt là một phần mềm đáp ứng được các tiêu chuẩn sau đây:

Phần mềm phải đáp ứng đầy đủ hệ thống các yêu cầu của người dùng đặt ra lúc đầu như: Kiểm soát số lượng vật tư nhập-xuất- tồn trong kho, cho biết tình hình

Một phần của tài liệu Phân tích, thiết kế và xây dựng phần mềm quản lý và kinh doanh vật liệu xây dựng tại công ty Cổ phần Minh Thịnh Hưng Yên (Trang 25)

Tải bản đầy đủ (DOC)

(82 trang)
w