Tải bản đầy đủ (.doc) (155 trang)

Phân tích thiết kế hệ thống thông tin quản lý khách hàng tại công ty Ánh Dương

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 (2.24 MB, 155 trang )

1 Chuyên đề tốt nghiệp
LỜI NÓI ĐẦU
Thế kỷ 21- thế kỷ của sự bùng nổ công nghệ thông tin, sự phát triển
của các công nghệ tiên tiến như vũ bão, mang lại một luồng gió mới thổi
vào nhận thức của mỗi người. Song song đó, thế giới đang trong xu thế
toàn cầu hóa, tất cả đều mang ý nghĩa hội nhập. Lúc này, các doanh nghiệp
và chính phủ không chỉ cạnh tranh với các doanh nghiệp trong một quốc
gia mà còn cạnh tranh với các doanh nghiệp, chính phủ ở khắp thế giới. Vì
thế để tồn tại và phát triển, mục tiêu mà các doanh nghiệp hướng đến đầu
tiên là nâng cao chất lượng phục vụ khách hàng. Khách hàng là yếu tố sống
còn của bất kỳ doanh nghiệp nào trong thế kỷ 21. Để có khách hàng đã khó
nhưng để giữ khách hàng càng khó hơn nhiều. Doanh nghiệp nào làm cho
khách hàng thỏa mãn, doanh nghiệp đó sẽ phát triển tốt. Chính phủ nào
làm nhân dân hài lòng, chính phủ đó sẽ vững mạnh.
Trong bối cảnh hiện này, việc ứng dụng công nghệ thông tin vào lĩnh
vực quản trị quan hệ khách hàng không là mới trên thế giới nhưng là mới ở
Việt Nam. Nhiều vấn đề đặt ra làm thế nào đem đến cho khách hàng sự
phục vụ tốt nhất, tiện lợi và hiệu quả nhất. Do vậy, em quyết định chọn đề
tài ”Phân tích thiết kế hệ thống thông tin quản lý khách hàng tại công ty
Ánh Dương” để giúp công ty duy trì và phát triển mối quan hệ tốt đẹp với
khách hàng
Hoàng Tân Cương Tin 47 B
2 Chuyên đề tốt nghiệp
MỤC LỤC
LỜI NÓI ĐẦU...........................................................................................................................1
MỤC LỤC.................................................................................................................................2
CHƯƠNG 1...............................................................................................................................4
TỔNG QUAN VỀ CƠ SỞ THỰC TẬP VÀ ĐỂ TÀI NGHIÊN CỨU....................................4
1. GIỚI THIỆU VỀ CƠ SỞ THỰC TẬP.............................................................................4
1.1 Giới thiệu chung .........................................................................................................4
2. SỰ CẦN THIẾT CỦA ĐỀ TÀI...............................................................................9


3. LÝ DO CHỌN ĐỀ TÀI..............................................................................................10
3.1 Giảm chi phí hoạt động cho doanh nghiệp...............................................................10
3.2 Hỗ trợ cho quy trình bán hàng..................................................................................11
3.3 Tính đơn giản.............................................................................................................11
3.4 Nâng cao năng suất và hiệu quả công việc...............................................................11
3.5 Phục vụ lãnh đạo ra quyết định.................................................................................12
CHƯƠNG 2.............................................................................................................................13
PHƯƠNG PHÁP LUẬN VỀ QUY TRÌNH XÂY DỰNG PHẦN MỀM..............................13
1. ĐẶC TRƯNG VÀ CHU KỲ SỐNG CỦA MỘT PHẦN MỀM ...................................13
1.1 Đặc trưng của phần mềm quản lý khách hàng..........................................................13
1.2 Vòng dời phát triển của một phần mềm....................................................................14
2. QUY TRÌNH XÂY DỰNG MỘT PHẦN MỀM ...........................................................16
2.1 Khảo sát hiện trạng và đặc tả yêu cầu.......................................................................16
2.2 Thiết kế hệ thống.......................................................................................................20
2.2.1 Quá trình thiết kế ...................................................................................................20
Phương pháp Top - down là cách thức tối ưu để thực hiện các bước này. Phương
pháp thiết kế này giúp khắc phục hầu hết các vấn đề xảy ra trong quá trình thiết kế.
Các chương trình con được thiết kế theo các lớp thứ tự từ cao đến thấp. Phương pháp
Top - down là phương pháp thiết kế khoa học, có hệ thống, đặc biệt phù hợp với các
bài toán xây dựng từ đầu như phần mềm quản trị quan hệ khách hàng đang được đề
cập.................................................................................................................................22
2.2.2 Phương pháp thiết kế có cấu trúc...........................................................................22
2.2.3 Thiết kế cấu trúc ....................................................................................................23
2.2.4 Thiết kế giao diện...................................................................................................24
2.3 Lập trình và lựa chọn ngôn ngữ lập trình sử dụng.................................................27
2.3.1 Kiểu dữ liệu............................................................................................................27
2.3.2 Cấu trúc ngôn ngữ .................................................................................................28
2.3.3 Module hoá và quản lý bộ nhớ...............................................................................28
2.3.4 Quản lý lỗi..............................................................................................................29
2.3.5 Hỗ trợ đa người dùng.............................................................................................29

2.3.6 Đặc trưng phi kỹ thuật khác...................................................................................29
2.4 Phong cách lập trình..................................................................................................30
2.4.1 Tài liệu chương trình..............................................................................................31
2.4.2 Khai báo dữ liệu.....................................................................................................32
2.4.3 Xây dựng câu lệnh..................................................................................................32
2.4.4 Vào/ ra....................................................................................................................33
2.5 Kiểm tra và đảm bảp chất lượng phần mềm.............................................................33
Hoàng Tân Cương Tin 47 B
3 Chuyên đề tốt nghiệp
2.5.1 Quá trình kiểm tra...................................................................................................34
2.5.2 Quá trình kiểm thử..................................................................................................35
2.6 Triển khai và đào tạo sử dụng...................................................................................36
2.7 Bảo trì phần mềm......................................................................................................37
2.8 Quản lý thay đổi phần mềm .....................................................................................38
CHƯƠNG III...........................................................................................................................40
PHÂN TÍCH THIẾT KẾ PHẦN MỀM QUẢN LÝ KHÁCH HÀNG .................................40
1. XÁC ĐỊNH YÊU CẦU CỦA PHẦN MỀM..................................................................40
1.1 Khảo sát hệ thống......................................................................................................40
1.2 Phân tích nghiệp vụ...................................................................................................42
1.3 Phân tích chức năng của hệ thống mới.....................................................................43
1.4 Sơ đồ luồng thông tin (IFD)......................................................................................46
2. THIẾT KẾ VÀ GIẢI THUẬT DỮ LIỆU.......................................................................56
3. THIẾT KẾ CÁC GIẢI THUẬT......................................................................................69
4. CÁC FORM GIAO DIỆN...............................................................................................72
//Form tra cứu chi tiết hợp đồng........................................................................................142
//Form lên báo cáo tình trạng hợp dồng............................................................................152
Hoàng Tân Cương Tin 47 B
4 Chuyên đề tốt nghiệp
CHƯƠNG 1
TỔNG QUAN VỀ CƠ SỞ THỰC TẬP VÀ ĐỂ TÀI

NGHIÊN CỨU
1. GIỚI THIỆU VỀ CƠ SỞ THỰC TẬP
1.1 Giới thiệu chung
Tên giao dịch Ánh Dương JSC
Ngày thành lập 11/4/2008
Địa chỉ Số 10 Ngõ 308-Đường Minh Khai-Quận Hai Bà Trưng –
Hà Nội
Ban lãnh đạo
Giám đốc: Lê Xuân Thiệp
Trưởng phòng kinh
doanh
Phạm Ngọc Dân
Trưởng phòng kĩ thuật: Trần Khánh Dư
Lĩnh vực hoạt
động chính
Cung cấp mực cho máy in máy photocopy
Cung cấp các loại máy tính, laptop
Cung cấp các loại máy in ,photocopy
Thiết kế Website
Bảo dưỡng các loại máy móc ,thiết bị văn phòng
Phát triển ứng dụng trên nền Web
Tư vấn, thiết kế mạng LAN/WAN/INTRANET
Sản xuất
Hoàng Tân Cương Tin 47 B
5 Chuyên đề tốt nghiệp
Các đối tác tiêu
biểu
Luminas Company
Alphaink international
VI-TECH AMI Co.,ltd

Gia Long
1.2 Hệ thống tổ chức, chức năng, nhiệm vụ của bộ máy quản lý tại cơ sở
thực tập.
Do mới thành lập nên điều kiện về cơ sở vật chất còn hạn chế, công ty
thuê trụ sở ở Số 10 Ngõ 308-Đường Minh Khai-Quận Hai Bà Trưng .Công ty
hiện tại có 14 người
Sơ đồ tổ chức
Chức năng của các phòng ban như sau:
- Phòng Giám đốc: là nơi làm việc của giám đốc công ty, quản lý
chung tất cả các vấn đề của công ty.
- Phòng kinh doanh: gồm 5 nhân viên kinh doanh về thiết bị văn
phòng
- Phòng kĩ thuật: gồm 5 nhân viên chuyên sửa chữa,lắp đặt và bảo
hành các thiết bị văn phòng
- Phòng kho: gồm 1 nhân viên
Hoàng Tân Cương Tin 47 B
Phòng Giám đốc
Phòng kinh
doanh
Phòng kĩ thuật
Kho
Phòng kế
toán
6 Chuyên đề tốt nghiệp
- Phòng kế toán: 2 nhân viên.
Sơ đồ tổ chức bộ máy quản lý của công ty được thể hiện trong sơ đồ sau:
+ Giám đốc: quản lý chung tất cả các vấn đề của công ty, cả về hoạt
động và tài chính, tìm kiếm khách hàng.
+ Trưởng phòng kinh doanh: điều hành các dự án trong công ty, quản
lý kinh doanh của công ty,quản lí các hạng mục kinh doanh của công ty,mở

rộng và tìm kiếm khách hàng
+ Trưởng phòng kỹ thuật: quản lý các vấn đề kỹ thuật .
+ Kế toán: Quản lí thu chi công nợ hàng ngày của công ty
1.3 Thực trạng, kết quả hoạt động đã đạt được trong thời gian qua và
phương hướng, nhiệm vụ trong thời gian tới của cơ sở thực tập.
1.3.1 Kết quả hoạt động đã đạt được trong những năm qua.
Trải qua gần 1 năm thành lập và phát triển, công ty Ánh Dương đã
đạt những kết quả như sau:
- Về đối tác: thiết lập quan hệ đối tác với nhiều công ty, cửa hàng, đại

- Ngoài ra còn có nhiều khách hàng trong nước tiêu biểu là: Mai
Hoang Informatics Co., Ltd; Ngoc Ha Service Informatics Co., Ltd; GIA
LONG,VI-TECH AMI Co.,ltd…
- Về dịch vụ:
Hoàng Tân Cương Tin 47 B
Giám đốc
Trưởng phòng
kinh doanh
Trưởng phòng
kỹ thuật
Kế toán
7 Chuyên đề tốt nghiệp
Công ty Ánh Dưong tự tin đem đến cho khách hàng các sản phẩm và sự
phục vụ với chất lượng cao, giá cả cạnh tranh và đảm bảo về thời hạn; Các
sản phẩm tiên tiến của thế giới; Dịch vụ hỗ trợ khách hàng hoàn hảo.
Các sản phẩm và dịch vụ do Ánh Dương phát triển đều chú trọng đến
đối tượng sử dụng để tạo ra giá trị gia tăng cho khách hàng và được phát triển
trên những công nghệ hiện đại nhất, đáp ứng chuẩn mực quốc tế.
Các dịch vụ chính của công ty là:
+ Cung cấp các loại mực cho máy in,máy photocopy..với chất

lượng tốt nhất cho các khách hàng như HP, anpha…
+ Cung cấp các loại máy tính đồng bộ ,linh kiện máy tính,thiết
bị mạng, laptop của các hãng nổi tiếng như: IBM,HP,Sony vaio, Lenovo,
Gigabyte ,ECS, Golden field ,Orient, DELL, Compaq ,Samsung
,Foxcom,LG…
+ Cung cấp các loại máy in ,photocopy của các hãng Canon ,Hp,
Epson, ricod , toshiba ….
+ Bảo dưỡng các loại máy móc ,thiết bị văn phòng của các công
ty ,cửa hàng ,khách lẻ…
+ Thiết kế Website : Sắp tới công ty sẽ mở thêm mảng dịch vụ
thiết kế Website cho các công ty, cơ quan…
+ Phát triển ứng dụng trên nền web
Internet đã trở thành một yếu tố quan trọng trong đời sống của chúng ta
và nó làm thay đổi các hình thức trao đổi, kinh doanh truyền thống. Để hỗ trợ
các doanh nghiệp ứng dụng thành công các ưu thế nổi bật của Internet, như:
• Giảm thiểu tối đa chi phí
• Tránh mọi thất thoát tài sản
• Nâng cao chất lượng trao đổi thông tin giữa nhà cung cấp với người
tiêu dùng, giữa mọi người với nhau….
Hoàng Tân Cương Tin 47 B
8 Chuyên đề tốt nghiệp
+ Tư vấn, thiết kế Mạng LAN/WAN/INTRANET: ISOFTCO có
khả năng tư vấn, thiết kế, triển khai các hệ thống LAN/WAN/Intranet cho
nhiều đối tượng khách hàng.
- Để nâng cao hiệu quả hoạt động kinh doanh của công ty cổ phần
đầu tư thương mại và sản xuất Ánh Dưong đã, đang và sẽ thực hiện
các giải pháp sau :
+ Thương mại điện tử: công ty thực hiện việc kinh doanh qua
mạng nhằm tối ưu hoá các Tính năng sau:
• Nhanh chóng tiết kiệm thời gian cho khách hàng và của cả công ty

• Giảm thiểu chi phí tối đa.
• Đặt hàng mọi nơi.
• Tính tiền trực tuyến.
• Xác nhận đơn đặt hàng tự động qua mail.
• Hỗ trợ nhiều hình thức thanh toán.
+ Nghiên cứu thị trường trực tuyến (Online Survey):
+ Phát triển thị trường của công ty ở các tỉnh miền Bắc và miền Trung
+ Nâng cao chất lượng phục vụ khách hàng
1.3.2 Phương hướng, nhiệm vụ trong thời gian tới.
Phương hướng, nhiệm vụ của công ty được thể hiện qua mục tiêu và
tầm nhìn trong thời gian tới. Cụ thể là:
- Mục tiêu:
Mục tiêu của công ty TNHH phần mềm trí tuệ là trở thành nhà cung
cấp mực in và thiết bị văn phòng hàng đầu cho các doanh nghiệp, tổ chức, cá
nhân ở Hà Nội và ngoại tỉnh mien Bắc
- Tầm nhìn trong tương lai:
+ Sáng tạo những giá trị vì khách hàng:
Hoàng Tân Cương Tin 47 B
9 Chuyên đề tốt nghiệp
Luôn luôn cập nhật và phát triển công nghệ, thiết lập hệ thống kinh
doanh nhằm mục đích mang đến cho khách hàng những sản phẩm và dịch vụ
tốt nhất, mang lại hiệu quả đích thực cho khách hàng.
+ Kinh doanh tôn trọng con người:
Chúng tôi từng bước xây dựng Ánh Dương thành một công ty ngày
càng lớn mạnh và uy tín.
+ Nỗ lực để cùng phát triển:
Cùng hợp tác để đem lại điều kiện tốt hơn cho tất cả thành viên, cộng
tác viên và các tổ chức, cá nhân có quan hệ hợp tác với Ánh Dương.
1.4 Thực trạng ứng dụng tin học hỗ trợ hoạt động quản lý và nghiệp vụ tại
cơ sở thực tập.

1.4.1 Tình hình trang thiết bị tin học tại công ty.
Là một công ty kinh doanh về mực in và các thiết bị văn phòng nên
mọi vị trí làm việc trong công ty đều được trang bị máy tính, được kết nối
mạng nội bộ và kết nối Internet tạo sự thuận lợi trong việc chia sẻ và quản lý
thông tin.Mọi người làm viêc đều nghiêm túc và mọi người cùng nỗ lực hết
mình với công ty
1.4.2 Ứng dụng các phần mềm quản lý hiện thời tại công ty.
Là một công ty kinh doanh về mực in và các thiết bị văn phòng nhưng
Ánh Dưong vẫn chưa chú trọng đến việc ứng dụng tin tác quản lý và nghiệp
vụ của mình.
Tất cả các dự án của công ty đều học trong công quản lý thủ công và
thực hiện báo cáo công việc của nhân viên làm được hay chưa làm được trong
ngày bằng công cụ chủ yếu là Exel
2. SỰ CẦN THIẾT CỦA ĐỀ TÀI
Không thể phủ nhận rằng thành công của một doanh nghiệp phụ thuộc rất
nhiều vào mối quan hệ của doanh nghiệp với khách hàng. Khi cạnh tranh trên
Hoàng Tân Cương Tin 47 B
10 Chuyên đề tốt nghiệp
thị trường diễn ra ngày càng găy gắt, việc thu hút và giữ chân khách hàng là
rất khó khăn, thì quản lý khách hàng là việc rất quan trọng mà doanh nghiệp
cần làm để có được khách hàng trung thành.
Ở hầu hết các doanh nghiệp, nhiệm vụ tập trung chăm sóc khách hàng và
cung ứng chính xác những gì khách hàng muốn luôn được nêu lên hàng đầu.
Nếu không am hiểu khách hàng, doanh nghiệp có thể bị khách hàng từ bỏ để
tìm đến các nhà cung cấp khác. Bản thân công ty cổ phần giải pháp phần mềm
Hoà Bình cũng luôn đặt khách hàng lên hàng đầu. Nhưng chi phí tiếp thị lớn
không nhất thiết sẽ mang lại thành công cho công ty. Để sử dụng hiệu quả chi
phí đó công ty cần phải đi đầu trong việc am hiểu, gặp gỡ khách hàng cũ cũng
như nắm bắt thông tin về khách hàng mới. Điều này giúp các nhân viên đi đúng
hướng trong trao đổi với khách hàng, nhờ vậy không chỉ đem về hợp đồng cho

công ty mà còn tạo ra mối quan hệ tốt đẹp làm cơ sở cho các giao dịch lâu dài
về sau.
Để quản lý và khai thác hiệu quả một khối lượng thông tin lớn và phức
tạp đó, cách phù hợp nhất là áp dụng công nghệ thông tin. Ứng dụng công
nghệ thông tin giúp doanh nghiệp nâng cao giá trị khách hàng cũng như lợi
nhuận thu được từ họ.
3. LÝ DO CHỌN ĐỀ TÀI
Từ nhu cầu thực tiễn của công ty cổ phần thương mại và sản xuất Ánh
Dương, em đã tiến hành nghiên cứu xây dựng phần mềm giúp doanh nghiệp
quản lý các thông tin khách hàng để nhân viên công ty sử dụng hiệu quả thời
gian trao đổi và tiếp xúc với khách hàng. Những lợi ích mà phần mềm hướng
tới như sau:
3.1 Giảm chi phí hoạt động cho doanh nghiệp
- Bộ phận bán hàng có thể rút ngắn chu kỳ bán hàng và nâng cao các
định mức quan trọng như doanh thu trung bình theo nhân viên, giá trị
trung bình đơn hàng và doanh thu trung bình theo khách hàng.
Hoàng Tân Cương Tin 47 B
11 Chuyên đề tốt nghiệp
- Bộ phận chăm sóc khách hàng có thể nâng cao năng suất phục vụ khách
hàng của từng nhân viên, nâng cao hệ số thỏa mãn đồng thời giảm thời
gian phản hồi và thời gian giải quyết mỗi yêu cầu từ khách hàng.
3.2 Hỗ trợ cho quy trình bán hàng
Hỗ trợ hoạt động bán hàng
- Quản lý và phân biệt khách hàng tiềm năng, khách hàng chính thức.
- Quản lý và phân biệt khách hàng là cá nhân hay tổ chức.
- Quản lý danh sách khách hàng (tên, số điện thoại, địa chỉ …), người
liên hệ. Hệ thống báo cáo bán hàng theo các nguồn khác nhau
Hỗ trợ dịch vụ sau bán hàng
Ghi lại những ý kiến phản hồi của khách hàng và đáp ứng nhanh chóng
trả lời lại những yêu cầu của khách hàng.

3.3 Tính đơn giản
Khách hàng có thể trao đổi thông tin với công ty theo bất cứ cách nào mà
khách hàng thích, vào bất cứ thời điểm nào, thông qua bất cứ kênh liên lạc
nào, bằng bất cứ ngôn ngữ nào... Dù các yêu cầu của khách hàng có thể phải
đi qua những kênh nội bộ phức tạp mới đến đúng bộ phận phụ trách về sản
phẩm, dịch vụ đó, nhưng thông qua hệ thống quản lý khách hàng, khách hàng
sẽ có cảm giác đang giao tiếp với một thực thể duy nhất và nhận được sự
chăm sóc mang tính cá nhân.
3.4 Nâng cao năng suất và hiệu quả công việc
Nhân viên thực hiện công việc một cách dễ dàng hơn tạo ra năng suất
cao trong công việc.
Khách hàng tin tưởng vào chất lượng phục vụ, uy tín của công ty do vậy
công ty có nhiều dự án được thực hiện tạo ra lợi nhuận cao.
Hoàng Tân Cương Tin 47 B
12 Chuyên đề tốt nghiệp
3.5 Phục vụ lãnh đạo ra quyết định
Phần mềm sẽ cung cấp cho nhà quản trị báo cáo thống kê về khách hàng,
số lượng hợp đồng được ký kết, kết quả kinh doanh của nhân viên, kết quả
thực hiện các giao dịch với khách hàng để từ đó xác định được tình trạng phát
triển của công ty từ đó đưa ra các chiến lược kinh doanh cho phù hợp đồng
thời có chế độ khen thưởng thích hợp với nhân viên của mình.
Hoàng Tân Cương Tin 47 B
13 Chuyên đề tốt nghiệp
CHƯƠNG 2
PHƯƠNG PHÁP LUẬN VỀ QUY TRÌNH XÂY DỰNG
PHẦN MỀM
1. ĐẶC TRƯNG VÀ CHU KỲ SỐNG CỦA MỘT PHẦN MỀM
1.1 Đặc trưng của phần mềm quản lý khách hàng
Phần mềm quản lý khách hàng 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: 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 khách hàng, giao dịch và hợp đồng với
khách hà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 nhân viên phòng kinh doanh). 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ý và phân loại được khách hàng, theo dõi
quá trình giao dịch với khách hàng và các hợp đồng mang lại cho công ty. Từ
đó xác định được hiệu quả công việc của từng nhân viên kinh doanh trong
công ty..
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 từng nhân viên kinh doanh phụ trách đảm nhận.
Hoàng Tân Cương Tin 47 B
14 Chuyên đề tốt nghiệp
- 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ế phát triển xứng tầm với hệ thống quản lý
khách hàng đúng tiêu chuẩn
1.2 Vòng dời phát triển của một phần mềm
Vòng đời 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 trị
quan hệ khách hàng 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.
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 đổ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:
(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
Hoàng Tân Cương Tin 47 B
15 Chuyên đề tốt nghiệp
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.
Hình 2.1 Mô hình thác nướ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.
Hoàng Tân Cương Tin 47 B
16 Chuyên đề tốt nghiệp
2. QUY TRÌNH XÂY DỰNG MỘT PHẦN MỀM
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.
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 quản trị quan hệ khách hàng 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 :
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.
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
Hoàng Tân Cương Tin 47 B
17 Chuyên đề tốt nghiệp
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:
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 giải pháp phần mềm
Hoà Bình, 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 trị quan hệ khách hàng, phân tích viên cần tìm
hiểu thông tin về hoạt động trong lĩnh vực tìm kiếm, phục vụ chăm sóc khách
hàng 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.
Hoàng Tân Cương Tin 47 B
18 Chuyên đề tốt nghiệp
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
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ình 2.3 Ví dụ về khảo sát yêu cầu của lĩnh vực quản trị quan hệ
khách hàng
Trong quá trình phân tích thường gặp những khó khăn sau :
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.
Hoàng Tân Cương Tin 47 B
19 Chuyên đề tốt nghiệp
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,…
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.
Hoàng Tân Cương Tin 47 B
20 Chuyên đề tốt nghiệp
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 lượng phần mềm.
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.4
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.5 minh hoạ mô hình chung của
Hoàng Tân Cương Tin 47 B
21 Chuyên đề tốt nghiệp
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ế
Hình 2.4 Quá trình hoàn thiện bản thiết kế
Hình 2.5 Mô hình chung của quá trình thiết kế
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.

Hoàng Tân Cương Tin 47 B
22 Chuyên đề tốt nghiệp
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.
Phương pháp Top - down là cách thức tối ưu để thực hiện các bước này.
Phương pháp thiết kế này giúp khắc phục hầu hết các vấn đề xảy ra trong quá
trình thiết kế. Các chương trình con được thiết kế theo các lớp thứ tự từ cao
đến thấp. Phương pháp Top - down là phương pháp thiết kế khoa học, có hệ
thống, đặc biệt phù hợp với các bài toán xây dựng từ đầu như phần mềm quản
trị quan hệ khách hàng đang được đề cập
2.2.2 Phương pháp thiết kế có cấu trúc
Phương pháp thiết kế có cấu trúc đã được sử dụng phổ biến và rộng rãi
trong phân tích và thiết kế hệ thống từ những năm 1970. Mặc dù, hiện nay,
phương pháp thiết kế hướng đối tượng đã dần thay thế cho phương pháp thiết
kế có cấu trúc, song phương pháp này vẫn có một chỗ đứng nhất định và vẫn
là phương pháp được sử dụng nhiều nhất trong thực tế. Gần 40 năm phát triển
phương pháp thiết kế có cấu trúc đã được rất nhiều người cải tiến và ngày
càng hoàn thiện.. Phương pháp này là sự đúc kết kinh nghiệm phát triển và
triển khai của nhiều phần mềm trên khắp thế giới. Phương pháp có cấu trúc là
phương pháp dễ áp dụng, nhưng lại rất hiệu quả và có thể sử dụng trong các
hệ thống quản trị quan hệ khách hàng.
Hoàng Tân Cương Tin 47 B
23 Chuyên đề tốt nghiệp

Phương pháp thiết kế có cấu trúc tập trung vào phân tích các dòng dữ
liệu và quá trình xử lý. Chính vì vậy, các công cụ hỗ trợ thiết kế chủ yếu là
các sơ đồ dòng dữ liệu, sơ đồ quan hệ thực thể, sơ đồ cấu trúc… Phương pháp
thiết kế có cấu trúc bao gồm tập hợp các hoạt động, ký hiệu, mẫu biểu báo
cáo, các nguyên tắc và những hướng dẫn thiết kế. Phương pháp có cấu trúc
thường hỗ trợ một vài hoặc tất cả các công cụ sau:
Sơ đồ luồng dữ liệu thể hiện sự phân rã chức năng chương trình, tập
trung vào luồng dữ liệu vào ra, trao đỗi giữa các phân hệ.
Sơ đồ quan hệ thực thể biểu diễn cấu trúc kết hợp các dữ liệu.
Sơ đồ chức năng trong hệ thống cùng các mối quan hệ tương tác giữa chúng.
Không thể so sánh để xác định công cụ nào là tốt nhất, việc thành công
của một công cụ là phụ thuộc vào mức độ phù hợp với lĩnh vực ứng dụng.
Trong những trường hợp tương đối phức tạp như với một hệ thống quản lý cổ
đông, cổ tức, chúng ta phải kết hợp sử dụng một số công cụ này với nhau để
có hình dung rõ nét về hệ thống.
2.2.3 Thiết kế cấu trúc
Quá trình thiết kế để xác định các phân hệ trong một hệ thống, cấu trúc
của từng phân hệ và quan hệ giữa chúng được gọi là thiết kế cấu trúc hay còn
gọi là thiết kế chức năng. Kết quả của quá trình này mô tả cấu trúc của phần
mềm. Đây là giai đoạn đầu của quá trình thiết kế phần mềm, nối kết giữa quá
trình đặc tả yêu cầu và giai đoạn thiết kế. Giai đoạn thiết kế cấu trúc thường
được tiến hành song song với một số hoạt động đặc tả yêu cầu. Các bước công
việc không thể thiếu trong quá trình thiết kế cấu trúc bao gồm :
Cấu trúc hệ thống: hệ thống sẽ được cấu trúc thành một số phân hệ
chính và thiết lập quan hệ giữa chúng.
Mô hình hoá điều khiển: tạo lập mô hình chung để quản lý các mối quan
hệ giữa các phân hệ trong hệ thống
Hoàng Tân Cương Tin 47 B
24 Chuyên đề tốt nghiệp
Phân chia các module: mỗi phân hệ trong chương trình lại được chia

thành các module nhỏ.
2.2.4 Thiết kế giao diện
Thiết kế giao diện tương tác giữa người dùng với máy tính là một bước
quan trọng trong thiết kế ứng dụng phần mềm. Giao diện cần phù hợp với
trình độ, kinh nghiệm và mong đợi của người dùng. Người dùng hệ thống
thường đánh giá một hệ thống thông qua giao diện hơn là qua các chức năng
chương trình. Những chương trình có giao diện không đáp ứng yêu cầu người
dùng thì sẽ không được chấp nhận. Mặc dù, giao diện văn bản (text - based)
vẫn được sử dụng trong một số chương trình, nhưng công nghệ ngày nay và
cùng với phạm vi người dùng phổ cập của một phần mềm quản trị quan hệ
khách hàng đang được xem xét, chúng ta sẽ tập trung vào loại giao diện đồ
hoạ (Graphical User Interfaces - GUI). Đây là loại giao diện thân thiện người
dùng với một số đặc điểm sau:
Các nguyên tắc thiết kế: khi thiết kế giao diện cần chú ý đến nhu cầu,
kinh nghiệm và khả năng của người sử dụng. Kỹ sư thiết kế cần lưu ý đến
những yếu tố con người trong thiết kế (hạn chế ghi nhớ trong thời gian ngắn,
hay mắc lỗi…). Dưới đây là một số nguyên tắc khi thiết kế:
Thân thiện người dùng: màn hình giao diện nên sử dụng các thuật ngữ và
khái niệm quen thuộc với người dùng và được thiết kế theo những giấy tờ họ
đang làm việc.
Thống nhất: giao diện nên được thống nhất trong thiết kế, cách bố trí các
thông tin trên các cửa sổ chương trình.
Giảm sự bất ngờ: người dùng không bị bất ngờ với những phản ứng của
hệ thống.
Khôi phục: giao diện cho phép người dùng khôi phục lại khi có lỗi
Hoàng Tân Cương Tin 47 B
25 Chuyên đề tốt nghiệp
Các đặc điểm của giao diện đồ hoạ
- Các cửa sổ: Nhiều cửa sổ chương trình cho phép các thông tin khác
nhau được hiển thị cùng lúc trên màn hình máy tính.

- Biểu tượng: Các biểu tượng thể hiện các tính chất thông tin, chương
trình khác nhau.
- Menu: Các lệnh chương trình được lựa chọn từ menu và không cần
nhập qua cửa sổ lệnh
- Trỏ chuột: Cho phép lựa chọn các đối tượng trên màn hình trực quan
bằng con chuột máy tính.
- Đồ hoạ: Các đồ hoạ được hiển thị trên màn hình cùng dòng văn bản.
Các loại giao diện chương trình
Màn hình trực quan
+ ưu điểm
- Dễ học
- Người dùng có thể thấy ngay kết quả của tác vụ
- Các lỗi được phát hiện và sửa chữa dễ dàng.
+ Nhược điểm
- Phạm vi ứng dụng hạn chế
- Khó lập trình
+ Phạm vi ứng dụng
- Các chương trình xử lý văn bản, trò chơi điện tử…
Lựa chọn menu
+ ưu điểm
- Tránh lỗi người dùng
- Không phải nhập dữ liệu từ bàn phím
+ Nhược điểm
Hoàng Tân Cương Tin 47 B

×