TỔNG QUAN VỀ XÂY DỰNG PHẦN MỀM KẾ TOÁN

1.1.1.    Khái niệm phần mềm kế toán.

Phần mềm là một tập hợp các tập tin có mối liên hệ chặt chẽ với nhau, đảm bảo thực hiện một số nhiệm vụ, chức năng nào đó trên thiết bị điện tử. Các tập tin này có thể bao gồm: các file mã nguồn viết bằng một hoặc nhiều ngôn ngữ lập trình, các file dữ liệu (thư viện), các file hướng dẫn.

Phần  mềm kế toán là một chương trình hoạt động trên máy vi tính có chức năng quản lí các dữ liệu thành một hệ thống có tổ chức. Các phần mềm kế toán hiện nay có nhiều loại và giá thành khác nhau nhằm đáp ứng nhu cầu quản trị kế toán của các doanh nghiệp hay sổ sách kế toán của nhà nước. Phần mềm kế toán hoạt động theo phương thức là các chứng từ, số liệu sẽ được nhập trực tiếp vào máy tính, sau khi kết thúc quá trình xử lí thông tin, các phần mềm sẽ đưa ra các ghi chép, báo cáo chính xác và hiệu quả, góp phần tiết kiệm thời gian và công sức của người sử dụng.

1.1.2.    Vai trò của phần mềm kế toán.

Vai trò của phần mềm kế toán tự động hóa hoàn toàn các công đoạn lưu trữ, tính toán, tìm kiếm và kết xuất báo cáo nên tiết kiệm được nhân sự và thời gian, chính điều này đã góp phần tiết kiệm chi phí đáng kể cho doanh nghiệp.

So với việc dùng nhiều nhân sự để ghi chép hạch toán hàng ngày, phần mềm kế toán có thể:

  • tin các hồ sơ kế toán được tự động cập nhật và số dư tài khoản (ví dụ như tài khoản khách hàng) sẽ luôn luôn được cập nhật kịp thời.

1.1.3. Đặc điểm phần mềm kế toán.

Một phần mềm được gọi là phần mềm kế toán thì cần có một số đặc điểm cơ bản sau:

  • –        Có các chức năng kế toán cơ bản. Hầu như doanh nghiệp nào cũng phải sử dụng tới những chức năng căn bản có trong phần mềm kế toán như lập hoá đơn, theo dõi chi phí và thu nhập, báo cáo tài chính, quản lý khách hàng/nhà cung cấp.
  •  Những thứ như tính tiền tự động, thanh toán định kì, thông báo đáo hạn và các quy trình tự động khác tiết kiệm thời gian cho bạn vì không cần phải làm thủ công.
  • Sử dụng các mẫu được làm sẵn (có thể tuỳ biến) để tạo báo giá cho khách hàng, tự động chuyển thành hoá đơn sau đó.
  • Cho phép nhiều người dùng truy cập, để bạn không phải làm mọi thứ 1 mình.
  •  Truy cập thời gian biểu, tính lương, in séc và thanh toán cho nhân viên.
  • Sử dụng mọi lúc mọi nơi, mọi thiết bị. Đặc biệt hữu ích cho chủ doanh nghiệp hay đi công tác, không thể ngồi hoặc quản lý sổ sách trên máy tính.
  •  Phần mềm kế toán làm cho việc vận hành doanh nghiệp dễ hơn thông qua tích hợp và tự động nhập dữ liệu theo thời gian thực từ các ứng dụng và công cụ mà doanh nghiệp sử dụng. Ví dụ như: POS, máy chấm công, cân điện tử, dịch vụ mail, …

1.1.4. Phân loại phần mềm kế toán.

Có rất nhiều cách để phân loại các phần mềm kế toán thông dụng nhất hiện nay trên thị trường dựa vào các tiêu chí khác nhau. Dưới đây là một số cách phân loại cơ bản.

  • :
    • : là phần mềm được nhà cung cấp thiết kế sẵn, đóng gói thành các hộp sản phẩm với đầy đủ tài liệu hướng dẫn cài đặt, sử dụng và bộ đĩa cài phần mềm. Loại phần mềm này thường được bán rộng rãi trên thị trường. Do là sản phẩm đóng gói nên giá thành rẻ, nhưng không đáp ứng được với một số yêu cầu đặc thù của doanh nghiệp.

Ví dụ: Phần mềm Misa, AccNetiZ, SIMBA Accounting,…

  • : là phần mềm kế toán đặt hàng là phần mềm được nhà cung cấp phần mềm thiết kế riêng biệt cho một doanh nghiệp nào đấy hoặc một số nhỏ các doanh nghiệp trong cùng một tập đoàn và hệ thống theo đơn đặt hàng. Trong trường hợp này nhà cung cấp phần mềm không cung cấp một sản phẩm sẵn có mà cung cấp dịch vụ phát triển sản phẩm trên những yêu cầu cụ thể. Đặc điểm chung của loại phần mềm này là không phổ biến và có giá thành cao. Thường các doanh nghiệp có nhiều nghiệp vụ, quy mô lớn hoặc ngành nghề, quy trình hoạt động có nhiều đặc thì mà phần mềm đóng gói không đáp ứng được.

Ví dụ: Phần mềm Bravo, FAST, …

1.1.5. Yêu cầu của phần mềm kế toán

      Khác với các phần mềm khác, phần mềm kế toán là phần mềm được xây dựng để phục vụ công tác kế toán trong doanh nghiệp, vì vậy các phần mềm kế toán bắt buộc phải được thiết kế dựa trên các chuẩn mực kế toán, chế độ kế toán Việt Nam.

      Phần mềm kế toán phải có tính tự động hóa và chính xác cao. Mỗi chứng từ kế toán chỉ cần nhập một lần duy nhất, các bút toán kết chuyển hay phân bổ được thiết kế tự động và chương trình sẽ tự động xử lý và cung cấp bất kỳ sổ kế toán, báo cáo kế toán nào theo yêu cầu của người sử dụng tại mọi thời điểm. Phần mềm kế toán có tính chính xác cao, giúp tránh được những sai sót so với kế toán thủ công đồng thời làm tăng tính minh bạch của công tác kế toán.

      Phần mềm kế toán cần phải phân quyền cho từng người sử dụng, cho từng phần hành kế toán, kiểm soát truy cập của từng người từ khâu đăng nhập, nhập liệu đến khâu xem báo cáo.

      Phần mềm kế toán phải cung cấp tính năng sao lưu dữ liệu đảm bảo tính an toàn của dữ liệu.

      Phần mềm kế toán phải cung cấp hệ thống sổ sách kế toán theo các hình thức ghi sổ như: Nhật ký chung, Chứng từ ghi sổ, Nhật ký chứng từ, Nhật ký – Sổ cái. Bên cạnh đó phần mềm còn cung cấp hệ thống sổ chi tiết, báo cáo quyết toán thuế…

1.1.6. Cấu trúc của phần mềm kế toán

      Cấu[VDA3]  trúc của một phần mềm kế toán phụ thuộc vào công nghệ lập trình của phần mềm kế toán đó.

– Các tệp chương trình: là một tập hợp hữu hạn các lệnh viết bằng một ngôn ngữ nào đó, mà người dùng và máy có thể hiểu được, Mỗi lệnh sẽ tương ứng với một hay một số thao tác trong thuật toán đã được xây dựng trước. Tệp chương trình gồm một chương trình chính và các chương trình con.

– Các tệp dữ liệu: là các bảng dùng để lưu trữ và quản lí các dữ liệu, lưu trữ các thông tin đầu vào của hệ thống.

– Data (dữ liệu): Là các bảng dùng để lưu trữ và quản lý các dữ liệu, lưu trữ các thông tin đầu vào của hệ thống. Trong nhóm này có chứa 3 thành phần cơ bản:

+ Database (cơ sở dữ liệu): Là một tập các File được tổ chức theo một quy tắc nào đó để thực thi một nhiệm vụ nào đó. Trong Database có rất nhiều các loại tệp khác nhau nhưng trong đó có một loại tệp rất quan trọng được gọi là bảng (Table).

+ Free Tables (các bảng tự do): trong thành phần này chứa các bảng tự do, nằm ngoài CSDL.

+ Queries (các truy vấn): dùng để truy vấn tạo các Tables khác từ Tables nguồn, nghĩa là sinh ra các tệp bảng từ những tệp bảng nguồn theo một số điều kiện nào đó.

– Documents (các tài liệu): chứa hầu hết các tệp tin, dữ liệu trong báo cáo.

Trong nhóm này có chứa 3 thành phần cơ bản:

+ Forms (giao diện): chứa các tệp có hình ảnh form. Thực chất Form là một cửa sổ đặt các lệnh điều khiển lên trên nó.

+ Report: là báo cáo.

+ Labels: chứa các tệp nhãn.

–   Class: dùng để tạo mới hoặc nối kết các lớp vào Project Manager.

–   Code (chương trình): bao gồm các tệp chương trình (PRG) do người dùng tạo ra và thư viện API. Trong các tệp .PRG, có một tệp được SET MAIN (chọn làm chương trình chính) là tệp sẽ được tự dộng chạy đầu tiên khi chạy phần mềm này.

+ Program: chứa các chương trình

+ API Libraies: dùng để nối kết các thư viện API và các ứng dụng (*.DLL).

+ Applications: dùng để nối kết các thư viện API và các ứng dụng (*.DLL).

–   Other (các thành phần khác):

+ Menus: các thực đơn.

+ Text Files (các tệp văn bản): Dùng để tạo một tệp text hoặc nối kết một tệp text vào Project Manager

+ Other Files (các tệp khác): Dùng để nối kết vào Project Manager một tệp bất kỳ  có thể cả tệp đồ hoạ.

1.1.7. Quy trình xây dựng phần mềm kế toán

1.1.7.1. Khảo sát và lập kế hoạch dự án.

      Đây là gia đoạn nhà phát triển (nhân viên triển khai) đi khảo sát bài toán và tiếp xúc với chủ đầu tư để lập kế hoạch xây dựng hay phát triển phần mềm. Trên cơ sở đó, nhà phát triển xây dựng một kế hoạch thực hiện dự án để phát triển phần mềm bao gồm mục tiêu, yêu cầu, phạm vi và các hạn chế của dự án, đồng thời đưa ra các đánh giá về tính khả thi của dự án. Trên cơ sở đó thiết lập kế hoạch thiết lập triển khai thực hiện dự án.

      Khảo sát hiện trạng bao gồm các nhiệm vụ sau:

  • Thu thập thông tin về cơ chế nghiệp vụ của phần mềm cũ, các thành phần chức năng của phần mềm cũ,…;
  • Thu thập thông tin về môi trường và các tác nhân có ảnh hưởng tới phần mềm cũ.
  • Xác định các yêu mới của bài toán cần giải quyết trong tương lai.
  • Xác định cách thức làm việc của phần mềm cũ.
  • Nghiên cứu khả thi và lập khả thi trong phát triển dự án.
  • Đánh giá kết quả khảo sát và lập tài liệu khảo sát.
  • Lập kế hoạch triển khai dự án.

1.1.7.2. Phân tích.

      Dựa trên các kết quả khảo sát, người phát triển tiến hành phân tích phần mềm, bao gồm các bước sau:

  • Xây dựng mô hình phần mềm: Dựa trên các kết quả khảo sát, người phát triển phải xác định rõ mô hình nghiệp vụ cho phần mềm cần phát triển bằng cách mô hình hóa phần mềm. Đây là bước quan trọng trong quá trình phát triển xây dựng phần mềm do việc mô hình hóa chính xác các hoạt động tác nghiệp của phần mềm là rất phức tạp. Hơn nữa, vì việc mô hình hóa không phản ánh đúng phần mềm cần phát triển sẽ gây ảnh hưởng xấu đến sự phát triển phần mềm không đáp ứng đúng yêu cầu bài toán.
  • Sau khi mô hình hóa phần mềm cần phát triển. Người phát triển định ra một số giải pháp sơ bộ để thiết kế phần mềm và lựa chọn một số giải pháp phù hợp sau khi đã xem xét các yếu tố như: tính năng của phần mềm, chi phí phát triển, môi trường cài đặt, đào tạo người dùng,… đồng thời trong đó xác định các chức năng, thủ tục thực thiện và giao diện phần mềm ở mức chung.

1.1.7.3. Thiết kế Phần mềm.

      Dựa trên các kết quả phân tích, người phát triển tiến hành thiết kế phần mềm, trong đó xác định cấu trúc và cách thức làm việc của hệ thống  để đáp ứng các yêu cầu về nghiệp vụ, các yêu cầu của người dùng,… Như vậy, thiết kế là quá trình chuyển hóa các yêu cầu thành các đặc tả thiết kế, trong đó người phát triển cần sử dụng phương pháp và công cụ thiết kế phù hợp. Thiết kế phần mềm bao gồm các công việc sau:

  • Thiết kế dữ liệu phần mềm: Xác định các đối tượng dữ liệu hay cấu trúc dữ liệu được sử dụng trong phần mềm.
  • Thiết kế chức năng phần mềm: Xác định các module xử lí thể hiện các chức năng của phần mềm.
  • Thiế kế giao diện phần mềm: Xác định các mô hình giao tiếp người – máy.
  • Thiết kế an toàn phần mềm: Xác định các yếu tố đảm bảo sự tin cậy cho phần mềm.
  • Thiết kế kĩ thuật phần mềm: xác định các yêu cầu kĩ thuật cho phần mềm.
  • Lập tài liệu thiết kế hệ thống.

1.1.7.4. Thực hiện xây dựng phần mềm.

Đây là giai đoạn nhằm xây dựng hệ thống theo các thiết kế đã được xác định. Giai đoạn này bao gồm các công việc sau:

  • Lựa chọn công cụ hệ quản trị CSDL và cài đặt cơ sở dữ liệu cho phần mềm.
  • Lựa chọn công cụ lập trình để xây dựng các module chương trình của phần mềm.
  • Lựa chọn công cụ xây dựng giao diện phần mềm.
  • Xây dựng các tài liệu như tài liệu sửa dụng hệ thống, tài liệu kĩ thuật,…

1.1.7.5. Thử nghiệm.

Sau khi được xây dựng, phần mềm cần được thử nghiệm để xác định các lỗi tiềm ẩn và đưa ra các giải pháp khắc phục trước khi triển khai trong thực tế. Việc kiểm tra toàn bộ chương trình thực hiện bằng cách chạy thử chúng với một bộ dữ liệu giả định có tính đặc trưng sau đó đối chiếu với yêu cầu để tìm ra các lỗi. Các lỗi có thể gặp bao gồm:

  • Lỗi không đáp ứng được yêu cầu nghiệp vụ làm cho hệ thống hoạt động không như mong muốn.
  • Lỗi xảy ra bên trong của hệ thống như lỗi lập trình, lỗi thiết kế…
  • Lỗi không phù hợp với môi trường chuyên môn nghiệp vụ và môi trường kĩ thuật.

1.1.7.6. Chuyển giao.

Sau khi hệ thống phần cứng đáp ứng đủ nhu cầu cho phần mềm hoạt động thì nhân viên triển khai bắt đầu các công việc:

  • Cài đặt phần mềm.
  • Chuyển đổi hoạt động của hệ thống cũ sang hệ thống mới, gồm có: chuyển đổi dữ liệu; bố trí, sắp xếp người làm việc trong hệ thống.
  • Đào tạo cho người dùng biết cách sử dụng phần mềm. Đảm bảo cho sản phẩm phần mềm được hoạt động theo đúng nguyên tắc đã thiết kế theo sự thỏa thuận của hai phía – người dùng và nhà cung cấp.
  • Bàn giao tài liệu sử dụng phần mềm.
  • Đưa vào hoạt động và hỗ trợ cho đến khi nghiệm thu.

1.1.7.7. Bảo hành và bảo trì.

Sau khi cài đặt phần mềm, trong một khoảng thời gian nhất định đã ký kết trong hợp đồng. Phần mềm phát sinh lỗi tiềm ẩn mà trong giai đoạn thử nghiệm chưa phát hiện ra; do yếu tố môi trường hoạt động về mặt kĩ thuật (hệ điều hành, thiết bị ngoại vi,…) thay đổi hoặc do có các yêu cầu mới về hoạt động nghiệp vụ và các yêu cầu của người dùng về hệ thống thay đổi,… làm cho hệ thống không còn đáp ứng được các yêu cầu hiện tại. Vì vậy, hệ thống cần phải được chỉnh sửa, cập nhật các thành phần để đảm bảo khắc phục các lỗi và duy trì thực hiện tốt và thích nghi với các điều kiện mới.


Trả lời