Tải bản đầy đủ (.docx) (34 trang)

PHƯƠNG PHÁP LUẬN VỀ QUY TRÌNH XÂY DUNG PHẦN MỀM QUẢN LÝ CỔ ĐÔNG CỔ TỨC

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (273.9 KB, 34 trang )

PHƯƠNG PHÁP LUẬN VỀ QUY TRÌNH XÂY DUNG PHẦN MỀM QUẢN
LÝ CỔ ĐÔNG CỔ TỨC
Sau khi phân tích hiện trạng quản lý cổ đông, cổ tức và tiến trình bầu cử của
công ty cổ phần Naphaco, giải pháp xây dựng một phần mềm nhằm khắc phục
những nhược điểm trên được đưa ra. trong chương này tác giả sẽ trình bày phương
pháp luận để xây dựng một phần mềm. Nội dung chính của chương gồm hai mục
lớn đó là:
- Chu kỳ sống của phần mềm
- Quy trình xây dựng phần mềm
2.1.Đặc trưng và chu kỳ sống của một phần mềm quản lý cổ đông, cổ tức
2.1.1. Đặc trưng của một phần mềm quản lý cổ đông, cổ tức
Phần mềm quản lý cổ đông, cổ tức ngoài những đặc tính của phần mềm
thông thường nó còn có những điểm riêng như sau:
 Mục tiêu: Hỗ trợ đắc lực cho những cán bộ làm công tác quản lý trong
công ty cổ phần. Phần mềm giúp tạo lập một môi trường làm việc tích hợp, phục
vụ có hiệu quả các nhu cầu nhập liệu, hoạt động tác nghiệp, tra cứu, báo cáo, tổng
hợp, thống kê các thông tin cổ đông, cổ tức của mọi đối tượng trong đơn vị từ cấp
lãnh đạo đến các cổ đông.
 Môi trường hệ thống: Số lượng người dùng khá lớn (bao gồm cả ban lãnh
đạo và các cổ đông). Người dùng chủ yếu truy vấn dữ liệu trực tiếp từ kho dữ liệu
tổng hợp, đòi hỏi khả năng bảo mật cao, không cho phép thông tin bị thay đổi từ
bên ngoài…
 Giao diện người dùng: Dễ hiểu, tuân thủ và tương thích với nghiệp vụ
bằng tay đang được thực hiện.
 Yêu cầu về chức năng: quản lý cổ đông theo cổ phần sở hữu hoặc theo
các phòng ban, theo dõi chuyển nhượng cổ phần, cổ tức. Hỗ trợ bầu cử như in
phiếu bầu, nhập phiếu bầu, báo cáo kết quả bầu.
 Các đặc tính của ứng dụng
• Dữ liệu đầu vào được nhập bằng bàn phím, công việc này thường được giao
cho một số cán bộ chuyên trách đảm nhận.
•Dữ liệu đầu ra chủ yếu dưới dạng báo cáo, màn hình hiển thị khi truy vấn


thông tin.
•Các thuật toán xử lý dữ liệu khá đơn giản.
•Các yêu cầu khác: hệ thống phải đáng tin cậy, đưa ra các báo cáo, thông tin
chính xác, kịp thời và được thiết kế mở giúp nâng cấp chương trình trong tương lai
để có thế đáp ứng sự thay đổi về yêu cầu của quản lý cổ đông, cổ tức.
2.1.2. Chu kỳ sống của phần mềm quản lý cổ đông, cổ tức
Chu kỳ sống của phần mềm là cấu trúc các hoạt động trong quá trình phát triển
của hệ thống phần mềm và đưa phần mềm vào sử dụng bao gồm: Đặc tả yêu cầu,
thiết kế, đánh giá và nâng cấp. Theo Ian Sommerville, có thể phân chia quá trình
thiết kế làm một số mô hình khác nhau như: mô hình tuần tự (thác nước), mô hình
tương tác và mô hình xoáy ốc. Hai mô hình tương tác và mô hình xoáy ốc thường áp
dụng cho các dự án phần mềm tương đối phức tạp, có nhiều rủi ro trong qúa trình
thực hiện. Nhưng với các phần mềm quản lý cổ đông, cổ tức số các nghiệp vụ cần
xử lý không nhiều, quy trình tương đối đơn giản và dễ hiểu do vậy chúng ta có thể
ứng dụng mô hình thác nước như được biểu diễn trong hình 2.1.[10],[17], [26].
Các giai đoạn của mô hình như trên được gọi là mô hình thác nước vì đầu ra
của một giai đoạn lại là đầu vào của giai đoạn tiếp theo. Điểm yếu cơ bản của mô
hình này là gặp phải khó khăn trong quá trình điều chỉnh để phù hợp với sự thay
Xác định và phân tích yêu cầu
Thiết kế phần mềm và hệ thống
Triển khai và kiểm thử từng phần
Tích hợp và kiểm thử hệ thống
Vận hành và Bảo trì
Hình 2.1: Mô hình thác nước của vòng đời phát triển phần mềm
đổi yêu cầu của khách hàng khi đang trong quá trình thực hiện. Do vậy, mô hình
này chỉ phù hợp khi yêu cầu của phần mềm và hệ thống được xác định rõ ràng và
đầy đủ trong quá trình thiết kế. Các giai đoạn của mô hình thác nước bao gồm:[22],
[18], [26], [10]
(1) Xác định và phân tích yêu cầu: Nhu cầu về ứng dụng, sự cần thiết và mục
tiêu của hệ thống được tập hợp thông qua trao đổi với những người dùng hệ thống.

Những thông tin này được xác định rõ dựa trên ý kiến của cả những người dùng và
các phân tích viên
(2) Thiết kế phần mềm và hệ thống: Quá trình thiết kế hệ thống có thể được
phân thành thiết kế phần cứng và phần mềm. Thiết kế phần mềm là cách thể hiện
các chức năng của phần mềm để có thể dịch thành ngôn ngữ máy mà máy tính có
thể đọc và hiểu được.
(3) Triển khai và kiểm thử từng phần: Trong suốt giai đoạn này, các thiết kế
phần mềm được mã hoá thành một hoặc nhiều chương trình máy tính. Kiểm thử
từng phần đảm bảo từng phân hệ đáp ứng các chức năng cần có.
(4) Tích hợp và kiểm thử hệ thống: Các phân hệ chương trình được tích hợp và
thực hiện kiểm thử toàn bộ hệ thống để đánh giá các yêu cầu phân tích có được
thoả mãn hay không. Sau quá trình kiểm thử, hệ thống phần mềm sẽ được bàn giao
cho khách hàng.
(5) Vận hành và bảo trì: Tuy không nhất thiết nhưng đây thường là giai đoạn
dài nhất trong vòng đời phát triển của phần mềm. Hệ thống được cài đặt và đưa
vào ứng dụng trong thực tế. Hoạt động bảo trì sẽ sửa các lỗi phát sinh trong quá
trình sử dụng chưa được phát hiện trong các giai đoạn trước, nâng cấp hệ thống để
đáp ứng yêu cầu mới phát sinh.
2.2. Quy trình xây dựng một phần mềm quản lý cổ đông, cổ tức
2.2.1. Khảo sát hiện trạng và đặc tả yêu cầu
Đây là quá trình xác định các dịch vụ hệ thống cần cung cấp và các ràng buộc
đối với hệ thống, là giai đoạn nền tảng để thiết kế một phần mềm nói chung, phần
mềm quản lý cổ đông, cổ tức nói riêng [14], [5], [12].
Quá trình thu thập này được định nghĩa là một tập hợp các hoạt động nhằm
xác định các yêu cầu của phần mềm hỗ trợ bầu cử và quản lý cổ đông, cổ tức và
đặc tả các yêu cầu đó. Trong đó, yêu cầu là các mô tả trừu tượng đến chi tiết về
dịch vụ mà hệ phần mềm cung cấp cũng như các ràng buộc đối với sự phát triển và
hoạt động của nó. Các yêu cầu này sẽ giúp người dùng phần mềm nêu rõ các dịch
vụ hệ thống cung cấp cùng các ràng buộc trong hoạt động của nó. Với các kỹ sư
phần mềm, làm rõ các yêu cầu sẽ là cơ sở quan trọng để xây dựng phần mềm mới.

Các yêu cầu của phần mềm có thể được chia làm 3 loại sau [18] :
• Các yêu cầu chức năng : Mô tả các chức năng hay các dịch vụ mà hệ thống
phần mềm cần cung cấp.
Nghiên cứu tính khả thi
Phân tích yêu cầu
Xác định yêu cầu
Đặc tả yêu cầu
Các mô hình hệ thống
Báo cáo khả thi
Định nghĩa các yêu cầu
Tài liệu yêu cầu
Đặc tả các yêu cầu
Hình 2.2: Quá trình thu thập yêu cầu
• Các yêu cầu phi chức năng : Mô tả các ràng buộc tới dịch vụ và quá trình
phát triển hệ thống (về chất lượng, về môi trường, chuẩn sử dụng, quy trình phát
triển…)
• Các yêu cầu miền/ lĩnh vực : Những yêu cầu đặt ra từ miền ứng dụng, phản
ứng những đặc trưng của miền đó.
Một số thông tin khác, như báo cáo về tính khả thi của hệ thống cũng như đặc
tả phần mềm cũng như đưa ra trong giai đoạn này. Kết quả của giai đoạn này là Dự
án khả thi, Mô hình hệ thống. Các đặc tả yêu cầu và tài liệu yêu cầu bao gồm các
định nghĩa yêu cầu và đặc tả các yêu cầu đó, kết luận về tính khả thi…
Có bốn bước cơ bản trong quá trình thu thập yêu cầu được mô tả trên hình 2.2
bao gồm [18], [26], [19] :
• Nghiên cứu tính khả thi : Nhằm đi đến kết luận "Có nên xây dựng phần
mềm hay không ? ". Đánh giá xem phần mềm xây dựng có thoả mãn các yêu cầu
của người dùng không và có đem lại hiệu quả kinh tế cho đơn vị cũng như nằm
trong ngân sách có thể chi không.
• Phân tích yêu cầu : Đây là quá trình tìm ra các yêu cầu của phần mềm
thông qua quan sát hệ thống hiện tại, tại công ty cổ phần Naphaco, thảo luận với

người sử dụng, phân tích công việc. Những hoạt động trong giai đoạn này được mô
tả trong hình 2.3 bao gồm :
Hiểu biết lĩnh vực ứng dụng : Phân tích viên hệ thống trước khi đi sâu
phân tích chi tiết cần có một cái nhìn tổng quát về lĩnh vực ứng dụng. Để phân tích
các yêu cầu của phần mềm quản lý cổ đông, cổ tức, phân tích viên cần tìm hiểu
thông tin về hoạt động trong đơn vị cổ đông, cổ tức càng nhiều càng tốt.
Thu thập yêu cầu : Trao đổi với người dùng để tìm hiểu yêu cầu của
phần mềm mới thông qua các phương pháp phỏng vấn, quan sát, điều tra bằng
bảng câu hỏi, nghiên cứu tài liệu…
Phân loại yêu cầu : Từ các yêu cầu không có cấu trúc thu thập được,
phân tích viên sẽ phân loại các yêu cầu này.
Giải quyết mâu thuẫn : giữa những người dùng luôn có những mâu
thuẫn, do vậy phân tích viên cần xác định và giải quyết mâu thuẫn này.
Xếp loại ưu tiên các yêu cầu : Trong số các yêu cầu sẽ có những yêu
cầu quan trọng hơn những yêu cầu khác. Giai đoạn này liên quan đến công tác tìm
Xác định và đặc tả yêu cầu
6.Thẩm định yêu cầu
1. Hiểu biết lĩnh vực quản lý cổ đông, cổ tức
2. Thu thập yêucầu của người sử dụng
5. Xếp hạng ưu tiên các yêu cầu
4. Giải quyết mâu thuẫn
3. Phân loại yêu cầu
Hình 2.3: Quy trình phân tích các yêu cầu
và sắp xếp theo mức độ ưu tiên của yêu cầu.
Thẩm định yêu cầu : Kiểm tra lại các yêu cầu có đủ và đáp ứng đúng
mô tả của người dùng không ? Thẩm định yêu cầu liên quan đến việc kiểm tra tính
đúng đắn, tính nhất quán, tính hiện thực và kiểm tra được của yêu cầu cụ thể là :
Có thoả mãn được nhu cầu của người dùng ? Yêu cầu không mâu thuẫn nhau ?
Yêu cầu phải đầy đủ chức năng và ràng buộc ? Yêu cầu phải là hiện thực ? Yêu
cầu có thể kiểm tra được ?

Hồ sơ sau khi có mã
Dữ liệu hồ sơ
Phòng kế toán
Điền thông tin vào sổ cổ đông
Kho dữ liệu sổ cổ đông
Cấp sổ cổ đông Lưu hồ sơ vào kho dữ liệu
Dữ liệu chi tiết
Hình 2.4: Ví dụ về sơ đồ luồng dữ liệu
Trong quá trình phân tích thường gặp những khó khăn sau [21], [18]:
Dễ hiểu lầm do khách hàng sử dụng các thuật ngữ riêng.
Các khách hàng thường mơ hồ về yêu cầu không biết mình muốn cụ thể
điều gì, dễ lẫn lộn giữa yêu cầu và mong muốn.
Nhiều nhóm người dùng có những yêu cầu mâu thuẫn nhau.
Những yếu tố tổ chức và chính sách có thể làm ảnh hưởng đến yêu cầu.
Yêu cầu thường mang tính đặc thù, khó hiểu, khó có chuẩn chung.
Các yêu cầu thường thay đổi trong quá trình phân tích : môi trường nghiệp
vụ thay đổi, có nhóm người đối tượng liên quan mới.
Một trong số các đầu ra của quá trình phân tích yêu cầu là tập hợp các mô
hình biểu diễn các mô tả tổng quát hệ thống. Có nhiều kiểu mô hình khác nhau và
chúng cung cấp các cách hiểu biết hệ thống khác nhau. Đây là cầu nối giữa các
phân tích viên và thiết kế viên. Tuỳ thuộc vào bản chất của hệ thống cần phân tích
mà phân tích viên sẽ lựa chọn một hoặc một số mô hình hệ thống phù hợp theo đối
tượng, luồng dữ liệu, lớp đối tượng và thừa kế, phân rã chức năng…
thông
tin
Các mô hình sẽ giúp làm rõ các dịch vụ hệ thống cần cung cấp và các ràng
buộc trong hoạt động của nó. Như ta đã biết, sơ đồ luồng dữ liệu là mô hình khá đơn
giản và trực quan. Chúng ta có thể sử dụng loại sơ đồ này kết hợp với các công cụ
khác như sơ đồ chức năng, sơ đồ quan hệ thực tế, từ điển dữ liệu,… để mô tả các
quá trình xử lý dữ liệu trong phần mềm quản lý cổ đông, cổ tức.

Minh hoạ ở hình 2.4 thể hiện các bước nhập thông tin về cổ đông mới mới
trong công ty cổ phần. Hình vẽ cho thấy dữ liệu cổ đông được hoàn thiện dần qua
các bước như thế nào cho đến khi được đưa vào kho dữ liệu. Trong sơ đồ luồng dữ
liệu, quá trình xử lý, kho dữ liệu… Để mô tả rõ dữ liệu mà hệ thống xử lý, cán bộ
phân tích thường dùng đến từ điển dữ liệu. Nó bao gồm các ký pháp để mô tả các
dữ liệu điều khiển và miền giá trị của chúng, thông tin về nơi (module) và cách
thức xử lý dữ liệu, cụ thể bao gồm [18] :
Tên (Name) : Tên dữ liệu
Biệt danh (Aliases) : Tên gọi khác.
Vị trí (Where) : Tên module xử lý
Cách thức (How) : Vai trò của dữ liệu, cách thức xử lý.
Ký pháp (Description) : Ký pháp mô tả dữ liệu.
Format : Kiểu dữ liệu, giá trị mặc định…
Mục tiêu cuối cùng của bước này là cán bộ phân tích phải xác định đúng, đầy đủ
và chính xác tất cả các yêu cầu của hệ thống làm căn cứ cho các bước sau.
• Xác định yêu cầu : Hoạt động chuyển các thông tin được thu thập trong
hoạt động phân tích thành những tài liệu phản ánh chính xác các nhu cầu của người
dùng.
• Đặc tả yêu cầu : Mô tả chi tiết và chính xác các yêu cầu hệ thống, cụ thể
hoá các yêu cầu đó. Đây cũng đồng thời là căn cứ để nghiệm thu phần mềm sau
này.
Ngoài ra, nếu khách hàng chưa xác định được cụ thể các yếu tố đầu vào, quy
trình xử lý và các yếu tố đầu ra hoặc người kỹ sư phần mềm cũng còn chưa chắc
chắn về tính hiệu quả của một giải thuật thì sẽ cần làm bản mẫu phần mềm. Điều
này thường gặp với các hệ thống lớn và phức tạp. Đây là một tiến trình mà kỹ sư
phần mềm tạo ra một mô hình cho phần mềm cần phải xây dựng. Bản mẫu này sẽ
là cơ sở để kỹ sư phần mềm cùng khách hàng đánh giá để tiếp tục phát triển đi đến
sản phẩm cuối cùng.
2.2.2. Thiết kế hệ thống
Một thiết kế tối ưu là chìa khoá dẫn đến thành công của dự án. Nhưng không

thể chuẩn hoá quá trình thiết kế theo bất kỳ một quy tắc nhất định nào. Thiết kế là
một quá trình đòi hỏi tính sáng tạo, tinh tế và hiểu biết sâu sắc của kỹ sư thiết kế.
Quá trình thiết kế phần mềm đòi hỏi cán bộ phân tích thiết kế hệ thống hiểu rõ quy
trình, cách thức truyền dữ liệu trong tổ chức, mối quan hệ giữa quy trình đó với
công tác ra quyết định và quy trình đó giúp thực hiện các mục tiêu của hệ thống
như thế nào. Đó là lý do giải thích mối quan hệ chặt chẽ giữa quá trình phân tích và
thiết kế hệ thống. Thiết kế phần mềm cung cấp cách biểu diễn phần mềm có thể
được xác nhận về chất lượng, là cách duy nhất mà chúng ta có thể chuyển hoá một
cách chính xác các yêu cầu của khách hàng thành sản phẩm hay hệ thống phần
mềm cuối cùng. Không có thiết kế có nguy cơ đưa ra một hệ thống không ổn định -
một hệ thống sẽ thất bại. Thiết kế tốt là bước quan trọng đầu tiên để đảm bảo chất
Thiết kế sơ bộ Dự thảo thiết kế Thiết kế chi tiết
Bản thiết kế cuối cùng
Hình 2.5: Quá trình hoàn thiện bản thiết kế
Đặc tả yêu cầu
Thiết kế kiến trúc
Cấu trúc hệ thống
Đặc tả khái quát
Đặc tả phần mềm
Thiết kế giao diện
Đặc tả giao diện
Thiết kế các phân hệ
Đặc tả các phân hệ
Thiết kế cấu trúc DL
Đặc tả cấu trúc DL
Thiết kế thuật toán
Đặc tả thuật toán
CÁC HOẠT ĐỘNG THIẾT KẾ
CÁC SẢN PHẨM THIẾT KẾ
Hình 2.6: Mô hình chung của quá trình thiết kế

lượng phần mềm.
[3]
2.2.2.1. Quá trình thiết kế
Mục tiêu của quá trình thiết kế là xây dựng một bản sơ đồ thiết kế chương
trình. Các đầu mối trong bản thiết kế thể hiện các thực thể như quá trình xử lý, các
chức năng chương trình… Các đường nối kết thể hiện quan hệ giữa các thực thể
như gọi đến chức năng, sử dụng chương trình con… Quá trình thiết kế là một dây
chuyền các chuyển đổi. Các kỹ sư thiết kế không đưa tới kết quả cuối cùng ngay
mà phát triển thông qua nhiều phiên bản khác nhau. Quá trình thiết kế là sự hoàn
thiện và chi tiết hoá các thiết kế trước. Quá trình đó có thể được minh hoạ trong
hình 2.5.
Quá trình thiết kế còn là sự phát triển một số mô hình của hệ thống theo nhiều
mức độ trừu tượng khác nhau. Khi một hệ thống được phân tích, các lỗi và những
chỗ bị bỏ sót trong các giai đoạn trước sẽ được phát hiện và làm hoàn thiện dần
qua các bản thiết kế. Hình 2.6 minh hoạ mô hình chung của quá trình thiết kế và
các mô tả thiết kế được viết trong các giai đoạn khác nhau của quá trình thiết kế.
[26]
Tài liệu đặc tả là kết quả đầu ra của các hoạt động thiết kế. Những đặc tả này
có thể là những mô tả khái quát để làm rõ yêu cầu người dùng hoặc là những diễn
giải cách thức thực hiện một yêu cầu nào đó. Trong các giai đoạn sau của quá trình
thiết kế, các đặc tả sẽ càng chi tiết hơn. Kết quả cuối cùng của quá trình này là các
đặc tả chi tiết về thuật toán và cấu trúc dữ liệu sẽ được cài đặt. Hình 2.6 mô tả các
quá trình thiết kế cho thấy các giai đoạn của quá trình thiết kế được sắp xếp có thứ
tự. Những thực tế, các hoạt động thiết kế được thực hiện song song với nhau. Tuy
vậy, các hoạt động này cũng là những công việc cần thực hiện trong quá trình thiết
kế một phần mềm, bao gồm :
• Thiết kế kiến trúc: Phân tích các chương trình con của phần mềm và xác
định các mối quan hệ giữa các phân hệ.
• Đặc tả khái quát : Các chương trình con sẽ được mô tả chung về yêu cầu
chức năng cũng như các ràng buộc

• Thiết kế giao diện : Thiết kế giao diện giữa các chương trình con với nhau,
mô tả cần rõ ràng, giúp người đọc hiểu cách dùng các chương trình con.
• Thiết kế các phân hệ : Thiết kế việc phân chia dịch vụ của các chương trình
con và giao diện các dịch vụ đó.
• Thiết kế cấu trúc dữ liệu : Thiết kế và mô tả cấu trúc dữ liệu của hệ
thống.
• Thiết kế thuật toán : Thiết kế và mô tả các thuật toán được sử dụng trong
phần mềm.
Quá trình này được lặp đi lặp lại với mỗi chương trình con đến khi các phân
hệ chương trình được thiết kế chi tiết đến từng module lập trình.

×