You are on page 1of 299

Machine Translated by Google

Machine Translated by Google

Đi một mình:
Sổ tay dành cho

Tự do và Hợp đồng

Nhà phát triển phần mềm

Hướng dẫn chi tiết về tự tạo việc làm cho các nhà phát triển
web và phần mềm—từ việc xác định thị trường mục tiêu của bạn cho
đến quản lý thời gian, tài chính và hành vi của khách hàng

Leon nâu
Machine Translated by Google

Đi một mình với CNTT: Cẩm nang dành cho các nhà phát
triển phần mềm hợp đồng và làm việc tự do

Bản quyền © 2016 Impackt xuất bản

Đã đăng ký Bản quyền. Không phần nào của cuốn sách này có thể được sao chép, lưu trữ trong hệ thống truy xuất, hoặc

truyền đi dưới bất kỳ hình thức nào hoặc bằng bất kỳ phương tiện nào mà không có sự cho phép trước bằng văn bản của

nhà xuất bản, ngoại trừ trường hợp trích dẫn ngắn gọn được nhúng trong các bài báo hoặc bài phê bình quan trọng.

Mọi nỗ lực đã được thực hiện trong quá trình chuẩn bị cuốn sách này để đảm bảo tính chính xác của
thông tin được trình bày. Tuy nhiên, thông tin trong cuốn sách này được bán mà không có bảo hành,
rõ ràng hay ngụ ý. Cả tác giả, cũng như Impackt Publishing, và các đại lý và nhà phân phối của nó
sẽ không chịu trách nhiệm pháp lý cho bất kỳ thiệt hại nào gây ra hoặc bị cáo buộc là do cuốn sách
này trực tiếp hoặc gián tiếp gây ra.

Nhà xuất bản Impackt đã cố gắng cung cấp thông tin nhãn hiệu về tất cả các công ty và sản phẩm
được đề cập trong cuốn sách này bằng cách sử dụng vốn thích hợp.
Tuy nhiên, Impackt Publishing không thể đảm bảo tính chính xác của thông tin này.

Xuất bản lần đầu: Tháng 11 năm 2016

Tham khảo sản xuất: 1041116

Xuất bản bởi Impackt Publishing Ltd.


Livery Place
35 Phố Livery
Birmingham B3 2PB, Vương quốc Anh.

ISBN 978-1-78300-140-8

www.packtpub.com/business
Machine Translated by Google

Tín dụng

Tác giả người phản biện Trình chỉnh sửa chuyển đổi

Leon nâu Rehan Jaffer Nick Falkowski

Biên tập phát triển nội dung Sao chép biên tập viên Điều phối viên dự án

Amey Varangaonkar Pranav Kukreti Neha Bhatnagar

Utkarsha S. Kadam

người soát lỗi đồ họa

Chỉnh sửa Safis Abhinash Sahu

Jason Monteiro

Điều phối viên sản xuất Trang bìa

Melwyn D'sa Melwyn D'sa


Machine Translated by Google

Giới thiệu về tác giả

Leon Brown là nhà phát triển phần mềm và huấn luyện viên đến từ Liverpool ở Anh.
Câu thần chú của anh ấy là anh ấy thực hành những gì anh ấy giảng và giảng những gì anh
ấy thực hành. Với hơn 20 năm kinh nghiệm trong lĩnh vực phát triển phần mềm, Leon đã phát
triển phần mềm cho các nền tảng cũ và hiện đại, từ
Amstrad CPC, ZX Spectrum và Amiga cho đến Web và điện
thoại thông minh.

Leon có nhiều kinh nghiệm thương mại đa dạng, bao gồm cung

cấp hệ thống Internet và đào tạo cho các tên tuổi quen thuộc, bao

gồm UNICEF, NHS, SAGE và Đại học Manchester cho các dự án dành cho

doanh nghiệp nhỏ, công ty khởi nghiệp và tổ chức từ thiện. Kinh

nghiệm làm việc với nhiều tổ chức đa dạng như vậy đã cho phép anh ấy

hiểu cách tiếp cận các loại tình huống khác nhau ảnh hưởng đến các

dự án phát triển phần mềm. Các dự án của anh trải dài từ việc tạo ra

các trang web

và các ứng dụng cho CRM và việc sử dụng AI để báo cáo và ra quyết định.

Leon thường xuyên viết bài cho tạp chí công nghiệp web, từ đó anh ấy đã viết các , Trong

bài báo nổi bật và hướng dẫn về phát triển web. Các bài báo đáng chú ý nhất của anh ấy cho tạp chí đã

cung cấp thông tin chi tiết về cách bảo mật các trang web chống lại các phương pháp tấn công phổ biến,

chẳng hạn như chiếm quyền điều khiển phiên và SQL injection. Các bài báo này đã nhận được phản hồi rất

tích cực từ độc giả của tạp chí trong các số tiếp theo.
Machine Translated by Google

Sự nhìn nhận

Tôi muốn cảm ơn mẹ tôi, Phyllis Brown, vì đã mua cho tôi chiếc máy tính đầu tiên, món quà đã
khơi dậy niềm đam mê lập trình của tôi. Tôi cũng muốn cảm ơn bạn bè và gia đình vì sự hỗ trợ
của họ trong những năm qua để giúp tôi trở thành một người chuyên nghiệp—Chinyere Brown,
Christine Bobb, Norman Bobb, The Capos (Mark Smith, George Heron, Ian Kerr, Dan Inwood, Andrew
Lee) , Jonathan De Vaal, và Ashley Moore.

Tôi cũng rất may mắn được gặp những người tuyệt vời trong kinh doanh, những người đã đưa
ra lời khuyên và cố vấn: Claire Bicknell của Catena, người đã cung cấp khả năng lãnh đạo tuyệt
vời trong dự án thương mại đầu tiên của tôi khi còn là sinh viên và đưa ra lời khuyên cũng như
cơ hội để tôi có được kinh nghiệm đó. bắt đầu sự nghiệp của tôi; Jonathan Read của Village
Software, người đã đưa ra rất nhiều lời khuyên về việc điều hành khía cạnh kinh doanh của phát
triển phần mềm; Jeanne Hatton của Uniti, người đã tạo cơ hội để nâng cao danh mục phát triển và
thiết kế web ban đầu của tôi, dẫn đến những cơ hội lớn hơn; gửi tới tất cả những người này và
những người khác đã có ảnh hưởng tích cực, xin cảm ơn!
Machine Translated by Google

Giới thiệu về Người đánh giá

Rehan Jaffer là nhà phát triển Ruby on Rails tự do có trụ sở tại London với hơn một thập
kỷ kinh nghiệm. Khách hàng của anh ấy rất đa dạng, từ các doanh nhân nổi loạn đến các công
ty sản xuất phần mềm được CEO của các công ty trong FTSE 100 sử dụng. Ông là đồng tác giả
của một cuốn sách về SQL cho Học viện Tealeaf và đã viết cho nhiều blog về công nghệ và lập trình.
Những sở thích khác của anh ấy bao gồm trí tuệ nhân tạo, y học và vật lý.

Tôi muốn cảm ơn cha mẹ tôi vì niềm tin kiên định và vững chắc của họ
đối với tôi; anh trai tôi Sadiq và các đồng nghiệp của tôi Stephen
Wight, Michael Weagley và Timmothy Lewis vì lời khuyên của họ, cả về công
nghệ và mặt khác; Liz, Bart, Hazel, Keegan, Martin, Kristina, và rất nhiều
người nữa vì tình bạn và sự hỗ trợ của họ. Không có tất cả các bạn, không
ai trong số này có thể có được.
Machine Translated by Google

nội dung
lời nói đầu 1

Chương 1: Giới thiệu công việc tự do 5

Phong cách sống tự do 5

Là nghề tự do dành cho bạn? 6

Xác định động lực của bạn 8

Tăng khả năng có việc làm 8

Học các kỹ năng mới Nghỉ 9

ngơi Tăng cường an ninh 10

tài chính Tạo thu nhập phụ 10

12

12
Nghiên cứu điển hình: Ngôi sao bóng đá mới

Tự do 14

Thay thế cho thất nghiệp 15

Niềm vui 15

Đừng bỏ công việc hàng ngày 16

Pháp nhân 16

Công ty tư nhân 17

quan hệ đối tác 17

Công ty trách nhiệm hữu hạn 18

Nhà hoặc đi? 18

văn phòng tại nhà 18

Thuận lợi 19

Nhược điểm 19

Văn phòng thực sự 20

Thuận lợi 20

Nhược điểm 21

22
Cho thuê bàn làm việc
22
không gian làm việc chung
quán cà phê 22

Tóm lược 23
Machine Translated by Google

Chương 2: Định vị bản thân trên thị trường 25

Phân khúc thị trường 25

Định giá bản thân một cách hợp lý 27

32
Ảnh hưởng cụ thể của thị trường
34
Giá cân bằng – phân khúc và giá cả
Xây dựng chất lượng cho các phân khúc thị trường 36

36
Đáp ứng nhu cầu của khách hàng
Nghiên cứu thị trường 38

38
Không lập kế hoạch là lập kế hoạch để thất bại

Chi phí cho thị trường 39

39
Chi phí giao hàng
40
Tính tỷ suất lợi nhuận của bạn
Giá trị thời gian 40

Tóm lược 43

Chương 3: Xác định mô hình kinh doanh của bạn 45

Các loại mô hình kinh doanh cho phần mềm 45

Phát triển phần mềm dưới dạng dịch vụ (SDaaS) 45

46
Thuận lợi
46
Nhược điểm
Phần kết luận 49

Phần mềm dưới dạng sản phẩm (SaaP) 49

50
Thuận lợi
50
Nhược điểm
Phần kết luận 51

Phần mềm dưới dạng dịch vụ (SaaS) 52

53
Thuận lợi
54
Nhược điểm
Phần kết luận 54

Phần mềm hỗ trợ một dịch vụ 56

56
Thuận lợi
57
Nhược điểm
Phần kết luận 57

Canvas mô hình kinh doanh 58

Các thành phần 58

59
đề xuất giá trị
59
quan hệ đối tác quan trọng
59
tài nguyên chính
60
Hoạt động chính
60
Mối quan hệ khách hàng
61
Phân khúc khách hàng
Kênh phân phối 61

Cơ cấu chi phí 62

Những nguồn doanh thu 62

Tranh sơn dầu 63

công cụ vấn đề 63

IINội dung
Machine Translated by Google

vòng đời sản phẩm 64

Phát triển 64

Giới thiệu 64

Sự phát triển 65

Trưởng thành và bão hòa 65

Từ chối 66

Phân tích năm lực lượng 66

Cạnh tranh giữa các nhà cung cấp hiện tại 67

Mối đe dọa của sản phẩm thay thế hoặc dịch vụ 68

Mối đe dọa của những người mới 68

Năng lực thương lượng của nhà cung cấp 69

Năng lực thương lượng của người mua 70

Khung đánh giá Bảy lĩnh vực 70

Lĩnh vực thị trường/cấp độ vĩ mô – sức hấp dẫn của thị trường 71

Miền thị trường/cấp vi mô – lợi ích và sức hấp dẫn của ngành thị trường 72

Lĩnh vực ngành/cấp độ vĩ mô – sức hấp dẫn của ngành 72

Lĩnh vực ngành/cấp độ vi mô – lợi thế bền vững 73

Miền nhóm – sứ mệnh, nguyện vọng và xu hướng chấp nhận rủi ro 74

Miền nhóm – khả năng thực hiện dựa trên các yếu tố thành công quan trọng 75

Kết nối lên xuống chuỗi giá trị 76

Khung McKinsey 7S 77

Mục tiêu và giá trị chung 78

Chiến lược 78

Kỹ năng 78

Cấu trúc 78

Phong cách 79

hệ thống 79

Nhân Viên 79

Gắn mọi thứ lại với nhau 79

Các mô tả kinh doanh 80

Học IXL 80

điểm tiếp theo 80

So sánh: Khung McKinsey 7S 80

Mục tiêu và giá trị chung 81

Chiến lược 82

Kỹ năng 83

Cấu trúc 83

Phong cách 84

hệ thống 85

Nhân Viên 89

So sánh – Canvas mô hình kinh doanh 86

Học IXL 87

điểm tiếp theo 87

So sánh: kết luận 1

Học IXL

điểm tiếp theo

Tóm lược

Nội dung III


Machine Translated by Google

Chương 4: Tạo lập thương hiệu 93

Một định nghĩa ngắn gọn về xây dựng thương hiệu là gì và 93

không phải là gì Biết đối tượng của bạn Xác định nhận thức 94

cần thiết cho các mục tiêu Chuyên môn hóa – trở thành chuyên 94

gia trong lĩnh vực Tổng quát hóa – nhắm mục tiêu đối tượng 95

rộng hơn Nghiên cứu điển hình Khởi động nhận thức Làm tốt 97

công việc Ưu đãi trong thời gian có hạn Cạnh tranh Khen 99

thưởng lòng trung thành của khách hàng Quan hệ đối tác chiến 100

lược Chứng nhận Người ảnh hưởng Độ tin cậy Tính cách Tiếp 100
xúc với phương tiện truyền thông Tiếp thị nội dung Họ 101

nghĩ bạn là ai? 101

102

103

104

104
105
106

107

108

109

Tóm lược 111

Chương 5: Kết nối mạng, tiếp thị và bán hàng 113

Hiểu về mạng 113

Xác định chiến lược mạng 114

Viết thông cáo báo chí 117

Biết khán giả của bạn 117

Hãy cụ thể 118

Tích hợp chương trình làm việc của bạn 119

Làm cho nó dễ đọc 120

Mẹo viết tin bài 123

Tăng cường phạm vi phủ sóng trên các phương tiện truyền thông của bạn 123

Mở nguồn dự án 124

Nguồn dự án 124

có chọn lọc 125

ví dụ 1 125

ví dụ 2 127

Quy trình bán hàng 128

Giai đoạn 1: Thiết lập mối quan hệ 129

Giai đoạn 2: Nhận biết nhu cầu 130

Giai đoạn 3: Đề xuất giải pháp 131

Giai đoạn 4: Kết thúc bán hàng 132

Giai đoạn 5: Giao hàng và đánh giá 132

Tóm lược 133

IVNội dung
Machine Translated by Google

Chương 6: Giới thiệu về các loại khách hàng 135

khách hàng có đạo đức 135

Đặc trưng 136

136
tùy chọn tiến bộ
khách hàng khó tính 137

Đặc trưng 137


139
tùy chọn tiến bộ
Khách hàng đáng tin cậy 139

Đặc trưng 140


141
đề xuất tiến độ
Khách hàng khó chịu 142

Đặc trưng 142

143
đề xuất tiến độ
Khách hàng có ý thức về giá 144

Đặc trưng 145


146
đề xuất tiến độ
Tóm lược 147

Chương 7: Quản lý khách hàng 149

Điểm tiếp xúc 149

Thực hiện đánh giá rủi ro của dự án 150


152
Đo độ phức tạp
153
Các chỉ số hiệu suất chính
154
Xác định kỳ vọng của khách hàng
156
Phân tích hàm ý
157
Xác định chiến lược rút lui
Phân tích khách hàng 158

Sự cam kết 158


160
Đạo đức và khó khăn
Tài chính 160

161
Học tập và thực hiện
162
Tính nhất quán
162
đàm phán
Các vấn đề về dòng tiền 163
163
Tránh các vấn đề về dòng tiền
Tóm lược 164

Chương 8: Đàm phán 165

Công Thức Chiến Thắng 165

Khung thời gian 165

165
Ngân sách
166
Chiều sâu

Các giai đoạn đàm phán chiến lược 166


167
Giai đoạn 1: Đánh giá các ưu tiên & đặc điểm
168
Giai đoạn 2: Giảm độ sâu
169
Giai đoạn 3: Xác định thang thời gian

Nội dung V
Machine Translated by Google

Giai đoạn 4: Điều khoản giao hàng và cam kết 170

Giai đoạn 5: Xác định giá 174

Tóm lược 174

Chương 9: Tài nguyên, Mô hình và Chiến lược Phát triển


Phần mềm 177

Sự cố phần mềm: Tóm tắt 177

Thành phần mã di động 178

Các ứng dụng HTML5 thuần túy 179

ứng dụng lai 179


dịch mã 180

Giải cứu bằng lập trình hướng đối tượng 181

Tối đa hóa khả năng sử dụng lại, giảm thiểu trùng lặp 183

khả năng thích ứng chức năng 184

Sự rõ ràng của giải pháp thực hiện 185

Hiệu quả chiến lược với MVC 187

MVC: Mô hình 189

Chiến lược thích ứng 189

Thuận lợi 193

MVC: Lượt xem 195


Lượt xem đang hoạt động 195

Thuận lợi 196

MVC: Bộ điều khiển 197


Bộ điều khiển đang 197

hoạt động Ưu điểm 198

Quản lý dữ liệu chiến lược Tính 199

nhất quán của giao diện người dùng với ràng buộc dữ 200
liệu Tính nhất quán của cơ sở dữ liệu Kiến trúc 202

hệ thống hướng API Tại sao phải tạo API? 209


209

Cung cấp dữ liệu 210

Phát triển API dựa trên HTTP Thiết 212

kế API Bảo mật API Chiến lược thử 213

nghiệm Cân nhắc về bảo mật Kiểm soát 215

phiên bản 216

218

220

thuật ngữ khái niệm 221

Tóm lược 222

Chương 10: Phương pháp phát triển phần mềm 225

Yếu tố xã hội của phát triển phần mềm 225

Các tính năng để ngăn ngừa sự cố 226

hình thức 226

Uyển chuyển 228

Giờ làm việc 228

mẫu mã 228

quản lý đặc điểm kỹ thuật 229

VI Nội dung
Machine Translated by Google

Triển khai kỹ năng 229

nguyên mẫu 229

Lập kế hoạch và phân tích 230

Yêu cầu về thời gian 230

Yêu cầu về kiến thức 230

Ngân sách 231

Thay đổi yêu cầu 231


Định nghĩa vấn đề 231

phân tích văn hóa 232

đánh giá công nghệ 232

phân tích rủi ro 233

phân tích khả thi 233


xác định cột mốc 233
thang thời gian 233

Phương pháp quan tâm 236


Mô hình thác nước 237
Phần kết luận 241
mô hình gia tăng 241
Phần kết luận 245

mô hình xoắn ốc 245


Phần kết luận 249

Phát triển nhanh 249

SSM: Phương pháp hệ thống mềm 252


Phần kết luận 255

Thiết kế phương pháp của bạn 256


cấu trúc chính thức 256

Chính sách liên lạc nhóm 257

Lập kế hoạch 259

thử nghiệm 261

Tóm lược 263

Chương 11: Tạo báo giá và ước tính 265


Toán học để giải cứu: Những điều cơ bản 265

Đánh giá hiệu suất 266

đánh giá của khách hàng 268

Ví dụ 268

Ước lượng 270

Ví dụ 271

báo giá 272

Ví dụ 273

Quản lý rủi ro 274

Chống lại rủi ro 274

Tính toán rủi ro 275

Thu hồi chi phí chưa tính 277

ví dụ 278

Duy trì độ chính xác ước tính 279

Xếp hạng khách hàng trung bình 280

Ví dụ 280

Nội dung VII


Machine Translated by Google

Xếp hạng khách hàng chọn lọc 282

Ví dụ 282

Xếp hạng khách hàng tương ứng 283

Ví dụ 284

Tóm lược 285

Chương 12: Quản lý dự án 287

Nhận thức của khách 287


hàng Các phương pháp giao tiếp Các 292
cuộc họp Điện thoại Các cuộc 293
gọi hội nghị E-mail Mạng xã hội 293
Bài đăng Phân bổ đúng người Ai 294
có khả năng thực hiện nhiệm vụ? 294
296
296
297
297
Ai là lý tưởng cho nhiệm vụ? 302
Ai có sẵn? 304
Các yếu tố hạn chế là gì? 305

Thỏa thuận bằng văn bản 306

Tính năng creep Đánh giá 308


rủi ro Bản chất dự án 310
Chính trị nhóm Kỳ 310
vọng Tính pháp lý Xác 311
định đặc điểm kỹ 313
thuật Tạo tài liệu 316

đặc tả Định nghĩa Tóm tắt Yêu 318


cầu Tổng quan hệ thống Thiết kế Thang 319
thời gian Kế hoạch chi phí Phản hồi 319
Các cuộc họp Công cụ khảo sát Tạo mẫu 319
Email Cuộc gọi hội nghị Chu kỳ phát 320
hành Tần suất như thế nào? 320
321
321
321
322
323
324
324
325
325
325

Thứ tự tính

năng Danh sách

bãi đậu xe Tóm tắt


Machine Translated by Google

ruột thừa 333


phỏng vấn 1 333

phỏng vấn 2 335

phỏng vấn 3 346

phỏng vấn 4 351

Phỏng vấn 5 352

Phỏng vấn 6 356

Nội dung IX
Machine Translated by Google
Machine Translated by Google

lời nói đầu

Cho dù đó là mong muốn công việc linh hoạt hơn, một cách để kiếm thêm tiền, dự phòng hay
thay đổi hướng nghề nghiệp, làm việc tự do và ký hợp đồng là những lựa chọn ngày càng hấp dẫn
đối với các nhà phát triển phần mềm, những người tạo ra mọi thứ từ cơ sở dữ liệu và trang web cho đến
ứng dụng điện thoại và hệ thống doanh nghiệp. Rút ra từ thời gian tôi học các bài học một cách khó
khăn, cuốn sách này được viết và thiết kế để cung cấp thông tin cho các nhà phát triển phần mềm ở mọi
cấp độ kinh nghiệm về khía cạnh kinh doanh của việc làm nghề tự do và cách tiếp cận để triển khai
phần mềm cũng được xem xét trong kinh doanh nhiều như các hoạt động kinh doanh truyền thống hơn chẳng
hạn như tiếp thị và lập kế hoạch kinh doanh.

Đối với sinh viên, công việc tự do mang đến cơ hội lý tưởng để kiếm tiền và học hỏi, với lợi
ích bổ sung của việc học tập dựa trên công việc được nhiều khóa học chấp nhận như một đóng góp
cho bằng cấp cuối cùng. Được gọi là APEL (Chứng nhận việc học qua kinh nghiệm trước đó), kinh
nghiệm này có thể được tính vào phần lớn bằng cấp nếu có thể chứng minh rằng phần lớn nội dung
khóa học được học thông qua kinh nghiệm làm việc. Với hầu hết sinh viên còn trẻ và không có cam kết
tài chính (hoặc ít nhất là ít cam kết hơn), lợi ích chính của việc làm việc tự do là đạt được vị trí
tốt hơn trên thị trường việc làm thông qua cải thiện CV và tích lũy các loại kinh nghiệm có thể sử
dụng để gây ấn tượng với các nhà tuyển dụng tiềm năng. tại các cuộc phỏng vấn. Thanh toán luôn tốt,
nhưng trọng tâm chính của sinh viên phải luôn là xây dựng loại trải nghiệm sẽ mở ra cơ hội trong
tương lai.

Những người đã làm việc trong ngành có thể thấy mình lúc này hay lúc khác ở vị trí mà việc chuyển
sang làm nghề tự do là một mong muốn hoặc là lựa chọn duy nhất, nhưng vẫn là một điều gì đó đáng
sợ. Không giống như sinh viên, các chuyên gia phải kiếm tiền thật để thanh toán các hóa đơn của
họ, do đó không có khả năng nhận công việc bất kể ngân sách của họ là bao nhiêu. Điều này có nghĩa
là các chuyên gia cần tập trung hơn vào việc làm cho đúng các khía cạnh kinh doanh để duy trì lợi
nhuận. Không giống như sinh viên, nhiều kinh nghiệm hơn trong cùng một loại công việc không bổ sung
bất kỳ giá trị chiến lược nào khi nói đến việc kiếm nhiều tiền hơn trong dài hạn.

Thành công với tư cách là nhà phát triển phần mềm tự do hoặc hợp đồng không chỉ là có kiến
thức về các hoạt động kinh doanh tiêu chuẩn bên cạnh việc có kỹ năng lập trình.
Các nhà phát triển tự do cần hiểu cách tích hợp các phương pháp phát triển phần mềm với mô hình kinh
doanh đã chọn của họ. Với việc công nghệ phần mềm thay đổi và thích ứng một cách thường xuyên, các
nhà phát triển phần mềm hành nghề tự do cần cập nhật bất kỳ điều gì mới nổi trong lĩnh vực của họ có
thể ảnh hưởng đến cách họ triển khai chiến lược kinh doanh hoặc có nguy cơ trở nên không phù hợp chỉ
sau một đêm; điều này càng đúng hơn khi làm việc với các công nghệ nguồn mở, đặc biệt là với các nhà
tuyển dụng cho các vai trò hợp đồng đang tìm kiếm những người có kinh nghiệm về công nghệ mới nhất.
.
Machine Translated by Google

Với hầu hết mọi người đang cân nhắc lựa chọn làm nghề tự do xuất phát từ nền tảng chủ yếu là
công việc lâu dài, thật quá dễ dàng để đưa ra quyết định thiên về kinh nghiệm kỹ thuật của họ.
Tương tự như vậy, những người có nền tảng chủ yếu về phát triển kinh doanh cũng có thể dễ bị
đưa ra các quyết định quá thiên vị từ quan điểm kinh doanh truyền thống. Thành công trong lĩnh
vực phát triển phần mềm tự do đòi hỏi phải kết hợp kiến thức của cả hai lĩnh vực để đạt được
kết quả tốt nhất. Điều này cho phép xác định các chiến lược kinh doanh có lợi nhuận có thể được
thực hiện theo cách giảm thiểu rủi ro.

Trọng tâm của cuốn sách này là cung cấp cái nhìn sâu sắc về công việc tự do và hợp đồng, được
viết từ quan điểm của một nhà phát triển phần mềm tự do. Với các chương được thiết kế để đưa
bạn từ mọi thứ bạn cần để bắt đầu công việc kinh doanh tự do của mình, cho đến các phương pháp
hay nhất để phát triển phần mềm và giao dịch với khách hàng; bạn sẽ học cách tránh những sai
lầm tốn kém bằng cách trở nên hiệu quả trong cách bạn phát triển mã của mình, cùng với cách
quản lý khách hàng và những người bạn làm việc cùng. Bạn cũng sẽ tìm hiểu về khía cạnh kinh doanh
chiến lược để bạn có thể xác định rõ ràng cách tiếp cận của mình để giành được và thực hiện loại
công việc bạn muốn, cùng với việc phát triển quan hệ đối tác và các nguồn lực khác mà bạn sẽ cần
để thành công và có lợi nhuận.

Khi thiết lập hoạt động tự do của mình, bạn sẽ cần chuẩn bị đầy đủ. Các chương của cuốn
sách này được sắp xếp theo thứ tự hợp lý có khả năng phản ánh các giai đoạn hoạt động khác
nhau mà bạn sẽ cần tham gia khi tiến bộ. Mỗi phần mô tả các hoạt động cụ thể mà bạn sẽ cần phải
biết, cho phép bạn xây dựng một kế hoạch kinh doanh mà bạn có thể liên tục tham khảo lại để
tiếp tục tập trung vào các mục tiêu của mình và xem các cơ hội đang tiến triển và phát triển như
thế nào.

Cuốn sách này bao gồm những gì

, , bao gồm những cân nhắc chính mà bạn cần phải chịu
tâm trí để chuyển sang lập trình tự do. Nó giới thiệu các tùy chọn thực thể khác nhau để hoạt
động, cùng với những cân nhắc về việc điều hành các hoạt động trong những ngày đầu và các loại
hình làm việc tự do phù hợp với nguyện vọng của bạn.

, , bao gồm các cân nhắc cần thiết để tìm loại công
việc bạn muốn và phù hợp nhất. Chương này nêu bật cách xem xét thị trường để tạo một kế hoạch
xác định các cơ hội giúp bạn tạo ra thị trường ngách của mình để giành được các loại khách hàng
mà bạn có thể thành công ở cả cấp độ tài chính và kỹ thuật.

, , bao gồm khám phá các mô hình kinh doanh khác nhau và
cách chúng có thể được áp dụng cho công việc kinh doanh tự do của bạn. Bạn sẽ học cách tạo khung
mô hình kinh doanh xác định các yếu tố quan trọng trong khái niệm kinh doanh của bạn, từ đối tác
chiến lược đến mối quan hệ khách hàng và các hoạt động chính.

, ,cung cấp phần giới thiệu về khái niệm xây dựng thương hiệu và cách
nó có thể được áp dụng cho tất cả các phần trong công việc tự do của bạn, từ việc tạo mô hình
kinh doanh cho đến tiếp thị và phân phối dự án.

2
Machine Translated by Google

, , trình bày các tùy chọn để tiếp thị dịch vụ


lập trình cho đối tượng mục tiêu của bạn. Bạn sẽ tìm hiểu sự khác biệt cụ thể giữa
mạng, tiếp thị và bán hàng, cũng như cách chúng bổ sung cho nhau.

, , chỉ ra cách xác định những đặc điểm chung của


khách hàng để nhanh chóng xây dựng bức tranh về người mà bạn đang giao dịch. Bạn sẽ
học cách sử dụng thông tin thu được từ các quan sát để tạo lợi thế cho mình khi đánh
giá rủi ro, đàm phán, định giá và lập kế hoạch dự án.

, , bao gồm học cách làm việc với khách hàng ở từng giai đoạn
của dự án để tránh các vấn đề có thể xảy ra. Khám phá cách quản lý rủi ro, đo lường
độ phức tạp, phân tích khách hàng và quản lý kỳ vọng có thể được sử dụng để dẫn các dự
án đến kết quả thành công.

, , giới thiệu một khuôn khổ để đạt được một kết luận công bằng trong
đàm phán cho phép cả hai bên cùng thắng. Quan trọng nhất, sự hiểu biết về đàm phán
này sẽ giúp bạn tránh những sai lầm tốn kém ảnh hưởng đến tài chính và danh tiếng
của bạn.

, , trình bày các phương


pháp lập trình mang lại lợi ích cho tính linh hoạt và đối phó với các yêu cầu thay đổi
của khách hàng. Chương này chỉ ra cách xây dựng mã một cách chiến lược để phản ánh những
thách thức mà bạn có thể gặp phải trong các dự án tự do của mình.

, , giới thiệu các quy trình chuẩn của phần mềm


phát triển như được sử dụng trong công nghiệp. Chương này so sánh các cách tiếp cận
khác nhau này để xác định các loại tình huống phù hợp nhất với chúng. Bạn sẽ học cách tận
dụng mọi thứ tốt nhất để kết hợp vào phương pháp của riêng bạn.

, , tránh những cạm bẫy của việc sử dụng giá thấp nhất
lược hoặc phân tích thông
khi tin
đấu để
thầu
xáccông
địnhviệc.
mức giá
Chương
có lợi
này cho
sẽ chỉ
côngcho
việc
bạncủa
cách
bạn.
sử dụng chiến

, ,chỉ ra cách áp dụng mọi thứ được đề cập trong các


chương trước vào các dự án theo cách bảo vệ bạn một cách chiến lược. Các phương pháp để
làm rõ thông tin liên lạc, thực hiện các quy trình chính thức, xác định đúng người để phân
bổ, v.v. sẽ được thảo luận.

Cuốn sách này dành cho ai


Đi theo con đường tự làm chủ trong lĩnh vực phát triển phần mềm mang lại nhiều cơ hội để phát
triển nhận thức và kỹ năng nhằm nâng cao sự nghiệp của bạn. Cho dù bạn là sinh viên hiện đang
theo học ngành phát triển phần mềm hay một nhà phát triển phần mềm kỳ cựu đã hoạt động trong
ngành, cuốn sách này cung cấp cho bạn những hiểu biết cần thiết để tránh những cạm bẫy khi tự
kinh doanh và để thành công với các dự án phần mềm có lợi nhuận và bền vững.

3
Machine Translated by Google

quy ước
Trong cuốn sách này, bạn sẽ tìm thấy một số kiểu văn bản phân biệt giữa các loại thông tin khác nhau. Dưới đây là một số

ví dụ về các phong cách này và giải thích về ý nghĩa của chúng.

Các thuật ngữ mới và các từ quan trọng được in đậm.

danh sách

Danh sách xuất hiện như thế này

Làm cho một lưu ý

Cảnh báo hoặc ghi chú quan trọng xuất hiện trong một hộp như thế này.

phản hồi của độc giả


Phản hồi từ độc giả của chúng tôi luôn được chào đón. Hãy cho chúng tôi biết suy nghĩ của bạn về cuốn sách này—điều bạn

thích hoặc không thích. Phản hồi của người đọc rất quan trọng đối với chúng tôi vì nó giúp chúng tôi phát triển các tựa

sách mà bạn thực sự sẽ tận dụng được tối đa.

Để gửi phản hồi chung cho chúng tôi, chỉ cần gửi e-mail tới địa chỉ feedback@packtpub.com và đề cập đến tên sách trong chủ đề

thư của bạn.

Nếu có một chủ đề mà bạn có chuyên môn và bạn quan tâm đến việc viết hoặc đóng góp cho một cuốn sách, hãy xem hướng dẫn

tác giả của chúng tôi tại www.packtpub.com/authors.

vi phạm bản quyền

Vi phạm bản quyền tài liệu có bản quyền trên Internet là một vấn đề đang diễn ra trên tất cả các phương tiện truyền thông.

Tại Packt, chúng tôi rất coi trọng việc bảo vệ bản quyền và giấy phép của mình. Nếu bạn bắt gặp bất kỳ bản sao bất hợp pháp

nào các tác phẩm của chúng tôi dưới mọi hình thức trên Internet, vui lòng cung cấp cho chúng tôi địa chỉ hoặc tên trang web

ngay lập tức để chúng tôi có thể tiến hành biện pháp khắc phục.

Vui lòng liên hệ với chúng tôi theo địa chỉ copyright@packtpub.com kèm theo liên kết tới tài liệu bị nghi ngờ vi phạm

bản quyền.

Chúng tôi đánh giá cao sự giúp đỡ của bạn trong việc bảo vệ tác giả của chúng tôi và khả năng mang đến cho bạn nội dung có giá trị

của chúng tôi.

4
Machine Translated by Google

1
Giới thiệu công việc tự do
Thay vì lao đầu vào bắt đầu các hoạt động tự do của bạn, các bước đầu tiên nên dựa trên việc điều
tra xem liệu công việc tự do có phù hợp với bạn hay không. Với việc có nhiều cách để tham gia các
hoạt động làm nghề tự do phù hợp với tham vọng và cam kết của bạn, nghề làm nghề tự do mang đến sự
linh hoạt để trở thành nghề nghiệp bổ sung toàn thời gian hoặc bán thời gian, cả hai đều mang đến những
mức độ rủi ro và cơ hội khác nhau về tài chính và những cam kết của bạn khi hoạt động với tư cách là
một người làm nghề tự do.

Lối sống tự do
Cuộc sống của freelancer thường bị những người ngoài nghề hiểu lầm, hình ảnh điển hình của
freelancer là những anh chàng/cô nàng nhàn hạ tự chọn giờ làm, được nghỉ 7 ngày/năm, có cơ hội đi
du lịch khắp nơi. địa điểm sang trọng cho công việc và được trả rất nhiều tiền.

Mặc dù lối sống này có thể dành cho một số ít người may mắn, nhưng thực tế là lối sống tự do
thường đòi hỏi mức độ cam kết, kỷ luật và kiến thức kinh doanh cao hơn so với vị trí làm việc
tương đương. Hầu hết các dịch giả tự do không làm việc từ 9 giờ sáng đến 5 giờ chiều, nhưng có nhiều
khả năng là bất cứ khi nào, điều này thường có nghĩa là tổng thời gian làm việc dài hơn.
Các ngày nghỉ lễ thường bị hạn chế để phù hợp với tình hình công việc và dòng tiền, nghĩa là công
việc sẽ luôn quy định thời điểm tốt nhất để đi nghỉ chứ không phải khi một freelancer cảm thấy thích—
và cũng không có kỳ nghỉ lễ hay lương ốm đau!

Không phải tất cả đều khó khăn như người ta tưởng, đặc biệt nếu bạn yêu thích công việc của
mình và quản lý tốt tài chính của mình. Lương thường cao hơn đáng kể so với vị trí làm việc
tương đương trên cơ sở mỗi giờ làm việc, điều này có thể tốt cho số dư ngân hàng của bạn nếu bạn
có thể đảm bảo khối lượng công việc, cho dù đó là từ một dự án dài hạn hay một số dự án nhỏ hơn. Một
lời cảnh báo liên quan đến việc đánh giá tài chính là không giống như khi đi làm, số tiền khi làm
nghề tự do sẽ thay đổi hàng tháng tùy thuộc vào khối lượng công việc mà bạn có thể đảm bảo—vì vậy hãy
đảm bảo rằng bạn có đủ tiền tiết kiệm trong nhiều tháng để trang trải cho những khoản bạn có ít hoặc
ít. không có công việc! Điều này đặc biệt xảy ra khi làm việc trong các dự án đòi hỏi khắt khe hơn,
trong đó sẽ có khoảng thời gian từ khi hoàn thành dự án đến khi tìm được nguồn công việc tiếp theo.

Là một người làm việc tự do, bạn mong muốn được làm việc ở nhiều nơi khác nhau, từ việc được mời
đi du lịch khắp đất nước hoặc nước ngoài, đến những nơi 'độc nhất vô nhị' như tầng hầm của công ty.

5
Machine Translated by Google

Các nhà cung cấp các dự án tự do sẽ cung cấp các mức độ sang trọng khác nhau cho các dịch giả tự do,
tốt nhất thường là các công ty lớn hơn nổi tiếng có ngân sách chi tiêu lớn hơn—vì vậy nếu bạn muốn tham

gia vào các dự án đưa bạn đến những nơi đầy nắng thay vì tầng hầm của công ty, đây là những công ty mà
bạn muốn làm việc tự do/ký hợp đồng.

Vấn đề duy nhất là những loại cơ hội này khó giành được hơn nhiều và bạn có khả năng phải bắt đầu ở
vị trí cuối cùng trong chuỗi công việc tự do—xây dựng danh mục đầu tư và kinh nghiệm làm việc tự do

của bạn với nhiều dự án nhỏ hơn và thường kém uy tín hơn trước khi bạn thành công. được coi là một ứng

cử viên bởi một trong những tổ chức sang trọng lớn hơn. Ngoài danh mục đầu tư của mình, bạn nên xem xét

cách bạn có thể xây dựng mạng lưới quan hệ của mình ở đúng nơi, cho phép bạn được đề xuất cho các loại cơ
hội mà bạn mong muốn, khi chúng mở ra.

Công việc tự do có dành cho bạn không?

Nghe có vẻ là một câu hỏi dễ, nhưng liệu công việc tự do có phải là lựa chọn phù hợp với bạn hay không
thì cần phải xem xét cẩn thận và trả lời các câu hỏi chi tiết hơn. Những câu hỏi bạn nên tự hỏi mình là:

h Bạn có đủ khả năng để trở thành một freelancer không?

¾ Nếu bạn có con cái hoặc người thân sống dựa vào thu nhập của bạn, liệu họ có bị

ảnh hưởng nếu bạn gặp vấn đề về dòng tiền không?

¾ Tình hình tài chính hiện tại của bạn có mang lại cho bạn đủ tiền ký quỹ để đối phó
với các tình huống thanh toán bị chậm trễ không?

¾ Bạn không muốn ở trong tình huống mất nhà vì

một số khách hàng của bạn chậm thanh toán hóa đơn của họ

¾ Sức khỏe là một yếu tố quan trọng cần xem xét: ¾

Bạn có đủ sức khỏe để đầu tư những nỗ lực cần thiết để thành công với tư cách là một
người làm nghề tự do?

¾ Bạn có thể mua bảo hiểm y tế nếu bạn không sống ở một quốc gia có
xã hội hóa hệ thống y tế?

h Bạn có thể xử lý việc trở thành một freelancer không?

¾ Nếu bạn thích/cần một mô hình công việc thường xuyên, thì công việc tự do có lẽ
không dành cho bạn. Nhiều dự án sẽ yêu cầu các giai đoạn mà bạn cần phải làm
việc muộn và dòng chảy công việc không phải lúc nào cũng đủ ổn định để đảm bảo

rằng bạn luôn có thể làm việc theo giờ cố định cho loại công việc bạn muốn làm
và được trả tiền.

¾ Bạn có đam mê với các dịch vụ bạn định cung cấp không? Nếu bạn tham gia chỉ vì tiền,
tốt hơn hết bạn nên kiếm một công việc ổn định với mức lương hậu hĩnh. Nếu bạn có

những kỹ năng được yêu cầu và khó tìm, không có lý do gì bạn không thể đảm bảo một

công việc với mức lương cao hơn đáng kể so với mức lương trung bình của một lập

trình viên

¾ Nếu bạn có thể làm việc tốt dưới áp lực, thì bạn sẽ đương đầu với nhiều tình
huống mà bạn sẽ gặp phải với tư cách là một lập trình viên tự do

6
Machine Translated by Google

¾ Bạn có thể làm thêm giờ khi những người khác đang ra ngoài tận hưởng ánh nắng mặt trời không?

Làm việc trong tầng hầm của công ty đó vào cuối tuần trong một ngày nắng nóng có thể thú vị
hơn!

h Bạn có nhạy bén trong kinh doanh không?

¾ Khi trở thành một người làm việc tự do, trên thực tế bạn đang là doanh nghiệp của chính

mình, do đó cần phải đưa ra các quyết định kinh doanh đúng đắn, phát triển các chiến lược

tốt và biết cách duy trì lợi nhuận cho các dịch vụ của mình. Nếu bạn thất bại ở bất kỳ

điều nào trong số này, bạn sẽ gặp khó khăn khiến bạn gặp vấn đề cả về chuyên môn và cá

nhân.

h Bạn có thấy bức tranh lớn hơn hay chỉ là bước tiếp theo?

¾ Có thể nhìn thấy bức tranh toàn cảnh hơn về tất cả các khía cạnh của dự án mà bạn

được tham gia là một phần quan trọng để thành công trong sự nghiệp tự do, đặc biệt là khi

nói đến lập trình. Điều này không chỉ giới hạn ở các kỹ năng kỹ thuật của bạn mà còn đối

với cách mọi người khác phù hợp với các dự án và quản lý các vấn đề chính trị

h Bạn có thể giao tiếp tốt như thế nào?

¾ Sự thành công của một dự án sẽ luôn phụ thuộc vào giao tiếp tốt. Bạn

cần có khả năng trích xuất thông tin phù hợp từ khách hàng để hoàn thành công việc một cách

hiệu quả và có lợi, cũng như để thực hiện công việc 'đúng'. Bạn cũng sẽ cần có khả năng điều

chỉnh phong cách giao tiếp của mình cho các loại khách hàng khác nhau—xem

h Bạn có thể quyết đoán nếu được yêu cầu không?

¾ Mặc dù không phải lúc nào cũng cần thiết, nhưng điều quan trọng là phải biết khi nào và

làm thế nào để quyết đoán khi được yêu cầu. Quyết đoán với khách hàng không phải lúc nào

cũng tốt, nhưng đôi khi đây là yêu cầu bắt buộc trong những tình huống khách hàng lợi

dụng hoặc đẩy bạn vào tình thế không thể chấp nhận được

h Bạn có tự tin không?

¾ Nếu bạn không thể hiện sự tự tin vào bản thân, thì khách hàng tiềm năng sẽ không

có đủ tự tin để thuê bạn—và những người làm như vậy sẽ nhanh chóng mất tự tin hoặc tìm cách

lợi dụng

¾ Khả năng chấp nhận sự từ chối và kiên trì mà không mất tinh thần là một phẩm chất quan trọng—

đặc biệt là trong những ngày đầu khi bạn chưa có danh mục đầu tư đủ mạnh để nổi bật so với

đối thủ cạnh tranh. Khả năng chấp nhận sự từ chối và chấp nhận những lời chỉ trích sẽ cho

phép bạn thích nghi và kiên trì cho đến khi bạn được tuyển dụng; đây cuối cùng là một trò

chơi số, trong đó bạn tăng cơ hội được tuyển dụng với mỗi đơn dự án/hợp đồng—sử dụng phản hồi

của bạn đối với phản hồi trước đó để tăng thêm cơ hội của bạn

7
Machine Translated by Google

Xác định động lực của bạn


Biết được động cơ làm việc tự do của bạn sẽ giúp bạn tập trung vào việc đạt được tham vọng của mình.

Sau đây là một số lý do đã thúc đẩy mọi người tham gia phát triển phần mềm tự do:

tăng khả năng có việc làm


Hãy nhớ rằng mục đích của việc làm tự do không nhất thiết phải là một sự sắp xếp lâu dài, việc

làm tự do để nâng cao khả năng được tuyển dụng của bạn có thể là một bước đi thông minh trong thời điểm

thị trường việc làm có nhiều ứng viên hơn cho mỗi công việc và ít việc làm hơn. Sinh viên mới tốt nghiệp

thường gặp phải tình trạng khó xử này nhất, vì công việc họ tìm kiếm đòi hỏi mức độ kinh nghiệm không có

được từ giảng đường, điều này khiến họ gặp bất lợi khi cạnh tranh với những người đã có nhiều năm kinh nghiệm.

Làm việc tự do để tăng khả năng có việc làm chủ yếu không phải là để có được tỷ lệ thanh toán tốt nhất, mà

là xây dựng chiến lược danh mục khả năng có việc làm của bạn, vì vậy hãy đảm bảo chỉ tập trung vào việc tìm

kiếm và chấp nhận loại công việc làm tăng thêm giá trị cho công việc này—bất cứ điều gì không phù hợp động

lực này sẽ chỉ làm tăng lượng thời gian bạn cần để đạt được mức độ việc làm mà bạn yêu cầu. Các yếu tố trong

danh mục việc làm của bạn mà bạn nên hướng tới để cải thiện thông qua các hoạt động tự do nên bao gồm:

Danh sách những người sẵn lòng cung cấp cho bạn tài liệu tham khảo:

h Những người sẵn sàng giới thiệu bạn với những người họ biết h Kinh nghiệm thực

tế về các kỹ năng được chỉ định trong quảng cáo việc làm mà bạn định đăng ký h Hiểu biết về cách

thức hoạt động của các doanh nghiệp h Thông tin hữu ích để sử dụng tại các cuộc phỏng vấn thể hiện

cả quy trình kỹ thuật và kinh doanh của bạn nhận thức

Đừng nhầm lẫn với hoạt động tình nguyện hoặc đóng góp cho các dự án nguồn mở, làm việc tự do để nâng cao khả

năng được tuyển dụng nên cụ thể về nơi bắt đầu và kết thúc sự tham gia và trách nhiệm của bạn. Sau đây là một

số gợi ý về những điều bạn nên làm rõ với khách hàng làm nghề tự do của mình:

h Thanh toán: Đừng bao giờ làm việc miễn phí, vì điều này có nguy cơ khiến bạn bị coi là lao động

tự do, điều này có thể tạo ra cảm giác rằng thời gian của bạn không có giá trị

h Tỷ lệ: Tỷ lệ bạn tính cho thời gian của mình là tín hiệu cho khách hàng biết bạn trả bao nhiêu

nhận thức được giá trị của bản thân; đặt mức giá quá thấp có thể dẫn đến nhận thức rằng bạn không

đánh giá kỹ năng của mình ở cùng tiêu chuẩn với những người tính mức giá cao hơn—hoặc những gì bạn

đang cung cấp không đáng để trả phí. Đồng thời, các doanh nghiệp nhỏ hơn không có khả năng chi trả

các loại tỷ lệ giống như các doanh nghiệp lớn hơn có thể chi trả, do đó bạn nên nghiên cứu tỷ lệ

tiêu chuẩn cho phân khúc thị trường mà bạn đang nhắm mục tiêu; tỷ lệ nhà thầu tiêu chuẩn ở miền bắc

nước Anh nằm trong khoảng £300 mỗi ngày đối với các vai trò hợp đồng PHP trọng lượng trung bình

trong các tổ chức có doanh thu cao hơn đã thành lập, nhưng bạn có thể phải vật lộn để nhận được một

nửa tỷ lệ này cho các dự án có quy mô nhỏ mới thành lập, đơn giản vì họ không không có tiền mặt

số 8
Machine Translated by Google

h Thời gian: Chỉ định thời lượng khả dụng của bạn theo ngày và làm việc
lần, cũng như thời gian tham gia dự án của bạn. Điều này giúp bạn tránh bị dính vào
các tình huống mà khách hàng mong đợi bạn cung cấp hỗ trợ ngoài việc hoàn thành dự án
và làm gián đoạn các dự án tự do khác của bạn hoặc công việc cuối cùng bạn giành được

h Con người: Hãy cụ thể về người mà bạn muốn làm việc cùng trong dự án. Với mục đích nâng
cao khả năng được tuyển dụng của bạn, bạn muốn có được sự tín nhiệm với những người có
ảnh hưởng và có mối quan hệ tốt, do đó ở vị trí mà họ có thể giới thiệu bạn và cung
cấp cho bạn những khách hàng tiềm năng. Ngoài ra, bạn muốn đảm bảo rằng có các quy
trình cụ thể về cách thức và người liên hệ với bạn để cung cấp thông tin chi tiết liên
quan đến những gì bạn được yêu cầu sản xuất; điều cuối cùng bạn muốn là dành cho những
người không có thẩm quyền yêu cầu bạn phát triển các tính năng không được những người
ra quyết định chính trong tổ chức của khách hàng cho phép, điều này sau đó có thể ảnh
hưởng xấu đến bạn và ảnh hưởng đến cơ hội được đề xuất của bạn

h Nhiệm vụ: Làm rõ những gì bạn làm và không làm. Mọi người thường đưa ra giả định về vai
trò công việc của bạn bao gồm những gì, điều này có thể khiến khách hàng không hài
lòng khi họ cho rằng bạn đã lười biếng khi bỏ sót những phần quan trọng trong yêu
cầu của họ. Một ví dụ về điều này là nhiều người nghĩ rằng một nhà thiết kế web cũng
làm SEO (đạt được vị trí cao trên Google), phát triển web, phát triển cơ sở dữ liệu
và mọi thứ khác liên quan đến trang web—dẫn đến tình huống họ phàn nàn rằng trang
web họ đã mua không có trên trang một của Google, nơi đây không phải là một phần trong
yêu cầu của họ. Bất kể ai đúng ai sai trong trường hợp này, sự không hài lòng của khách
hàng sẽ chỉ dẫn đến việc bạn không được đề xuất và có thể khiến những lời tiêu cực lan
truyền về bạn, điều này đi ngược lại động lực thúc đẩy khả năng được tuyển dụng của
bạn. Tránh điều này bằng cách nêu rõ những gì bạn làm trước, ngay cả khi bạn tin rằng
khách hàng đã biết—nêu rõ điều đó với họ, tốt nhất là bằng văn bản để tham khảo sau
này, tránh bất kỳ phạm vi nhầm lẫn nào gây bất lợi cho động cơ chính của bạn

Học kỹ năng mới


Cho dù đó là học về tổ chức tài chính, đàm phán, quản lý dự án hay kỹ năng phát triển phần mềm
mới, công việc tự do sẽ mở ra nhiều cơ hội để bạn học các kỹ năng mà bạn sẽ không học được trong
một công việc thông thường. Ngoài ra, công việc tự do thường mang đến cho bạn cơ hội học những
kỹ năng mà bạn muốn học, hơn là những kỹ năng mà nhà tuyển dụng hiện tại muốn bạn học.

Khi việc học là một động lực quan trọng để làm việc tự do, hãy cân nhắc liệt kê các loại kỹ
năng và lý do bạn muốn học và tích lũy kinh nghiệm về chúng. Đây có thể là một phần của
việc thúc đẩy khả năng được tuyển dụng, hoặc để bổ sung cho các nghiên cứu về một khóa học
chính thức, chẳng hạn như bằng cấp. Cho dù lý do muốn học các kỹ năng mới là gì, hãy dành
chút thời gian để xem xét thứ tự và khoảng thời gian đầu tư vào việc học chúng để việc thực
hành học tập có thể được áp dụng tốt nhất cho mục đích. Ví dụ: học một bộ kỹ năng theo thứ
tự sai nhằm mục đích cải thiện kết quả trong một khóa học chính thức sẽ có rất ít lợi ích
nếu các kỹ năng học được từ công việc tự do theo thứ tự ngược lại của khóa học, vì các môn
học đầu tiên sẽ bị bỏ lỡ khi làm nghề tự do bài tập và kiến thức thu được để áp dụng cho
các môn học sau trong thời khóa biểu của khóa học có thể bị lãng quên.

9
Machine Translated by Google

Nghỉ giải lao


Động lực để làm nghề tự do không phải lúc nào cũng nghiêm trọng như phát triển sự nghiệp hoặc
nguồn thu nhập chính. Sử dụng công việc tự do để nghỉ ngơi sau khi làm việc toàn thời gian cung
cấp giải pháp cho những mối quan tâm sau:

h Khoảng trống việc làm: Khi đến lúc quay trở lại làm việc toàn thời gian, việc có khoảng
trống việc làm trong CV của bạn là điều có thể khiến bạn không được mời phỏng vấn, vì
nhà tuyển dụng có thể coi đây là dấu hiệu cho thấy bạn cần làm mới bản thân. kỹ năng để
trở nên hiệu quả. Làm một lượng nhỏ công việc tự do trong thời gian nghỉ cho phép bạn
lấp đầy khoảng trống việc làm này với thông tin chi tiết về loại dự án bạn đã tham gia,
điều này cũng có thể mang lại lợi ích cho khả năng được tuyển dụng của bạn do tăng khả năng
tiếp xúc với các kỹ năng bổ sung và kiến thức thu được

h Sự cạn kiệt mạng lưới: Những người bạn biết là tài sản quan trọng nhất mà bạn có— bất kể bạn
tự kinh doanh hay làm thuê, vì vậy điều quan trọng là không cắt đứt các mối quan hệ của
bạn và chủ động đảm bảo rằng mọi người nhớ bạn là ai và những gì bạn làm. Khi quay trở
lại làm việc toàn thời gian, việc có những người có thể giới thiệu bạn hoặc những người
có thể cung cấp cho bạn một vị trí có thể tạo ra sự khác biệt giữa việc bạn có lợi thế
đáng kể để nhận được vai trò tiếp theo và việc đơn giản là không được mời phỏng vấn.

Ngoài ra, làm việc trên các dự án tự do cho một chủ lao động hiện tại là một cách hay
để giữ cho các lựa chọn mở để trở lại làm việc sau khi bạn nghỉ ngơi

h Các kỹ năng lỗi thời: Các lĩnh vực phát triển phần mềm như web giao diện người dùng
phát triển và lập trình trò chơi cho bảng điều khiển có nhu cầu cao hơn bình thường
đối với các nhà phát triển để học các kỹ thuật mới và nhận thức được các công nghệ sắp
tới. Việc tạm dừng bất cứ việc gì lâu hơn vài tháng sẽ dẫn đến rủi ro khiến các kỹ năng
của bạn trở nên lỗi thời vào thời điểm bạn quyết định quay lại làm việc, khiến bạn khó
đảm bảo vai trò tiếp theo của mình.
Làm việc tự do trong thời gian nghỉ việc đảm bảo rằng ít nhất bạn cũng nhận thức được
những phát triển mới và có thể tiếp xúc với chúng để giữ cho bộ kỹ năng của bạn phù hợp

Tăng cường an ninh tài chính


Kinh doanh dưới bất kỳ hình thức nào, cho dù đó là công việc tự do hay không, luôn là một rủi ro bắt
đầu từ sự không an toàn về tài chính. Sự đảm bảo về tài chính từ việc làm nghề tự do có được theo thời
gian, khi bạn đã quen với những loại khách hàng và nguồn thu nhập phù hợp. Sau đây là chi tiết về các
yếu tố có thể kết hợp để giúp công việc tự do lâu dài trở nên an toàn hơn về mặt tài chính—nếu bạn
thành công và có mô hình kinh doanh phù hợp:

h Nhiều nguồn thu nhập: Không phụ thuộc vào một chủ lao động có nghĩa là nếu vì bất kỳ lý do
gì, khách hàng quyết định họ không cần dịch vụ của bạn nữa, thì bạn vẫn có khả năng tạo
thu nhập từ những khách hàng khác mà bạn cung cấp dịch vụ cho họ.
Để giải quyết vấn đề này, bạn cần đảm bảo có:

10
Machine Translated by Google

¾ Loại khách hàng phù hợp—tập trung vào những khách hàng có loại doanh thu
(tiền đi vào hoạt động kinh doanh của họ) để có thể đầu tư số tiền xứng đáng
vào các dịch vụ mà bạn cung cấp; xây dựng một doanh nghiệp xung quanh nhiều
khách hàng chi tiêu số tiền nhỏ vừa tốn thời gian vừa rủi ro cao hơn

¾ Niềm tin và danh tiếng—những người chi tiêu số tiền lớn thường được
thúc đẩy bằng cách mua sự thuận tiện theo nghĩa là mua vào người mà
họ có thể tin tưởng để hoàn thành công việc đúng cách và không gây ra
rắc rối không cần thiết

h Quyền sở hữu tài sản: Việc phát triển tài sản mà bạn sở hữu sẽ mang lại cho bạn lợi thế
đáng kể nếu bạn phát triển thứ gì đó có giá trị thương mại, vì điều này mang lại tùy
chọn tạo thu nhập thụ động hoặc bán tài sản với số tiền đáng kể, vượt quá khoảng thời
gian cần thiết. và các tài nguyên bạn đã đầu tư vào việc tạo ra nó:

¾ Một điểm khác biệt lớn giữa tác phẩm do bạn làm tự do và tác phẩm do bạn làm
thuê là quyền sở hữu. Rõ ràng, tác phẩm bạn tạo ra trong giờ làm việc của
người sử dụng lao động được phân loại là tài sản của họ, nhưng cũng có thể
ngạc nhiên khi thấy rằng người sử dụng lao động có thể sở hữu tác phẩm do nhân
viên tạo ra ngoài giờ làm việc bình thường nếu nó được coi là nằm trong phạm
vi về công việc của họ—nghĩa là, nếu bạn được thuê làm nhà phát triển phần
mềm, thì phần mềm được phát triển ngoài giờ làm việc của họ cũng có thể được
định nghĩa là trong phạm vi công việc của họ. Điều này có thể dẫn đến các vấn
đề nghiêm trọng nếu bạn tạo ra thứ gì đó có giá trị thương mại quan trọng
trong thời gian của riêng mình trong khi đang làm việc cho người khác ¾ Hầu

hết các dự án làm việc tự do mà bạn đang phát triển mã phù hợp với dự án sẽ có một
điều khoản trong hợp đồng nêu rõ công việc bạn đang được trả tiền là thuộc sở
hữu của bất kỳ ai thuê bạn—điều này tốt và được mong đợi, nhưng hãy đảm bảo
rằng quyền sở hữu chỉ giới hạn ở những gì họ trả tiền cho bạn để viết; nghĩa
là đảm bảo rằng không có phạm vi cho khách hàng yêu cầu quyền sở hữu đối với
các thành phần mã được viết bên ngoài dự án của họ, bất kể nó có được sử dụng
trong dự án của họ hay không

h Thu nhập thụ động: Loại thu nhập này xảy ra khi bạn đầu tư ít hoặc không có thời gian
để nó được tạo và thường là kết quả của việc tạo nội dung mà bạn đã tạo. Một ví dụ về
thu nhập thụ động là tiền bản quyền từ ứng dụng điện thoại; khi bạn đã phát triển
đúng ứng dụng có nhu cầu và hỗ trợ mô hình kinh doanh tạo doanh thu, ứng dụng sẽ tạo
thu nhập thường xuyên sau khi được tiếp thị chính xác để thuyết phục mọi người mua/sử
dụng ứng dụng. Jake Birket là một ví dụ về một lập trình viên thành lập với tư cách
là nhà phát triển độc lập Grey Alien Games (http://www.greyaliengames.com/) và kiếm
thu nhập thụ động bằng cách phát triển các trò chơi mà anh ta bán thông qua trang web
của mình và các cổng trò chơi trực tuyến như Valve's Hơi nước. Khi Jake đã tạo trò
chơi của mình, anh ấy không bị giới hạn số tiền mình có thể kiếm được, miễn là hoạt
động tiếp thị của anh ấy có thể tiếp cận được những kiểu người muốn chơi trò chơi của
anh ấy—và quan trọng nhất là trả tiền cho họ

11
Machine Translated by Google

h Kiến thức: Biết được tình hình tài chính của bạn là một vấn đề liên quan đến mọi người, bất
kể họ đang đi làm hay tự làm chủ. Lợi thế của việc tự kinh doanh về mặt này là bạn có toàn
quyền truy cập vào tài chính của mình để biết bạn có thể tự trả bao nhiêu và bất kỳ vấn đề
tài chính tiềm ẩn nào có thể xảy ra. Mặc dù việc làm mang lại cho bạn sự bảo vệ về mặt pháp
lý thông qua các quyền về việc làm không tự động được trao cho những người tự làm chủ,
nhưng có thể xảy ra các trường hợp khi một người chủ có vẻ có tình hình tài chính tốt bị
phá sản, khiến nhân viên của họ không được trả lương và tìm kiếm công việc mới. công việc—
điều mà bạn nên được bảo vệ ở một mức độ nào đó với tư cách là một người làm việc tự do
bằng cách nhận thức được tình hình tài chính của chính mình và không chỉ phụ thuộc vào một
nguồn thu nhập, giống như những nhân viên bình thường thường làm

Mặc dù ban đầu không phải là lựa chọn an toàn nhất, với việc công việc không còn tồn tại suốt đời và
không nhất thiết mang lại cho bạn một phần thành công mà công việc của bạn tạo ra cho họ, nhưng việc
làm tự do mang lại một số lợi thế mà công việc làm thuê không mang lại—và mức độ an toàn cao hơn nếu
bạn thành công trong việc trở thành thành lập đầy đủ; mặc dù cần lưu ý rằng việc phụ thuộc vào công việc
tự do như một nghề nghiệp không dành cho những người yếu tim.

Tạo thu nhập phụ


Sử dụng công việc tự do như một hoạt động để kiếm tiền như một hoạt động ngoài các cam kết làm việc
toàn thời gian là một cách hay để huy động tiền để mua hàng chẳng hạn như các kỳ nghỉ và sở thích,
hoặc thậm chí là một cách để tăng khoản tiết kiệm của bạn. Không bị áp lực phải đảm bảo kiếm đủ tiền
từ các hoạt động công việc để thanh toán các hóa đơn, việc làm tự do để tạo thu nhập phụ cho phép
bạn có cách tiếp cận thoải mái hơn nhiều đối với cách bạn làm việc và do đó mang lại sự linh hoạt hơn
cho những công việc bạn chấp nhận.

Ngoài việc tạo mã cho những người/doanh nghiệp khác, còn có tùy chọn tạo sản phẩm của riêng
bạn. Góc độ này có nhiều rủi ro hơn do không có bất kỳ khoản thanh toán được đảm bảo nào và dựa vào
việc có các tính năng phù hợp của sản phẩm để thuyết phục mọi người mua hàng, nhưng với tư cách là một
khoản thu nhập phụ, phương pháp này không gặp rủi ro về các vấn đề tài chính và có thể kiếm được một

số tiền đáng kể nếu nó trả hết.

Nghiên cứu điển hình: Ngôi sao bóng đá mới

New Star Soccer do Simon Read tạo ra là một ví dụ về ứng dụng được phát triển độc lập đã đạt được
thành công về mặt thương mại và thậm chí đánh bại FIFA 13 cũng như các trò chơi thể thao nổi tiếng
khác để giành được giải thưởng BAFTA. Thành công tài chính của trò chơi dành cho thiết bị di động
dành cho Android và iOS (iPad và iPhone) đạt mức doanh thu cao nhất khi tạo ra £7.000 chỉ trong một
ngày và thường xuyên kiếm được £1.000 mỗi ngày sau khi phát hành—bạn làm phép tính để xác định số
tiền mà trò chơi kiếm được.

Quá trình phát triển trò chơi đã trải qua nhiều phiên bản không phải tất cả đều thuận buồm xuôi gió
cho đến khi đạt được thành công lớn với phiên bản di động mang tính đột phá. Phiên bản đầu tiên của
New Star Soccer được tạo ra như một dự án phụ cho công việc hàng ngày của Simon trong lĩnh vực hỗ
trợ CNTT và giúp anh kiếm được vài trăm bảng mỗi tháng nhờ bán hàng, đây là một khoản thu nhập bổ
sung tuyệt vời cho mức lương thông thường và nhấn mạnh tính linh hoạt được cung cấp bằng cách bắt đầu
tự kinh doanh trên cơ sở bán thời gian.

12
Machine Translated by Google

Trong vòng ba năm phát triển trò chơi như một dự án phụ, New Star Soccer 3 đã có thể tạo ra thu nhập trung bình từ

£2.000 đến £3.000 mỗi tháng. Số liệu thống kê về doanh số bán hàng tại thời điểm này đủ để thuyết phục Simon rằng việc

dành thời gian rảnh rỗi từ công việc toàn thời gian để tập trung toàn thời gian vào dự án trò chơi của mình giờ đây

khả thi về mặt tài chính và dẫn đến việc anh ấy dành toàn bộ thời gian cho công việc kinh doanh phụ của mình. Với việc

dự án hiện là nguồn thu nhập duy nhất của Simon và vợ anh, việc thực hiện dự án giờ đây trở nên nghiêm túc hơn và không

chỉ là một sở thích ngẫu nhiên để kiếm thu nhập—với nhu cầu đảm bảo rằng thu nhập đó tiếp tục đến để chi trả các hóa

đơn. được trả lương và thức ăn trên bàn, Simon phải làm việc 12 giờ mỗi ngày với cái giá phải trả là cuộc sống xã hội.

Bất chấp những hy sinh nhỏ để biến dự án trở thành công việc kinh doanh toàn thời gian, Simon đã có một năm đầu tiên

thành công khi trò chơi của anh ấy tiếp tục bán được và vợ anh ấy giúp đỡ công việc quản trị.

Mặc dù dự án đã thành công, nhưng các vấn đề bắt đầu xảy ra sau khi Simon nhận được hóa đơn thuế trị giá 17.000 bảng

cho doanh số bán hàng do New Star Soccer 3 tạo ra, cũng như doanh số bán hàng kém của phiên bản 4 và 5 của New Star

Soccer và một thử nghiệm không thành công để khởi chạy một số trò chơi riêng biệt ngoài chủ đề bóng đá; cụ thể là New

Star Grand Prix và New Star Tennis. Ơn cứu độ của Simon là việc đưa trò chơi Super Laser Race của anh ấy vào một gói

trò chơi được phân phối bởi cổng trò chơi Steam của Valve; chỉ riêng việc này đã tạo ra 14.000 bảng Anh chỉ trong một

tuần và cho phép Simon trả hết các khoản nợ của mình.

Thành công nghiêm trọng trong lĩnh vực kinh doanh trò chơi của Simon đã không quay trở lại cho đến khi phiên bản

di động của sê-ri New Star Soccer của anh ấy được phát hành, phiên bản này thường xuyên tạo ra thu nhập 1.000 bảng

Anh mỗi ngày và nhiều nhất là 7.000 bảng Anh.

Có thể rút ra một số bài học từ nghiên cứu điển hình về New Star Soccer:

h Bắt đầu một dự án bán thời gian cho phép thử nghiệm để xác định nơi tồn tại nhu cầu thích hợp đối với các

sản phẩm phần mềm với rủi ro tài chính tối thiểu cho chính bạn

h Tạo thu nhập từ việc phát triển các sản phẩm phần mềm cần có thời gian để phát triển, vì vậy đừng bỏ cuộc

quá sớm

h Các dự án phần mềm trở nên nghiêm túc hơn rất nhiều khi bạn biến chúng thành công việc toàn thời gian, vì vậy hãy

sẵn sàng dành thời gian nghiêm túc, có thể phải trả giá bằng cuộc sống xã hội trong những ngày đầu

h Các sản phẩm phần mềm cần thời gian để trưởng thành phù hợp với những gì người dùng sẵn sàng trả tiền, do đó

bản phát hành đầu tiên có thể không phải là bản phát hành mà mọi người đều muốn. Đảm bảo điều chỉnh sản

phẩm phần mềm của bạn để đáp ứng với phản hồi thực của người dùng—chứ không chỉ dựa trên niềm tin của riêng

bạn. Việc tạo ra sản phẩm phần mềm sai là rất tốn kém, nếu không muốn nói là tai hại về tài chính.

Đảm bảo thực hiện nghiên cứu thị trường để xác định những gì có nhu cầu trước khi bạn bắt đầu quá trình

thiết kế, đừng bận tâm đến việc viết mã

h Doanh số bán hàng thành công sẽ không bao giờ ổn định, vì vậy hãy đảm bảo rằng bạn luôn tiết kiệm để

bù đắp cho việc giảm doanh số bán hàng và ra mắt sản phẩm không thành công

h Thuế là một trong những thứ duy nhất có thể được đảm bảo trong cuộc sống, vì vậy hãy đảm bảo rằng bạn dành

riêng số tiền kiếm được từ việc bán sản phẩm phần mềm của mình để trang trải các hóa đơn thuế vào cuối năm

13
Machine Translated by Google

h Bán phần mềm với số lượng lớn là chìa khóa để kiếm thu nhập đáng kể. Đảm bảo phần mềm
của bạn có sẵn trên các cổng và cửa hàng phần mềm mà khách hàng mục tiêu của bạn sẽ
tìm kiếm để mua hàng

Tự do
Tự do có nhiều hình thức và với việc tự làm chủ với tư cách là một người làm nghề tự do, khả
năng lựa chọn các loại dự án mà bạn thực hiện phù hợp với lối sống mà bạn muốn có thể là một
trong số đó. Sau đây là một số yếu tố quyết định mức độ tự do mà bạn có đối với các dự án:

h Thời gian làm việc: Các dự án không yêu cầu bạn làm việc tại chỗ thường cho phép
bạn chọn thời gian làm việc của riêng mình, điều này có thể hữu ích cho việc quản lý
công việc của bạn xung quanh các cam kết cuộc sống chẳng hạn như gia đình. Thời gian
làm việc linh hoạt cũng rất quan trọng để có thể quản lý nhiều dự án, đảm bảo rằng
bạn không chỉ phụ thuộc vào một nguồn thu nhập

h Dự án: Với sự linh hoạt trong việc lựa chọn bạn làm việc cho ai và làm gì
bật lên, bạn có quyền kiểm soát những công việc mà bạn tham gia. Nếu một dự án hoặc
khách hàng có vẻ quá rắc rối, bạn có khả năng từ chối công việc đó để tìm kiếm thứ gì
đó ít rắc rối hơn. Ngoài ra, cũng có những dự án của riêng bạn mà bạn có thể muốn phát
triển để bán, mà nhà tuyển dụng có thể không muốn bạn tạo ra khi làm việc cho họ; sử
dụng dịch vụ làm việc tự do để hỗ trợ dự án này, bạn có thể kiểm soát hoàn toàn những
gì bạn phát triển. tạo ra. Điều này có thể liên quan đến ngôn ngữ lập trình bạn sử

dụng, khuôn khổ hoặc mẫu lập trình. Đối với các dự án của riêng bạn, bạn cũng có quyền tự
do quyết định tính năng nào sẽ được phát triển như một phần của sản phẩm

Với mức độ tự do như vậy, bạn rất dễ trở nên vô kỷ luật đến mức ảnh
hưởng đến hiệu quả công việc. Bạn có quyền tự do lựa chọn thời điểm
bắt đầu làm việc, điều quan trọng là phải đảm bảo hoàn thành công việc,
vì vậy nếu bắt đầu làm việc muộn, bạn phải có kỷ luật để làm bù thời
gian và thậm chí làm thêm giờ nếu cần. Khi bạn có quyền tự do về cách
triển khai dự án, bạn cũng cần phải có kỷ luật để đảm bảo rằng mã bạn
phát triển có thể bảo trì được và là một thiết lập tốt cho khách hàng—
không nhất thiết phải phù hợp nhất với bạn.

14
Machine Translated by Google

Thay thế cho thất nghiệp


Đối mặt với tình trạng thất nghiệp là viễn cảnh mà hầu hết mọi người đều muốn tránh. Đối với những người đã thất

nghiệp và đang vật lộn để quay lại làm việc vì bất kỳ lý do gì, việc phát triển phần mềm tự do có một số lợi ích:

h Tài chính: Không khó để đảm bảo số lượng công việc được trả nhiều hơn số tiền mà tiểu bang có thể trả

để hỗ trợ người thất nghiệp. Với việc phát triển phần mềm là một kỹ năng chuyên môn được yêu cầu,

việc đảm bảo tỷ lệ cho công việc của bạn ít nhất gấp đôi mức lương tối thiểu không khó—ngay cả khi bạn

có nhiều điều để tìm hiểu về phát triển phần mềm. Tại thời điểm viết bài, tỷ lệ lập trình viên tự do

điển hình của Vương quốc Anh bắt đầu ở mức khoảng £15 mỗi giờ và tăng lên tới £40 mỗi giờ đối với các

nhà phát triển phần mềm có kinh nghiệm và lâu năm hơn

h Khả năng có việc làm: Như đã đề cập, công việc tự do có thể không phải là công việc lâu dài

mục tiêu, nhưng nó tăng thêm giá trị cho quá trình làm việc và CV của bạn bằng cách cung cấp cho bạn

kinh nghiệm thực tế mà bạn có thể viết và nói về, cho phép bạn xuất hiện thuyết phục hơn đối với các

nhà tuyển dụng tiềm năng

h Danh tiếng: Tạo mối quan hệ thông qua các hoạt động tự do của bạn là một tài sản hữu ích để đảm bảo

công việc trong tương lai, cho dù đó là việc làm hay trên cơ sở tự do. Nếu bạn giỏi những gì bạn

làm và có thể gây ấn tượng với mọi người bằng những gì bạn tạo ra, mọi người sẽ tự nhiên giới thiệu

bạn với mọi người, điều này sẽ mở ra cơ hội cho công việc được trả lương cao hơn

Niềm vui

Tất cả các lý do được đưa ra cho đến thời điểm này đều tập trung vào các khía cạnh nghiêm trọng liên quan

đến sự nghiệp và các vấn đề tài chính, nhưng đừng quên rằng công việc phải thú vị. Công việc được trả nhiều

tiền là điều đáng mơ ước, nhưng không có công việc nào đáng để bạn tham gia nếu nó có ảnh hưởng bất lợi đến

cuộc sống, sức khỏe và/hoặc gia đình của bạn.

Lập trình không phải là loại công việc mà mọi người có thể gắn bó nếu nó không phải là thứ khiến họ đủ

hứng thú để duy trì động lực khi cần giải quyết các vấn đề khó khăn, đừng bận tâm đến những khách hàng khó

tính. Đảm bảo chọn làm việc tự do vì những lý do chính đáng—đó là các loại dự án và khách hàng không trở thành

cơn ác mộng và bạn sẽ tự hào khi có trong danh mục đầu tư của mình.

h Động lực: Yêu thích công việc bạn làm là một cách để nâng cao chất lượng

dịch vụ mà bạn cung cấp cho khách hàng của mình, do đó làm tăng cơ hội nhận được các đề xuất dẫn

đến nhiều cơ hội việc làm và làm việc tự do hơn. . Đối với các dự án dựa trên khách hàng, điều này

có thể được sử dụng như một lợi thế để bán các tính năng bổ sung được quan tâm sau khi hoàn thành dự án

ban đầu. Nếu bạn đang phát triển sản phẩm phần mềm của riêng mình, thì sự tham gia của bạn với dự

án có thể được sử dụng để xác định các tính năng bổ sung có thể giúp tăng doanh thu hoặc mở ra cơ

hội mới để phát triển mô hình kinh doanh của bạn

15
Machine Translated by Google

Đừng bỏ công việc hàng ngày


Dù hấp dẫn đến mức nào, sẽ không khôn ngoan nếu bạn bỏ công việc hàng ngày để làm việc tự do
toàn thời gian cho đến khi bạn vừa thử nghiệm thị trường vừa xây dựng mối quan hệ với mạng lưới
khách hàng và nhà cung cấp chất lượng tốt. Ngay cả khi bạn nhận được một dự án sẽ giúp bạn ổn định
tài chính trong vài tháng, thì cũng không có gì đảm bảo rằng sẽ có đủ công việc để bạn tiếp tục sau
khi dự án kết thúc, hoặc thậm chí dự án sẽ không gặp phải một số loại khó khăn. sự phức tạp sẽ gây
nguy hiểm cho những gì và khi bạn được trả tiền.

Thành công trong một công ty thuê bạn làm lập trình viên và thành công với tư cách là một lập
trình viên tự do là hai điều khác nhau mà bạn sẽ nhanh chóng học được khi làm việc trong các dự
án tự do. Nếu nền tảng của bạn đang làm việc trong các đại lý cung cấp dịch vụ cho khách hàng của
chính họ, bạn sẽ nhận thức được nhu cầu phát triển mã của mình một cách chiến lược như thế nào để
quản lý các yêu cầu thay đổi đang diễn ra, đây là điều có thể xa lạ với bạn nếu bạn chỉ làm việc
trong các tổ chức có tổ chức cao và/hoặc có ít yêu cầu thay đổi liên quan đến mã mà bạn đã phát
triển cho họ. Sử dụng thời gian của bạn để thử nghiệm với công việc tự do sẽ cho phép bạn hiểu rõ
hơn về các tình huống mà bạn sẽ gặp phải trong các dự án làm việc tự do và do đó, cho phép bạn học
cách thiết kế mã của mình một cách chiến lược để linh hoạt hơn, có thể xử lý các thông số kỹ thuật
thay đổi—đặc biệt đối với các dự án có ngân sách eo hẹp cố định và khách hàng có kỳ vọng về thời
gian giao hàng không thực tế.

Thay vì xem sự nghiệp tự do của bạn như một sự thay thế cho công việc hàng ngày của bạn, hãy
bắt đầu nó như một sở thích thử nghiệm bổ sung cho thu nhập tài chính của bạn. Bản thân sở
thích phải bao gồm cả yếu tố kỹ năng kinh doanh và kỹ thuật mà bạn muốn cuối cùng biến thành
một nghề nghiệp toàn thời gian. Phương pháp này cho phép bạn thử nghiệm theo cách mà việc nhảy
vào công việc tự do trước tiên sẽ không cho phép bạn làm được - bằng cách cho phép bạn linh
hoạt mắc lỗi và xây dựng mô hình kinh doanh dựa trên trải nghiệm của mình. Nếu bạn thông thạo
cả khía cạnh kinh doanh và kỹ thuật của lĩnh vực mà bạn muốn chuyển sang nghề nghiệp tự do, bạn
sẽ có thể xác định, phát triển và tinh chỉnh các khía cạnh dịch vụ của mình để thu hút các phân
khúc thị trường phù hợp với các loại tham vọng. cho các dự án mà bạn muốn làm việc. Thông qua
thử nghiệm này, bạn có thể tích hợp chặt chẽ các hoạt động tiếp thị của mình để xây dựng thương
hiệu và danh tiếng, điều này sẽ cho phép bạn xây dựng một luồng công việc từ các đề xuất có được
từ thử nghiệm của bạn—điều mà nếu không bạn sẽ không thể thực hiện được nếu nhảy việc bắt đầu làm
việc tự do toàn thời gian.

Pháp nhân
Có một số pháp nhân mà bạn có thể chọn để điều hành doanh nghiệp của mình, mỗi pháp nhân đều
có những ưu điểm và nhược điểm riêng. Sau đây là những mô tả ngắn gọn về chúng là gì và chúng
có thể phù hợp hơn với ai.

16
Machine Translated by Google

Công ty tư nhân

Đơn giản nhất trong các thực thể kinh doanh hợp pháp, trở thành một thương nhân duy nhất có nghĩa là
ít giấy tờ hơn và ít rắc rối hơn, với lợi thế là cung cấp cho bạn nhiều thời gian hơn để đầu tư vào
công việc giúp bạn kiếm tiền. Là một thương nhân duy nhất, trách nhiệm duy nhất của bạn về thuế là đăng
ký với HMRC trong vòng ba tháng kể từ khi bắt đầu giao dịch và hoàn thành tờ khai thuế mỗi năm.

Là một thương nhân duy nhất, bạn nộp thuế vào cuối mỗi năm, không giống như làm việc với tư cách là
một nhân viên mà bạn phải trả thuế mỗi khi bạn nhận được khoản thanh toán từ chủ lao động của mình.
Ngoài ra còn có một số đòn bẩy do nhân viên thuế đưa ra, vì bạn được cung cấp từ ngày 6 tháng 4 đến
ngày 31 tháng 1 để thực hiện thanh toán của mình. Điều này có lợi cho những người lên kế hoạch trước,
nhưng có thể gây ra một chút rắc rối cho những người để mọi thứ đến phút chót, nếu có vấn đề về dòng tiền.

quan hệ đối tác


Quan hệ đối tác là một cách tuyệt vời để kết hợp các kỹ năng và tài sản của nhiều người từ các
nền tảng khác nhau nhằm mang lại cơ hội thành công cao hơn cho một doanh nghiệp. Một ví dụ về
điều này sẽ là một người có kiến thức nền tảng tốt về tiếp thị và quản lý kinh doanh làm việc với
một người có chuyên môn kỹ thuật tốt—cho phép họ tạo ra một sản phẩm ưu việt có sự hỗ trợ của một
chiến lược tiếp thị và cấu trúc kinh doanh được thực hiện tốt, trong đó công việc kinh doanh sẽ
không thành công nếu không có sự đóng góp của cả hai bên. Những ví dụ điển hình về sự thành công

trong quan hệ đối tác bao gồm Steve Jobs (bộ não kinh doanh) và Steve Wozniak (bộ não kỹ thuật),
những người đã thành lập Apple, trong khi đó, Sergey Brin và Larry Page đồng sáng lập Google.

Mặc dù có nhiều lợi thế khi thành lập doanh nghiệp thông qua quan hệ đối tác, nhưng cũng có một
số nhược điểm lớn:

h Thành công đòi hỏi cả hai bên phải đóng góp phần của mình vào quan hệ đối tác. Nhiều quan hệ
đối tác thất bại vì một hoặc nhiều bên lợi dụng (những) bên kia bằng cách không đầu tư nỗ
lực như mong đợi ở họ

h Các cơ hội có thể bị bỏ lỡ khi một đối tác không có mặt hoặc không thể liên lạc yêu cầu
quyết định hoặc ủy quyền—không giống như một thương nhân duy nhất, người đưa ra quyết
định và phản ứng ngay lập tức. h Bất đồng và tranh chấp giữa các đối tác kinh doanh có

thể gây tổn hại cho doanh nghiệp và trường hợp xấu nhất có thể dẫn đến sự hủy diệt của họ

Để tránh những vấn đề như vậy, nên lập kế hoạch và các biện pháp phòng ngừa để bảo vệ lợi ích của
tất cả các bên liên quan:

h Tạo hợp đồng chính thức giữa tất cả các đối tác nêu chi tiết tất cả các điều khoản của quan
hệ đối tác, bao gồm tỷ lệ sở hữu, ủy quyền trách nhiệm và thủ tục chấm dứt quan hệ đối
tác

h Giám sát các hoạt động của quan hệ đối tác để đảm bảo rằng tất cả các thành viên đều thực hiện
nghĩa vụ của mình

17
Machine Translated by Google

h Một quy trình ra quyết định xác định người có thẩm quyền đưa ra quyết định cho các loại tình huống

khác nhau và đảm bảo rằng tất cả các bên đều có thể liên hệ được với nhau nhiều nhất có thể

trên thực tế

Công ty trách nhiệm hữu hạn

Không giống như thiết lập với tư cách là một thương nhân duy nhất hoặc công ty hợp danh, giao dịch với tư

cách là một công ty trách nhiệm hữu hạn đòi hỏi nhiều nỗ lực hơn để thiết lập và giao dịch—vì tất cả các

tài khoản cần phải được ghi lại ở một định dạng cụ thể và gửi cho Companies House để họ phê duyệt. Nói tóm

lại, việc thành lập công ty trách nhiệm hữu hạn dẫn đến nhiều thủ tục giấy tờ hơn, dẫn đến việc bạn bị

phân tâm nhiều hơn khỏi các hoạt động kinh doanh cốt lõi và phí quản lý/kế toán cao hơn.

Tuy nhiên, có một số lợi thế để thành lập công ty TNHH:

h Doanh nghiệp trở thành một thực thể riêng biệt với chính bạn, nghĩa là mọi khoản nợ đều thuộc sở

hữu của doanh nghiệp. Nếu công việc kinh doanh gặp khó khăn về tài chính, mọi khoản nợ sẽ thuộc

về bạn - nghĩa là bạn sẽ không bị buộc phải bán tài sản như ngôi nhà của mình để giải quyết các

khoản nợ kinh doanh. Hãy nhớ rằng các giám đốc công ty vẫn có thể phải chịu trách nhiệm về các khoản

nợ của công ty nếu họ được chứng minh là đã cho phép công ty tiếp tục kinh doanh trong khi mất khả

năng thanh toán hoặc đối với bất kỳ khoản bảo lãnh cá nhân nào được đưa ra.

h Có một số lợi thế về thuế để hưởng lợi từ việc trở thành một công ty đã đăng ký khi lợi nhuận

của bạn đạt đến một mức nhất định. Kế toán của bạn sẽ có thể tư vấn cho bạn về điều này

Nhà hoặc đi?


Khi thiết lập với tư cách là một người làm nghề tự do, một trong những quyết định đầu tiên bạn đưa

ra sẽ là nơi bạn cung cấp dịch vụ của mình. Đôi khi bản chất công việc của bạn sẽ tự động quy định

điều này—ví dụ: nếu bạn chủ yếu dựa vào các vị trí của đại lý, thì bạn sẽ làm việc tại văn phòng khách hàng

của đại lý. Ngoài một số trường hợp ngoại lệ này, bạn sẽ cần phải quyết định xem tốt nhất nên làm việc tại

nhà hay một nơi làm việc chuyên dụng.

văn phòng tại nhà

Làm việc tại nhà chắc chắn mang lại nhiều lợi thế về sự thuận tiện cho những người có kỷ luật tự giác,

nhưng cũng có thể gây bất lợi cho năng suất đối với những người dễ bị phân tâm bởi những cám dỗ.

18
Machine Translated by Google

Thuận lợi
Chắc chắn có một số lợi thế hữu ích về tài chính và lối sống khi chọn làm việc tại nhà:

h Không phải đi lại—tiết kiệm thời gian và chi phí:

¾ Không cần đi lại, bạn có thể bắt đầu công việc sớm hơn hoặc ngủ đủ giấc hơn

Bạn có muốn. Không đi lại cũng có nghĩa là bạn loại bỏ thời gian lãng phí liên quan đến

giao thông đông đúc và các chuyến tàu bị hủy, cũng như tiết kiệm chi phí cá nhân khi đi

làm. Điều này cũng hữu ích khi bạn phải làm việc muộn, nghĩa là bạn có thể tránh được

những rắc rối thêm khi về nhà

h Tiết kiệm tiền thuê nhà:

¾ Bằng cách làm việc tại nhà, bạn tránh phải chi thêm tiền thuê nhà, điều này rất hữu ích khi

tiền eo hẹp—đặc biệt là khi bạn mới bắt đầu làm việc tự do

h Tiết kiệm thuế: ¾

Nếu bạn đang làm việc tại nhà, bạn có thể yêu cầu một phần

chi phí cho các chi phí như bảo hiểm nhà cửa, sưởi ấm, ánh sáng, giá nước, thuế hội đồng

và bảo trì chung như là chi phí kinh doanh để số tiền thuế bạn phải trả thấp hơn

h Làm việc trong bộ đồ ngủ: ¾

Nếu bạn cảm thấy lười biếng hoặc cảm thấy thoải mái hơn khi làm việc trong bộ đồ ngủ,

thì đây chắc chắn là một lợi ích để có

Nhược điểm
Mặc dù có một số lợi thế đáng mơ ước, nhưng làm việc tại nhà cũng có một số nhược điểm sẽ ảnh hưởng đến năng

suất và khả năng chiến lược của bạn:

h Nhiều gián đoạn:

¾ Cho dù đó là gia đình, hàng xóm, vật nuôi hay bạn bè, sự gián đoạn có thể làm hỏng

năng suất—đặc biệt là khi bạn 'ở trong khu vực' khi làm việc với các yêu cầu công việc

chuyên sâu hơn. Người ta nói rằng những gián đoạn như vậy có thể khiến bạn mất tới 25 phút

để lấy lại chế độ suy nghĩ và năng suất của mình

h Không có rào cản về vị trí địa lý để tách biệt công việc và cuộc sống cá nhân:

¾ Đối với những người thích thói quen, những gì được coi là nhà sẽ trở nên mờ nhạt như công

việc. Điều này đặc biệt là một bất lợi khi chịu áp lực công việc với những phiền nhiễu 'ở

nhà' khiến bạn khó bắt đầu chế độ làm việc hơn, đồng thời điều ngược lại cũng đúng khi cố

gắng tắt suy nghĩ về công việc trong thời gian ngoài giờ.

19
Machine Translated by Google

h Không có môi trường cộng tác:

¾ Nếu bạn thường xuyên làm việc với các chuyên gia khác, nhà thường không phải là nơi tuyệt

vời để thúc đẩy các hoạt động hợp tác

¾ Thiếu giao tiếp với người khác có thể góp phần

ảnh hưởng tâm lý, dẫn đến giảm tinh thần và năng suất

h Khả năng phải cung cấp cho khách hàng địa chỉ nhà riêng của bạn: ¾

Nhìn chung, đây không phải là vấn đề—và là một vấn đề 'có đạo đức'

freelancer có nghĩa là khách hàng không cần phải săn lùng bạn.

Tuy nhiên, có một số khách hàng không thực tế về mối quan hệ công việc của họ với

bạn—đôi khi còn gây áp lực buộc bạn phải làm việc với số giờ không thực tế bằng cách

đề nghị họ đến làm việc với bạn vào sáng thứ Bảy hoặc buổi tối. Trong những tình

huống này, việc có một địa chỉ làm việc thực sự có thể tránh được một số tình huống

nhất định—bạn sẽ làm gì nếu khách hàng của bạn đến nhà bạn lúc 10 giờ sáng thứ Bảy để

khăng khăng rằng bạn phải làm việc theo yêu cầu vào phút cuối của họ?

h Bị cám dỗ không làm việc và thay vào đó làm điều gì đó mang tính xã hội—chẳng hạn như xem TV

¾ Ít nhất là trong một môi trường làm việc riêng biệt, bạn có thể đảm bảo rằng không có

thứ gây xao nhãng như TV và máy chơi game của bạn. Ở nhà, bạn có quyền truy cập vào

tất cả các hoạt động giải trí của mình — điều này có gây nguy cơ khiến bạn mất tập

trung vào công việc thực tế không?

Văn phòng thực sự


Đối với nhiều người, việc có một nơi làm việc riêng biệt so với ở nhà chắc chắn là hữu ích, nhưng chi phí

để có một văn phòng dành riêng cho công việc của bạn là bao nhiêu?

Thuận lợi
Những lợi thế chính của việc có một văn phòng thực sự cho các hoạt động kinh doanh của bạn xoay quanh việc cải

thiện năng suất của bạn. Là một người làm việc tự do, bạn hoàn thành công việc của mình càng nhanh thì bạn càng có

thể kiếm được nhiều tiền hơn trong khoảng thời gian bạn có cho công việc.

h Cấu trúc giờ làm việc có thể giúp bạn tập trung—nghĩa là đi làm như một

công việc thường xuyên:

¾ Làm việc xa nhà tránh cho bạn khả năng bị quá

thoải mái khi làm việc tại nhà và để đảm bảo rằng bạn có các thói quen giống như

khi bạn làm công việc thường xuyên mà bạn phải đi làm trong thời gian nhất định. Điều

này tốt cho những người ít kỷ luật hơn trong việc quản lý thời gian của họ, vì có một

cấu trúc công việc thường xuyên sẽ giúp đảm bảo rằng công việc thực sự được hoàn thành

thay vì để năng suất làm việc bị ảnh hưởng bởi sự phân tâm ở nhà và trì hoãn công việc

cho đến sau này

20
Machine Translated by Google

h Nhiều khả năng được khách hàng xem là người chuyên nghiệp:

¾ Mặc dù trên thực tế, văn phòng không phản ánh năng lực kỹ thuật của bạn, nhưng trong hầu hết

các trường hợp, việc có một văn phòng mời khách hàng đến gặp bạn sẽ giúp họ tin tưởng hơn

rằng bạn là một doanh nghiệp thực sự mà họ có thể tin cậy. Điều này đặc biệt đúng đối với

các doanh nghiệp nhỏ và doanh nghiệp mới thành lập không có kiến thức kỹ thuật trong các

lĩnh vực mà họ đang thuê bạn để giúp họ.

h Tách nhà của bạn ra khỏi nơi làm việc dễ dàng hơn:

¾ Một số người sẽ thấy rằng khó sống chung với cả cuộc sống công việc và xã hội trong cùng một

môi trường—tức là, công việc bắt đầu và kết thúc ở đâu? Một văn phòng thực sự đưa ra một

ranh giới tâm lý để đảm bảo công việc và cuộc sống xã hội của bạn không hợp nhất thành một.

Trong trường hợp này, câu nói không bao giờ kết hợp kinh doanh với niềm vui chưa bao giờ

đúng như vậy!

h Thuận tiện hơn nếu bạn đang thuê người làm việc với mình hoặc nếu bạn đang làm việc trong một đối tác: ¾

Đối với hầu hết mọi người, sẽ cảm thấy không thoải mái hơn khi có nhân viên và đối tác kinh doanh làm

việc tại nhà của họ. Với một văn phòng, bạn có thể có những người khác làm việc trong một môi

trường làm việc thực tế để đảm bảo rằng không có phiền nhiễu tại nhà và có một nơi làm việc

chung thúc đẩy sự sáng tạo và hợp tác

Nhược điểm
Có một văn phòng dành riêng cho công việc của bạn chắc chắn sẽ đẩy chi phí của bạn lên cao và loại trừ một số

khoản tiết kiệm mà bạn có thể kiếm được khi làm việc tại nhà. Nếu bạn là kiểu người đủ kỷ luật để không bị xao

nhãng bởi những phiền nhiễu trong nhà hoặc đơn giản là không có ngân sách lớn để bắt đầu, thì việc sử dụng một văn

phòng có thể là điều bạn nên cân nhắc sau này—nếu có.

h Tiền thuê nhà có thể đắt đỏ ¾

Chắc chắn, trong những ngày đầu bắt đầu tự kinh doanh, mỗi xu đều có giá trị. Bất cứ điều gì

bạn chi cho tiền thuê văn phòng là số tiền mà bạn không thể chi cho các khía cạnh khác

của doanh nghiệp sẽ dẫn đến thành công và khả năng kiếm lợi nhuận của bạn. Bạn có thể

đủ khả năng để thuê một văn phòng? h Các chi phí bổ sung như giá kinh doanh và bảo hiểm

không được nhà của bạn chi trả


bảo hiểm:

¾ Ít nhất khi làm việc tại nhà, một số khoản bảo hiểm nhà ở và thuế hội đồng mà lẽ ra bạn

phải trả có thể được thu hồi

h Có thể cảm thấy cô đơn nếu chỉ có một mình bạn trong văn phòng, nhưng không phải như vậy nếu bạn làm việc với

Những người khác

21
Machine Translated by Google

h Yêu cầu đầu tư nội thất:

¾ Có một văn phòng rất đẹp, nhưng nó chỉ có giá trị khi nó được trang bị phù hợp.
Ngoài các chi phí liên quan khác như tỷ lệ kinh doanh, bảo hiểm và tiền thuê
nhà, bạn cũng sẽ phải đầu tư vào nội thất văn phòng, nghĩa là nhiều tiền hơn sẽ
bị lấy đi từ các khía cạnh như tiếp thị rất quan trọng đối với thành công của
bạn

Cho thuê bàn làm việc

Đối với những người cảm thấy khó làm việc hiệu quả tại nhà và không đủ khả năng hoặc muốn chi
thêm chi phí thuê văn phòng, có thể thuê một số không gian làm việc từ một công ty đã thành lập
hoặc đơn vị ươm tạo doanh nghiệp. Tùy chọn này cung cấp một phương tiện hạnh phúc, nơi bạn có
được tất cả những lợi thế của việc có một văn phòng để làm việc, nhưng với một phần chi phí thuê.
Bạn cũng được hưởng lợi từ việc không phải trả trực tiếp nhiều chi phí liên quan đến việc thiết
lập văn phòng của riêng mình, chẳng hạn như đồ nội thất, hệ thống sưởi, ánh sáng và giá kinh doanh,
bởi vì những khoản này sẽ được chi trả bằng tiền thuê bàn làm việc.

không gian làm việc chung

Một loại hình cho thuê bàn mới được gọi là hợp tác làm việc, nơi những người làm việc tự do
và chủ doanh nghiệp nhỏ có thể mua bàn để làm việc hàng ngày. Đây là một bước tiến so với việc
thuê không gian bàn làm việc, đây là một cách sắp xếp lâu dài hơn và có lợi thế tiết kiệm chi
phí nếu bạn chỉ cần sử dụng bàn làm việc trong vài ngày mỗi tuần.
Ngoài ra còn có một số sự kiện được sắp xếp như những ngày làm việc chung nơi những người làm việc tự

do khác nhau tham gia làm việc—mặc dù những sự kiện này thường có xu hướng là cơ hội để kết nối với những

người làm việc tự do khác chứ không phải về công việc, vì vậy đừng mong đợi sẽ đạt được năng suất cao nếu

bạn tham dự những sự kiện này.

quán cà phê

Một lựa chọn phổ biến cho nhiều dịch giả tự do trong mọi lĩnh vực, đặc biệt là các nhà văn
tự do, là làm việc tại một quán cà phê. Điều này đã trở nên phổ biến hơn rất nhiều kể từ khi
xuất hiện điện toán di động và với hầu hết các quán cà phê hiện cung cấp truy cập Internet wifi
miễn phí. Sự kết hợp của các yếu tố này có nghĩa là nhiều dịch giả tự do chỉ cần có máy tính xách
tay để truy cập mọi thứ họ cần để làm việc trong một môi trường tách biệt họ khỏi những phiền
nhiễu ở nhà—hoặc thậm chí là văn phòng!

Quán cà phê là nơi lý tưởng để hoàn thành công việc, với môi trường không quá ồn ào và
khả năng tiếp cận đồ uống giải khát khi muốn. Không gian mở của họ cũng cung cấp các địa điểm
tốt để tổ chức các cuộc họp, cho dù đó là với khách hàng hay những người mà bạn cộng tác.

22
Machine Translated by Google

Không bị ràng buộc phải làm việc tại một địa điểm duy nhất, bạn có lợi thế là có thể chọn các quán cà
phê khác nhau để làm việc—cho dù đây là sự lựa chọn hay sự thuận tiện.
Mặc dù bạn sẽ trả tiền cho các món giải khát của mình, nhưng có khả năng mọi chi phí mỗi tháng sẽ
thấp hơn bất kỳ tùy chọn nào khác trong khi vẫn mang lại hầu hết các lợi ích.

Tóm lược
Không có cách riêng để điều hành doanh nghiệp tư nhân của bạn. Một số người có thể bắt đầu làm việc
tự do như một dự án bán thời gian, sau đó phát triển thành công việc toàn thời gian, một số có thể
tiếp tục các hoạt động của họ như một hoạt động bán thời gian được thúc đẩy bởi việc không phụ thuộc
vào việc tạo ra mức lương đầy đủ, trong khi những người khác có thể nhảy lên trước bắt đầu liên doanh
của họ như một hoạt động toàn thời gian. Yếu tố duy nhất để nói phương pháp nào đúng là môi trường
kinh doanh và hoàn cảnh cá nhân của bạn. Chính những trường hợp này cũng ảnh hưởng đến cách bạn điều
hành các hoạt động kinh doanh của mình và có khả năng xác định những gì bạn coi là thành công—một sinh
viên kiếm được 1.000 bảng Anh mỗi tháng sẽ được coi là rất thành công trong hầu hết các trường hợp,
trong khi số liệu thống kê bán hàng tương tự được coi là thảm họa khi điều này xảy ra. đã đạt được
khi phát hành New Star Soccer 4 của Simon Read.

Cũng quan trọng như cách bạn quyết định điều hành doanh nghiệp của mình và rất có thể có ảnh hưởng lớn
đến việc này, là cơ cấu pháp lý mà bạn sử dụng. Cấu trúc đơn giản nhất là một thương nhân duy nhất, có
lợi thế đáng kể trong việc giảm yêu cầu quản trị, nhưng cũng khiến bạn phải tự mình đảm bảo tất cả các
khoản nợ phát sinh do hoạt động kinh doanh của mình khi mọi thứ không theo kế hoạch. Quan hệ đối tác
mang lại lợi thế cho việc chia sẻ trách nhiệm và khả năng tiếp cận nhiều loại kỹ năng hơn có thể làm
tăng đáng kể sự thành công của doanh nghiệp, nhưng chỉ một đối tác tồi cũng có thể gây ra các vấn đề
và chi phí làm suy yếu sự đóng góp của những người khác. Các công ty TNHH cung cấp một lượng bảo vệ
pháp lý và khả năng huy động tiền bằng cách bán các bộ phận của doanh nghiệp cho các nhà đầu tư, nhưng
cũng đi kèm với nhiều yêu cầu quan liêu hơn.

Không cần phải thuê không gian văn phòng đắt tiền khi bạn có thể làm việc tại nhà, đặc biệt là khi
bạn mới bắt đầu khi số tiền bạn có sẽ được chi tiêu tốt hơn cho tiếp thị và các hoạt động khác
được sử dụng để thực hiện và hoàn thành giao hàng bán hàng. Đối với những người cảm thấy khó khăn
khi làm việc tại nhà do bị phân tâm, không gian bàn làm việc hoặc văn phòng làm việc chung là một
lựa chọn để có một nơi làm việc chính thức mà không phải trả toàn bộ chi phí cho một văn phòng chuyên dụng.

23
Machine Translated by Google
Machine Translated by Google

2 Định vị bản thân


trên thị trường
Mỗi ngành có những nhóm người khác nhau mà bạn có thể bán cho họ, với các thành viên của mỗi nhóm
chia sẻ những đặc điểm và sở thích xác định họ là ai. Việc có thể xác định các nhóm này sẽ cho phép
bạn làm cho phần mềm, dịch vụ và hoạt động tiếp thị của mình được nhắm mục tiêu cao để tạo ra loại
phản ứng mà bạn cần để thành công.

Phân khúc thị trường


Bất kể dịch vụ và/hoặc sản phẩm nào mà công việc kinh doanh tự do của bạn cung cấp, rất có
thể bạn sẽ thấy rằng tất cả các khách hàng đều là duy nhất; có những đặc điểm được chia sẻ bởi
những người có điểm chung, chẳng hạn như ngành họ hoạt động, cơ cấu kinh doanh hoặc bất kỳ yếu tố nào khác.
Những đặc điểm được chia sẻ này là những đặc điểm cho phép bạn phân loại thị trường của mình
thành các phân khúc xác định những điều sau:

h Các loại khách hàng khác nhau mà bạn có thể

nhắm mục tiêu h Cá nhân cần từng nhóm khách hàng

h Các bộ phận của thị trường có khả năng cung cấp cho h Sự khác

biệt về cơ hội sinh lời

Những thông tin nhận dạng này và những thông tin khác giúp bạn xây dựng nền tảng cho chiến lược
kinh doanh và tiếp thị hiệu quả. Bằng cách hiểu đặc điểm của các loại người mua trên thị trường,
bạn sẽ có thể điều chỉnh những gì bạn cung cấp và cách bạn xuất hiện để phù hợp với những gì bạn
biết là hấp dẫn họ. Cách tiếp cận này ảnh hưởng đến mọi thứ, từ phát triển sản phẩm và cung cấp
dịch vụ đến tiếp thị và quản lý tài chính của bạn—đơn giản là vì phân khúc thị trường mục tiêu của
bạn kết hợp với môi trường kinh doanh và tham vọng tài chính của bạn quyết định những gì có thể
cung cấp.

25
Machine Translated by Google

Mặc dù nhắm mục tiêu mọi người mua trên thị trường nghe có vẻ như là lựa chọn tốt nhất để bán được

nhiều hàng nhất, nhưng việc tập trung sự chú ý của bạn vào một phần thị trường hạn chế sẽ cho phép

doanh nghiệp của bạn trở nên hấp dẫn hơn đối với những người mà bạn định bán. Mặc dù, việc tập trung vào

các phân khúc thị trường cụ thể làm giảm đáng kể số lượng người mà bạn có thể bán hàng, nhưng nó cũng mở

ra cơ hội để tăng doanh số bán hàng tổng thể và mở rộng mức độ hiển thị thương hiệu của bạn:

h Các hoạt động tiếp thị phù hợp và nội dung thu hút những người chia sẻ cụ thể
đặc điểm và sở thích

Nghiên cứu điển hình: Nextpoint, có trụ sở tại Liverpool—Anh, đã dành nhiều năm cung cấp dịch

vụ phát triển phần mềm tổng quát cho các doanh nghiệp nhỏ, những người không hiểu gì về việc

phần mềm đó có thể được sử dụng để làm gì. Đây tỏ ra là một cách tiếp cận khó khăn để bán các

dịch vụ phần mềm vì các khách hàng tiềm năng không thể sử dụng trí tưởng tượng của họ để xem

phần mềm có thể cải thiện quy trình kinh doanh và giải quyết các vấn đề mà họ gặp phải như thế

nào. Bằng cách chuyên tạo ra phần mềm dành riêng cho giáo dục, Nextpoint đã có thể loại bỏ sự

phụ thuộc vào việc người mua cần sử dụng trí tưởng tượng của họ và thay vào đó cung cấp các ví

dụ cụ thể về cách phần mềm có thể được sử dụng để giải quyết các vấn đề cụ thể mà thị trường

mục tiêu của họ, các nhà giáo dục, có thể liên quan cụ thể đến.

h Tiếp thị của bạn càng cụ thể đối với một loại người hoặc tổ chức cụ thể, thì càng có nhiều khả

năng các mục tiêu quan tâm đến thông điệp tiếp thị

Nghiên cứu điển hình: Nextpoint không chỉ tập trung vào các sản phẩm phần mềm của họ để

trở nên cụ thể cho thị trường giáo dục, họ còn chuyên sâu hơn vào việc thiết kế phần mềm để hỗ

trợ các nhu cầu giáo dục cụ thể như chứng khó đọc. Trọng tâm chuyên biệt này đã cho phép tiếp

thị có mục tiêu cao thu hút mọi người tìm kiếm sự trợ giúp mà các công cụ học tập truyền thống

không đáp ứng được. Trọng tâm này dẫn đến việc tiếp thị có thể truyền đạt một thông điệp cụ thể

cao mà đối tượng mục tiêu có thể liên quan đến và do đó có được niềm tin vào sản phẩm phù hợp

với những gì họ cần.

h Các sản phẩm và dịch vụ chuyên biệt được thiết kế dành riêng cho nhu cầu của một phân khúc thị

trường cho phép tạo ra các điểm bán hàng độc nhất (USP) mà đối thủ cạnh tranh của bạn không có.

trong đối tượng mục tiêu. Việc xác định các phương pháp học tập này có nghĩa là các tính năng

phần mềm có thể được tạo ra để hỗ trợ các phương pháp học tập này không có sẵn trong các sản

phẩm phần mềm cạnh tranh. Hiểu được nhu cầu của người học, nhà giáo dục của họ và phụ huynh

khác nhau như thế nào có nghĩa là phần mềm có thể được thiết kế theo cách tự điều chỉnh cho

từng loại người dùng. Trong khi đó, chiến lược truyền thông tiếp thị đã có thể tận dụng sự hiểu

biết này để quảng bá từng lợi ích riêng biệt cho người thụ hưởng dự định của họ.

h Trọng tâm cụ thể giúp bạn dễ dàng thu hút sự quan tâm từ các tổ chức truyền thông có thể cung cấp khả năng hiển

thị rộng rãi cho thương hiệu của bạn và các hoạt động của thương hiệu đó

Nghiên cứu tình huống: Nextpoint tập trung vào việc cung cấp các giải pháp học tập và giảng

dạy cho các nhu cầu giáo dục cụ thể như chứng khó đọc rất dễ hiểu và phù hợp với các câu

chuyện thời sự mới nổi. Do đó, các tổ chức bao gồm cả BBC đã thu hút sự chú ý của giới truyền

thông, dẫn đến việc xuất hiện trên đài phát thanh, trang web và báo chí.

26
Machine Translated by Google

h Tinh chỉnh các quy trình của bạn để phù hợp với một loại khách hàng cụ thể để
cải thiện năng suất và lợi nhuận

Nghiên cứu điển hình: Bằng cách chuyên cung cấp phần mềm giải quyết các vấn đề phổ
biến mà tất cả các thành viên trong phân khúc thị trường mục tiêu của họ gặp phải,
Nextpoint đã có thể tạo ra một loạt cấu hình phần mềm tiêu chuẩn cho phép họ cung cấp
hệ thống hoạt động nhanh chóng mà không cần đầu tư lớn.
Có thể thực hiện tối ưu hóa bổ sung cho chi phí thời gian thông qua việc sử dụng hệ
thống phần mềm tập trung, với các khách hàng mới được cung cấp tài khoản để truy cập
chức năng đã mua của họ—trái ngược với việc mua một bản cài đặt duy nhất. Cách tiếp
cận này đã loại bỏ các chi phí chính liên quan đến các dự án trước đó, trong đó các
yêu cầu khác nhau của chúng có nghĩa là cần phải phát triển các tính năng hoàn toàn
riêng biệt trước khi khách hàng có thể truy cập bất kỳ chức năng nào.

Định giá bản thân một cách hợp lý


Một sai lầm phổ biến của nhiều người mới tham gia thị trường là sử dụng giá làm điểm bán hàng;
với những người mới tham gia cố gắng vượt qua đối thủ cạnh tranh và sau đó rơi vào cái bẫy
không đủ lợi nhuận để biện minh cho nỗ lực, hoặc thậm chí thua lỗ. Tôn Tử, một nhà chiến lược
quân sự có triết lý được các nhà lãnh đạo ngành nghiên cứu, đã viết:

Giống như những vị tướng giành chiến thắng trên chiến trường, những người thông minh đánh giá
đầy đủ lĩnh vực họ hoạt động và xác định vị trí họ nắm giữ trước khi kết luận loại chiến lược
định giá sẽ sử dụng. Hiểu môi trường thị trường liên quan đến các thuộc tính của riêng bạn sẽ mở
ra cơ hội xác định để nhắm mục tiêu các sản phẩm và dịch vụ của bạn vào các không gian có ít
hoặc không có cạnh tranh. Được mô tả kỹ lưỡng trong cuốn sách Chiến lược Đại dương xanh, những
không gian này trên thị trường là cơ hội để bạn khẳng định bản thân mà không cần dùng đến chiến
lược định giá cắt cổ khiến bạn dễ bị lợi dụng và giảm thiểu khả năng kiếm sống tử tế.

May mắn thay cho các nhà phát triển phần mềm, chi phí để cung cấp dịch vụ là rất nhỏ—
một máy tính xách tay cơ bản và điện là tất cả những gì bạn cần để bắt đầu; với nhiều công
cụ phát triển phần mềm hiện có sẵn miễn phí qua Internet. Nhược điểm của điều này là rào
cản thấp hơn đối với những người mới tham gia thị trường - có nghĩa là sẽ luôn có những người
kém thông minh hơn bạn tìm cách hạ gục mọi người trên thị trường. Tôn Tử tiếp tục bài viết của
mình bằng cách nói:

27
Machine Translated by Google

Không phải ngẫu nhiên mà hầu hết các doanh nghiệp khởi nghiệp ngừng hoạt động trong vòng ba năm đầu

tiên; chủ yếu là do sự kết hợp giữa quản lý kém và không hiểu thị trường của họ.

Giống như những vị tướng thua trận trên chiến trường, những người đứng sau các doanh nghiệp thất

bại thiếu khả năng nghiên cứu kỹ lưỡng thị trường của họ để xây dựng các kế hoạch sáng suốt nhằm tối đa

hóa cơ hội thành công của họ. Thông thường, đây là những người tham gia thị trường mà bạn sẽ cạnh tranh

với những người gây ra vấn đề cho mọi người trên thị trường; không phải vì họ giỏi những gì họ làm, mà do

chiến lược định giá không thực tế và không thể duy trì của họ.

Những người tham gia thị trường này thường là những người có ít hoặc không có kinh nghiệm kinh doanh,

trong đó nhiều người không có các kỹ năng kỹ thuật cần thiết, kết quả là họ phải bán hàng bằng cách hạ

giá mọi người trên thị trường. Một số người trong số này có thể không có bất kỳ kỹ năng phát triển phần

mềm nào và chỉ điều hành công việc kinh doanh của họ bằng cách thuê ngoài tất cả các dự án của họ cho

người trả giá thấp nhất. Nếu bạn hoạt động ở một quốc gia có chi phí sinh hoạt cao như Vương quốc Anh, thì

bạn không thể cạnh tranh về giá với những người sống ở các quốc gia mà chi phí sinh hoạt chỉ bằng một phần

nhỏ so với của bạn. Bạn biết tình hình định giá rất tồi tệ khi có những người thực sự cung cấp dịch vụ phát

triển cơ sở dữ liệu với giá 1 đô la mỗi giờ!

Những người tham gia thị trường chưa làm bài tập về nhà và định giá bản thân theo cách khiến họ không

thể giao hàng vừa là mối đe dọa vừa là cơ hội:

h Đe dọa: Chiến lược định giá thấp của họ góp phần khiến người mua trên thị trường kỳ vọng việc

phát triển phần mềm sẽ được cung cấp với mức giá tương đương với số tiền trả cho nhân viên

thanh toán siêu thị

h Cơ hội: Những người mua bị cháy hàng mua những người bán không thể thực hiện lời hứa của họ sẽ tìm

cách sử dụng các yếu tố khác ngoài giá để xác định giá trị của những gì họ đang mua

Với rất nhiều người tham gia thị trường nổi lên với chiến lược định giá kém và thiếu kỹ năng kỹ thuật,

nhiều người mua sau đó đã bị choáng váng khi chọn thuê phát triển phần mềm với chi phí thấp. Mặc dù sẽ

luôn có một phân khúc thị trường dành cho phát triển phần mềm chi phí thấp, nhưng những người vốn đã

nhức nhối khi chọn giá làm yếu tố chính trong việc tuyển dụng trước đây sẽ tìm kiếm những yếu tố khác

đảm bảo chất lượng tốt hơn. Đây là cơ hội để bạn tính giá cao thông qua việc tạo dựng cho mình danh

tiếng về độ tin cậy và là một chuyên gia trong lĩnh vực của bạn.

Các yếu tố quan trọng cần được xem xét khi quyết định chiến lược giá của bạn bao gồm:

h Tỷ giá thị trường

Kiến thức về mức giá trung bình đã được tính trong các phân khúc thị trường khác nhau có thể

được sử dụng làm thước đo cho những gì bạn nên tính. Hãy cẩn thận chọn giá từ các đối thủ cạnh

tranh có các thuộc tính hoạt động có thể so sánh được, chẳng hạn như loại sản phẩm/dịch vụ bạn

đang bán và vị trí địa lý mà bạn đang bán. Ví dụ: xem xét tỷ lệ phát triển web của người làm

nghề tự do ở Luân Đôn sẽ cho bạn một cái nhìn rất méo mó nếu bạn đang bán những dịch vụ này ở

một thành phố ít tốn kém hơn chẳng hạn như Liverpool.

28
Machine Translated by Google

Định giá bản thân thấp hơn giá thị trường sẽ gửi tín hiệu tới mọi
người rằng bạn cho rằng mình kém năng lực hơn các nhà phát triển
phần mềm khác. Với việc mọi người thường quá bận rộn, điều này có
thể khiến bạn bị bỏ qua và bỏ lỡ cơ hội thể hiện năng lực của mình.
Đồng thời, mức giá thấp hơn có thể thu hút các loại khách hàng có
kỳ vọng không thực tế và/hoặc đang tích cực tìm cách khai thác bạn.

h Tiêu chuẩn chất lượng

Đây là một yếu tố chính được quyết định trực tiếp bởi chiến lược giá của bạn:

Khi đặt mục tiêu đưa ra mức giá thấp nhất, bạn bị buộc phải vào một vị trí mà việc cắt giảm
chi phí và gấp rút hoàn thành công việc là những lựa chọn duy nhất có sẵn để giữ cho doanh
số bán hàng của bạn có lãi ở mức biên xứng đáng với thời gian của bạn. Cả hai tùy chọn này
đều ảnh hưởng đến mức chất lượng mà bạn có thể cung cấp; mặc dù điều này có thể chấp nhận
được đối với một số người, nhưng nó sẽ không bao giờ cho phép bạn xây dựng danh tiếng về
việc cung cấp loại chất lượng mà những khách hàng trả tiền cao nhất tìm kiếm. Với suy nghĩ
này, sẽ luôn có những phân khúc thị trường mà khách hàng sẵn sàng chấp nhận hy sinh khi mua
hàng—đó là lý do tại sao mọi người mặc quần áo cũ khi sơn và trang trí.

Ở một thái cực khác, nhằm mục đích cung cấp chất lượng cao nhất sẽ làm tăng nhu cầu tính
giá cao nhất. Mặc dù điều này sẽ định giá bạn ngoài tầm với của đa số người mua trên thị
trường, nhưng danh tiếng mà bạn xây dựng sẽ đặt bạn vào vị trí mà chỉ một số ít đối thủ cạnh
tranh của bạn có thể tiếp cận. Với việc các phân khúc thị trường này quan tâm nhiều hơn đến
chất lượng bạn cung cấp hơn là giá bạn tính, chiến lược bán hàng của bạn sẽ tập trung nhiều
hơn vào việc tạo ra doanh số bán hàng có giá trị cao hơn là doanh số bán hàng với số lượng
lớn. Trong những trường hợp này, bạn có thể sử dụng chuyên môn, kỹ năng hiếm có, bảo đảm hoặc
chứng nhận để tăng sức hấp dẫn của mình theo cách cho phép bạn biện minh cho việc định giá
dựa trên giá trị cực kỳ cao—đây là nơi bạn bán dịch vụ của mình dựa trên giá trị cho khách
hàng và không phải là một tỷ lệ cố định hàng giờ.

Khi quyết định về chiến lược định giá của bạn, (các) yêu cầu về mức chất lượng của các
phân khúc thị trường mục tiêu của bạn cần được điều tra kỹ lưỡng để xác định xem bạn có
đang ở vị trí cung cấp dịch vụ và/hoặc sản phẩm của mình một cách sinh lợi hay không. Hãy
luôn nhớ rằng thời gian của bạn có giá trị và do đó phải trả giá. Không có ích gì khi tính
giá thấp nhất để thực hiện một số giao dịch bán hàng với tỷ suất lợi nhuận hóa ra lại khiến
bạn kiếm được ít hơn mức lương tối thiểu; nếu bạn đang làm điều đó, thì tốt hơn hết là bạn
nên lật bánh mì kẹp thịt tại một trong những nhà hàng thức ăn nhanh mà tất cả chúng ta đều biết!

29
Machine Translated by Google

h Tài nguyên có sẵn

Sự sẵn có của các nguồn lực là ảnh hưởng lớn khác của chiến lược định giá.
Các tài nguyên bạn có thể truy cập xác định các tùy chọn có sẵn cho bạn để cung cấp dịch vụ
và phát triển sản phẩm của bạn. Ngân sách cũng sẽ ảnh hưởng đến khả năng truy cập tài nguyên
của bạn—cho dù đó là lao động, kiến thức chuyên môn hay tài sản kỹ thuật số chẳng hạn như
các thành phần mã.

Hầu hết thời gian, việc cắt góc sẽ ảnh hưởng đến chất lượng; một ví dụ về điều này là nợ kỹ
thuật, trong đó mã chất lượng kém dẫn đến chi phí bảo trì liên tục cao hơn. Ngoại lệ cho điều
này là khi bạn tận dụng các tài nguyên được tạo sẵn cho phép bạn tránh đầu tư thời gian vào
việc xây dựng nền tảng của dự án. Trong trường hợp này, việc sử dụng các tài nguyên được tạo
sẵn không chỉ cho phép bạn giảm thời gian sản xuất mà còn có thể dẫn đến chất lượng đầu ra cao
hơn từ các thành phần mã đã được thử và kiểm tra.

Những tài nguyên này có thể là những công cụ bạn đã tự phát triển, đã mua hoặc thậm chí tận
dụng một trong nhiều dự án nguồn mở. Chúng có thể cho phép bạn giảm đáng kể thời gian sản
xuất và do đó có giá cả cạnh tranh hơn nhiều. Điều này có nghĩa là có thể xác định một thỏa
hiệp cắt giảm đủ thời gian phát triển để có thể sinh lãi và cạnh tranh với các phân khúc
nhạy cảm về giá của thị trường; hoặc thậm chí có lợi hơn trong các phân khúc thị trường mà
giá cả không phải là vấn đề.

Một cân nhắc quan trọng đối với việc sử dụng các nguồn lực để tác động đến mô hình định giá
của bạn là định nghĩa về các giới hạn. Khách hàng sẽ thường yêu cầu các tùy chỉnh không có

sẵn trong tài nguyên của bạn; các tùy chọn của bạn sẽ bị giới hạn nếu bạn mua tài nguyên của
mình từ bên thứ ba. Rủi ro chính trong tình huống này là khi bạn đã phát triển tài nguyên

của riêng mình—nơi mà sự cám dỗ là đồng ý tạo tính năng này như một phần của giá tiêu chuẩn
của bạn. Điều quan trọng là phải phân biệt giữa các tính năng phần mềm bán sẵn đã có sẵn và
việc phát triển phần mềm tùy chỉnh yêu cầu mua thời gian. Sai lầm khi bán tài nguyên của bạn
và bạn sẽ thấy mình trong tình huống không thể làm hài lòng khách hàng trong khi kiếm được
lợi nhuận. Chính vì lý do này mà nhiều nhà cung cấp giải pháp phần mềm dựa trên các tài
nguyên hiện có sẽ chỉ cung cấp các tùy chỉnh tối thiểu—điều này giúp loại bỏ rủi ro không
xác định đối với lợi nhuận.

h Kinh nghiệm và giá trị nghề nghiệp của bạn Đừng

bao giờ đánh giá thấp bản thân; nó hạn chế triển vọng nghề nghiệp của bạn và sẽ thu hút loại
khách hàng muốn khai thác bạn. Nếu bạn có nhiều kinh nghiệm, bạn có thể tạo ra công việc
nhanh hơn và có chất lượng tốt hơn so với người ít kinh nghiệm hơn, vậy tại sao lại chấp
nhận được trả mức lương theo giờ như nhau? Trong loại tình huống này, thật công bằng khi
bạn tính phí nhiều hơn cho thời gian của mình vì khách hàng nhận được kết quả tốt hơn trong

thời gian ngắn hơn. Với điều này cũng dẫn đến khả năng họ cũng tiết kiệm tiền trên tổng chi
phí của mình, bạn không thể cạnh tranh một cách công bằng về tỷ lệ giờ theo giờ với người
cung cấp ít kinh nghiệm, kiến thức và khả năng hơn với mức giá thấp hơn.

30
Machine Translated by Google

Nếu bạn có một kỹ năng hiếm, thì bạn có thể thương lượng giá cao hơn. Trong phát triển phần

mềm, một ví dụ sẽ là phát triển phần mềm bằng các ngôn ngữ không chính thống như Cobol; điều

này cho phép bạn đòi hỏi gấp tám lần so với một lập trình viên làm cùng một công việc với một ngôn

ngữ chính thống như PHP.

Một số tình huống yêu cầu một số kỹ năng nhất định, trong khi những tình huống khác yêu cầu

bạn đáp ứng các tiêu chí nhất định đối với hành vi quan liêu. Dù bằng cách nào, việc có một

số loại chuyên môn cho phép bạn nhắm mục tiêu vào các phân khúc thị trường có sự cạnh tranh

hạn chế và do đó, cho phép bạn thương lượng mức giá cao hơn.

Phát triển các kỹ năng chuyên môn chắc chắn là điều đáng được xem xét như một phần trong chiến

lược của bạn nếu bạn chưa có chúng. Khả năng đàm phán mức giá cao hơn và công việc mới dễ dàng

đảm bảo hơn có thể đạt được một cách đơn giản thông qua các phân khúc thị trường mục tiêu đang

thiếu hụt kỹ năng. Ví dụ về điều này bao gồm kiến thức và kinh nghiệm về lý thuyết phân tích

thống kê và thuật toán AI; trong khi có nhiều nhà phát triển PHP và Javascript, thì lại không có

nhiều nhà phát triển PHP có kiến thức chuyên môn và kinh nghiệm về các thuật toán AI—đặc biệt

đối với các dự án yêu cầu sử dụng AI nâng cao như nhận dạng hình ảnh và phân tích dữ liệu lớn.

Với việc cung và cầu có ảnh hưởng trực tiếp đến mức giá được đưa ra, người mua trên thị trường

sẽ sẵn sàng trả các khoản thanh toán cao hơn khi họ không thể thu hút đủ người có kỹ năng để

thực hiện công việc.

Mặc dù đầu tư học tập cần thiết để thành thạo những kỹ năng và kiến thức này có thể cao, nhưng

đó là một khoản đầu tư đáng giá vì rào cản cấp độ gia nhập cao hơn giữ cho phân khúc thị trường

đóng cửa đối với những loại người tham gia thị trường có khả năng cố gắng hạ gục tất cả mọi người.

Với việc những người hoạt động trong phân khúc thị trường cũng phải đầu tư nhiều vào việc học của

họ, nhiều khả năng họ sẽ đánh giá cao các kỹ năng của mình và do đó không sẵn sàng bán rẻ bản thân.

Số lượng nhà cung cấp hạn chế trong phân khúc thị trường và việc khó trở thành người mới tham gia

thị trường dẫn đến cầu nhiều hơn cung - do đó giữ mức giá cao hơn và quyền đàm phán có lợi cho bạn.

h Các phân khúc thị trường bạn định hướng tới

Mặc dù bạn có thể đang cung cấp các dịch vụ giống nhau cho mọi người, nhưng các phân khúc thị

trường khác nhau sẽ có những kỳ vọng khác nhau về chất lượng, dịch vụ và giá cả. Các doanh nghiệp

nhỏ có xu hướng đòi hỏi nhiều tiền nhất, do đó, việc xử lý phân khúc này và duy trì lợi nhuận đòi

hỏi một chiến lược hoàn toàn khác để đối phó với các tổ chức loại công ty lớn, nơi thường có văn

hóa lãng phí trong chi tiêu.

Các phân khúc thị trường không chỉ được xác định bởi quy mô kinh doanh mà còn bởi các yếu tố

khác như đặc điểm và đối tượng mục tiêu của chúng. Ví dụ: nhắm mục tiêu vào các tổ chức từ thiện

sẽ yêu cầu một chiến lược hoàn toàn khác đối với các dịch vụ khu vực công. Tương tự như vậy,

các doanh nghiệp nhỏ đã hoạt động được vài năm có nhu cầu hoàn toàn khác với các doanh nghiệp mới

thành lập gần đây, mặc dù cả hai đều thuộc cùng một loại doanh nghiệp nhỏ.

31
Machine Translated by Google

Ảnh hưởng cụ thể của thị trường


Tỷ lệ hiện tại mà bạn có thể được trả bị ảnh hưởng trực tiếp bởi thị trường bạn hoạt động và vị trí

của bạn trong thị trường. Ba yếu tố chính sẽ ảnh hưởng đến khả năng định giá thành công và cạnh tranh

cho dịch vụ của bạn là:

h Khả năng và sự sẵn sàng hạ giá của đối thủ cạnh tranh h Các kỹ năng mà người mua yêu

cầu—nói chung, càng cần nhiều kỹ năng thì càng ít đối thủ cạnh tranh có khả năng và do đó cho

phép bạn tăng giá của mình

h Chứng nhận là một yếu tố có giá trị đối với một số người chứ không phải tất cả người mua. Những

người có xu hướng coi trọng chứng chỉ thường là những người có nền tảng học vấn hoặc những người

có kiến thức bên trong ngành và tin tưởng vào các nhà cung cấp chứng chỉ; ví dụ: một người biết

về phát triển PHP và biết về khung công tác PHP chính thức Zend có thể có xu hướng chú ý hơn đến

các nhà phát triển được chứng nhận Zend—tương tự, một người biết về tiếp thị trực tuyến sẽ tự

tin hơn trong việc tuyển dụng những người đã từng là Google AdWords chứng nhận. Giá trị của

chứng nhận là có thể ngay lập tức thể hiện sự chứng thực của một tổ chức đáng tin cậy đối với

các kỹ năng của bạn đáp ứng tiêu chuẩn tối thiểu. Tuy nhiên, cần lưu ý rằng bạn nên điều tra xem

đối tượng mục tiêu của bạn cảm nhận giá trị của giấy chứng nhận như thế nào—vì điều này sẽ không

có giá trị nếu bạn đang giao dịch với những người chỉ nhìn vào kinh nghiệm trước đây của bạn và/

hoặc những người không biết về các nhà cung cấp giấy chứng nhận và ý nghĩa của các chứng nhận

của họ

h Lòng trung thành với thương hiệu—nếu bạn có mối quan hệ hiện tại với khách hàng tiềm năng hoặc

được giới thiệu cho họ bởi các nguồn đáng tin cậy, người mua sẽ tin tưởng hơn rằng bạn sẽ cung

cấp giải pháp chất lượng và không làm họ thất vọng

Sơ đồ 2.1: Khối lượng thị trường so với phạm vi tiếp cận của đối thủ cạnh tranh dựa trên giá.

Sơ đồ 2.1 cho thấy có một thị trường lớn hơn dành cho những khách hàng có ngân sách nhỏ hơn nhưng

lại có ít đối thủ cạnh tranh hơn có khả năng nhắm mục tiêu sinh lời vào phân khúc thấp hơn của thị

trường. Khi ngân sách cho các phân khúc khách hàng tăng lên, nhiều đối thủ cạnh tranh hơn có khả năng

nhắm mục tiêu có lợi cho các phân khúc chỉ trên cơ sở giá.

32
Machine Translated by Google

Sơ đồ 2.2: Khối lượng thị trường so với phạm vi tiếp cận của đối thủ cạnh tranh dựa trên kỹ năng.

Sơ đồ 2.2 cho thấy các yêu cầu về trình độ kỹ năng phản ánh mức giá chào bán từ người mua trên
thị trường như thế nào. Nó cho thấy nhiều đối thủ cạnh tranh có khả năng đấu thầu các dự án đòi
hỏi ít kỹ năng hơn như thế nào, với ít đối thủ cạnh tranh hơn khi yêu cầu kỹ năng tăng lên. Việc
thiếu nguồn cung cho các phân khúc thị trường đòi hỏi trình độ kỹ năng cao hơn cho phép bạn yêu
cầu mức giá cao hơn. Ví dụ về các khách hàng mà bạn mong muốn tìm thấy trong từng phân đoạn ngân
sách dự án bao gồm:

h Phân khúc cao cấp: Đây là những tổ chức có doanh thu rất lớn (tổng số tiền đi vào hoạt động
kinh doanh) và tham gia vào các hoạt động có quy mô lớn. Quy mô khổng lồ của các tổ chức
này có xu hướng khuếch đại tất cả các yếu tố, bao gồm cả kết quả của các dịch vụ của bạn
mang lại giá trị lớn hơn thông qua mức độ tiếp xúc lớn. Tổng chi tiêu của họ được khuếch
đại đến mức mà bất kỳ mức giá cao nào mà họ cung cấp cho bạn hầu như không đáng chú ý
trong kế hoạch lớn hơn về chi phí hoạt động của họ. Sự thiếu hiệu quả và văn hóa doanh
nghiệp trong các tổ chức này thường dẫn đến các quyết định chi tiêu có giá trị cao hơn
được thúc đẩy bởi chính trị nội bộ hơn là mong muốn tiết kiệm

h Phân khúc tiêu chuẩn: Điển hình là các doanh nghiệp vừa và nhỏ (doanh nghiệp vừa và nhỏ)
được thành lập và sử dụng từ 20 đến 250 nhân viên. Các doanh nghiệp này có kinh nghiệm và
khả năng tài chính để cho phép họ hiểu chi phí thực tế, nhưng không đến mức cực đoan như
các doanh nghiệp phân khúc cao cấp. Các tổ chức trong phân khúc này có xu hướng tiết kiệm
hơn về mức giá mà họ phải trả—tìm cách thanh toán nội tuyến với mức giá trung bình của thị
trường

33
Machine Translated by Google

h Phân khúc ngân sách: Đây thường là các doanh nghiệp siêu nhỏ và công ty mới thành lập.
Thường thì một nhóm đàn ông không có kinh nghiệm kinh doanh và xem tài chính giống như
tiền cá nhân; ví dụ: 100 bảng Anh có thể đủ để trang trải chi phí sinh hoạt, nhưng không
đủ để trang trải nhiều chi phí kinh doanh như tiền thuê nhà, bảo hiểm, v.v. Ngay cả khi
chủ sở hữu của các doanh nghiệp này hiểu biết về tài chính ở cấp độ kinh doanh, họ vẫn
thường ở trong tình huống có quỹ hạn chế và do đó không thể trả mức giá hấp dẫn ngay cả
khi họ đánh giá cao giá trị công việc của bạn

thương
thành
trung
hiệu
lòng

Đối thủ cạnh tranh có năng lực

Định lượng

Sơ đồ 2.3: Khối lượng thị trường so với phạm vi tiếp cận của đối thủ cạnh tranh dựa trên thương hiệu.

Sơ đồ 2.3 cho thấy có ít đối thủ cạnh tranh có khả năng cạnh tranh về lòng trung thành với thương
hiệu như thế nào khi yếu tố này trở nên quan trọng hơn. Đây là một yếu tố quan trọng nếu bạn hoặc đối
thủ cạnh tranh của bạn đã có mối quan hệ làm việc thành công với khách hàng tiềm năng hoặc khi các
nguồn đáng tin cậy của họ đưa ra khuyến nghị.

Giá cân bằng – phân khúc và giá cả


Được gọi là giá cân bằng, đây là điểm thỏa hiệp mang lại kết quả tốt nhất giữa việc định giá
chính bạn trong tầm với của số lượng người mua lớn nhất sẵn sàng chi tiêu ở mức mang lại cho
bạn lợi nhuận tốt nhất. Việc xác định mức giá này rất quan trọng vì nó quyết định những gì bạn có
thể cung cấp trong phạm vi ngân sách hiện có.

Mặc dù có thể có những phân khúc thị trường sẵn sàng trả giá cao, nhưng những phân khúc quan trọng duy
nhất là những phân khúc mà bạn có thể tiếp cận. Vì lý do này, việc xác định đối tượng của bạn là ai
cũng rất quan trọng. Bạn có thể tiếp cận ai với hoạt động tiếp thị của mình và đâu là rào cản đối với
những người bạn không thể?

Sẽ có nhiều người có khả năng chi trả ở mức thấp hơn, nhưng liệu bạn có thể cung cấp sản phẩm hoặc
dịch vụ của mình một cách có lãi cho họ không? Nếu không, có phiên bản rút gọn nào mà bạn có thể cung
cấp mà vẫn làm hài lòng đối tượng này và mang lại lợi nhuận cho bạn không? Bạn sẽ không bao giờ mang
lại lợi nhuận nếu bạn thua lỗ trong mỗi lần bán hàng—bất kể bạn bán bao nhiêu!

34
Machine Translated by Google

Đối với những người sẵn sàng trả phí cao cho sản phẩm của bạn, bạn có thể đưa vào giá trị bổ sung
nào để thuyết phục họ nâng cấp lên phiên bản đắt tiền hơn? Những người này sẽ không trả phí cho
cùng một sản phẩm mà bạn cung cấp cho người khác với giá tiêu chuẩn của bạn, tuy nhiên, việc tăng
giá cho mọi người có thể khiến bạn mất doanh thu từ phần lớn khách hàng của mình. Nếu tập trung hoàn
toàn vào khách hàng cao cấp, liệu doanh số bán hàng của họ có bù đắp được những gì bạn mất đi từ phân
khúc khách hàng phổ thông của mình không?

Nói tóm lại, mỗi phân khúc thị trường mà bạn nhắm mục tiêu nên có một phiên bản sản phẩm hoặc dịch vụ
phù hợp với sở thích của họ; điều này có thể không chỉ dựa trên giá cả mà còn có thể liên quan đến các
tính năng liên quan đến các yếu tố khác như chuyên môn, loại hình kinh doanh và quy mô tổ chức của họ.
Định giá vẫn có thể được sử dụng để phân loại các phân khúc thị trường, chẳng hạn như:

h Phân khúc ngân sách: Những người cần những gì bạn cung cấp ở mức giá thấp nhất có thể; giá là
yếu tố chính và có thể là duy nhất sẽ thuyết phục những người này mua hàng của bạn. Trong hầu
hết các trường hợp, sẽ có rất nhiều người trong đối tượng này và do đó, thu nhập của bạn sẽ
cần đến từ khối lượng bán hàng. Câu hỏi đặt ra là bạn có khả năng sản xuất, phân phối và tiếp
thị sản phẩm hoặc dịch vụ của mình tới đối tượng này theo cách giúp bạn kiếm đủ tiền để xứng
đáng không?

¾ Khả năng mở rộng là một cách tiếp cận có thể được sử dụng để giải quyết các phân
khúc ngân sách của thị trường. Đây là nơi áp dụng phương pháp một kích thước phù
hợp với tất cả để phát triển một giải pháp tiêu chuẩn có thể được sử dụng để đáp ứng
nhu cầu—ví dụ như một mẫu trang web có thể được bán cho các nhà thiết kế trang web
để tùy chỉnh hoặc bán trực tiếp cho khách hàng như một phần của trang web tiêu chuẩn
sự sáng tạo. Cách tiếp cận này trả trước toàn bộ chi phí phát triển và có thể hòa

vốn sau khi đạt được một số lượng bán nhất định. Các chi phí phát triển trả trước
này, được gọi là chi phí kỹ thuật không lặp lại, là khoản đầu tư duy nhất một lần;
cho dù bạn bán một bản hay một triệu bản, thì chi phí phát triển cũng không tăng
theo doanh thu mà bạn kiếm được. Điều này có nghĩa là có cơ hội thu được lợi nhuận
cao nếu bạn có thể bán với số lượng lớn, nhưng cũng có nguy cơ không thu hồi được
chi phí đầu tư thời gian của bạn nếu bạn không bán đủ hàng

¾ Điều quan trọng là phải rất cụ thể khi bán các hệ thống kiểu mẫu tạo sẵn, vì cách
tiếp cận này sẽ sai khi cung cấp cho người mua khả năng yêu cầu các tùy chỉnh cụ
thể; đặc biệt là khi bạn đã bán cho các phân khúc thị trường mong đợi mức giá
thấp nhất. Nhiều nhà phát triển phần mềm vận hành phương pháp này giảm thiểu rủi
ro của họ bằng cách giới hạn mức độ tùy chỉnh mà họ cung cấp—nếu cung cấp bất kỳ
tùy chỉnh nào.

h Phân khúc tiêu chuẩn: Những người biết giá trị thị trường của sản phẩm hoặc dịch vụ của bạn và
sẵn sàng trả một mức giá hợp lý. Những người này thường được cung cấp thông tin tốt hơn và
sẽ mua hàng dựa trên nhận thức của họ về một giao dịch công bằng và nhu cầu về chất lượng tốt.
Những người này nhận ra rằng giá quá rẻ thường được phản ánh bằng việc giảm chất lượng
và do đó cần sản phẩm hoặc dịch vụ của bạn được cung cấp với tiêu chuẩn chất lượng ngang
bằng hoặc tốt hơn so với sản phẩm hoặc dịch vụ của người dẫn đầu thị trường. h Phân khúc

cao cấp: Không nhiều mọi người rơi vào tầng này, nhưng những người làm sẽ
thường có thừa tiền để chi tiêu và sẽ sẵn lòng trả cao hơn giá thị trường.
Những người này cũng sẽ muốn một số giá trị gia tăng - nhận thức về uy tín (thương hiệu),
may đo và quay vòng nhanh để giao hàng chỉ là một vài ví dụ về những gì có thể được cung
cấp cho phân khúc này

35
Machine Translated by Google

Với những hiểu biết trước đó, điều quan trọng là phải xác định phân khúc giá nào bạn có thể nhắm mục

tiêu thành công với chiến lược giá của mình. Thường thì không thể nhắm mục tiêu cả hai tầng trên cùng

và dưới cùng với cùng một thương hiệu, vì sẽ có xung đột về cách cả hai nhóm nhìn nhận về bạn. Giá cân

bằng cho biết thị trường nào sẽ sinh lãi cao nhất—nếu bạn có khả năng tiếp thị và sản xuất để bán với

số lượng lớn có lãi, thì việc nhắm mục tiêu vào tầng giữa và tầng cuối sẽ phù hợp với chiến lược của

bạn; mặt khác, việc bán ít hàng hơn với tỷ suất lợi nhuận lớn hơn được chứng minh bằng chất lượng sản

phẩm tăng lên sẽ ít rủi ro hơn và dễ dàng tạo ra lợi nhuận hơn.

Xây dựng chất lượng cho các phân khúc thị trường
Chất lượng là yếu tố mà mọi người đều mong muốn, nhưng việc cung cấp nó thường bị hạn chế bởi kỹ năng,

thời gian, nguồn lực và ngân sách. Định nghĩa về chất lượng là thứ thay đổi giữa các nhóm người khác

nhau; một lý do khác để xác định các phân khúc thị trường có chung đặc điểm. Cho dù tiêu chí mua hàng dựa

trên tiền bạc, thời gian hay yếu tố khác, thì khả năng thành công với phân khúc thị trường của bạn phụ

thuộc vào việc bạn có được định vị để mang lại lợi nhuận với chất lượng mà người mua mong đợi hay không.

Đáp ứng nhu cầu của khách hàng


Chìa khóa để cung cấp chất lượng phù hợp cho các phân khúc thị trường nằm ở việc hiểu nhu cầu của họ.

Việc cung cấp một sản phẩm hoặc dịch vụ có chất lượng cao trên tất cả các yếu tố có thể dẫn đến việc

bạn định giá bản thân ngoài thị trường, trong khi việc cung cấp một phiên bản sản phẩm hoặc dịch vụ của

bạn có các tính năng được lựa chọn quan tâm được điều chỉnh để thu hút đối tượng xác định sẽ có nghĩa là

bạn có thể để tạo ấn tượng tốt hơn với những người bạn nhắm mục tiêu cũng như tăng tiềm năng bán hàng của

bạn. Ví dụ về việc điều chỉnh chất lượng của bạn theo nhu cầu của khách hàng bao gồm:

h Cung cấp phiên bản cấp cơ bản của dịch vụ hoặc sản phẩm của bạn

Điều này cho phép bạn nhắm mục tiêu những người bị hạn chế bởi ngân sách hoặc đang thử nghiệm sử

dụng sản phẩm của bạn để xem họ được hưởng lợi như thế nào. Thiết kế phiên bản cấp cơ bản của bạn

để có tất cả các tính năng cơ bản với các tùy chọn nâng cấp là một cách tuyệt vời để thu hút khách

hàng chi tiêu nhiều hơn cho bạn khi nhu cầu và ngân sách của họ tăng lên theo thời gian.

Phiên bản cấp cơ bản của dịch vụ hoặc sản phẩm của bạn chỉ nên cung cấp những điều cơ bản để

đáp ứng yêu cầu của người mua—có thể có khả năng nâng cấp sau này.

Ví dụ: Nếu bạn đang bán trang web, tùy chọn cấp nhập cảnh có thể là trang web một trang được tạo

từ mẫu tạo sẵn để hiển thị thông tin cơ bản như số điện thoại, địa chỉ e-mail và mô tả về doanh

nghiệp của khách hàng. Tùy chọn này cho phép người mua có ngân sách thấp có giải pháp chất lượng

đáp ứng các yêu cầu chính của tiêu chí dự án của họ. Có thể cung cấp các tùy chọn cho phép họ

nâng cấp trang web của mình bằng các trang mới, thay đổi thiết kế và các tính năng tùy chỉnh khác

sau khi họ đã sẵn sàng và có đủ ngân sách.

36
Machine Translated by Google

h Phiên bản cho các kích cỡ khác nhau

Cho dù bạn nhắm mục tiêu đến gia đình, doanh nghiệp hay cá nhân, việc sản xuất các phiên bản

cho các kích cỡ khác nhau cho phép bạn điều chỉnh chất lượng và số lượng thời gian, tài nguyên và/

hoặc vật liệu cần thiết để cung cấp thứ gì đó mà khách hàng sẵn sàng trả tiền. Nếu bạn bán quần

áo, sẽ là một lợi thế để làm cho doanh nghiệp của bạn thu hút mọi người bằng cách có các tùy chọn

phù hợp với các hình dạng và kích cỡ khác nhau. Điều ngược lại cũng đúng; sử dụng chiến lược đại

dương xanh để chuyên môn hóa về kích thước và hình dạng mà đối thủ cạnh tranh không cung cấp có

nghĩa là bạn có thể tiếp cận các phân khúc thị trường sẽ quan tâm đến sản phẩm và dịch vụ của bạn.

Thật khó để trở thành 6'5" khi chiếc quần dài nhất được bán trong các cửa hàng phổ thông có kích

thước quá nhỏ hoặc hai cỡ — chưa kể đến việc vừa với chỗ ngồi trên phương tiện giao thông công

cộng!

Về phần mềm kinh doanh, bạn có thể muốn điều tra ảnh hưởng của quy mô tổ chức khi sử dụng

sản phẩm/dịch vụ của mình. Với sự khác biệt rõ ràng của các tổ chức lớn là số lượng tài khoản

người dùng hoặc cài đặt, bạn có thể xác định các yêu cầu mới đối với các tính năng và hỗ trợ ảnh

hưởng đến sản xuất và chi phí liên tục của bạn. Việc xác định điều này không chỉ cho phép bạn phân

biệt các phiên bản sản phẩm hoặc dịch vụ của mình để phục vụ cho các quy mô người mua khác nhau

mà còn làm nổi bật các chi phí và khoản tiết kiệm duy nhất cần được tích hợp vào mô hình định giá

của bạn.

Ví dụ: Phần mềm giáo dục trực tuyến thường được bán dưới dạng đăng ký trên cơ sở mỗi người dùng.

Điều này cho phép các tùy chọn đặt giá có thể mở rộng quy mô từ nhu cầu tài khoản cá nhân của phụ

huynh chỉ có một con, đến hàng trăm tài khoản tiềm năng mà toàn bộ trường học có thể cần. Một

mặt, trường học có hàng trăm người dùng sẽ cần nhiều hỗ trợ hơn so với phụ huynh chỉ có hai con,

mặt khác, quy mô người dùng trường học có thể dẫn đến chi phí hỗ trợ thấp hơn cho các câu hỏi

chung chỉ cần trả lời một lần. Ví dụ, một giáo viên đặt câu hỏi có thể áp dụng câu trả lời cho

tối đa ba mươi học sinh trong lớp của họ, trong khi phụ huynh chỉ áp dụng câu trả lời đó cho hai

đứa con của họ. Ngoài ra, giáo viên trong trường có thể muốn sử dụng phần mềm theo cách cho phép

họ thiết lập và quản lý bài tập về nhà—các tính năng bổ sung mà phụ huynh không yêu cầu.

Mặc dù các trường rõ ràng phải trả mức giá tổng thể cao hơn so với các bậc cha mẹ, nhưng khả năng

xác định hiệu quả xảy ra khi mở rộng quy mô sử dụng phần mềm có thể cho phép bạn giảm giá cho

những người mua có giá trị cao mà không cắt giảm biên lợi nhuận của bạn. Việc xác định các tính

năng bổ sung hữu ích đối với cách giáo viên sử dụng phần mềm khác với phụ huynh sẽ mở ra cơ hội

làm cho sản phẩm trở nên hấp dẫn hơn đối với họ theo cách có thể cho phép các tùy chọn giá mới để

nâng cấp tính năng và dịch vụ bổ sung.

h Các phiên bản dành riêng cho nghề

nghiệp Điều này phù hợp nhất khi bán cho các ngành nghề cụ thể, điều chỉnh sản phẩm hoặc dịch vụ

để trở nên hấp dẫn đối với một nghề nghiệp cụ thể.

Ví dụ: Gói phần mềm kế toán có bật hoặc tắt các tính năng cụ thể để làm cho chức năng của nó phù

hợp với doanh nghiệp hoạt động trong một lĩnh vực cụ thể.

Ví dụ: Một phần mềm giáo dục toán học có thể có cùng nội dung và bài tập phù hợp với các

ngành khác nhau, cho phép nó trở nên hấp dẫn đối với các tổ chức đào tạo cần dạy toán liên

quan đến ngành mà họ đào tạo.

37
Machine Translated by Google

Nghiên cứu thị trường

Cho dù đó là hoạt động của nhà nước, hoạt động của khu vực tư nhân, tổ chức từ thiện hay doanh
nghiệp xã hội, tiền mặt là dòng máu của bất kỳ tổ chức nào; không có nó, tổ chức không thể hoạt
động và sẽ không còn tồn tại. Theo cách tương tự, một tổ chức không có dòng tiền không thể hoạt
động bình thường để đáp ứng các mục tiêu của nó. Cho dù bạn hoạt động hoàn toàn vì lợi nhuận hay
vì lợi ích cộng đồng, thì khả năng xác định những gì mọi người muốn mua và với mức giá nào sẽ
quyết định bạn thành công hay thất bại.

Không lập kế hoạch là lập kế hoạch để thất bại


Một sai lầm phổ biến của những người mới tham gia thị trường là định giá hoàn toàn dựa trên
những gì mọi người nói rằng họ sẽ trả thay vì chi phí để phân phối và có lãi. Cách tiếp cận này
vừa lười biếng vừa ngây thơ, khiến doanh nghiệp của họ dễ bị người mua trên thị trường lợi
dụng, đồng thời làm tăng rủi ro hạn chế khả năng cung cấp chất lượng và kiếm lợi nhuận của họ.

Bản chất của hoạch định giá tốt là:

h Hiểu được những gì thị trường muốn trả h Xác định giá trị cảm

nhận của sản phẩm hoặc dịch vụ h Xác định 'ai' bạn có thể bán

cho h Tính toán chi phí để đưa sản phẩm hoặc dịch vụ của bạn ra

thị trường h Xác định cách quản lý và giao tiếp khách hàng dự kiến chi

phí chung h Tính toán chi phí để cung cấp sản phẩm hoặc dịch vụ của bạn cho khách

hàng h Kết hợp tỷ suất lợi nhuận của bạn

Tất cả những điều trên góp phần vào việc định giá thành công trong việc bán sản phẩm và dịch
vụ khi nắm bắt được thông tin chính xác, nhấn mạnh tầm quan trọng của việc lựa chọn nguồn
thông tin đáng tin cậy và biên độ bao thanh toán cho sai sót. Một số nguồn thông tin hầu như sẽ
không bao giờ cung cấp thông tin thực sự chính xác; một ví dụ là hầu hết người mua sẽ không bao
giờ cho biết mức giá tối đa mà họ sẵn sàng trả—đặc biệt nếu họ đang thương lượng mức giá tốt nhất
từ bạn. Trong những trường hợp này, bạn có thể xem xét việc xác minh dữ liệu của mình bằng cách
tham khảo chéo các thông tin khác mà bạn nắm bắt được. Ví dụ: giá mà khách hàng nói rằng họ sẵn
sàng trả có thể được so sánh với ý kiến của họ về giá sản phẩm/dịch vụ tương đương.

38
Machine Translated by Google

Chi phí cho thị trường

Một sai lầm khác của những người mới tham gia thị trường là quên tính chi phí phát triển sản phẩm

hoặc dịch vụ vào dự báo giá và lợi nhuận của họ. Chi phí đưa ra thị trường bao gồm:

h Nghiên cứu và phát triển: Bao gồm các cuộc họp, kế hoạch và nghiên cứu để tạo ra sản phẩm cũng như

xác định những gì mọi người muốn h Chi phí mua thiết bị h Chi phí đào tạo h Các chi phí khác cũng

có thể phát sinh tùy thuộc vào sản phẩm cụ thể của bạn

hoặc dịch vụ

Tùy thuộc vào quốc gia nơi bạn hoạt động, cũng có thể có nhiều cách để bạn giảm chi phí đưa ra thị trường

thông qua:

h Các khoản tín dụng thuế bù đắp chi phí kinh doanh—ví dụ: Vương quốc Anh giảm thuế cho các doanh

nghiệp điều hành tại nhà cũng như cho những doanh nghiệp hoạt động trong các lĩnh vực như phát

triển trò chơi máy tính

h Chi phí cho các dịch vụ chuyên nghiệp như đào tạo có thể được sử dụng để giảm thuế—như một

chi phí kinh doanh thực sự, những khoản này không được bao gồm như một phần của bất kỳ khoản lợi nhuận chịu

thuế nào mà bạn kiếm được; nó đáng để kiểm tra với một kế toán về điều này

h Chi phí thiết bị có thể được sử dụng để giảm chi phí thuế—mặc dù một số quốc gia như Vương quốc Anh

không cho phép khấu trừ thuế hoàn toàn vì thiết bị được coi là vốn và do đó có giá trị để bán lại;

điều này được đối xử khác theo cách giảm thuế được trả lại trong một số năm phù hợp với cách quốc

gia xem khấu hao vốn thiết bị. Bạn nên nói chuyện với kế toán của mình về điều này

Chắc chắn về mặt dịch vụ nhắm vào các phân khúc thị trường muốn hoặc cần một giải pháp hợp lý hơn,

chi phí đưa ra thị trường có thể cao hơn để phát triển một số loại thành phần tùy chỉnh cho phép giảm chi phí

phân phối sản phẩm/dịch vụ đang diễn ra. Mặc dù tiền có thể kiếm được thông qua bán hàng, nhưng lợi nhuận chỉ

đạt được khi mọi khoản đầu tư trả trước cho dịch vụ, thiết bị, nghiên cứu và phát triển đã được thu hồi.

Chi phí giao hàng

Ngoài các chi phí để đưa sản phẩm hoặc dịch vụ của bạn đến trạng thái có thể bán được trên thị trường,

còn có các chi phí liên tục tăng lên khi doanh nghiệp của bạn phát triển. Những chi phí này bao gồm chi

phí thuê nhân viên, hỗ trợ khách hàng, tiếp thị và tiền thuê nhà—một số chi phí này sẽ tỷ lệ thuận với

doanh số bán hàng của bạn, trong khi những chi phí khác sẽ tăng đáng kể khi bạn đạt được các mốc cụ thể;

ví dụ, tăng diện tích mặt bằng văn phòng có nghĩa là giá thuê cao hơn.

Tất cả các chi phí này phải được tính vào giá để thu hồi qua mỗi lần bán đơn vị.

Điều này có nghĩa là nếu bạn có ý định bán với khối lượng nhỏ hơn, giá của bạn cần phải cao hơn để mỗi

đơn vị sản phẩm/giờ được bán sẽ hấp thụ phần lớn chi phí của bạn.

39
Machine Translated by Google

Tính tỷ suất lợi nhuận của bạn

Tóm lại, lợi nhuận của bạn là một phép tính đơn giản được thực hiện từ:

Lợi nhuận = Tổng giá trị bán hàng - Chi phí đưa ra thị trường - (Chi phí đơn vị x Số lượng đơn vị)

Đừng quên rằng không phải tất cả các đơn vị có sẵn nhất thiết sẽ được bán. Ví dụ nơi điều này có thể xảy ra bao

gồm:

h Các sản phẩm vượt qua ngày bán hợp lệ hoặc mức độ phù hợp của chúng—các ví dụ bên ngoài phần mềm

bao gồm bán theo ngày đối với thực phẩm và ngày phù hợp đối với các mặt hàng như báo và tạp chí

h Các đơn vị mẫu được phân phát cho mục đích tiếp thị—mẫu ví dụ cho các nhà báo
xem la i

h Thời gian không được đặt do thiếu nhu cầu hoặc thời gian dành cho tiếp thị
và hoạt động quản trị

Giá trị thời gian

Trong trường hợp doanh nghiệp của bạn sử dụng các kỹ năng của bạn để bán thời gian, một phương pháp dễ dàng để

xác định tỷ lệ hàng ngày của bạn có thể là sử dụng các bước sau:

h Xác định số tiền bạn muốn kiếm được mỗi năm h Xác định số

ngày bạn có thể làm việc thực tế trong một năm h Chia số tiền kiếm được mục

tiêu cho số ngày bạn có thể làm việc

Quá lạc quan với số ngày dự kiến bán sẽ dẫn đến việc bạn không thể đạt được thu nhập mục tiêu của mình.

Điều này có nghĩa là ước tính thấp hơn cho số ngày làm việc khả dụng của bạn sẽ giảm rủi ro và tăng khả

năng bạn vượt mục tiêu của mình. Bạn cũng cần kết hợp bất kỳ thời gian nào bạn muốn nghỉ lễ, ốm đau và

bất kỳ điều gì khác khiến bạn không thể làm việc; không giống như được tuyển dụng, bạn không được trả tiền

cho những điều này.

Trên thực tế, mục tiêu kiếm đủ tiền lương trong sáu tháng làm việc sẽ cung cấp đủ tiền ký quỹ cho ba tháng

trong năm để dành cho kỳ nghỉ và thêm ba tháng tiền ký quỹ cho bất kỳ điều gì bất ngờ, chẳng hạn như nền kinh tế

trở nên khó khăn. Điều này có nghĩa là bất cứ lúc nào bạn bán hàng vượt quá mục tiêu sáu tháng là điều cho phép

bạn kiếm được nhiều tiền hơn so với lập trình viên được tuyển dụng tương đương; và đúng như vậy, vì bạn là công

nhân dùng một lần, điều này giải phóng các công ty khỏi các nghĩa vụ theo luật lao động và các chi phí khác liên

quan đến nhân viên như chi phí đào tạo và thiết bị. Những người thông minh không chỉ nhằm mục đích bán thời gian

mà còn tận dụng tối đa từ nỗ lực ít nhất.

40
Machine Translated by Google

Thu nhập bạn kiếm được cũng cần phải được cấu trúc để trang trải:

h Thời buổi khó khăn

Là nguồn tài nguyên dùng một lần, bạn không được luật lao động bảo vệ—có nghĩa là không được trả

lương dư thừa và thông báo tối thiểu về việc chấm dứt hợp đồng/dự án. Do đó, các dịch giả tự do

và nhà thầu là những người đầu tiên cảm nhận được gánh nặng của các tình huống chẳng hạn như các

sự kiện kinh tế như cuộc khủng hoảng tài chính năm 2008. Hãy chắc chắn rằng bạn có đủ tiền tiết

kiệm để trang trải mọi rủi ro khi hoạt động trong điều kiện thị trường khó khăn.

h Chi phí đào tạo

Nhu cầu về các kỹ năng phụ cụ thể trong lập trình luôn thay đổi. Cách đây không lâu, Flash

và Actionscript là những kỹ năng được tìm kiếm nhiều cho các ứng dụng web giao diện người

dùng, trong khi Javascript là lựa chọn của người nghèo bị hạn chế về chức năng. Ngày nay,

không chỉ Flash và Actionscript không còn phù hợp, mà Javascript đã trở nên phù hợp với mọi

thứ, từ phần mềm dựa trên trình duyệt cho đến phát triển ứng dụng phía máy chủ, Internet of

Things (IoT) và việc sử dụng nó trong các sản phẩm thương mại như PlayStation 4 của Sony.

Đầu tư vào đào tạo không phải là tùy chọn nếu bạn muốn duy trì sự liên quan; đặc biệt nếu bạn muốn

tính phí cao hơn. Có hai loại chi phí đào tạo - tiền mặt và thời gian. Chi phí tiền mặt liên quan

đến việc mua các khóa học và tài liệu học tập như sách, trong khi thời gian là khoảng thời gian

bạn dành cho việc học và thực hành để thành thạo các kỹ năng. Ngay cả khi chi phí tiền mặt có thể

được loại bỏ, việc học sẽ luôn có chi phí thời gian chuyển đổi thành giá trị tiền mặt; thời gian

dành cho việc học là thời gian bị mất do kiếm tiền—do đó có câu nói thời gian là tiền bạc. Đảm bảo

tính đến yếu tố thời gian trong năm mà bạn dự kiến dành để nâng cấp các kỹ năng của mình; ngay cả

khi đây là trong thời gian rảnh rỗi của bạn.

h Mua sắm và bảo trì thiết bị

Không giống như các lập trình viên được các công ty tuyển dụng, bạn không có ai mua thiết bị

và giấy phép phần mềm cho công việc của bạn. Trên hết, nhiều nhà tuyển dụng không chỉ mua cho nhân

viên của họ các phiên bản dành cho người mới bắt đầu, mà còn mua bất kỳ phiên bản nào cao cấp nhất

— với các bản nâng cấp mỗi năm. Đây là một lợi ích việc làm mà bạn bỏ lỡ bằng cách đi theo con

đường tự làm việc với chi phí cho khả năng sinh lời của bạn. Đây là thứ mà khách hàng của bạn tiết

kiệm bằng cách không cần thực hiện các giao dịch mua này—vì vậy hãy đảm bảo rằng mức giá của bạn

tính đến giá trị của thiết bị và giấy phép phần mềm mà bạn cung cấp cùng với dịch vụ của mình.

Tối đa hóa tiềm năng kiếm tiền của bạn là một phần quan trọng của trò chơi, vì vậy, bạn nên

hiểu bạn được đánh giá cao như thế nào trong ngành. Các câu hỏi bạn nên xem xét bao gồm:

h Mức lương trung bình được đề nghị cho vai trò được tuyển dụng tương đương là bao nhiêu? h

Tỷ giá nào hiện đang được chào bán trên thị trường hợp đồng? h Bạn cho rằng mình đang ở mức

độ kinh nghiệm nào? h Bạn có những kỹ năng phụ bổ trợ nào? h Loại trách nhiệm nào bạn sẵn sàng

chấp nhận?

41
Machine Translated by Google

h Loại hình tổ chức nào bạn đang hướng tới? h Bạn muốn bao nhiêu

thời gian nghỉ lễ?

Đây là tất cả những câu hỏi có tác động trực tiếp đến việc xác định tỷ lệ hàng ngày thực tế mang lại rủi

ro tối thiểu; hãy nhớ rằng, quản lý rủi ro là tránh rủi ro không cần thiết và giữ tỷ lệ cược có lợi cho

bạn, vì vậy hãy luôn tìm cách tối đa hóa thu nhập của bạn để giữ rủi ro ở mức thấp!

Với trò chơi là xác định các cách để tối đa hóa sức hấp dẫn của bạn đối với người mua trên thị trường,

điều quan trọng là phải biết cách đóng gói và trình bày các thuộc tính của bạn theo cách thuyết phục

người mua rằng bạn phù hợp với công việc của họ. Mỗi người mua đều khác nhau theo một cách nào đó, ngay cả

khi họ có nhiều đặc điểm chung. Điều này có nghĩa là mặc dù bạn có thể đã xác định được các phân khúc thị

trường để nhắm mục tiêu, nhưng chiến lược tiếp cận chúng của bạn có thể được thiết kế theo cách chuyên biệt

hơn để khiến bạn thu hút người mua bằng các đặc điểm cụ thể hơn.

Cách tiếp cận để chuyên sâu hơn vào các đặc điểm cụ thể hơn có thể được thực hiện thông qua hoàn cảnh

hơn là lựa chọn cá nhân. Ví dụ:

h Khi kỹ năng và kinh nghiệm lập trình của bạn không thể cạnh tranh với các lập trình viên

khác trên thị trường, hãy tìm cách cạnh tranh bằng cách kết hợp việc sử dụng một kỹ

năng phụ hoặc bằng cách tìm người mua không có ngân sách để thu hút các lập trình viên

giỏi nhất. h Khi bạn tự tin rằng các kỹ năng của mình có thể cạnh tranh với tiêu chuẩn

của các lập trình viên hàng đầu thị trường, hãy xây dựng tỷ lệ của bạn để phản ánh mức giá cao

nhất được đưa ra trong các quảng cáo việc làm theo hợp đồng mà bạn tìm thấy trong quá

trình nghiên cứu của mình.

Thật dễ dàng để đưa ra giả định rằng người mua chỉ cần ai đó có thể viết mã của họ, nhưng thực tế là có

nhiều yếu tố để hoàn thành thành công các dự án phần mềm hơn là chỉ viết mã. Viết đúng mã để giải quyết đúng

vấn đề quan trọng hơn viết bất kỳ mã cũ nào. Mã không có dữ liệu phù hợp sẽ không bao giờ tạo ra đầu ra cần

thiết. Một dự án phải đối mặt với sự can thiệp từ các chương trình nghị sự chính trị sẽ không thể hoàn thành

với tiềm năng đầy đủ của nó, đúng thời hạn hoặc trong phạm vi ngân sách. Các dự án được thiết kế theo cách

không thực tế để phân phối trong thời gian hoặc ngân sách có sẵn cần có sự can thiệp cụ thể để xác định sản

phẩm khả thi tối thiểu. Bạn có thể thấy mô hình của những yêu cầu này— có những cơ hội trong mọi phân khúc

thị trường để bạn nổi bật so với đối thủ cạnh tranh bằng cách nhấn mạnh các kỹ năng phụ liên quan mà bạn có

mà nhiều lập trình viên khác không có.

42
Machine Translated by Google

Mặc dù bạn có khả năng tập trung vào một loại công việc chính mang lại phần lớn thu nhập của bạn,

chẳng hạn như vai trò dựa trên hợp đồng, nhưng không có gì ngăn cản bạn tham gia vào các loại công

việc tự làm chủ khác để phù hợp với điều này. Ví dụ: trong khi công việc ban ngày của bạn có thể tập

trung vào việc kiếm tiền từ một dự án theo hợp đồng, thì thời gian bạn dành cho việc di chuyển trên tàu

và một số buổi tối có thể được sử dụng để làm việc cho các dự án tự do nhỏ như viết lách, trang web nhỏ,

ứng dụng và cung cấp dịch vụ chẳng hạn như như học phí. Tất cả những điều này giúp tăng thu nhập của bạn

và mở ra các cơ hội tiềm năng trong tương lai cho phép bạn phát triển công việc kinh doanh của mình đồng

thời giảm khả năng tiếp xúc với các tình huống bất lợi mà bạn có thể gặp phải với tư cách là nhân viên hợp
đồng dùng một lần.

Tóm lược
Hiểu rõ bạn định bán cho ai sẽ cho phép bạn xác định rõ doanh nghiệp của mình là gì, bạn định

giao dịch với ai, bạn sẽ cung cấp những gì và bạn dự định sinh lời như thế nào. Chìa khóa để hiểu thị

trường của bạn là nghiên cứu, vì vậy hãy đảm bảo rằng bạn làm điều này kỹ lưỡng và tận dụng các nguồn

thông tin đáng tin cậy.

Ngay cả khi nghiên cứu của bạn cho thấy nhu cầu cao đối với những gì bạn dự định cung cấp, bạn nên luôn

tập trung rõ ràng vào việc liệu ý tưởng của bạn có khả thi về mặt tài chính hay không. Tất cả các thị

trường có thể được tách thành nhiều phân khúc, phân loại những người mua có chung đặc điểm. Về giá cả,

điều này thường chuyển thành ba loại chung của người mua ngân sách, tiêu chuẩn và cao cấp; mỗi vấn đề cần

được giải quyết theo một cách riêng để đảm bảo rằng các dịch vụ hoặc sản phẩm của bạn có thể được phân

phối theo cách đáp ứng được kỳ vọng về chất lượng của họ và khả thi về mặt tài chính. Điều quan trọng là

xác định những gì có thể được cung cấp cho (các) phân khúc thị trường mà bạn nhắm mục tiêu ngay từ đầu để

bạn có thể tránh được những người mua trả tiền thấp hơn đàm phán các khoản phụ trội khiến cho ưu đãi của

bạn không sinh lời.

Với sự hiểu biết về các yếu tố liên quan đến việc định vị bản thân trên thị trường, chương tiếp theo sẽ

trình bày các vấn đề liên quan đến xây dựng mô hình kinh doanh; một phần quan trọng để xác định cách

doanh nghiệp của bạn có thể hoạt động có lãi với những kiểu người mà bạn đang bán dịch vụ và sản phẩm

của mình.

43
Machine Translated by Google
Machine Translated by Google

3 xác định của bạn


Mô hình kinh doanh

Một mô hình kinh doanh xác định cách một ý tưởng kinh doanh có thể được vận hành theo cách có lợi nhuận.

Tất cả các doanh nghiệp đều độc đáo theo cách này hay cách khác, trong đó nhiều doanh nghiệp chịu ảnh

hưởng từ các đối thủ cạnh tranh bằng cách sử dụng các mô hình kinh doanh đã được chứng minh là mang lại

thành công. Biết được điều gì tạo nên một mô hình kinh doanh và cách điều chỉnh chúng để phù hợp với môi

trường mà bạn hoạt động, có thể tối đa hóa cơ hội thành công của bạn.

Các loại mô hình kinh doanh cho phần mềm


Sai lầm của rất nhiều nhà phát triển phần mềm, những người quyết định đi vào kinh doanh là đặt quá

nhiều trọng tâm vào khía cạnh kỹ thuật của việc phát triển phần mềm. Sai lầm này bắt nguồn từ văn hóa phát

triển phần mềm nói chung, thường có xu hướng ủng hộ việc chia sẻ mã, thông tin và ý tưởng, như được thể hiện

bởi phong trào nguồn mở.

Mặc dù hệ tư tưởng này có thể tỏ ra hiệu quả đối với việc học và xây dựng danh tiếng trong lĩnh vực

phát triển phần mềm, nhưng không nên nhầm lẫn nó với tư cách là một mô hình kinh doanh—một trong nhiều lý

do tại sao các nhà phát triển phần mềm thấy mình bị trả lương thấp hoặc thất bại trong việc kinh doanh thành
công về mặt thương mại.

Mô hình kinh doanh của bạn nên xem xét phương pháp bạn định sử dụng để phát triển và phân phối phần mềm

của mình nhằm xác định cách thức xây dựng doanh nghiệp dựa trên kỹ năng phát triển phần mềm của bạn. Một số

mô hình sử dụng phát triển phần mềm làm hoạt động kinh doanh chính, trong khi các mô hình khác sử dụng phát

triển phần mềm như một thành phần hỗ trợ các hoạt động kinh doanh khác. Sau đây là các loại mô hình kinh

doanh chính mà phát triển phần mềm thương mại thuộc về:

Phát triển phần mềm dưới dạng dịch vụ (SDaaS)


Cách rõ ràng nhất để kiếm tiền với kỹ năng phát triển phần mềm của bạn là cho phép các doanh nghiệp

và cá nhân thuê bạn. Mô hình kinh doanh này tập trung vào việc bán thời gian của bạn để sản xuất phần

mềm đáp ứng yêu cầu của những người hoặc doanh nghiệp đang thuê bạn.

45
Machine Translated by Google

Thuận lợi
Phương pháp xây dựng doanh nghiệp xoay quanh việc phát triển phần mềm này có một số ưu điểm khiến nó
trở nên lý tưởng cho những người mới bắt đầu kinh doanh:

h Giảm nguy cơ phạm sai lầm nghiêm trọng: Được trả lương theo giờ/dự án có nghĩa là bạn không
mạo hiểm làm việc trong vài năm để tạo ra thứ gì đó không kiếm đủ tiền để biện minh cho
khoản đầu tư thời gian của mình

h Dễ định nghĩa: Doanh nghiệp chỉ bán dịch vụ để tạo ra phần mềm
cho những người thuê bạn—bạn và khách hàng của bạn dễ hiểu, do đó giảm thiểu nguy cơ mắc
những sai lầm tốn kém

h Cho phép bạn tìm hiểu khi bạn thực hiện: Không cần tạo mã trước khi bán hàng có nghĩa là bạn có
thể tìm hiểu về người mua và các yêu cầu của họ theo cách cho phép bạn tinh chỉnh các quy
trình của mình để phản ánh trải nghiệm của bạn khi chúng xảy ra

h Mô hình đã được chứng minh: Loại mô hình kinh doanh này đảm bảo sẽ hoạt động với điều kiện là
bạn có thể tạo ra doanh số bán hàng cần thiết, thiết lập các quy trình phù hợp và thương
lượng một mức giá bao gồm chi phí thời gian và chi phí của bạn

h Chi phí khởi nghiệp tối thiểu: Trong thời đại của Internet và các mạng truyền thông xã hội như
LinkedIn, có thể bắt đầu loại hình kinh doanh này mà gần như không có tiền—chỉ cần truy cập
nhanh vào một trang web như Freelancer.net (http://www .freelancers.net) sẽ tiết lộ một số dự
án mà bạn có thể đăng ký nếu có kỹ năng

h Tính linh hoạt cao: Bản chất của việc phát triển phần mềm kết hợp với máy tính di động và kết
nối Internet có nghĩa là có mức độ linh hoạt cao để làm việc vào thời gian và địa điểm phù
hợp với những gì tốt nhất cho bạn. Sau khi thành lập, bạn cũng có thể chọn thời điểm nhận
công việc của khách hàng—và quan trọng hơn, bạn sẽ chấp nhận làm việc cho ai

h Thiết kế phần mềm phản ứng: Đây là nơi bạn đang thiết kế phần mềm để giải quyết một vấn đề
đã biết với sự hiểu biết về cách thiết kế đã chọn của bạn cần phù hợp với phạm vi thay
đổi. Hiểu được sản phẩm khả thi tối thiểu ban đầu là gì và tính năng nào bị phản ứng cho
phép bạn bán dịch vụ để phát triển cả yêu cầu ban đầu và mọi thay đổi đang diễn ra

Nhược điểm
Không phải tất cả đều màu hồng khi điều hành doanh nghiệp của bạn trên mô hình SDaaS. Bản chất của
loại hình kinh doanh này thu hút và gây ra một số vấn đề:

h Kỳ vọng không xác định: Các doanh nghiệp và những người thuê bạn viết phần mềm của họ thường
sẽ không hiểu đầy đủ về những gì họ muốn hoặc cần từ kết quả cuối cùng. Điều này có nghĩa là
công việc của bạn trở nên khó khăn hơn khi cần quản lý các dự án để tránh những tình huống có
thể gây tổn hại đến lợi nhuận, mối quan hệ khách hàng và khả năng hoàn thành dự án của bạn.
Với kinh nghiệm, bạn sẽ học cách phát triển các kỹ năng và chính sách để quản lý và giao tiếp
với khách hàng, dẫn đến các thông số kỹ thuật được lập thành văn bản được xác định rõ hơn,
tránh kiểu mơ hồ gây ra các vấn đề sau này trong dự án; do đó bạn học những kỹ năng này càng

sớm, bạn càng sớm có thể giảm thiểu loại rủi ro này

46
Machine Translated by Google

h Chi phí thời gian không xác định: Khách hàng của bạn thường cần phần mềm của họ được phát triển trong

lượng thời gian tối thiểu hoặc có ngân sách hạn chế ảnh hưởng đến thời gian có sẵn để hoàn thành dự

án của họ trước khi tỷ suất lợi nhuận của bạn bị giảm. Tốt nhất, lượng thời gian bạn xác định để hoàn

thành một dự án là một ước tính có học; bất kể phương pháp của bạn chi tiết đến mức nào để xác định

danh tính của bạn. Một giải pháp cho vấn đề nan giải này là cung cấp các ước tính dưới dạng một phạm

vi, nêu chi tiết các yếu tố có thể ảnh hưởng đến thời gian phát triển thực tế—chẳng hạn như khách hàng

không cung cấp nội dung được yêu cầu!

h Thay đổi tình huống: Khách hàng của bạn sẽ có nhiều yếu tố liên quan sẽ ảnh hưởng đến những gì họ muốn

từ phần mềm mà họ thuê bạn phát triển. Các yếu tố này có thể thay đổi theo thời gian và do đó dẫn

đến các thay đổi đối với đặc tả phần mềm, do đó làm tăng thêm thời gian và chi phí mà khách hàng

có thể không có khả năng hoặc không sẵn sàng thương lượng để trả cho

h Giá cố định có thể là yếu tố giết chết lợi nhuận: Nhiều khách hàng muốn biết trước những gì

tổng chi phí cho dự án của họ sẽ là bao nhiêu, nghĩa là có nguy cơ bạn bị mất tiền hoặc hầu như không

làm việc gì nếu bạn không tính toán và ước tính thời gian chính xác khi quyết định mức giá của mình.

Khách hàng cũng có thể không thực tế và khó đàm phán khi đưa ra các thay đổi đối với các yêu cầu ban

đầu của họ—thậm chí còn đi xa hơn khi cố gắng đưa vào các tính năng bổ sung như một phần của từ ngữ của

thông số kỹ thuật ban đầu; đây là cách bạn bất ngờ mất tiền h Các quốc gia rẻ hơn là mối đe dọa ngày

càng tăng: Bản chất của phát triển phần mềm không yêu cầu các nhà phát triển phần mềm phải có mặt tại

chỗ để thực hiện công việc của họ, kết hợp với các công nghệ Internet giúp mọi người làm việc và chia sẻ công

việc của họ dễ dàng hơn từ bất kỳ đâu. vị trí, có nghĩa là các công ty và cá nhân tự làm chủ từ nước

ngoài đặt trụ sở tại các quốc gia có giá trị tiền tệ và chi phí sinh hoạt thấp hơn có vị thế tốt hơn để

cạnh tranh với bạn với mức giá thấp hơn. Điều này trở thành một vấn đề nghiêm trọng nếu những đối thủ

cạnh tranh này có cùng mức độ kỹ năng và dịch vụ khách hàng mà bạn có thể cung cấp. Mối đe dọa này

thường cụ thể hơn đối với phân khúc ngân sách của thị trường, nơi người bán cạnh tranh bằng việc đưa ra

mức giá thấp nhất và người mua chủ yếu tìm cách thuê người trả giá thấp nhất; do đó người bán ở các

quốc gia có tiền tệ và chi phí sinh hoạt thấp hơn có lợi thế hoàn toàn để giành được loại công việc

này. Ở đầu bên kia của thị trường, người mua ở phân khúc cao cấp có xu hướng đánh giá ít hơn về giá và

nhiều hơn về các yếu tố liên quan đến chất lượng—cho dù đó là dịch vụ khách hàng, kiến thức, sự đảm bảo

hay chất lượng mã; kết quả là các đối thủ cạnh tranh nhắm mục tiêu vào phân khúc này có xu hướng sử

dụng bất kỳ sự khác biệt nào về chi phí sinh hoạt và giá trị tiền tệ thấp hơn để tối đa hóa lợi nhuận

của họ và thay vào đó tập trung vào cạnh tranh bằng kỹ năng và kiến thức của họ thay vì giá cả

47
Machine Translated by Google

h Làm suy yếu phương tiện truyền thông và công nghệ: Khả năng tính phí mà bạn xem thời gian và

kỹ năng của mình đáng giá phụ thuộc vào việc tìm kiếm những khách hàng cho rằng kỹ năng

của bạn xứng đáng với mức giá mà bạn yêu cầu. Một vấn đề đang nổi lên đối với các nhà phát

triển phần mềm là nhận thức về các kỹ năng của họ đang bị phương tiện truyền thông làm suy yếu

như thế nào và tăng khả năng tiếp cận các sản phẩm công nghệ bán sẵn. Các ví dụ bao gồm một

chương trình truyền hình thực tế về kinh doanh nhất định cho các ứng viên học việc một ngày để

tạo ứng dụng, các tin bài phóng đại thành công của một đứa trẻ 5 tuổi đạt được chứng chỉ

Microsoft Office và những người tạo trang web tự làm điều đó với hoạt động tiếp thị nhấn mạnh

không cần kỹ năng viết mã để tạo các trang web. Mặc dù tất cả các ví dụ này đều đúng về mặt kỹ

thuật trong ngữ cảnh cụ thể của chúng, nhưng chúng đóng một vai trò lớn trong nhận thức của công

chúng về việc phát triển phần mềm là hoạt động vui chơi của trẻ con, do đó dẫn đến những giả

định không chính xác về phần mềm và công nghệ:

¾ Có thể tạo một ứng dụng rất cơ bản trong một ngày, nhưng một ứng dụng có ý nghĩa sử dụng

sẽ mất hàng tuần, hàng tháng hoặc hàng năm để phát triển, tùy thuộc vào các tính năng
của ứng dụng đó

¾ Các chứng chỉ của Microsoft về sử dụng phần mềm như Word rất dễ dàng

vượt qua; chúng không cùng đẳng cấp với các chứng chỉ tập trung vào phát triển phần

mềm, chẳng hạn như Nhà phát triển giải pháp được chứng nhận của Microsoft

(MCSD)

¾ Có thể tạo các trang web cơ bản mà không cần có kỹ năng viết mã thông qua các công cụ

WYSIWYG (What You See Is What You Get) như Wix hoặc Dreamweaver, nhưng các công cụ

này bị giới hạn ở bất kỳ tính năng tạo sẵn nào mà chúng cung cấp và có thể tạo ra mã

định dạng rất kém, không tốt cho bảng xếp hạng tìm kiếm của Google. Ngay khi bạn cần

làm điều gì đó mà công cụ xây dựng trang web không thể làm hoặc khi bạn cần tối ưu

hóa nội dung của mình tốt hơn cho các công cụ tìm kiếm, bạn cần tham gia vào việc viết

hoặc chỉnh sửa mã ¾ Giờ đây, bạn có thể tạo các dự án có độ phức tạp trung bình với

sử dụng các hệ thống mã nguồn mở chẳng hạn như WordPress mà không cần kiến thức lập trình—

chỉ cần hiểu cách cài đặt mã vào dịch vụ lưu trữ. Các hệ thống này thường có thể được

tùy chỉnh với các mẫu hiện có và có chức năng được mở rộng thông qua các phần bổ trợ

sẵn có; cho phép những khách hàng thử nghiệm cài đặt WordPress của họ phát triển định

kiến không chính xác về việc phát triển phần mềm là nhấp để cài đặt. Điều này dẫn đến

sự biện minh cho các lập trường khó khăn, chẳng hạn như khăng khăng họ thuê bạn với

mức lương tối thiểu cho các tính năng họ muốn yêu cầu lập trình và tùy chỉnh riêng

Kết quả của việc thông tin sai lệch này được tạo ra và lan truyền thông qua tiếp thị và phương

tiện truyền thông gây hiểu lầm là có những phân khúc thị trường nơi kỹ năng lập trình bị giảm giá trị

đến mức khách hàng cho rằng họ có thể tự mình thực hiện công việc chỉ sau vài ngày đào tạo.

48
Machine Translated by Google

Hình 3.1 : Các khóa đào tạo như thế này có làm tổn hại đến nhận thức của những người mua tiềm năng bằng cách gợi ý rằng họ có thể

học mọi thứ cần thiết để thực hiện công việc chỉ trong sáu tuần với giá £40 không?

Phần kết luận


Sử dụng mô hình SDaaS là một cách hay để bắt đầu phát triển phần mềm, cho phép bạn tìm hiểu
về các loại tình huống và cách giải quyết chúng. Mô hình này cũng là tùy chọn có ít chi phí
khởi động nhất, có thể bắt đầu kiếm tiền ngay lập tức bằng cách tìm một dự án thanh toán qua
một trong nhiều trang web đấu thầu dự án hoặc dự án được quảng cáo qua mạng xã hội.

Cũng có thể phát triển mô hình này thành một trong những mô hình kinh doanh độc lập được
mô tả trong các phần phụ sau của chương này. Các doanh nghiệp nhỏ và cá nhân kiếm sống từ
phát triển phần mềm thường phát triển mô hình kinh doanh chính của họ từ SDaaS sang một
trong các mô hình khác; đây là Phần mềm dưới dạng Sản phẩm (SaaP), Phần mềm dưới dạng Dịch
vụ (SaaS) hoặc phần mềm hỗ trợ dịch vụ. Trong trường hợp của Basecamp (https://basecamp.com),
trước đây là 37 tín hiệu, công ty ban đầu được thành lập để cung cấp dịch vụ thiết kế lại
trang web, nhưng cuối cùng đã thay đổi mô hình kinh doanh của họ thành SaaS bán đăng ký cho
hệ thống quản lý dự án do họ phát triển nội bộ.

Phần mềm dưới dạng sản phẩm (SaaP)


Ở một thái cực khác của các mô hình kinh doanh phát triển phần mềm, có việc bán phần mềm như
một sản phẩm đầy đủ—một sự tương phản hoàn toàn với việc chỉ bán dịch vụ để tạo ra phần mềm.
Mô hình này dựa vào việc tạo ra một sản phẩm phần mềm mà mọi người sẵn sàng mua, do đó,
việc tạo ra sản phẩm sai có thể dẫn đến việc không thu được tiền sau thời gian đầu tư. Ngoài
chi phí thời gian, bạn cũng có thể cần thuê dịch vụ của các chuyên gia khác, chẳng hạn như
nghệ sĩ đồ họa, để hỗ trợ sản xuất nội dung để tích hợp trong phần mềm của bạn, do đó, chi
phí đưa sản phẩm của bạn ra thị trường sẽ cao hơn.

49
Machine Translated by Google

Thuận lợi
Giống như phương pháp trước, có một số lợi thế khi xây dựng một doanh nghiệp phần mềm xung
quanh việc phát triển sản phẩm của riêng bạn:

h Quyền kiểm soát của chính bạn: Bạn kiểm soát sản phẩm cuối cùng sẽ như thế nào, nghĩa là ít
có khả năng xảy ra sự cố phát sinh do thay đổi đặc điểm kỹ thuật của dự án

h Hiểu rõ hơn: Với sản phẩm là công việc kinh doanh của chính bạn, bạn
vị trí tốt hơn để hiểu phần mềm cần gì—trái ngược với việc cố gắng hiểu công việc kinh
doanh của người khác

h Tự do và linh hoạt: Bạn có nhiều khả năng thuộc loại tự do để


phát triển các tính năng bạn muốn trong phần mềm của mình

h Tiềm năng tài chính: Có khả năng kiếm được nhiều tiền hơn với sản phẩm phần mềm của riêng
bạn nếu mọi thứ suôn sẻ—so sánh thu nhập lên tới £500 mỗi ngày của các nhà thầu sử dụng
mô hình SDaaS, với thu nhập cao nhất hàng ngày là £7.000 được tạo ra bởi trò chơi độc
lập Ngôi sao bóng đá mới. Sự khác biệt lớn này làm nổi bật lợi ích về khả năng mở rộng
được cung cấp trong mô hình này, trong đó thời gian để tạo ra sản phẩm không tỷ lệ thuận
với số tiền mà nó có thể kiếm được. Ngược lại, việc tăng lợi nhuận khi sử dụng mô hình
SDaaS chỉ có thể đạt được bằng cách đầu tư nhiều thời gian hơn hoặc bằng cách tìm kiếm
khách hàng trả lương cao hơn

Nhược điểm
Sự tự do của mô hình SaaP đi kèm với những nhược điểm riêng để phù hợp với ưu điểm của nó:

h Nguy cơ thất bại cao hơn: Không giống như bán các kỹ năng của bạn với mức phí hàng giờ, có
khả năng không kiếm được tiền nếu bạn phát triển một sản phẩm phần mềm không có nhu cầu
hoặc nếu bạn không có chiến lược tiếp thị phù hợp. Bạn sẽ chỉ biết chắc chắn điều này sau
khi bạn đã phát triển phần mềm của mình, lúc đó đã quá muộn để thu hồi vốn đầu tư thời gian
của bạn. h Cần có thêm các kỹ năng kinh doanh: Để giảm thiểu rủi ro thất bại cao hơn,

cần có thêm kỹ năng và kinh nghiệm trong kinh doanh để đảm bảo đưa ra các quyết định đúng
đắn cho việc phát triển và tiếp thị sản phẩm của bạn. Điều này bao gồm khả năng thực hiện
nghiên cứu thị trường chất lượng cao, thiết kế sản phẩm của bạn phù hợp với các yếu tố đã
biết để thuyết phục mọi người mua nó và cũng như hiểu biết về cách tiếp thị sản phẩm phần
mềm của bạn; bao gồm các lộ trình đến thị trường và hình thành quan hệ đối tác chiến lược.
Thất bại trong bất kỳ vấn đề nào trong số này sẽ ảnh hưởng đến khả năng thu hồi chi phí phát
triển của sản phẩm

50
Machine Translated by Google

h Ít cơ hội học hỏi hơn khi bạn làm việc: Phát triển phần mềm cho riêng bạn
đặc điểm kỹ thuật không có khả năng thay đổi có nghĩa là bạn có ít lý do hơn để tìm
hiểu các mẫu phần mềm cho phép bạn làm cho mã của mình linh hoạt để đáp ứng các yêu
cầu thay đổi trong tương lai. Yếu tố này, kết hợp với tính cấp bách có thể có để
liên tục hoàn thành các sản phẩm của bạn trước khi ngân sách của chúng cạn kiệt, có
thể dẫn đến tình huống bạn không phát triển đủ các kỹ năng kỹ thuật của mình để vẫn
có thể được tuyển dụng với tư cách là nhà phát triển phần mềm nếu có lúc bạn quyết
định ngừng phát triển phần mềm của riêng bạn và quay lại mô hình SDaaS hoặc thoát
khỏi công việc tự kinh doanh và quay lại làm việc cho chủ lao động

h Hậu quả nghiêm trọng hơn đối với những sai lầm: Những sai lầm dẫn đến sản phẩm của
bạn không sẵn sàng để bán trong thời gian bán hàng cao điểm, cũng như trong các
hoạt động tiếp thị và nghiên cứu thị trường đã đề cập trước đó, có thể dẫn đến hậu
quả nghiêm trọng như sản phẩm không bán được hàng . Ngược lại, mô hình SDaaS ít rủi
ro hơn sẽ chỉ dẫn đến việc khách hàng không hài lòng và họ vẫn trả tiền nếu ngày hoàn
thành bị bỏ lỡ

h Cần quản lý dự án: Sự thành công của sản phẩm phần mềm của bạn sẽ phụ thuộc vào khả năng
của bạn để đưa sản phẩm ra thị trường. Điều này có nghĩa là đảm bảo rằng bạn có thể
hoàn thành dự án trong phạm vi ngân sách hiện có—tức là đảm bảo dự án được hoàn thành
đúng hạn và bạn không chi tiêu quá mức khi thuê thêm trợ giúp.
Điều này cũng có nghĩa là bạn cần có kỷ luật cao hơn để không bị Facebook làm phân
tâm!

h Có thể thất bại: Không phải tất cả các sản phẩm của bạn sẽ tạo ra số tiền bạn cần,
nghĩa là sẽ luôn có nguy cơ phiên bản tiếp theo không bán được

h Phát triển phần mềm chủ động: Phần mềm đang được phát triển tốt nhất là dựa trên dự
đoán có học thức về điều gì sẽ tạo ra tiền. Điều này có nghĩa là không có gì đảm bảo
rằng thời gian dành cho việc phát triển phần mềm sẽ chuyển thành một số tiền xứng đáng
với nỗ lực bỏ ra. Điều quan trọng nữa là không tính toán sai cơ hội thành công của bạn
dựa trên sự thiên vị của giới truyền thông; báo, tạp chí, truyền hình và trang web có
xu hướng chỉ đưa tin về những câu chuyện thành công của một số nhà phát triển—tạo ấn
tượng rằng phần lớn các nhà phát triển ứng dụng độc lập đều rất thành công, trong khi
thực tế là hầu hết các ứng dụng đều không tạo ra lợi nhuận

Phần kết luận


Mô hình SaaP có nhiều lợi ích và nguyên nhân đáng lo ngại, mặc dù thuận tiện nhưng lại
khiến nó khó hoạt động hơn so với mô hình SDaaS. Chi phí ban đầu cao hơn cũng có thể là
một rào cản đối với việc bạn có thể làm việc với mô hình này hay không, vì bạn cần phải
có tiền để đầu tư thời gian trả trước vào việc phát triển phần mềm cũng như cần ngân sách
cho bất kỳ trợ giúp bổ sung nào, chẳng hạn như cho sáng tạo nội dung như đồ họa.

51
Machine Translated by Google

Có một số tin tốt có thể giúp vượt qua những rào cản khi làm việc với mô hình này.
Rõ ràng nhất là tìm kiếm các khoản tài trợ và nhà đầu tư, những người sẽ vượt qua các yêu
cầu tài chính để bắt đầu dự án của bạn. Loại nhà đầu tư cần xem xét là các nhà xuất bản phần
mềm, những người có thể hỗ trợ dự án của bạn bằng cách cung cấp tạm ứng cho các khoản thanh toán
tiền bản quyền của bạn bên cạnh việc chăm sóc khía cạnh tiếp thị. Các nhà xuất bản sẽ yêu cầu bạn
phát triển phần mềm phù hợp với tầm nhìn của họ, vì vậy, hãy thương lượng về các tính năng và thực
hiện các thay đổi đối với thiết kế phần mềm ban đầu của bạn; điều này thực sự thay đổi mô hình
của bạn đối với SDaaS. Một cân nhắc khác khi sử dụng nhà xuất bản là bạn nhận được số tiền nhỏ
hơn nhiều trên mỗi đơn vị bán hàng, điều này nghe có vẻ không đáng kể nếu nhà xuất bản có thể tạo
ra doanh số bán hàng nhiều hơn đáng kể so với khả năng bạn có thể làm nếu tự mình tiếp thị.

Nói về việc bắt đầu dự án của bạn, một xu hướng tài trợ gần đây hơn cho loại hình phát
triển phần mềm này là thông qua tài trợ đám đông. Đây là nơi các nhà phát triển phần mềm giới
thiệu ý tưởng của họ cho những người mua tiềm năng trong một cuộc đấu thầu để thu hút mọi người
đóng góp cho các yêu cầu tài trợ của dự án; khác nhau, từ đóng góp nhỏ đến hợp lý lớn. Khả năng
thành công với phương pháp huy động vốn này dựa trên sự kết hợp giữa việc tạo ra lượng lớn nhận
thức cho dự án của bạn và có một thông điệp rõ ràng để thuyết phục mọi người quyên góp số tiền
lớn hơn, do đó tổng số tiền bạn tạo ra là sự kết hợp của quyên góp nhỏ và lớn. Mặc dù bạn cần
trình bày ý tưởng sản phẩm của mình theo cách đủ hấp dẫn để mọi người muốn đầu tư vào nó, nhưng
cách tiếp cận tài trợ này mang lại mức độ linh hoạt cao hơn so với các nguồn tài trợ khác, những
người rất có thể sẽ muốn có khả năng ra lệnh đáng kể. tính năng của sản phẩm cuối cùng. Chắc chắn
bạn nên kiểm tra các nền tảng huy động vốn cộng đồng trực tuyến như Kickstarter.com (https://
www.kickstarter.com) để xem liệu đây có phải là điều đáng xem xét hay không.

Có lẽ không phải ngẫu nhiên mà nhiều nhà phát triển phần mềm phát triển mô hình kinh doanh của
họ từ SDaaS sang SaaP khi cuối cùng họ trở nên tự tin vào sự hiểu biết của mình về cả quá trình
phát triển phần mềm và người dùng phần mềm của họ, nơi họ có thể xác định một thiết kế sản phẩm có
thể được sử dụng để giải quyết các vấn đề mà nhiều người gặp phải. Cách tiếp cận này cho phép việc
phát triển một sản phẩm phần mềm được tạo ra như một dự án phụ, mặc dù mất nhiều thời gian hơn để
phát triển, tránh được gánh nặng tài chính và cũng cho phép sản phẩm được phát triển với cái nhìn
sâu sắc thực sự về các tính năng của sản phẩm phần mềm mà mọi người cần và do đó đã sẵn sàng mua —
trái ngược với việc nhảy vào mô hình này trước và mắc sai lầm do các giả định.

Phần mềm dưới dạng dịch vụ (SaaS)


Sự xuất hiện của truy cập Internet chính thống, tốc độ truyền dữ liệu nhanh và những tiến
bộ về khả năng của trình duyệt web đã mở ra cơ hội cho một loại mô hình kinh doanh phần mềm
mới trong những năm gần đây; đây là đầu ra của phần mềm được bán thay vì bán chính phần mềm đó.

Mô hình SaaS có nhiều điểm tương đồng với việc bán SaaP—đáng chú ý nhất là sự tương đồng trong việc
tập trung vào phát triển phần mềm trả trước và do đó có khả năng cần phải có kinh phí để phát triển
và bất kỳ nghiên cứu cần thiết nào để đảm bảo rằng thiết kế sản phẩm phù hợp với nhu cầu thị trường.

52
Machine Translated by Google

Thuận lợi
SaaS cung cấp các loại lợi thế giống như mô hình SaaP, nhưng có một chút thay đổi:

h Quyền kiểm soát của chính bạn: Giống như việc phát triển SaaP, bạn kiểm soát phần mềm mà bạn đang
phát triển. Sự khác biệt với mô hình này là trọng tâm là loại dịch vụ mà bạn đang tạo phần mềm

để cung cấp

h Tính linh hoạt: Với phần mềm được cung cấp dưới dạng dịch vụ qua Internet, đặc biệt nếu đó là

phần mềm dựa trên web được truy cập thông qua trình duyệt web, các bản cập nhật mới sẽ dễ dàng
được thêm vào mà không cần phân phối phức tạp cho người dùng cuối. Trong trường hợp ứng dụng
web, phiên bản cập nhật sẽ ngay lập tức có sẵn cho người dùng ngay sau khi nó được cài đặt vào

máy chủ web. Điều này có nghĩa là ít cần phải phát triển các tính năng trước hơn và do đó cho
phép dịch vụ phần mềm được đưa ra thị trường sớm hơn với chi phí thấp hơn

h Dòng thu nhập đa dạng: Người dùng chính của dịch vụ phần mềm của bạn có thể hoặc không phải là
những người mua dịch vụ mà bạn bán. Trong trường hợp của các mạng xã hội như LinkedIn, Facebook

và Twitter, dịch vụ được bán là quảng cáo, do đó khách hàng trả tiền của họ là các nhà tiếp
thị. Điều quan trọng là phải phân biệt ai là khách hàng trả tiền của bạn để bạn không lơ là

trong việc phát triển các tính năng cần thiết để bán hàng; trong trường hợp của Facebook, các
nhà tiếp thị được cung cấp các công cụ mạnh mẽ có thể làm cho quảng cáo của họ được nhắm mục

tiêu cao. Có kế hoạch kiếm tiền ngay từ đầu cũng giúp tránh trường hợp bạn có được cơ sở người
dùng từ chối thanh toán đủ để bạn kiếm lợi nhuận và sử dụng tài nguyên quá mức làm tăng chi phí

hoạt động của bạn—đặc biệt nếu dịch vụ phần mềm của bạn là dựa trên việc sử dụng nhiều dữ liệu
như video, âm thanh và hình ảnh lớn

h Tiềm năng tài chính: Giống như mô hình SaaP, có khả năng kiếm được nhiều tiền hơn mà không

cần tăng yêu cầu về thời gian một cách tương ứng. So với các nhà phát triển phần mềm sử

dụng mô hình SDaaS để tính phí tới 10.000 bảng Anh cho 20 ngày làm việc cường độ cao,
trong khi một dịch vụ phần mềm lâu đời với 400 người đăng ký trả 25 bảng Anh mỗi tháng có

thể phù hợp với điều này chỉ với sự hỗ trợ của người dùng thông thường như công việc thực
tế. Mô hình này thậm chí còn có nhiều tiềm năng tài chính hơn nếu bạn có thể nhắm mục tiêu
đến các phân khúc thị trường cao cấp muốn mua các đăng ký có giá trị cao hơn giúp bạn kiếm

được từ £12.000 đến hơn £20.000 mỗi năm

h Thu nhập liên tục: Không giống như mô hình SaaP nơi doanh số bán hàng diễn ra một lần và

bán hàng lặp lại đòi hỏi nhiều nỗ lực hơn để sản xuất và tiếp thị các phiên bản phần mềm
mới, những người đăng ký hệ thống SaaS trả phí đăng ký liên tục. Điều này có nghĩa là bạn
chỉ cần giữ chân khách hàng bằng cách giữ cho hệ thống phù hợp với nhu cầu của họ và để mắt

đến sự hài lòng của khách hàng. Điều này cũng có nghĩa là có phạm vi để phát triển doanh
nghiệp xung quanh phần mềm của bạn—trái ngược với vận may thành công và thất bại của mô hình
SaaP

53
Machine Translated by Google

Nhược điểm
Nhược điểm của mô hình SaaS chủ yếu là sự phát triển của mô hình SaaP:

h Chi phí bổ sung: Với mô hình này, bạn phải cung cấp dịch vụ lưu trữ cho
dịch vụ phần mềm, sẽ có thêm chi phí thuê ít nhất một máy chủ để dịch vụ phần mềm
của bạn có sẵn trực tuyến. Độ tin cậy về tính khả dụng của dịch vụ phần mềm của bạn là
rất quan trọng nếu bạn muốn mọi người tiếp tục đăng ký, vì vậy không nên cắt giảm chi
phí để mua dịch vụ lưu trữ rẻ hơn không đảm bảo thời gian hoạt động tốt. Đây là một
vấn đề đáng lo ngại khi sử dụng dịch vụ lưu trữ chia sẻ, trong đó mã của những người
dùng khác trên máy chủ có thể dẫn đến ứng dụng web của bạn bị ngoại tuyến h Cần phân

tích chi phí nhiều hơn: Không giống như mô hình SaaP, bạn cũng có thể yêu cầu khả năng lưu
trữ và băng thông bổ sung khi bạn bán nhiều đăng ký hơn cho dịch vụ phần mềm của bạn—
đặc biệt nếu các tính năng phần mềm của bạn tạo ra dữ liệu hoặc chấp nhận tải tài liệu
lên. Điều này dẫn đến các yêu cầu cao hơn để phân tích chi phí liên quan đến việc sử
dụng của người dùng để đảm bảo rằng bất cứ điều gì họ đang trả không làm tăng chi phí
của bạn theo cách khiến đăng ký của họ không sinh lời

h Có nhiều rủi ro hơn: Với khả năng mắc sai lầm trong phân tích chi phí cũng như các
rủi ro khác như hack trực tuyến, có khả năng xảy ra nhiều sai sót hơn so với phần
mềm được bán cho người dùng theo cách sử dụng phần mềm của họ. tài nguyên phần
cứng riêng

h Cần quản lý dự án: Cũng giống như cách quản lý dự án


cần thiết cho mô hình SaaP và vì những lý do tương tự

h Phát triển phần mềm chủ động: Nhu cầu về các dịch vụ được cung cấp thông qua
phần mềm tốt nhất là dựa trên phỏng đoán có học, không có gì đảm bảo rằng có thể thu
hút đủ người trả số tiền cần thiết để hòa vốn hoặc tạo ra lợi nhuận. Kết quả có thể
là một bài tập tốn kém để xác định rằng không có đủ sự quan tâm để dịch vụ phần mềm
có thể tồn tại như một doanh nghiệp, do đó lãng phí thời gian trong việc phát triển
phần mềm

Phần kết luận


Mô hình SaaS cung cấp nhiều tự do hơn và tiềm năng thu nhập cao hơn nhiều, nhưng phải trả
giá bằng rủi ro cao hơn. Không giống như mô hình SaaP mà mô hình này đã phát triển từ đó, có
một số rủi ro và chi phí bổ sung tăng lên cùng với sự thành công của mô hình này. Chính vì
lý do này mà cần phải đầu tư nhiều thời gian và công sức hơn vào việc lập kế hoạch kinh doanh
ở bất cứ nơi nào mô hình này được sử dụng vì những sai lầm trong việc xác định chi phí vận
hành dịch vụ có thể dẫn đến thất thoát một số tiền đáng kể do các chi phí không mong muốn.

54
Machine Translated by Google

Rủi ro chính của mô hình SaaS xoay quanh việc nó phụ thuộc vào việc sử dụng tài nguyên máy
chủ mà bạn chịu trách nhiệm duy trì và trả tiền. Khi người dùng bắt đầu yêu cầu nhiều tài nguyên
hơn so với kế hoạch kinh doanh của bạn đáp ứng, bạn sẽ nhanh chóng tìm ra lỗi nằm ở đâu trong kế
hoạch tài chính của mình. Cho dù bạn lập kế hoạch tài chính cho chiến lược của mình dựa trên mô
hình này tốt đến mức nào, thì bạn vẫn nên lường trước một số sự kiện bất ngờ xảy ra sẽ làm lộ ra
những điểm yếu trong cấu trúc chi phí của bạn—và do đó có thể khắc phục điều này càng sớm càng tốt.

Các rủi ro chính liên quan đến mô hình này khiến việc tạo phiên bản beta của phần mềm trước
khi khởi chạy phần mềm trở nên quan trọng hơn để có thể xác định sớm các mối đe dọa đối với thành
công tài chính của bạn và giải quyết bằng dữ liệu sử dụng đáng tin cậy từ những người dùng thực
trong hệ thống của bạn. Điều này giúp tránh các bản sửa lỗi dựa trên các giả định về nguyên nhân
của vấn đề mà sau này hóa ra là không chính xác và dẫn đến vấn đề tương tự trên quy mô lớn hơn.
Phiên bản beta cũng giúp phơi bày các loại vấn đề khác ngoài những vấn đề liên quan đến kế hoạch
tài chính của bạn, đặc biệt khi nói đến các vấn đề như bảo mật dữ liệu đe dọa làm tê liệt cả khả
năng cung cấp dịch vụ bạn bán của hệ thống và gây tổn hại đến niềm tin của khách hàng.
Mất một trong hai điều này có thể dẫn đến việc doanh nghiệp của bạn rơi vào tình thế mất tiền do
hành động pháp lý và danh tiếng khiến bạn không thể thu hút được số lượng khách hàng mà bạn cần
để sinh lãi. Khởi chạy phiên bản beta của dịch vụ phần mềm của bạn là một cách hiệu quả để bảo vệ
khỏi loại tình huống này bằng cách nhấn mạnh rằng phần mềm chưa hoàn thiện đầy đủ và do đó người
dùng chấp nhận khả năng xảy ra các tình huống không mong muốn— nghĩa là người dùng đồng ý rằng
việc sử dụng hệ thống là tùy ý họ. rủi ro của chính mình.

Hơn nữa, kiến trúc của hệ thống phần mềm có thể được thực hiện để giảm thiểu rủi ro mà mô hình
này gây ra cho bạn. Những tiến bộ hiện đại của trình duyệt web cho phép phần mềm dựa trên web
lưu trữ dữ liệu trên máy tính của người dùng và cũng để truy cập ngoại tuyến vào chức năng.
Điều này mở ra cơ hội cho bạn thiết kế quá trình chuyển đổi phần mềm và lưu trữ dữ liệu
sang phần cứng của người dùng, nghĩa là máy chủ của bạn có thể quản lý nhiều yêu cầu của người
dùng hơn bằng cách giảm tải quá trình xử lý dữ liệu cho máy tính của người dùng, đồng thời giảm
nhu cầu lưu trữ và xử lý dữ liệu người dùng. Kết quả của việc tích hợp các loại tính năng này vào
kiến trúc hệ thống của bạn sẽ là yêu cầu ít tài nguyên máy chủ hơn để phục vụ cơ sở người dùng
của bạn khi doanh nghiệp của bạn phát triển, do đó chi phí vận hành thấp hơn và khả năng loại bỏ
rủi ro do việc sử dụng không mong muốn từ những người dùng sử dụng nhiều tài nguyên hơn kế hoạch
tài chính của bạn phù hợp. Việc phân cấp dữ liệu người dùng của bạn cũng mở ra khả năng giảm tác
động của các vi phạm bảo mật dữ liệu trên (các) máy chủ chính của bạn bằng cách không có một vị
trí đã biết để tấn công.

Giống như mô hình SaaP, bắt đầu với tham vọng quy mô nhỏ sẽ giảm rủi ro phát triển dịch vụ
phần mềm với các tính năng đắt tiền để phát triển không được sử dụng đủ để biện minh cho sự phát
triển của chúng. Bắt đầu kinh doanh dựa trên mô hình này với một dịch vụ cụ thể và đơn giản để
triển khai cho phép loại hệ thống này tiếp cận thị trường sớm hơn, do đó các quyết định trong
tương lai về các tính năng có thể bị ảnh hưởng trực tiếp bởi phản hồi của người dùng, đặc biệt là
khi xác định tính năng nào có thể được kiếm tiền.

55
Machine Translated by Google

Phần mềm hỗ trợ một dịch vụ


Mô hình kinh doanh phần mềm cuối cùng mà chúng tôi xem xét hoàn toàn trái ngược với các mô hình
trước đó, nơi kinh doanh tập trung vào đầu ra của phần mềm, cho dù đây là việc tạo ra chính phần
mềm hay kết quả mà nó tạo ra. Phần mềm hỗ trợ một mô hình dịch vụ cố ý chuyển hệ thống phần mềm
thành vai trò hỗ trợ không phải là một phần của mô tả dịch vụ được bán. Điều này không có nghĩa là
phần mềm trở nên không phù hợp trong mô hình này; đó là về việc phần mềm là một cơ chế cho phép cung
cấp các tính năng dịch vụ.

Mô hình này thường được sử dụng nhiều hơn cho các phòng ban trong các tổ chức lớn hơn, đặc biệt là
khi có sự phụ thuộc vào các nguồn lực được phát triển nội bộ để hỗ trợ các hoạt động của nó.
Một ví dụ điển hình thành công của mô hình này đang được sử dụng là Uber; một dịch vụ taxi dựa
trên Internet có hoạt động phụ thuộc vào việc sử dụng ứng dụng điện thoại của họ để cung cấp cho khách
hàng các tính năng phần mềm để yêu cầu đi xe. Các tính năng phần mềm này được sử dụng để tạo thuận lợi
cho mọi thứ, từ việc ghi lại chi tiết hành trình và chỉ định người lái xe phù hợp nhất, cho đến thanh
toán cho hành trình và tạo điều kiện thuận lợi cho các thông tin khác.

Thuận lợi
Phần mềm hỗ trợ một mô hình dịch vụ là duy nhất theo cách nó cho phép bạn kiếm tiền khi phần mềm đang
được phát triển. Điều này mang lại một số lợi thế khi nói đến chi phí khởi động và giảm thiểu rủi ro:

h Rào cản gia nhập thấp hơn: Không giống như các mô hình kinh doanh phần mềm khác, bạn có
thể bắt đầu giao dịch mà không cần viết bất kỳ mã nào, do đó cho phép bạn bắt đầu công
việc kinh doanh của mình một cách nhanh chóng. sử dụng tiền thu được từ việc bán dịch

vụ để tài trợ cho việc phát triển hệ thống phần mềm. Điều này có nghĩa là bạn tránh khả năng
đầu tư thời gian vào một dự án phần mềm không tạo ra đủ tiền để biện minh cho thời gian
đầu tư, hoặc tầm nhìn của bạn về doanh nghiệp bị gián đoạn do nhu cầu đáp ứng nhu cầu của
các nhà đầu tư mà bạn đã nhận được tiền từ họ. tài trợ cho chi phí phát triển phần mềm

h Có thể làm cho các dịch vụ không sinh lợi có lợi nhuận cao: Các quy trình có lợi nhuận cao
chi phí thời gian thường có thể được tự động hóa thông qua việc sử dụng phần mềm, do đó
giảm chi phí liên quan đến việc cung cấp dịch vụ để cải thiện khả năng sinh lời đến mức
không thể

h Cơ hội cung cấp các danh mục dịch vụ mới: Được biết đến trong kinh doanh
trong Chiến lược Đại dương xanh, việc điều chỉnh các dịch vụ kinh doanh để cung cấp các yếu
tố độc đáo không được cung cấp ở nơi khác có thể đạt được thông qua việc sử dụng phần mềm.
Điều này có thể dẫn đến việc có thể nhắm mục tiêu những khách hàng mới sẵn sàng trả phí,
tạo ra tác động đáng kể đến tiềm năng lợi nhuận, đặc biệt nếu bạn đang hoạt động trong một
thị trường bão hòa buộc bạn phải hoạt động với tỷ suất lợi nhuận thấp để duy trì tính cạnh
tranh

56
Machine Translated by Google

h Thiết kế phần mềm phản ứng: Khả năng bán dịch vụ trước khi thiết kế

phần mềm cho phép bạn trực tiếp xác định những gì phần mềm cần làm để hỗ trợ các dịch vụ của

bạn. Điều này có thể là để cải thiện chất lượng dịch vụ của bạn nhằm mang lại cho bạn một điểm

bán hàng độc đáo hoặc thường xuyên hơn là để cho phép bạn hoạt động hiệu quả hơn để bạn có thể

tăng tỷ suất lợi nhuận hoặc cạnh tranh hơn về giá

Nhược điểm
Mặc dù phần mềm hỗ trợ doanh nghiệp có lợi thế khi bắt đầu và loại linh hoạt mà nó cung cấp để giảm rủi ro

liên quan đến các mô hình khác, nhưng nó cũng có một số nhược điểm riêng như:

h Phát triển phần mềm là một chi phí: Bất kể bạn nhìn vào đóng góp của nó cho doanh nghiệp như

thế nào, mỗi giờ dành cho việc phát triển thêm phần mềm là một chi phí cần được tài trợ

bằng thời gian dành cho các hoạt động kiếm tiền. Điều này có nghĩa là cần phải biện minh cho

việc phát triển tính năng phần mềm trên cơ sở cách nó hỗ trợ các dịch vụ được bán để trở nên

sinh lời nhiều hơn hoặc nắm bắt các dịch vụ mới.
khách hàng

h Phát triển phần mềm được quyết định bởi nhu cầu dịch vụ: Sự thành công của doanh nghiệp phụ thuộc

vào các dịch vụ được bán và không nhất thiết là phần mềm; do đó, nhu cầu trước mắt của các

dịch vụ sẽ quyết định những gì khả thi để phát triển như một phần của hệ thống phần mềm. Điều

này không tốt nếu các tính năng bạn muốn phát triển không thể được chứng minh bằng số lượng

khách hàng dịch vụ trả tiền, điều đó sẽ có lợi h Phát triển phần mềm cạnh tranh với thời gian

dịch vụ: Nếu bạn là cá nhân

cung cấp các dịch vụ mà phần mềm được thiết kế để hỗ trợ, sẽ có khả năng xảy ra xung đột trong

việc quản lý thời gian của bạn về lượng thời gian bạn dành cho các dịch vụ mà bạn bán và thời

gian bạn đầu tư vào việc phát triển phần mềm.

Việc giới hạn thời gian phát triển phần mềm của bạn để tạo thu nhập từ dịch vụ của bạn sẽ khiến

phần mềm mất nhiều thời gian hơn để khởi chạy nhằm hỗ trợ dịch vụ của bạn, điều này có thể dẫn

đến mất cơ hội tối đa hóa lợi nhuận, phát triển dịch vụ theo cách giành được doanh số bán hàng

mới hoặc chỉ đơn giản là giữ chân các khách hàng hiện tại thông qua việc tăng sự hài lòng và/

hoặc khả năng cạnh tranh về giá mà hệ thống phần mềm sẽ cho phép thông qua việc hỗ trợ các hoạt

động kinh doanh

Phần kết luận


Phần mềm hỗ trợ mô hình dịch vụ có thể là mô hình dễ thực hiện nhất mà không yêu cầu đầu tư ban đầu

và giảm thiểu rủi ro phát triển các tính năng phần mềm không sử dụng làm giảm lợi nhuận. Với các tùy

chọn để phát triển phần mềm khi các dịch vụ đang được cung cấp, bạn có thể tìm hiểu về các yêu cầu phần

mềm khi cung cấp dịch vụ của mình, nghĩa là bạn có thể tài trợ cho việc nghiên cứu và phát triển hệ thống

phần mềm của mình từ việc bán các dịch vụ của mình trước khi bắt đầu sử dụng phần mềm phát triển.

57
Machine Translated by Google

Thành công với mô hình này đòi hỏi bạn phải hiểu đầy đủ vai trò của phần mềm trong việc
hỗ trợ các dịch vụ được bán. Với việc bản thân phần mềm không trực tiếp chịu trách nhiệm kiếm
tiền, các tính năng của phần mềm cần được thiết kế một cách chiến lược để hỗ trợ các hoạt
động kinh doanh tạo ra tiền, có thể là tạo ra nhiều doanh thu hơn, giữ chân khách hàng hoặc
tăng hiệu quả để cải thiện tỷ suất lợi nhuận. Hiểu cách xác định mục đích của phần mềm trong
mô hình này là sự khác biệt giữa phần mềm của bạn là một thành phần quan trọng của một doanh
nghiệp thành công hay không cung cấp bất kỳ hỗ trợ có ý nghĩa nào để biện minh cho chi phí phát
triển phần mềm.

Điều quan trọng là phải phân bổ đúng lượng thời gian giữa các hoạt động kiếm tiền mà phần
mềm hỗ trợ và sự phát triển của phần mềm. Mặc dù việc phát triển phần mềm là chi phí ban đầu đối
với toàn bộ doanh nghiệp, nhưng chính thành phần phần mềm mà bạn đang phát triển có thể được sử
dụng để mở hoặc tận dụng các cơ hội làm tăng tiềm năng thu nhập của bạn. Bỏ qua việc phát triển
phần mềm của bạn để tập trung vào các hoạt động kiếm tiền ngắn hạn có thể làm hỏng các khả năng dài
hạn. Điều này đáng lo ngại khi các cơ hội chỉ tồn tại trong một thời gian giới hạn, khi việc trì hoãn
phát triển phần mềm của bạn sẽ dẫn đến việc bỏ lỡ các cơ hội và dẫn đến phần mềm của bạn không có mục
đích gì vào thời điểm nó được hoàn thành.

Với suy nghĩ này, cần phải kết hợp đánh giá rủi ro vào việc lập kế hoạch dự án của bạn,
cho phép bạn cân nhắc xem các mục tiêu của phần mềm mà bạn phát triển có thể đạt được hay
không trước khi bạn đầu tư thời gian vào việc phát triển phần mềm.

Canvas mô hình kinh doanh


Khi bạn đã xác định được loại mô hình kinh doanh sẽ sử dụng, bước tiếp theo là xác định cấu
trúc để vận hành. Khung mô hình kinh doanh là một công cụ hữu ích có thể được sử dụng để xác
định các thành phần trong mô hình của bạn và trực quan hóa các mối quan hệ của chúng nhằm xác
định cách chúng hoạt động.

Các thành phần


Bước đầu tiên trong việc xây dựng Khung mô hình kinh doanh là xác định các thành phần
khác nhau sẽ tạo nên mô hình kinh doanh của bạn. Mỗi doanh nghiệp là duy nhất theo một cách nào
đó, vì vậy mặc dù bạn có thể sử dụng cùng một mô hình chung như nhiều doanh nghiệp phần mềm khác,
nhưng sẽ luôn có một số khác biệt trong cách bạn được cấu trúc để vận hành. Biết chi tiết cách thức
hoạt động của mô hình và điều gì làm cho nó trở nên độc đáo sẽ cho phép bạn vận hành và đưa ra
quyết định phát huy thế mạnh của mình.

58
Machine Translated by Google

đề xuất giá trị


Bắt đầu thiết kế mô hình kinh doanh của bạn với việc xác định những gì bạn cung cấp cho khách hàng
sẽ giúp xác định các yêu cầu đối với từng thành phần khác trong mô hình của bạn. Đề xuất giá trị
không phải là về những gì bạn làm, mà là lý do tại sao mọi người mua hàng của bạn; những gì chúng tôi
làm với tư cách là nhà phát triển phần mềm là viết mã, nhưng lý do thúc đẩy khách hàng mua hàng của
chúng tôi lại là chức năng của phần mềm. Cho dù nó cung cấp giải pháp cho sự nhàm chán về hình thức
hay giải trí, giải quyết nhu cầu đạt được kết quả học tập tốt hơn hay quản lý doanh số bán hàng cho
một doanh nghiệp, đây đều là những giá trị thúc đẩy mọi người sử dụng phần mềm.

Hiểu những gì khách hàng của bạn muốn sẽ cho phép bạn xây dựng mô hình kinh doanh và phần mềm của
mình theo cách làm cho nó hấp dẫn và kết quả là dễ tiếp thị hơn.

Các cân nhắc chính bao gồm:

h Điều gì khiến khách hàng muốn mua hàng của bạn? h Bạn

cung cấp những gì khác mà khách hàng sẽ cần?

quan hệ đối tác quan trọng

Các đối tác chính trong mô hình của bạn là những người và tổ chức là nhà cung cấp hoặc cộng tác viên.
Bạn không thể tự mình làm mọi thứ, do đó các đối tác chính rất quan trọng trong việc cho phép bạn
thực hiện kế hoạch kinh doanh của mình—đặc biệt là khi họ có thể cung cấp những đóng góp của họ với
chất lượng cao hơn và với chi phí thấp hơn so với khi bạn tự làm. Cần thận trọng khi chọn các đối
tác chính có thể hoạt động theo cách tương thích với cấu trúc mô hình của bạn và có thể mang lại lợi
ích cho doanh nghiệp của bạn.

Cân nhắc chính:

h Ai la nguoi ban phai lam viec va cung cap cho ban? h Lợi ích khi làm

việc với những người này là gì?

tài nguyên chính


Ngoài những người bạn cần làm việc cùng hoặc cung cấp cho bạn, còn có những công cụ và tài liệu bạn
cần tận dụng để đưa ra đề xuất giá trị của mình. Các tài nguyên này thường được liên kết với các hoạt
động chính, chẳng hạn như máy tính của bạn để lập trình, các thiết bị như điện thoại thông minh để
thử nghiệm và máy chủ để lưu trữ hệ thống trực tuyến của bạn.

59
Machine Translated by Google

Cân nhắc chính:

h Những nguồn lực nào được yêu cầu để cung cấp đề xuất giá trị của

bạn? h Những nguồn lực nào được yêu cầu để hỗ trợ? h Quan hệ khách

hàng

h Dòng doanh thu

h Kênh phân phối

Hoạt động chính


Đây là những hoạt động quan trọng mà doanh nghiệp của bạn phải thực hiện để hoàn thành đề xuất
giá trị khiến khách hàng muốn mua hàng của bạn. Với việc doanh nghiệp của bạn được định hướng
theo phần mềm, rất nhiều hoạt động chính sẽ liên quan đến việc phát triển và bảo trì phần mềm
của bạn. Các mô hình dựa trên phần mềm hỗ trợ một dịch vụ cũng có khả năng có thêm các hoạt
động kiếm tiền được liệt kê trong danh mục này.

Cân nhắc chính:

h Các hoạt động được yêu cầu bởi tuyên bố giá trị của bạn là

gì? h Quan hệ khách hàng

h Dòng doanh thu

h Kênh phân phối

Mối quan hệ khách hàng


Không nên đánh giá thấp tầm quan trọng của việc xác định loại mối quan hệ với khách hàng của bạn.
Nếu bạn nói chuyện với bất kỳ ai có đủ kinh nghiệm trong kinh doanh, đặc biệt là tiếp thị, thì
thông điệp nhất quán mà bạn sẽ nhận được về việc mua hàng là tùy thuộc vào người ra quyết định muốn
hợp tác kinh doanh với ai. Việc quản lý các mối quan hệ khách hàng của bạn rất quan trọng vì việc
có một sản phẩm hoặc dịch vụ tuyệt vời sẽ trở nên không cần thiết nếu mọi người không muốn hợp tác
kinh doanh với bạn.

Mối quan hệ khách hàng có nhiều hình thức, nhưng từ góc độ tiếp thị, phẩm chất duy
nhất trong mối quan hệ khách hàng là những phẩm chất thuyết phục khách hàng tiếp tục mua
hàng của bạn. Tùy thuộc vào những gì bạn đang bán, các yếu tố quan trọng có thể là sự
tin tưởng, tự tin, hài lòng, thích thú, ngưỡng mộ hoặc điều gì khác liên quan đến nhận thức
của khách hàng về giao dịch của họ với bạn. Bằng cách hiểu khách hàng của mình, bạn có thể
xác định yếu tố nào trong mối quan hệ khách hàng là quan trọng nhất đối với họ để xây dựng
lòng trung thành với thương hiệu của bạn.

Cân nhắc chính:

h Bạn mong đợi loại mối quan hệ nào từ khách hàng? h Làm cách nào

bạn có thể tích hợp mối quan hệ dự kiến vào các hoạt động của mình? h Chi

phí tích hợp mối quan hệ dự kiến vào hoạt động của bạn là bao nhiêu?

60
Machine Translated by Google

Phân khúc khách hàng


Việc xác định các phân khúc thị trường mà khách hàng của bạn tồn tại trong đó cho phép bạn đưa ra

mức độ cụ thể cao trong việc cung cấp dịch vụ và hoạt động tiếp thị của mình. Việc hiểu các phân

khúc khách hàng của bạn sẽ cho phép bạn so khớp đề xuất giá trị phù hợp sử dụng cấu trúc chi phí cần
thiết và thông điệp tiếp thị được gửi qua các kênh phân phối cần thiết để đạt được doanh số mục tiêu.

Cân nhắc chính:

h Bạn đang tạo ra giá trị cho những nhóm khách hàng nào? h Loại khách hàng

nào là quan trọng nhất? h Tại sao danh mục khách hàng quan trọng nhất của

bạn lại quan trọng?

¾ âm lượng

¾ Tỷ suất lợi nhuận ¾

Tiềm năng về mức độ trung thành

¾ Lý do khác

Kênh phân phối

Các kênh mà khách hàng của bạn có thể tiếp cận thông qua có thể có tác động lớn đến sự phát triển của
chiến lược tiếp thị, thông điệp và có thể cả sản phẩm/dịch vụ của bạn.

Doanh số bán hàng và do đó lợi nhuận phụ thuộc vào việc được chú ý bởi những kiểu người mà bạn muốn
mua sản phẩm của mình, do đó, hiểu cách bạn có thể đưa sản phẩm, thương hiệu và thông điệp của mình tới

họ sẽ tạo ra sự khác biệt giữa việc tạo ra kiểu bán hàng xác định thành công hay thất bại.

Sau đây là những cân nhắc chính:

h Khách hàng của bạn tiếp cận với những kênh nào? h Kênh nào

hiệu quả nhất?

h Chi phí liên quan đến mỗi kênh là gì?

h Những kênh nào mang lại giá trị cao nhất?

h Làm thế nào để bạn đo lường thành công với các kênh?

¾ Bán hàng

¾ Tương tác ¾

Nhận biết thương hiệu

h Khách hàng sử dụng các kênh như thế nào?

h Làm thế nào các kênh có thể được tích hợp vào các hoạt động của bạn?

61
Machine Translated by Google

Cơ cấu chi phí

Hiểu được các chi phí liên quan đến việc phát triển và phân phối sản phẩm hoặc dịch vụ của bạn
sẽ cho phép bạn đưa ra các quyết định về giá tốt hơn để tránh rủi ro không cần thiết.

Sự hiểu biết này không chỉ cho phép bạn xác định giá bán và số lượng cần thiết để hòa vốn mà còn cả
các tùy chọn có sẵn để nhắm mục tiêu các phân khúc khách hàng khác nhau.

Kết quả của cuộc điều tra dẫn đến việc xác định các kết hợp tính năng/chất lượng có thể phù
hợp với các phân khúc khách hàng; đến lượt nó có thể được đóng gói như một phần của đề xuất

giá trị có thể mang lại lợi nhuận.

Điều quan trọng là phải tính đến việc không phải tất cả các chi phí đều quy mô với doanh số bán hàng
của bạn. Ví dụ: tiếp thị liên quan đến quảng cáo có thể có chi phí cố định bất kể họ tạo ra bao nhiêu

doanh số bán hàng, nghĩa là cần có số lượng bán hàng tối thiểu để thu hồi chi phí trả trước trước khi
tạo ra lợi nhuận. Những yếu tố này cần được xem xét khi xác định các mục tiêu bán hàng—và liệu những
yếu tố này có thực tế để đạt được hay không.

Cân nhắc chính:

h Các chi phí liên quan đến việc điều hành doanh nghiệp của bạn là gì?

h Chi phí nào là cố định?

h Quy mô chi phí nào với số lượng hàng bán cần thiết?

h Các chi phí cho mỗi đơn vị sản phẩm là gì?

Những nguồn doanh thu

Như đã trình bày trong bốn mô hình kinh doanh phần mềm, có nhiều cách khác nhau để phần mềm của bạn có
thể kiếm tiền tùy thuộc vào mô hình bạn đang sử dụng. Các luồng doanh thu xác định các tính năng hoặc

hoạt động cụ thể của sản phẩm/dịch vụ dựa trên phần mềm của bạn để tạo ra thu nhập. Điều quan trọng là
phải xác định rằng không phải mọi tính năng hoặc hoạt động bạn tham gia để phát triển hoặc phân phối đều

tạo ra tiền cho doanh nghiệp của bạn. Nhận thức được các loại tính năng và/hoặc hoạt động tạo ra tiền
cũng cho phép bạn thiết kế chiến lược sản phẩm/dịch vụ của mình theo cách có thể nhắm mục tiêu đến lợi
ích của các phân khúc khách hàng để cung cấp các đề xuất giá trị thu hút các lợi ích cụ thể của họ.

Cân nhắc chính:

h Những đề xuất giá trị nào mà phân khúc khách hàng của bạn sẵn sàng trả tiền? h Phân

khúc khách hàng của bạn sử dụng những phương thức nào để thanh toán cho bạn? h Các phân

khúc khách hàng của bạn muốn trả tiền cho bạn như thế nào?

h Đóng góp của từng dòng doanh thu vào tổng doanh thu là bao nhiêu?

62
Machine Translated by Google

Tranh sơn dầu

Khung vẽ là một công cụ trực quan cho phép liệt kê trực quan tất cả các thành phần và có liên
quan dưới dạng sơ đồ. Trường hợp canvas được viết trên bảng trắng hoặc áp phích lớn, có thể sử dụng
ghi chú dán để bổ sung và chỉnh sửa linh hoạt các thành phần:

Hình 3.2: Bố cục của Khung mô hình kinh doanh.

công cụ vấn đề
Có những công cụ bổ sung mà bạn có thể sử dụng như một phần trong định nghĩa mô hình kinh doanh của
mình. Cho đến nay, với trọng tâm là xác định bức tranh toàn cảnh hơn về các mô hình kinh doanh phần
mềm và cách xác định chúng thông qua Khung mô hình kinh doanh, cũng có những công cụ khác mà bạn có
thể sử dụng để giải quyết các vấn đề cụ thể mà bạn gặp phải trong kinh doanh.

63
Machine Translated by Google

vòng đời sản phẩm


Liên quan đến các mô hình kinh doanh dựa vào việc bán một sản phẩm hoặc dịch vụ chỉ có thể bán một lần, vòng

đời sản phẩm mô tả từng giai đoạn mà sản phẩm trải qua, từ đầu đến cuối. Hiểu các giai đoạn này cho phép bạn xác

định vị trí hiện tại của sản phẩm liên quan đến khả năng sinh lời của nó để bạn có thể dự đoán doanh số bán hàng

sắp tới và chuẩn bị hành động khi doanh số bán hàng và lợi nhuận bắt đầu giảm.

Hình 3.3: Các giai đoạn của vòng đời sản phẩm liên quan đến thời gian, lãi và lỗ.

Phát triển
Giai đoạn đầu tiên của vòng đời sản phẩm là phát triển sản phẩm. Như được chỉ ra trong Hình 3.3, giai đoạn phát

triển được tạo ra khi thua lỗ. Trong các dự án thực tế, có thể có sự gia tăng mạnh hơn về tổn thất do phát triển

phần mềm tạo ra trước khi chi phí bắt đầu giảm vào cuối quá trình phát triển sản phẩm.

Xu hướng chính:

h Tổn thất gia tăng xảy ra do chi phí phát triển h Mở rộng quá trình phát

triển do trễ thời hạn và/hoặc các yếu tố không xác định

Giới thiệu
Giai đoạn giới thiệu là nơi sản phẩm được tung ra thị trường, sẵn sàng cho khách hàng mua sản phẩm. Ngoại trừ

các sản phẩm nổi tiếng, doanh số bán hàng có thể bắt đầu khá thấp cho đến khi chiến dịch tiếp thị và truyền miệng

phát huy tác dụng trong việc nâng cao doanh số bán hàng. Ở giai đoạn này, rất cần tạo ra nhận thức để khách hàng

tiềm năng nhận thức được sản phẩm, khả năng của sản phẩm cũng như cách sản phẩm đáp ứng nhu cầu và sở thích của họ.

64
Machine Translated by Google

Những khách hàng mua sản phẩm trong giai đoạn này của vòng đời sản phẩm thường được gọi là những người chấp nhận

sớm - những người muốn có công nghệ mới nhất và sẵn sàng chấp nhận rủi ro khi mua hàng không đáp ứng được tiềm năng

đầy đủ hoặc mong đợi của họ. Giai đoạn này thường có chi phí tiếp thị cao để tạo ra nhận thức về những gì thường là

một thị trường nhỏ.

Xu hướng chính:

h Đầu tư nhiều vào các chương trình khuyến mãi tiếp thị để thông báo cho mọi người và nâng cao nhận thức về

các đề xuất giá trị

h Kích thích nhu cầu thông qua giảm giá h Nhấn mạnh vào các hoạt

động tiếp thị có mục tiêu nhằm vào những người chấp nhận sớm và sử dụng họ để trở thành đại sứ thương hiệu để

tạo ra các khuyến nghị truyền miệng

Sự phát triển

Sau khi sản phẩm của bạn được giới thiệu ra thị trường và đã thu hút được sự chú ý của những người sử dụng

sớm, doanh số bán hàng bắt đầu chuyển hướng sang những khách hàng phổ thông, những người đưa ra quyết định mua hàng

dựa trên danh tiếng của sản phẩm và nơi các đề xuất giá trị của sản phẩm đáp ứng các giá trị cốt lõi, nhu cầu và sở

thích của họ. Tăng doanh số bán hàng để tiếp cận khách hàng phổ thông đòi hỏi phải có giai đoạn giới thiệu thành

công để tạo niềm tin vào sản phẩm, do đó cần phải kiểm soát chất lượng tốt.

Xu hướng chính:

h Quảng cáo được thiết kế để thúc đẩy nhận thức về thương hiệu đến nhiều khách hàng hơn

phân khúc

h Tăng số lượng kênh phân phối mà sản phẩm có sẵn h Sử dụng phản hồi của người dùng sớm để khắc phục những

sai sót và cải thiện các đề xuất giá trị

Trưởng thành và bão hòa


Khi sản phẩm đã được thị trường đại chúng biết đến, khả năng tiếp cận khách hàng mới của sản phẩm trở nên hạn

chế và do đó tốc độ tăng trưởng doanh số bán hàng của nó bắt đầu chậm lại đến mức không thể tăng thêm nữa. Cũng

chính trong giai đoạn này, sự thành công của sản phẩm sẽ thu hút sự chú ý của các đối thủ cạnh tranh, những người

sẽ tung ra các sản phẩm bắt chước sản phẩm của chính họ để giành lấy một phần thị trường—một yếu tố khác sẽ làm giảm

tiềm năng bán hàng của bạn.

65
Machine Translated by Google

Xu hướng chính:

h Cạnh tranh gia tăng bắt chước sản phẩm h Nỗ lực phân biệt

sản phẩm với đối thủ cạnh tranh thông qua nâng cao tính năng và xây dựng thương hiệu khác biệt

h Tối ưu hóa lợi nhuận bằng cách tìm cách giảm chi phí sản xuất và hỗ trợ h Thiết lập quan hệ

hợp tác với các đối tác quan trọng mới để trở nên cạnh tranh hơn

Từ chối
Giai đoạn cuối cùng của vòng đời sản phẩm là khi phần lớn thị trường phổ thông đã mua một phiên bản của sản phẩm,

cho dù đó là của riêng bạn hay một trong những sản phẩm bắt chước đã xuất hiện trên thị trường. Các sản phẩm được

thiết kế để mua một lần sẽ không tạo ra thêm doanh số bán hàng từ cùng một khách hàng, do đó doanh số bán hàng sẽ

giảm. Chính trong giai đoạn này, cần phải đưa ra những đổi mới; hoặc về mặt cải tiến sản phẩm đối với các đề xuất

giá trị nhằm lôi kéo khách hàng hiện tại nâng cấp hoặc tìm các phân khúc khách hàng mới mà sản phẩm có thể được bán

cho họ.

Xu hướng chính:

h Các nỗ lực tiếp thị để tạo ra doanh số bán hàng lặp lại từ khách hàng hiện tại hoặc mở rộng doanh số bán hàng

đến phân khúc khách hàng mới

h Giảm giá để tăng sức hấp dẫn của sản phẩm mới “nhạy cảm về giá”

phân khúc khách hàng

h Tăng cường các tính năng để hỗ trợ các đề xuất giá trị mới h Đa dạng hóa sản

phẩm để thu hút các phân khúc khách hàng mới

Phân tích năm lực lượng


Phân tích này xác định năm lực lượng kiểm soát (các) thị trường mà bạn hoạt động.

Trọng tâm của phân tích này là sự cạnh tranh của các đối thủ cạnh tranh trên thị trường tồn tại để phục vụ và phản

ứng lại bốn lực lượng kia. Phân tích Năm lực lượng bổ sung cho việc xác định vòng đời sản phẩm bằng cách cung cấp

khả năng xem thị trường có thể thay đổi như thế nào trong từng giai đoạn:

66
Machine Translated by Google

Hình 3.4: Năm lực lượng tồn tại trên tất cả các thị trường ảnh hưởng đến cán cân quyền lực đàm phán.

Cạnh tranh giữa các nhà cung cấp hiện tại


Yếu tố trung tâm cho phép sự tồn tại của bốn lực lượng còn lại là sự hiện diện trên thị trường của các thực thể

khác cạnh tranh cho cùng một hoạt động kinh doanh. Cạnh tranh nhiều hơn cung cấp cho người mua (phân khúc khách

hàng) nhiều khả năng thương lượng hơn và cuối cùng có thể dẫn đến thị trường trở nên bão hòa đến mức người mua có

quyền ép giá ở mức tối thiểu và chất lượng ở mức tối đa để nhận được các đề xuất có giá trị tốt nhất. Tình huống

cuối cùng này được nhắc đến trong một công cụ phân tích khác, Chiến lược Đại dương xanh, như một đại dương đỏ, nơi

các doanh nghiệp cần phải vận hành lợi nhuận mỏng như dao cạo có rủi ro cao chỉ để tồn tại.

Cân nhắc chính:

h Mức độ cạnh tranh khốc liệt như thế nào?

¾ Đó có phải là đại dương đỏ không?

h Ai là người dẫn đầu thị trường?

¾ Họ có quá nhiều ảnh hưởng trên thị trường để bạn cạnh tranh không

chống lại?

h Doanh nghiệp điển hình chiếm được thị phần nào trên thị trường?

¾ Liệu một thị phần tương đương có được coi là thành công đối với

Kinh doanh của bạn?

67
Machine Translated by Google

Mối đe dọa của sản phẩm thay thế hoặc dịch vụ


Bước tiếp theo so với các đối thủ cạnh tranh hiện tại là có sẵn các tùy chọn thay thế mà các phân khúc khách

hàng của bạn có thể chọn mua thay vì sản phẩm hoặc dịch vụ của bạn. Đây không phải là đối thủ cạnh tranh trực

tiếp theo nghĩa là họ cung cấp một sản phẩm hoặc dịch vụ tương đương, mà thay vào đó cung cấp các giải pháp thay

thế phù hợp với các đề xuất giá trị mà thị trường tìm cách mua. Bất kể bạn bán sản phẩm hay dịch vụ, sản phẩm

thay thế có thể ở bất kỳ dạng nào—ví dụ: dịch vụ cung cấp các đề xuất giá trị giống như sản phẩm của bạn.

Cân nhắc chính:

h Có những giải pháp thay thế nào để cung cấp đề xuất giá trị của bạn?

¾ Có tình huống cụ thể nào trong đó những lựa chọn thay thế này là những lựa chọn khả thi không?

h Những tình huống nào có thể thay thế cho một lựa chọn hợp lệ?

¾ Hoàn toàn có thể đặt một trang web cùng với Microsoft Word, nhưng liệu nó có được chấp nhận

bởi một người muốn HTML được tối ưu hóa cao cho các công cụ tìm kiếm không?

Mối đe dọa của những người mới

Với hầu hết các công ty khởi nghiệp thất bại trong vòng ba năm đầu tiên, hầu hết những người mới tham gia thị

trường không có khả năng gây ra mối đe dọa như các đối thủ cạnh tranh hiện có trên thị trường. Chúng vẫn có nguy

cơ gây thiệt hại cho doanh số bán hàng và khả năng thương lượng của bạn với người mua; đặc biệt là khi nói đến

những người mới tham gia định giá bản thân để thua lỗ - những kiểu người sau đó ngừng hoạt động khi họ lâm vào

cảnh nợ nần.

Mối đe dọa nghiêm trọng hơn từ những người mới tham gia thị trường đến từ những người có sức mạnh tài chính

đáng kể, cũng như những người có khả năng phá vỡ thị trường thông qua đổi mới.

Có một mối quan hệ giữa hai yếu tố này—đổi mới thường được thực hiện thông qua đầu tư tài chính. Các loại

người tham gia thị trường gây ra rủi ro cao nhất là những người đang hoặc được hỗ trợ bởi các công ty lớn

đã được thành lập ở các thị trường khác.

Dự án Nintendo PlayStation bị hủy bỏ đã trở thành một sai lầm nghiêm trọng đối với Nintendo, dẫn đến việc

Sony trở thành người tham gia thị trường trong ngành công nghiệp trò chơi điện tử — và cuối cùng sử dụng sức mạnh

tài chính của họ để trở thành người chơi thống trị thị trường. Tại thời điểm viết bài này, PlayStation Network của

Sony (PSN—mạng trò chơi trực tuyến dành cho máy chơi game PlayStation) tạo ra nhiều tiền hơn toàn bộ hoạt động

kinh doanh của Nintendo. Ngoài ra, dự đoán về việc một số doanh nghiệp trở thành đối thủ mới cũng có thể đủ để

mất doanh thu đáng kể—như đã xảy ra với Sega vào năm 2000 với bảng điều khiển trò chơi Dreamcast của họ khi nhiều

người mua bảng điều khiển ngừng nâng cấp để chờ đợi sự ra mắt của PlayStation 2 của Sony.

68
Machine Translated by Google

Một cân nhắc có thể được sử dụng để bảo vệ doanh nghiệp của bạn trước mối đe dọa từ những người mới

tham gia, đặc biệt là những người thiếu kinh nghiệm đủ để đưa ra mức giá thua lỗ, là yêu cầu về kỹ năng và

chứng chỉ để đủ điều kiện trở thành người chơi trên thị trường. Yêu cầu về kỹ năng cao hơn có nghĩa là những

người mới tham gia thị trường cần cam kết nhiều hơn để học những kỹ năng đó, do đó họ có khả năng coi trọng

thời gian của mình hơn.

Khi yêu cầu chứng nhận, còn được gọi là quan liêu, khó khăn, nỗ lực và kỹ năng cần thiết để hoàn thành

các thủ tục giấy tờ cần thiết có thể đủ để ngăn cản nhiều người tham gia thị trường tiềm năng.

Cân nhắc chính:

h Việc cung cấp sản phẩm hoặc dịch vụ tương đương với sản phẩm hoặc dịch vụ của bạn dễ dàng như thế nào?

¾ Đối với các dịch vụ phát triển phần mềm, có các dịch vụ phần mềm tương đương như Wix.com

hoặc các dự án nguồn mở như WordPress, giúp hạ thấp yêu cầu kỹ năng đối với những người

mới tham gia không?

h Quan liêu có phải là rào cản gia nhập thị trường không?

¾ Nỗ lực cần thiết để đáp ứng tất cả các yêu cầu có thể ngăn cản phần lớn những người tham

gia thị trường tiềm năng, nếu không muốn nói là không thể.

h Sự công nhận thương hiệu của bạn trên thị trường có bảo vệ bạn không?

¾ Những người mới tham gia thị trường có thể thấy không thể giành được công việc

kinh doanh từ những khách hàng vốn đã rất hài lòng với các dịch vụ và sản phẩm

của bạn.

h Khách hàng của bạn có sẵn sàng trả giá cao cho sản phẩm hoặc dịch vụ của bạn không?

¾ Nếu vậy, điều này sẽ bảo vệ bạn trước những người mới tham gia thị trường chưa được chứng minh bằng

cách sử dụng các chiến lược định giá quá khích để hạ giá bạn.

Năng lực thương lượng của nhà cung cấp


Ngoài các nguồn công việc khác mà nhà cung cấp của bạn nhắm đến, số lượng đối thủ cạnh tranh và nhà cung

cấp thay thế trong thị trường của bạn có khả năng ảnh hưởng đến khả năng thương lượng các đề xuất giá trị tốt

hơn từ nhà cung cấp của bạn. Đàm phán đi ngược lại bạn khi các nhà cung cấp của bạn ở vị trí có nhiều nhu cầu

về nguồn cung cấp của họ hơn khả năng đáp ứng của họ, cho dù đó là từ thị trường mà bạn hoạt động hay không;

do đó, mọi đối thủ cạnh tranh trong thị trường của bạn, những người cần dịch vụ của họ đều đóng vai trò làm

xói mòn khả năng đàm phán của bạn. Ngoại trừ trường hợp thị trường sụp đổ hoặc khi thị trường của nhà cung cấp

tràn ngập các lựa chọn thay thế, bạn sẽ luôn ở vị thế đàm phán mạnh nhất khi thiết lập một hạng mục thị trường

mới— đó là Chiến lược Đại dương xanh.

Cân nhắc chính:

h Mức độ háo hức của các nhà cung cấp đối với doanh nghiệp của bạn?

¾ Họ có đủ khả năng để từ chối doanh nghiệp của bạn không?

69
Machine Translated by Google

h Các nhà cung cấp có nhu cầu nhiều hơn mức họ có thể đáp ứng không? ¾

Họ có thể lựa chọn người mà họ làm việc cho không?

h Số đối thủ cạnh tranh ngày càng tăng trong thị trường của bạn có ảnh hưởng đến khả năng của bạn không?

đàm phán?

¾ Có phải các đối thủ cạnh tranh của bạn đang tăng nhu cầu về nguồn cung cấp đến mức mà các nhà cung

cấp có thể từ chối công việc kinh doanh của bạn để thực hiện các đơn đặt hàng từ đối thủ cạnh

tranh của bạn với việc cung cấp cho các nhà cung cấp một hợp đồng béo bở hơn?

h Bạn có thể đạt được sức mua với các đơn đặt hàng lớn cho các nhà cung cấp không?

¾ Bạn có thể trở thành một khách hàng quan trọng đến mức các nhà cung cấp sẽ cố gắng hết

sức để giữ lòng trung thành của khách hàng không?

h Có nhà cung cấp thay thế nào mà bạn có thể thương lượng các giao dịch tốt hơn không?

¾ Có giao dịch nào tốt hơn trên thị trường mà bạn có thể sử dụng để thương lượng

nhà cung cấp hiện tại để cung cấp cho bạn một thỏa thuận tốt hơn?

Năng lực thương lượng của người mua


Người mua có quyền thương lượng nhất khi thị trường có nhiều nhà cung cấp hơn so với nhu cầu. Khi bạn có nhiều đối

thủ cạnh tranh cung cấp cùng một giải pháp và các sản phẩm thay thế cũng cung cấp các tùy chọn tương đương với các

đề xuất giá trị của bạn, thì bạn cần phải đạt hiệu quả cao trong các hoạt động để có thể đưa ra các đề xuất có giá

trị cao nhất với nhiều lợi ích nhất. giá cả cạnh tranh để bạn có thể giành được doanh số bạn cần. Ngoài ra, tạo sự

khác biệt cho các sản phẩm dịch vụ của bạn theo cách nhắm mục tiêu đến các thị trường mới hoặc ít cạnh tranh hơn là

một giải pháp khả thi cho vấn đề này.

Cân nhắc chính:

h Người mua yêu cầu gì?

¾ Họ muốn giá thấp hơn, chất lượng cao hay cả hai?

h Có thể đạt được lợi nhuận như thế nào trong việc đáp ứng nhu cầu của người mua?

¾ Nhu cầu của người mua có xứng đáng với thời gian và công sức của bạn không?

h Bạn có thể phát triển những đổi mới nào để tăng tỷ suất lợi nhuận và đáp ứng nhu cầu? ¾ Có cách nào giúp

bạn có được vị thế tốt hơn để giành được công việc kinh doanh và kiếm được lợi nhuận không?

Khung đánh giá Bảy lĩnh vực


Một trong những rủi ro chính khi đưa ra ý tưởng kinh doanh của riêng bạn là không thực hiện đủ phân tích để xác

định tiềm năng thành công của nó. Khung đánh giá Bảy lĩnh vực là một công cụ danh sách kiểm tra có thể được sử dụng

để xác định xem một ý tưởng kinh doanh có tiềm năng thành công hay không, nêu bật những sai sót của nó và giúp

tránh mắc phải những sai lầm cơ bản:

70
Machine Translated by Google

Hình 3.5: Mối quan hệ của bảy lĩnh vực để xác nhận ý tưởng kinh doanh.

Lĩnh vực thị trường/cấp độ vĩ mô – sức hấp dẫn

của thị trường

Điều này xem xét khả năng mang lại lợi nhuận của thị trường tổng thể. Việc xem xét cụ thể được
đưa ra để xác định số lượng khách hàng trên thị trường, khối lượng bán hàng, phân khúc giá cả và
các xu hướng mới nổi. Việc phân tích các xu hướng trên thị trường rất quan trọng để xác định khả
năng tăng trưởng, ổn định hoặc suy giảm, từ đó gợi ý mức độ hấp dẫn của thị trường hiện tại có
thể thay đổi như thế nào.

Cân nhắc chính:

h Có bao nhiêu khách hàng trên thị trường? h Có bao

nhiêu lần bán hàng được thực hiện cho khách hàng? h

Các phân khúc định giá là gì? h Xu hướng nào cho thấy

tiềm năng tăng trưởng hoặc suy giảm trong tương lai?

71
Machine Translated by Google

Miền thị trường/cấp vi mô – lợi ích và sức hấp dẫn của

ngành thị trường


Thành công có thể bị hạn chế nếu sản phẩm hoặc dịch vụ của bạn được thiết kế theo cách khiến nó
được coi là kẻ nắm giữ tất cả các ngành nghề – bậc thầy của không ai cả. Phân tích lợi ích và sức
hấp dẫn của khu vực thị trường xem xét việc xác định các cơ hội để nhắm mục tiêu vào các phân
đoạn thị trường cụ thể theo cách cho phép bạn sử dụng vị trí và điểm mạnh độc đáo của mình để làm
lợi thế nhằm tăng cơ hội thành công.

Đảm bảo sử dụng đầy đủ các kỹ thuật nghiên cứu như bảng câu hỏi, nghiên cứu trực tuyến, đánh
giá báo cáo và phỏng vấn bao gồm cả câu hỏi định tính và định lượng để trả lời để có thể thu
được cả phân tích thống kê và hiểu biết sâu sắc về thông tin chưa biết.

Cân nhắc chính:

h Phân khúc khách hàng nào trên thị trường sẽ được hưởng lợi nhiều nhất từ các đề
xuất giá trị của bạn?

h Ý tưởng về sản phẩm hoặc dịch vụ của bạn khác với sản phẩm hoặc dịch vụ thay thế hiện tại như thế nào
thị trường?

h Bạn có thể tăng sức hấp dẫn của các đề xuất giá trị của mình để trở nên hấp dẫn đối với
phân khúc khách hàng khác?

Lĩnh vực ngành/cấp độ vĩ mô – sức hấp dẫn của


ngành
Giai đoạn này về cơ bản là Phân tích năm lực lượng, xem xét tính khả thi của việc tham gia
thị trường dựa trên độ khó để tham gia và vận hành. Phân tích đầu tiên xem liệu có thể tham gia
thị trường với bộ kỹ năng, chứng chỉ và tài nguyên của bạn hay không—rủi ro khi tham gia thị trường
nơi có ít hoặc không có trở ngại nào có nghĩa là các đối thủ cạnh tranh mới cũng sẽ dễ dàng tham
gia khi bạn thành công thu hút sự chú ý của họ.

Mặt khác của giai đoạn này, cũng được đề cập trong Phân tích năm lực lượng, là việc xác
định những khó khăn để hoạt động trên thị trường sau khi gia nhập. Những khó khăn chính xoay
quanh sự cạnh tranh hiện tại, những đối thủ có khả năng gây khó khăn trong việc giành đủ doanh
số để hoạt động kinh doanh của bạn khả thi, ép giá xuống mức có ít hoặc không có lợi nhuận và/
hoặc sử dụng vị thế thị trường của họ để đảm bảo thỏa thuận với các nhà cung cấp khiến bạn không
thể cạnh tranh về giá hoặc giao hàng đủ nhanh. Khi các đối thủ cạnh tranh có thể gây khó khăn cho
việc vận hành này, thì nên đặt ra câu hỏi liệu nó có đáng để vận hành trên thị trường hay không.
Khi các đối thủ cạnh tranh không thể áp đặt những khó khăn như vậy để hoạt động trên thị trường,
phân tích xác định rằng ý tưởng kinh doanh có thể được vận hành thành công.

Cân nhắc chính:

h Có yêu cầu kỹ năng cao để tham gia thị trường không? h Có

những yêu cầu quan liêu nào đối với bạn để hoạt động trên thị trường?

72
Machine Translated by Google

h Có dấu hiệu của các lối tắt hiện có hoặc mới xuất hiện để bỏ qua các kỹ năng cần thiết không

hay băng đỏ?

h Mức độ cạnh tranh hiện tại trên thị trường khốc liệt như thế nào?

h Những người tham gia thị trường nhỏ hơn có thể hoạt động với lợi nhuận chấp nhận được

không? h Người mua và nhà cung cấp có quyền đàm phán bất lợi không?

Lĩnh vực ngành/cấp độ vi mô – lợi thế bền


vững
Sau khi hoàn thành nghiên cứu của mình để xác định tiềm năng về phần thưởng và các vấn đề khi tham gia và

hoạt động trên thị trường, bạn hiện có thể xem cách bạn có thể xây dựng các điểm bán hàng độc đáo cho phép

bạn đưa ra các đề xuất giá trị cho các phân khúc khách hàng mục tiêu mà đối thủ cạnh tranh của bạn trên thị

trường không thể sánh kịp.

Về phát triển phần mềm, bản thân kỹ năng thường là một lợi thế, đặc biệt khi bạn có kỹ năng về các loại

lập trình nâng cao hoặc kiến thức về một lĩnh vực chuyên biệt có thể dẫn đến việc tạo ra các giải pháp mà

đối thủ cạnh tranh của bạn không thể cung cấp. Ví dụ: có kiến thức nâng cao về thuật toán trí tuệ nhân tạo

và nền tảng về chăm sóc sức khỏe sẽ giúp bạn có vị trí lý tưởng để tạo sản phẩm và đấu thầu các hợp đồng yêu

cầu bạn kết hợp các kỹ năng và kiến thức này. Sự kết hợp này không chỉ cho phép bạn viết mã sản phẩm mà còn

hiểu được các yêu cầu của người mua/người dùng mục tiêu, cùng với việc hiểu ngành của họ hoạt động như thế

nào. Sử dụng sự kết hợp này để phát huy hết tác dụng của nó sẽ mang lại cho bạn những lợi thế trong cả quá

trình đặt giá thầu và phát triển sản phẩm mà đối thủ cạnh tranh của bạn sẽ khó bắt kịp.

Việc sử dụng các lợi thế chuyên biệt như vậy được coi là bền vững, vì hầu hết các đối thủ cạnh

tranh sẽ không thể nâng cao kỹ năng của họ và/hoặc tiếp cận các sản phẩm thay thế cho phép họ đưa ra các giải

pháp thay thế để đáp ứng các đề xuất giá trị tương tự. Một ví dụ về cách các đối thủ cạnh tranh có thể vượt

qua các lợi thế về kỹ năng và kiến thức mà bạn có thể có là thị trường thiết kế trang web hiện đại. Ban đầu,

việc tạo trang web yêu cầu hiểu biết về HTML để bắt đầu, do đó loại bỏ những người chơi không có những kỹ

năng này và giữ tỷ lệ dự án trong khoảng £5.000 cho một trang web cơ bản.

Ngày nay, tính khả dụng của các tính năng tạo trang web trong phần mềm phổ biến như Microsoft Word và

thông qua các dịch vụ trực tuyến như Wix.com (http://www.wix.com), đã mở ra cơ hội cho những người mới

tham gia thị trường hầu như không có bất kỳ kỹ năng kỹ thuật nào. .

Do đó, thị trường tràn ngập những người đề nghị tạo trang web với chi phí thấp; làm gián đoạn ồ ạt cách

người chơi có thể cạnh tranh, cùng với việc bóp méo kỳ vọng của những người mua không hiểu sự khác biệt

giữa nhà phát triển/nhà thiết kế web lành nghề và người phóng đại khả năng của họ. Thời của những trang

web trị giá £5.000 được làm từ HTML đơn giản đã qua lâu rồi; giờ đây được thay thế bằng kỳ vọng của người

mua về việc trang web của họ được cung cấp hệ thống quản lý nội dung đầy đủ, SEO, thiết kế đáp ứng và các

tính năng triển khai tốn kém khác—chỉ với £100! Đáng tiếc, câu chuyện này không hiếm khi hoạt động với những

lợi thế không bền vững.

73
Machine Translated by Google

Kỹ năng lập trình cũng có thể được sử dụng để phát triển lợi thế bền vững dưới dạng hệ thống nội bộ
của riêng bạn nhằm tăng hiệu quả của các quy trình và/hoặc cho phép bạn cung cấp các loại đề xuất giá
trị mới. Điều này có thể hiệu quả khi bạn có trình độ kỹ năng và kiến thức mà các đối thủ cạnh tranh
trong ngành không có được—phần mềm tương đương với công thức bí mật của Đại tá.

Quan liêu là một hình thức tiềm năng của lợi thế bền vững dưới dạng chứng nhận, bằng sáng chế, sự tin
tưởng và danh tiếng, có thể gây khó khăn hoặc không khuyến khích đối thủ cạnh tranh của bạn kiếm được
khi phải trả giá bằng thời gian và công sức.

Cân nhắc chính:

h Các đối thủ sao chép dịch vụ hoặc sản phẩm của bạn dễ dàng như thế nào? h Đối

thủ cạnh tranh của bạn có thể sử dụng sản phẩm thay thế nào để cung cấp giải pháp tương

tự? h Những tài nguyên và/hoặc kỹ năng nào bạn có thể tiếp cận mà đối thủ cạnh tranh

không có? h Bạn có bằng sáng chế nào có thể ngăn đối thủ cạnh tranh sao chép USP của

bạn không? h Bạn có hoặc có thể phát triển các hệ thống nội bộ để giúp bạn cạnh tranh hơn

không? h Đối thủ cạnh tranh trên thị trường có gì mà bạn không có?

Miền nhóm – sứ mệnh, nguyện vọng và


xu hướng chấp nhận rủi ro
Sau khi đã đánh giá môi trường thị trường và khả năng hoạt động của bạn trong đó, bước tiếp theo là
xác định mức độ cam kết mà bạn phải thực hiện để công việc kinh doanh hoạt động hiệu quả. Đánh giá
này bao gồm bất kỳ người nào khác mà bạn có thể đang làm việc cùng, hoặc chỉ bản thân bạn nếu bạn
đang làm việc một mình.

Có nhiều yếu tố ảnh hưởng đến cam kết tham gia kinh doanh của một cá nhân hoặc nhóm. Động cơ
liên quan đến sở thích cá nhân, lối sống mong muốn, đam mê chủ đề và đạo đức có thể đóng vai trò quan
trọng trong việc thuyết phục mọi người cam kết nỗ lực cần thiết để làm cho doanh nghiệp thành công,
trong khi rủi ro liên quan đến tài chính và thăng tiến nghề nghiệp có thể là rào cản đối với cam kết.
Làm việc chăm chỉ là một yếu tố khác có thể ngăn cản mọi người sẵn sàng cam kết thực hiện ý tưởng kinh
doanh.

Tầm quan trọng của cam kết không nên được đánh giá thấp. Bất kể ý tưởng kinh doanh khả thi như thế nào
và các cơ hội tồn tại trên thị trường như thế nào, một kế hoạch kinh doanh chỉ có thể được thực hiện
bởi những người sẵn sàng và có thể cam kết thực hiện công việc.

74
Machine Translated by Google

Cân nhắc chính:

h Bạn có đam mê với ý tưởng của mình không?

h Sở thích của bạn trong ý tưởng là gì? h

Bạn muốn đạt được điều gì với ý tưởng kinh doanh? h Bạn có đủ

khả năng chấp nhận rủi ro tài chính liên quan không? h Bạn có

sẵn sàng thực hiện cam kết tài chính cần thiết không? h Việc tham gia

vào ý tưởng kinh doanh sẽ ảnh hưởng đến sự phát triển nghề nghiệp của bạn như

thế nào? h Thất bại sẽ ảnh hưởng đến danh tiếng của bạn? h Bạn có sẵn sàng làm

việc nhiều giờ và làm việc chăm chỉ theo yêu cầu của
kinh doanh?

Miền nhóm – khả năng thực hiện dựa trên các yếu tố
thành công quan trọng

Không phải tất cả các yếu tố trong kinh doanh đều có trọng lượng như nhau trong việc đóng góp vào thành công,

với một số yếu tố cho phép bạn thành công mà không cần đến chúng và những yếu tố khác là yêu cầu bắt buộc.

Các yếu tố bắt buộc đối với sự thành công của doanh nghiệp được gọi là các yếu tố thành công
quan trọng—cần có sự cân nhắc đặc biệt để xác định xem bạn và nhóm của bạn có thể thực hiện
chúng thành công hay không.

Cân nhắc chính:

h Những quyết định nào có thể gây tổn hại nghiêm trọng cho doanh nghiệp nếu bạn đưa ra quyết định sai?

¾ Ai ở vị trí tốt nhất để đưa ra những quyết định này? ¾

Họ có kinh nghiệm gì trong việc đưa ra các quyết định tương tự? ¾

Kết quả khi họ đưa ra những quyết định này là gì? ¾ Có đối tác

chính nào mà bạn có thể tham khảo để kiếm thêm


quyết định sáng suốt?

h Những hoạt động nào mà ý tưởng kinh doanh yêu cầu phải được thực
hiện đầy đủ và thành công?

¾ Ai có kỹ năng để thực hiện các hoạt động này? ¾

Họ có mức độ kinh nghiệm nào trong các hoạt động này? ¾ Bạn có

thể tiếp cận các sản phẩm thay thế nếu chúng không có sẵn hoặc không còn
đội?

¾ Có đối tác chính nào mà bạn có thể hợp tác để tăng cơ hội thực hiện
thành công không?

75
Machine Translated by Google

h Những quyết định nào có khả năng nâng cao đáng kể hiệu suất của
kinh doanh?

¾ Bạn hoặc bất kỳ thành viên nào trong nhóm của bạn có thể thực hiện những
quyết định?

¾ Có thành tích nào về việc đưa ra lựa chọn tốt nhất trong loại quyết định này không?

¾ Bạn hoặc (các) thành viên trong nhóm của bạn có khả năng thực hiện các mức độ phân
tích phù hợp để đưa ra các quyết định này không?

¾ Có đối tác chính nào có thể tư vấn cho bạn để nâng cao chất lượng của những quyết định
này không?

h Những hoạt động nào có tác động đáng kể đến tiềm năng thành công của
kinh doanh?

¾ Bạn hoặc nhóm của bạn có trình độ kỹ năng cao để thực hiện
các hoạt động này?

¾ Những hoạt động này có làm bạn hoặc nhóm của bạn mất tập trung khi thực hiện
các hoạt động mà bộ kỹ năng của họ phù hợp nhất?

¾ Có đáng để thuê ngoài các hoạt động này cho một đối tác chính là chuyên gia có
mức độ kinh nghiệm cần thiết để thực hiện các hoạt động này theo tiêu chuẩn cao
hơn không?

Kết nối lên xuống chuỗi giá trị


Câu nói không phải bạn biết gì mà là bạn biết ai không bao giờ đúng hơn trong kinh doanh. Công việc
kinh doanh thành công thường bắt nguồn từ việc có các mối quan hệ tốt, do đó cần phải xác định xem
bạn và nhóm của bạn có được định vị đủ tốt với những người bạn biết để thực hiện ý tưởng kinh doanh
của bạn hay không.

Một số tình huống yêu cầu bạn xác định các kết nối của mình để giải quyết vấn đề, trong khi các
tình huống khác yêu cầu bạn xác định loại người mà bạn và nhóm của bạn biết sẽ đặt bạn vào vị trí
duy nhất để tham gia kinh doanh.

Cân nhắc chính:

h Bạn có biết những người có thể cung cấp cho bạn các nguồn lực theo yêu cầu của bạn không?
ý tưởng kinh doanh?

h Mối quan hệ của bạn với những người này tốt như thế nào? h Bạn

có mối quan hệ với những người có thể phân phối sản phẩm của bạn
hay dịch vụ?

¾ Họ có sẵn sàng trở thành kênh phân phối sản phẩm của bạn không
hay dịch vụ?

¾ Làm thế nào mối quan hệ của bạn có thể khiến họ quan tâm nhiều hơn đến việc
tìm hiểu sản phẩm hoặc dịch vụ của bạn?

76
Machine Translated by Google

h Bạn có mối quan hệ với những người có tiềm năng trong phân khúc khách hàng của bạn không?

¾ Liệu họ có thể bị thuyết phục ủng hộ sản phẩm hoặc dịch vụ của bạn không? ¾

Họ có muốn mua sản phẩm hoặc dịch vụ của bạn không? ¾ Mối quan hệ của bạn có

khiến họ muốn mua hàng của bạn thay vì của đối thủ không? ¾ Tại sao họ muốn mua hàng của bạn

thay vì của đối thủ? ¾ Bạn có thể sử dụng hiểu biết của mình về những người này để tạo

ra giá trị của bạn

đề xuất hấp dẫn hơn đối với họ?

¾ Sự tin tưởng của họ vào bạn có phải là yếu tố khiến việc mua hàng của bạn trở nên hấp

dẫn hơn đối với họ không?

h Bạn có mối quan hệ với các doanh nghiệp mà bạn sẽ cạnh tranh không?

¾ Ý tưởng kinh doanh của bạn sẽ ảnh hưởng như thế nào đến mối quan hệ của bạn với họ?

¾ Có thể coi những doanh nghiệp này là đối tác chính theo bất kỳ cách nào không?

Khung McKinsey 7S
Hiểu các thành phần bạn cần trong doanh nghiệp của bạn và cách chúng liên kết với nhau là một phần quan trọng

trong việc thiết kế một mô hình kinh doanh thành công. Khung McKinsey 7S có thể được sử dụng như một lời

nhắc để xác định các thành phần bạn cần trong doanh nghiệp của mình và cách chúng liên quan với nhau. Về bản

chất, khuôn khổ này là phiên bản đơn giản hóa của Khung mô hình kinh doanh, nhưng với các mối quan hệ đã được

xác định:

Hình 3.6: Mối quan hệ của bảy thành phần trong một doanh nghiệp.

77
Machine Translated by Google

Mục tiêu và giá trị chung

Thành phần trung tâm của doanh nghiệp của bạn là các mục tiêu và giá trị được chia sẻ mà doanh nghiệp của

bạn tồn tại để thực hiện. Đối với một số tổ chức, điều này chỉ đơn giản là để kiếm lợi nhuận, trong khi các

tổ chức khác như tổ chức từ thiện và doanh nghiệp xã hội đặt ưu tiên cao hơn cho các chương trình nghị sự xã

hội của họ. Hiểu được tham vọng sẽ cho phép bạn xác định chính xác các yêu cầu của từng thành phần khác để

đáp ứng chúng.

Chiến lược
Có thể nhiều hơn bất kỳ thành phần nào khác, chiến lược được quyết định bởi yếu tố trung tâm xác định các

mục tiêu và giá trị chung của tổ chức. Luôn có nhiều hơn một phương pháp để đạt được cùng một mục tiêu, do

đó loại chiến lược bạn sử dụng sẽ phụ thuộc vào tầm nhìn, nguyện vọng và đạo đức của bạn. Đảm bảo phát triển

một chiến lược mà cả nhóm của bạn đều cảm thấy thoải mái và có khả năng thực hiện để tránh thất bại do mâu

thuẫn chính trị và thiếu kinh nghiệm—nói cách khác, đừng quá tham vọng.

Kỹ năng

Một chiến lược không có giá trị trừ khi nó có thể được thực hiện với những kỹ năng cần thiết để thành công.

Lý tưởng nhất là chiến lược nên được thiết kế để tận dụng các kỹ năng mà bạn và nhóm của bạn đã có, nhưng

cũng có thể có yêu cầu về các kỹ năng mà bạn không có—hoặc ít nhất là không ở mức cần thiết để thực hiện

thành công chiến lược . Có một yêu cầu trong loại tình huống này là thuê nhân viên mới có các kỹ năng cần

thiết hoặc xác định các đối tác chính có thể đóng góp vào việc thực hiện chiến lược. Trong trường hợp sử

dụng các đối tác chính, điều này có thể đạt được bằng cách hợp tác với các dịch giả tự do, nhà thầu và doanh

nghiệp khác, những người chuyên về các kỹ năng cần thiết; mặc dù cần thận trọng để đảm bảo rằng các đối tác

chính mà bạn chọn có trình độ kỹ năng phù hợp và có thể hoạt động theo cách tương thích với phong cách mà bạn

và nhóm của bạn sử dụng để làm việc, nhằm tránh xung đột.

Cấu trúc

Việc thực hiện chiến lược thông qua việc triển khai các kỹ năng cần được thực hiện theo cách có cấu trúc

để tránh các tình huống có vấn đề và xung đột xảy ra thông qua chính trị.

Điều này liên quan đến việc sử dụng một cấu trúc chính thức để xác định thành viên nào của nhóm có thể đưa

ra các loại quyết định nhất định và ai chịu trách nhiệm quản lý các nhân viên khác nhau và các đối tác chính

đã được đưa vào dự án để cộng tác. Cấu trúc là tất cả về việc tạo điều kiện thuận lợi cho luồng thông tin

chất lượng cao giúp cải thiện hiệu suất và khả năng ra quyết định.

78
Machine Translated by Google

Phong cách

Phong cách mà bạn và nhóm của bạn tham gia vào các hoạt động kinh doanh là một yếu tố quan trọng có
thể tránh được xung đột cả về kỹ thuật và chính trị. Khi nói đến việc viết phần mềm của bạn, tất cả
các thành viên trong nhóm cần có khả năng viết mã theo một phong cách nhất quán mà các thành viên khác
trong nhóm có thể hiểu được; chỉ cần một người phá vỡ điều này có thể gây ra xung đột cả về kỹ thuật

và chính trị cho doanh nghiệp. Điều này nhấn mạnh nhu cầu kiểm tra năng lực kỹ năng khi tuyển dụng
nhân viên mới và chọn đối tác chính để hợp tác. Vấn đề tương tự về phong cách thực thi tồn tại đối với
các lĩnh vực khác của doanh nghiệp ngoài việc triển khai lập trình kỹ thuật, do đó cần đảm bảo có các
phong cách chung để làm việc trên tất cả các hoạt động kinh doanh.

hệ thống

Hiệu suất của tất cả các thực thể khác trong tổ chức được tăng cường bởi các hệ thống bạn sử dụng,
do đó cần đảm bảo rằng bạn sử dụng đúng hệ thống có thể cung cấp cả khả năng và hiệu quả. Cùng với
các kỹ năng, các hệ thống cho phép bạn và nhân viên của bạn tham gia vào quá trình thực hiện chiến
lược, do đó tầm quan trọng của việc đảm bảo rằng mọi người đều có các mức kỹ năng cần thiết để sử dụng
các hệ thống mà họ cần để thực hiện phần chiến lược của họ.

Nhân Viên

Đây có thể chỉ là chính bạn nếu bạn đang làm việc với tư cách là nhà phát triển phần mềm đơn độc hoặc
có nhiều khả năng liên quan đến các đối tác chính mà bạn cộng tác và những người bạn tuyển dụng. Dù bằng
cách nào, nhân viên là một phần quan trọng trong doanh nghiệp của bạn vì doanh nghiệp không tự vận hành.
Cần phải đảm bảo rằng những người trong doanh nghiệp của bạn có phong cách làm việc tương thích, các kỹ
năng cần thiết để thực hiện một phần chiến lược của họ và khả năng sử dụng các hệ thống của doanh
nghiệp. Đó cũng là một lợi thế lớn khi có nhân viên chia sẻ cùng các giá trị của doanh nghiệp để đảm
bảo tính nhất quán và tránh xung đột chính trị làm gián đoạn việc thực hiện chiến lược dựa trên các giá
trị và đạo đức khác nhau.

Gắn mọi thứ lại với nhau


Với chương này xác định một số công cụ có thể được sử dụng để xây dựng mô hình kinh doanh của bạn, bây
giờ là lúc áp dụng kiến thức này vào thực tế. Phần này sẽ xem xét cách các công cụ này mô tả hai doanh
nghiệp nhắm mục tiêu cùng phân khúc khách hàng nhưng sử dụng các mô hình kinh doanh phần mềm khác nhau.

79
Machine Translated by Google

Các mô tả kinh doanh


Bước đầu tiên trong so sánh của chúng tôi là mô tả hai doanh nghiệp. Cả hai đều nhắm mục tiêu vào thị
trường giáo dục, cung cấp các giải pháp dựa trên phần mềm cho việc học ở trường tiểu học và trung học,
nhưng sử dụng các mô hình kinh doanh phần mềm khác nhau ảnh hưởng đến cách họ cung cấp giải pháp và do
đó là cách họ vận hành.

Học IXL
Dựa trên mô hình SaaS, đây là một dịch vụ phần mềm dựa trên web dành cho trẻ em học và thực hành

các kỹ năng toán học theo yêu cầu của chương trình học ở trường. Dịch vụ này giải quyết các yêu cầu
về chương trình giảng dạy của trường bằng cách cung cấp quyền truy cập vào một số lượng lớn các hoạt
động toán học mà trẻ em, phụ huynh và giáo viên có thể lựa chọn. Các hoạt động tương tác trở nên
hấp dẫn hơn đối với phụ huynh và giáo viên bằng cách theo dõi sự tiến bộ của trẻ để cung cấp quyền
truy cập vào các báo cáo xác định những tiến bộ đã đạt được trong quá trình trẻ tham gia vào các hoạt
động trực tuyến.

điểm tiếp theo


Sử dụng phần mềm hỗ trợ mô hình dịch vụ, Nextpoint vận hành một doanh nghiệp theo kiểu đại lý học
phí truyền thống, tập trung vào cùng thị trường với IXL, nhưng tập trung cụ thể vào việc giảng dạy
một chiến lược học tập cụ thể cho những người gặp khó khăn với môn toán. Doanh nghiệp sử dụng một hệ
thống phần mềm được thiết kế để hỗ trợ tất cả các hoạt động liên quan đến việc cung cấp dịch vụ học
phí, bao gồm đăng ký phiên, tạo kế hoạch học tập và tham gia các bài tập ôn tập. Học sinh được cung cấp
quyền truy cập vào tài khoản đăng nhập trực tuyến nơi họ có thể truy cập các tính năng dịch vụ phần mềm
liên quan đến dịch vụ học phí mà họ đang tham gia.

So sánh: Khung McKinsey 7S


Mặc dù cả hai doanh nghiệp đều hoạt động trong cùng một thị trường, nhưng rõ ràng từ mô tả của họ
rằng có những khác biệt đáng kể trong cách tiếp cận của họ để cung cấp giải pháp ảnh hưởng đến cách
sử dụng hệ thống phần mềm của họ. Những khác biệt này có thể được tóm tắt bằng cách sử dụng khuôn khổ
McKinsey 7S, trong đó xác định cơ cấu hoạt động và động lực của chúng.

80
Machine Translated by Google

Mục tiêu và giá trị chung


Các mục tiêu và giá trị được chia sẻ cho từng doanh nghiệp xác định những điểm tương
đồng và khác biệt của các vấn đề mà họ muốn giải quyết và đề xuất giá trị của họ:

Học IXL điểm tiếp theo

Tiêu điểm: Tiêu điểm:

■ Đầu tiên và quan trọng nhất là công nghệ ■ Chiến lược học tập trước hết

Giáo dục:
Giáo dục:
■ Giải quyết các vấn đề thực tế
trong giáo dục ■ Phá vỡ các rào cản để hiểu các khái
niệm toán học
■ Giúp giáo viên dạy và học sinh
học ■ Cung cấp chiến lược học tập hiệu
quả cho học sinh có hoàn cảnh
■ Cải thiện quá trình học tập
khó khăn

Công nghệ: ■ Đổi mới cách dạy và học cho học sinh

■ Tập trung vào việc tạo ra công nghệ yếu thế thông qua chiến lược

để định hình lại việc học và dạy tốt


hơn
Công nghệ:
■ Niềm tin vào sức mạnh của
■ Tập trung vào công nghệ để hỗ trợ
công nghệ tăng cường học tập thông
thực hiện chiến lược học tập
qua sáng tạo

■ Sứ mệnh đổi mới giáo dục ■ Công nghệ như một công cụ để thu hút
người học

■ Công nghệ như một công cụ để


mở rộng các phương pháp học tập ■

Niềm tin vào sức mạnh của công nghệ để


nâng cao các quyết định trong chiến
lược giảng dạy

81
Machine Translated by Google

Chiến lược
Chiến lược được mỗi doanh nghiệp áp dụng phản ánh đầy đủ các mục tiêu và giá trị chung
của họ, do đó chiến lược của họ có một thành phần tương đương cho từng giá trị cốt lõi đã
xác định:

Học IXL điểm tiếp theo

Tiêu điểm: Tiêu điểm:

■ Xác định các vấn đề trong dạy và học ■ Xác định nguyên nhân của các vấn đề trong

có thể được giải quyết với sự trợ học tập và phát triển các phương pháp

giúp của công nghệ phần mềm học tập để khắc phục chúng

Giáo dục:

Giáo dục:
■ Phát triển những cách mới để diễn đạt các

■ Khớp các ứng dụng phần mềm với khái niệm toán học bằng cách sử dụng các

vấn đề đối tác trong thế giới thực quy trình tư duy phi toán học

■ Phát triển các công cụ cụ thể để ■ Dạy học sinh tư duy toán học trực tiếp

cải thiện sự tham gia của các với suy nghĩ hàng ngày

chiến lược giảng dạy chính thống quy trình

■ Giúp giáo viên và phụ huynh tích ■ Thu hút sự tham gia của phụ huynh và giáo viên

hợp việc sử dụng IXL quan tâm đến những học sinh đang gặp khó

Công cụ học tập vào thói quen khăn với môn toán

giảng dạy và huấn luyện của họ


■ Cung cấp một phạm vi cụ thể của
■ Cung cấp nhiều loại nội dung để phù hợp với các chương
nội dung để đáp ứng mọi lĩnh vực
trình học phí được cung cấp
của chương trình học

Công nghệ:
Công nghệ:
■ Xây dựng các thành phần phần mềm để
■ Xây dựng các công cụ phần mềm phù hợp
khái niệm chiến lược học tập phù hợp
với nhu cầu của người dạy và người

học ■ Sử dụng phần mềm để tăng sự tham gia học tập

■ Tích hợp tính sáng tạo vào bài


■ Tạo các công cụ phần mềm để tác động
tập học tập
cung cấp các buổi học phí
■ Tăng cường thực hiện các
■ Xây dựng phần mềm có thể tạo
chiến lược giảng dạy thông qua việc
sử dụng phần mềm IXL.com ý thức về sự tiến bộ của người học để

lập kế hoạch bài học tốt hơn


Việc bán hàng:

■ Phát triển các công cụ báo cáo

■ Doanh số bán hàng cao hơn với giá xác định nguyên nhân của các vấn đề

bán thấp hơn để ra quyết định tốt hơn trong giảng dạy

Việc bán hàng:

■ Số lượng bán ít hơn với giá bán cao hơn

82
Machine Translated by Google

Kỹ năng

Các mô hình được sử dụng bởi cả hai doanh nghiệp tận dụng nhiều kỹ năng được chia sẻ giữa
họ, để sản xuất và nâng cao nhận thức về các thành phần phần mềm cốt lõi. Sự khác biệt
trong cách các chiến lược kinh doanh tập trung vào việc cung cấp các giải pháp học tập đưa
ra hai điểm khác biệt chính trong bộ kỹ năng được sử dụng. Với việc IXL Learning tập trung
vào doanh số bán hàng quốc tế với số lượng lớn, sản phẩm học tập của họ đã được cung cấp bằng
11 ngôn ngữ và do đó yêu cầu kỹ năng dịch ngôn ngữ. Ngược lại, Nextpoint chỉ bán dịch vụ học
phí cho một khu vực địa lý trong Vương quốc Anh và do đó có thể tránh được công sức và chi
phí dịch ngôn ngữ, nhưng yêu cầu kỹ năng giảng dạy để cung cấp dịch vụ học phí được bán cho
khách hàng của họ:

Học IXL Điểm tiếp

■ Thiết kế nội dung học ■ theo ■ Thiết kế nội dung

Thiết kế đồ họa ■ Phát học tập ■ Thiết kế đồ họa

triển phần mềm ■ Tiếp thị ■ Phát triển phần mềm ■

■ Quản lý dự án ■ Hỗ trợ Tiếp thị ■ Quản lý dự án ■

khách hàng ■ Kiểm tra/đảm Hỗ trợ khách hàng ■ Kiểm

bảo chất lượng ■ Dịch ngôn tra/đảm bảo chất lượng ■

ngữ Giảng dạy

Cấu trúc

Mặc dù cả hai doanh nghiệp đều tham gia vào việc phát triển phần mềm tập trung vào việc
cung cấp các giải pháp cho việc học toán, nhưng sự khác biệt về mục tiêu, giá trị và
chiến lược của họ dẫn đến một cấu trúc hoạt động hoàn toàn khác. Với IXL Learning giao dịch
quốc tế, cơ cấu tổ chức của họ có các bộ phận cụ thể với những người đảm nhận các vai trò
công việc phù hợp với một bộ kỹ năng cụ thể.

83
Machine Translated by Google

Mặt khác, Nextpoint là một doanh nghiệp siêu nhỏ vận hành một cấu trúc rất linh hoạt giúp giảm thiểu
chi phí hoạt động thông qua việc sử dụng dịch vụ thuê ngoài cho các đối tác chính và thu hút nhân viên
tham gia vào nhiều hoạt động; tóm lại, cấu trúc Nextpoint có thể được vận hành như một nhóm rất nhỏ hoặc
thậm chí với tư cách cá nhân:

IXL Learning ■ điểm tiếp theo

Giám đốc điều hành (CEO), người xác định phương ■ Giám đốc doanh nghiệp là người

hướng tổng thể của doanh nghiệp xác định phương hướng tổng thể của

doanh nghiệp

■ Các nhóm bộ phận, mỗi nhóm có một ■ Giám đốc, nhân viên và chủ chốt

giám đốc chịu trách nhiệm thực hiện lĩnh vực cá cộng tác viên/nhà cung cấp đối

nhân của họ trong chiến lược kinh doanh: tác đóng góp vào nhiều lĩnh vực của

¾ Tài chính/tài khoản chiến lược kinh doanh:

¾ Tài chính/tài khoản


¾ Bán hàng
¾ Bán hàng
¾ Tiếp thị ¾
¾ Tiếp thị ¾
Hỗ trợ khách hàng
Hỗ trợ khách hàng ¾ Phát
■ Phát triển sản phẩm:
triển hệ thống ¾ Giảng dạy
¾ Phát triển nội dung ¾

Phát triển phần mềm


& NÓ

¾ Quản lý sản phẩm ¾ Đảm

bảo chất lượng

Phong cách

Phong cách kinh doanh mà cả hai tham gia rất khác nhau do sự khác biệt trong cấu trúc và chiến lược
của họ. Với việc IXL Learning là một tổ chức lớn hơn nhiều bao gồm các phòng ban cố định đòi hỏi nhiều
cam kết về chi phí hoạt động hơn, nên yêu cầu cao hơn đối với các hoạt động phải chính thức và có cấu
trúc sao cho mỗi phòng ban có thể điều hành hài hòa với nhau để thực hiện chiến lược kinh doanh và phát
triển hơn nữa phần mềm trong lịch trình phát hành mục tiêu và ngân sách.

Với việc Nextpoint là một doanh nghiệp nhỏ hơn nhiều và không kiếm tiền trực tiếp từ việc phát
triển phần mềm, doanh nghiệp có thể hoạt động theo cách ít trang trọng hơn. Các phương pháp hay
nhất vẫn được tuân thủ để đảm bảo chất lượng của mã phần mềm, nhưng có sự khác biệt đáng kể về vai trò
công việc kết hợp các kỹ năng từ nhiều lĩnh vực khi được yêu cầu:

Học IXL ■ Các quy Điểm tiếp

trình chính thức và có cấu trúc để điều phối các theo ■ Hoạt động kinh doanh linh hoạt

phòng ban quy trình

■ Nhấn mạnh vào các phương pháp hay nhất để phát triển ■ Nhấn mạnh vào các phương pháp hay nhất

phần mềm để phát triển phần mềm

84
Machine Translated by Google

hệ thống
Mặc dù cả hai doanh nghiệp vận hành các mô hình kinh doanh phần mềm khác nhau theo những
cách thường trái ngược nhau, nhưng cả hai đều có chung sự phụ thuộc vào các hệ thống phần
mềm là trung tâm trong hoạt động của họ. Sự khác biệt chính là ở các hệ thống hướng tới khách
hàng được sử dụng bởi mỗi doanh nghiệp, với IXL cung cấp nhiều chủ đề hơn để làm cho các tùy
chọn đăng ký của họ trở nên phù hợp và hấp dẫn hơn, trong khi Nextpoint chỉ cung cấp nội dung
và tính năng liên quan đến việc hỗ trợ các chương trình học phí của họ:

Học IXL điểm tiếp theo

■ Phần mềm học tập phát triển nội bộ là sản phẩm ■ Nền tảng học tập phát triển nội bộ là sản phẩm

được bán cho khách hàng: hỗ trợ và nâng cao dịch vụ bán cho khách hàng:

■ Tiếp cận các bài tập học tập: ¾

¾ Khả năng yêu cầu các buổi học


Nhiều chủ đề

¾ Dùng làm bài tập ôn tập


¾ Truy cập vào buổi học

Môn lịch sử
■ Truy cập các báo cáo học tập:

¾ Được tạo ra bằng cách học ■ Tiếp cận chương trình học phí
các tương tác bài tập Nội dung:

■ Các hệ thống bổ sung cho: ¾ Dành riêng cho các chương

trình học phí đã đăng ký


¾ Bán hàng và tiếp thị ¾
¾ Dùng làm bài tập ôn tập
Quản lý kế toán

■ Hệ thống bổ sung cho ¾ Để sử dụng trong các buổi học

Truyền thông:

¾ Truyền thông nội bộ ■ Truy cập các báo cáo học tập:

¾ Truyền thông bên ngoài ¾ Được tạo ra trong học phí

phiên

¾ Được tạo thông qua tương tác


nội dung học tập

■ Các hệ thống bổ sung cho:

¾ Bán hàng và tiếp thị

¾ Kế toán quản lý

■ Hệ thống bổ sung cho


Truyền thông:

¾ Truyền thông nội bộ

¾ Truyền thông bên ngoài

¾ Cung cấp các dịch vụ học

phí qua Skype

85
Machine Translated by Google

Nhân Viên

Với việc cả hai doanh nghiệp đều tập trung vào việc sử dụng công nghệ phần mềm như một phần chính
trong việc cung cấp các giải pháp giáo dục của họ, họ có chung sự nhấn mạnh đối với một số lượng
lớn nhân viên và cộng tác viên chính của đối tác tham gia vào việc sản xuất nội dung học tập giáo
dục, cho dù điều này thông qua lập trình, thiết kế đồ họa hoặc thiết kế ý tưởng cho các tính năng của
phần mềm. Sự khác biệt chính là cách nhân viên của IXL Learning được tuyển dụng cho một loại công
việc rất cụ thể, trong khi Nextpoint với tư cách là một doanh nghiệp nhỏ nhanh nhẹn sẽ tuyển nhân
viên và cộng tác viên đối tác chính trong bất kỳ lĩnh vực nào của doanh nghiệp mà họ có kỹ năng phù
hợp để tham gia.

Học IXL điểm tiếp theo

Các giá trị được chia sẻ: Các giá trị được chia sẻ:

■ Quan tâm đến việc cải thiện ■ Quan tâm đến việc cải thiện giáo dục thông qua chiến

giáo dục thông qua công lược học tập hiện đại

nghệ
Vai trò chuyên gia:

Vai trò chuyên gia:


■ Kế toán (Đối tác chính)

■ Nhân viên bán hàng—Nhiều vai


Vai trò bán chuyên gia: ■
trò bán hàng chuyên môn ■

Nhân viên tiếp thị—Nhiều vai trò Nhà phát triển phần mềm ngăn xếp đầy đủ—một

lập trình viên chịu trách nhiệm về toàn bộ hệ thống phần


vai trò tiếp thị chuyên gia
mềm; với phạm vi mở rộng sau này hoặc phát triển các mối
■ Kế toán
quan hệ đối tác quan trọng trong lĩnh vực này sau này nếu
■ nhân sự được yêu cầu

■ Quản lý sản phẩm ■ Nhà thiết ■ Nhà phát triển nội dung—Những người sáng tạo nội dung

đa năng có kỹ năng và kinh nghiệm trong giảng dạy,


kế sản phẩm, ■ Nhà quản lý sản
lập trình và thiết kế nội dung
phẩm ■ Nhà thiết kế giao diện
■ Gia sư—Cung cấp dịch vụ học phí trực tiếp cho
người dùng ■ Nghệ sĩ sản xuất web khách hàng

Vai trò chung:


■ Nhà phát triển phần mềm giao
■ Tiếp thị và bán hàng—Có sự tham gia của toàn bộ nhóm khi cần
diện người dùng

■ Nhà phát triển phần mềm


■ Đảm bảo chất lượng—Thử nghiệm được thực hiện bởi các thành viên
phía máy chủ
trong nhóm và các đối tác chính để xác định các vấn đề về
■ Nhà phân tích dữ phần mềm trước khi phát hành

liệu ■ Đảm bảo chất lượng

86
Machine Translated by Google

So sánh – Canvas mô hình kinh doanh


Một công cụ khác được đề cập trong chương này có thể được sử dụng để so sánh cả hai
doanh nghiệp là Khung mô hình kinh doanh, cung cấp cái nhìn chi tiết hơn về các thành
phần khác nhau của các mô hình kinh doanh. Khung mô hình kinh doanh nêu bật cách cả hai
mô hình kinh doanh chia sẻ các yếu tố chung trong nhiều danh mục của chúng, ngoại trừ các
danh mục cho đề xuất giá trị, luồng doanh thu và phân khúc khách hàng. Từ các danh mục này,
rõ ràng là mặc dù IXL Learning và Nextpoint sử dụng phần mềm để cung cấp giải pháp cho một
loại vấn đề tương tự, nhưng có sự khác biệt lớn giữa các đề xuất giá trị, luồng doanh thu và
phân khúc khách hàng của họ—với mô hình kinh doanh trước đây được thiết kế như một giải pháp
để trợ giúp mọi người dạy và mô hình thứ hai được thiết kế để cung cấp các dịch vụ giảng
dạy. Một sự khác biệt lớn khác giữa hai mô hình nằm trong các đề xuất giá trị và phân khúc
thị trường mục tiêu của chúng. Cái trước được thiết kế để hỗ trợ giảng dạy chính thống và
thu hút thị trường đại chúng, trong khi cái sau tập trung vào một phân khúc thị trường nhỏ
hơn cần một giải pháp thay thế cho chiến lược giảng dạy chính thống; do đó tại sao phương
pháp học tập là một phần của đề xuất giá trị.

Mặc dù những khác biệt này nghe có vẻ nhỏ trên giấy tờ, nhưng chúng có tác động lớn lan
tỏa khắp cấu trúc đầy đủ và việc thực hiện các mô hình của chúng. Với phần mềm là yếu tố
chính của cả hai mô hình, điều quan trọng là các thành phần phần mềm phải được thiết kế theo
cách hỗ trợ chiến lược kinh doanh của chủ sở hữu. Mặc dù cả hai doanh nghiệp đều sử dụng
phần mềm để cung cấp các giải pháp học toán, nhưng cách thức phần mềm được thiết kế và cung
cấp cho các phân khúc khách hàng là khác nhau do các doanh nghiệp khác nhau như thế nào về
cơ cấu và chiến lược hoạt động. Hệ thống phần mềm của họ được thiết kế theo cách phản ánh
cách doanh nghiệp của họ vận hành—một bên có nguồn doanh thu từ việc bán đăng ký sử dụng
phần mềm, trong khi nguồn doanh thu của bên kia là từ các dịch vụ mà phần mềm tạo ra nhu
cầu. Nhận dạng này cho thấy thiết kế phần mềm của một mô hình bị ảnh hưởng như thế nào bởi
chương trình giảm hỗ trợ nhằm loại bỏ chi phí người dùng, trong khi mô hình của mô hình kia
có lợi khi thiết kế phần mềm của nó có thể tạo ra nhiều nhu cầu hỗ trợ hơn như một cơ hội để
bán dịch vụ.

87
Machine Translated by Google

Học IXL
Đối tác chính: Hoạt động chính: Đề xuất giá trị: khách hàng khách hàng

Các mối quan hệ: phân đoạn


■ Google— ■ Giáo dục ■ Cải thiện kỹ năng
AdWords thiết kế nội dung. toán học. ■ Thuê bao gia ■ Giáo viên

đình hàng
■ Trang web ■ Phần mềm ■ Cải thiện ■ Trường học
tháng.
giáo dục. phát triển. sự tự tin.
■ Gia sư
■ Thuê bao
■ Nhà cung cấp dịch vụ ■ Kiểm thử ■ Vượt qua các kỳ thi.
gia ■ Cha mẹ
lưu trữ web. phần mềm.
■ Động viên học sinh đình hàng năm.
■ Nhà cung cấp dịch ■ Bảo trì hệ học.
■ Đăng ký lớp hàng
vụ Internet (ISP). thống.
■ Tăng năm cho giáo
■ Nhà cung cấp dịch ■ Tiếp thị truyền sự tham gia của học viên.
vụ liên lạc thông xã hội. sinh/giáo viên trong
■ Đăng ký
di động và điện học tập.
■ Khách hàng nhiều
thoại cố định.
hỗ trợ ■ Hiểu hiệu suất lớp cho
■ Công ty in học tập. trường học

ấn

Tài nguyên chính: ■ So sánh kết quả học tập

với các mục tiêu của


■ Phần mềm
chương trình giảng dạy.
nền
tảng hệ thống. ■ Cho phép đưa ra
quyết định sáng
■ Máy chủ.
suốt hơn cho việc
■ Giáo dục soạn giáo án và
Nội dung. chiến lược giảng dạy.

■ Truy cập Internet. ■ Giảm bớt việc chấm bài

tập về nhà.
■ Lưu trữ web
■ Giảm căng thẳng.

■ Dành nhiều thời gian hơn

phục vụ cho các

hoạt động dạy học khác.

■ Ôm lấy

công nghệ học


tập—điểm bán
hàng chính cho
trường học

Kênh truyền hình:

■ Quảng cáo trực tuyến.

■ Trang web
giáo dục.

■ Triển lãm giáo

dục.

■ Gia sư

(khuyến nghị cho


cha mẹ)

■ Mạng xã hội—

Facebook, Twitter,
Google+ và
Pinterest

88
Machine Translated by Google

Cơ cấu chi phí: Những nguồn doanh thu:

■ Chi phí nhân viên—hầu hết trong thiết kế và phát ■ Gia đình—đăng ký ứng dụng và các tính
triển phần mềm. năng báo cáo.

■ Lưu trữ web. ■ ■ Đăng ký nâng cấp để có thêm thành viên gia
đình sau khi sinh con đầu lòng.
Quảng cáo—đặc biệt là qua Google AdWords.
■ Trường học—lớp học đăng ký các ứng dụng và
tính năng báo cáo.
■ Không gian triển lãm
■ Nâng cấp đăng ký lớp cho hơn 30 trẻ.

■ Đăng ký mới cho mỗi lớp sử dụng hệ thống

điểm tiếp theo

Đối tác chính: Các hoạt động chính: Đề Mối quan Phân khúc khách hàng
xuất giá trị: hệ khách hàng:
■ Danh bạ gia sư ■ Giao học phí ■ Cha mẹ
■ Vượt khó trong ■ Học phí cố
■ Giáo viên ■ Học tập ■ Gia sư
học tập định
thiết kế chiến lược
■ Gia sư ■ Tổ chức đào
■ Thiết kế nội môn Toán món ăn tạo
■ Nhà cung cấp dịch vụ
dung giáo dục
lưu trữ web ■ Cải thiện ■ Giảm một lần

■ Phát triển kỹ năng toán học học phí


■ Nhà cung cấp dịch
phần mềm
vụ Internet (ISP) ■ Học ■ Khóa học ban ngày

■ Kiểm thử phần mềm toán


■ Nhà cung cấp thông ■ Truy cập vào
nhanh hơn
tin liên lạc ■ Bảo trì hệ học hỏi
di động và điện thoại thống ■ Động viên công cụ cho

cố định sinh viên cung cấp


■ Tiếp thị truyền
chiến lược
■ Công ty in thông xã hội ■ Vượt qua
học tập
ấn kỳ thi
■ Tiếp thị nội
■ Nhà thầu phụ dung ■ Giảm
thư giãn
■ Khách hàng

hỗ trợ ■ Phát triển



Tài nguyên chính: Kênh truyền hình:
quản lý một
h Gia sư chiến lược ■ Danh bạ

học tập hiệu gia sư


phần mềm h
quả
nền ■ Giáo dục

tảng hệ thống ■ Ôm lấy trang web


Mới
h Giáo dục ■ Mạng xã
chiến lược
Nội dung hội—
giảng dạy
Facebook,
h Điện thoại di động
Twitter,
Internet
LinkedIn
quyền

■ Mạng lưới hỗ
h Lưu trữ web
trợ học
tập

89
Machine Translated by Google

Cơ cấu chi phí: Những nguồn doanh thu:

■ Lương nhân viên ■ Dịch vụ học phí (phụ huynh)

■ Phí nhà thầu phụ ■ Cung cấp khóa học (tổ chức đào tạo)

■ Lưu trữ web ■ Hoa hồng từ học phí (gia sư)

■ Chi phí đi lại

So sánh: kết luận


Mặc dù cả hai mô hình kinh doanh đều nhằm giải quyết cùng một loại vấn đề, nhưng sau khi
điều tra chi tiết hơn, rõ ràng là có sự khác biệt đáng kể về giá trị cốt lõi của chúng,
cách chúng giải quyết vấn đề và cách các tính năng kết quả của phần mềm được thiết kế và
phát triển để trở thành một phần của doanh nghiệp.

Học IXL
Với dòng thu nhập của IXL Learning đến từ đăng ký vào nền tảng học tập của họ, mô hình kinh
doanh của nó tập trung cao độ vào việc cung cấp các đề xuất giá trị cho các phân khúc khách
hàng của họ để biện minh cho việc mua đăng ký. Những đề xuất giá trị này xoay quanh việc
cung cấp các giải pháp giúp quản lý người học dễ dàng hơn—cho dù đó là cha mẹ của những đứa
trẻ có thể hiểu hoặc không thể tự mình hiểu các yêu cầu của chương trình giảng dạy ở trường
hay giáo viên chịu áp lực quản lý sĩ số lớp học lớn. Các mệnh đề giá trị được cung cấp thông
qua nền tảng phần mềm không chỉ là phương pháp giúp trẻ học thêm về toán mà còn là cách giảm
bớt khối lượng công việc của giáo viên bằng cách giảm nhu cầu chấm bài tập về nhà, hỗ trợ
viết báo cáo và cũng như đưa ra quyết định sáng suốt cho học sinh. bài học lập kế hoạch.
Tất cả những điều này là động lực chính thuyết phục giáo viên tích cực thuyết phục trường
học của họ mua đăng ký với IXL Learning.

Ngoài ra, đăng ký IXL Learning được thiết kế theo cách cho phép doanh nghiệp tối đa hóa
lợi nhuận bằng cách điều chỉnh giá để thu hút hai phân khúc khách hàng mà họ nhắm mục tiêu.
Cả hai phương pháp định giá đều được thiết kế để thu hút cụ thể phân khúc khách hàng mục
tiêu của họ để phân khúc khách hàng trả tiền cao hơn không thể chọn mua tùy chọn rẻ hơn. Hơn
nữa, tiềm năng doanh thu của từng phân khúc khách hàng được tối đa hóa khi không cần phải
trả thêm một khoản tiền nhỏ sau khi vượt quá số lượng học sinh mỗi lớp hoặc mỗi gia đình.
Các trường học là một phân khúc khách hàng béo bở vì họ phải trả tiền cho mỗi lớp học; với
quy mô lớp học lên tới hơn 40 học sinh, mỗi trường phải trả rất nhiều tiền!

90
Machine Translated by Google

điểm tiếp theo


Mô hình kinh doanh Nextpoint hoàn toàn trái ngược với mô hình được sử dụng bởi IXL Learning,
mặc dù nó có nhiều điểm tương đồng trên lý thuyết. Sự khác biệt rõ ràng nhất là Nextpoint
không bán đăng ký cho nền tảng phần mềm của mình; thay vào đó, nó sử dụng phần mềm như một đề
xuất giá trị và nguồn lực để tăng hiệu quả trong việc cung cấp các dịch vụ học phí. Do đó, nền
tảng học tập của họ tồn tại để hỗ trợ việc cung cấp dịch vụ nhằm tối đa hóa cả sự hài lòng của
khách hàng và lợi nhuận. Đối với mô hình Nextpoint, việc phần mềm được xác định là tài nguyên hỗ
trợ được chiến lược kinh doanh sử dụng chỉ là sự trùng hợp ngẫu nhiên.

Các giá trị cốt lõi của Nextpoint dựa trên việc cung cấp một chiến lược học tập cụ thể cho môn
toán. Kết quả là, các đề xuất giá trị của mô hình được xác định xung quanh chủ đề nhất quán là
cung cấp các phương pháp thay thế cho việc học toán. Chủ đề này tiếp cận khắp mô hình kinh doanh
để ảnh hưởng mạnh mẽ đến việc thiết kế và thực hiện cả phần mềm và chiến lược kinh doanh.

Không giống như nền tảng của IXL Learning được thiết kế để tối đa hóa thu nhập từ các luồng
doanh thu được tạo ra từ đăng ký trả phí, nền tảng học tập của Nextpoint được thiết kế để hỗ
trợ và tạo nhu cầu cho các dịch vụ mà khách hàng mua. Điều này có nghĩa là để phần mềm cung
cấp giá trị cho mô hình kinh doanh, nó phải đóng vai trò tối đa hóa tiềm năng lợi nhuận từ
các dịch vụ học phí đã bán và mở ra cơ hội bán dịch vụ mới. Phần mềm cung cấp đóng góp tốt
nhất cho mô hình kinh doanh khi nó có thể cung cấp hướng dẫn học tập theo cách giảm thời gian
cho quản trị viên và gia sư dành cho công việc giấy tờ và chuẩn bị bài học, đồng thời tăng sự
hài lòng và quan tâm của các phân khúc khách hàng đến mức họ muốn mua thêm học phí và/hoặc các
dịch vụ miễn phí. Kết quả là, thiết kế của phần mềm xoay vòng để đạt được các chương trình
nghị sự này.

Tóm lược
Những tiến bộ trong công nghệ máy tính và sự chấp nhận của chúng bởi đại chúng đã mở ra
nhiều cơ hội mới cho việc thiết kế các mô hình kinh doanh hướng phần mềm.
Những tiến bộ của công nghệ điện toán chắc chắn đã có tác động lớn nhất là việc sử dụng
Internet một cách phổ biến—cùng với người bạn đồng hành của nó, web. Cả hai điều này đã cho
phép những cách thức mới để truy cập phần mềm và do đó là những cách thức mới để các doanh
nghiệp phần mềm vận hành.

Khả năng coi SaaS được đăng ký và/hoặc hỗ trợ các dịch vụ đã mua khác có nghĩa là bạn không
còn cần coi hoạt động kinh doanh phần mềm của mình chủ yếu là viết phần mềm mà còn là tạo dịch
vụ. Đây là một lựa chọn hấp dẫn để xem xét cho dự án kinh doanh của bạn khi xem xét các sản
phẩm phần mềm và kỹ năng phát triển đang ngày càng mất giá như thế nào thông qua các xu hướng
thị trường như giới thiệu trò chơi miễn phí để chơi (F2P), đưa tin sai lệch trên phương tiện
truyền thông và sự sẵn có của các công cụ soạn thảo nội dung như PowerPoint đang dẫn đến kỳ vọng
rằng phần mềm sẽ được cung cấp miễn phí và việc phát triển phần mềm sẽ được cung cấp với mức
lương gần mức tối thiểu.

91
Machine Translated by Google

Đối với những người muốn tham gia vào các mô hình kinh doanh phần mềm truyền thống tập trung
vào việc tạo SaaP hoặc dịch vụ, có nhiều cơ hội để thành công khi bạn có thể xác định các phân
khúc thị trường có đủ nhu cầu từ những người sẵn sàng trả giá trị của sản phẩm hoặc dự án; đây
chủ yếu là những doanh nghiệp có doanh thu tài chính hàng triệu chứ không phải hàng chục hay hàng
trăm nghìn. Tin tốt cho bất kỳ ai muốn hoạt động trong lĩnh vực cung cấp dịch vụ phát triển phần
mềm là phần lớn các dự án kinh doanh CNTT vẫn thuộc lĩnh vực phát triển phần mềm tùy chỉnh. Tuy
nhiên, với sự ra đời của các dịch vụ CNTT trên đám mây, thời thế đang thay đổi—với việc các tổ
chức muốn loại bỏ việc bảo trì các hệ thống đặt riêng của họ bằng cách chuyển cơ sở hạ tầng CNTT
của họ sang đám mây.

Bất kể bạn chọn loại mô hình nào để làm cơ sở cho hoạt động kinh doanh của mình, thì cần phải xác
định đầy đủ và xác thực ý tưởng để hiểu mọi thứ khớp với nhau như thế nào; và liệu nó có khả thi
hay không. Chính vì lý do này mà các công cụ chính thức tồn tại để bạn sử dụng trong việc thiết kế
mô hình kinh doanh của mình—mỗi công cụ đều có những đặc điểm nhận dạng riêng để làm nổi bật.
Khung đánh giá Seven Domains là một công cụ đáng để xem xét trước khi bắt đầu thiết kế chính thức
mô hình kinh doanh của bạn để ý tưởng có thể được thử nghiệm theo các tiêu chí cơ bản cần thiết
để thành công. Sau khi xác nhận rằng ý tưởng có thể thành công, các công cụ khác như Khung mô hình
kinh doanh và khung McKinsey 7S có thể được sử dụng để xây dựng mô tả mô hình kinh doanh theo cách
đảm bảo tất cả các thành phần chính và mối quan hệ của chúng được xác định.

92
Machine Translated by Google

4 Tạo thương hiệu


Xây dựng thương hiệu là một yếu tố quan trọng trong sự thành công của bất kỳ doanh nghiệp nào, cho dù đó là

một tập đoàn có quy mô như Google và Sony hay một doanh nghiệp nhỏ do một người làm việc tự do.

Sai lầm mà nhiều người mắc phải khi cho rằng xây dựng thương hiệu chỉ đơn giản là một thiết kế được áp

dụng cho các tài liệu tiếp thị trực quan như tài liệu quảng cáo và trang web.

Mặc dù những yếu tố hình ảnh này có thể là một phần của hỗn hợp tạo nên một thương hiệu, nhưng chúng không

phải là thương hiệu. Chương này xem xét xây dựng thương hiệu thực sự là gì và cách bạn có thể tập trung vào

các hoạt động để xây dựng thương hiệu của riêng mình theo cách có thể ảnh hưởng tích cực đến khả năng bán

hàng và tăng lợi nhuận của bạn.

Một định nghĩa ngắn gọn về thương hiệu là gì và


không phải là gì

Một khách hàng đã từng nói với tôi rằng anh ta có một ý tưởng tuyệt vời về một thương hiệu để sử dụng cho công

việc kinh doanh mới của mình; nó sẽ có một loại logo nhất định và hình ảnh xyz cho tiêu đề thư và trang web

của anh ấy. Dù khách hàng có tốt đến đâu, tôi cũng thấy rõ ràng rằng vào thời điểm đó, anh ta không hiểu xây

dựng thương hiệu là gì hoặc làm thế nào để áp dụng nó vào chiến lược kinh doanh của mình. Với việc chọn sai

người đưa ra lời khuyên cho khách hàng này, anh ấy có thể đã dành rất nhiều thời gian và tiền bạc cho các dịch

vụ thiết kế mà cuối cùng sẽ không mang lại lợi tức cho khoản đầu tư của anh ấy—không phải vì thiết kế có lỗi,

mà vì thiết kế các yếu tố không được tạo ra để hỗ trợ thương hiệu của mình. Nhiều người không hiểu biết sẽ bối

rối vào thời điểm này, bởi vì chắc chắn việc tạo ra một thương hiệu là tất cả về cách mọi người nhìn thấy bạn

thông qua logo, tài liệu kinh doanh, v.v.?

Chính câu hỏi này là câu trả lời cho lý do tại sao rất nhiều người có quan niệm sai lầm về xây dựng

thương hiệu. Xây dựng thương hiệu không phải là những gì mọi người nhìn thấy về bạn, mà là những gì họ

nghĩ về bạn. Đúng là mọi người sẽ đánh giá về khả năng của bạn dựa trên cách bạn thể hiện bản thân một

cách trực quan, nhưng ngay cả điều này cũng phụ thuộc vào những gì họ nghĩ về những gì họ đang thấy. Tờ

quảng cáo hoặc trang web được thiết kế trực quan tốt nhất trên thế giới sẽ không tạo ra nhiều doanh nghiệp

nếu nó có nhiều lỗi chính tả hoặc được viết theo cách không kết nối với người đọc. Một doanh nghiệp sẽ không

bán được hàng với những khách hàng đã đọc những nhận xét tiêu cực hoặc những người đã bị kể những câu chuyện

không hay về cách thức hoạt động của doanh nghiệp. Xây dựng thương hiệu trực quan đóng vai trò hình thành

nhận thức về doanh nghiệp, nhưng việc xây dựng thương hiệu luôn là làm cho mọi người nghĩ về bạn theo cách

mà bạn muốn họ nghĩ về mình.

93
Machine Translated by Google

Quan điểm hoàn toàn khác về ý nghĩa của việc xây dựng thương hiệu mở ra phạm vi rộng lớn hơn cho
các loại hoạt động mà bạn nên cân nhắc tham gia để xây dựng thương hiệu doanh nghiệp của mình.

h Bạn đang nhắm mục tiêu ai? h

Bạn muốn những người này nhìn nhận bạn như thế nào? h Bạn

có muốn được coi là một chuyên gia hay bạn muốn được coi là một nhà tổng quát hơn?

h USP (Điểm bán hàng độc nhất) của bạn là gì và bạn muốn mọi người nhận ra chúng như thế nào?

h Bạn muốn mọi người liên kết với bạn theo những giá trị nào?

Đây đều là những câu hỏi rất quan trọng mà bạn cần biết câu trả lời để thành công trong việc xây
dựng thương hiệu có giá trị đối với cách bạn tiếp thị bản thân để giành được khách hàng mới cũng
như giữ chân khách hàng hiện tại và đảm bảo nhiều công việc hơn.

Biết khán giả của bạn


Biết bạn định bán cho ai là câu hỏi quan trọng nhất cần biết câu trả lời, không chỉ bởi vì bạn cần
biết họ muốn mua gì, mà bởi vì câu trả lời cho câu hỏi này quyết định cách hình thành câu trả lời cho
các câu hỏi khác về thương hiệu của bạn .

Phát triển phần mềm là một dịch vụ khó bán nếu khách hàng không biết họ muốn gì hoặc cần gì vì
họ không dễ dàng nhìn thấy mối quan hệ giữa chức năng của phần mềm và lợi ích được cung cấp. Biết về
khán giả của bạn mang lại cho bạn một số lợi thế theo nghĩa nó cho phép bạn xác định những lợi ích
cần tập trung vào khi bạn nói về những gì bạn cung cấp. Hơn nữa, việc chuyên môn hóa việc phát triển
phần mềm của bạn trong một lĩnh vực hoặc cho một mục đích cho phép bạn hiểu rõ hơn cách bạn có thể
mang lại lợi ích cho thị trường mục tiêu của mình và mô tả cụ thể hơn những lợi ích đó khi bạn nói
chuyện với mọi người.

Nếu bạn có ý định trở thành một freelancer nói chung, bạn sẽ có nhiều kiểu khách hàng khác nhau
mua các loại dịch vụ khác nhau từ bạn—một số trong số đó có thể nằm ngoài phạm vi lập trình. Điều
này cũng tốt vì nó có nghĩa là bạn có thể dành nhiều thời gian hơn cho công việc được trả lương và
cho phép bạn giảm nguy cơ không có việc làm khi nhu cầu về một loại dịch vụ cạn kiệt. Về mặt xây dựng
thương hiệu, bạn sẽ muốn tránh được biết đến như một chuyên gia về tất cả các ngành nghề, vì vậy,
việc tập trung các dịch vụ khác nhau của bạn xung quanh một chủ đề chung chẳng hạn như tiếp thị sẽ
cho phép bạn được coi là một chuyên gia trong lĩnh vực này, thay vì một người sẽ cống hiến hết mình.
bất cứ điều gì một thử.

Xác định nhận thức cần thiết cho các mục tiêu
Sau khi bạn biết mình muốn hướng dịch vụ của mình tới đối tượng nào, bước tiếp theo là xác định
cách bạn muốn họ nghĩ về mình. Như đã định nghĩa trước đó trong chương này, xây dựng thương hiệu là
tất cả về việc kiểm soát cách mọi người nghĩ về bạn theo thứ tự và theo nghĩa của một doanh nghiệp,
những nhận thức này phải liên kết với lợi ích cho doanh nghiệp giúp doanh nghiệp đạt được mục tiêu
của mình. Bạn có những mục tiêu nào dựa trên cách mọi người nghĩ về bạn? Một số ví dụ có thể bao gồm:

94
Machine Translated by Google

Khách quan nhận thức cần thiết

Thu phí bảo hiểm cao hơn mức trung ■ Có nhiều kinh nghiệm trong lĩnh vực bạn
bình của ngành hoạt động

■ Kiến thức chi tiết về chủ đề ở mức độ mà người


khác không biết

■ Khả năng viết loại mã để giải quyết vấn đề

mà người khác không thể ■ Có khả năng áp

dụng kinh nghiệm và

kiến thức để mang lại những lợi ích

bổ sung liên quan đến chất lượng, thời gian

và tiết kiệm tài chính nhiều hơn bất kỳ khoản


phí nào bạn tính ■ Không tốn kém khi thuê ■

Bán nhiều cho những người có ngân sách nhỏ hơn Có thể tiếp cận và sẵn sàng cung cấp lời khuyên

Bán hàng cho những người không có kiến thức


kỹ thuật

■ Dễ hiểu ■ Được biết đến

Bán cho người bận rộn với việc cung cấp những gì đã hứa đúng hạn

và không gặp sự cố ■ Mức độ hài lòng

của khách hàng cao ■ Chuyên gia trong

lĩnh vực bạn hoạt động

Đưa tin trên các phương tiện truyền thông

■ Đáng tin cậy như một nguồn thông tin chính xác

thông tin

■ Dễ dàng tiếp cận khi được yêu cầu

Bằng cách lập loại danh sách này, bạn sẽ thấy rõ hơn rất nhiều về loại nhận thức về thương hiệu
mà bạn cần xây dựng để giúp bạn đạt được mục tiêu của mình. Mặc dù việc xây dựng thương hiệu có
liên quan mật thiết đến bán hàng và tiếp thị, nhưng bạn cũng sẽ thấy rằng không phải tất cả các mục
tiêu đều trực tiếp hướng đến việc bán hàng, chẳng hạn như được truyền thông đưa tin, có thể tính phí
cao hơn mức giá của ngành và được coi là thân thiện với môi trường.

Chuyên môn hóa – trở thành chuyên gia tên miền


Quyết định chuyên cung cấp một loại dịch vụ phát triển phần mềm cụ thể có thể loại trừ phần lớn
thị trường mà bạn có thể bán cho họ, nhưng nó cũng mang lại lợi thế là tăng đáng kể khả năng chốt đơn
hàng với những người mà bạn chuyên bán; trong một số trường hợp, bạn cũng có thể yêu cầu tỷ lệ cao
hơn. Điều này không phải vì mọi người muốn bạn chỉ phát triển loại phần mềm họ muốn, nhưng thực tế
là bạn chuyên về loại phát triển phần mềm họ cần giúp họ tin tưởng hơn rằng bạn hiểu yêu cầu của họ.

95
Machine Translated by Google

Ngoài ra, vì bạn chuyên môn hóa nên bạn có thể tạo tài liệu tiếp thị và quảng cáo chiêu
hàng của mình cụ thể hơn; để truyền đạt chính xác cách người mua được hưởng lợi từ việc
mua hàng của bạn; cho dù đó là nghiên cứu điển hình của bạn, mô tả các ví dụ hay phong
cách viết thu hút những người mà bạn đang tiếp thị, chuyên môn của bạn cho phép bạn
được coi là đã cung cấp những gì người mua muốn, do đó rủi ro thấp hơn đối với bất kỳ
điều gì xảy ra sai và có nhiều khả năng xoay chuyển tình thế hơn nếu họ làm.

Chuyên môn hóa với tư cách là nhà phát triển phần mềm có thể ở dạng chỉ phục vụ một
loại khách hàng cụ thể hoặc chỉ làm việc với các loại công nghệ cụ thể. Cả hai cơ hội
này đều mở ra để được giới thiệu cho công việc vì bạn đơn giản hóa thông điệp về những
gì bạn đang làm và những gì bạn làm. Sau đây là những ví dụ về cách một số nhà phát triển
phần mềm quyết định chuyên môn hóa:

h Chuyên ngành:

¾ Tiếp thị
¾ Thương mại điện tử

¾ E-learning

¾ Bảo mật

h Chuyên môn công nghệ:

¾ Phát triển web mặt trước ¾

Phát triển web phía máy chủ


¾PHP

¾ HTML5

¾Java

¾ Moodle

¾ WordPress

Bạn sẽ nhận thấy những ví dụ cuối cùng trong danh sách là Moodle và WordPress, cả hai
đều là hệ thống được phát triển bằng PHP. Đây là những hệ thống phổ biến mà nhiều người
đặc biệt yêu cầu sử dụng trong các dự án của họ, với rất nhiều người thuê không biết rằng
có bất kỳ mối quan hệ nào giữa PHP và các hệ thống này. Trong khi các lập trình viên PHP
giỏi sẽ có nhiều khả năng cài đặt và sửa đổi Moodle và WordPress vì chúng là các hệ thống
PHP, nhận thức của người mua sẽ là ai đó được coi là chuyên gia về Moodle hoặc WordPress
là người tốt hơn để thuê—mặc dù WordPress chuyên gia có khả năng có ít khả năng hơn
nhiều; Ai cũng biết rằng rất nhiều người được phân loại là chuyên gia WordPress rất giỏi
cài đặt WordPress và mày mò mã, nhưng lại không phải là lập trình viên giỏi, tương tự như
cách người dùng Instagram thường không phải là nhiếp ảnh gia thực thụ hoặc là người có
thể tạo trang web với Wix không phải là nhà phát triển web nếu họ không có kỹ năng viết
mã. Mặc dù nhà phát triển PHP là ứng cử viên sáng giá hơn, chuyên gia WordPress sẽ giành
được nhiều dự án WordPress hơn vì cách họ được coi là có khả năng cung cấp nhiều hơn với
WordPress, do đó cho thấy tầm quan trọng của việc xác định cách mọi người cảm nhận khả
năng của bạn.

96
Machine Translated by Google

Tổng quát hóa – nhắm mục tiêu đối tượng rộng hơn
Chiến lược ngược lại với chuyên môn hóa là chiến lược tổng quát hóa, mặc dù có nguy cơ khiến bạn bị

coi là người nắm giữ tất cả các giao dịch, nhưng cũng có thể mang lại kết quả nếu được thực hiện tốt.

Khi sử dụng chiến lược tổng quát, điều quan trọng là bạn phải tạo sự khác biệt với các chuyên gia, điều

này bao gồm việc không sử dụng các cụm từ tiếp thị ám chỉ bạn là một chuyên gia— có một số cách tốt hơn để

đánh mất lòng tin của một khách hàng hiểu biết bằng cách tự nhận mình là chuyên gia về một chủ đề/dịch vụ

và sau đó trong cùng một cuộc trò chuyện/tuyên bố tiếp thị để cung cấp một danh sách các dịch vụ khác:

Hình 4.1: Bạn có tin tưởng một quảng cáo tuyên bố chuyên môn hóa và đồng thời tự mâu thuẫn với việc cung cấp các dịch
vụ không liên quan không? Rủi ro thậm chí còn cao hơn khi không có chỗ cho sai lầm trong những gì bạn đang mua.

Điểm mạnh chính của việc trở thành một người biết tổng quát là khả năng tăng mức độ phù hợp của bạn với

nhiều loại dự án hơn và với điều kiện là bạn có trình độ kỹ năng mà các cơ hội dự án này yêu cầu, việc tìm

kiếm công việc mới sau khi hoàn thành dự án có thể sẽ dễ dàng hơn nhiều bởi vì bộ kỹ năng của bạn có thể được

áp dụng theo nhiều cách hơn so với kỹ năng của một chuyên gia; mẹo để trở thành một nhà tổng quát là biết mức

độ phức tạp mà bạn có thể thực hiện trong các lĩnh vực mà bạn khái quát để bạn có thể tự tay chọn các dự án mà

bạn có thể hoàn thành xuất sắc mà không gặp khó khăn—không phải lúc nào cũng là một nhiệm vụ dễ dàng vì ngay cả

các chuyên gia cũng vẫn điều hành vào vấn đề với những vấn đề này.

Với tư cách là một người nói chung, bạn phải cố gắng tránh nhận thức rằng mình là người nắm giữ tất cả các giao

dịch, điều này ảnh hưởng đến uy tín và khả năng đàm phán của bạn để giành được các dự án được trả lương cao hơn.

Độ tin cậy rất quan trọng đối với các hoạt động xây dựng thương hiệu vì:

h Nó là một tài sản để tạo ra các khuyến nghị truyền miệng dẫn đến bán hàng h Nó có thể được sử dụng để

mở rộng tiếp xúc với các phương tiện truyền thông để được nhiều người biết đến hơn và tăng độ tin cậy

h Đây là một yếu tố được khách hàng tính đến khi lựa chọn nhà cung cấp h Nó có thể được

sử dụng để tăng sức hấp dẫn của các gói thầu dự án mà bạn thực hiện

97
Machine Translated by Google

Với việc xây dựng thương hiệu là tất cả về việc quản lý nhận thức, cách để tránh bị coi là
người nắm giữ tất cả các giao dịch và để tạo ra nhận thức về tính chính trực cao hơn là chọn
lọc các thông tin liên lạc được sử dụng với những người mà bạn giao dịch. Sau đây là một số ý
tưởng về những gì mà một nhà phát triển nói chung cung cấp nhiều loại dịch vụ phần mềm, từ
phát triển trò chơi đến thiết kế web, thương mại điện tử và hệ thống CRM có thể muốn truyền đạt:

Mục tiêu Các chủ đề cốt lõi được truyền đạt Chi tiết cụ thể tùy chọn
để đề cập

doanh ■ Bán hàng và tiếp thị trên Internet ■ Trang web

nghiệp khởi nghiệp


■ Quảng cáo trả tiền

cho mỗi lần nhấp

chuột ■ Hệ thống liên kết

■ Mạng xã hội

Doanh nghiệp ■ Phần mềm tiếp thị ■ Hệ thống ■ Ứng dụng điện
thành lập
kinh doanh CNTT ■ Tiếp thị và thoại ■ Trò chơi

bán hàng qua Internet lan truyền ■ Ứng dụng Facebook

■ Tiếp thị và bán hàng

qua Internet ■ Hệ

thống CRM ■ Hệ thống hóa

đơn

■ Cơ sở dữ liệu

■ SEO

nhà báo giải trí ■ Ứng dụng thông tin và phong cách sống ■ Thiết kế trò chơi

■ Trò chơi ■ Công nghệ lập trình trò

chơi ■ Cơ sở dữ liệu

nhà báo ■ Thành công trong kinh doanh của khách hàng

kinh doanh hệ thống


■ Hệ thống phần mềm ■ Hệ

■ Những đổi mới công nghệ


thống CRM
hiện tại và nghiên cứu điển

hình của chúng ■ Bán hàng và tiếp thị

trên Internet
■ Công nghệ tương lai và tác động dự

kiến của chúng đối với hoạt động

kinh doanh ■ Bảo mật hệ thống web ■

nhà báo công Công nghệ mới nổi ■ Nghiên cứu điển hình ■ Hệ thống phần mềm

nghệ
về các dự án khách hàng đã hoàn thành

98
Machine Translated by Google

Lưu ý cách các chủ đề thảo luận được đề xuất được xác định rõ ràng để hiểu các chủ đề khái quát,
trái ngược với các kỹ năng cụ thể. Ví dụ: bạn có thể có nhiều kỹ năng khác nhau trong các lĩnh
vực thiết kế web, viết nội dung, cài đặt/cấu hình hệ thống phần mềm nguồn mở và quản lý quảng cáo
trả tiền cho mỗi lần nhấp chuột chẳng hạn như với Google AdWords, nhưng bạn sẽ có nhiều người sử
dụng hơn quan tâm đến những gì bạn có thể làm bằng cách thảo luận về lợi ích của tiếp thị qua
Internet nói chung, trái ngược với việc nói về tính kỹ thuật của các chủ đề cụ thể chẳng hạn như
điều gì tạo nên một trang web tốt hoặc quảng cáo trả tiền cho mỗi lần nhấp chuột hoạt động như
thế nào. Điều này là do những người muốn thuê những người làm công việc tổng quát thường là những
người chủ yếu quan tâm đến kết quả và có mục tiêu cụ thể về những gì họ muốn đạt được—ví dụ: họ muốn
bán được nhiều hàng hơn với tỷ suất lợi nhuận tốt hơn.

Một lý do khác khiến mọi người thuê những người làm tổng quát là để giảm bớt sự tham gia của họ
trong việc quản lý các dự án của họ. Bằng cách chọn một người có thể đảm nhận trách nhiệm của
toàn bộ dự án, họ giảm bớt yêu cầu quản lý sự cộng tác của các chuyên gia mà nếu không họ sẽ phải
chọn. Bằng cách thể hiện mình là người có thể loại bỏ nhu cầu hiểu biết về các vấn đề kỹ thuật
và nhu cầu dành thời gian quản lý một nhóm chuyên gia, bạn giới thiệu dịch vụ của mình như một
đề xuất hiệu quả về chi phí giúp tiết kiệm tiền nhờ tiết kiệm thời gian bên cạnh những gì dịch
vụ mang lại— và đây là nhận thức mà bạn cần thể hiện khi xây dựng thương hiệu của mình.

Sau đây là các mẹo để khái quát hóa:

h Quyết định góc nhìn chung mà bạn muốn giao tiếp không liên quan đến
mô tả mọi thứ một cách chi tiết—ví dụ: đơn giản hóa các trang web, hệ thống tiếp thị
liên kết, thương mại điện tử, v.v., đến các hệ thống tiếp thị và bán hàng trực tuyến

h Nhấn mạnh lợi ích cho khách hàng về mặt thời gian tiết kiệm từ việc lựa chọn và
quản lý một nhóm chuyên gia—nói cách khác, bạn giải quyết toàn bộ vấn đề

h Nhấn mạnh việc khách hàng không cần phải tìm hiểu các chi tiết cụ thể để đưa ra quyết định
đúng đắn về việc nên thuê ai—đó là khả năng của bạn để thực hiện những gì bạn hứa h Xây

dựng mối quan hệ với các chuyên gia đã được chứng minh cho các dự án đòi hỏi trình độ kỹ năng
nằm ngoài khả năng của bạn

nghiên cứu trường hợp

Mark Smith, một nhà báo tự do, người đã viết cho các ấn phẩm công nghiệp nặng bao gồm Daily Mirror,
đã viết rất nhiều câu chuyện ở mọi quy mô đòi hỏi phải sử dụng ý kiến và sự thật từ các nguồn để vừa
xây dựng câu chuyện vừa cung cấp độ tin cậy.
Các nguồn tin bao gồm từ những nhân chứng trực tiếp của các sự kiện lịch sử, bao gồm các cựu
chiến binh trong Thế chiến 2, cho đến các chủ doanh nghiệp và học giả. Giống như nhiều nhà báo,
Mark đánh giá cao những mối liên hệ thường xuyên vì họ đáng tin cậy và dễ dàng liên hệ mà không
cần tốn thời gian nghiên cứu những người không quen biết và chưa được chứng minh—đặc biệt là khi
những câu chuyện có thể dẫn đến hành động pháp lý chống lại tờ báo trên cơ sở phỉ báng do thông
tin không chính xác.

99
Machine Translated by Google

Mức độ liên quan của một nguồn thông tin phụ thuộc nhiều vào tình huống và bối cảnh của một câu chuyện, cũng

như mục đích mà chúng được sử dụng để nhấn mạnh. Trong trường hợp một câu chuyện tin tức địa phương, một

người nào đó không có liên hệ trong ngành hoặc học thuật vẫn có thể cung cấp giá trị bằng cách cho phép câu

chuyện thể hiện quan điểm phản ánh những người sống trong khu vực mà câu chuyện đang được báo cáo.

Phần lớn các nhiệm vụ được giao cho Mark trong sự nghiệp báo chí của anh ấy đều dựa trên thời hạn chặt chẽ với

một khoảng trống cụ thể để điền vào các ấn phẩm báo chí. Do đó, Mark có một danh sách những người được biết

là có hiểu biết về các chủ đề cụ thể để có thể liên hệ với họ ngay lập tức nhằm đáp ứng thời hạn chặt chẽ cho

các câu chuyện được đưa ra trong thời gian ngắn. Mặc dù hiểu biết về một chủ đề là một yếu tố quan trọng,

nhưng bản chất công việc của Mark có thời hạn chặt chẽ như vậy có nghĩa là những người được biết là có thể trả

lời điện thoại của anh ấy, hoặc nếu không, hãy nhanh chóng liên lạc lại với anh ấy, có tầm quan trọng cao

hơn. ; điểm mấu chốt đối với các nguồn thông tin trong bất kỳ câu chuyện nào là chuẩn bị sẵn phần trích dẫn

khi câu chuyện đó được in ra—bởi vì tin tức hôm nay không có giá trị sau ngày mai. Nhận được sự xuất hiện trên

các phương tiện truyền thông thông qua các nhà báo là để trở thành một tài sản mà họ có thể sử dụng để giải

quyết các tình huống khó xử trong công việc hàng ngày của họ—làm thế nào bạn có thể khiến họ làm công việc của

mình tốt hơn mà không gây thêm vấn đề?

Trở thành một chuyên gia có hai lợi thế đáng chú ý để lọt vào danh sách liên lạc của các nhà

báo—dễ nhớ và rất cụ thể đối với công việc bạn làm. Điều này có nghĩa là bạn có nhiều khả năng trở thành

người đầu tiên mà một nhà báo nghĩ đến khi họ cần lấy ý kiến hoặc sự thật về một câu chuyện. Có một chủ

nghĩa đặc biệt dễ mô tả cũng có nghĩa là mô tả/hồ sơ của bạn có nhiều khả năng nổi bật hơn khi các nhà báo

có thời gian gấp rút xem qua danh sách liên hệ của họ để tìm các nguồn thông tin hữu ích.

Bắt đầu nhận thức


Khiến mọi người nhìn nhận về bạn theo cách có lợi nhất cho doanh nghiệp và các chiến lược tiếp thị của bạn

sẽ hiếm khi diễn ra nhanh chóng cho đến khi bạn có động lực đằng sau thương hiệu của mình. Khi thiết lập

thương hiệu của mình, bạn nên xem xét các hoạt động có thể ảnh hưởng tích cực đến cách mọi người cảm nhận về

bạn và đưa ra lý do để tạo ra cuộc thảo luận về bạn nhằm tạo thêm nhận thức về bạn. Trong thời đại của các

nền tảng truyền thông xã hội như Twitter, LinkedIn và Facebook, chưa bao giờ việc bắt đầu xây dựng thương

hiệu của riêng bạn trở nên dễ dàng hơn bao giờ hết.

Sau đây là những ý tưởng cho các hoạt động có thể được sử dụng để bắt đầu nhận diện và nhận thức thương

hiệu:

Làm một công việc tốt


Không được coi là một hoạt động riêng biệt để xây dựng thương hiệu; làm tốt công việc cho những khách hàng

đánh giá cao công việc của bạn sẽ dẫn đến các đề xuất và danh sách những người bạn có thể chuyển sang để

cung cấp tài liệu tham khảo và trích dẫn tích cực để sử dụng cho các tài liệu tiếp thị của bạn.

100
Machine Translated by Google

Thật không may, làm một công việc tốt không chỉ là làm một công việc tốt. Không giống như các

ngành nghề khác, nơi chất lượng có thể dễ dàng được đánh giá trực quan, chất lượng trong lập trình thường

là kết hợp các lợi ích như tính linh hoạt và hiệu quả chỉ có thể được đánh giá đầy đủ khi hiểu rõ hậu quả

của một công việc tồi tệ. Về mặt nhận thức thương hiệu, điều này có nghĩa là bạn có thể rơi vào tình huống

mà khách hàng cho rằng hiệu suất của bạn kém trong khi bạn đã hoàn thành tốt công việc. Rủi ro này nhấn

mạnh tầm quan trọng của việc quản lý kỳ vọng và duy trì thông tin liên lạc rõ ràng để đảm bảo rằng khách

hàng tiếp tục nhận thấy rằng bạn đang làm tốt công việc.

Xem các chương 6, 7, 8 và 12 để biết chi tiết chuyên sâu về việc quản lý điều này.

ưu đãi thời gian có hạn


Cung cấp một ưu đãi mang lại sự gia tăng đáng kể về giá trị so với tiêu chuẩn ngành là một cách hay để

thu hút sự chú ý của người mua tiềm năng. Ưu đãi kiểu này có nhiều dạng, cho dù đó là giá thấp hơn, hai

tặng một, hỗ trợ mở rộng hoặc gói sản phẩm/dịch vụ miễn phí khi mua hàng. Đề xuất giá trị gia tăng được

thực hiện với loại ưu đãi này là một cách tốt để giúp những người mua tiềm năng quên đi mọi nghi ngờ mà

họ có về việc bạn thiếu thành tích.

Thật không may, cung cấp giá trị đặc biệt đi kèm với chi phí—và nếu chi phí đó không được tài trợ bởi

khách hàng, nó sẽ được cung cấp với chi phí cho chính bạn, điều này không thể duy trì trong thời gian

dài mà bạn không phải hy sinh thu nhập hoặc có nguy cơ mất tiền. Một vấn đề khác phải đối mặt với việc

cung cấp giá trị đặc biệt để giành được công việc là mọi người bắt đầu coi đây là tiêu chuẩn chứ không

phải là ngoại lệ, điều này khiến bạn khó tạo ra lợi nhuận xứng đáng với thời gian của mình.

Yếu tố thời gian là phần quan trọng nhất của ưu đãi thời gian giới hạn. Bằng cách nhấn mạnh rằng ưu đãi chỉ

có thời hạn trong suốt quá trình tiếp thị và phân phối dịch vụ hoặc sản phẩm phần mềm của bạn, bạn giảm

thiểu rủi ro khi mọi người cho rằng ưu đãi đó là tiêu chuẩn mà bạn cung cấp; điều này rất quan trọng vì rất

khó để tăng giá/tỷ lệ sau khi bạn đã cung cấp ở mức giá thấp hơn. Điều này cũng có lợi thế là thuyết phục

mọi người mua sớm hơn và lan truyền thông tin, đặc biệt là thông qua các nền tảng truyền thông xã hội như

LinkedIn, Twitter và Facebook. Nếu được quản lý đúng cách, loại tiếp xúc này có thể dẫn đến việc được thuê

lại, nhưng với mức giá thông thường của bạn sau khi ưu đãi có thời hạn đã hết hạn; những khách hàng hài

lòng bị ấn tượng bởi dịch vụ của bạn sẽ không chỉ tin tưởng bạn để hoàn thành công việc mà còn giới thiệu

bạn với những người khác mà họ biết.

cuộc thi
Tương tự như các ưu đãi trong thời gian giới hạn, các cuộc thi nhằm cung cấp thứ gì đó thu hút sự quan

tâm của đối tượng mục tiêu của bạn nhằm thuyết phục họ đăng ký cũng như truyền bá thông tin qua mạng xã

hội, e-mail, blog và phương tiện truyền thông đại chúng. . Giống như các ưu đãi có giới hạn thời gian, có

một chi phí để trao giải thưởng của cuộc thi, cho dù đó là chi phí thời gian hay vật liệu; không bao giờ

coi thời gian là không có giá trị, bởi vì thời gian dành cho việc cung cấp một dịch vụ như một phần thưởng

là thời gian không được dùng để kiếm tiền, do đó có cái giá phải trả khi mất đi cơ hội làm việc.

101
Machine Translated by Google

Giá trị của việc sử dụng các cuộc thi trong hoạt động tiếp thị thương hiệu của bạn là mức độ hiển
thị giúp bạn được công nhận cũng như xây dựng cơ sở dữ liệu tiếp thị của mình.

Với loại giải thưởng phù hợp nhằm vào loại người mà bạn dự định bán hàng, kết hợp với hoạt động tiếp
thị phù hợp, mức độ hiển thị đạt được có thể tốn ít chi phí hơn mức độ hiển thị tương đương được tạo
ra thông qua quảng cáo và mang lại số lượng đăng ký cao hơn.

Khi quyết định sử dụng các cuộc thi như thế nào cho chiến lược xây dựng thương hiệu của mình, bạn
cần cân nhắc lựa chọn loại giải thưởng góp phần tác động đến nhận thức về dịch vụ hoặc sản phẩm phần

mềm mà bạn cung cấp cũng như được khán giả mà bạn nhắm đến quan tâm. Hai giải thưởng tiềm năng có nhu
cầu cao trong dịp Giáng sinh năm 2013 là Sony's Playstation 4 và Sesame Street Big Hugs Elmo; cung cấp

một trong hai giải thưởng này sẽ thu hút nhiều sự quan tâm, nhưng không giải thưởng nào có khả năng giúp
nhận thức về thương hiệu hoặc cơ sở dữ liệu tiếp thị của bạn nếu bạn đang bán dịch vụ phần mềm để quản

lý dây chuyền sản xuất của nhà máy.

Giải thưởng cạnh tranh phù hợp không nhất thiết phải tốn kém. Bằng cách hợp tác với các doanh nghiệp
cung cấp các dịch vụ và sản phẩm miễn phí không cạnh tranh trực tiếp với bạn, bạn sẽ có cơ hội tổ chức
một cuộc thi bằng cách sử dụng thương hiệu của mình kết hợp một phần dịch vụ hoặc sản phẩm của bạn với

những sản phẩm hoặc dịch vụ mà bạn đang hợp tác. Tất cả các bên đều có thể hưởng lợi thông qua việc tạo
ra những người đăng ký cạnh tranh và có thể thông qua cách các dịch vụ/sản phẩm có thể được kết hợp theo

chức năng của chúng.

Các bài tập xây dựng thương hiệu bằng cách sử dụng các cuộc thi chỉ là một phần của chiến lược
rộng lớn hơn. Bằng cách sử dụng các cuộc thi để xây dựng cơ sở dữ liệu tiếp thị có liên quan, bạn

có thể tận dụng phương tiện truyền thông xã hội và bản tin tiếp thị qua email để theo dõi và thu
hút thêm những người đăng ký cuộc thi để nhận thức rõ hơn về thương hiệu của bạn và cho phép bạn trở

nên phù hợp hơn với sở thích của họ —đừng nhầm lẫn với việc gửi thư rác, vì vậy hãy xem chương 5 về tiếp thị.

Khen thưởng lòng trung thành của khách hàng

Thể hiện sự công nhận đối với khách hàng hiện tại của bạn là một cách tốt để đảm bảo rằng họ không chỉ

tiếp tục mua hàng của bạn. Là một doanh nghiệp nhỏ, bạn có lợi thế là có thể làm quen với tất cả các
khách hàng của mình. Mặc dù đó có thể là điều bạn cho là hiển nhiên, nhưng khách hàng/khách hàng sẽ rất
ấn tượng khi bạn có thể cho thấy rằng bạn công nhận họ một cách cá nhân. Điều này tự nó là đủ để họ nhớ

đến bạn và do đó tăng cơ hội họ quay lại mua hàng của bạn.

Khái niệm về loại công nhận này có thể được tiến xa hơn bằng cách tặng thưởng cho những khách

hàng thường xuyên—với một chi phí nhỏ, khách hàng/khách hàng có thể bị thuyết phục tiếp tục mua hàng
vì lòng trung thành để đổi lấy phần thưởng. Một ví dụ điển hình là cửa hàng bánh pizza địa phương mà

tôi thường lui tới trong hầu hết các tuần để mua một chiếc bánh pizza dứa; họ luôn biết tôi gọi món gì
và tặng một lon Sprite miễn phí vì tôi là khách quen. Chi phí cho món ăn miễn phí của họ là tối thiểu,
nhưng ấn tượng từ dịch vụ khách hàng của họ nhận ra những gì tôi muốn đặt hàng cũng như thể hiện sự đánh
giá cao của họ với món quà tặng tạo ra cảm giác đánh giá cao và lòng trung thành mà ba cửa hàng pizza

khác trên cùng một con đường không có đã đạt được; có lẽ sẽ cảm thấy hơi xấu hổ khi họ nhìn thấy tôi đi
ngang qua cửa hàng của họ với một chiếc bánh pizza từ một trong những cửa hàng khác, những người không
biết tôi và có lẽ không quan tâm tôi là ai. Đạo đức của câu chuyện là một vấn đề tâm lý—công nhận khách

hàng của bạn và nhấn mạnh sự đánh giá cao lòng trung thành của bạn thông qua phần thưởng là một cách tốt
để đảm bảo họ tiếp tục quay lại, có khả năng đến mức họ cảm thấy giao dịch với bất kỳ ai khác là phi đạo

đức.

102
Machine Translated by Google

Khen thưởng lòng trung thành có thể có nhiều hình thức từ phần thưởng không chính thức như ví dụ trước, đến

việc có thẻ phần thưởng cho lòng trung thành, chẳng hạn như thẻ được sử dụng bởi các công ty như Tesco,

Boots và Starbucks. Tùy thuộc vào loại phần mềm bạn cung cấp và loại khách hàng và đối tượng khách hàng mà

bạn giao dịch, loại phần thưởng sẽ khác nhau, nhưng phải luôn ở cùng một tỷ lệ. Lấy ví dụ về bánh pizza

trước: phần thưởng miễn phí có giá trị £0,60 và giá trị bánh pizza là £6, vì vậy phần thưởng giảm giá là

10%. Trong một ví dụ về phần mềm, cung cấp phần thưởng cho giá trị 10% có thể là:

h Đối với trò chơi trên iPhone, tặng một lần mua hàng trong ứng dụng miễn phí trị giá £2 cho mỗi

£20 chi tiêu

h Đối với một khách hàng phần mềm đặt làm riêng chi 20.000 bảng Anh cho các dịch vụ của bạn,

làm thêm giờ để đáp ứng một số thay đổi vào phút cuối, cung cấp thêm khóa đào tạo và/hoặc

cung cấp các dịch vụ miễn phí khác

h Gửi một hộp sô cô la làm quà Giáng sinh cho một doanh nghiệp nhỏ thường xuyên thuê bạn để sửa

đổi trang web của họ

Chìa khóa để sử dụng phần thưởng cho lòng trung thành của khách hàng nhằm nâng cao nhận thức về thương

hiệu của bạn là chọn lọc xem bạn thưởng cho ai và cái gì, cũng như đảm bảo rằng những người bạn tặng

thưởng biết rằng họ đang được khen thưởng; thương hiệu của bạn sẽ không bao giờ được hưởng lợi từ việc

thưởng cho khách hàng và khách hàng nếu họ coi đó là một phần của thỏa thuận tiêu chuẩn. Về việc chọn lọc

phần thưởng, bạn không chỉ muốn chọn lọc giá trị của phần thưởng mà bạn cung cấp so với số tiền mà khách

hàng/khách hàng chi tiêu cho bạn, mà bạn còn muốn đảm bảo rằng món quà đó được đánh giá cao—điều đó chẳng

ích gì khi gửi một chai rượu sâm panh đắt tiền cho một khách hàng nghiện rượu; điều này có thể được coi là

bạn không biết nhiều về họ với tư cách là một người.

Quan hệ đối tác chiến lược


Hình thành quan hệ đối tác với các doanh nghiệp khác có khả năng bổ sung cho sản phẩm hoặc dịch vụ phát

triển phần mềm mà bạn bán có thể là một cách để nhận được sự công nhận từ những người mua tiềm năng, những

người đã biết và tin tưởng vào thương hiệu của các đối tác chiến lược của bạn. Vì lý do tương tự, cần thận

trọng khi lựa chọn các đối tác chiến lược để bảo vệ thương hiệu và khách hàng của bạn khỏi các tổ chức bị phát

hiện là có các hoạt động kinh doanh phi đạo đức hoặc có nguy cơ gặp phải thảm họa PR của chính họ, trong đó

một hiệp hội khiến danh tiếng của bạn bị bôi nhọ.

Quan hệ đối tác chiến lược phải mang lại lợi ích cho tất cả các bên liên quan, bao gồm khách hàng và

khách hàng của bạn. Các câu hỏi cần cân nhắc khi lựa chọn tổ chức để tiếp cận nhằm hình thành quan hệ đối

tác chiến lược có thể bao gồm:

h Họ có thể cung cấp những gì để giúp bạn phục vụ khách hàng tốt hơn
và khách hàng?

h Tại sao họ muốn hợp tác với bạn? h Bạn có đủ uy tín để họ chứng minh

mong muốn được hợp tác với bạn không?

103
Machine Translated by Google

Nó giúp được biết đến bởi các tổ chức mà bạn có ý định thiết lập quan hệ đối tác, do đó, có một
chiến lược kết nối tích cực sử dụng các mạng xã hội cũng như kết nối trong thế giới thực sẽ có
lợi.

chứng nhận
Nhận được sự chứng thực của các tổ chức được biết đến bởi những người ra quyết định và những người
có ảnh hưởng trong đối tượng mục tiêu của bạn là một tài sản hữu ích để đạt được mức độ tin tưởng
vào khả năng của bạn. Hãy nhớ rằng các chứng chỉ chỉ hữu ích nếu chúng được những người mà bạn
đang tiếp thị biết đến và tin tưởng; một chủ sở hữu doanh nghiệp nhỏ nói chung sẽ có thể ấn tượng
hơn nếu bạn có thể có một số loại chứng nhận của Google hơn là chứng chỉ dành cho nhà phát triển Zend
mà họ không chắc là có tồn tại hay không. Mặt khác, những người liên quan đến phát triển phần mềm
chẳng hạn như người quản lý dự án đang tìm cách thuê nhà thầu có thể ấn tượng hơn với chứng chỉ Zend
vì nó cụ thể hơn để thể hiện kiến thức về các phương pháp phát triển phần mềm tốt với PHP.

Người ảnh hưởng

Biết ai là người quan trọng trong việc ảnh hưởng đến các quyết định và nhận thức là điều
quan trọng đối với hoạt động tiếp thị. Đây là những người mà phần lớn thành công sẽ phụ thuộc
vào—ý kiến tốt hay xấu về bạn và khả năng của bạn có thể tạo ra sự khác biệt trong việc những người
ra quyết định quan trọng theo dõi để mua hàng. Cho dù họ đang tìm cách đầu tư một số tiền đáng kể
hay nhiều người thực hiện giao dịch mua giá trị nhỏ, người mua sẽ luôn cảm thấy tự tin hơn khi giao
dịch với bạn nếu bạn được một người mà họ tin tưởng giới thiệu.

Có nhiều loại người có ảnh hưởng, mỗi người có khả năng ảnh hưởng theo những cách khác nhau
tùy thuộc vào địa vị xã hội và mối quan hệ của họ với những người ra quyết định.
Ở một mức độ nào đó, có những người có ảnh hưởng đến phong cách của người nổi tiếng—những người
này có thể là những người nổi tiếng trong một ngành nhờ những thành tựu của họ hoặc có thể là
những người nổi tiếng thực sự. Loại ảnh hưởng này liên quan nhiều hơn đến việc những người bạn
đang tiếp thị biết đến và tin tưởng những người có ảnh hưởng nổi tiếng như thế nào và mức độ liên
quan của họ với những gì bạn đang tiếp thị. Sẽ thật tuyệt nếu có ai đó nổi tiếng như Nigella Lawson
giới thiệu sản phẩm hoặc dịch vụ phần mềm của bạn, nhưng trừ khi có mối liên hệ giữa những gì họ
được coi là chuyên gia và những gì bạn đang tiếp thị, các đề xuất của họ sẽ có ít ảnh hưởng.

Ở đầu kia của thang đo là loại người có ảnh hưởng mà nhiều người quên mất tầm quan trọng
của họ. Đây là những người được người có ảnh hưởng biết đến một cách cá nhân bằng cách này hay
cách khác, những người có ý kiến và kiến thức về các chủ đề liên quan được đánh giá cao. Loại
người có ảnh hưởng này có thể không có ảnh hưởng đến khán giả đại chúng như người có ảnh hưởng là
người nổi tiếng, nhưng họ có ảnh hưởng lớn hơn nhiều đối với những người ra quyết định mà họ ảnh
hưởng do mối liên hệ cá nhân. Ví dụ bao gồm bạn bè, gia đình hoặc đồng nghiệp của cá nhân, những
người đã chứng tỏ lòng trung thành và/hoặc năng lực của họ trong suốt thời gian họ quen biết với cá
nhân đó.

104
Machine Translated by Google

Là lập trình viên, chúng ta thường có xu hướng xem xét nhiều vấn đề hoàn toàn từ góc độ kỹ
thuật. Điều quan trọng cần nhớ là trừ khi những người ra quyết định có nền tảng về phát triển
phần mềm, rất có thể trong hầu hết các trường hợp, và thật không may đối với chúng tôi là
những lập trình viên, sự hoàn hảo về kỹ thuật hiếm khi được đánh giá cao; và chính vì lý do này
mà người ra quyết định bình thường sẽ không coi chứng nhận Zend của bạn là điều gì đáng chú ý,
ngay cả khi bạn đã giải thích nó là gì. Điều này cũng áp dụng cho những người có ảnh hưởng, mỗi
người trong số họ có những yếu tố riêng mà họ ưu tiên đưa ra ý kiến về bạn và thương hiệu của bạn.
Biết được yếu tố nào mà những người có ảnh hưởng ưu tiên cao nhất và hành động để tác động
tích cực đến nhận thức về phẩm chất và khả năng của bạn trong các lĩnh vực này là cách tốt nhất
để bắt đầu các đề xuất của họ.

độ tin cậy
h Đúng giờ : Không có gì lạ khi các dự án phần mềm chạy vượt tiến độ, bạn chỉ cần nhìn vào
các dự án của Chính phủ để có bằng chứng về điều này. Những người nhận thức được vấn đề
này trong ngành CNTT hoặc những người xác định tầm quan trọng của việc dự án của họ phải
được chuyển giao đúng tiến độ sẽ ấn tượng hơn với khả năng của bạn trong việc cho thấy
rằng họ có thể để bạn phát triển phần mềm của họ và sẵn sàng cho bất kỳ lúc nào. bạn đã
nói nó sẽ được. Quá trình phát triển phần mềm không dễ dự đoán khoảng thời gian, vì vậy,
việc hoàn thiện khả năng của bạn để đạt được điều này sẽ tự động cho phép bạn nổi bật
giữa đám đông.

h Tính sẵn sàng: Một số người cần biết rằng bất cứ ai mà họ đang làm việc cùng đều có thể sẵn
sàng khi họ cần. Điều này thậm chí còn đúng hơn khi dịch vụ hoặc phần mềm bạn đang bán có
liên quan trực tiếp đến quy trình kinh doanh cốt lõi của khách hàng, chẳng hạn như đảm bảo
rằng trang web thương mại điện tử của họ để bán hàng hoặc để trình bày bản trình diễn quan
trọng cho người mua/người dùng tiềm năng của một hệ thống phần mềm mà khách hàng đã thuê
bạn phát triển; không có sẵn cho những tình huống như thế này có thể dẫn đến mất việc kinh
doanh cho khách hàng, điều này có thể tốn kém hơn bất kỳ khoản tiết kiệm nào họ sẽ kiếm
được khi thuê nhân viên bán thời gian

h Tay nghề : Mọi người thuê hoặc mua phần mềm để giải quyết vấn đề. Họ cần biết rằng những
gì bạn cung cấp sẽ giải quyết được vấn đề của họ và họ không cần phải lo lắng về các
vấn đề kỹ thuật làm mất thời gian của họ. Trong khi hầu hết mọi người không hiểu hoặc
không biết giá trị của mã chất lượng tốt, lợi ích của tay nghề tốt chuyển thành khả
năng xoay chuyển các yêu cầu thay đổi nhanh hơn mà không bị hạn chế và giảm nguy cơ
lỗi được đưa vào quy trình phần mềm. Mọi người có thể không hiểu những lợi ích trực
tiếp mà họ nhận được với mã chất lượng tốt, nhưng họ sẽ trở nên tin tưởng vào bạn và
khả năng phần mềm của bạn khi họ thấy rằng việc thuê hoặc mua từ bạn không gây thêm vấn
đề gì cho họ

105
Machine Translated by Google

Tính cách
Cuối cùng, mọi người mua hàng từ mọi người, bất kể họ đang mua gì hay động cơ của họ là gì.
Không bao giờ nên đánh giá thấp nhận thức về sự dễ gần, suy nghĩ tích cực, nhiệt tình và chân
thật. Có cái gọi là kỹ năng mềm giúp lập trình viên xử lý các tình huống độc hại có thể phát
sinh với khách hàng bằng cách biết cách diễn đạt thông tin liên lạc theo cách thuyết phục khách
hàng tuân theo mà không bị phản kháng; những kỹ năng này không liên quan trực tiếp đến phần mềm
lập trình, nhưng có thể tạo ra sự khác biệt đáng kể quyết định liệu một dự án có thành công hay
không. Hầu hết mọi người không thích liên quan đến tiêu cực hoặc các yếu tố khác gây ra xung
đột, đó là lý do tại sao mọi người muốn tránh chính trị văn phòng bất cứ khi nào có thể. Những
người có ảnh hưởng sẽ cố gắng thuyết phục những người ra quyết định mua hàng của bạn nếu họ coi
bạn là một người không gây rắc rối cho họ với các vấn đề về tính cách như tiêu cực, khó xử về
những gì được giao và nói chung là làm gián đoạn tiến trình của nhóm bằng cách làm mọi người khó
chịu:

h Danh tiếng : Danh tiếng tốt là kết quả của độ tin cậy, nhưng là một yếu tố không chỉ đáng
tin cậy. Danh tiếng được xây dựng dựa trên thành tích và thể hiện giá trị gia tăng mà
bạn cung cấp. Khi khách hàng nói rằng họ muốn một phần mềm được phát triển, hoặc họ muốn
mua phần mềm của bạn, sẽ có rất ít điều khiến họ quan tâm đến việc giao dịch với bạn nếu
họ có thể xem một danh sách ấn tượng về những gì bạn đã làm cho người khác và họ nói gì
về bạn. Giải thưởng trong ngành cũng là một cách tốt để nâng cao danh tiếng của bạn,
điều này cho thấy bạn được ngành công nhận là một trong những người giỏi nhất

h Uy tín : Cũng vì lý do mà một số người thích có những chiếc xe hơi đắt tiền như BMW hay
Ferrari và những người sẽ cảm thấy xấu hổ khi có một chiếc xe hơi thông thường như Ford,
có những người muốn sử dụng tính độc quyền và sự khan hiếm như một quyền khoe khoang .
Trong trường hợp phần mềm, điều này có thể bị ảnh hưởng bởi những khách hàng chi tiêu
cao, những người muốn biện minh cho giá cao của sản phẩm và dịch vụ của họ đối với khách
hàng và khách hàng của họ bằng cách sử dụng tính độc quyền, sự khan hiếm và/hoặc danh
tiếng của phần mềm hoặc dịch vụ của bạn để tạo ấn tượng rằng những gì họ đang bán là tốt
nhất trên thị trường của họ. Một ví dụ về điều này sẽ là các tính năng bảo mật thương
mại điện tử để bán cho những người lo lắng về việc thanh toán trực tuyến:

Hình 4.2: Ba dạng ảnh hưởng ảnh hưởng đến cách mọi người nhìn nhận các tình huống dẫn đến việc ra quyết định.

106
Machine Translated by Google

Các vòng ảnh hưởng sẽ có các diễn viên đóng vai trò thuyết phục cá nhân của họ:

Hình 4.3: Vòng tròn ảnh hưởng áp dụng trong bối cảnh chung cho người lao động trung bình.

Như được trình bày trong Hình 4.2 và 4.3, ý kiến và hành động của mọi người bị ảnh hưởng bởi
nhóm bạn bè, gia đình và có thể cả đồng nghiệp của họ tùy thuộc vào tình huống.
Mỗi người trong số những người này cũng có mạng lưới những người mà họ bị ảnh hưởng, có nghĩa là
thương hiệu của bạn không chỉ ảnh hưởng trực tiếp đến nhận thức của những người mà bạn đang tiếp
thị, mà còn cả những người mà họ tin tưởng vào quan điểm và ý kiến của họ. những người mà những ý
kiến đáng tin cậy đó bị ảnh hưởng. Động lực của những người có ảnh hưởng này trở nên thú vị hơn bao
giờ hết với sự phát triển của mạng xã hội nơi nhận thức của mọi người cũng bị ảnh hưởng bởi các
blogger hoặc người tạo video trên YouTube.

Trải nghiệm phương tiện

Tận dụng các phương tiện truyền thông để tạo ra nhận thức về thương hiệu của bạn là một cách
hiệu quả để tạo niềm tin và sự tín nhiệm. Việc đưa tin trên các trang web, tạp chí, báo, đài
phát thanh và chương trình truyền hình đáng tin cậy mà đối tượng mục tiêu của bạn nghe và đọc
sẽ giúp bạn thu hút được sự chú ý mà quảng cáo trên cùng các ấn phẩm sẽ không đạt được. Loại
phương tiện này không được cung cấp miễn phí, vì vậy bạn cần xem xét một góc độ để làm cho phần mềm
và dịch vụ của bạn trở nên đáng tin cậy—hãy xem phần chương về cách viết thông cáo báo chí trong :
.

107
Machine Translated by Google

tiếp thị nội dung


Phát triển nội dung nhằm tạo ra nhận thức về thương hiệu của bạn là một phương pháp có thể
mang lại hiệu quả cao nếu bạn có kỹ năng tạo nội dung. Những kỹ năng này có thể ở nhiều dạng,
cho dù đó là viết, video, hoạt hình hay thậm chí là phát triển ứng dụng. Khía cạnh quan trọng
nhất của tiếp thị nội dung là sự tương tác—không ích lợi gì khi tạo ra nội dung mà không ai
quan tâm đến việc đọc/xem/sử dụng, vì vậy, điều quan trọng là phải biết các góc độ phù hợp với
tham vọng thương hiệu của bạn cũng như có hiệu quả trong việc tạo ra các loại tương tác mà bạn
cần chứng minh đầu tư thời gian của bạn vào tiếp thị nội dung.

Nhược điểm của loại tiếp thị này là nội dung tốt đòi hỏi thời gian và kỹ năng để sản
xuất. Mắc lỗi trong việc xác định các góc độ nội dung phù hợp, mọi người để nhắm mục tiêu,
chiến lược phân phối hoặc kết quả cuối cùng có ý nghĩa có thể tốn thời gian và giống như
bất kỳ loại hoạt động kinh doanh nào, thời gian cũng có chi phí. Việc tạo nội dung chỉ có thể
được chứng minh theo nghĩa kinh doanh khi kết quả tạo ra có thể chứng minh chi phí thời gian
đầu tư. Khi bản thân bạn không có kỹ năng, điều đó có nghĩa là bạn phải thuê người khác—điều
này sẽ tốn kém cả tiền bạc và thời gian, do đó, yêu cầu cao là phải có một chiến lược rõ ràng
xác định nội dung sẽ đóng vai trò như thế nào trong việc hỗ trợ chiến lược kinh doanh tổng thể.

Trừ một vài trường hợp ngoại lệ như tiếp thị trả tiền cho mỗi lần nhấp chuột, không ai thích
được trình bày nội dung đang cố gắng bán một thứ gì đó một cách trắng trợn. Hơn nữa, nội dung
được tạo chủ yếu để quảng cáo chiêu hàng sẽ khó hơn nhiều để được các đối tác chiến lược và
những người có ảnh hưởng chấp nhận, xuất bản và phân phối (xem phần trước trong chương này),
những người sẽ lo lắng về việc mất tương tác với khán giả của họ bằng cách trình bày một thông
điệp bán hàng dưới dạng nội dung thông tin; hãy nhớ rằng không ai thích nội dung đang bán cho họ
một cách trắng trợn, do đó người đọc/người xem/người dùng có thể tắt nếu họ được cung cấp quá
nhiều quảng cáo.

Chìa khóa thành công trong tiếp thị nội dung là tạo ra nội dung mà mọi người thực sự quan tâm,
theo cách thể hiện bạn phù hợp với các mục tiêu xây dựng thương hiệu của bạn—với tư cách là nhà
phát triển phần mềm, đây có thể là chuyên gia và nhà lãnh đạo tư tưởng của vấn đề. Điều quan
trọng nữa là tạo nội dung theo chủ đề, cũng như có giọng điệu để độc giả của bạn hiểu và quan
tâm; do đó, nếu đối tượng mục tiêu của bạn là ngành giáo dục, thì bạn muốn quảng bá các vấn đề
liên quan đến giáo dục liên quan đến cách sử dụng phần mềm của bạn, thay vì nói về cách bạn tạo
thuật toán mới nhất để phân tích hiệu suất học tập của học sinh.

Sự thành công của chiến lược nội dung của bạn phụ thuộc nhiều vào khả năng xây dựng một mạng
lưới mạnh mẽ có thể tăng thêm độ tin cậy, thu hút sự quan tâm và phân phối nội dung của bạn tới
nhiều người. Trong thời đại truyền thông xã hội kết nối Internet ngày nay, điều này có thể khá
dễ dàng đạt được nếu bạn có thể thể hiện mình là kiểu người mà những người quan tâm muốn cộng
tác và nội dung của bạn được sản xuất theo tiêu chuẩn bắt buộc.

108
Machine Translated by Google

Viết blog của khách là một ví dụ về cách điều này có thể tạo ra kết quả tốt, nơi bạn viết một bài
đăng trên blog cho blog của ai đó hoạt động trong thị trường mà bạn đang nhắm mục tiêu chiến lược
nội dung của mình; điều này không chỉ đưa tên của bạn đến với đúng đối tượng mà còn có thể hiển
thị ngay lập tức cho số người mà bạn chưa có quyền truy cập. Kết hợp điều này với việc sử dụng
tương tác hội thoại trên các mạng xã hội như Twitter và bạn có một nền tảng hiệu quả cao để tạo ra
nhận thức nhanh chóng về bản sắc thương hiệu của bạn, đặc biệt là khi mọi người có thể chia sẻ lại
nội dung hấp dẫn nhiều lần.

Họ nghĩ bạn là ai?


Khi nói đến việc xây dựng thương hiệu, điều quan trọng cần nhớ là hầu hết mọi người không quan
tâm đến cách phần mềm được phát triển, mà quan tâm đến cách những gì bạn tạo ra giải quyết vấn đề
của họ. Các nguyên tắc phát triển phần mềm là một vấn đề quan trọng cần hiểu để tránh các kỹ thuật
dẫn đến các tình huống ảnh hưởng đến cách mọi người cảm nhận độ tin cậy của bạn, nhưng không phải
là loại chủ đề nên được thông báo trực tiếp với người mua trừ khi họ đến từ nền tảng liên quan đến
phát triển phần mềm. Với việc xây dựng thương hiệu nhằm mục đích thuyết phục mọi người có thiện cảm
với bạn, loại ngôn ngữ bạn sử dụng trong giao tiếp của mình, dù là nói hay viết, cũng quan trọng
như bất kỳ hình ảnh nào. Cần cân nhắc cẩn thận trong tất cả các giao tiếp của bạn, cho dù đó là qua
điện thoại, mặt đối mặt, e-mail, bản tin, tài liệu quảng cáo, trang web hoặc nội dung được xuất bản
trên phương tiện truyền thông để đảm bảo rằng phong cách ngôn ngữ được sử dụng, bao gồm cả việc sử
dụng bất kỳ biệt ngữ nào, được diễn đạt theo cách khiến những người mà bạn đang nói chuyện cảm thấy
thoải mái khi giao tiếp với bạn. Loại nhận thức bạn có thể muốn tạo có thể bao gồm một số cân nhắc
về:

h Tính dễ hiểu: Cần đặc biệt quan tâm đến những người không có nền tảng về phát triển phần
mềm để đảm bảo rằng họ hiểu những gì bạn đang nói. Cố gắng hạn chế sử dụng bất kỳ biệt
ngữ nào có khả năng nằm ngoài phạm vi hiểu biết của họ, vì điều này có thể khiến họ
cảm thấy lạc lõng hoặc kém cỏi, cả hai đều có thể làm họ mất tập trung vào cách giao
tiếp của bạn

h Tự tin: Điều này thể hiện sự tự tin vào bản thân cũng như khả năng của bạn.
Mọi người cần cảm thấy rằng họ có khả năng sử dụng thông tin bạn cung cấp, cũng
như tin tưởng rằng thông tin bạn cung cấp cho họ là chính xác và tốt.

h Động lực: Phong cách giao tiếp bạn sử dụng sẽ thúc đẩy và truyền cảm hứng cho mọi người
hành động, đặc biệt nếu hành động đó liên quan đến việc bạn giành được hoặc hoàn thành
các dự án của khách hàng

109
Machine Translated by Google

h Tính thẳng thắn: Nói thẳng vào những vấn đề quan trọng giúp tiết kiệm thời gian và làm rõ
mức độ quan trọng. Định kiến về người Anh là một ví dụ điển hình về việc thường không đủ
trực tiếp, dẫn đến việc diễn giải một thông điệp không phải là ưu tiên cao hoặc quan
trọng; đây là một ví dụ về sự thiên vị trong giao tiếp văn hóa, trong đó ở một đầu của
quang phổ, các nền văn hóa như Phần Lan không thể hiện một cách cởi mở trong từ ngữ của
họ đến mức họ được coi là cao, trong khi ở đầu kia, các nền văn hóa như của Người Mỹ có
xu hướng biểu đạt cao đến mức họ có ấn tượng là nói nhiều và ồn ào—bất kể điều đó đúng
hay sai. Khả năng giao tiếp hiệu quả ở mức độ quan trọng sẽ giúp bạn có được mức độ tôn
trọng và tin tưởng khi khách hàng cần cảm thấy họ nên có một người nào đó mà họ có thể
dựa vào để cập nhật tình hình cho họ, nhưng đồng thời biết cách truyền đạt sự khẩn cấp
mà không gây khó chịu

h Minh bạch: Mọi người không bao giờ thích bị lừa dối, và mặc dù che giấu sự thật có thể không
hoàn toàn là dối trá, nhưng nó sẽ gây ra nghi ngờ và mất lòng tin. Khi mọi người biết
rằng bạn cởi mở về những gì và cách bạn cung cấp phần mềm của mình, bao gồm việc cung cấp
cho khách hàng khả năng giữ lại các quyền đối với mã mà bạn viết riêng cho họ, họ sẽ
nhanh chóng học cách coi trọng bạn như một người mà họ có thể tin tưởng và sẽ cung cấp
cho bạn một ưu tiên cao hơn trong công việc trong tương lai vì điều này. Không ai thích
giao dịch với những người được biết là thêm các chi phí và điều khoản ẩn vào hợp đồng, vì
vậy hãy tránh điều này để duy trì mối quan hệ tốt với khách hàng

Lý do duy nhất dễ nhận biết nhất khiến Apple đạt được những thành công như vậy là vì họ rất cụ
thể về cách họ thiết kế sản phẩm của mình để những người có hiểu biết tối thiểu về công nghệ có
thể dễ dàng tiếp cận. Trái với cách dân công nghệ phàn nàn rằng các sản phẩm của Apple quá hạn chế
và hạn chế, điểm cần nhớ là Apple không tạo ra sản phẩm của họ cho những người đam mê công nghệ
hardcore. Nếu Apple lắng nghe những gì những người đam mê này muốn, họ sẽ khiến mình trở nên kém
hấp dẫn hơn nhiều đối với khán giả cốt lõi và rất có thể sẽ mất điểm bán hàng độc nhất (USP) để bán
sản phẩm của họ; USP chính là vì Apple kiểm soát chặt chẽ những gì được phép trên thiết bị của họ
cũng có nghĩa là người dùng của họ có thể yên tâm rằng họ được bảo vệ khỏi loại ứng dụng được thiết
kế kém, phần mềm độc hại và vi rút được tìm thấy trên các nền tảng ít hạn chế hơn như Android và
Windows.

Bài học của câu chuyện là thành công trong việc phát triển phần mềm của chúng tôi đến từ việc
biết và lắng nghe khách hàng thực sự của chúng tôi để chúng tôi có thể tạo ra giải pháp và trải
nghiệm người dùng thu hút họ. Mặc dù nói và lắng nghe những người làm công nghệ khác là điều
tốt, ngoại trừ một số ít dự án và sản phẩm, điều quan trọng cần nhớ là chúng tôi không bán các sản
phẩm và/hoặc dịch vụ phần mềm của mình cho những người làm công nghệ, do đó cần phải đảm bảo rằng
phần mềm và các dịch vụ phát triển được trình bày theo cách dễ hiểu, thấy được lợi ích và tự tin sử
dụng mà không gây ra các vấn đề làm mất uy tín. Khi mọi người nghĩ về những gì bạn làm, thương hiệu
của bạn phải đảm bảo rằng bạn được coi là giải pháp mà phần mềm hoặc dịch vụ phát triển của bạn
cung cấp chứ không chỉ đơn thuần là phần mềm.

110
Machine Translated by Google

Tóm lược
Trái ngược với niềm tin phổ biến, việc tạo thương hiệu không chỉ đơn giản là tạo ra một vài hình ảnh để sử dụng

trên văn phòng phẩm tiếp thị của bạn, mà chủ yếu dựa trên việc sử dụng tâm lý học để tác động đến cách mọi người

nghĩ về thương hiệu doanh nghiệp của bạn; với tư cách là một người làm việc tự do, đây sẽ là chính bạn.

Xây dựng một thương hiệu mang lại lợi ích kinh doanh đòi hỏi phải suy nghĩ nghiêm túc về việc bạn định bán sản

phẩm và dịch vụ phần mềm của mình cho ai, cùng với việc hiểu những người này nghĩ như thế nào, họ bị ảnh hưởng

bởi ai và bạn cần họ nghĩ gì về bạn để họ trở nên quan tâm đến việc mua hàng của bạn.

Các yếu tố hình ảnh là một phần quan trọng của tâm lý đằng sau việc xây dựng thương hiệu, nhưng tất cả đều

thuộc danh mục truyền thông; nghĩa là, bạn sử dụng thương hiệu trực quan như một phần trong các hoạt động

truyền thông của mình để tác động đến cách cảm nhận thông điệp của bạn.

Xây dựng thương hiệu là tất cả về cách thông điệp của bạn được cảm nhận, vì vậy hãy đảm bảo đầu tư nỗ lực vào

việc truyền đạt đúng thông điệp và đồng thời đảm bảo thông điệp đó được diễn giải đúng cách bởi những người

mà bạn đang nhắm đến.

Không phải tất cả những người bạn nhắm mục tiêu với thương hiệu của mình đều phải là những người bạn định bán.

Những người có ảnh hưởng trực tiếp hoặc gián tiếp có tác động đến khả năng hiển thị thương hiệu của bạn đối với

những người mà bạn muốn bán hàng, cũng như nhận thức của họ về những phẩm chất mà bạn muốn quảng bá. Đây không

bao giờ là một trò chơi ngắn hạn, nhưng việc xây dựng mối quan hệ tốt với những người mà bạn biết là những người

có ảnh hưởng sẽ được đền đáp về lâu dài nếu bạn có một chiến lược rõ ràng về cách thương hiệu của bạn hỗ trợ

hoạt động tiếp thị của bạn.

111
Machine Translated by Google
Machine Translated by Google

5
Mạng lưới, tiếp thị và
bán hàng
Câu nói cũ về những người bạn biết nhiều hơn những gì bạn biết chắc chắn đúng khi nói đến kinh
doanh và thường là yếu tố phân biệt giữa những người đạt được thành công và những người bỏ lỡ. Tất cả
chúng ta đều bắt đầu thế giới với những mối quan hệ tối thiểu, nghĩa là ngay cả những người kết nối

nhiều nhất cũng đã từng ở vị trí mà họ có những mối liên hệ tối thiểu. Phần này tập trung vào các
phương pháp và con đường khác nhau mà bạn có thể sử dụng để xây dựng mạng lưới quan hệ có thể hỗ trợ
chiến lược tiếp thị và kinh doanh của mình.

Hiểu về mạng
Nói một cách đơn giản, kết nối mạng là gặp gỡ những người có thể trở nên hữu ích theo cách này hay
cách khác. Những người này có thể hữu ích ngay lập tức cho bạn, cho những người bạn biết hoặc thậm
chí có thể trở nên hữu ích vào một thời điểm nào đó trong tương lai.

Nhiều người mắc sai lầm khi coi mạng là một hoạt động thuần túy để bán hàng, do đó cách tiếp cận
của họ đối với các sự kiện kết nối mạng và các nền tảng khác như mạng xã hội là để bán cho mọi người.
Không có gì làm mất sự chú ý của mọi người hơn là nói chuyện với một người rõ ràng chỉ quan tâm đến
việc bán hàng; nó xuất hiện dưới dạng khách quan và rất có thể không được quan tâm. Kết quả là, kiểu
tiếp cận mạng này có xu hướng có tác động tối thiểu, đặc biệt nếu căn phòng có nhiều người giống nhau
chỉ ở đó để quảng cáo chiêu hàng.

Nếu mạng lưới không phải là bán hàng cho mọi người, thì có lẽ bạn đang tự hỏi làm thế nào nó có thể
hữu ích cho bạn. Kết nối mạng là một hoạt động hữu ích để:

h Xây dựng danh tiếng: Đầu tiên và quan trọng nhất, mọi người mua hàng dựa trên niềm tin. Nếu
bạn có thể thuyết phục người khác rằng bạn đáng tin cậy và là chuyên gia trong lĩnh vực của
mình, họ sẽ vui vẻ giới thiệu bạn với những người họ biết có thể cần đến dịch vụ của bạn.

113
Machine Translated by Google

h Mở rộng tiềm năng của bạn: Phát triển các mối quan hệ đối tác quan trọng bằng cách sử dụng mạng lưới để tìm

những người bạn có thể cộng tác trong các dự án. Điều này cho phép bạn nhắm mục tiêu các thị
trường mới và mở ra các cơ hội có thể làm cho các dịch vụ và sản phẩm của bạn trở nên phù hợp
hơn bằng cách tiếp cận các tài nguyên, kỹ năng và thời gian bổ sung từ các chuyên gia khác.
Một ví dụ về điều này có thể là hợp tác tư vấn quản lý; người ngoài việc là tài sản để quản
lý dự án khó, còn có thể được sử dụng để thiết kế các tính năng quản lý trong bất kỳ sản phẩm
phần mềm nào bạn đang phát triển. Việc hợp tác với các đối tác có giá trị chính này cũng mở
ra cơ hội chia sẻ khả năng tiếp cận thị trường—tức là họ có thể trở thành người bán lại các
sản phẩm và dịch vụ của bạn ngoài việc họ cung cấp giải pháp cho các vấn đề mà bạn có thể gặp
phải trong các dự án của mình.

h Trở thành thông tin: Thông tin là sức mạnh; từ đó khai thác kiến thức
của những người khác là một cách tuyệt vời để có được thông tin hữu ích cho các hoạt động kinh doanh của bạn.

Thông tin này có thể bao gồm từ thông tin chuyên môn liên quan đến lĩnh vực chuyên môn
của bạn, cho đến những diễn biến trong doanh nghiệp địa phương và thông tin chi tiết về
cách thức hoạt động của các doanh nghiệp khác và các cơ hội mới nổi. Tất cả thông tin này
giúp bạn có được vị trí tốt hơn để tận dụng lợi thế của môi trường đang phát triển, cho dù
đó là ở đúng nơi, đúng thời điểm để giành được công việc mới hay phát triển doanh nghiệp
của bạn để phát triển các điểm bán hàng độc đáo mới sẽ giúp bạn giành được chiến thắng.
kinh doanh mới và/hoặc tăng lợi nhuận của bạn.

h Mở ra các cơ hội bán hàng: Đừng nhầm lẫn với việc chào hàng;
cơ hội mới để bán hàng thường là kết quả của những điểm trước đó, mặc dù sẽ có một số
trường hợp mà những người mà bạn nói chuyện tại một sự kiện sẽ quan tâm đến việc mua
dịch vụ của bạn.

Xác định chiến lược mạng


Tất cả các doanh nghiệp đều khác nhau và kết quả là không có chiến lược kết nối mạng duy nhất
nào phù hợp với tất cả mọi người. Chiến lược kết nối mạng phải được thiết kế để phù hợp cụ thể với
cách bạn thiết lập hoạt động kinh doanh, do đó mang lại sự thuận tiện cao nhất cho việc kết nối với đối
tượng mục tiêu của bạn. Hãy nhớ rằng kết nối mạng không phải là để tạo ra doanh số bán hàng; đó là việc
xây dựng danh sách liên hệ, tìm hiểu thông tin và xây dựng danh tiếng của bạn theo cách giúp bạn có
được vị thế mạnh trên thị trường.

Mạng có hai hương vị chính:

h Mạng trực tuyến thông qua các diễn đàn và trang web truyền thông xã hội. Những điều này
đặc biệt hữu ích để mở rộng phạm vi tiếp cận của bạn với những người mà bạn sẽ không
bao giờ gặp mặt trực tiếp:

¾ Ví dụ: Twitter, LinkedIn và Facebook có thể được sử dụng để tìm và tham gia vào
các cuộc trò chuyện có liên quan dẫn đến việc có được những liên hệ mới mà
bạn quan tâm.

114
Machine Translated by Google

h Mạng trong thế giới thực được thực hiện chủ yếu tại các sự kiện có tổ chức và sau đó tiếp theo
lên với một đến một cuộc họp:

¾ Ví dụ: Có nhiều sự kiện kết nối kinh doanh được tổ chức tại các quán bar và
quán cà phê cho phép mọi người trong kinh doanh nói chuyện với nhau. Tìm ra những
nơi này được và tham dự.

Mặc dù đây là hai cách khác nhau để kết nối mạng, nhưng về cơ bản chúng là cùng một hoạt
động—nói chuyện với những người quan tâm để thiết lập lòng tin và sự tín nhiệm. Kết nối mạng trực
tuyến và trong thế giới thực không loại trừ lẫn nhau, do đó, chiến lược kết nối mạng có thể kết hợp
lợi thế của cả hai để phù hợp với cách bạn cần kết nối với đối tượng mục tiêu của mình. Ví dụ: sử dụng
mạng xã hội trực tuyến để tương tác với những người thường xuyên tham dự các sự kiện kết nối trong thế
giới thực . Nhiều cuộc gặp gỡ trong số này có sự hiện diện trên các nền tảng truyền thông xã hội như
LinkedIn, Facebook và Twitter, mà bạn có thể sử dụng để thu hút cuộc trò chuyện trước các sự kiện—và
xác định trước bạn sẽ nói chuyện với ai.

Bạn có thể chia nhỏ hơn nữa cả nhóm/sự kiện kết nối trực tuyến và trong thế giới thực
thành các phần sau:

h Kết nối mạng chung: Các loại sự kiện kết nối, nhóm và diễn đàn Internet này mời các
doanh nghiệp thuộc mọi loại hình tham gia, gặp gỡ và thảo luận.
Bản chất không cụ thể của họ thường có nghĩa là họ không có chủ đề hoặc chương trình
nghị sự chuyên biệt, nhưng rất tốt để gặp gỡ những người khác trong kinh doanh để mở
ra cơ hội hợp tác, bán hàng và tìm hiểu thông tin kinh doanh không cụ thể như cách giao
dịch với các khía cạnh điều hành doanh nghiệp của bạn và những diễn biến trong khu vực
địa phương mà bạn có thể quan tâm.

h Kết nối chuyên gia: Điều này trái ngược với kết nối chung theo nghĩa là các sự kiện, nhóm và
diễn đàn Internet này mời các loại hình doanh nghiệp và cá nhân cụ thể tham gia. Không
giống như mạng chung chung, điều này thật tuyệt vời khi có thể nhắm mục tiêu các doanh
nghiệp và những người có sở thích cụ thể. Mặc dù loại mạng này có thể được sử dụng như một
kênh bán hàng trong nhiều trường hợp, nhưng nó thường là nguồn tốt hơn để tìm kiếm những
người liên hệ quan tâm và tìm hiểu về tin tức cụ thể của ngành. Ví dụ: một nhà phát triển
phần mềm không có khả năng tìm được nhiều việc trong một căn phòng đầy những người khác
cung cấp cùng dịch vụ, nhưng họ có thể tìm thấy những người hữu ích để làm việc cùng trong
các dự án trong tương lai; do đó mở ra cơ hội tìm kiếm các đối tác chính để đấu thầu các
dự án lớn hơn đòi hỏi nhiều nguồn lực hơn mức mà nhà phát triển riêng lẻ có thể cung cấp.

h Các tổ chức chuyên nghiệp / thương mại: Không giống như các loại trước đây, kết nối mạng
thông qua các tổ chức chuyên nghiệp và thương mại hoàn toàn là về các kỹ năng thương
mại mà bạn hoạt động. Loại mạng này rất tốt để tìm thông tin cụ thể về ngành như công
nghệ và luật mới sẽ ảnh hưởng đến cách bạn làm việc, cũng như cơ hội thành lập uy tín
của riêng bạn trong giới thương mại chuyên nghiệp. Việc tạo doanh số thông qua kênh này
là ngoại lệ chứ không phải là tiêu chuẩn.

115
Machine Translated by Google

h Các nhóm kết nối kinh doanh chính thức: Các nhóm kết nối kinh doanh chính thức chẳng hạn như nhiều

câu lạc bộ bữa sáng dành cho doanh nhân không phù hợp với tất cả mọi người, nhưng chúng có vẻ phù

hợp với một số người. Các loại nhóm kết nối này là các doanh nghiệp kiếm tiền từ việc sắp xếp các

sự kiện kết nối kinh doanh thường xuyên cho các thành viên trong nhóm của họ, với các cuộc họp

của họ chỉ có một chương trình nghị sự—tạo ra các lượt giới thiệu cho các thành viên của họ. Để

thành công trong việc kết nối mạng trong các tổ chức này, bạn cần biết cách làm việc nhóm của họ

bằng cách thiết lập lòng tin và có một mô tả đơn giản về những gì bạn làm để các thành viên của

họ hiểu. Một số dịch vụ và sản phẩm dễ hiểu hơn nhiều đối với mọi người; ví dụ: mọi người đều

biết trang web là gì và nhu cầu về các trang web mới khá phổ biến, nhưng các dịch vụ phát triển

phần mềm khó bán hơn nhiều vì các nhu cầu và lợi ích của phần mềm cụ thể hơn nhiều—đáng ngạc nhiên

là nhiều người không biết rằng các ứng dụng là phần mềm! Tham gia loại mạng này không rẻ - chi phí

lên tới £500+ mỗi năm, cộng thêm phí hàng tuần cho mỗi cuộc họp bạn tham dự. Với các nền tảng mạng

xã hội ngày nay như LinkedIn, Twitter và Facebook, các kết quả tương tự thường có thể được tạo ra

mà không phải trả chi phí và rủi ro mất khoản đầu tư của bạn.

Không được quên rằng loại hình tổ chức mạng này tồn tại chỉ để kiếm tiền từ hoạt động tiếp thị

kinh doanh của bạn và không hứa hẹn về lợi tức đầu tư của bạn. Thành công với loại mạng này yêu cầu

những điều sau:

¾ Nhóm phù hợp: Công việc kinh doanh của bạn hoàn toàn được tạo ra thông qua các lượt giới

thiệu do các thành viên của nhóm tạo ra. Những người này cần hiểu các dịch vụ hoặc

sản phẩm của bạn để hiểu điều gì tạo nên một lượt giới thiệu chất lượng tốt cho bạn.

Sẽ có lợi nếu có các thành viên khác trong nhóm làm việc trong các ngành tương thích,

vì những người này có nhiều khả năng tiếp cận với những kiểu người muốn mua dịch vụ

của bạn ngoài việc đã có kiến thức tốt hơn về cách quảng bá bạn.

¾ Tạo ra nhiều lượt giới thiệu: Nhiều lượt giới thiệu từ loại nhóm này có thể có chất lượng

kém, nghĩa là bất cứ thứ gì từ công việc khiến bạn mất tiền, cho đến những khách hàng

tiềm năng chưa từng nghe đến bạn—tức là những khách hàng tiềm năng sẽ xếp bạn vào loại

người gọi lạnh lùng. Yếu tố này phụ thuộc nhiều vào các thành viên trong nhóm; những

người không biết cách tạo khách hàng tiềm năng chất lượng tốt và các nhóm gây áp lực

buộc các thành viên phải đạt được các mục tiêu giới thiệu sẽ dẫn đến việc các thành viên

trao bất kỳ khách hàng tiềm năng cũ nào cho bạn. Đây cũng là một cái bẫy gây hiểu nhầm,

vì loại nhóm này có vẻ như đang tạo ra nhiều công việc kinh doanh cho các thành viên của

mình—trong khi điều tra một chút có thể thấy rằng một số lượng tối thiểu khách hàng tiềm

năng đang chuyển đổi thành công việc kinh doanh thực sự, với những người mất tiền và

thời gian từ công việc kém chất lượng từ những khách hàng tiềm năng chuyển đổi thành
doanh nghiệp.

¾ Tính cách kết nối mạnh mẽ: Với tính cách kết nối mạng lưới, bạn có thể khiến mọi người

trong nhóm hiểu những gì bạn làm trong kinh doanh, giành được sự tin tưởng của họ và mở

ra cơ hội cộng tác, giúp đỡ các thành viên khác—những người này có thể ngược lại ủng hộ

bạn với những người trong nhóm của họ. vòng kết nối mạng khác.

116
Machine Translated by Google

¾ Tâm lý nhóm phù hợp: Tránh các nhóm có quá nhiều


tập trung vào việc tạo ra giới thiệu mới. Chất lượng luôn quan trọng hơn số lượng
khi nói đến doanh số bán hàng; do đó số lượng thường phải trả giá bằng chất lượng.
Một nhóm tập trung chủ yếu vào số lượng giới thiệu có thể là dấu hiệu của việc
không kiểm soát chất lượng, với ấn tượng sai lầm về thành công của nhóm. Ngoài ra,
hãy tránh các nhóm mà nhiều thành viên chỉ quan tâm đến những gì họ có thể bán cho
nhóm. Thành công của bạn trong các loại nhóm này phụ thuộc vào việc các thành viên
trong nhóm thực sự quan tâm đến việc giúp bạn kinh doanh, điều này sẽ không xảy
ra nếu họ chỉ ở đó để kiếm một số doanh số bán hàng của riêng họ.

Viết thông cáo báo chí


Thu hút sự chú ý của báo chí đối với các hoạt động công việc của bạn là một cách tuyệt vời để
tạo ra nhận thức về các dịch vụ và sản phẩm của bạn, cũng như cải thiện nhận thức về thương
hiệu của bạn. Thuê đại lý quan hệ công chúng là một cách để đưa doanh nghiệp của bạn trở nên nổi
bật, có thể tốn kém; với kiến thức phù hợp, bạn có thể viết thông cáo báo chí của riêng mình để
gửi cho các phương tiện truyền thông được chọn và tránh phải thuê các cơ quan quan hệ công chúng
tốn kém để thực hiện công việc cho bạn.

Biết khán giả của bạn


Quy tắc quan trọng nhất để tạo một thông cáo báo chí là đảm bảo rằng nó được viết từ một góc độ có
thể tạo nên một câu chuyện tin tức thú vị; xét cho cùng, bạn đang cố thuyết phục giới truyền thông
rằng mọi người muốn nghe về câu chuyện của bạn. Tin bài cần hấp dẫn khán giả của từng kênh truyền
thông; do đó, bạn có thể cân nhắc xem cùng một câu chuyện có thể cần được viết lại như thế nào cho
các kênh xuất bản và phát sóng khác nhau. Hãy xem ví dụ sau:

Có một số góc độ mà từ đó việc hoàn thành và khởi động dự án này có thể được biến thành một
câu chuyện đáng chú ý. Góc độ sau đây sẽ phù hợp nhất cho một ấn phẩm hướng đến cộng đồng địa
phương của studio chụp ảnh có chuyên môn cung cấp các câu chuyện tin tức từ cộng đồng địa phương:

117
Machine Translated by Google

Đối với một ấn phẩm nhắm đến đối tượng kỹ thuật hơn, đặc biệt quan tâm đến sự đổi mới
liên quan đến các trang web và công nghệ Internet, câu chuyện tin tức sẽ được viết theo
các dòng sau:

Hãy lưu ý chủ đề chính của câu chuyện tin tức bây giờ là nhà phát triển phần mềm như thế nào,
với câu chuyện tin tức tập trung vào cách phần mềm Internet sử dụng HTML 5 mang lại sự đổi mới
mà ABC Photography tìm kiếm. Câu chuyện tin tức này thực sự có thể được thực hiện xa hơn với mục
đích mời ấn phẩm phỏng vấn James Jones trên tạp chí của họ, hoặc đơn giản là sử dụng nội dung
trong thông cáo báo chí làm nền tảng cho một mục tin tức. Sẽ có rất ít hoặc không đề cập đến lợi
ích môi trường vì góc độ này không liên quan đến trọng tâm chủ đề chuyên môn của ấn phẩm.

Cuối cùng, câu chuyện cũng có thể được viết từ một góc độ thu hút các nhiếp ảnh gia khác:

James Jones vẫn là chủ đề chính của câu chuyện trong mục này, nhưng tin tức bây giờ là về
cách hệ thống của anh ấy giúp các nhiếp ảnh gia mang lại sự thuận tiện và khả năng cá nhân hóa
tốt hơn cho khách hàng của họ. Hãy lưu ý về cách ABC Photography đã được giảm xuống chỉ còn là
người dùng hệ thống chứ không phải là đối tác trong quá trình phát triển; phạm vi bảo hiểm này
không có giá trị đối với ABC Photography vì nó đang nhắm mục tiêu cụ thể đến các đối thủ cạnh
tranh của họ. Kịch bản này giả định rằng các điều khoản của thỏa thuận kinh doanh giữa James
Jones và ABC Photography cho phép bán lại hệ thống cho các nhiếp ảnh gia khác.

Hãy cụ thể
Thông cáo báo chí của bạn có hai trở ngại chính để cạnh tranh:

h Thời gian có sẵn của các nhà báo làm việc cho ấn phẩm mà bạn đang cố gắng
được bảo hiểm từ

h Các mục tin tức khác được gửi đang tranh giành sự chú ý và không gian

118
Machine Translated by Google

Do đó, ấn phẩm càng nổi tiếng thì thông cáo báo chí của bạn càng cần phải thu hút sự chú ý của họ.
Chúng ta đã xem qua cách làm cho một câu chuyện trở nên đáng tin cậy; bước tiếp theo là trình bày
thông cáo báo chí ở định dạng ngắn gọn và đi thẳng vào vấn đề.
Hãy xem lại ví dụ ban đầu của chúng ta:

Có một vài yếu tố chính trong cách diễn đạt câu chuyện tin tức này để truyền tải thông điệp một cách
hiệu quả:

h Từ ngữ bắt đầu bằng , cho thấy ngay rằng tin bài vừa
mang tính địa phương vừa nói về một studio chụp ảnh. Điều này giúp loại bỏ nguy cơ người đọc
bỏ qua thông cáo báo chí trên cơ sở không chắc chắn về việc đó có phải là một câu chuyện
thời sự địa phương hay không.

h Câu tiếp tục với

cho phép toàn bộ câu chuyện tin tức được tóm tắt trong
câu đầu tiên. Đây là một yếu tố quan trọng của cấu trúc thông cáo báo chí, vì chúng
tôi có thể đảm bảo rằng người đọc có thể hiểu ý chính của câu chuyện tin tức với nỗ lực
tối thiểu. Sau đó, có thể đưa ra quyết định ngay lập tức về việc câu chuyện có liên quan
đến ấn phẩm hay không.

h Ví dụ kết thúc với một bản tóm tắt câu chuyện nêu rõ, những gì đã thực sự
đã xảy ra—tức là,

Tích hợp chương trình làm việc của bạn

Thu hút được sự chú ý của các phương tiện truyền thông đều rất tốt, nhưng sẽ lãng phí thời gian và
tiền bạc nếu nó không mang lại bất kỳ kết quả nào liên quan đến chiến lược kinh doanh của bạn. Khi
tạo chiến lược quan hệ công chúng và các phương tiện truyền thông liên quan đến nó, bạn nên xác định:

h Kết quả bạn muốn đạt được từ chiến lược dài hạn và rộng lớn hơn h Kết quả

ngắn hạn bạn dự định đạt được từ thông cáo báo chí riêng lẻ h Bạn sẽ đo lường thành

công của mình như thế nào; cả chiến lược tổng thể và cá nhân
thông cáo báo chí

Từ đó, bạn sẽ có thể hiểu rõ hơn về:

h Góc độ sử dụng cho tin bài phù hợp với chương trình

làm việc của bạn h Phản hồi bạn định tạo cho mỗi đề cập trên báo chí

119
Machine Translated by Google

h Các phương pháp và tiêu chí bạn sẽ sử dụng để theo dõi mức độ thành công của chiến lược truyền thông

đang hoạt động để đóng góp vào sự thành công của doanh nghiệp của bạn

Điều quan trọng cần nhớ là không phải tất cả các chương trình nghị sự đều có thể đo lường được về mặt định lượng;

nghĩa là không phải lúc nào bạn cũng có thể đo lường thành công bằng những thứ như số lượng yêu cầu mà bạn nhận được.

Hãy xem xét các yếu tố thành công cho một chương trình đạt được sự tín nhiệm:

h Số lượng ấn phẩm cung cấp thông tin về tên và thương hiệu của bạn h Chất lượng ấn phẩm giúp bạn

tiếp cận h Mục đích tiếp xúc của bạn

Mặc dù thật dễ dàng để định lượng số lượng ấn phẩm giới thiệu tên và thương hiệu của bạn, nhưng không có điểm

nào ở trên cung cấp cho chúng tôi một con số cụ thể để thể hiện mức độ đáng tin cậy của việc tiếp xúc như vậy đã

làm cho thương hiệu của chúng tôi xuất hiện. Tuy nhiên, một số giả định quan trọng có thể được đưa ra:

h Không phải tất cả các thương hiệu truyền thông đều có trọng lượng như nhau - tức là được giới thiệu trên Sky

News sẽ khiến bạn được chú ý nhiều hơn so với mức độ xuất hiện tương đương trên đài phát thanh FM ngẫu nhiên

h Các loại tiếp xúc khác nhau cung cấp các mức độ nhận thức khác nhau đối với

tính chuyên nghiệp—ví dụ: e-mail của bạn được đọc trên một chương trình phát thanh sẽ gần như không

có giá trị chuyên môn nào, trong khi được mời tham gia chương trình với tư cách là một chuyên gia sẽ

giúp bạn được tin tưởng và tín nhiệm hơn nhiều

h Nhận thức của các chuyên gia khác có thể được cải thiện bằng cách được giới thiệu trên các ấn phẩm chuyên ngành

nổi tiếng hơn là trên các phương tiện truyền thông đại chúng—nói cách khác, được giới thiệu trên tạp chí PC

Pro với tư cách là nhà tư vấn CNTT sẽ được các chuyên gia CNTT tín nhiệm hơn là làm diễn giả khách mời cho

cùng một chủ đề trên


Đài phát thanh FM ngẫu nhiên

h Bạn sẽ chỉ được coi là một chuyên gia về các chủ đề mà bạn được giới thiệu

vì—nói cách khác, việc được giới thiệu trên báo chí với tư cách là dân IT sẽ không giúp mọi người coi

bạn là chuyên gia tạo phần mềm trừ khi bạn được giới thiệu đặc biệt cho chủ đề tạo phần mềm

Từ những nhận dạng này, rõ ràng là thành công của chương trình nghị sự có thể được đo lường trên cơ sở trọng lượng và

mức độ phù hợp của việc đưa tin trên phương tiện truyền thông được tạo ra từ chiến lược thông cáo báo chí. Việc đưa

tin trên các phương tiện truyền thông nổi tiếng hơn như Sky News quan trọng hơn nhiều đối với việc nâng cao nhận thức

nghề nghiệp của những người không có chuyên môn trong ngành, trong khi mức độ đưa tin của các ấn phẩm cụ thể trong

ngành sẽ nâng cao uy tín của bạn với những người trong ngành—chứ không phải với những người bên ngoài .

Làm cho nó dễ đọc


Như đã xác định trước đó, làm cho thông cáo báo chí của bạn thu hút sự chú ý nhất có thể là một yếu tố quan trọng

để thành công trong việc thu hút sự chú ý của giới truyền thông. Điều quan trọng không chỉ là tin tức của bạn được diễn

đạt theo cách thu hút sự chú ý mà còn cần phải được cấu trúc theo cách mà các nhà báo dễ dàng hiểu được câu chuyện tin

tức, nhận diện thương hiệu của bạn và biết nên liên hệ với ai nếu họ muốn để theo dõi câu chuyện.

120
Machine Translated by Google

Thông cáo báo chí của bạn nên được xây dựng theo thứ tự sau:

h Logo công ty: Mang lại lợi thế là dễ nhận biết. Nếu bạn đã có một danh tiếng tốt, từ ngữ
của bạn sẽ được coi là đáng tin cậy hơn. Nếu bạn chưa có danh tiếng tốt, đây là bước
đầu tiên giúp bạn dễ nhận biết hơn cho các thông cáo báo chí trong tương lai. họ nhìn
thấy ngay từ cái nhìn đầu tiên. Đặt điều này ở trên cùng có nghĩa là cần nỗ lực tối

thiểu để tìm chi tiết liên hệ của bạn

h Tiêu đề: Tiêu đề của bạn nên được diễn đạt theo cách gây tò mò cho nhà báo và tạo ra
mong muốn đọc thêm. Nó nên tóm tắt câu chuyện một cách mơ hồ bằng cách sử dụng từ ngữ
sáng tạo. Ví dụ về studio chụp ảnh của chúng tôi có thể được diễn đạt theo các dòng
với dòng tiêu đề được giữ ngắn gọn và mạnh mẽ. Tiêu
, hoađềđểcũng
nổi nên
bật trình
so vớibày
nộibằng
dungchữ in
chính

h Tiêu đề phụ: Đi kèm với tiêu đề chính, giúp hiểu rõ hơn về chủ đề của tin bài. Nó
phải là một câu ngắn phác thảo câu chuyện, chẳng hạn như

h Nội dung thông cáo báo chí chính:

¾ Giới thiệu: Tổng quan chi tiết hơn nhưng vẫn ngắn gọn về câu chuyện.
Điều này nên được giữ trong hai hoặc ba câu cho phép người đọc hiểu rõ
hơn về nội dung tin tức.

¾ Thông tin thêm: Một số đoạn phác thảo câu chuyện chi tiết hơn. Phần này nên
trình bày thông tin về lợi ích, kết quả, số liệu thống kê, kỳ vọng trong
tương lai và trích dẫn có thể được sử dụng khi tường thuật tin bài. Tóm
lại, phần này sẽ cung cấp tất cả các thông tin cần thiết để đảm bảo rằng
nhà báo chỉ cần đầu tư ít công sức nhất để giới thiệu bạn trên ấn phẩm ¾
Tóm tắt: Sơ lược về mọi thứ đã được đề cập trong ấn phẩm

câu chuyện thời sự, nhấn mạnh những phần quan trọng mà bạn muốn đề cập

¾ Hướng dẫn liên hệ: Chỉ cần nêu rõ ai sẽ được liên hệ để biết thêm thông

tin. Điều này giúp nhà báo dễ nhìn hơn sau khi đọc câu chuyện cũng như
giảm thiểu rủi ro họ liên hệ nhầm người. Trong một số trường hợp, bạn có
thể có các khía cạnh PR của mình được quản lý bởi người khác, chẳng hạn như
chuyên gia PR hoặc người có chuyên môn cụ thể về chủ đề của thông cáo báo
chí

121
Machine Translated by Google

Việc sử dụng một định dạng tiêu chuẩn như được mô tả ở đây cho thông cáo báo chí của
bạn sẽ mang lại lợi thế lớn cho việc xuất bản tin bài của bạn; nó giúp các nhà báo dễ
dàng đọc nhanh thông cáo báo chí của bạn mà không cần đầu tư nhiều công sức. Sau đây là
một ví dụ về hình thức của loại thông cáo báo chí này:

Hình 5.1: Một thông cáo báo chí dễ đọc, có tiêu đề bắt mắt, nhấn mạnh một câu chuyện thú vị và làm rõ
người cần liên hệ.

122
Machine Translated by Google

Mẹo viết tin bài


Điều quan trọng là tận dụng tối đa tin bài của bạn để chúng có thể tạo ra loại phản hồi mà bạn muốn. Sau

đây là những yếu tố bạn nên tính đến khi viết nội dung thông cáo báo chí của mình:

h Các nhà báo cũng là con người, vì vậy hãy giúp họ giải trí bằng bài viết của bạn. Làm cho nó tươi,

thông tin, và thú vị.

h Các ấn phẩm tồn tại để cung cấp nội dung mà độc giả của họ quan tâm, vì vậy hãy viết thông cáo báo chí

của bạn để phục vụ lợi ích của độc giả của ấn phẩm chứ không phải ai khác.

h Các nhà báo là những người bận rộn và chịu áp lực phải cung cấp thông tin cho biên tập viên của

họ, vì vậy hãy giúp họ trích xuất thông tin họ yêu cầu từ thông cáo báo chí của bạn dễ dàng

nhất có thể. Điều này nên bao gồm: ¾ Tạo một tiêu đề sẵn sàng để in cho họ nghe hay và thu

hút sự chú ý.

¾ Lập dàn ý tóm tắt câu chuyện trong đoạn đầu tiên. ¾ Tích hợp các trích dẫn

sẵn sàng để sử dụng trong nội dung tin bài chính của bạn. ¾ Giữ nội dung của thông cáo

báo chí càng ngắn càng tốt; thông thường

trong vòng hai trang, nhưng lý tưởng nhất là chỉ một trang.

¾ Đặt thông tin quan trọng nhất của tin tức gần đầu
để đảm bảo cần ít nỗ lực hơn để đạt được nó.

¾ Làm cho chi tiết liên hệ của bạn thật rõ ràng để họ biết phải liên hệ với ai nếu cần.

h Đừng bao giờ viết thông cáo báo chí để bán hàng; bạn sẽ chỉ làm phiền các ấn phẩm và có nguy cơ

làm tổn hại đến uy tín của bạn đối với PR trong tương lai. Thay vào đó, hãy làm cho câu chuyện

trở nên đáng chú ý—ngay cả khi nó chỉ thông báo về một dịch vụ mới, bạn có thể nhấn mạnh vào

điều gì đó đáng đưa tin, chẳng hạn như nó sẽ mang lại lợi ích cho ai, nó đã đạt được những gì

và/hoặc các tính năng mới mà bạn đã phát minh ra để giúp giải quyết các yếu tố như vậy. như

giảm chi phí hoặc nâng cao chất lượng.

h Theo dõi những gì đang là xu hướng trong tin tức, đặc biệt là bất cứ điều gì liên quan đến các ấn

phẩm mà bạn dự định đưa tin nổi bật. Bạn sẽ có nhiều cơ hội được giới thiệu hơn nếu bạn có thể

tạo ra một câu chuyện đáng chú ý phù hợp với tin tức thịnh hành. Twitter là một nền tảng có giá

trị cho việc này—tin tức thường bị rò rỉ ở đó trước khi nó được đưa lên các phương tiện truyền

thông đại chúng.

Tăng cường phạm vi phủ sóng trên các phương tiện truyền thông của bạn

Có được sự xuất hiện trên các phương tiện truyền thông không chỉ tốt cho việc nhận thức được bản thân bạn

trong số những người mới, mà còn có thể là một cách tuyệt vời để cải thiện tính chuyên nghiệp và uy quyền

được nhận thức của bạn trong số những người đã biết về bạn và những người bạn có thể tương tác trong tương

lai. Đối với bất kỳ đề cập nào bạn nhận được trong các ấn phẩm, bạn nên truyền bá thông tin này đến các liên

hệ hiện có của mình thông qua bản tin, e-mail, Twitter, Facebook, LinkedIn và bất kỳ phương tiện nào khác

mà bạn sử dụng để liên lạc—tất nhiên, đừng lạm dụng nó!

123
Machine Translated by Google

Mở nguồn dự án
Cách dễ dàng hơn để tìm việc làm là sử dụng các nguồn nơi khách hàng tiềm năng công khai các
yêu cầu công việc của họ để những người như bạn đấu thầu. Một mặt, điều này mang lại lợi thế lớn
là giúp bạn tìm việc dễ dàng hơn và rẻ hơn nhiều. Mặt khác, bản chất của dự án là mở cho bất kỳ số
lượng người nào tham gia đấu thầu có nghĩa là bạn sẽ phải đối mặt với rất nhiều sự cạnh tranh. Chìa
khóa để thành công với các dự án mở là sự kết hợp giữa việc đăng ký số lượng lớn, chọn lọc các dự
án bạn đăng ký và gửi các đề xuất phù hợp đáp ứng nhu cầu của chủ dự án.

Nguồn dự án
Có nhiều nguồn để tìm thông tin chi tiết về các dự án yêu cầu kỹ năng của bạn. Sau đây là mô tả về
các loại chính mà bạn có thể gặp phải:

h Trang web đấu thầu dự án: Đây là những trang web cho phép mọi loại hình kinh doanh
để xuất bản các yêu cầu công việc của họ và bất kỳ ai đấu thầu chúng. Thật không may,
bạn sẽ thường thấy mình phải cạnh tranh với những người kém kỹ năng/kinh nghiệm hơn đề
nghị làm việc với mức giá tối thiểu và với những chủ dự án không hiểu lợi ích của việc
tuyển dụng dựa trên kinh nghiệm phù hợp với mức giá rẻ nhất.

Ví dụ: www.peopleperhour.com

h Bảng công việc: Đây là những trang web tương tự như các trang web đấu thầu dự án, nhưng có nhiều

kiểm tra tốt hơn và thường làm việc với các cơ quan tuyển dụng, những người mang lại nhiều
cơ hội làm việc hấp dẫn hơn. Điều này tránh được vấn đề cạnh tranh vì chất lượng công việc
thấp và những kỳ vọng thường thấy với các dự án được đăng trên các trang web đấu thầu dự án.

Ví dụ: www.cwjobs.co.uk

h Các trang web đấu thầu: Các trang web này thường được điều hành bởi hoặc cho các tổ chức
lớn hơn với mục tiêu tìm kiếm các nhà cung cấp có khả năng cung cấp sự thuận tiện, chất
lượng và giá cả tốt nhất. Bạn có thể yên tâm rằng các cơ hội được đăng để đấu thầu có
ngân sách nghiêm túc hơn, nhưng cũng đòi hỏi nhiều nỗ lực hơn để tạo ra một bản đệ trình
đấu thầu rất chi tiết cũng như ưu tiên trở thành một doanh nghiệp lớn hơn là một người làm
nghề tự do một nam/nữ. Sẽ tốt hơn nhiều nếu thành lập một nhóm dịch giả tự do khi đấu thầu

loại công việc này; hy vọng sẽ thua nhiều giá thầu trước khi bạn giành được bất kỳ giá
thầu nào.

Ví dụ: www.thechest.nwce.gov.uk

h Diễn đàn: Mọi người thường đăng thông tin chi tiết về nhu cầu dự án của họ trên các diễn
đàn nhằm nhận được đề xuất từ các thành viên diễn đàn khác. Một số yêu cầu yêu cầu trước
để mọi người giới thiệu nhà cung cấp dịch vụ, trong khi những yêu cầu khác sẽ yêu cầu
lời khuyên, sau đó hóa ra là yêu cầu mua dịch vụ. Không phải tất cả các yêu cầu đều trở
thành cơ hội để bán hàng và việc tham gia diễn đàn không phải là để bán hàng. Khi được sử
dụng đúng cách, các diễn đàn rất tuyệt vời để mọi người biết đến và tin tưởng bạn, những
người này sau đó sẽ giới thiệu bạn với những người khác—bao gồm cả những người trên diễn
đàn yêu cầu đề xuất cho các nhà cung cấp.

Ví dụ: www.ukbusinessforums.co.uk

124
Machine Translated by Google

h Mạng xã hội: Mạng xã hội hoạt động giống như các diễn đàn theo nghĩa là một số người sẽ
công khai hỏi các đề xuất và lời khuyên có thể giúp giành được công việc mới. Giống như
với các diễn đàn, chiến lược tốt nhất là xây dựng danh tiếng tốt với các thành viên cộng
đồng và cho phép họ tích cực giới thiệu bạn.

Ví dụ: www.linkedin.com

có chọn lọc
Việc tạo ra các đề xuất dự án đáng để đệ trình cho các dự án mở sẽ tốn thời gian và trong hầu
hết các trường hợp, thời gian sẽ là nguồn duy nhất bạn kiếm tiền từ đó. Điều quan trọng là phải
xác định rằng:

h Nhiều dự án mở không có ngân sách thực tế. h Chủ sở hữu

của các dự án mở thường không có kỳ vọng thực tế.

Chất lượng của các dự án mở thường liên quan đến các nguồn mà chúng được liệt kê bên dưới,
với một số trang web đấu thầu dự án nổi tiếng về việc chủ dự án có những kỳ vọng ngân sách không
thực tế và các nhà thầu chạy đua để đưa ra mức giá thấp nhất; chỉ có rất nhiều lợi nhuận mà bạn có
thể cạnh tranh về giá trước khi một dự án trở nên lãng phí thời gian của bạn!

May mắn thay, không phải tất cả các chủ dự án đều sử dụng các tiêu chí giống nhau để lựa chọn
nhà cung cấp dịch vụ của họ, với một số sử dụng giá cả và những người khác coi chất lượng là yếu
tố quyết định. Vấn đề quan trọng đối với bạn khi đấu thầu các dự án này là phải biết cách xác định
dự án nào đáng đấu thầu để bạn có thể sinh lời. Sau đây là một số ví dụ về loại dự án bạn có thể
thấy trên các trang web này:

ví dụ 1

Hình 5.2: Một ví dụ về đặc tả công việc cho thấy những dấu hiệu rõ ràng rằng người mua có thể khó làm việc
cùng.

125
Machine Translated by Google

Ví dụ trên cho thấy các nguyên nhân cần quan tâm sau đây:

h Mặc dù không phải là một dấu hiệu rõ ràng, lỗi ngữ pháp và lỗi chính tả kém
(xem văn bản được gạch chân) có thể là một dấu hiệu cho thấy đã không có
nhiều nỗ lực hoặc suy nghĩ được đưa vào bản mô tả công việc, có khả năng có
nghĩa là các yêu cầu chưa được lên kế hoạch phù hợp .

h Một cảnh báo khác mà ngữ pháp kém và lỗi chính tả có thể chỉ ra là rào cản ngôn
ngữ. Cho dù họ vẫn đang học ngôn ngữ mà bạn nói hay họ không có kỹ năng giao
tiếp tốt, những lỗi họ mắc phải trong giao tiếp có thể trở thành vấn đề khiến bạn
hiểu được họ muốn gì. Ví dụ: một số vấn đề có thể xảy ra nếu khách hàng của bạn
viết điều gì đó dọc theo dòng "Tôi thích ăn thịt bà và thú cưng của bà" trong khi
lẽ ra họ phải viết "Tôi thích ăn thịt bà tôi và thú cưng của bà".

h Một mô tả mơ hồ về các yêu cầu cụ thể cung cấp thêm bằng chứng rằng
chi tiết dự án chưa được nghĩ ra đầy đủ.

h Bản mô tả công việc chỉ ra rằng chủ dự án đã thuê một nhà phát triển trước đó không
thể đáp ứng được kỳ vọng giao hàng của họ. Điều này thực sự có thể là do nhà phát
triển trước đó đã không làm việc nhanh chóng hoặc đáng báo động hơn là chủ dự án
không có những kỳ vọng thực tế về yêu cầu thời gian để thực hiện dự án của họ. Đây nên
được coi là một dấu hiệu cảnh báo rằng chủ dự án có thể gặp khó khăn trong việc giải
quyết.

h Những người có đủ kinh nghiệm trong phát triển phần mềm sẽ biết rằng việc thêm
nhiều nhà phát triển hơn cho một dự án có thể làm cho tiến độ chậm hơn bằng cách tăng
nhu cầu liên lạc và thử nghiệm nhiều hơn để đảm bảo rằng những đóng góp của các nhà
phát triển khác nhau không xung đột với công việc của những người khác trong nhóm.
Quan sát này mâu thuẫn với yếu tố quan trọng chính đã nêu là phát triển dự án nhanh
hơn và do đó, đây là một dấu hiệu khác cho thấy khách hàng sẽ khó làm việc do thiếu

hiểu biết về các vấn đề kỹ thuật liên quan đến dự án và kỳ vọng về quy mô thời gian
không thực tế. .

h Chủ dự án khôn ngoan và có mối quan hệ tin cậy với nhà phát triển hiện tại của họ
sẽ làm việc với họ để mở rộng nhóm của họ. Nhà phát triển không chỉ ở vị trí tốt
hơn để kiểm tra chất lượng của ứng viên mà họ còn có thể xác định (những) nhà phát
triển nào họ có thể làm việc cùng và cũng có khả năng có những liên hệ mà họ đã làm
việc thành công trên đó. các dự án khác. Chủ dự án không tận dụng điều này cho thấy
rằng họ có thể không giỏi trong việc giao nhiệm vụ cho những người phù hợp nhất và
họ có thể không có mối quan hệ suôn sẻ/tin cậy. Đây là tất cả các dấu hiệu chỉ ra
rằng khách hàng là một trở ngại cho tiến trình của dự án.

h Dự án có ngân sách giá cố định, nghĩa là bạn chấp nhận rủi ro về thời gian so
với ngân sách. Với những dấu hiệu trên cho thấy chủ dự án không hiểu biết về
các tính năng kỹ thuật của dự án và có những kỳ vọng không thực tế, bạn nên kỳ
vọng họ làm cho các yêu cầu công việc của họ nghe có vẻ đơn giản hơn thực tế, đây
là một nguyên nhân gây lo ngại nếu bạn được kỳ vọng trở thành cam kết làm việc với
mức giá cố định bất kể bạn phát hiện ra điều gì sau thỏa thuận.

126
Machine Translated by Google

h Ngân sách dự án rất thấp, có nghĩa là rất có thể bạn sẽ


làm việc cho ít hơn mục tiêu của bạn hàng giờ.

h Các yêu cầu được xác định rất lỏng lẻo, khiến rất khó xác định những gì họ mong đợi sẽ được cung
cấp với giá cả; với những người mua muốn nhận được giá trị đồng tiền của họ, điều này cho thấy
khả năng xảy ra những kỳ vọng không thực tế sẽ khiến bạn phải làm việc chăm chỉ hơn nhiều mà
nỗ lực của bạn không được đánh giá cao; với khả năng từ ngữ là một nỗ lực có chủ ý của khách
hàng nhằm giữ cho định nghĩa mở để họ bao gồm công việc bổ sung theo cùng một thỏa thuận về
giá.
Trong trường hợp xấu nhất, cuối cùng bạn sẽ làm việc gần như miễn phí và có một khách hàng
không hài lòng, những người không đánh giá cao thời gian bạn đã bỏ ra để giúp đỡ họ hoặc
khoản chiết khấu lớn mà họ đã nhận được trong thời gian của bạn.

Tất cả các dấu hiệu cho thấy chủ sở hữu dự án cần cẩn thận hơn để đảm bảo rằng sự thiếu hiểu biết
về kỹ thuật và các yếu tố của kỳ vọng không thực tế của họ không gây trở ngại cho dự án. Bản thân điều
này dẫn đến yêu cầu bạn phải đầu tư thêm thời gian vào thông tin liên lạc và do đó làm tăng chi phí của
bạn để hỗ trợ họ. Có thể đáng để bạn dành thời gian đảm nhận công việc nếu chủ dự án sẵn sàng trả thêm
thời gian cho bạn để trang trải thêm hỗ trợ, nhưng nếu họ chỉ sẵn sàng trả một mức giá cố định để trang
trải thời gian dành riêng cho việc phát triển mã của họ, thì giá mỗi giờ bạn được trả có thể giảm đáng
kể thông qua công việc phụ không cần thiết do độ khó của khách hàng tạo ra.

Tóm lại, đây không phải là loại cơ hội việc làm mà bạn muốn xem xét một cách quá nghiêm túc vì
tất cả các dấu hiệu ban đầu đều chỉ ra rằng một dự án được quản lý kém đã có vấn đề trước khi bạn bắt
đầu và một dự án có thể không được trả lương cao. Nhiều nhất, bạn nên gửi một câu hỏi ngắn để biết thêm

thông tin về các yêu cầu của dự án và đặt một vài câu hỏi để đưa ra phán đoán sáng suốt hơn, nhưng hãy
cố gắng giới hạn câu hỏi ban đầu của bạn trong một email ngắn để tránh đầu tư quá nhiều thời gian. vào
một cái gì đó có thể không xứng đáng với nỗ lực của bạn.

ví dụ 2

Hình 5.3: Mô tả dự án với các dấu hiệu cho thấy người mua hiểu rõ các yêu cầu của họ cùng với kỹ
năng giao tiếp tốt.

Các quan sát sau đây có thể được thực hiện từ ví dụ trên:

h Người đăng trên diễn đàn nói rằng đây không phải là cơ hội ngay lập tức để cung cấp cho bạn
dịch vụ. Bây giờ là thời điểm tuyệt vời để bắt đầu giai đoạn một của quy trình bán hàng nhằm
thiết lập mối quan hệ (xem ở phần sau của chương này: ) để đảm bảođầu
rằng
để bạn
tiếplàcận
ứngbáo
cử giá
viênkhi
hàng
khách hàng tiềm năng quan tâm đến việc mua sản phẩm. dịch vụ.

127
Machine Translated by Google

h Người đăng trên diễn đàn chủ yếu tìm kiếm ai đó để cải thiện trang web hiện tại của họ,
nhưng cũng đã chỉ ra phạm vi mở rộng mối quan tâm của họ sang việc cung cấp dịch vụ
đào tạo và các sản phẩm khác mà bạn có thể cung cấp, chẳng hạn như hệ thống quản lý nội dung.
Không có điều nào trong số này nên được đề xuất trước, nhưng có thể được xác định và đề xuất
trong các giai đoạn sau của quy trình bán hàng.

h Chủ dự án đã thể hiện khả năng hiểu ít nhất một số vấn đề kỹ thuật của dịch vụ sẽ được
cung cấp và do đó, khả năng trở thành khách hàng có vấn đề thấp hơn nhiều.

h Chủ dự án đưa ra bằng chứng về việc chủ động với việc họ đã bắt đầu trên trang web của họ và
tuyên bố rằng họ sẽ có thể cung cấp cho bạn biểu trưng của họ. Điều này cho thấy rằng họ
đã nghĩ về mối quan hệ công việc sẽ hoạt động như thế nào ở một mức độ nào đó và cho thấy
rằng họ có kỹ năng lập kế hoạch về phía trước sẽ có ích cho bạn khi làm việc với họ. h
Tính chủ động cho thấy người mua đã suy nghĩ như thế nào về các yêu cầu của mối quan hệ

công việc, do đó giảm rủi ro xảy ra tình huống mà sự chậm trễ từ khách hàng dẫn đến sự kém hiệu
quả trong quy trình làm việc của bạn.

Tóm lại, đây có vẻ là loại khách hàng tiềm năng đáng để bạn nỗ lực theo dõi. Bắt đầu với giai đoạn đầu
tiên của quy trình bán hàng để thiết lập mối quan hệ với khách hàng tiềm năng, có thể thực hiện một
yêu cầu email đơn giản để xây dựng cuộc trò chuyện thu thập thêm chi tiết về trang web của họ và các
yêu cầu của trang web. Cung cấp một số mẹo và gợi ý về những gì có thể thực hiện được với trang web là
một cách tốt để xây dựng lòng tin, mở ra cơ hội cung cấp thông tin bạn cần để hiểu sản phẩm và dịch vụ
của bạn phù hợp với họ như thế nào, cùng với các yếu tố khác như khoảng thời gian và ngân sách ảnh
hưởng. Cũng đáng để xem trang web họ đã tạo cho đến nay để đề xuất các yếu tố khác để xem xét mà họ có
thể không biết, chẳng hạn như cải thiện tốc độ tải trang web và SEO; điều này sẽ khá nhanh chóng để
kiểm tra và sẽ cho thấy rằng bạn đã dành chút thời gian để quan tâm đến những gì họ đang thuê bạn, điều
này có thể khiến bạn tin tưởng và cho phép bạn tránh xa việc cạnh tranh về giá.

Quy trình bán hàng


Thường bị hiểu lầm là điều gì đó xảy ra khi việc bán hàng được thực hiện, quy trình bán hàng là
một thứ có nhiều giai đoạn và không kết thúc khi việc bán hàng hoàn tất. Từ trường hợp đầu tiên được
giới thiệu với một khách hàng tiềm năng, cho đến khi kết thúc bán hàng và duy trì mối quan hệ, quy
trình bán hàng không chỉ là bán hàng mà còn là tối đa hóa tiềm năng bán hàng và xây dựng mối quan hệ
lâu dài.

128
Machine Translated by Google

Giai đoạn 1: Thiết lập mối quan hệ


Có một số kênh có thể được sử dụng để thiết lập mối quan hệ với các khách hàng tiềm năng; điều quan

trọng là đảm bảo rằng tên của bạn được đề cập hoặc đặt ở đúng vị trí vào đúng thời điểm. Các kênh hiệu quả để

thiết lập khách hàng tiềm năng, sau đó được sử dụng để thiết lập các mối quan hệ mới bao gồm:

h Khuyến nghị truyền miệng: Có thể được coi là hình thức quảng cáo hiệu quả nhất, các khuyến nghị cá nhân

tạo ra sự quan tâm thực sự đến dịch vụ của bạn bởi những người đang tích cực tìm kiếm những gì bạn

cung cấp. Thông qua việc tích cực tiếp thị thương hiệu cá nhân của bạn để tạo niềm tin dẫn đến các

đề xuất truyền miệng, bạn có thể mở rộng phạm vi tiếp cận thị trường của mình bằng cách thuyết phục

mọi người giới thiệu bạn với người khác - thực tế là cho phép bạn xây dựng lực lượng bán hàng ảo

lắng nghe các cơ hội để giới thiệu bạn mọi lúc mọi nơi. họ đi. h Quảng cáo: Quảng cáo tốt là đưa

thông điệp và thông tin chi tiết của bạn đến đúng người, vào đúng thời điểm và đúng địa điểm. Điều

này không tốt bằng một đề xuất cá nhân vì bạn không được hưởng lợi từ việc giành được bất kỳ sự tin tưởng

nào từ quảng cáo và có thể phải trả giá đắt nếu bạn phạm sai lầm. Nếu được thực hiện đúng cách, đó

là một cách hay để thiết lập khách hàng tiềm năng mà bạn biết là có hứng thú với dịch vụ của mình.

Quảng cáo hoạt động tốt nhất khi được nhắm mục tiêu cao vì nó cho phép bạn tinh chỉnh thông điệp của

mình để thu hút cụ thể hơn đối với những người tiếp xúc với quảng cáo của bạn.

h Hãy nhớ rằng đây là giai đoạn đầu tiên của quy trình bán hàng, vì vậy chiến lược quảng cáo của

bạn không nên tập trung vào việc chốt đơn hàng ngay. Bất kể bạn đang sử dụng phương tiện nào

để quảng cáo, mục tiêu của bạn trong giai đoạn này là thu hút mọi người đưa ra yêu cầu cung cấp

cho bạn thông tin chi tiết về họ là ai, sở thích/yêu cầu của họ và lý tưởng nhất là thông tin về

khoảng thời gian và ngân sách của họ.

Thông tin này sau đó sẽ được sử dụng trong các giai đoạn tiếp theo của quy trình để tăng cơ hội kết

thúc bán hàng thành công.

h Mạng xã hội và mạng trực tuyến: Đừng bao giờ nhầm lẫn với quảng cáo

các nền tảng, trang web truyền thông xã hội như Facebook, Twitter và LinkedIn là một cách tuyệt vời

để khiến tên tuổi của bạn được khán giả mục tiêu chú ý và xây dựng những người theo dõi có thể giới

thiệu bạn với những người khác. Mặc dù phương tiện truyền thông xã hội có thể được sử dụng để bán

hàng trực tiếp cho những người theo dõi bạn, nhưng bạn sẽ có nguy cơ bị coi là người bán hàng nếu

quảng cáo dịch vụ của mình quá nhiều - dẫn đến việc mọi người không nghe tin nhắn của bạn và/hoặc hủy

đăng ký (các) kênh truyền thông xã hội của bạn. ). Phương tiện truyền thông xã hội được sử dụng tốt

nhất để cung cấp thông tin hữu ích và bình luận về các tình huống hiện tại thu hút những kiểu người

mà bạn muốn nhắm mục tiêu trong hoạt động tiếp thị của mình, trong khi vẫn giữ tỷ lệ 80/20; đó là

20% quảng cáo và 80% nội dung thông tin.

Sử dụng phương tiện truyền thông xã hội để thu hút mọi người theo cách khiến bạn được chú ý và khiến

mọi người ủng hộ bạn.

129
Machine Translated by Google

h Kết nối thế giới thực: Trước thời đại mạng xã hội trực tuyến này, cách tốt nhất để gặp gỡ
những người quan tâm là đến các sự kiện kết nối kinh doanh được tổ chức.
Danh thiếp sẽ được trao đổi và sắp xếp các cuộc gặp tiếp theo; mục đích của họ là
tìm hiểu thêm về hoạt động kinh doanh của nhau, xác định mọi phạm vi hợp tác và giới
thiệu với những người quan tâm.
Mạng trong thế giới thực vẫn quan trọng như mạng trực tuyến vì mọi người sẽ luôn muốn
biết chính xác những người mà họ hợp tác kinh doanh. Kết nối mạng trong thế giới thực
không nên được coi là một hoạt động riêng biệt, mà là một hoạt động được tích hợp như
một phần của chiến lược kết nối mạng rộng lớn hơn bao gồm cả mạng trong thế giới thực và
mạng trực tuyến để tận dụng toàn bộ lợi thế mà cả hai phải cung cấp.

h Công cụ tìm kiếm: Nguồn lưu lượng truy cập được nhắm mục tiêu chất lượng cao, các công cụ tìm kiếm như

Google cho phép bạn đưa trang web của mình đến với những người đang tích cực tìm kiếm những gì

bạn cung cấp. Cách nhanh chóng để trang web của bạn được liệt kê trong các tìm kiếm có liên

quan là trả tiền cho một danh sách được tài trợ mà bạn bị tính phí cho mỗi lần nhấp chuột;

Google's Ad Words là một ví dụ về điều này, nơi họ cung cấp cho bạn các công cụ bạn cần để xem

xét và quản lý các cụm từ tìm kiếm mà bạn muốn tài trợ. Cách khác là tạo nội dung được nhắm mục

tiêu tốt với hy vọng rằng các công cụ tìm kiếm sẽ liệt kê bạn trong các tìm kiếm có liên quan,
nhưng không đảm bảo về vị trí tìm kiếm và mất nhiều thời gian hơn để đạt được thành công. Cả

hai phương pháp đều có ưu và nhược điểm, với mỗi phương pháp cần có các trang nội dung phù hợp

để tối đa hóa việc chuyển đổi khách truy cập thành người tìm hiểu.

Cho dù bạn sử dụng phương pháp nào để xây dựng chiến lược bán hàng của mình, hãy luôn nhớ rằng
giai đoạn đầu tiên của quá trình bán hàng là tạo ra khách hàng tiềm năng. Ở giai đoạn này, bạn
chỉ muốn tìm thông tin có thể được sử dụng sau này khi theo dõi. Ở mức tối thiểu, bạn sẽ muốn
những thông tin sau đây từ các câu hỏi:

h Tên

h Số điện thoại

h Địa chỉ thư điện tử

Với thông tin cơ bản này, sau đó bạn có thể theo dõi cuộc điều tra và cung cấp thêm thông
tin. Trong một tình huống lý tưởng, bạn cũng có thể thu thập các thông tin sau đây như một phần
của quá trình tạo khách hàng tiềm năng ban đầu:

h Ngân sách khả dụng h

Thời gian giao hàng h Các yêu

cầu đặc biệt hoặc cụ thể

Giai đoạn 2: Nhận biết nhu cầu


Có tất cả các thông tin gợi ý từ giai đoạn một sẽ cho phép bạn điều chỉnh cách tiếp cận của
mình để trở nên cụ thể đối với lợi ích của khách hàng tiềm năng. Lý tưởng nhất là nên theo
dõi khách hàng tiềm năng trước qua điện thoại để bạn trở nên nhân văn hơn và cũng để hiểu rõ
hơn về phản ứng của họ trong cuộc trò chuyện của bạn, cho phép bạn điều chỉnh luồng giao
tiếp phù hợp với những gì họ thể hiện sự quan tâm.

130
Machine Translated by Google

Sau khi cuộc trò chuyện qua điện thoại kết thúc, khách hàng tiềm năng nên được theo dõi bằng một e-
mail tóm tắt cuộc trò chuyện qua điện thoại để đảm bảo họ có điều gì đó để tham khảo lại và khả
năng phản hồi nếu họ mất thông tin chi tiết của bạn.

Quá trình nhận ra nhu cầu có thể mất nhiều lần liên lạc và gặp gỡ để hiểu đầy đủ những gì khách
hàng yêu cầu. Một số khách hàng tiềm năng có thể hấp dẫn theo nghĩa là khách hàng tiềm năng biết

chính xác họ muốn gì, trong khi những khách hàng tiềm năng khác có thể nồng nhiệt và cần thăm dò
nhiều hơn để xác định yêu cầu của họ. Dù bằng cách nào, việc nhận ra nhu cầu đều nhằm mục đích cho
phép bạn hiểu bạn có thể giúp đỡ như thế nào, dịch vụ nào của bạn có thể được cung cấp để đáp ứng các
yêu cầu và khả năng xác định các sản phẩm và dịch vụ bổ sung mà họ muốn mua.

Giai đoạn 3: Đề xuất giải pháp


Tại thời điểm này, bạn nên có tất cả thông tin cần thiết để đưa ra quyết định về các loại giải
pháp bạn có thể cung cấp có liên quan đến người mua. Mặc dù có thể xác định được giải pháp cho vấn đề
là một điều tốt, nhưng không phải lúc nào nó cũng đủ để giữ chân người mua với bạn; do đó cần phải
xem xét cách bạn sẽ đề xuất giải pháp.
Sau đây là những gợi ý giúp làm nổi bật đề xuất của bạn:

h Cung cấp các tùy chọn:

¾ Cung cấp cho khách hàng tiềm năng sự lựa chọn để khiến họ cảm thấy có

quyền kiểm soát. ¾ Cho phép bạn cung cấp một loạt các mức giá bao gồm tất cả các cấp độ

phức tạp và để tránh làm khách hàng sợ hãi với mức giá ngoài ngân sách của họ.

h Tập trung vào lợi ích: Cố gắng tránh thuật ngữ kỹ thuật và mô tả nhiều hơn về

lợi ích mà giải pháp sẽ mang lại. Trong hầu hết các trường hợp, khách hàng không quan tâm
đã xong, nhưng cần nói thêm đến nó sẽ làm.

về h Độc đáo: Tìm một góc độ ban đầu để mô tả và cung cấp các tính năng sẽ
lợi ích mà khách hàng tiềm năng sẽ cung cấp cho bạn một điểm bán hàng độc nhất mà bất kỳ ai
khác mà họ có thể đang nói chuyện cùng sẽ không có khả năng cung cấp. Điều này cho phép bạn
thu hút sự chú ý của những người đang xem xét các nhà cung cấp khác mà bạn đang cạnh tranh.
Trở nên độc đáo khiến bạn nổi bật giữa đám đông và trở nên đáng nhớ hơn, chính điều này có thể
là một yếu tố tạo nên sự khác biệt giữa chốt đơn hàng và mất một đơn hàng.

h Hãy phản ứng lại: Đừng nói với khách hàng tiềm năng khi đề xuất đề xuất của bạn mà hãy nói
chuyện với họ. Đặt những câu hỏi mở cho phép họ mô tả ý tưởng của mình và kiểm soát
hướng của cuộc trò chuyện theo cách tiết lộ thông tin mà bạn chưa bao giờ nghĩ sẽ hỏi.

Bằng cách mời khách hàng tiềm năng đưa ra ý kiến về đề xuất của bạn, bạn sẽ có thể xác
định xem họ có bất kỳ mối quan tâm nào hay không và tránh để họ bỏ đi với những câu hỏi
chưa được trả lời có thể khiến họ mua giải pháp của mình từ nơi khác.

131
Machine Translated by Google

Giai đoạn 4: Kết thúc bán hàng


Nếu bạn đã đưa ra đề xuất đúng cách, khách hàng tiềm năng sẽ thể hiện đủ sự quan tâm đến những gì bạn
cung cấp để có thể thực hiện động thái chốt giao dịch bán hàng. Chốt giao dịch càng sớm càng tốt với

một thỏa thuận có lợi cho cả hai bên nên là ưu tiên cao nhất của bạn trong quy trình bán hàng, vì bất
kỳ khoảng thời gian nào mà khách hàng không cam kết mua hàng của bạn đều là lúc người khác có thể tiếp

cận họ. một lời đề nghị có vẻ tốt hơn những gì bạn đang đề xuất và gây nguy hiểm cho khoản đầu tư thời
gian của bạn. Luôn đặt mục tiêu loại bỏ sự cạnh tranh càng sớm càng tốt bằng cách khiến khách hàng tiềm

năng cam kết thực hiện một thỏa thuận liên quan đến khoản thanh toán tiền đặt cọc trước. Sau khi thanh
toán đã được thực hiện, khách hàng tiềm năng sẽ ở vào vị trí mà họ sẽ muốn nhận được giá trị tốt nhất

cho những gì họ đã đầu tư và có thêm động lực để không hủy bỏ các cuộc đàm phán về dự án nếu đối thủ cạnh

tranh cố gắng giành lấy họ từ bạn .

Không bao giờ thực hiện công việc trả trước mà không thanh toán - điều này chỉ mở ra cơ hội cho

bạn bị lợi dụng và khiến bạn không được bảo vệ nếu khách hàng quyết định mua dịch vụ của họ từ nơi
khác hoặc hủy dự án mà không thanh toán, bất kể họ có thể hứa trước điều gì. Hai tùy chọn được coi là

tiêu chuẩn để chấp nhận thanh toán là:

h 50% trả trước và 50% sau khi hoàn thành. h Thanh

toán trước 1/3, thanh toán 1/3 theo mốc đã thỏa thuận và 1/3 sau
hoàn thành, hạn chế rủi ro không thanh toán của bạn chỉ ở 1/3 cuối cùng của dự án.

Bạn có thể thường cảm thấy khó chốt được thỏa thuận—đặc biệt nếu khách hàng là một nhà đàm
phán khó tính. Các chiến thuật sau đây có thể được sử dụng để giúp bạn chiếm thế thượng phong trong
việc thuyết phục người mua cam kết thuê bạn:

h Sử dụng các biện pháp khuyến khích có giới hạn thời gian để đảm bảo rằng khách hàng có lý

do chính đáng để cam kết sớm hơn. Ví dụ bao gồm cung cấp tính năng thưởng mà không mất
thêm chi phí hoặc chiết khấu nếu họ có thể cam kết mua hàng trong một số ngày nhất định.

h Sử dụng thời gian có lợi cho bạn bằng cách có thể đảm bảo bạn có mặt vào những ngày cụ

thể để làm việc cho dự án của họ, nhưng trên cơ sở ai đến trước được phục vụ trước.
Điều này hiệu quả nhất khi khách hàng cần dự án hoàn thành càng sớm càng tốt; nếu họ
tin tưởng vào năng lực của bạn và hài lòng vì đề xuất của bạn hợp lý, họ sẽ không muốn

mạo hiểm để bạn vắng mặt và không thể đáp ứng thời hạn của họ.

Giai đoạn 5: Giao hàng và đánh giá


Quá trình bán hàng không kết thúc khi việc bán hàng được thực hiện. Hầu hết các doanh nghiệp mắc sai
lầm khi tập trung vào việc tạo ra doanh số bán hàng mới từ khách hàng mới; đã bao nhiêu lần bạn

không ấn tượng khi thấy rằng các giao dịch hợp đồng điện thoại tốt nhất chỉ dành cho khách hàng mới?
Những sai sót trong chiến lược bán hàng này bao gồm:

132
Machine Translated by Google

h Việc tạo khách hàng mới rất tốn kém: Chi phí chuyển đổi bao gồm quảng cáo và thời gian

cần thiết để nỗ lực chuyển đổi khách hàng tiềm năng thành doanh số bán hàng.

Đừng bao giờ quên rằng thời gian là tiền bạc, ngay cả khi bạn không trả tiền cho người khác

- thời gian của riêng bạn đầu tư vào tiếp thị là thời gian bạn không thể dành cho công việc

mà bạn đang được trả tiền.

h Khách hàng mới ít có khả năng chi tiêu nhiều hơn: Cung cấp dịch vụ đặt trước không bao giờ rẻ và trừ

khi bạn đang giao dịch với các tổ chức lớn, những khách hàng chưa từng giao dịch với bạn sẽ không

có khả năng cam kết giá trị lớn nếu không có mối quan hệ làm việc hiện có để phản ánh . Điều này

có nghĩa là doanh số bán hàng từ khách hàng mới có thể là các dự án nhỏ mà chi phí chuyển đổi

doanh số bán hàng của bạn cần được khấu trừ trực tiếp vào biên lợi nhuận của họ.

h Bạn không thể tin tưởng khách hàng mới: Nghe có vẻ khắc nghiệt, nhưng bạn không thể đảm bảo rằng

khách hàng mới sẽ hợp tác tốt nếu bạn không có mối quan hệ làm việc trước đó với họ. Các yếu

tố rủi ro lớn đối với tất cả các khách hàng mới bao gồm khó khăn tiềm ẩn khi làm việc và quan

trọng hơn là khả năng thanh toán đúng hạn của họ. Tất nhiên, khách hàng có thể chiếm được lòng

tin của bạn khi bạn bắt đầu làm việc với họ và được trả tiền.

Bằng cách cung cấp cho khách hàng trải nghiệm ấn tượng khi làm việc với bạn và giải pháp cuối

cùng khiến họ ngạc nhiên, bạn sẽ có thể tạo ra một người ủng hộ tích cực giới thiệu dịch vụ của bạn

cho người khác cũng như mở rộng phạm vi kinh doanh lặp lại.

Trong suốt quá trình cung cấp dịch vụ của bạn, bạn sẽ liên tục có cơ hội đánh giá nhu cầu của khách

hàng, cho phép bạn xác định các cơ hội để đề xuất phần mềm/tính năng bổ sung khi kết thúc dự án. Là người

có cả kiến thức về kỹ thuật và kinh doanh, bạn sẽ có cơ hội tốt hơn để cung cấp cho khách hàng những ý

tưởng mà họ chưa từng nghĩ đến hoặc thậm chí không biết là có thể thực hiện được; đây là cách mà khía cạnh

tư vấn của một freelancer trở thành một phần của quy trình bán hàng.

Đánh giá cuối cùng về dự án sau khi hoàn thành là thời điểm lý tưởng để trình bày tổng quan về những lợi

ích mà dự án mang lại cho họ cũng như phác thảo các bước tùy chọn để giới thiệu các lợi ích bổ sung; tất cả

dựa trên những quan sát và cuộc trò chuyện của bạn tham gia trong dự án. Có thể khách hàng có yêu cầu ngay

lập tức để thu hút bạn vào công việc tiếp theo hoặc không có yêu cầu ngay lập tức. Dù bằng cách nào, quy

trình nên lặp lại từ bước một để đảm bảo rằng mối quan hệ được duy trì cho mọi cơ hội làm việc với khách

hàng trong tương lai.

Tóm lược
Thành công trong cả sự nghiệp và kinh doanh đều phụ thuộc vào những người bạn biết, vì vậy hãy chú ý đến

cách bạn kết nối để tìm những người có thể mở ra cơ hội cho chiến lược kinh doanh của bạn.

Kết nối mạng và tiếp thị không nên chỉ tập trung vào bán hàng mà còn phải tìm những người có thể mang lại

lợi ích cho doanh nghiệp của bạn bằng cách cung cấp tin tức và các loại thông tin chi tiết khác giúp bạn

đưa ra quyết định tốt hơn. Kết nối mạng cũng là một cách tuyệt vời để xây dựng mối quan hệ đối tác quan

trọng với các nhà cung cấp và những người có kỹ năng chuyên môn, đồng thời giúp xây dựng nhóm người theo

dõi ủng hộ doanh nghiệp của bạn—giúp nâng cao nhận thức về thương hiệu, sản phẩm và dịch vụ của bạn.

133
Machine Translated by Google

Đối với doanh số bán hàng, điều quan trọng là phải tuân theo chu kỳ bán hàng để chốt doanh số bán
hàng. Tránh sai lầm phổ biến của nhiều người trong các doanh nghiệp cố gắng kết thúc bán hàng ngay
lập tức. Điều này có thể dễ dàng dẫn đến việc mất doanh số bán hàng do đưa ra sai quảng cáo chiêu
hàng, hoặc thậm chí tệ hơn là giành được một đơn hàng nhưng lại khiến bạn mất tiền. Chu kỳ bán hàng
của bạn phải đảm bảo có một quy trình đánh giá các yêu cầu bán hàng đủ điều kiện để đảm bảo chúng
phù hợp với doanh nghiệp của bạn về khả năng sinh lời và loại khách hàng/khách hàng mà bạn muốn làm
việc và bán hàng. Các quy trình khác trong chu kỳ bán hàng nên tập trung vào việc xây dựng sự hiểu
biết về nhu cầu và mối quan tâm của người mua để sau này bạn có thể tạo ra một quảng cáo chiêu hàng
phù hợp hoàn hảo với tất cả các tiêu chí mà người mua muốn để họ tin tưởng chọn bạn cho dự án của họ.

Chương tiếp theo giới thiệu các loại khách hàng, mô tả những điều bạn cần biết về những đặc điểm
khác nhau mà bạn có thể gặp phải khi làm việc cho những người thuê bạn.

134
Machine Translated by Google

6 Giới thiệu về

Các loại khách hàng

Khi bạn bắt đầu nhận các dự án làm việc tự do, bạn sẽ nhanh chóng thấy rõ rằng mọi khách hàng đều

khác nhau; một số sẽ dễ làm việc, trong khi những người khác sẽ hơi khó xử lý.

Thành công với tư cách là một freelancer cuối cùng bắt nguồn từ:

h Làm hài lòng khách hàng h Có

lợi nhuận

Các loại khách hàng mà bạn làm việc cùng sẽ có ảnh hưởng trực tiếp đến cả hai yếu tố trên.

Giá như mọi khách hàng đều dễ dàng làm việc cùng, thì những người làm việc tự do trên khắp thế giới sẽ

có cuộc sống ít căng thẳng hơn và dòng tiền tốt hơn; thực tế đáng tiếc là hầu hết tất cả các khách hàng

sẽ gây ra các vấn đề ảnh hưởng đến khả năng bạn đáp ứng họ và/hoặc thu được lợi nhuận từ các dự án của bạn.

Chương này tập trung vào việc xác định các đặc điểm khác nhau của khách hàng mà bạn có thể gặp phải

để bạn có thể chuẩn bị tốt hơn một chiến lược nhằm làm hài lòng khách hàng, duy trì lợi nhuận và

tránh xung đột. Hãy nhớ rằng hầu hết các khách hàng mà bạn cung cấp dịch vụ sẽ có nhiều đặc điểm khác

nhau, không có hai khách hàng nào giống hệt nhau.

Trước khi bắt đầu một dự án, chúng ta có thể tìm hiểu rất nhiều về đặc điểm của khách hàng bằng

cách quan sát cách họ hành động. Thông tin thu được từ những quan sát này có thể trở thành một công cụ

hữu ích để đưa ra quyết định về cách thực hiện công việc kinh doanh với khách hàng, giảm thiểu rủi ro

và tránh các tình huống tiêu cực. Khi nói đi, hành động mạnh hơn lời nói.

khách hàng có đạo đức


Loại khách hàng tốt để làm việc cùng; kiểu người mà tất cả chúng ta đều muốn khách hàng của mình trở thành.
Nếu một khách hàng không thể được phân loại là có đạo đức, thì cần phải xem xét nghiêm túc xem liệu có

đáng để cung cấp dịch vụ cho họ hay không.

135
Machine Translated by Google

Đặc trưng
Khách hàng có đạo đức có xu hướng:

h Quan tâm đến việc xác định một thỏa thuận công bằng cho cả hai bên: Những người có đạo đức hiểu

rằng một thỏa thuận công bằng dẫn đến phần thắng cho tất cả mọi người, nghĩa là họ nhận được

giải pháp và chất lượng dịch vụ cần thiết vì bạn có đủ tiền để thực hiện điều đó.

Họ cũng xem xét phạm vi thiết lập mối quan hệ công việc cho các dự án trong tương lai, hiểu

rằng mối quan hệ tốt với những người mà họ có thể tin tưởng sẽ dẫn đến việc nhận được các giải pháp

nhanh hơn với các vấn đề nhỏ nhất.

h Hào phóng với những gì họ cung cấp: Khách hàng có đạo đức thường biết tỷ giá thị trường là bao nhiêu

đối với các dịch vụ của bạn đang và sẽ cung cấp điều này ở mức tối thiểu, đồng thời có khả năng đề

xuất tiền thưởng như một động lực bổ sung khi công việc của họ được yêu cầu trong thời gian ngắn

hoặc yêu cầu bạn làm thêm thời gian vào cuối tuần hoặc buổi tối.

h Muốn giữ cho mọi người hài lòng: Các khách hàng có đạo đức ưu tiên giữ cho những người làm việc cùng họ

hài lòng, cho dù đó là phần thưởng cho công việc tốt hay làm việc với bạn để xác định các giải pháp

cùng đạt được cho các vấn đề có thể xảy ra trong một dự án.

Các khách hàng có đạo đức sẽ cố gắng tránh đặt bạn vào những tình huống gây căng thẳng không cần

thiết và hiểu rằng việc thể hiện sự đánh giá cao của họ đối với đóng góp của bạn có thể tạo ra sự

khác biệt lớn trong quan điểm của bạn về mối quan hệ công việc.

tùy chọn tiến bộ


Yếu tố quan trọng nhất để xây dựng mối quan hệ làm việc tốt với khách hàng có đạo đức là giao tiếp; không

có điều này, những thân chủ có đạo đức sẽ không thể đưa ra những đánh giá phản ánh đúng tình hình. Thông

tin liên quan đến mức độ phức tạp, ý nghĩa và ước tính thời gian hoàn thành phải luôn được thông báo thường

xuyên để đảm bảo rằng khách hàng có thể nhìn thấy bức tranh thực tế về những gì đang diễn ra. Đặc biệt là

với các dự án có tính chất kỹ thuật, các khách hàng có đạo đức rất dễ nhìn thấy một bức tranh khác với những

gì đang xảy ra trong thực tế, do đó tạo cơ hội cho những kỳ vọng phi thực tế xuất hiện dẫn đến sự thất vọng của

họ khi bạn không thể đáp ứng nhu cầu của họ. Để tránh điều này, bạn nên:

h Có một quy trình minh bạch, rõ ràng và trực tiếp với khách hàng về tất cả các yếu tố liên quan đến

dự án.

h Cung cấp các báo cáo thường xuyên về tiến độ của bạn để họ có thể thấy những gì đã đạt được; phần mềm

theo dõi thời gian có thể được sử dụng để theo dõi thời gian dành cho các nhiệm vụ riêng lẻ nhằm tạo

ra tài liệu chi tiết để khách hàng đánh giá—một cách hay để bạn nhấn mạnh thời gian đang được sử

dụng vào đâu.

h Đặc biệt chú ý trong báo cáo tiến độ của bạn đối với bất kỳ điều gì không dễ nhìn thấy, chẳng hạn như

nghiên cứu và xây dựng chức năng hậu trường, được coi là hiển nhiên.

¾ Sử dụng các phương pháp phù hợp nhất để khách hàng cung cấp tiến trình của bạn

báo cáo—mỗi khách hàng đều khác nhau và sẽ phản ứng khác nhau đối với các phương pháp
giao tiếp khác nhau. Xem để biết thêm thông tin. , ,

136
Machine Translated by Google

khách hàng khó tính


Loại khách hàng này có nhiều chiêu bài, nhưng cuối cùng sẽ gây ra vấn đề cho bạn theo cách này
hay cách khác. Tốt hơn là không nên nhận công việc từ những khách hàng cực đoan hơn, nhưng
trong hầu hết các trường hợp, bạn sẽ không có cơ hội biết được khách hàng có thể khó tính như
thế nào cho đến khi bạn bắt đầu làm việc với họ.

Đặc trưng
Những khách hàng khó tính sẽ bộc lộ ít nhất một trong số những đặc điểm mà bạn có thể học cách
nhận biết trước khi đồng ý tham gia vào bất kỳ công việc nào cho họ. Những đặc điểm này bao gồm:

h Thiếu hiểu biết cơ bản về các đặc điểm kỹ thuật của dịch vụ mà bạn cung cấp: Đây không
phải là dấu hiệu rõ ràng cho thấy một khách hàng có thể quản lý tốt, nhưng chắc chắn
đó là dấu hiệu cảnh báo khiến bạn nghi ngờ—đặc biệt khi kết hợp với một trong các các
dấu hiệu cảnh báo khác. Một khách hàng không hiểu những điều cơ bản về kỹ thuật của
dịch vụ mà bạn cung cấp có nhiều khả năng yêu cầu các giải pháp không thể đạt được
trên thực tế ở cấp độ kỹ thuật, trong thời gian có sẵn hoặc trong phạm vi ngân sách
mà họ có. Với loại khách hàng cực kỳ khó tính, điều này có thể dẫn đến việc họ không
tin tưởng vào lời khuyên của bạn và sau đó là sự không hài lòng và đánh giá thấp công
việc cũng như nỗ lực mà bạn đã cung cấp do những kỳ vọng không thực tế của họ.

h Pushy và muốn mọi thứ ngày hôm qua: Nhấn mạnh rằng một dự án mới cần
hoàn thành trong thời gian ngắn thường là dấu hiệu cho thấy họ thiếu kỹ năng tổ chức
—nếu không sẽ không có tình huống mà họ cần bạn hoàn thành công việc càng sớm càng tốt.
Nếu dấu hiệu tồn tại, đặc điểm này có khả năng tái diễn với việc khách hàng thay đổi
các yêu cầu của dự án của họ mà không có thông báo đầy đủ và vẫn mong bạn hoàn thành dự
án ngay lập tức. Một khách hàng có đặc điểm này sẽ muốn bạn ưu tiên công việc của họ
hơn bất kỳ thứ gì khác mà bạn đang làm. Nếu không được xử lý đúng cách, chúng sẽ khiến
bạn gặp vấn đề với công việc của bạn cho các khách hàng khác. Trong thời đại truyền
thông xã hội ngày nay, những khách hàng này cũng có thể gây tổn hại đến danh tiếng của
bạn bằng cách công khai đưa ra phản hồi tiêu cực trên các trang web đánh giá, bao gồm
cả hồ sơ của bạn trên các nền tảng truyền thông xã hội như Facebook và LinkedIn, cũng
như bất kỳ trang web làm việc tự do nào mà bạn sử dụng để tìm việc. . Vấn đề với điều
này là không có cách nào tế nhị để đưa ra phản hồi mô tả lỗi của khách hàng khiếu nại
mà không khiến những người mua dịch vụ tiềm năng của bạn sợ hãi; theo như họ sẽ thấy,
nó giống như một trường hợp "không có lửa không có khói". Sự kết hợp giữa kiểu tính
cách khách hàng này với việc thiếu kiến thức kỹ thuật cơ bản đã đề cập trước đó là một
dấu hiệu rõ ràng rằng khách hàng sẽ rất khó quản lý. Nếu bạn có thể xác định điều này
trước khi bắt đầu công việc trong dự án, bạn nên xem xét nghiêm túc xem liệu nó có đáng
để đảm nhận công việc hay không.

h Không hiểu nỗ lực cần thiết để thực hiện công việc: Đây có thể là kết quả của việc thiếu
hiểu biết cơ bản về các kỹ thuật của dịch vụ mà bạn cung cấp, hoặc đáng báo động hơn,
là một phần của tính cách buông thả. Dù bằng cách nào, đặc điểm này có thể gây ra vấn
đề khi cố gắng thương lượng và giải thích ngân sách và thời gian cần thiết cũng như
những gì có thể.

137
Machine Translated by Google

h Một nhà đàm phán cứng rắn: Đàm phán là một kỹ năng quan trọng trong kinh doanh, với kết quả
tốt là chiến thắng cho tất cả những người tham gia. Những khách hàng khó tính là những
nhà đàm phán khó tính thường chỉ tìm kiếm những gì có lợi cho họ, điều này có thể đặt bạn
vào tình thế rất khó khăn với tư cách là nhà cung cấp dịch vụ và có thể khiến bạn thua lỗ
về mặt tài chính trong dự án.

¾ Các nhà đàm phán cứng rắn cũng có thể sử dụng một chiến thuật để làm cho dự án nghe
có vẻ đơn giản hơn so với thực tế để bạn đồng ý với mức giá thấp hơn và thời gian
giao hàng ngắn hơn trước khi ký thỏa thuận. Những người làm việc tự do mới chưa
tiếp xúc với kiểu đàm phán này rất dễ trở thành con mồi, những người sau đó sẽ phải
chịu trách nhiệm sau khi thỏa thuận đã được ký kết.

¾ Loại nhà đàm phán cứng rắn cực đoan hơn sẽ đảm bảo rằng tất cả các yếu tố nêu trong
một thỏa thuận bằng văn bản đều được tuân thủ đầy đủ, bất kể kỳ vọng của họ thực
tế đến đâu. Do đó, điều quan trọng là bạn phải xác định một thỏa thuận bằng văn
bản kín nước không có phạm vi bổ sung thêm thông qua bất kỳ từ ngữ lỏng lẻo nào
được sử dụng trong thỏa thuận; điều này nên bao gồm định nghĩa về những gì được
coi là thời gian hỗ trợ và quay vòng hợp lý. chủ đề này được đề cập thêm trong
,
.

h Thiếu nghi thức xã giao: Điều này thường dẫn đến các giao tiếp từ khách hàng
điều đó nghe có vẻ thô lỗ và hung hăng hơn nhiều so với dự định.
Ví dụ như chửi thề và viết e-mail bằng chữ in hoa; mà vì lý do nào đó khách hàng cho
là chấp nhận được để sử dụng trong mối quan hệ nghề nghiệp.
Thiếu phép xã giao dẫn đến ấn tượng không tôn trọng hoặc coi trọng đóng góp của
bạn cho dự án và có thể khiến bạn và bất kỳ cộng tác viên nào khác mà bạn làm việc cùng
trở nên mất tinh thần. Câu hỏi cần cân nhắc với những khách hàng thiếu phép lịch sự là liệu
bạn có muốn tham gia làm việc cho họ hay không; sự thiếu chuyên nghiệp của họ có thể lan
rộng từ giao tiếp kém sang tiếp xúc cơ thể và các hành vi khác có thể gây rủi ro cho sức
khỏe và sự an toàn của bạn. Nền tảng của tất cả các mối quan hệ làm việc tốt là sự tôn trọng
lẫn nhau giữa khách hàng và nhà cung cấp dịch vụ—nếu điều này không thành công ở một trong
hai bên, nó sẽ mở ra quá nhiều cơ hội cho các vấn đề lớn hơn xảy ra sau này trong dự án;
bạn có thể hoặc bạn muốn xử lý loại khách hàng này nếu bạn có thể đơn giản là tìm người khác
thuê bạn? h Đổ lỗi cho người khác vì không thực hiện được: Điều này đặc biệt làm tăng sự

nghi ngờ của bạn đối với một khách hàng có thể khó xử lý nếu bạn nhận thấy họ phàn nàn về một
loạt người dường như không thể thực hiện tiêu chuẩn mà họ mong đợi và/hoặc nếu họ đang phàn
nàn về một nhà cung cấp dịch vụ trước đây được thuê để thực hiện công việc mà họ muốn bạn
làm. Có thể là khách hàng đã không may mắn trong việc chọn người mà họ làm việc cùng, nhưng
thường thì đây là dấu hiệu cho thấy họ khó làm việc cùng do không cung cấp thông tin cần thiết
để hoàn thành công việc hoặc có những kỳ vọng không thực tế về những gì họ làm. có thể đạt
được.

138
Machine Translated by Google

tùy chọn tiến bộ


Hầu hết các khách hàng sẽ đặt ra cho bạn một số mức độ khó khăn để đáp ứng thành công nhu cầu
của họ và duy trì lợi nhuận. Vấn đề cho sự tiến triển không phải là liệu khách hàng có những đặc
điểm khó khăn hay không, mà quan trọng hơn là liệu những đặc điểm khó khăn của họ có ảnh hưởng đến

khả năng hoàn thành dự án thành công và có lãi của bạn mà không phải hy sinh các cam kết khác và
các mối quan hệ kinh doanh của bạn hay không.

Nói tóm lại, có hai lựa chọn mà bạn có để kết thúc mối quan hệ của mình với một khách hàng tỏ ra quá
khó giải quyết:

h Xác định mức độ hoàn thành với các điều khoản mới cho tương lai của mối quan hệ công việc:
Hầu hết khách hàng sẽ gặp một số mức độ khó khăn khi làm việc và thường sẽ có trường hợp
ban đầu bạn đã đánh giá sai độ khó của khách hàng. Trong trường hợp này, hy vọng bạn sẽ
đồng ý với thông số kỹ thuật kín nước (xem ) cho phép bạn xác định mức độ hoàn thành cho
công việc hiện tại. Sau khi hoàn,thành, một thỏa thuận kiến
mới có
thức
thểmới
được
củađưa
bạnravềcócách
tínhlàm
đến
việc với khách hàng để đảm bảo mối quan hệ làm việc tốt hơn, ít rủi ro hơn cho bạn và
mang lại phạm vi sinh lời tốt hơn.

h Xác định chiến lược rút lui: Phương án cuối cùng cho các tình huống trong đó mối quan hệ
khách hàng chứng tỏ là không có lợi, không khả thi và/hoặc rủi ro quá cao.
Một chiến lược rút lui tốt sẽ cho phép bạn kết thúc mối quan hệ với khách hàng mà không
có bất kỳ cảm giác khó khăn nào hoặc khiến khách hàng rơi vào tình trạng khó khăn. Chiến
lược rút lui có thể bao gồm mức độ hoàn thành của công việc hiện tại với việc chuyển
giao cho nhà cung cấp dịch vụ mới hoặc đơn giản là chuyển giao ngay lập tức. Các cách
lịch sự để kết thúc mối quan hệ với khách hàng có thể bao gồm báo giá mà bạn biết khách
hàng sẽ không trả và giới thiệu về nhà cung cấp dịch vụ cạnh tranh.

Khách hàng đáng tin cậy


Giống như khách hàng có đạo đức, khách hàng đáng tin cậy là một trong những kiểu khách hàng lý tưởng
để một freelancer làm việc cùng vì họ để bạn tiếp tục công việc của mình mà ít bị gián đoạn nhất.
Tuy nhiên, bản chất đáng tin cậy của loại khách hàng này cần được xử lý cẩn thận để đảm bảo
rằng dự án tiến triển đúng hướng và duy trì mối quan hệ làm việc tốt với khách hàng.

139
Machine Translated by Google

Đặc trưng
Đặc điểm của một khách hàng đáng tin cậy bao gồm:

h Không đặt ra nhiều câu hỏi: Thường là do không hiểu đầy đủ các đặc điểm kỹ thuật của dịch vụ
của bạn, việc thiếu đặt câu hỏi cho thấy rằng khách hàng đang dựa vào bạn để hoàn thành
công việc mà không cần quá nhiều ý kiến đóng góp từ họ.
Phương pháp thu hút khách hàng này:

¾ Cho phép tiến độ nhanh hơn trong các dự án đơn giản và dễ hiểu mà không cần quá nhiều
hướng dẫn từ khách hàng.

¾ Để lại quá nhiều cơ hội cho những sai lầm mắc phải do những giả định
không chính xác dẫn đến giải pháp được cung cấp không đáp ứng được yêu
cầu thực sự của khách hàng.

¾ Để đảm bảo rằng dự án chạy trơn tru và mang lại thành công, loại khách hàng này cần
được chăm sóc đặc biệt để trích xuất tất cả các thông tin cần thiết.

h Công khai hỏi ý kiến của bạn về những gì nên được giao: Đây là một cách tốt
dấu hiệu cho thấy khách hàng cởi mở với các đề xuất và có thể sẽ vui lòng tiến hành dự án
hoàn toàn theo lời khuyên của bạn. Bạn cần đảm bảo rằng bất kỳ lời khuyên nào bạn cung cấp
đều chính xác, bao gồm thông tin và quyết định dựa trên hiểu biết của bạn về các yếu tố riêng
lẻ liên quan đến khách hàng.

¾ Hãy cẩn thận khi đưa ra lời khuyên mà bạn không đủ tiêu chuẩn và/hoặc
đủ hiểu biết để cung cấp—vì điều này có thể phản tác dụng và được dùng làm lý do
để kiện bạn nếu khách hàng làm theo lời khuyên của bạn và hậu quả là phải gánh
chịu những hậu quả tiêu cực.

h Có ý tưởng mơ hồ về những gì họ muốn, nhưng không quá chi tiết: Một đặc điểm có thể chứng tỏ
là có vấn đề nếu không được xử lý đúng cách, các yêu cầu của họ không rõ ràng sẽ cần một số
nỗ lực ban đầu để tạo ra một danh sách yêu cầu rõ ràng—không chỉ để hướng dẫn khách hàng đi
đúng hướng, nhưng cũng để bảo vệ bạn khỏi tính năng leo thang sau này trong dự án.

h Không yêu cầu xem lại công việc của bạn một cách chi tiết: Giống như mơ hồ trong
yêu cầu, đây là một đặc điểm khác có thể trở thành vấn đề sau này trong dự án nếu không
được xử lý cẩn thận. Việc khách hàng thiếu nỗ lực để xem xét công việc bạn cung cấp có
nghĩa là họ có nhiều khả năng đổ lỗi cho bạn hơn nếu có bất kỳ sai sót nào xảy ra do công
việc của bạn không hoàn toàn phù hợp với kỳ vọng hoặc yêu cầu của họ.

140
Machine Translated by Google

đề xuất tiến độ
Khách hàng đáng tin cậy thường rất vui khi được làm việc cùng, nhưng như đã xác định, bản
chất đáng tin cậy của họ có thể gây ra các vấn đề ảnh hưởng đến tiến độ của dự án và chất
lượng của giải pháp cuối cùng. Do đó, một số biện pháp đặc biệt cần được thực hiện để điều
khiển dự án và khách hàng đi đúng hướng để thành công.

h Làm việc với khách hàng để tạo ra đặc tả yêu cầu đầy đủ: Cho dù đó là thông qua một
loạt các cuộc họp hay được cung cấp dưới dạng một buổi tư vấn về phong cách khóa
đào tạo chính thức, hãy dành thời gian ngay từ đầu dự án để xây dựng bức tranh toàn
cảnh về các yêu cầu của khách hàng và có điều này được ghi lại trong một tài liệu bằng
văn bản để đảm bảo rằng bạn có thể hiểu đầy đủ những gì được yêu cầu. Tài liệu bằng văn
bản cũng hoạt động như một điểm tham chiếu để mô tả những gì được yêu cầu trong giải
pháp cuối cùng; một tài sản bảo vệ bạn trước các tranh chấp về việc phân phối đã thỏa
thuận và tính năng leo thang.

h Nghiên cứu khách hàng càng kỹ lưỡng càng tốt: Bằng cách biết càng nhiều càng tốt về
khách hàng, bạn sẽ tự đặt mình vào vị trí đảm bảo rằng bạn có thể đưa ra lời khuyên
và quyết định tốt nhất phù hợp với nhu cầu của khách hàng với tư cách là một doanh

nghiệp riêng lẻ. Điều này không chỉ dẫn đến một giải pháp và dịch vụ tốt hơn cho khách
hàng mà còn bảo vệ bạn tốt hơn trước những hậu quả dựa trên lời khuyên thiếu hiểu biết
mà bạn có thể cung cấp. h Ký duyệt mọi thứ: Có một quy trình chính thức để khách hàng

ký duyệt mọi giai đoạn của dự án khiến họ nhận thức được về mặt tâm lý về tiến độ của bạn
cũng như nhắc họ kiểm tra xem công việc bạn cung cấp có đáp ứng mong đợi của họ hay
không. Hành động này không chỉ giúp cải thiện phản hồi của khách hàng về sự thành công
của dự án mà còn bảo vệ bạn khỏi các yêu cầu thay đổi trong tương lai, các đặc điểm
đáng lo ngại và tranh chấp về chất lượng mà nếu không thì khách hàng có thể mong đợi
bạn tự giải quyết bằng chi phí. h Xây dựng kế hoạch đáp ứng các yêu cầu hiện tại và
tương lai của khách hàng:

khách hàng đáng tin cậy chưa xác định đầy đủ đặc tả yêu cầu của họ cũng ít có khả
năng có kế hoạch rõ ràng cho cả tiến trình ngắn hạn và dài hạn của dự án của họ.
Loại khách hàng này cho thấy nhu cầu quản lý chủ động, điều mà bạn quan tâm là giúp
họ xác định hướng họ cần thực hiện. Như đã xác định trước đó, hãy đảm bảo chỉ đưa ra
lời khuyên mà bạn đủ tiêu chuẩn và/hoặc đủ kiến thức để đưa ra nhằm giảm thiểu khả
năng bị kiện nếu mọi việc không như kế hoạch. Bạn cũng có thể muốn xem xét việc sử
dụng tuyên bố miễn trừ trách nhiệm trong thỏa thuận dịch vụ của mình để loại bỏ trách
nhiệm đối với các hậu quả từ các đề xuất được cung cấp—nói cách khác, khách hàng có
trách nhiệm nói chuyện với chuyên gia chuyên môn về chủ đề này.

141
Machine Translated by Google

Khách hàng khó chịu


Loại khách hàng này thường sẽ thể hiện hầu hết các đặc điểm của một khách hàng khó tính, cộng với một số

điều ngạc nhiên của riêng họ. Đối với hầu hết mọi người, tốt nhất nên tránh xa những khách hàng khó chịu bằng

mọi giá; chúng không xứng đáng với nỗ lực, căng thẳng hoặc sự sỉ nhục mà chúng có thể gây ra.

Đặc trưng
Đặc điểm của một khách hàng khó chịu bao gồm:

h Hành vi gây hấn với người khác: Hành vi gây hấn có thể có nhiều dạng, cho dù đó là lời nói, đe dọa,

ngôn ngữ cơ thể hoặc hành vi gây hấn về thể chất như thường xuyên ném đồ vật và đóng sầm cửa. Loại

hành vi này cho thấy rằng khách hàng không quan tâm đến cách người khác nhìn nhận họ hoặc họ không có

khả năng tự kiểm soát. Dù bằng cách nào, điều này tạo ra nhiều cơ hội cho các vấn đề xảy ra nếu họ

không đồng ý với các hành động trong tương lai của bạn; bạn có thực sự muốn mạo hiểm gánh chịu sự xâm

lược của họ không?

h Tin đồn ác ý: Bên cạnh mức độ đùa cợt có thể chấp nhận được hiện diện trong hầu hết các môi trường

làm việc, tin đồn thật sự ác ý cho thấy rõ ràng họ coi thường tính bảo mật và tôn trọng người

khác. Đúng là có thể có những lý do thực sự khiến khách hàng lo lắng và không hài lòng với những

người mà họ làm việc cùng và quen biết, nhưng các chuyên gia có xu hướng coi trọng tất cả các mối quan

hệ nghề nghiệp của họ và thảo luận trực tiếp mối quan tâm của họ với những người có liên quan— hoặc ít

nhất là riêng tư với những người mà nó quan tâm. Hành vi của khách hàng về bản chất này cho thấy rằng

họ có thể gây rắc rối cho bạn thông qua việc không truyền đạt trực tiếp mối quan tâm của họ với bạn,

do đó gây ra thiệt hại không cần thiết cho danh tiếng của bạn khi họ quyết định lan truyền tin đồn ác

ý về bạn

h Gọi tên: Rõ ràng là một đặc điểm không chuyên nghiệp, gọi tên bởi

khách hàng theo bất kỳ cách nào không nằm trong lĩnh vực nói đùa hợp lý đều không tích cực đối với bất

kỳ ai trong môi trường chuyên nghiệp. Nó cho thấy sự thiếu tôn trọng đối với những người mà họ làm

việc cùng, vốn là nền tảng mà mọi mối quan hệ công việc tốt đẹp được xây dựng trên đó. Nếu khách hàng

của bạn không thể thực sự tôn trọng bạn và/hoặc những người khác với tư cách là một người chuyên

nghiệp, thì mối quan hệ công việc khó khăn đã được gieo mầm khiến bạn có nguy cơ cao bị đánh giá thấp,

không được đánh giá cao và bị lợi dụng.

h Mỉa mai thái quá: Mặc dù không phải lúc nào cũng là dấu hiệu của một khách hàng khó chịu, nhưng sự mỉa

mai không được chuẩn bị có thể là dấu hiệu của một đặc điểm tính cách coi thường. Điều này có thể gây

ra vấn đề nếu kỳ vọng của khách hàng không được đáp ứng trên cơ sở kỹ thuật, ngân sách, tài nguyên hoặc

thời gian có sẵn

h Khoe khoang về các giao dịch phi đạo đức: Có lợi cho người khác bằng chi phí của người khác chẳng

hạn như giành được sức lao động miễn phí từ những người cần tích lũy kinh nghiệm làm việc, nhưng

khoe khoang về tình hình đã bị lợi dụng như thế nào lại là một vấn đề hoàn toàn khác. Một người

khoe khoang theo cách này thể hiện sự thiếu đánh giá cao và tính bảo mật cũng như cho thấy rằng

họ rất vui khi đạt được lợi ích từ người khác. Nói chung, bạn không bao giờ nên tin tưởng kiểu người

này vì họ có khả năng lợi dụng mối quan hệ công việc của bạn và khiến bạn thiệt hại về tài chính hoặc

vì lợi ích riêng của họ

142
Machine Translated by Google

h Công khai bác bỏ các kỹ năng và nỗ lực của người khác: Giống như châm biếm, đây không nhất thiết

là dấu hiệu rõ ràng rằng khách hàng sẽ gây ra vấn đề trong mối quan hệ công việc, nhưng nên

nâng cao nhận thức về các vấn đề tiềm ẩn phía trước. Loại đặc điểm này cho thấy rằng khách hàng

không đánh giá cao các chi tiết tốt hơn về kỹ năng và thời gian cần thiết để cung cấp dịch vụ,

nếu đúng như vậy, sẽ khiến việc giao tiếp và đàm phán các điều khoản quan trọng đối với sự thành

công của dự án trở nên khó khăn hơn nhiều chẳng hạn như thời gian, nguồn lực và ngân sách cần thiết

đề xuất tiến độ
Những khách hàng khó chịu rất khó làm việc và cung cấp lợi nhuận tối thiểu cho các hành động để giữ cho

mối quan hệ công việc diễn ra suôn sẻ. Những khách hàng này có rủi ro cao vì thái độ của họ có thể dẫn đến

những tình huống gây tổn hại đến uy tín và lợi nhuận của bạn—có thể đến mức khách hàng không trả bất kỳ

khoản nào.

h Hủy bỏ: Bạn càng sớm xác định được các đặc điểm của một khách hàng khó chịu, thì bạn càng có vị

thế tốt hơn để thoát khỏi sự dính líu của mình với họ. Lý tưởng nhất là trước khi bắt đầu bất

kỳ công việc nào hoặc ký kết hợp đồng để bạn không có nghĩa vụ pháp lý hoặc cam kết tài chính. Khi

công việc đã bắt đầu, vẫn nên xem xét các lựa chọn để rút lui; lý tưởng nhất là được thanh toán cho

các cam kết về thời gian của bạn, nhưng ngay cả khi không thanh toán, chi phí tiếp tục có thể cao

hơn đáng kể so với việc xóa số tiền bạn đã nợ cho dự án, đặc biệt là khi có rủi ro khách hàng không

thanh toán hóa đơn của họ

h Thanh toán trước: Đừng bao giờ tin tưởng khách hàng khó chịu vì họ có xu hướng thiếu

những đặc điểm cần thiết để tham gia kinh doanh một cách có đạo đức. Yêu cầu thanh toán trước để

họ không thể giữ lại khoản thanh toán như một chiến thuật nhằm bắt bạn phải trả tiền chuộc để

bắt bạn làm công việc không công hoặc mặc cả với bạn về giá để đổi lấy khoản thanh toán nhanh

hơn; thậm chí tệ hơn là khi họ không có ý định trả tiền sau khi nhận được các phần bổ sung miễn phí.

Thanh toán trước kết hợp với các yếu tố khác được đề cập trong danh sách này cung cấp cho bạn

sức mạnh đàm phán bổ sung khi khách hàng bắt đầu sử dụng các chiến thuật ngầm để tận dụng thời

gian và kỹ năng của bạn

h Tài liệu rõ ràng: Có yêu cầu cao hơn về việc ghi lại mọi thứ một cách chi tiết vì khách hàng khó chịu

không thể tin cậy để giữ lời hoặc bóp méo các thỏa thuận. Tài liệu dự án nên chú ý cụ thể đến chính

xác những gì bạn đã đồng ý cung cấp, khi nào sẽ được giao và với mức giá nào. Thỏa thuận này nên sử

dụng từ ngữ chặt chẽ khiến khách hàng không thể yêu cầu một cách giải thích thay thế cho phép họ

thêm công việc bổ sung hoặc trốn thanh toán

h Các cột mốc quan trọng: Giữ cho mỗi cột mốc của dự án ngắn gọn cho phép bạn tính phí khách hàng
trước khi bắt đầu công việc và có thể tránh được các tình huống mà khách hàng xoay sở để lừa

bạn cung cấp nhiều công việc hơn mức bạn đã đồng ý.

Khi được kết hợp với giấy tờ rõ ràng và thanh toán trước, điều này sẽ trở thành một công cụ thương

lượng hiệu quả cao giúp bảo vệ bạn khỏi các hoạt động kinh doanh phi đạo đức được sử dụng bởi

những khách hàng khó chịu đang tìm cách lợi dụng để có được lao động tự do

143
Machine Translated by Google

h Giao tiếp bằng văn bản: Các hình thức giao tiếp yêu thích của khách hàng khó chịu là những hình

thức không thể được sử dụng làm bằng chứng, đặc biệt là khi bạn có thể trích xuất các khoản

thanh toán từ họ thông qua hệ thống pháp luật. Các thỏa thuận bằng lời nói rất khó chứng minh

và thậm chí các cuộc trò chuyện qua điện thoại/video được ghi lại có thể không được chấp nhận

làm bằng chứng nếu khách hàng không cho phép thực hiện các bản ghi âm ngay từ đầu. Chính vì tính

không đáng tin cậy của các thỏa thuận bằng lời nói làm bằng chứng nên tất cả các thông tin liên

lạc quan trọng chỉ nên được chấp nhận ở dạng văn bản, bao gồm e-mail cũng như thư giấy có chữ ký.

Đối với các tình huống liên quan đến hội nghị từ xa, giao tiếp trực tiếp hoặc qua điện thoại

nêu chi tiết các yêu cầu/quyết định quan trọng của dự án, chỉ cần yêu cầu khách hàng cung cấp

thông tin tổng quan trong email hoặc thư, cho phép bạn giữ điều này như một phần tài liệu dự án

của mình

h Nhân viên và cộng tác viên: Cần nỗ lực hơn nữa để bảo vệ

những người bạn làm việc cùng chống lại những khách hàng khó chịu thông qua việc sử dụng các

chính sách và thủ tục chính thức. Điều này không hẳn là để bảo vệ họ khỏi những vấn đề nhỏ

hơn như lạm dụng bằng lời nói mà bạn có thể mong đợi từ loại khách hàng này, mà còn liên quan

nhiều hơn đến việc họ trở thành nạn nhân của các hoạt động kinh doanh phi đạo đức mà khách

hàng có thể tham gia để lợi dụng sự ngây thơ của họ để đạt được miễn phí. lao động, trốn tránh

thanh toán hoặc thậm chí để đạt được các cam kết cho các mục tiêu không thể đạt được. Tốt nhất,

điều này dẫn đến một tình huống mà những người bạn làm việc cùng được sử dụng như những công cụ

để buộc bạn phải thực hiện các giao dịch kinh doanh không thuận lợi. Tình huống nghiêm trọng

hơn là khi khách hàng khó chịu có ý định sử dụng các cam kết mà họ đạt được làm bằng chứng để

kiện bạn vì dự án nhiều hơn giá trị; đó có thể là toàn bộ mục đích của dự án của khách hàng.

Chính vì những lý do này mà bạn nên đảm bảo làm rõ trong bất kỳ hợp đồng nào rằng chỉ có

bạn mới có quyền chấp nhận các bổ sung, thay đổi và cam kết đối với kế hoạch dự án. Các

chính sách và thủ tục cũng nên được sử dụng để đảm bảo rằng những người làm việc cùng bạn

biết cách xử lý thông tin liên lạc và các tình huống khi giao dịch với khách hàng; giúp

tránh vô tình tạo cho khách hàng khả năng đạt được các cam kết và/hoặc thừa nhận trách nhiệm

pháp lý thông qua cách diễn đạt lỏng lẻo. Lý tưởng nhất là có thể giảm rủi ro này bằng cách

loại bỏ các kênh liên lạc cho phép nhân viên và cộng tác viên của bạn nói chuyện trực tiếp với

khách hàng

Khách hàng có ý thức về giá


Khách hàng có ý thức về giá sẽ có nhiều dạng; một số được thúc đẩy bởi việc đạt được thỏa thuận tốt nhất,

một số bị hạn chế bởi ngân sách sẵn có của họ và những người khác được thúc đẩy bởi sự thiếu hiểu biết,

nghĩa là yếu tố duy nhất mà họ có thể đánh giá giá trị là giá cả.

144
Machine Translated by Google

Đặc trưng
Khách hàng có ý thức về giá sẽ có ít nhất một trong các đặc điểm sau:

h Sử dụng giá làm yếu tố chính trong quyết định mua hàng của họ: Đây là một đặc điểm có thể gây
ra vấn đề cho dự án, vì để giành được công việc, bạn có thể phải đẩy giá xuống thấp đến mức
phạm vi kiếm lợi nhuận của bạn không còn nữa. bao gồm bất cứ nơi nào gần những gì thời gian
của bạn có giá trị. Là lao động tự do, bạn không chịu sự điều chỉnh của bất kỳ luật lương
tối thiểu nào, do đó bạn phải cẩn thận để không báo giá thấp đến mức cuối cùng bạn phải làm
việc với mức lương thấp hơn số tiền bạn kiếm được khi bán bánh mì kẹp thịt tại một trong
những chuỗi thức ăn nhanh mà chúng ta đều biết ! Bạn cũng cần tính đến chi phí chung mà bạn
chi cho khách hàng về mặt thời gian; một khách hàng cần nhiều thời gian hơn để giao tiếp
đồng nghĩa với việc dành nhiều thời gian hơn cho dự án, mặc dù thời gian dành cho sản xuất
kỹ thuật thực tế mà bạn được thuê để thực hiện không nhiều hơn

h Sử dụng các chiến thuật đàm phán cứng rắn để giảm chi phí: Những người có phẩm chất này cho thấy
mức độ nhạy bén trong kinh doanh và kết quả là họ biết chi phí thực tế cho các yêu cầu của họ
là bao nhiêu. Chiến thuật đàm phán khó khăn của họ có thể được thúc đẩy bởi sự thiếu hiểu
biết về kỹ thuật hoặc đơn giản là để đạt được thỏa thuận tốt nhất. Dù bằng cách nào, điều này
có thể dẫn đến những khó khăn trong dự án nếu bạn cho phép họ thương lượng với bạn vượt quá
mức thực tế. Không chỉ có khả năng phải cắt giảm chi phí để duy trì lợi nhuận, mà các chiến
thuật đàm phán khó khăn của khách hàng có thể sẽ buộc bạn phải hoàn thành bất kỳ thỏa thuận
đặc điểm kỹ thuật nào, khiến bạn có khả năng làm việc với mức lương thấp hơn nhiều so với
thời gian của bạn và có thể kiếm được một thua

h Mong đợi chất lượng đầu ra tương tự như các giải pháp đắt tiền hơn: Một dấu hiệu rõ ràng rằng
khách hàng sẽ khó làm việc cùng vì họ không có kỳ vọng thực tế về những gì có thể đạt được
hoặc họ không có ý định làm việc trong một mối quan hệ đó là đôi bên cùng có lợi. Điều này
trở thành một phần của sự kết hợp độc hại khi khách hàng cũng sử dụng giá cả làm yếu tố chính
cho quyết định mua hàng của họ. Có một số yếu tố dẫn đến kỳ vọng này, chẳng hạn như thiếu
hiểu biết về kỹ thuật và khách hàng đã so sánh các yêu cầu của họ với các lựa chọn đắt tiền
khác trên thị trường

h Có thể thỏa hiệp về chất lượng để giảm chi phí: Đây chắc chắn là dấu hiệu cho thấy khách hàng
ít nhất là thực tế.. Sự thỏa hiệp về chất lượng được chấp nhận có thể đến sau một cuộc
thương lượng khó khăn hoặc có thể được đưa ra trước, điều sau chắc chắn là dấu hiệu của một
khách hàng có những kỳ vọng thực tế về những gì có thể đạt được và những người có thể làm
việc tốt với họ. Để bảo vệ bạn trước những tranh chấp trong tương lai với những khách hàng
khó tính, điều quan trọng là bạn phải có bất kỳ thỏa thuận nào về việc làm giảm chất lượng
của giải pháp cuối cùng được ghi lại bằng văn bản

145
Machine Translated by Google

đề xuất tiến độ
Khách hàng có ý thức về giá nên được xem xét rất cẩn thận, vì kỳ vọng ngân sách cho dự án có thể
dẫn đến các vấn đề ảnh hưởng đến cách bạn có thể hoàn thành thành công, giữ cho khách hàng hài
lòng và kiếm được một cuộc sống tốt. Chìa khóa thành công trong dự án nằm ở những điều sau:

h Thông tin: Đảm bảo rằng khách hàng hiểu đầy đủ chi tiết về những gì bạn đang cung cấp
với dịch vụ của mình để đáp ứng yêu cầu của họ. Họ phải hiểu rằng các giải pháp được
cung cấp bởi các nhà cung cấp dịch vụ rẻ hơn có thể không cung cấp tất cả các tính
năng, chất lượng và trải nghiệm mà bạn cung cấp, vì vậy, việc cung cấp cho họ thông tin
họ cần để so sánh công bằng sẽ giúp bạn tránh bị kẻ gian tìm cách cắt xén. .

h Đàm phán: Nếu khách hàng thúc ép bạn giảm giá, bạn có thể đề nghị giảm các yếu tố không
quan trọng trong dịch vụ của mình để đổi lấy mức giá thấp hơn. Đây là một chiến
thuật hữu ích để sử dụng vì nó cho phép khách hàng thắng trong cuộc đàm phán giá của
họ mà không ảnh hưởng đến lợi nhuận của bạn; do đó cho phép bạn duy trì một tiêu
chuẩn chất lượng cuối cùng sẽ làm hài lòng khách hàng. Các cuộc đàm phán tốt dẫn đến
các giải pháp làm hài lòng tất cả các bên liên quan.

h Giáo dục: Đảm bảo rằng khách hàng hiểu những điều cơ bản về kỹ thuật mà dịch vụ của bạn
cung cấp là rất quan trọng, vì nó sẽ giúp bạn không phải xử lý các cuộc điện thoại và
e-mail không cần thiết làm ảnh hưởng đến năng suất của bạn. Giáo dục khách hàng của bạn
cũng giúp họ hiểu giá trị thực của những gì bạn đang cung cấp.

h Công cụ: Phát triển và/hoặc mua tài nguyên để giúp bạn trở nên tốt hơn
hiệu quả trong việc cung cấp dịch vụ của bạn và cung cấp hỗ trợ khách hàng cũng như
quản lý dự án có thể dẫn đến việc bạn cung cấp dịch vụ tốt hơn với mức giá thấp hơn mà
không ảnh hưởng đến lợi nhuận của bạn. Loại tài nguyên này là lý tưởng để giành được
và hoàn thành thành công công việc cho khách hàng có ý thức về giá.

h Sản xuất: Là phần mở rộng của các công cụ đã đề cập trước đó, bạn có thể xem xét việc
phát triển các sản phẩm dựa trên các dịch vụ mà bạn cung cấp. Điều này đặc biệt tốt
khi bán cho những khách hàng bị hạn chế về giá cả hoặc thời gian, vì nó cho phép bạn
cung cấp các giải pháp làm sẵn với giá cố định mà không cần đầu tư thời gian không thể
đoán trước. Tỷ lệ hàng giờ của bạn sau đó có thể được thêm vào bất kỳ giá sản phẩm tiêu
chuẩn nào để sửa đổi và cải tiến thêm theo yêu cầu của khách hàng. Các ví dụ điển hình
về sản xuất dịch vụ là các mẫu trang web để thiết kế trang web và hợp đồng mẫu cho các
dịch vụ hỗ trợ pháp lý.

146
Machine Translated by Google

Tóm lược
Có nhiều loại khách hàng khác nhau yêu cầu các phương pháp khác nhau để làm việc. Khách
hàng có khả năng thể hiện các đặc điểm thuộc một số loại được đề cập trong chương này, đây
là điều làm cho mọi khách hàng trở nên độc đáo. Sự thành công của các dự án của bạn thường
sẽ phụ thuộc vào khả năng của bạn trong việc lựa chọn cách tiếp cận phù hợp để làm việc với
khách hàng, do đó, cần phải cấp bách để đảm bảo rằng bạn có thể xác định từng khách hàng
thuộc nhóm nào trước khi bạn bắt đầu phát triển dự án với họ .

Trong khi khách hàng sẽ nói về nhiều yếu tố thành công, điều quan trọng cần nhớ là chỉ có
hai yếu tố mà bạn nên tìm cách giải quyết—lợi nhuận và giữ cho khách hàng hài lòng sẽ dẫn
đến một kết luận cho dự án làm hài lòng cả hai bên.
Mặc dù điều này nghe có vẻ hiển nhiên và dễ hiểu, nhưng khó khăn trong việc đạt được điều
này bị ảnh hưởng bởi đặc điểm của khách hàng, với một số đặc điểm khó quản lý và gây ra
những rủi ro không mong muốn đối với lợi nhuận và danh tiếng của bạn.

Ngoài việc có các phương pháp để giải quyết các đặc điểm khác nhau của khách hàng mà bạn
gặp phải, việc tiết kiệm để trang trải chi phí trong vài tháng sẽ cho phép bạn tránh các
tình huống buộc phải nhận công việc từ những khách hàng mà bạn quan sát thấy có những đặc điểm
không mong muốn. Ở vị trí này cho phép bạn chọn lọc các dự án mà bạn đảm nhận để bạn có thể
tránh được những tình huống mà khách hàng xấu dẫn đến mất tiền vô cớ và tổn hại đến danh tiếng
của bạn. Thay vào đó, bạn có thể dành thời gian để làm việc với những khách hàng tốt, những
người dễ làm việc cùng, đánh giá cao sự đóng góp của bạn cho dự án của họ, sẵn sàng trả những
gì xứng đáng với bạn và có nhiều khả năng quay lại sử dụng dịch vụ của bạn nhiều hơn dựa trên
sự tin tưởng mà họ đã dành cho bạn.

Với sự hiểu biết về cách xác định các đặc điểm của khách hàng thuê bạn, bước hợp lý tiếp theo
là hiểu cách quản lý họ - chủ đề của chương tiếp theo.

147
Machine Translated by Google
Machine Translated by Google

7
quản lý khách hàng
Biết cách quản lý khách hàng có thể tạo ra sự khác biệt giữa một dự án đang diễn ra
suôn sẻ, thành công và có lợi nhuận. Chương này xem xét các phương pháp được sử dụng khi
làm việc với khách hàng để tránh các vấn đề có thể làm hỏng tiến độ của dự án và gây rủi ro
cho thành công cũng như khả năng kiếm lợi nhuận của bạn.

Điểm tiếp xúc


Thành công trong các dự án chủ yếu nằm ở chất lượng giao tiếp tốt với khách hàng và giống
như việc quản lý các yêu cầu kỹ thuật của khách hàng, việc truyền tải thông điệp sẽ dễ
dàng và hiệu quả hơn nhiều khi các đường dây liên lạc được đơn giản hóa. Vì lý do này, lý
tưởng nhất là chỉ nên có một đầu mối liên hệ để liên lạc trong tổ chức của khách hàng để:

h Không thể tranh chấp các thỏa thuận về yêu cầu công việc trên cơ sở ủy quyền do
sai người đưa ra—nghĩa là đảm bảo rằng đầu mối liên hệ của bạn có tiếng nói cuối
cùng và được ủy quyền. h Các yêu cầu công việc được cung cấp là nhất quán—tức là

không có yêu cầu mâu thuẫn nào do đầu mối liên hệ có thể đưa ra quyết định cuối cùng.

h Việc lặp lại thông tin liên lạc được giữ ở mức tối thiểu bằng cách cung cấp cho đầu
mối liên hệ được chỉ định trách nhiệm chuyển thông tin đến đúng người, do đó tránh
làm mất thời gian của bạn bởi nhiều người gọi điện hoặc gửi email cho bạn với cùng
một câu hỏi.

h Hỗ trợ dễ quản lý và phối hợp hơn—không chỉ thông qua


đã đề cập đến việc giảm sự lặp lại trong giao tiếp, mà còn nhờ lợi ích từ việc
đầu mối liên hệ trở nên am hiểu hơn về các quy trình và vấn đề liên quan đến dịch
vụ của bạn để theo thời gian, họ có thể giải quyết nhiều vấn đề hỗ trợ hơn mà
không cần liên hệ với bạn.

h Các tranh chấp dễ quản lý hơn và có nhiều khả năng là thật hơn—việc trao đổi các
vấn đề tranh chấp với nhiều người có quan điểm khác nhau về tình huống trở nên rất
khó khăn, đặc biệt là khi các khiếu nại bắt nguồn từ việc thông tin không đến được
đúng người ngay từ đầu.

149
Machine Translated by Google

Thật không may, không phải tất cả các thiết lập máy khách đều đủ lý tưởng để chỉ cho phép một điểm liên hệ.

Trong loại kịch bản này, một số điểm liên hệ cần được xác định khi bắt đầu dự án có thể bao gồm:

h Nhà tài trợ dự án: Người có tiếng nói cuối cùng về số tiền được trả cho bất kỳ

dịch vụ cần cung cấp. Người này phải luôn đưa ra sự ủy quyền cuối cùng trước khi tiến hành

bất kỳ công việc nào để đảm bảo không có khả năng tranh chấp số tiền phải trả sau khi công

việc đã hoàn thành.

h Điều phối viên: Người chịu trách nhiệm điều phối các hoạt động của khách hàng

bên quản lý dự án và sẽ chịu trách nhiệm soạn thảo các yêu cầu của dự án cũng như đảm bảo mọi

người đều có quyền truy cập vào thông tin phù hợp— bao gồm cả những thông tin liên quan đến hỗ

trợ cho người dùng cuối.

h Người liên hệ kỹ thuật: Những người sẽ cung cấp thông tin và tài nguyên

cần thiết để tiến triển với dự án. Đối với các dự án nâng cao hơn, đây có thể là các chuyên gia

trong lĩnh vực của họ, chẳng hạn như đại diện của bộ phận CNTT và tiếp thị mà bạn cần cộng tác.

h Đại diện người dùng cuối: Lựa chọn người dùng thực sự của giải pháp bạn cung cấp. Cho dù bạn

định cung cấp hệ thống CNTT, tài liệu quảng cáo hay nhiếp ảnh, thì phản hồi từ mẫu của những

người sẽ sử dụng giải pháp của bạn là rất quan trọng để đảm bảo rằng bất kỳ thứ gì bạn tạo ra

sẽ hữu ích và/hoặc được đánh giá cao bởi những người sẽ sử dụng nó. Những người này cũng có

thể đưa ra phản hồi giúp cải thiện giải pháp bằng cách thêm các tính năng mới làm tăng giá

trị và loại bỏ hoặc sửa đổi những tính năng không hữu ích.

Không phải tất cả các loại liên hệ này đều được yêu cầu bởi mọi dự án, trong khi một số dự án sẽ linh

hoạt để có một người đóng vai trò là hai loại được đề cập ở trên — chẳng hạn như điều phối viên dự án

được trao quyền đóng vai trò là nhà tài trợ dự án với khả năng ủy quyền các thỏa thuận thanh toán.

Cho dù danh sách đầy đủ các loại liên hệ là bắt buộc hay chỉ một số ít, các vấn đề quan trọng là đảm

bảo:

h Số lượng điểm liên hệ ít nhất được sử dụng để giảm nỗ lực quản lý luồng liên lạc của bạn được

giữ ở mức tối thiểu.

h Các loại đầu mối liên hệ phù hợp—một nhóm có khả năng cung cấp thông tin và nguồn lực mà bạn yêu

cầu để tiến triển cũng như có thẩm quyền đưa ra quyết định và cam kết.

Thực hiện đánh giá rủi ro của dự án


Bất kể bạn có mối quan hệ làm việc tốt với khách hàng hay không, tất cả các dự án đều yêu cầu đánh

giá rủi ro trước và trong khi tham gia.

Mặc dù tất cả chúng ta đều muốn tin rằng khách hàng của mình đáng tin cậy và không gây rủi ro cho lợi

ích kinh doanh của chúng ta, nhưng điều cơ bản trong kinh doanh là phải có các quy trình làm nổi bật

những rủi ro tiềm ẩn khi tham gia vào bất kỳ công việc nào do khách hàng cung cấp để chúng ta sớm xác

định các vấn đề tiềm ẩn trước khi chúng trở thành một vấn đề lớn.

150
Machine Translated by Google

Sau đây là những ví dụ về các cân nhắc cần được tính đến khi xem xét mức độ rủi ro liên quan
đến một dự án:

h Tính cách và quan điểm chính trị của khách hàng: Những điều này có thể gây ra các vấn đề

cản trở khả năng hoàn thành dự án thành công của bạn. Có bất kỳ dấu hiệu nào từ những
quan sát của bạn cho thấy khách hàng có thể khó làm việc cùng không? Có bất kỳ dấu hiệu nào

cho thấy chính trị trong tổ chức của khách hàng có thể ảnh hưởng đến công việc của bạn không?

h Thành lập doanh nghiệp: Các công ty trách nhiệm hữu hạn và công ty hợp danh trách nhiệm
hữu hạn có thể bị thanh lý, gây ra rủi ro rằng việc thanh lý của chúng có thể khiến
bạn không được trả tiền cho công việc của mình. Ngoài ra, việc chủ doanh nghiệp chuyển
tài sản từ một công ty mà họ sắp thanh lý sang một công ty mới để tránh phải trả nợ
cho các chủ nợ của họ là hoàn toàn hợp pháp. Yếu tố quan trọng cần nhận biết với các
loại hình kinh doanh này là chúng là một thực thể pháp lý riêng biệt đối với chủ sở hữu
của chúng, nghĩa là bạn đang giao dịch với thực thể kinh doanh chứ không phải con người.
Đừng bao giờ mắc sai lầm khi cho rằng tài sản có thể bị tịch thu như một hình thức thanh
toán trong trường hợp xấu nhất; ngay cả khi chủ sở hữu không thành lập công ty phượng
hoàng, tài sản mà họ sở hữu cá nhân vẫn tách biệt với doanh nghiệp. Thương nhân độc lập
có thể bị phá sản, khiến bạn rất khó được thanh toán cho các dịch vụ mà bạn đã cung cấp
nếu điều này xảy ra. Khi ai đó được cấp bảo hộ phá sản, họ được giải phóng khỏi mọi nghĩa
vụ tài chính mà họ có, nghĩa là bạn có thể làm rất ít để lấy lại bất kỳ khoản tiền nào
mà bạn đang nợ; đây có thể là một vấn đề nghiêm trọng nếu bạn đã tự gánh những khoản nợ
đáng kể để cung cấp dịch vụ của mình cho bất kỳ ai tuyên bố phá sản. Sự phức tạp của các
yêu cầu của dự án có thể bị đơn giản hóa quá mức nếu mô tả của khách hàng do họ thiếu
kiến thức kỹ thuật để mô tả chi tiết tất cả các yếu tố liên quan. Hãy hết sức thận trọng
khi khách hàng đề cập đến những từ như và Những loại từ này cho thấy rằng họ coi công
,
việc là cơ bản và do đó cần ít nỗ lực và kỹ năng, thường dẫn đến kỳ vọng giao hàng nhanh
hơn
. với chi phí thấp hơn so với thực tế.

h Tính thực tiễn của các yêu cầu của khách hàng: Khách hàng thường có ý tưởng về những gì
họ muốn mà bạn biết từ kinh nghiệm của mình sẽ không hiệu quả. Khách hàng sẽ thường lắng
nghe phản hồi của bạn, nhưng có một số người sẽ không lắng nghe đề xuất của bạn và sẽ
kiên quyết tiếp tục thực hiện ý tưởng của riêng họ—tình thế tiến thoái lưỡng nan là liệu
có nên làm việc với họ với nguy cơ làm xấu đi mối quan hệ khi mọi chuyện đi sai hướng
hay không. đề nghị họ thuê người khác theo nguyên tắc đạo đức là chỉ cung cấp các giải
pháp phù hợp với lợi ích của khách hàng. Ngoài ra, các dự án mà bạn cho rằng sẽ thất bại
cũng có thể có yếu tố tài chính ảnh hưởng đến khả năng khách hàng thanh toán phí cho bạn
—trong trường hợp này, tốt hơn hết là bạn nên tránh hoàn toàn rủi ro lớn hơn về việc
không được thanh toán bằng cách không nhận dự định.

151
Machine Translated by Google

h Ý nghĩa của các yêu cầu của khách hàng: Hậu quả là gì nếu giải pháp bạn đưa ra không thành
công? Hệ thống kiểm soát không lưu có nguy cơ dẫn đến hậu quả cao hơn nhiều so với hệ thống

phần mềm giải trí, mặc dù cả hai có thể yêu cầu mức độ kỹ năng, thời gian và nỗ lực như nhau
để phát triển.

¾ Bạn sẽ làm việc để phát triển cái gì? Và những gì là

phụ thuộc đã tồn tại? Nếu bạn được yêu cầu cập nhật mã cho hệ thống kiểm soát không
lưu được đề cập ở trên, tốt hơn hết bạn nên đảm bảo rằng bạn hiểu đầy đủ về thiết kế

của hệ thống và cách mỗi thành phần tích hợp với nhau, khi giới thiệu các thay đổi

bạn được yêu cầu thực hiện có thể dễ dàng phá vỡ các phần khác của hệ thống mà bạn

không biết. Nguyên tắc này không dành riêng cho công nghệ phần mềm mà còn áp dụng
cho nhiều ngành nghề khác như kế toán, báo chí và thiết kế đồ họa cho sách quảng cáo

và sách.

¾ Không thực hiện các thay đổi có an toàn hơn không?

Đo độ phức tạp
Một yếu tố có thể trở thành một vấn đề là sự phức tạp của dự án. Bản chất của ngôn ngữ nói là cùng
một câu có thể được hiểu là có nghĩa khác nhau đối với những người khác nhau. Không bao giờ nên giả

định rằng bất kỳ dự án nào cũng dễ dàng—không gì có hại hơn cho ngành và khả năng đàm phán của bạn khi
có một số nhà cung cấp dịch vụ thiếu kinh nghiệm gợi ý rằng một công việc dễ dàng. Điều này dẫn đến

khách hàng:

h Giả sử công việc có thể hoàn thành nhanh chóng. h Mong

đợi một mức giá thấp hơn cho báo giá của bạn.

Trừ khi bạn đang làm việc với một khách hàng hiểu rõ về các kỹ thuật của dịch vụ mà bạn cung cấp, các
chi tiết về mức độ phức tạp của công việc sẽ được giao hầu như không bao giờ được cung cấp cho khách hàng

ngoài việc nói rằng nó phức tạp hơn để đạt được so với tưởng tượng. .
Những lý do chính đáng cho việc này bao gồm:

h Nguy cơ gia tăng kỳ vọng cao—đặc biệt đối với các yếu tố của dự án

hóa ra là phức tạp hơn để thực hiện hơn dự kiến.

h Cung cấp cho khách hàng phạm vi đưa ra các kết luận không hợp lý bằng cách đo lường các nhiệm
vụ trước đó. Điều này không tốt cho các yếu tố của một dự án nghe có vẻ giống với các nhiệm

vụ trước đó, nhưng yêu cầu nhiều công việc 'chui' hơn mà khách hàng không chú ý.

h Vì thường khó giải thích sự phức tạp cho khách hàng trong các
hoàn cảnh, khách hàng sẽ thường cho rằng bạn đang xây dựng thêm nỗ lực cần thiết, dẫn

đến khả năng thương lượng của bạn về các yếu tố liên quan đến thanh toán và quy mô thời

gian giao hàng có thể bị ảnh hưởng.

h Các yếu tố không xác định có thể làm cho công việc đơn giản trở nên

phức tạp hơn. h Bản thân thân chủ có thể là trở ngại biến một công việc đơn giản thành một điều gì đó

to hơn nhiều.

152
Machine Translated by Google

Với ý nghĩ trên:

h Đừng bao giờ nói bất cứ điều gì là dễ dàng—điều đó thường không dễ dàng và nó ảnh hưởng đến khả năng của bạn

đàm phán.

h Dự kiến sẽ tìm thấy thông tin chưa được tiết lộ sẽ ảnh hưởng đến công việc bạn

làm. h Không bao giờ cam kết ngày giao hàng cụ thể cho đến khi bạn hài lòng rằng bạn có tất cả
thông tin bạn yêu cầu.

h Nếu ngày giao hàng được ấn định để hoàn thành dự án, hãy đảm bảo rằng bạn có thể xác
định các thành phần có thể bị loại bỏ nếu độ phức tạp khiến bạn bị chậm tiến độ.
Các thành phần được xác định phải là những thành phần không quan trọng đối với chức
năng của giải pháp cuối cùng và có thể tiết kiệm đủ thời gian để đưa bạn trở lại đúng
hướng.

Các chỉ số hiệu suất chính


Biết trước những gì khách hàng đang đánh giá hiệu suất của bạn có thể cung cấp cho bạn khả
năng tập trung nỗ lực vào các lĩnh vực sẽ thu hút sự chú ý của họ trước đó trong dự án—cho phép
bạn nhanh chóng có được sự tin tưởng của họ. Tất cả các khách hàng đều khác nhau, vì vậy bạn nên
tránh đưa ra giả định về những khía cạnh nào trong công việc của bạn sẽ được chú ý nhiều nhất.

Có được sự hiểu biết về các chỉ số hiệu suất chính của khách hàng đến từ việc giao tiếp tốt—cụ
thể là có thể đặt câu hỏi phù hợp theo cách mà khách hàng hiểu. Ấn tượng đầu tiên cũng là một
yếu tố chính sẽ ảnh hưởng đến cách khách hàng đánh giá hiệu suất của bạn; một việc đơn giản như
giải thích cho khách hàng biết công việc của bạn có liên quan gì và những lợi ích mà nó mang lại
cho họ có thể tạo ra sự khác biệt giữa việc họ không hài lòng với tốc độ làm việc của bạn và rất
ấn tượng với những gì bạn làm.

h Đặt câu hỏi khi bắt đầu dự án về những gì họ mong đợi thấy—nếu bạn đang làm việc tại công
trường, hãy hỏi họ vào đầu mỗi ngày về những gì họ mong đợi thấy vào ngày hôm đó; điều
này cung cấp cho bạn hướng dẫn về nơi cần tập trung nỗ lực, cũng như xác định sớm bất kỳ
kỳ vọng phi thực tế nào cần được giải quyết.

h Xác định các loại công việc mà khách hàng đánh giá cao nhất—tất cả đều là về hình ảnh hay họ
quan tâm nhiều hơn đến chức năng làm việc? h Đừng bao giờ cho rằng việc hoàn thành công

việc theo tiêu chuẩn tốt là đủ để gây ấn tượng với khách hàng—hãy đảm bảo rằng họ biết những
gì bạn đã làm và lý do tại sao nó lại đạt tiêu chuẩn tốt. h Thảo luận về các lựa chọn thay

thế cho bất kỳ thứ gì bạn đã xác định là có nguy cơ phát triển cao hơn—đừng bao giờ lạc quan
về mức độ phức tạp và thời gian giao hàng.

h Xác định mục tiêu hiệu suất là SMART:

¾ Cụ thể : Theo nghĩa là không có khả năng diễn giải sai những gì được mong đợi
từ bạn.

153
Machine Translated by Google

¾ Có thể đo lường được : Trong đó, các định nghĩa về mục tiêu của bạn không mơ hồ và thay vào

đó có thể được so sánh với các chỉ số không thể tranh cãi ở các giai đoạn khác nhau của

,
dự án; tức là thay vì đảm bảo rằng từ ngữ sẽ trở nên cụ thể hơn, chẳng hạn như

¾ Có thể đạt được: Tất cả các mục tiêu phải khả thi để bạn đáp ứng

chúng, cho dù đó là về mặt kỹ thuật, chính trị hay với các nguồn lực, kỹ năng và ngân

sách sẵn có; chúng tôi có thể đặt mục tiêu tạo ra đồ họa tốt nhất, nhưng chúng tôi sẽ

không bao giờ đạt được điều này nếu chúng tôi không có kỹ năng đồ họa.

¾ Có liên quan : Loại bỏ các mục tiêu nằm ngoài phạm vi những gì bạn cung cấp như một phần

kỹ năng cốt lõi của bạn; ví dụ: một khách hàng có thể nhầm lẫn việc phát triển phần mềm

web với việc cung cấp hoạt động tiếp thị trực tuyến, trong đó bạn sẽ cần loại bỏ mọi

mục tiêu tiếp thị không liên quan trực tiếp đến việc phát triển phần mềm.

¾ Liên quan đến thời gian : Đảm bảo rằng khách hàng chỉ định khung thời gian mà họ mong

đợi sẽ đạt được mục tiêu trong đó; tránh những tình huống mà họ đưa ra cho bạn những
hoặc
đề xuất không cụ thể, chẳng hạn như cả hai đề xuất này đều có quá nhiều phạm vi khiến

khách hàng có thể thay đổi ý định bất cứ lúc nào và đặc biệt là khi có liên

quan đến hợp đồng. Thay vào đó, các mục tiêu liên quan đến thời gian, chẳng hạn như cụ

thể đến một điểm mà bạn có thể đánh giá trước xem mục tiêu đó có thực tế hay không.

Xác định kỳ vọng của khách hàng


Việc xác định kỳ vọng của khách hàng là rất quan trọng đối với tiến độ nhận thức của dự án. Không giống như

quản lý kỳ vọng của họ, điều xảy ra khi dự án bắt đầu, việc xác định kỳ vọng của khách hàng là cách bạn đặt kỳ

vọng của họ trước khi họ cam kết mua hàng của bạn. Rất dễ vô tình tạo ấn tượng sai về sự phức tạp, yêu cầu về

tài chính và thời gian của dự án của họ, vì vậy, rất quan trọng về những gì bạn nói trước mặt bất kỳ khách hàng

tiềm năng nào để đảm bảo rằng họ tránh đưa ra giả định rằng bạn là người đến sau. tổ chức cuộc họp. Ví dụ về

các vấn đề tế nhị cần thảo luận bao gồm:

h Khoảng thời gian hoàn thành: Bạn nên tránh đề cập đến bất kỳ điều gì về thời gian hoàn thành cho

đến khi bạn hoàn thành đầy đủ thông số kỹ thuật của dự án, hiểu rõ đặc điểm của khách hàng và

hiểu rõ tất cả các yếu tố liên quan đến dự án. Nhiều vấn đề có thể xảy ra khi bạn nói điều gì đó

dọc theo dòng

thường dẫn đến việc khách hàng nghe thấy

,trong khi

trên thực tế, khách hàng tỏ ra chậm chạp trong việc cung cấp các tài nguyên mà bạn yêu cầu và gây

ra các vấn đề cả về việc làm chậm tiến độ của bạn và giả định rằng bạn sẽ cung cấp nhanh chóng bất

kể các vấn đề gặp phải. Nếu không có quy mô thời gian được đề cập, loại vấn đề này có thể tránh được

hoàn toàn.

154
Machine Translated by Google

h Tính phức tạp: Một sai lầm kinh điển của những người mới làm nghề tự do là giả định hoặc làm cho

công việc nghe có vẻ đơn giản hơn thực tế. Điều này gây ra các vấn đề chính sau: ¾ Khách hàng

đánh giá thấp các kỹ năng cần thiết để thực hiện công việc. ¾ Tăng rủi ro về các yếu tố chưa

biết liên quan đến công việc mở ra những phức tạp mới làm tăng phạm vi yêu cầu công việc.

¾ Mở ra cơ hội cho khách hàng đảm nhận tiến độ nhanh chóng trong công việc nghe có

vẻ đơn giản nhưng thực tế lại khó đạt được. ¾ Mở ra phạm vi cho khách hàng

chấp nhận và/hoặc yêu cầu một mức giá rẻ hơn

giá dựa trên những giả định sai lầm của họ về yêu cầu thời gian và đánh giá

thấp kỹ năng của bạn.

¾ Gợi ý cho khách hàng rằng bất kỳ ai cũng có thể thực hiện công việc—kết quả là bạn

được coi là dễ dàng dùng một lần.

¾ Đây là tất cả những thành phần có thể dẫn đến một vấn đề độc hại trong dự án của bạn

khi khách hàng bắt đầu yêu cầu các tính năng và phần bổ sung ngày càng phức tạp

hơn, đòi hỏi nhiều thời gian và chi phí hơn họ mong đợi. Loại vấn đề này có thể dẫn

đến sự thiếu tin tưởng vào khả năng của bạn, dẫn đến việc khách hàng từ bỏ bạn để

đến với một nhà cung cấp dịch vụ khác mà họ tin rằng sẽ có thể làm việc nhanh hơn và

rẻ hơn— điều này không tốt cho bất kỳ ai, đặc biệt nếu khách hàng nợ bạn tiền.

Tránh điều này bằng cách không bao giờ giả định về mức độ phức tạp của công việc và

không bao giờ đề cập đến những từ như dễ dàng, đơn giản hoặc cơ bản liên quan đến bất

kỳ thứ gì bạn cung cấp.

h Giá cả: Những khách hàng giả định về độ phức tạp cũng sẽ đưa ra các giả định dựa trên giá cả. Giống

như các yếu tố khác này, bất kỳ đề cập nào về giá chỉ nên được giới hạn ở mức lương theo giờ của

bạn trong các cuộc họp giao ban ban đầu—đừng bao giờ bị áp lực phải đề xuất bất kỳ mức giá nào

ngay tại chỗ, vì nhiều khách hàng có xu hướng hiểu nhầm đây là báo giá cuối cùng cho công việc và

đặt bạn vào một vị trí đàm phán khó khăn nếu bạn tìm thấy các yếu tố bổ sung sẽ làm tăng yêu cầu

về thời gian và chi phí của bạn. Chơi an toàn để tránh những kỳ vọng sai lầm luôn là một chính

sách tốt nhất về lâu dài, nhưng không nhất thiết là tốt trong ngắn hạn nếu đối thủ cạnh tranh của

bạn đang đưa ra những lời hứa không thực tế hoặc không an toàn về quy mô thời gian, độ phức tạp

và giá cả để làm cho đề xuất của họ xuất hiện hấp dẫn hơn của bạn. Nếu bạn cảm thấy đúng như vậy,

bạn có thể thực hiện một số hành động sau để có được lòng tin và đảm bảo rằng các khách hàng tiềm

năng có thể đưa ra quyết định sáng suốt khi quyết định thuê ai:

¾ Cung cấp tài liệu mô tả chi tiết quá trình phát triển dự án như một phần trong tài liệu

bán hàng của bạn—đầy đủ thông tin về các yếu tố chính mà họ nên tìm kiếm ở một nhà cung

cấp dịch vụ và cách bạn đáp ứng các tiêu chuẩn bắt buộc.

155
Machine Translated by Google

¾ Trong cuộc họp của bạn với khách hàng tiềm năng, hãy hướng dẫn họ xem tài liệu
phát triển dự án của bạn, thông báo cho họ về các quy trình liên quan đến việc
tạo ra sản phẩm của họ và nêu bật các vấn đề tiềm ẩn có thể xảy ra cũng như hậu
quả có thể xảy ra do tay nghề kém.

Điều này không chỉ nhấn mạnh rằng bạn biết bạn đang làm gì để có được sự tin tưởng
từ khách hàng tiềm năng, mà còn đặt khách hàng tiềm năng vào vị trí mà họ có thể
thẩm vấn đối thủ cạnh tranh của bạn để xác định những người đang hứa hẹn sai và không
an toàn.

Phân tích hàm ý


Trước khi bắt đầu thực hiện bất kỳ dự án nào cho khách hàng, điều quan trọng là phải phân tích tất cả
các phạm vi cho những tác động phát sinh từ sự tham gia của bạn. Ý nghĩa phổ biến nhất của việc làm việc
trong các dự án mới là làm việc với các nhà cung cấp dịch vụ khác—những người có thể làm việc với bạn
với tư cách là thành viên nhóm của cùng một dự án hoặc trong các dự án riêng biệt cần có sự hợp tác.
Để thành công, điều quan trọng là tất cả các bên phải hành động vì lợi ích cao nhất của dự án và tránh
chính trị dựa trên các chương trình nghị sự cá nhân.

Điều quan trọng là phải xác định chiến lược phù hợp để sử dụng trong quá trình hoàn thành dự án và đáp
ứng các yêu cầu về chất lượng, ngân sách và quy mô thời gian. Sau đây là những hàm ý cần được xem xét
khi đánh giá các yêu cầu phân phối này:

h Công việc đã bắt đầu trong dự án: Trong trường hợp tốt nhất, công việc hiện có trong dự án sẽ
được phát triển theo tiêu chuẩn cao cho phép bạn tiến triển hiệu quả hơn và tránh ảnh hưởng
đến bất kỳ thay đổi nào bạn cần thực hiện. Sẽ có yêu cầu đầu tư thời gian vào việc học cách
sử dụng bất kỳ công việc hiện có nào được tạo ra để cho phép bạn duy trì chất lượng và tận
dụng mọi tài nguyên được phát triển để tránh lãng phí thời gian và trùng lặp công việc. Ít
hơn trong các trường hợp lý tưởng, công việc hiện tại sẽ được sản xuất theo tiêu chuẩn thấp
hơn, dẫn đến việc bạn phải đầu tư quá nhiều thời gian để kiểm tra độ chính xác và khả năng
thực hiện các thay đổi một cách hiệu quả. Trong trường hợp xấu nhất, có thể xác định rằng việc
bắt đầu lại bất kỳ công việc hiện có nào từ đầu sẽ tạo ra một giải pháp được đưa ra trong thời

gian ngắn hơn, chính xác hơn và sẽ có lợi thế cho năng suất và khả năng bảo trì trong tương
lai; Những quyết định như vậy không bao giờ được xem nhẹ, vì điều này sẽ dẫn đến việc mở rộng
ồ ạt các yêu cầu công việc của dự án—câu hỏi đặt ra là liệu bất kỳ yêu cầu nỗ lực mở rộng nào
sẽ giúp phân phối dự án trong phạm vi ngân sách và thời gian yêu cầu trong cả ngắn hạn và dài
hạn. Khi chọn tạo một sự thay thế, một vấn đề khác đáng được xem xét là liệu có bất kỳ thành
phần nào có thể được sử dụng lại trong quá trình triển khai mới hay không; đây chắc chắn sẽ là
trường hợp khi hệ thống đã sử dụng dữ liệu sản xuất.

156
Machine Translated by Google

h Chính trị của tổ chức khách hàng: Điều quan trọng là phải biết nên tiếp cận ai
với thông tin nào để tránh liên lụy đến bản thân bạn trong các tình huống mà mọi người
trở nên không hài lòng hoặc phát hiện ra thông tin mà họ không được tiếp cận Chính sách
của khách hàng có thể dẫn đến việc một số người giữ lại thông tin cần thiết để bạn đưa ra
quyết định chính xác và tiến triển công việc của mình. Điều này có thể là do mọi người
coi dự án là mối đe dọa đối với vị trí của họ hoặc đơn giản là do cá nhân không thích các
nhân viên khác của khách hàng có liên quan đến công việc của bạn.

h Quy trình kinh doanh của khách hàng: Khách hàng điều hành doanh nghiệp hoặc bộ phận của họ
với các quy trình có cấu trúc và hiệu quả cao có nhiều khả năng sẽ áp dụng cùng một loại
phương pháp để làm việc với bạn, dẫn đến việc họ phát triển một quy trình có cấu trúc để
làm việc với bạn trong dự án. Một khách hàng thiếu tổ chức trong việc quản lý doanh nghiệp
hoặc bộ phận của họ cũng có khả năng vô tổ chức khi làm việc với bạn, dẫn đến các vấn đề
tiềm ẩn để lấy thông tin và phản hồi từ họ. Giải pháp mà bạn cung cấp cần phải phù hợp
với quy trình kinh doanh của khách hàng. Giải pháp tương tự cho một doanh nghiệp có nhiều
quy trình kinh doanh sẽ không nhất thiết hiệu quả với một doanh nghiệp khác cùng loại có
các quy trình kinh doanh khác nhau. Vấn đề then chốt cần xác định là tất cả các doanh nghiệp
đều khác nhau—ngay cả khi họ cung cấp các sản phẩm và dịch vụ giống nhau nhắm vào cùng một
thị trường.

h Các cá nhân làm việc trong dự án: cho dù họ được thuê bởi khách hàng hay
là các nhà cung cấp dịch vụ khác.

h Kỹ năng và chuyên môn: Luôn biết giao việc gì cho đúng người và đúng việc.
ý kiến nào cần được thực hiện với cấp có thẩm quyền cao hơn.

h Khả năng giao tiếp: Biết đâu là cách hiệu quả nhất để
giao tiếp với từng thành viên trong nhóm sẽ tránh được nhiều vấn đề. Sẽ rất có hại
cho sự tiến triển của dự án khi các thành viên khác không nghe hoặc hiểu sai các hướng
dẫn dẫn đến mất thời gian do trùng lặp công việc.

h Quản lý nhóm: Điều quan trọng là nhóm được phối hợp đúng cách để tránh các thành
viên tạo ra công việc không phù hợp với các thành phần khác do nhóm tạo ra.

h Chính trị: Một số người có thể hành động vì lợi ích tốt nhất của họ hơn là vì lợi ích
tốt nhất cho dự án. Điều này có thể đặc biệt đúng đối với những người muốn tỏ ra có
đóng góp quan trọng hơn và những người muốn tránh đổ lỗi cho bản thân về bất kỳ sai
sót nào.

Xác định chiến lược rút lui


Mặc dù luôn có ý định hoàn thành thành công dự án được đề cập ở mức độ mà khách hàng yêu cầu và hài
lòng, nhưng bất kỳ tình huống nào cũng có thể xảy ra sẽ hạn chế khả năng hoàn thành và bàn giao dự
án của bạn. Vì lý do này, phải luôn có một chiến lược để thoát khỏi dự án mà không khiến khách hàng
rơi vào tình trạng trì trệ. Các chiến lược rút lui nên bao gồm:

h Xác định thời hạn thông báo cho khách hàng để đảm bảo rằng họ có đủ thời gian chuẩn bị -
nếu có.

157
Machine Translated by Google

h Các nhà cung cấp tiềm năng mà bạn có thể giới thiệu cho dự án để thay thế

bạn. h Quy trình đào tạo cho bất kỳ (những) nhà cung cấp thay thế nào sẽ tham gia
vào giai đoạn chuyển giao, đảm bảo rằng nhà cung cấp dịch vụ mới có thể sử
dụng công việc mà bạn đã cung cấp theo tiêu chuẩn đầy đủ và không lãng phí thời gian.

Phân tích khách hàng


Bạn không thể đánh giá rủi ro mà khách hàng có thể gây ra cho thành công và lợi nhuận
của bạn trong một dự án trừ khi bạn có thông tin trước về cách họ vận hành. Mặc dù
không có cách nào thay thế cho việc có thể đo lường khách hàng từ kinh nghiệm làm
việc với họ trước đây, nhưng có một số cách để bạn có thể thu được một lượng thông
tin giúp bạn ước tính những rủi ro mà khách hàng sẽ gây ra cho bất kỳ dự án khả thi
nào. và mối quan hệ công việc.

Sự cam kết
Cam kết của khách hàng đối với một dự án thường sẽ là yếu tố quyết định trong
việc triển khai thành công—bất kể kỹ năng quản lý dự án và kỹ thuật của bạn tốt đến đâu,
đầu ra của bạn sẽ luôn dựa trên những gì khách hàng đưa vào. Có một từ viết tắt CNTT được
gọi là GIGO (Garbage In Garbage Out) mô tả chính xác vấn đề ở chỗ nếu khách hàng không nỗ
lực cần thiết vào dự án, thì họ sẽ không nhận được những gì họ muốn từ dự án.

Mặc dù rất khó để biết mức độ quan trọng của khách hàng đối với dự án của họ, một số yếu tố
có thể được tính đến khi đánh giá và kiểm tra cam kết của họ:

h Hỗ trợ lập kế hoạch: Điều này có thể dưới hình thức đưa bạn đến các cuộc họp
và/hoặc cung cấp một danh sách chi tiết tất cả các yêu cầu của họ. Nếu họ có thể
hoàn toàn cam kết giúp đỡ bạn trong giai đoạn đầu, thì khả năng cao là họ sẽ đủ cam
kết để cung cấp sự hỗ trợ liên tục mà bạn yêu cầu khi dự án bắt đầu—cho dù đó là
phản hồi, thử nghiệm hay xác định các yêu cầu bổ sung. Hãy nhớ rằng khách hàng có
các mức độ khả năng kỹ thuật khác nhau; do đó không phải khách hàng nào cũng có thể
giúp bạn với mọi thứ bạn đề xuất. Tuy nhiên, ngay cả những khách hàng bị hạn chế về
mặt kỹ thuật cũng nên thể hiện cam kết tối thiểu là dành thời gian để gặp mặt trực
tiếp với bạn—lý tưởng nhất là họ sẽ đến gặp bạn ít nhất một lần, điều này cho thấy
cam kết nhiều hơn để đạt được các yêu cầu của họ.

158
Machine Translated by Google

h Thời gian phản hồi: Thời gian phản hồi chậm đối với thông tin được yêu cầu liên quan đến dự

án là dấu hiệu cho thấy khách hàng quá bận rộn với các khía cạnh kinh doanh khác của họ;

tương tự nhưng tệ hơn đối với thời gian phản hồi chậm là thời gian phản hồi không thể đoán

trước, điều này gây khó khăn cho bạn trong việc lập kế hoạch cho quy trình làm việc của mình.

Điều này không tốt cho các dự án vì nó dẫn đến giải pháp cuối cùng không phù hợp với mong đợi

của khách hàng do thiếu thông tin đầu vào và/hoặc không hiệu quả do sự chậm trễ và trùng lặp

công việc gây ra bởi sự chậm trễ trong phản hồi của khách hàng..Khách hàng có Đặc điểm phản

hồi chậm thường bổ sung cho điều này bằng cách kỳ vọng bạn sẽ phản hồi các yêu cầu của họ càng

sớm càng tốt và có thời gian quay vòng nhanh chóng. Điều này trở thành vấn đề khi bạn không

thể lên kế hoạch cho lịch trình của mình vì bạn không biết khi nào mình có thể chuyển sang

giai đoạn tiếp theo—ngoài ra, bạn cũng sẽ có các dự án khác phải quản lý, điều này sẽ khiến

bạn khó phản ứng nhanh với phản hồi đó không được lên lịch.

h Chất lượng thông tin được cung cấp : Thông số kỹ thuật chi tiết cho biết

được yêu cầu là một dấu hiệu tốt cho thấy khách hàng cam kết với dự án thông qua khoản đầu

tư thời gian trước đó của họ và do đó có khả năng hỗ trợ cung cấp thêm thông tin và phản hồi

mà bạn yêu cầu để thực hiện thành công và hoàn thành dự án theo tiêu chuẩn mà mọi người đều

hài lòng. Một số khách hàng có thể có ý tưởng về những gì họ muốn, nhưng có thể không có khả

năng xác định các yêu cầu của họ trong một tài liệu chi tiết. Trong trường hợp này, bạn có

thể kiểm tra cam kết của họ bằng cách đề nghị giúp họ xây dựng đặc tả yêu cầu của họ. Nếu

đây là tình huống mà bạn gặp phải, thì cam kết của khách hàng nên được kiểm tra thông qua
việc đảm bảo rằng họ có đầy đủ thông tin đầu vào—nếu họ yêu cầu bạn xác định tất cả các yêu

cầu đối với họ, thì đây có thể là dấu hiệu cho thấy mối quan hệ công việc có vấn đề và khiến

bạn dễ bị tổn thương. các tính năng phân phối mà khách hàng giả định phải là một phần của phân

phối tiêu chuẩn, nhưng không được xác định trong thông số kỹ thuật của chúng.

h Phản hồi và thực hiện: Để cung cấp một dịch vụ chi tiết và riêng biệt, bạn sẽ

cung cấp nhiều lời khuyên và thường sẽ viết báo cáo như một phần tư vấn của bạn.

Một khách hàng cam kết sẽ tiếp nhận thông tin này và sẽ cung cấp phản hồi—ngay cả khi họ

không đồng ý với các đề xuất của bạn. Một khách hàng cứ đặt những câu hỏi giống nhau và hoặc

không đưa ra phản hồi tích cực hay tiêu cực nào cho thấy họ có khả năng thiếu cam kết lắng

nghe và/hoặc đọc lời khuyên của bạn.

Điều này có thể gây khó khăn cho việc lập kế hoạch dự án yêu cầu khách hàng cung cấp phản

hồi và các hành động cần thực hiện để dự án được tiến hành và thành công.

Yếu tố này có thể được kiểm tra một cách minh bạch thông qua quá trình tư vấn ban đầu của bạn.

Sử dụng một số câu hỏi mở cho phép khách hàng đưa ra ý kiến của họ về những gì bạn đã nói trong

cuộc họp và về bất kỳ tài liệu bằng văn bản nào mà bạn đã cung cấp cho họ là một cách tuyệt vời
để xem liệu họ có dành thời gian để thực hiện ít nhất một nỗ lực nhỏ hay không. để nghe và/hoặc

xem lại thông tin mà bạn đã chuẩn bị cho họ.

159
Machine Translated by Google

Đạo đức và khó khăn


Cách hiệu quả nhất để đánh giá xem khách hàng có khó làm việc cùng hay không là dành một số ngày làm

việc với họ tại văn phòng của họ. Từ đó, bạn sẽ có thể thu thập thông tin về văn hóa công sở của họ,

cách khách hàng giao dịch với các nhà cung cấp khác, đạo đức làm việc của họ và ý kiến nhân viên của

những người ra quyết định chính mà bạn sẽ làm việc cùng.

Từ đó, bạn có thể dễ dàng thấy trực tiếp cách họ giải quyết vấn đề có thể xảy ra khi bạn làm việc với họ

và xác định bất kỳ dấu hiệu cảnh báo nào—chẳng hạn như khách hàng giữ lại khoản thanh toán từ nhà cung

cấp, khoe khoang về các giao dịch kinh doanh phi đạo đức, phàn nàn về dịch vụ khác nhà cung cấp và sự

thiếu tin tưởng của nhân viên đối với chủ của họ.

Nhược điểm chính của phương pháp quan sát này là lượng thời gian cần thiết để dành số ngày làm

việc tại chỗ với khách hàng cũng như tạo ấn tượng rằng bạn đã cam kết đảm nhận dự án. Do đó, loại

hoạt động quan sát này tốt nhất nên dành cho các hợp đồng có giá trị cao hơn mà bạn có thể thương

lượng để có một khoảng thời gian bắt đầu dùng thử để cung cấp dịch vụ của mình.

Nghiên cứu thứ cấp là một lựa chọn khác có thể được thực hiện bổ sung hoặc thay thế. Trong kiểu quan

sát này, bạn sẽ thu thập thông tin từ những người khác có liên quan đến khách hàng, cho dù đó là nhân

viên, nhà cung cấp hay bất kỳ ai khác đã tham gia làm việc với doanh nghiệp của họ. Từ việc sử dụng

kết hợp các câu hỏi trực tiếp và gián tiếp tùy thuộc vào người mà bạn đang nói chuyện, bạn có thể xây dựng

một bức tranh về những gì khách hàng muốn làm việc cùng.

Tài chính
Một phần quan trọng trong việc làm cho bất kỳ dự án tiềm năng nào trở nên xứng đáng với sự tham gia

của bạn là được trả tiền—không chỉ vào một thời điểm nào đó, mà còn đúng thời hạn và với số tiền phù

hợp với giá trị thời gian đầu tư của bạn. Việc khách hàng không thanh toán những gì họ nợ vào đúng ngày họ

phải trả và đúng số tiền có thể dẫn đến hậu quả là ảnh hưởng đến công việc kinh doanh, lối sống và gia

đình của bạn, vì vậy, việc biết trước liệu khách hàng có thể được tin tưởng là có đạo đức trong các khoản

thanh toán hay không sẽ cho phép bạn đặt các thủ tục tại chỗ để bảo vệ bạn khỏi bị lợi dụng về tài chính.

Nghiên cứu mức độ rủi ro tài chính mà khách hàng đặt ra có thể khá đơn giản nếu bạn biết tìm ở đâu.

Báo cáo về các tài khoản đã gửi cho các công ty trách nhiệm hữu hạn có sẵn để mua trực tuyến tại

Companies House (www.companieshouse.gov.uk) thông qua dịch vụ WebCheck của họ. Theo cách tương tự,

thông tin tài chính có thể thu được về các cá nhân thông qua việc thực hiện kiểm tra tín dụng thông qua

một trong nhiều cơ quan trực tuyến cung cấp điểm tín dụng cho các cá nhân.

Nghiên cứu thông tin có sẵn công khai chỉ là một phần của vấn đề, vì tài khoản công ty và kiểm tra

tín dụng sẽ không tiết lộ thông tin liên quan đến đạo đức kinh doanh tồi tệ và thanh toán trễ cho các

nhà cung cấp thông thường sẽ gây ra vấn đề cho bạn. Để hiểu rõ điều này, cần nghiên cứu các nhà cung cấp

hiện tại của khách hàng và những người khác mà họ đã giao dịch để nhận phản hồi về các câu hỏi về mối quan

hệ kinh doanh của họ với khách hàng. Các trang web mạng xã hội như Twitter (www.twitter.com) và LinkedIn

(www.linkedin.com) rất hữu ích cho loại nghiên cứu này, chưa kể đến các phương pháp kết nối mạng kinh doanh

lỗi thời.

160
Machine Translated by Google

Học tập và thực hiện


Tất cả các khách hàng đều có trình độ năng lực kỹ thuật khác nhau, đây thường là
một trong những yếu tố xác định mối quan hệ làm việc của bạn với họ. Một số khách hàng
sẽ am hiểu về mọi thứ bạn làm và sẽ muốn thuê bạn làm người phụ giúp, trong khi những
khách hàng khác sẽ có rất ít hoặc không có kiến thức về các kỹ thuật và sẽ hoàn toàn tin
tưởng vào lời khuyên của bạn. Giữa những điều này, bạn sẽ có thêm nhiều khách hàng có một
số kiến thức kỹ thuật, nhưng không đủ để tự làm mọi thứ.

Yếu tố học tập và thực hiện của mối quan hệ công việc phải là trung tâm của bất kỳ kế
hoạch nào được xác định để làm việc với khách hàng. Một số khách hàng sẽ chủ động làm việc
với bạn để cả bạn và họ có thể tìm hiểu về những yêu cầu của dự án để thành công, trong
khi những khách hàng khác sẽ để lại những chi tiết tốt hơn cho bạn và chỉ yêu cầu đạt được
bức tranh tổng thể—trong trường hợp đó, bạn phải chủ động và xác định cách đạt được mọi thứ.
Cả hai khách hàng này đều đặt ra những loại rủi ro riêng đối với sự thành công, lợi nhuận
của dự án và do đó cần được tiếp cận theo cách khác.

Những khách hàng chủ động trong mối quan hệ công việc thường sẽ đưa ra các ý tưởng, điều
này thường là tốt, nhưng có thể là một vấn đề nếu bạn biết từ kinh nghiệm rằng các yêu
cầu cụ thể của họ sẽ gây ra các vấn đề kỹ thuật hoặc có ý nghĩa kinh doanh không tốt.
Trong trường hợp này, tốt nhất là phân tích mục tiêu cuối cùng cho những gì khách hàng
muốn đạt được và đưa ra các phương án tiến hành gần nhất có thể với cách họ muốn triển
khai mà không ảnh hưởng đến khả năng bảo trì kỹ thuật hoặc kinh doanh mà bạn biết sau này
sẽ trở thành có vấn đề. Sử dụng và phát triển các kỹ năng chính trị rất hữu ích cho loại
tình huống này, vì cùng một ý nghĩa có thể được viết và nói theo nhiều cách, mỗi cách sẽ
được diễn giải khác nhau đối với khách hàng—mục đích là hướng dẫn khách hàng đi đúng hướng
mà không khiến họ cảm thấy rằng chính bạn là người đưa ra những quyết định quan trọng.

Mặt khác, loại khách hàng không chủ động tham gia phát triển dự án sẽ không gây
ra bất kỳ vấn đề nào nêu trên, nhưng sẽ gây ra rủi ro do không cung cấp đủ thông tin. Nếu
không được quản lý đúng cách, điều này có thể dẫn đến lãng phí rất nhiều thời gian cho các
phần không quan trọng của dự án hoặc trong trường hợp xấu nhất, giải pháp cuối cùng không
như mong muốn của khách hàng. Chìa khóa để quản lý loại khách hàng này là cung cấp cho họ
các bản cập nhật gia tăng thường xuyên về tiến trình của bạn, cho họ thấy những lợi ích mà
mỗi bản cập nhật mang lại cho bức tranh lớn hơn và khiến họ xác nhận rằng họ hài lòng—hoặc
cung cấp phản hồi về những gì họ sẽ làm. thích được thay đổi.

Kiểu học tập và phong cách thực hiện của khách hàng có thể được quan sát thông qua các
tương tác ban đầu với khách hàng—dù là thông qua tư vấn ban đầu, cuộc trò chuyện chung
hoặc bắt đầu thực hiện dự án. Những khách hàng chủ động hơn trong việc phát triển dự án
sẽ nói nhiều hơn về các chi tiết cụ thể về cách thức triển khai dự án. Nếu họ chủ động
cung cấp cho bạn tài liệu và đề xuất mọi thứ nên hoạt động như thế nào, thì đây là một
dấu hiệu tốt cho thấy tốt nhất bạn nên để họ điều hành dự án và sau đó can thiệp ngoại
giao khi bạn thấy họ đang đi sai hướng. .

161
Machine Translated by Google

Loại khách hàng ít chủ động hơn thường có thể được quan sát là nói nhiều hơn về mục tiêu cuối cùng chứ

không nói nhiều về cách đạt được mục tiêu đó. Khi họ nhìn thấy bức tranh toàn cảnh hơn, họ có thể sẽ

cởi mở đặt câu hỏi về quan điểm của bạn về những gì nên làm tiếp theo.

Đây là lúc bạn nên xác định giọng điệu giao tiếp với tư cách là người dẫn đầu trong dự án, nhưng đảm

bảo rằng bạn luôn cập nhật cho khách hàng ở mọi bước.

Tính nhất quán


Nhiều khách hàng sẽ bắt đầu mối quan hệ công việc với bạn mà không biết đầy đủ những gì họ muốn. Tất

cả các khách hàng đều khác nhau về tầm nhìn rõ ràng về những gì họ muốn và với tư cách là nhà tư vấn

của họ, bạn có trách nhiệm trích xuất tất cả thông tin cần thiết để tiến hành công việc và tránh các

vấn đề có thể xảy ra sau này.

Những khách hàng có mức độ mâu thuẫn cao cần được chú ý nhiều hơn để tránh gây đau đầu cho cả hai bên.

Theo thông lệ tiêu chuẩn, một dự án nên:

h Bắt đầu với một đặc điểm kỹ thuật chính thức bằng văn bản: Điều này không chỉ giúp tránh

hiểu sai về chiều sâu của các yêu cầu của dự án, mà còn bảo vệ bạn khỏi các tranh chấp

liên quan đến những gì sẽ được giao với mức giá đã thỏa thuận.

h Có tất cả các yêu cầu được xác định rõ ràng trong đặc tả: Từ ngữ trong đặc tả mơ hồ khiến

khách hàng có quá nhiều cơ hội để mong đợi nhiều hơn những gì bạn cho là đồng ý. Đặc biệt

là với những khách hàng không nhất quán, điều này thường sẽ dẫn đến các yêu cầu bổ sung được

xác định là một phần của yêu cầu ban đầu và khiến bạn dễ bị lợi dụng nếu bạn được trả một

khoản phí cố định. h Có tất cả mọi thứ được ký tắt: Yêu cầu khách hàng ký xác nhận rằng họ

hài lòng với bất kỳ thỏa thuận hoặc công việc nào mà bạn cung cấp sẽ bảo vệ bạn trước mọi

cáo buộc trong tương lai rằng công việc không đạt yêu cầu dẫn đến yêu cầu sửa đổi miễn phí
hoặc hoàn lại tiền. Mặc dù chúng tôi muốn tin rằng tất cả các khách hàng mà chúng tôi làm

việc cùng đều có đạo đức, nhưng sẽ có một số ít người sẽ dùng mọi thủ đoạn có thể để có được
lao động miễn phí.

h Chia nhỏ thành các mốc quan trọng: Đây là một cách hay để cho khách hàng thấy khối lượng công việc

liên quan và để đảm bảo rằng có các điểm kết thúc cụ thể để bảo vệ bạn khỏi bị yêu cầu thực

hiện các thay đổi tiếp theo mà không phải trả thêm tiền.

¾ Thông qua việc sử dụng phương pháp tiếp cận chính thức và được lập thành văn bản để

quản lý khách hàng, bạn tạo ra một hồ sơ giấy giúp tránh mọi nhầm lẫn cũng như giúp

khách hàng nhận thức rõ hơn về tham vọng của họ đối với dự án.

đàm phán
Một loại hình nghệ thuật của riêng nó và xứng đáng có chương dành riêng cho nó (xem ,

), khả năng đàm phán tốt là một phần quan trọng trong sự kết hợp tạo nên một freelancer

thành công. Nếu không có khả năng đàm phán tốt, các dự án của bạn sẽ có nguy cơ thất bại cao hơn và bạn
có nhiều khả năng kiếm được ít tiền hơn so với giá trị xứng đáng để đảm nhận công việc mà bạn giành được.

162
Machine Translated by Google

Các chiến lược đàm phán tốt không phải là có thể giành được khách hàng, mà là tìm ra giải pháp có lợi

cho cả hai bên. Mỗi dự án sẽ có mức độ ưu tiên khác nhau về thời gian, ngân sách và phạm vi phân phối—

bằng cách biết thứ tự quan trọng, bạn có thể điều chỉnh chiến lược đàm phán của mình để trở nên hấp dẫn

hơn đối với khách hàng mà không ảnh hưởng đến lợi nhuận của bạn.

Các vấn đề về dòng tiền

Cho dù cố ý hay không, khách hàng rất dễ lãng phí thời gian của bạn—đặc biệt là khi bạn đang tính một

khoản phí cố định và bạn sẽ không được thanh toán cho đến khi hoàn thành dự án. Nếu không được quản lý

đúng cách, loại vấn đề này có thể gây ra cho bạn nhiều vấn đề về dòng tiền, vì hành vi của khách hàng

như vậy không chỉ làm giảm khả năng sinh lời của bạn đối với công việc của họ mà còn có thể:

h Giảm khả năng kiếm tiền từ các dự án khác của bạn—đặc biệt nếu

khách hàng đang đòi hỏi tất cả thời gian của bạn.

h Giảm năng suất của bạn, chẳng hạn như thông qua các yêu cầu hỗ trợ quá mức, do đó làm giảm

khả năng hoàn thành công việc khác kịp thời và có lợi của bạn.

h Kéo dài ngày mà bạn có thể lập hóa đơn cho công việc của họ mặc dù có thêm

các yêu cầu phát sinh.

h Kéo dài ngày mà bạn có thể lập hóa đơn cho các khách hàng khác thông qua việc giảm

năng suất.

Một ví dụ điển hình của loại kịch bản này là một khách hàng thiết kế liên tục thay đổi các yêu cầu về

thương hiệu của họ đối với một dự án. Ngay cả khi họ đề nghị trả thêm tiền cho mỗi lần thay đổi, thì họ

vẫn gây ra vấn đề về dòng tiền cho nhà cung cấp dịch vụ đã đồng ý chấp nhận thanh toán sau khi hoàn thành dự

án bằng cách gây ra nhiều công việc kéo dài ngày lập hóa đơn—điều đó là tiêu chuẩn để khách hàng có 30 ngày

sau thời hạn này để thanh toán số tiền nợ.

Những vấn đề về dòng tiền ác mộng như vậy thường không phải do khách hàng cố ý gây ra mà chủ yếu là do các

vấn đề về giao tiếp, quy trình thiết lập và/hoặc sự thiếu nhạy bén trong kinh doanh của freelancer hoặc khách
hàng.

Tránh các vấn đề về dòng tiền


Giải pháp để tránh các vấn đề về dòng tiền sẽ luôn nằm ở giai đoạn bắt đầu dự án khi các cuộc đàm phán

và định nghĩa các điều khoản diễn ra. Sau giai đoạn này, nhà cung cấp dịch vụ sẽ gặp khó khăn hơn nhiều khi

thương lượng ngoài những gì được viết trong bất kỳ thỏa thuận đã ký nào, cho dù đó là tăng ngân sách khả

dụng, chi tiết cụ thể về những gì sẽ được giao hoặc (các) ngày giao hàng. thanh toán cho các dịch vụ được

cung cấp. Một thỏa thuận tốt tránh được các vấn đề về dòng tiền sẽ:

h Xác định chi tiết nội dung sẽ được chuyển giao và không để xảy ra trường hợp diễn giải sai có thể

dẫn đến các phần bổ sung được định nghĩa là một phần của văn bản diễn đạt lỏng lẻo.

163
Machine Translated by Google

h Đảm bảo rằng các giai đoạn của dự án được thanh toán trước để tránh khả năng khách hàng không
thanh toán cho các dịch vụ được cung cấp do phá sản hoặc thanh lý; những khách hàng không sẵn

sàng đặt cọc và cam kết với lịch thanh toán có thể là dấu hiệu cho thấy họ gặp vấn đề về thanh
toán nói chung—tạo cơ hội cho bạn từ chối dự án trước khi nó trở thành vấn đề.

h Xác định thủ tục thay đổi thỏa thuận làm việc, đảm bảo rằng thay đổi
các yêu cầu chỉ đến thông qua các đại diện được chỉ định của khách hàng, những người có thẩm

quyền cho phép tăng ngân sách hiện có. Quy trình nên nhấn mạnh rằng tất cả các yêu cầu như vậy
phải được ghi lại bằng văn bản để tránh trường hợp các chi phí cho công việc khác với thỏa

thuận ban đầu bị tranh chấp trên cơ sở không có sự cho phép có thẩm quyền.

Tóm lược
Hành vi của khách hàng có tác động lớn đến khả năng làm việc trong dự án của bạn, vì vậy việc có sẵn

các chính sách và thủ tục chính thức sẽ giúp tránh các tình huống rắc rối xảy ra có thể làm hỏng dự
án. Thời gian dành cho việc nghiên cứu khách hàng và các yêu cầu dự án của họ trước khi bạn cam kết với

bất kỳ điều gì sẽ được đền đáp về lâu dài bằng cách cho phép bạn đưa ra các quyết định tốt hơn, đặc biệt
là trong các tình huống khi bạn phát hiện ra rằng khách hàng có lịch sử tín dụng kém, do đó giúp bạn biết

về tăng nguy cơ họ không trả tiền cho công việc của bạn.

Cho dù kỹ năng quản lý dự án và kỹ thuật của bạn tốt đến đâu, sự thành công của dự án sẽ luôn phụ thuộc
vào cam kết của khách hàng đối với dự án. Điều này bao gồm việc khách hàng sẵn sàng cung cấp cho bạn

thông tin và nguồn lực bạn cần để hoàn thành công việc theo tiêu chuẩn mà họ tìm kiếm. Có sẵn các chính
sách giúp khách hàng hiểu rõ những gì được mong đợi, đảm bảo rằng bạn không cố điền vào những phần còn
thiếu—điều này không chỉ làm tăng chi phí của bạn mà còn có khả năng dẫn đến một số sai lầm không xác

định được thực hiện rằng khách hàng có thể giữ tài khoản của bạn trong nỗ lực không thanh toán hóa đơn
của họ hoặc thậm chí kiện bạn.

Điểm mấu chốt của tất cả các dự án mà bạn dành thời gian thực hiện phải luôn là về việc được trả
tiền cho công việc của mình, vì vậy hãy đảm bảo có các chính sách và quy trình phù hợp để không khiến

bạn dễ gặp phải các vấn đề về dòng tiền khi khách hàng trì hoãn thanh toán cho bạn trong vài tháng và
ai có thể sử dụng số tiền nợ như một cách để buộc bạn phải làm thêm công việc không được trả lương.

Với sự hiểu biết về cách quản lý khách hàng của bạn, bước tiếp theo là có thể đàm phán—cho dù đó

là chi tiết về đặc điểm kỹ thuật của dự án và mức giá mà bạn được trả hay cho các tình huống có thể
xảy ra trong một dự án cần một kết quả phù hợp. sự quan tâm của mọi người. Chương tiếp theo xem xét

kỹ năng đàm phán có thể được sử dụng như thế nào để hỗ trợ đưa các dự án đi đến một kết luận thành
công có lợi cho tất cả các bên.

164
Machine Translated by Google

số 8

đàm phán
Một khả năng quan trọng cần có trong bộ công cụ kỹ năng kinh doanh của bạn là khả năng đàm phán.
Đây không phải là một kỹ năng chỉ áp dụng cho môi trường kinh doanh, mà hầu hết mọi lĩnh vực của
cuộc sống. Trở thành một nhà đàm phán giỏi cho phép bạn biến những tình huống bất lợi thành lợi thế của

mình, cho dù đó là công việc nhà mà bạn phải làm hay bạn được khách hàng trả bao nhiêu cho công việc
của mình.

Công Thức Chiến Thắng


Có ba lĩnh vực chính mà một freelancer cần đàm phán một thỏa thuận tốt để đảm bảo cơ hội tốt nhất để
làm hài lòng khách hàng và thu được lợi nhuận:

Khung thời gian

Thông thường, và đặc biệt là những người không hiểu kỹ thuật của dịch vụ mà bạn cung cấp, khách
hàng có những kỳ vọng không thực tế về thời gian cần thiết để cung cấp giải pháp mà họ đang thuê

bạn cung cấp. Tập trung cụ thể vào yếu tố khung thời gian sẽ cho phép bạn thuyết phục khách hàng đưa ra
lịch trình giao hàng thực tế hơn để đạt được. Điều này là do nó không gây áp lực cho bạn theo cách có

nguy cơ giao hàng muộn.


Nó cũng tránh cho dự án can thiệp vào thời gian bạn đã cam kết cho công việc khác mà bạn có thể tham gia.

Ngân sách
Yếu tố liên quan chặt chẽ đến khung thời gian và độ sâu của dự án, ngân sách dự án cần phản ánh cả
những gì được giao và khi nào. Một kết quả tồi tệ trong việc đàm phán ngân sách dự án sẽ không chỉ
hạn chế lợi nhuận của bạn cho dự án mà còn ảnh hưởng đến khả năng của bạn để cung cấp chất lượng và

trong thời hạn; bạn có thể tự mình làm nhiều việc, nhưng nếu bạn phải bắt đầu thuê người khác để giúp
đáp ứng thời hạn hoặc thực hiện các phần của dự án nằm ngoài chuyên môn của bạn, bạn sẽ gặp rắc rối nếu
không có đủ tiền mặt để trả cho họ .

165
Machine Translated by Google

Bên cạnh việc ngân sách ảnh hưởng đến khả năng thực hiện của bạn như thế nào, ngân sách được
đàm phán kém cũng có thể dẫn đến việc bạn mất tiền cho dự án hoặc trực tiếp thông qua việc chi
tiêu nhiều tài nguyên hơn số tiền bạn được trả hoặc gián tiếp thông qua việc mất thời gian mà
lẽ ra bạn có thể đầu tư vào. công việc có lợi hơn.

Chiều sâu
Yếu tố chiều sâu là tất cả về mức độ chi tiết của các yêu cầu của dự án. Khách hàng thường
sẽ yêu cầu nhiều hơn những gì họ cần, làm phức tạp hóa dự án và tăng lượng thời gian cần thiết
trong quy trình một cách ồ ạt. Vấn đề chuyên sâu cũng thường trở nên tồi tệ hơn khi khách hàng
không hiểu các yêu cầu kỹ thuật của họ, dẫn đến các giả định được đưa ra về các yêu cầu về thời
gian và ngân sách. rằng nhiều khía cạnh trong yêu cầu của họ rất đơn giản và chỉ mất vài phút hoặc
vài giờ để sản xuất, trong khi thực tế, những gì nghe có vẻ đơn giản lại là một nhiệm vụ phức tạp
phải mất vài ngày hoặc thậm chí vài tuần để hoàn thành.

Trong những tình huống mà khách hàng cho rằng nỗ lực của một tuần có thể được thực hiện chỉ
trong vài giờ, việc đàm phán về ngân sách và khung thời gian trở nên rất khó khăn nếu khách
hàng kiên quyết cho rằng yêu cầu của họ rất đơn giản và từ chối lắng nghe lời khuyên của bạn.
Loại tình huống này có thể tránh được bằng cách giảm độ sâu của dự án, cho phép bạn giảm thiểu
mọi sự phức tạp liên quan có thể làm hỏng khả năng đáp ứng mong đợi của khách hàng và duy trì
lợi nhuận. Đây là trạng thái đơn giản hóa của thông số kỹ thuật được gọi là MVP – sản phẩm khả thi
tối thiểu.

Một ví dụ về giảm độ sâu sẽ là khi khách hàng có những kỳ vọng cao mà bạn biết là không thể đạt
được về mặt thời gian, ngân sách hoặc những gì có thể được cung cấp về mặt kỹ thuật.
Bắt đầu dự án với sự tập trung trực tiếp vào việc đàm phán giảm độ phức tạp của đặc tả để trở
thành yêu cầu tối thiểu đối với dự án nhằm mang lại lợi ích cho tham vọng của khách hàng sẽ
giúp xác định nơi cần tập trung nỗ lực phát triển và xác định các tính năng không cần thiết có
thể gây ra vấn đề trong việc hoàn thành dự án dự định. Có thể thương lượng thành công kỳ vọng
của khách hàng với các yêu cầu tối thiểu có nghĩa là dự án ít rủi ro hơn và có nhiều tùy chọn
hơn để nâng cấp sau này khi có thời gian, ngân sách và công nghệ.

Các giai đoạn đàm phán chiến lược


Đàm phán một thỏa thuận cho một dự án rất hiếm khi bắt đầu và kết thúc chỉ trong một phiên.
Thay vào đó, đàm phán là điều vẫn tiếp diễn trong suốt dự án – đặc biệt là khi khách hàng yêu cầu
nhiều hơn mà không đề xuất thanh toán bổ sung hoặc thay đổi ngày giao hàng. Quá trình đàm phán
thỏa thuận cho các dự án tự do và hợp đồng có thể được chia thành 5 giai đoạn:

166
Machine Translated by Google

Giai đoạn 1: Đánh giá các ưu tiên & đặc điểm


Trước khi bạn có thể bắt đầu đàm phán nghiêm túc về việc thực hiện dự án, bạn cần biết khách hàng đặt

ưu tiên cao hơn cho điều gì và liệu họ có thực tế trong tất cả các phần của công thức chiến thắng hay không.

Khách hàng và các yêu cầu của họ có đủ hình dạng và kích cỡ, thường là do tình huống của khách hàng quyết

định những yếu tố nào họ đặt ưu tiên cao hơn. Mặc dù bạn có thể đã từng làm việc cho khách hàng, nhưng bạn

không bao giờ được cho rằng các ưu tiên của họ sẽ giống nhau đối với dự án hiện tại. Ví dụ, giá có thể là

ưu tiên hàng đầu của các dự án trước đó, nhưng một tình huống mới cho thấy nhu cầu của dự án mới có thể

khiến giá không còn phù hợp và thời gian giao hàng trở thành ưu tiên hàng đầu. Việc xác định điều này mang

lại cho bạn lợi thế chiến lược, cho phép bạn đề xuất phí chuyển phát nhanh cho phép bạn huy động thêm nguồn

lực để hoàn thành dự án nhanh hơn hoặc đơn giản là để đền bù tốt hơn cho bạn khi làm việc ngoài giờ.

Một số khách hàng hào phóng hơn nhiều so với những khách hàng khác, có nghĩa là điều quan trọng là

phải xác định mức độ khó khăn của tất cả người mua để đưa ra mức giá hợp lý cho thời gian của bạn.

Đàm phán nghiêm túc và soạn thảo các đề xuất mất rất nhiều thời gian mà bạn không muốn đầu tư vào

những người không thực tế về thời gian hoặc ngân sách cần thiết để xây dựng các yêu cầu của họ. Nếu không

được quản lý đúng cách, cuối cùng bạn có thể dành nhiều thời gian hơn cho việc đàm phán so với số tiền

mà khách hàng sẵn sàng trả cho toàn bộ dự án, khiến việc cắt lỗ và không nhận dự án trở nên hấp dẫn hơn.

Một số phương pháp bạn có thể sử dụng để lọc những người mua nghiêm túc đáp ứng các yêu cầu của "bạn" để

đạt được tỷ suất lợi nhuận mà bạn muốn bao gồm:

h Hỏi họ trực tiếp về ngân sách của họ. h Điều này có

thể thông qua e-mail, điện thoại hoặc là một phần của bảng câu hỏi. h Hỏi họ về

những gì họ đã chi cho các khía cạnh khác trong công việc kinh doanh của họ. h Thông qua

việc hỏi họ về những gì họ đã đầu tư vào các lĩnh vực kinh doanh khác, bạn có thể có được bức tranh rõ

ràng hơn về khung giá mà họ muốn chi tiêu dựa trên giá tiêu chuẩn của ngành.

h Xem xét quy mô kinh doanh của khách hàng và giá của các dịch vụ hoặc sản phẩm

mà họ cung cấp.

h Một doanh nghiệp nhỏ bán dịch vụ và sản phẩm với giá hời

nhiều khả năng chỉ có thể đưa ra mức giá thấp như vậy bằng cách cắt giảm chi phí của họ
chi phí riêng.

h Đặt câu hỏi chi tiết về yêu cầu của khách hàng. h Khách hàng thường làm

cho các yêu cầu của họ nghe có vẻ phức tạp hơn mức cần thiết, do đó, việc xác định các giải pháp

thay thế cho bất kỳ điều gì phức tạp có thể được sử dụng để đáp ứng nhu cầu của họ đồng thời

tiết kiệm thời gian và chi phí. h Đặt câu hỏi chi tiết về lý do tại sao và khi nào khách hàng

cần giải pháp cuối cùng.

167
Machine Translated by Google

h Quan điểm điển hình của nhiều khách hàng là họ cần mọi thứ của ngày hôm qua. Mặc dù điều này có
thể xảy ra với một số ít dự án của bạn, nhưng phần lớn sẽ không khẩn cấp bằng. Đặt câu hỏi
cho một khách hàng tiềm năng về động cơ của họ đối với dự án và lý do họ cấp bách sẽ cho phép
bạn có được bức tranh rõ ràng về tình huống để bạn có thể điều chỉnh cuộc đàm phán của mình
cho phù hợp.

Những khách hàng tiềm năng chỉ ra những kỳ vọng không thực tế về ngân sách hoặc khung thời gian
giao hàng không phải lúc nào cũng là trường hợp bị từ chối ngay lập tức. Trong một số trường hợp,
bạn sẽ có thể đề xuất một giải pháp hoàn toàn khác với những gì họ đang yêu cầu, điều này cho phép
bạn giành được công việc, làm hài lòng khách hàng và thu được lợi nhuận từ dự án. Nếu đây là một lựa
chọn, điều quan trọng là phải xác định giải pháp thay thế là gì càng sớm càng tốt để tránh lãng phí
công sức vào những gì không thể được thống nhất cho đề xuất ban đầu.

Giai đoạn 2: Giảm độ sâu


Dự án lý tưởng cho bất kỳ ai tự kinh doanh là dự án dễ thực hiện và mang lại lợi nhuận cao. Các dự
án đòi hỏi chuyên môn và kỹ năng sâu rộng để thực hiện có nhiều khả năng làm tăng các yêu cầu về
rủi ro, thời gian và chi phí.

Mặc dù với tư cách là nhà cung cấp dịch vụ, việc tránh giảm độ sâu có vẻ có lợi hơn cho bạn, nhưng
thực tế đó là lợi ích cho cả hai bên:

h Giảm rủi ro có nghĩa là có ít khả năng xảy ra sai sót trong dự án hơn – cho dù đó là dự án mất
nhiều thời gian hơn để hoàn thành so với dự kiến ban đầu hay sai sót trong quá trình bàn
giao cuối cùng. Cả hai ví dụ này đều có khả năng ảnh hưởng đến dòng tiền và khả năng sinh
lời của bạn, do đó, việc loại bỏ các yếu tố gây rủi ro sẽ tránh được các tình huống ảnh
hưởng đến khả năng làm hài lòng khách hàng, tối đa hóa khả năng sinh lời và đảm bảo rằng dự
án không ảnh hưởng đến dòng tiền của bạn. h Giảm thiểu chi phí thực hiện dự án có nghĩa là

bạn có thể
tối đa hóa lợi nhuận của bạn hoặc chuyển khoản tiết kiệm trực tiếp cho khách hàng theo
những cách cho phép bạn trở nên cạnh tranh hơn về giá. Điều này có lợi khi bạn đã xác
định được giá có ảnh hưởng lớn đến dự án của khách hàng và việc ra quyết định của họ.

h Giảm thiểu thời gian hoàn thành có nghĩa là bạn có các tùy chọn để thêm
trong lợi nhuận cho bất cứ điều gì bất ngờ và lập kế hoạch cho dự án xung quanh các
cam kết khác của bạn. Khách hàng cũng sẽ được hưởng lợi từ việc dự án có nhiều khả năng
được giao vào ngày mà họ đã tuyên bố họ cần cũng như thấy được lợi ích của dự án sớm
hơn – điều này có thể có nghĩa là tiết kiệm được nhiều tiền hơn hoặc tạo ra nhiều tiền
hơn.

h Giảm độ sâu đặc biệt hữu ích đối với những người làm việc tự do đang làm việc trên
dự án giá cả và/hoặc nơi thanh toán chỉ được nhận khi hoàn thành các mốc quan trọng của dự
án. Mặc dù việc giảm độ sâu có thể làm giảm tổng số tiền thanh toán nhận được cho dự án,
nhưng bạn nên được trả nhiều tiền hơn cho mỗi giờ bạn đã làm việc hơn là làm việc nhiều giờ
hơn với mức lương theo giờ thấp hơn. Các tùy chọn vẫn còn để bán các tính năng bổ sung cho
khách hàng, cũng như cung cấp cho bạn khả năng sẵn sàng tiếp nhận các dự án từ các khách
hàng khác.

168
Machine Translated by Google

Giai đoạn 3: Xác định thang thời gian

Khoảng thời gian để phân phối một dự án sẽ có tác động đến khả năng quản lý khối lượng công việc

của bạn, cũng như chất lượng của kết quả cuối cùng. Các dịch giả tự do và nhà thầu thường gặp phải vấn

đề khách hàng yêu cầu giao quá nhiều trong thời gian quá ngắn – nghĩa là cách duy nhất họ có thể đạt

được điều này là tốn thời gian dành cho các khách hàng khác và/hoặc làm việc ngoài giờ . Không nhất

thiết phải theo cách này, vì với một chút thương lượng dựa trên thông tin thu được từ giai đoạn trước

để 'đánh giá các ưu tiên và đặc điểm' của khách hàng, lịch trình giao hàng thường có thể được trình bày

vừa đáp ứng yêu cầu của khách hàng vừa cung cấp. bạn có đủ tiền ký quỹ để quản lý bất kỳ điều gì bất ngờ.

Sau khi xem xét các ưu tiên của khách hàng và tìm hiểu thêm về tình hình của họ, kết luận của bạn thường

là khách hàng cần một số loại phiên bản nguyên mẫu trong thời gian ngắn sẽ được tinh chỉnh theo thời

gian để trở thành hệ thống hoạt động thực sự.

Ví dụ về điều này bao gồm:

h Một phiên bản phần mềm khả thi tối thiểu có các tính năng khẩn cấp nhất có sẵn trong phiên bản đầu

tiên và các bản phát hành sau này kết hợp các tính năng không khẩn cấp..

h Một bài viết nháp cho một tạp chí thể hiện cấu trúc của những gì sẽ được viết, nhưng không được

chỉnh sửa đầy đủ, không có trích dẫn hoặc kiểm tra thực tế đầy đủ – những điều này sẽ được
thêm vào phiên bản cuối cùng.

h Một cuốn sách hoặc thiết kế trang web thể hiện chủ đề chung sẽ được sử dụng và luồng nội

dung, nhưng không có bất kỳ hình minh họa hoặc nội dung văn bản riêng nào sẽ được sử dụng
trong bản phát hành cuối cùng.

h Một trang web có sẵn một số phần cho ngày ra mắt và các phần mới

thêm vào sau.

Không có gì lạ khi thấy mức độ khẩn cấp được đề xuất bởi các khách hàng tiềm năng là hơi phóng đại.

Đừng bao giờ cố gắng hứa đáp ứng thời hạn của khách hàng để giành được công việc khi bạn biết rằng kỳ

vọng của họ không thực tế hoặc khi bạn chỉ có một khoảng thời gian linh hoạt nhỏ để đáp ứng thời hạn –

điều gì đó bất ngờ gần như chắc chắn sẽ xảy ra, chẳng hạn vì khách hàng không cung cấp đầy đủ tài nguyên

mà bạn yêu cầu kịp thời hoặc chúng khó quản lý. Thay vì tập trung quảng cáo chiêu hàng của bạn để giành

được công việc bằng cách hứa sẽ giao hàng vào ngày họ mong đợi, bạn nên thương lượng về cách thức và

thời điểm đưa ra giải pháp – mở ra cơ hội để bạn thỏa mãn những nhu cầu cấp thiết hơn của khách hàng

tiềm năng trong khi vẫn thực tế về những gì có thể đạt được.

169
Machine Translated by Google

Giai đoạn 4: Điều khoản giao hàng và cam kết


Trong hầu hết các trường hợp, bạn sẽ có một bộ điều khoản và điều kiện tiêu chuẩn mà bạn sẽ cung cấp
dịch vụ của mình, bao gồm các vấn đề tiêu chuẩn liên quan đến điều khoản thanh toán và cung cấp dịch
vụ của bạn. Trong một số trường hợp, khách hàng tiềm năng sẽ có những yêu cầu riêng chẳng hạn như thỏa
thuận không tiết lộ để bạn đồng ý trước khi dự án có thể tiến hành.
Điều quan trọng là phải xác định được sự khác biệt chính giữa việc xác định bộ điều khoản của riêng
bạn để bắt đầu một dự án và việc ký bất kỳ thứ gì do bất kỳ ai khác ngoài chính bạn cung cấp; sự khác
biệt là bất kỳ điều khoản nào được cung cấp bởi bất kỳ ai khác đều có khả năng được viết có lợi để hỗ
trợ các mối quan tâm và chương trình nghị sự của họ.

Tóm lại, bạn nên:

h Có một bộ điều khoản và điều kiện tiêu chuẩn cho các phương pháp thu hút và thực hiện
dự án thông thường của bạn.

h Nghi ngờ bất kỳ tài liệu nào cần chữ ký của bạn từ khách hàng tiềm năng – đặt nhiều câu
hỏi để có cái nhìn tổng quan về nội dung của tài liệu và đọc tài liệu một cách chi tiết;
điều này đặc biệt đúng đối với NDA (thỏa thuận không tiết lộ), điều này có thể hạn chế
bạn đề cập đến dự án trong CV hoặc danh mục đầu tư của bạn – thậm chí tệ hơn là bất kỳ điều
gì hạn chế bạn làm việc trong bất kỳ loại dự án tương tự nào, do đó làm giảm cơ hội làm việc
của bạn..

h Không bao giờ ký trước bất kỳ thỏa thuận nào – luôn đảm bảo rằng bạn có thể thực hiện
thỏa thuận đi để đọc kỹ lưỡng trong thời gian của riêng bạn. Điều này sẽ mang lại cho bạn
lợi thế là có thể đọc qua tất cả các khía cạnh của các điều khoản của họ theo tốc độ của
riêng bạn mà không cảm thấy bị áp lực bởi khách hàng tiềm năng đang xem và chờ bạn đọc các
điều khoản, điều này tự nó có thể ảnh hưởng đến khả năng đọc đúng của bạn. giải thích các
chương trình nghị sự thỏa thuận.

h Đọc bất kỳ thỏa thuận nào một cách khách quan – không để từ ngữ mơ hồ
có nhiều ý nghĩa và làm nổi bật bất kỳ phần nào gây lo ngại.
Bất cứ điều gì được xác định bằng từ ngữ không được sửa chữa trước khi bạn ký vào đường
chấm chấm có thể khiến bạn gặp rắc rối lớn nếu đưa ra tòa, vì từ ngữ mơ hồ có thể tạo cơ
hội cho khách hàng tranh cãi về những gì đã được thỏa thuận và các điều khoản được diễn
đạt khéo léo có thể dẫn đến hậu quả là bạn đồng ý với những điều bạn không nhận thức
được. Trong trường hợp xấu nhất, những từ ngữ này có thể dẫn đến việc bạn không được trả
tiền, cam kết chi tiêu cho dự án nhiều hơn số tiền mà khách hàng trả cho bạn và cung cấp
quyền sở hữu tài sản trí tuệ không có trong thỏa thuận dự kiến.

h Đưa thỏa thuận cho luật sư hoặc người có kiến thức liên quan nếu bạn có bất kỳ nghi ngờ nào
về ý nghĩa của bất kỳ phần nào trong thỏa thuận của khách hàng tiềm năng hoặc không thể
đọc và hiểu đầy đủ tài liệu.

h Đàm phán thay đổi cách diễn đạt của bất kỳ điều gì bạn đã đánh dấu là nguyên nhân
cân cân nhăc.

170
Machine Translated by Google

h Phần lớn khách hàng sẽ không có chương trình nghị sự quanh co và sẽ chỉ tìm cách bảo vệ lợi ích kinh

doanh của họ ở mức độ đạo đức, với nhiều thỏa thuận cung cấp để bạn đồng ý dựa trên các mẫu tiêu

chuẩn – do đó, từ ngữ khiến bạn lo ngại thường xuất hiện từ khách hàng bằng cách sử dụng mẫu mà họ

chưa điều chỉnh hoàn toàn. Tuy nhiên, như một nguyên tắc trong kinh doanh, không nên tin tưởng khách

hàng tiềm năng nào đến mức bạn ký bất kỳ thỏa thuận nào mà không xem xét kỹ lưỡng tất cả các điều

khoản và từ ngữ. Đây không phải là nghi ngờ khách hàng tiềm năng, mà là ý thức được rằng:

h Các khách hàng tiềm năng có thể có quan điểm khác về mối quan hệ công việc so với bạn, do đó

mở ra nhiều cơ hội cho những bất đồng trong tương lai có thể làm hỏng mối quan hệ. h Kỳ

vọng của cả hai bên đối với những gì sẽ được giao và các điều khoản sử dụng và quyền sở

hữu tài sản trí tuệ có liên quan có thể khác nhau, do đó có thể dẫn đến các tranh chấp trong tương

lai nếu không được kiểm tra.

h Các khách hàng tiềm năng có thể có những kế hoạch phi đạo đức sẽ gây hại cho doanh nghiệp của bạn.

Ngoài điểm cuối cùng được nêu ra, rõ ràng ở trên là việc xem xét kỹ lưỡng các điều khoản do khách hàng cung

cấp còn hơn cả việc duy trì mối quan hệ làm việc tốt. Cũng đúng là khách hàng tiềm năng có thể có một chương

trình làm việc ẩn sẽ gây hại cho lợi ích kinh doanh của bạn theo những cách vừa liên quan đến dự án vừa liên

quan đến mặt khác. Mặc dù điều này có nhiều khả năng xảy ra với những người bạn chưa từng giao dịch trước

đây, nhưng nó hoàn toàn có thể xảy ra với khách hàng mà bạn đã xây dựng mối quan hệ tốt hơn với những người

trước đây đã chứng tỏ là đáng tin cậy và đáng tin cậy. Thông thường, trong những trường hợp này, sự quanh co

đột ngột sẽ là kết quả của sự thay đổi nhân sự, cho dù đó là quản lý mới hay giới thiệu những người mới có

ảnh hưởng đến những người ra quyết định có liên quan. Đàm phán tốt không phải là giành được một khách hàng,

mà hơn thế nữa là đi đến một thỏa hiệp có lợi cho cả hai bên. Khi nhận ra điều này, khách hàng có thể phản đối

việc một số điều khoản của họ bị thay đổi hoặc bỏ qua trong thỏa thuận. Chìa khóa để giải quyết loại tình huống

này là đưa ra các phương án thay thế nhằm bảo vệ lợi ích của họ đồng thời tránh mọi xung đột vì lợi ích của bản

thân bạn và phạm vi tương lai của mối quan hệ công việc. Một ví dụ về điều này có thể là khi khách hàng yêu cầu

một tính năng phức tạp và tốn thời gian để phát triển và thử nghiệm. Với một số cuộc điều tra về động cơ đằng

sau yêu cầu của họ, bạn có thể thấy rằng những gì khách hàng muốn đạt được có thể được cung cấp mà không cần

tạo thêm mã bằng cách đề xuất một thay đổi đơn giản đối với một tính năng hiện có. Một lần nữa, thông tin thu

được từ bước một của giai đoạn đàm phán 'đánh giá các ưu tiên và đặc điểm' ngoài việc đặt câu hỏi thêm về mối

quan tâm và chương trình làm việc của họ sẽ cho phép bạn trở nên sáng tạo trong việc đưa ra các lựa chọn thay

thế hấp dẫn khách hàng. Các lĩnh vực quan tâm phổ biến mà một khách hàng tiềm năng có thể muốn được đảm bảo là:

h Cung cấp thông tin bí mật cho đối thủ cạnh tranh của họ. h Cung cấp các

giải pháp tương tự cho các đối thủ cạnh tranh của họ. h Đảm bảo hỗ trợ trong

tương lai và chịu trách nhiệm về bất kỳ sai sót nào. h Dù bạn quyết định cung cấp các tùy chọn nào

thay thế, sau đây là những vấn đề chính mà bạn sẽ cần xem xét để bảo vệ lợi ích kinh doanh của chính mình:

171
Machine Translated by Google

h Việc cung cấp bất kỳ loại độc quyền nào sẽ hạn chế khả năng kinh doanh trong tương lai của bạn.

Điều này có thể dưới hình thức ngăn cản bạn làm việc với các công ty hoạt động trong cùng

thị trường với khách hàng hoặc sử dụng các tài nguyên mà bạn đã phát triển bên ngoài dự án

của khách hàng.

h Việc đảm bảo cung cấp hỗ trợ trong tương lai có thể buộc bạn phải làm việc cho một khách hàng

khó tính mà bạn phát hiện ra rằng mình không muốn làm việc cùng do họ khó tính và/hoặc không

sinh lãi. Hãy tránh điều này bằng cách đảm bảo rằng có một điều khoản rút lui công bằng cho

cả bạn và khách hàng.

h Mức độ trách nhiệm phải luôn được xác định theo các điều khoản của bạn – đặc biệt nếu bạn

đang cung cấp các dịch vụ và giải pháp có tính chất kỹ thuật. Chịu trách nhiệm về các hậu

quả do lỗi phát sinh từ lỗi trong mã của bạn là một vấn đề, trong khi chịu trách nhiệm về các

hậu quả do khách hàng sử dụng sai giải pháp lại là một vấn đề khác. Luôn đảm bảo rằng bất kỳ

thỏa thuận nào quy định bạn chịu trách nhiệm về bất kỳ điều gì đều xác định 'chính xác' những

gì bạn chịu trách nhiệm và không có khả năng diễn giải sai.

h Các điều khoản cung cấp hỗ trợ và chấp nhận trách nhiệm giải trình để lại nhiều cơ hội bị các

khách hàng kém đạo đức lạm dụng để đạt được sức lao động tự do. h Luôn xác định chính xác số

tiền hỗ trợ được cung cấp và ở mức độ nào. h Luôn đảm bảo rằng trách nhiệm giải trình của bạn đối

với các lỗi của hệ thống là công bằng. Không bao giờ cho phép điều này bị lợi dụng bằng cách cho phép

khách hàng yêu cầu cung cấp thêm công việc ngoài việc khắc phục vấn đề ban đầu. Đối với các dịch

giả tự do và nhà thầu có chính sách hoàn tiền hoặc điều khoản hợp đồng liên quan đến năng lực và

tay nghề, hãy đảm bảo rằng các điều khoản được viết sao cho việc hoàn tiền hoặc lặp lại công

việc chỉ được đưa ra khi xem xét công bằng các lựa chọn để khắc phục mọi lỗi – nếu chúng thực sự

tồn tại và đi xa hơn là bao gồm một bên thứ ba độc lập để đưa ra đánh giá nếu được yêu cầu để

bảo vệ bạn trước những khách hàng kém đạo đức hơn, những người cố gắng hoàn lại tiền hoặc miễn

phí lao động bằng cách can thiệp vào hệ thống hoặc báo cáo các lỗi không tồn tại hoặc không tồn

tại' t là một phần của thỏa thuận.

Sau nhiều lần thương lượng, có thể thấy rõ rằng khách hàng sẽ không nhượng bộ một số hoặc tất cả các điều

khoản mà bạn đã xác định. Trong trường hợp này, bạn cần cân nhắc xem việc tiếp tục dự án có phù hợp với

lợi ích của bạn hay không và nếu bạn làm như vậy thì mức giá là bao nhiêu.

Nếu bạn quyết định tiếp tục, điều quan trọng là bạn phải chấp nhận những điều kiện bất lợi để xứng

đáng với thời gian của bạn bằng cách đền bù cho bạn về bất kỳ công việc kinh doanh bị mất và cơ hội

làm việc trong tương lai, cũng như bất kỳ sự gia tăng rủi ro nào. cân nhắc của bạn nên bao gồm:

Hậu quả tài chính và chiến lược của việc cung cấp độc quyền về thời gian hoặc tài nguyên mà bạn đã phát

triển.

Làm cho một lưu ý

Ví dụ về thời gian: Một dự án cho một công ty luật có một điều khoản trong hợp đồng quy định rằng

bạn không được làm việc cho bất kỳ công ty luật nào khác trong 2 năm sau khi hoàn thành hoặc kết

thúc dự án.

h Điều này sẽ hạn chế khả năng nhận hợp đồng mới của bạn như thế nào? h

Bạn có chuyên xây dựng danh tiếng độc quyền trong lĩnh vực này không?

172
Machine Translated by Google

h Bạn có thể điều chỉnh các kỹ năng và kinh nghiệm của mình để phù hợp với các lĩnh vực khác không? h

Các ngành khác lương có cao như ngành này không?

Làm cho một lưu ý

Ví dụ về tài nguyên: Một điều khoản trong hợp đồng quy định rằng tất cả mã được gửi cho khách hàng

sẽ trở thành tài sản độc quyền của họ. Điều này có ý nghĩa nếu bạn muốn sử dụng mã đã được tạo để

tăng tốc độ phát triển của các dự án trước đây và trong tương lai. Ngoài ra, bạn không có quyền

chấp nhận các điều khoản như vậy đối với các thành phần nguồn mở mà bạn sử dụng.

h Chi phí cho các dự án trong tương lai nếu không thể sử dụng mã bắt đầu nhanh là gì? h Nó có làm tăng

chi phí của họ đến mức bạn mất khả năng cạnh tranh không?
trên thị trường?

h Khách hàng có thể tận dụng điều khoản này bằng cách yêu cầu quyền sở hữu mã khác mà bạn đã viết theo

phong cách tương tự không?

h Khách hàng có thể gây gián đoạn cho các khách hàng trước của bạn bằng cách cấp cho họ

ngừng sử dụng mã mà bạn bán cho họ?

h Có rủi ro không nếu các khách hàng khác kiện bạn về bất kỳ sự gián đoạn nào mà khách hàng đó có thể

gây ra cho hoạt động kinh doanh của họ thông qua việc giành độc quyền sở hữu mã mà bạn định bán?

h Những ví dụ này minh họa điều tồi tệ nhất có thể xảy ra khi các điều khoản hợp đồng không được thương

lượng đúng cách. Nếu đồng ý với các điều khoản này, bạn có nghĩa vụ bảo vệ các khách hàng trước đây

đang sử dụng tài nguyên mà bạn đang bán quyền (mã trong ví dụ của chúng tôi) và đảm bảo rằng tài

nguyên được bán với giá cao hơn cho dự án chính. Không ích gì khi bán độc quyền các tài nguyên mà bạn

đã phát triển riêng cho dự án nếu khách hàng không trả phí cho nó, và điều này đặc biệt xảy ra khi

bạn được trả lương theo giờ – nếu không thì bạn đang cho đi chính mình. sở hữu trí tuệ. Giá riêng cho

bất kỳ tài nguyên nào bạn đồng ý cung cấp độc quyền sẽ bao gồm mọi cơ hội việc làm bị mất mà bạn mong

đợi. Trong hầu hết các trường hợp, điều này sẽ làm tăng giá ngân sách lên nhiều lần và sẽ cho khách

hàng lý do để xem xét lại các đề xuất của bạn.

Ngày giao hàng không thực tế:

h Khoảng thời gian giao hàng không thực tế có thể khiến bạn phải chịu trách nhiệm về bất kỳ tổn thất

nào mà khách hàng phải gánh chịu do giao hàng trễ. Đổi lại, điều này mang lại cho họ cơ hội để

kiện bạn đòi bồi thường hoặc yêu cầu hoàn lại toàn bộ tiền nếu mối quan hệ công việc trở nên tồi

tệ. h Quy định về thời gian giao hàng không thực tế cũng có khả năng dẫn đến tình trạng vội vàng

công việc dẫn đến lỗi và các vấn đề liên quan đến chất lượng khác. Một lần nữa, điều này cung cấp

cho khách hàng khả năng kiện bạn để đòi bồi thường hoặc yêu cầu hoàn lại toàn bộ số tiền trên cơ

sở những tổn thất mà họ phải gánh chịu.

173
Machine Translated by Google

Giai đoạn 5: Xác định giá


Khi cung cấp báo giá hoặc ước tính giá cố định, chỉ khi mức độ phức tạp và quy mô thời gian
giao hàng đã được xác định và thương lượng đầy đủ thì bạn mới có thể xác định được chi phí dự
kiến của dự án – còn được gọi là điểm hòa vốn của bạn. Điểm hòa vốn là mức giá thấp nhất mà bạn
có thể cung cấp mà không mất tiền cho dự án; bằng cách làm việc với thời gian ít hơn giá trị
của bạn hoặc tiêu nhiều tiền hơn số tiền bạn được trả. Điều này xảy ra khi thuê thêm trợ giúp
hoặc đầu tư vào thiết bị và các nguồn lực khác như cơ sở lưu trữ theo yêu cầu của dự án. Thông
thường không nên đặt mục tiêu hòa vốn cho các dự án, vì điều này sẽ giúp bạn không mắc lỗi
trong quá trình lập kế hoạch dự án của mình; thay vào đó, bạn nên có ý định kiếm thêm lợi nhuận
mà bạn có thể sử dụng để đầu tư vào chi phí kinh doanh của mình và cũng để bù đắp cho bất kỳ dự
án nào trước đây hoặc trong tương lai gây ra các vấn đề về lợi nhuận và dòng tiền của bạn.

Không có gì sai khi bắt đầu đàm phán với mức giá cao hơn, đặc biệt nếu bạn đang đàm phán
với một khách hàng khó tính thích mặc cả. Một lợi thế lớn của việc bắt đầu với mức giá cao
hơn là bạn luôn có thể giảm giá nếu khách hàng không có phản ứng tích cực – điều mà bạn
không thể làm mà không mất tiền nếu bắt đầu với mức giá thấp nhất.

Chiến lược bắt đầu đàm phán với mức giá cao nhất không bao giờ nên được coi là chỉ đơn giản là
bắt đầu với mức giá cao nhất bạn có thể đưa ra, mà hãy quan tâm nhiều hơn đến mức giá phù hợp
cao nhất. Điều này đặc biệt đúng khi bạn đang đàm phán một thỏa thuận mà yếu tố giá cả được ưu
tiên cao, điều này thường xảy ra khi giao dịch với những người ở phân khúc bình dân trong thị
trường của bạn, nơi người mua chủ yếu tìm mua ở mức giá thấp nhất. Tùy thuộc vào cách bạn quyết
định định vị mình trên thị trường, bạn có thể không muốn đối phó với những khán giả quá chú
trọng vào việc có được mức giá thấp nhất. Rốt cuộc, chỉ có rất nhiều thứ mà bạn có thể cạnh
tranh về giá mà không mất khả năng cạnh tranh về chất lượng!

Tóm lược
Mặc dù không có một phương pháp duy nhất nào phù hợp với mọi tình huống, nhưng rõ ràng
đàm phán là sử dụng đúng loại chiến lược cho đúng loại tình huống. Thành phần chính của
tất cả các tình huống mà bạn sẽ áp dụng đàm phán là người mà bạn đang đàm phán. Biết được
đặc điểm của họ và những gì ảnh hưởng đến họ sẽ cho phép bạn xác định cách tiếp cận đàm phán
nào có khả năng hiệu quả nhất.

Phần lớn các cuộc đàm phán mà bạn tham gia nên hướng tới việc đạt được kết quả thắng/thắng.
Điều này có nghĩa là bạn cần xem xét tình huống từ cả quan điểm của chính mình cũng như
quan điểm của người khác. Trong trường hợp khách hàng muốn thuê bạn, thương lượng thường xoay
quanh giá cả. Các khách hàng khác nhau có những động lực khác nhau ảnh hưởng đến cách họ
thương lượng mức giá mà họ phải trả – điều bạn phải xác định là liệu họ đang tìm cách thương
lượng mức giá mà họ "muốn" trả hay mức giá mà họ "có thể" trả. Biết được sự khác biệt giữa
"muốn" và "có thể" cho phép bạn tham gia vào các phương pháp đàm phán tạo ra phản hồi tốt hơn;
ai đó đang cố gắng thương lượng mức giá thấp hơn vì họ không đủ khả năng chi trả toàn bộ giá
có nhiều khả năng sẵn sàng xem xét loại bỏ một phần yêu cầu của họ để đổi lấy mức giá thấp hơn.

174
Machine Translated by Google

Mặt khác, ai đó muốn nhận được mức giá thấp hơn chỉ vì lợi ích của một thỏa thuận tốt hơn
sẽ muốn mọi thứ mà không cần thỏa hiệp – một tình huống hoàn toàn khác.

Thành công trong đàm phán đến từ việc sử dụng cho và nhận, trong đó việc linh hoạt cho
đi một yếu tố dẫn đến lấy đi một yếu tố khác. Trong trường hợp đàm phán về ngân sách của dự
án, điều này có thể là cung cấp mức giá thấp hơn bằng cách loại bỏ các tính năng ít quan
trọng hơn – điều gì đó có khả năng thu hút những người không đủ khả năng trả mức giá đầy
đủ, trong khi vẫn nhấn mạnh cho những người chỉ muốn một mức giá thấp hơn mà họ cũng phải
hy sinh nếu muốn đàm phán.

Phần cuối cùng của đàm phán là đảm bảo rằng cả hai bên đều hiểu rõ thỏa thuận và được ghi
chép đầy đủ. Điều này tránh được các vấn đề do hiểu sai hoặc thậm chí là quanh co của một
bên có ý định bí mật buộc bên kia đưa ra nhiều hơn vào một ngày sau đó; loại chiến lược
này không bao giờ là tốt để xem xét vì nó dẫn đến sự ngờ vực lâu dài có thể làm hỏng khả
năng hợp tác vì sự thành công của dự án và bỏ lỡ các cơ hội để tạo ra công việc kinh doanh
mới.

175
Machine Translated by Google
Machine Translated by Google

9
Phát triển phần mềm
Tài nguyên, Mô hình
và Chiến lược
Các phương pháp phát triển phần mềm đã tăng lên về mức độ phức tạp và phức tạp về kỹ thuật
trong những thập kỷ gần đây. Sự xuất hiện của các mẫu phần mềm tinh vi không phải là ngẫu
nhiên hay ngẫu nhiên; sự phát triển của phát triển phần mềm như một nguyên tắc đã được định
hình bởi môi trường kinh doanh mà các dự án phần mềm tồn tại để phục vụ. Điều này có nghĩa
là các mẫu mã và công cụ được sử dụng để xác định phần mềm đã được tinh chỉnh liên tục để
giải quyết các loại vấn đề phổ biến đối với tất cả các dự án phần mềm. Sự hiểu biết về các
mẫu phần mềm không chỉ cung cấp cho bạn khả năng giúp các dự án của bạn bắt đầu nhanh nhất
và tốt nhất, mà sự hiểu biết về chúng còn cho phép bạn trở nên dễ tuyển dụng hơn khi làm việc
với các lập trình viên khác, những người sử dụng các mẫu tiêu chuẩn hóa tương tự cho các dự
án của họ . Tương tự như vậy, nhiều khuôn khổ lập trình được sử dụng trong các dự án hợp đồng
dựa trên các mẫu được tiêu chuẩn hóa này, có nghĩa là sự hiểu biết của bạn về các mẫu mã sẽ
giảm đáng kể lượng thời gian cần thiết để tìm hiểu các khuôn khổ này.

Các mẫu mã phức tạp không chỉ được coi là một thành phần của hệ thống phần mềm đang
được sản xuất mà còn là một yếu tố hỗ trợ và phản ánh mô hình kinh doanh (xem phần ).
,

Sự cố phần mềm: Tóm tắt


Một chủ đề xuyên suốt cuốn sách này là yếu tố con người có thể gây ra vấn đề. Đây
không phải là một quan sát có nghĩa là bi quan về triển vọng làm việc với mọi người,
mà là sự tiếp xúc với các vấn đề mà mọi người đưa ra cho các dự án phần mềm. Những vấn
đề này bao gồm:

h Lập trình viên — mắc lỗi, dẫn đến mã kém chất lượng dẫn đến các lỗ hổng bảo mật và
hạn chế phản ứng với các tình huống trong tương lai.

h Người quản lý dự án — đánh giá thấp sự phức tạp của các yêu cầu và khả năng của các
lập trình viên của họ. h Nhà thiết kế — thiết kế quá phức tạp, dẫn đến sự phức tạp

không cần thiết và


rủi ro của dự án khi tích hợp thiết kế của họ vào mã.

177
Machine Translated by Google

h Khách hàng — không xác định được các yêu cầu phần mềm của họ theo nghĩa đen mà những
người làm phần mềm có thể hiểu và thay đổi các yêu cầu của họ theo thời gian.

h Mọi người — bị ốm, cần nghỉ lễ và thay đổi công việc.

Biết trước rằng sự tham gia của mọi người trong các dự án phần mềm là một rủi ro có thể được sử
dụng để tạo lợi thế cho bạn bằng cách hiểu cách quản lý mã của bạn để giảm rủi ro mà mọi người
gây ra. Cân nhắc cho điều này bao gồm:

h Giữ số lượng người tham gia vào các hoạt động của dự án ở mức tối thiểu. h Chỉ định các

mẫu mã và tiêu chuẩn cho người lập trình sử dụng. h Cung cấp cho các nhà thiết kế khả năng

tự tích hợp các thiết kế của họ. h Cho phép phần mềm có thể thích ứng với các yêu cầu thay

đổi không xác định trong tương lai. h Phát triển phần mềm để tương thích với các nền tảng

chưa biết trong tương lai.

Chính vì những lý do này mà các phương pháp và mẫu lập trình phần mềm như lập trình hướng
đối tượng và phát triển n-tier như MVC (Model-View Controller) đã xuất hiện. Mặc dù các
phương pháp này yêu cầu một đường cong học tập dốc hơn để bắt đầu phát triển phần mềm, nhưng
bất kỳ nỗ lực học tập nào cũng được đền đáp nhiều hơn khi tránh được "nợ kỹ thuật" có thể
xảy ra do các vấn đề mà mọi người đưa ra.

Sẽ không bao giờ có sự chắc chắn 100% về việc hệ điều hành và phần cứng nào sẽ được sử dụng
phổ biến trong tương lai, đây là một vấn đề lớn nếu yêu cầu phần mềm của bạn phải tương thích
với các nền tảng tiêu dùng phổ thông. Ngoài ra, các dự án phần mềm có chu kỳ phát triển dài
cũng có nguy cơ được phát triển cho các nền tảng trở nên lỗi thời khi quá trình phát triển phần
mềm được hoàn thành. Ví dụ về điều này bao gồm bảng điều khiển trò chơi thường có vòng đời 5 năm
và các hệ thống nhúng có thể trở nên dư thừa. Tuy nhiên, tại sao phải phát triển mã cho một đặc
điểm kỹ thuật hệ thống cố định khi có nhiều cách để phát triển mã có thể được chuyển sang các nền
tảng khác nhau mà không cần thay đổi hoặc tối thiểu?

Thành phần mã di động


Thật hợp lý khi phát triển mã của bạn theo những cách có thể được sử dụng lại trên nhiều nền
tảng bất cứ khi nào có thể. Đối với các dự án nhắm mục tiêu đến các thiết bị có khả năng hiển
thị các trang web, cần xem xét tính năng nào của yêu cầu phần mềm có thể được phát triển bằng
HTML, Javascript và CSS – thường được gọi là HTML5. Mặc dù đây là một cách tiếp cận rất khác
với các phương pháp phát triển phần mềm truyền thống, nhưng có những dấu hiệu cho thấy đây sẽ
là một phương pháp phổ biến hơn trong tương lai; một số hệ điều hành bao gồm Chrome OS của Google
và Firefox OS của Mozilla dành cho điện thoại thông minh, máy tính xách tay và TV thông minh được
thiết kế dành riêng cho các ứng dụng của chúng được phát triển bằng HTML, Javascript và CSS. Ngay
cả Windows 8 và 10 cũng cung cấp khả năng phát triển ứng dụng bằng Javascript và HTML, cho thấy
phương pháp phát triển phần mềm này đã trở thành một lựa chọn nghiêm túc.

178
Machine Translated by Google

Phát triển mã di động với HTML5 có thể được thực hiện bằng một trong hai chiến lược:

Các ứng dụng HTML5 thuần túy


Các ứng dụng phần mềm được thiết kế để chạy trực tuyến có thể được truy cập thông qua trình
duyệt web giống như bất kỳ trang web nào. Đây cũng là một tùy chọn cho phần mềm yêu cầu chức năng
ngoại tuyến, với các trình duyệt web hiện đại cho phép truy cập các trang web và ứng dụng web mà
không cần kết nối Internet — tùy thuộc vào các ràng buộc của trình duyệt. Với các nền tảng như iOS
và Android cho phép các trang này được đánh dấu trang và truy cập từ danh sách ứng dụng hoặc màn
hình chính của người dùng, các ứng dụng web có thể xuất hiện và hoạt động theo cách tương tự như các
ứng dụng gốc của chúng nhưng không gặp rắc rối khi cần phải có ứng dụng của bạn được phê duyệt thông
qua cửa hàng ứng dụng được liên kết của nền tảng.

Tùy chọn thay thế để phát triển ứng dụng phần mềm của bạn trong HTML5 thuần túy là sử dụng một
trình bao bọc chẳng hạn như PhoneGap — một ứng dụng phần mềm trung gian có sẵn miễn phí cho phép
bạn đóng gói mã HTML5 của mình để phân phối và truy cập giống như một ứng dụng gốc. Đây là một
lợi thế rõ ràng nếu bạn muốn ứng dụng phần mềm của mình được bán trên thị trường và được tìm thấy
trong các cửa hàng ứng dụng chẳng hạn như các cửa hàng dành cho thiết bị Android và Apple. Một lý
do khác để sử dụng tùy chọn này là để truy cập các tính năng không có sẵn cho trình duyệt, chẳng
hạn như khả năng vượt quá dung lượng lưu trữ dữ liệu của ứng dụng vượt quá giới hạn do trình duyệt
đặt—thường là 5MB tại thời điểm viết bài.

Không phải tất cả các nền tảng đều yêu cầu thêm nỗ lực và sự phức tạp liên quan đến phần mềm
trung gian như PhoneGap. Các nền tảng như Chrome OS và Firefox OS được thiết kế để chạy tất cả các
ứng dụng của họ bằng tiêu chuẩn HTML5, trong khi Windows 8 và trình duyệt web Chrome dành cho máy
tính để bàn cho phép các ứng dụng được phát triển bằng tiêu chuẩn HTML5 để sử dụng làm ứng dụng
ngoại tuyến có thể truy cập các tính năng chẳng hạn như lưu trữ tệp cục bộ và kích thước ứng dụng
không hạn chế không có sẵn thông qua trình duyệt web.

ứng dụng lai


Cách tiếp cận khác để phát triển các ứng dụng phần mềm với HTML5 là kết hợp các thành phần
phần mềm đã được phát triển với mã gốc. Điều này đạt được thông qua việc sử dụng chế độ xem web
—một cửa sổ được trình bày trong giao diện người dùng hiển thị kết quả được tạo ra từ một trang
web, trong trường hợp này sẽ là phiên bản được lưu trữ cục bộ của thành phần HTML5 mà bạn đã phát
triển. PhoneGap đã đề cập trước đây cũng bao gồm một khung làm cho phương pháp này trở nên khả thi.

Mã gốc có một số lợi thế so với HTML5, chủ yếu liên quan đến khả năng được thực thi nhanh hơn —
điều sẽ được ưu tiên cao cho các ứng dụng chuyên sâu về đồ họa, chẳng hạn như các trò chơi cần
chạy trên các thông số kỹ thuật phần cứng tối thiểu. Tuy nhiên, những cải tiến trong công cụ kết
xuất HTML5 được sử dụng cho trình duyệt web và hệ điều hành đang liên tục thu hẹp khoảng cách giữa
hiệu suất của mã gốc và Javascript thông qua HTML5. Tương tự như vậy, các thông số kỹ thuật phần
cứng liên tục được cải thiện đến mức mà các vấn đề về hiệu suất khi bắt đầu dự án cuối cùng sẽ trở
nên không cần thiết.

179
Machine Translated by Google

Khi việc phát triển các tính năng được viết hoàn toàn bằng HTML5 không đủ để đáp ứng các yêu
cầu về hiệu suất, thì nên xác định lựa chọn các tính năng phần mềm phù hợp để phát triển bằng
các tiêu chuẩn HTML5 và tích hợp chúng vào phần gốc của phần mềm thông qua chế độ xem web—có
nghĩa là thời gian phát triển bổ sung trên các thành phần này có thể được tiết kiệm cho bất kỳ
tình huống nào khi phần mềm được yêu cầu chuyển sang một nền tảng khác.

Tùy chọn sử dụng HTML5 làm tiêu chuẩn phát triển phần mềm giải quyết được phần lớn các vấn đề
đã được xác định trước đây trong quá trình phát triển phần mềm liên quan đến rủi ro thay đổi
đặc điểm kỹ thuật trong các giai đoạn sau của dự án để bao gồm việc cung cấp phần mềm trên các
nền tảng không được chỉ định tại bắt đầu của dự án. Tuy nhiên, HTML5 đi kèm với một loạt các vấn
đề của riêng nó ở chỗ nó là một tiêu chuẩn đang phát triển; các khả năng mới có thể được giới
thiệu sau này trong vòng đời dự án của bạn sẽ mất thời gian để khả dụng trong các trình duyệt khác
nhau, với một số trình duyệt mất nhiều thời gian hơn các trình duyệt khác để áp dụng các tiêu
chuẩn mới - Internet Explorer, vâng! Rất đáng để kiểm tra trang web rất hữu ích để tìm xem có bao
www.caniuse.com , nhiêu hỗ trợ cho
các tính năng của HTML, CSS và Javascript từ các trình duyệt khác nhau.

Các tính năng của HTML5 dành cho thiết kế đáp ứng thông qua CSS mang lại lợi thế cho việc
tạo giao diện người dùng có thể điều chỉnh bố cục của chúng sao cho phù hợp nhất với kích thước
màn hình và/hoặc loại thiết bị — ví dụ: phát hiện xem màn hình có ở trên máy chiếu, TV, máy
tính để bàn, màn hình cảm ứng, màn hình lớn hay không hoặc màn hình nhỏ. Với các tính năng phát
hiện này không phải lúc nào cũng dễ dàng có sẵn bằng cách sử dụng các phương pháp phát triển phần
mềm gốc, HTML5 cung cấp một giải pháp vượt trội được đảm bảo để cung cấp bản trình bày bằng chứng
trong tương lai cho các yếu tố trực quan của dự án phần mềm. Ngoài ra, việc dễ dàng định dạng các
yếu tố trực quan bằng HTML và CSS mà không cần chỉnh sửa bất kỳ mã Javascript chính nào có nghĩa
là bạn có cơ hội giao trách nhiệm về bất kỳ thay đổi định dạng nào cho các nhà thiết kế trong dự
án theo một cách nào đó. điều đó sẽ không cho phép họ phá mã chức năng chính của bạn.

dịch mã
Trong khi chiến lược HTML5 dựa vào nền tảng đích có quyền truy cập vào khả năng sử dụng tiêu
chuẩn HTML5 để trình bày ứng dụng, cách ngược lại để tạo mã di động là sử dụng các công cụ
phát triển phần mềm có khả năng dịch mã sang mục tiêu của bạn nền tảng. Hai ví dụ về điều này
là Titanium của Appcelerator và Monkey-X của Blitz Research.

Trong trường hợp của Monkey-X, mã được viết bằng ngôn ngữ kết hợp giữa Visual Basic và Java. Mã
này sau đó được dịch sang ngôn ngữ nền tảng mong muốn của bạn để biên dịch.
Ví dụ: biên dịch ứng dụng của bạn cho Android sẽ dẫn đến mã Monkey-X được dịch sang Java và
được biên dịch thành tệp apk. Ngoài ra, Monkey-X cho phép bạn tạo các lệnh mới cho các nền tảng
mục tiêu bên cạnh việc mở rộng ngôn ngữ để hỗ trợ các nền tảng mục tiêu mới; người dùng đã tạo
các mục tiêu biên dịch cho Amiga và những người khác.

180
Machine Translated by Google

Với việc Monkey-X dịch mã của nó sang mã gốc cho các nền tảng đích, lợi thế thực sự của công
cụ lập trình này là khả năng tạo mã sản xuất hiệu quả cao — một tính năng cần thiết cho phần
mềm đa phương tiện chuyên sâu như trò chơi dựa trên tương tác thời gian thực và Chế biến. Các
nền tảng mục tiêu khả dụng tại thời điểm viết bao gồm Windows, Mac OS, Linux, Android, iOS
cho iPhone/iPad, Windows Phone và Playstation Vita.

Giải cứu bằng lập trình hướng đối tượng


Ngoại trừ các ngôn ngữ như Java, lập trình hướng đối tượng (OOP) không bắt buộc, nhưng
là một kỹ năng đáng để phát triển nếu bạn cần sự linh hoạt để điều chỉnh mã của mình theo
các yêu cầu thay đổi; một khả năng quan trọng nếu bạn tuân theo các nguyên tắc phát triển
nhanh. Giới học thuật và lập trình viên chuyên nghiệp sẽ thường nói về bốn khái niệm của
thiết kế hướng đối tượng bằng cách sử dụng biệt ngữ mà bạn có thể thấy khó nhớ; thường
không có bất kỳ mối liên hệ nào với lợi ích kinh doanh của lập trình hướng đối tượng.
Tương tự, có rất nhiều người nói về OOP mà không biết cách sử dụng nó đúng cách để đạt
được những lợi ích như mong muốn! Cả hai cách tiếp cận này đều không hiệu quả để hiểu cách
sử dụng lập trình hướng đối tượng để hỗ trợ mô hình kinh doanh của bạn; cho dù đó là tính
linh hoạt, hiệu quả hay nhu cầu đáp ứng các yêu cầu và chính trị đang thay đổi. Chúng tôi
sẽ thoát khỏi cách tiếp cận truyền thống không hiệu quả này bằng cách tránh các biệt ngữ
không cần thiết và chủ yếu xem xét các động lực kinh doanh khi sử dụng phong cách lập trình
này để phát triển hệ thống phần mềm — xét cho cùng, mục đích chính của việc làm việc tự
do, ký hợp đồng hoặc phát triển sản phẩm của bạn là thành công như một doanh nghiệp có thể
viết phần mềm một cách có lãi trong phạm vi ngân sách bạn có sẵn. Mã độc lập để có khả
năng bảo trì tốt hơn

Thuật ngữ kỹ thuật cho điều này là đóng gói, đây chỉ là một cách thú vị để nói rằng mã
hướng đối tượng cho phép phần mềm được tạo từ các chương trình nhỏ có mã độc lập với chương
trình chính mà chúng đang được sử dụng để tạo. Điều này có nghĩa là các định nghĩa tương tự
có thể được sử dụng cho các phần tử như tên biến và chức năng (phương thức) mà chúng không
ảnh hưởng đến các chương trình (đối tượng) nhỏ khác cũng đang được sử dụng bởi hệ thống
phần mềm chính đang được phát triển. Điều này trái ngược với lập trình thủ tục truyền thống,
trong đó việc sử dụng một tên biến hiện có trong một phần của mã có thể phá vỡ chức năng
của một phần khác của mã dựa trên cùng một tên biến.

181
Machine Translated by Google

Lợi thế kinh doanh cho tính năng này của lập trình hướng đối tượng bao gồm:

h Phối hợp nhiều lập trình viên trong phát triển phần mềm dễ dàng hơn bằng cách cho phép mỗi lập

trình viên làm việc trên các mô-đun độc lập của riêng họ. Điều này làm giảm thời gian, chi phí

và rủi ro liên quan đến việc các lập trình viên cần phối hợp mã của họ với các phần phụ thuộc

của mã do các lập trình viên khác tạo ra. Ví dụ: Có một nhóm lớn làm việc trên một hệ thống phần

mềm nơi các lập trình viên liên tục thực hiện các thay đổi và thêm mã mới có nguy cơ cao là mọi

người vô tình đưa ra các lỗi mới. Những sai sót này bao gồm việc vô tình sử dụng các tên biến và
hàm đã được sử dụng, cũng như sử dụng các biến theo cách không chủ đích. Lập trình hướng đối

tượng giải quyết những vấn đề này bằng cách cho phép các lập trình viên tạo chức năng dưới dạng

các chương trình nhỏ độc lập không bị ảnh hưởng bởi mã riêng biệt được tạo bởi các lập trình

viên khác trong dự án. h Khả năng tạo các dự án mới dựa trên mã có sẵn mà không bị hạn chế

áp đặt. Ví dụ: Với mã được tạo dưới dạng các chương trình nhỏ, nhóm dự án có thể tạo một

thư viện chức năng có thể được sử dụng lại trong các dự án mới có chức năng tương tự. Điều này

có nghĩa là nhóm có thể tiết kiệm thời gian trong việc viết lại chức năng và cũng như tiết kiệm

thời gian từ việc thử nghiệm lặp lại. Các lập trình viên không bị hạn chế bởi chức năng mà họ

không yêu cầu vì họ có thể chọn và chọn chức năng nào họ muốn sử dụng. h Giảm yêu cầu kiểm tra

do loại bỏ các tài liệu tham khảo được chia sẻ.,

dẫn đến hoàn thành dự án nhanh hơn với chi phí thấp hơn.

¾ Ví dụ: Với mã được viết dưới dạng các chương trình nhỏ độc lập

hoạt động độc lập với nhau, lập trình viên không cần phải nhận thức đầy đủ về cách

tạo mã bên ngoài mô-đun của họ. Điều này cho phép các biến cục bộ được đặt tên khi cần

thiết mà không có bất kỳ nguy cơ ảnh hưởng đến mã trong các khu vực khác của hệ thống.

h Khả năng tham gia tốt hơn vào các thực hành phát triển phần mềm theo định hướng thử nghiệm bằng

cách phát triển từng phần của hệ thống phần mềm dưới dạng các thành phần riêng lẻ. Điều này cho

phép các thành phần được thử nghiệm riêng lẻ để có đầu ra dự kiến trước khi tích hợp chúng vào

hệ thống phần mềm chính — lý tưởng cho các phương pháp phát triển dựa trên thử nghiệm sử dụng

phép so sánh dữ liệu thô để xác định độ chính xác của chức năng.

¾ Ví dụ: Nhóm phần mềm có thể chỉ định các chuyên gia kiểm thử không tham gia vào việc

phát triển mã phần mềm chính. Điều này chỉ có thể thực hiện được vì phần mềm đã được

thiết kế theo cách mô-đun bằng cách sử dụng lập trình hướng đối tượng. Những người

kiểm tra này có thể viết các bài kiểm tra dựa trên mã để gọi các đối tượng được tạo

cho phần mềm và kiểm tra xem liệu chúng có trả về các giá trị mong đợi hay không.

Phản hồi có thể được cung cấp cho lập trình viên của đối tượng mô-đun trong bất kỳ

thử nghiệm nào; với các bài kiểm tra này được tự động hóa, lập trình viên có thể điều

chỉnh mã của họ cho đến khi nó vượt qua bài kiểm tra tự động mà không cần nhóm kiểm

tra viết thêm mã kiểm tra.

182
Machine Translated by Google

Tối đa hóa khả năng sử dụng lại, giảm thiểu trùng lặp
Khả năng cho phép mã có khả năng tái sử dụng cao trong khi hạn chế trùng lặp đạt được
thông qua cái được gọi là kế thừa; một tính năng của lập trình hướng đối tượng cho phép mã mới
tự động nhận được các tính năng từ các thành phần được lập trình trước đó.
Ngược lại, lập trình thủ tục truyền thống có từng chức năng mới được xác định riêng biệt,
có thể với mã trùng lặp cho các tính năng có chung chức năng.

Hình 9.1: Kế thừa được trình bày dưới dạng định nghĩa về sinh vật. Chó, người và mèo được mở rộng từ động vật có vú
– có nghĩa là chúng chia sẻ tất cả các chức năng được định nghĩa là động vật có vú, nhưng cũng có các đặc tính và
chức năng độc đáo của riêng chúng được xác định bên trong khiến chúng trở thành như vậy.

Lợi thế kinh doanh cho tính năng này của lập trình hướng đối tượng bao gồm:

h Khả năng phát triển thư viện mã có thể được sử dụng làm điểm khởi đầu cho nhiều dự án.
Điều này cho phép khả năng giảm thời gian và chi phí bằng cách cho phép mã mới "kế
thừa" chức năng đã tồn tại từ mã được viết trước đó.
Ví dụ: Một dự án yêu cầu chức năng mở rộng cho hệ thống quản lý quan hệ khách hàng.
Các lập trình viên đã phát triển chức năng cho nhiều tính năng cần thiết như để lưu
trữ và trình bày thông tin chi tiết về mọi người.
Dự án có thể sử dụng lại mã hiện có bằng cách làm cho mã quản lý người mới "kế thừa"
chức năng tương tự từ dự án ban đầu.

h Thời gian đáp ứng nhu cầu cập nhật mã chung cho nhiều dự án nhanh hơn,
đặc biệt là khi thời gian là một yếu tố quan trọng như cập nhật các lỗ hổng bảo mật.
Ví dụ: Nhóm xác định rằng mã ban đầu được sử dụng để quản lý con người có lỗi bảo
mật. May mắn thay, mã có thể được sửa nhanh chóng trong một dòng mã và tự động cập
nhật bất kỳ thành phần nào "kế thừa" chức năng ban đầu.
Điều này tốt hơn nhiều so với sao chép và dán mã, chẳng hạn như với lập trình thủ
tục, đặc biệt khi cần lặp lại các bản sửa lỗi có thể bỏ sót một trong các lần lặp
lại. Ngoài ra, các lập trình viên có thể giảm yêu cầu kiểm tra vì bản sửa lỗi chỉ
cần được kiểm tra ở một nơi; trái ngược với việc kiểm tra mọi vị trí được sao chép
nếu mã đã được sao chép về mặt vật lý.

183
Machine Translated by Google

khả năng thích ứng chức năng


Một cách khác mà lập trình hướng đối tượng mang lại lợi thế về khả năng bảo trì và khả
năng thích ứng là thông qua một tính năng cho phép lập trình viên tạo nhiều phiên bản
của cùng một chức năng (đa hình). Điều này cho phép các tham chiếu chức năng hoạt động
khác nhau đối với các loại tình huống cụ thể. Khả năng xác định chức năng có thể thích
ứng theo cách này có một số lợi thế kinh doanh:

h Chức năng mới có thể được thêm vào mã kế thừa theo cách không bị hỏng
chức năng hiện có. Ví dụ: Nhóm phần mềm có thể lấy các đối tượng mà họ đã mã
hóa để sử dụng làm bản thiết kế của một dự án mới. Dự án mới yêu cầu một số
mã hiện có hoạt động khác đi trong một số tình huống. Các phiên bản mới của
hàm đối tượng (phương thức) có thể được tạo theo cách cho phép cả phiên bản
mới và phiên bản gốc được gọi bất cứ khi nào chúng được yêu cầu. Điều này cho
phép chức năng được sửa đổi cho các yêu cầu cụ thể của dự án mới mà không có bất
kỳ rủi ro nào phá vỡ chức năng kế thừa nên giữ nguyên. Các yêu cầu về rủi ro, chi
phí và thời gian có thể được giảm bằng cách giữ cho các thành phần mã đơn giản để
viết và dễ đọc. Ví dụ: nhóm phần mềm thuê một lập trình viên cơ sở mới.
Lập trình viên mới có ít kinh nghiệm hơn những người khác trong nhóm và do đó
không hiểu một số mẫu mã nâng cao hơn đã được sử dụng. Lập trình viên mới không
nhận thức được cách hệ thống phần mềm hoạt động, vì vậy cần cân nhắc cẩn thận
về cách đào tạo họ sử dụng mã.
May mắn thay, phần mềm được thiết kế theo cách mô-đun cho phép nhóm đặt nhiệm vụ
mới cho lập trình viên mà không cần phải hiểu bất cứ điều gì bên ngoài chương
trình nhỏ (đối tượng) mà họ đang mã hóa. Lập trình viên cơ sở cũng có thể ghi đè
chức năng (phương thức) đối tượng hiện có mà không có nguy cơ phá vỡ các phần
khác của hệ thống mà họ không biết. Điều này có nghĩa là lập trình viên cơ sở có
thể trở nên hiệu quả gần như ngay lập tức với yêu cầu học tập tối thiểu và không
gặp rủi ro đối với chức năng bên ngoài không gian làm việc của họ.

h Chức năng mới và các sửa đổi có thể được cách ly để giảm rủi ro và các chi
phí liên quan. Ví dụ: Lập trình viên mới không có đủ kinh nghiệm hoặc đào
tạo để biết cách hệ thống phần mềm có thể bị khai thác thông qua đầu vào của
người dùng. Nhóm phần mềm nhận thức được điều này và có thể sử dụng tính đa
hình để giữ cho các thành phần mã của lập trình viên cơ sở tách biệt với các đối
tác của họ trong hệ thống trực tiếp cho đến khi chúng được bộ phận kiểm tra kiểm
tra kỹ lưỡng. Nhóm có thể giữ cách ly các sửa đổi của lập trình viên cơ sở cho
đến khi họ có thể cung cấp phản hồi từ quá trình thử nghiệm, trong khi vẫn cho
phép lập trình viên tiếp tục viết mã mà không ảnh hưởng đến hệ thống trực tiếp.

184
Machine Translated by Google

Hình 9.2: Khái niệm đa hình thể hiện cách một đối tượng động vật có thể có một phương thức âm thanh, phương thức
này có một phiên bản chức năng khác được gọi tùy thuộc vào việc đối tượng thuộc loại Cat hay Dog

Sự rõ ràng của giải pháp thực hiện


Tính năng trung tâm của lập trình hướng đối tượng là khả năng xác định chức năng và
kiến trúc tương tự như các thực thể trong thế giới thực – tức là các đối tượng, kiểu,
thuộc tính và phương thức. Khả năng xác định mã theo cách gần giống với ngôn ngữ được
sử dụng để mô tả vấn đề và giải pháp có nhiều lợi thế kinh doanh:

h Người lập trình và nhà phân tích có thể hiểu nhau hơn do sử dụng cùng một thuật
ngữ trong cả bối cảnh kinh doanh và lập trình. Ví dụ: Nhà phân tích kinh doanh
trong một dự án nói về các thực thể kinh doanh như con người và nhiệm vụ của họ;
họ không có kiến thức về bất kỳ thuật ngữ lập trình kỹ thuật nào. Các lập trình
viên nói chuyện với nhà phân tích nghiệp vụ biết chính xác mọi người và nhiệm vụ
liên quan đến mã vì hệ thống có các đối tượng thuộc loại người và nhiệm vụ với
tất cả các hành động (phương thức) được đặt tên bằng cách sử dụng cùng một thuật
ngữ mà nhà phân tích nói. Tương tự như vậy, các lập trình viên có thể nói chuyện
với nhà phân tích về kiến trúc kỹ thuật mã của họ mà không bị nhầm lẫn vì mọi
người đều sử dụng thuật ngữ và khái niệm mà cả lập trình viên và nhà phân tích
đều hiểu. để nói chuyện trực tiếp với khách hàng mà không làm họ bối rối. Ví dụ:
Giống như giao dịch với nhà phân tích, các lập trình viên có điều kiện nói về mã
bằng thuật ngữ mà khách hàng sẽ hiểu. Khi khách hàng nói về các tính năng và mối
quan hệ mới không tồn tại trong kiến trúc phần mềm, lập trình viên ngay lập tức
hiểu phần nào của mã cần được điều chỉnh từ các đối tượng, phương thức, thuộc
tính và mối quan hệ được đề cập trong mô tả của khách hàng. thông tin sai lệch
dẫn đến lỗi, lãng phí thời gian và tăng chi phí phát triển vì mọi người đều có
thể tham khảo cùng một thuật ngữ và áp dụng kiến thức hiện có của họ vào cách
quản lý điều này trong triển khai và vận hành hệ thống.

¾ Ví dụ: Các lập trình viên trong dự án có thể tự tin hơn khi sản
xuất mã dựa trên các mô tả được cung cấp bởi các nhà phân tích và
khách hàng vì cùng một thuật ngữ được chia sẻ bởi mã và mô tả yêu
cầu của nó.

185
Machine Translated by Google

h Bản thiết kế (các lớp) có thể được tạo để mô tả các thể hiện đối tượng chung sẽ phản ánh
từng phần của vấn đề được mô hình hóa. Sau đó, mỗi phiên bản đối tượng riêng lẻ này có
thể được tùy chỉnh với các tên, thuộc tính và khả năng (phương pháp) tham chiếu duy nhất
giúp chúng phù hợp nhất để phản ánh phần vấn đề mà chúng được tạo ra để phản ánh và cung
cấp giải pháp; tất cả đều sử dụng cùng một định nghĩa ngôn ngữ được cung cấp cho các lập
trình viên từ các nhà phân tích và khách hàng có liên quan đến dự án.

¾ Ví dụ: Khi nhà phân tích kinh doanh điều tra cấu trúc kinh doanh của khách hàng,
họ xác định rằng có nhiều loại người khác nhau và các loại nhiệm vụ khác nhau.
Một số người là quản lý và những người khác là công nhân; tất cả họ đều chia sẻ
các tính năng chung, nhưng cũng có một số tính năng dành riêng cho vai trò của
họ, chẳng hạn như người quản lý có thể ký ủy quyền. Các lập trình viên hiểu ngay
rằng người quản lý và công nhân có thể được tạo thành các loại đối tượng mới
được mở rộng từ đối tượng người, cho phép họ có tất cả các tính năng của người
kết hợp với các khả năng độc đáo của riêng họ, chẳng hạn như người quản lý ký ủy
quyền.

h Việc sử dụng các đối tượng để xác định chức năng hệ thống cho phép kiến trúc hệ thống và mã
được tạo theo cách phản ánh trực tiếp từ thực bằng cách sử dụng các khái niệm trừu tượng
như kế thừa cũng cho phép mô tả các mối quan hệ làm tăng hiệu quả thông qua việc loại bỏ
mã lặp lại. h Ví dụ: Các lập trình viên nhận được một yêu cầu tính năng mới được thêm vào

dự định. Tính năng này yêu cầu định nghĩa của một loại đối tượng mới, được mô tả là yêu cầu
một phần chức năng của nó từ bản thiết kế đối tượng "Hoạt động" (lớp) và phần còn lại của
chức năng từ bản thiết kế đối tượng "Quy trình". Các lập trình viên có thể tạo bản thiết kế
đối tượng mới này rất nhanh chóng mà không cần bất kỳ mã nào – trước tiên bằng cách tạo đối
tượng mới để mở rộng (kế thừa) chức năng của bản thiết kế đối tượng "Hoạt động", sau đó cũng
để mở rộng chức năng của bản thiết kế đối tượng "Quy trình".
Cách tiếp cận này cũng cung cấp lợi thế của kế hoạch chi tiết đối tượng mới kế thừa bất
kỳ bản sửa lỗi và nâng cấp bảo trì nào được thực hiện cho bản gốc.

Hình 9.3: Lập trình hướng đối tượng sử dụng các đối tượng có tên và phương thức tương ứng với thuật ngữ
ngôn ngữ của khách hàng giúp tránh nhầm lẫn khi người lập trình nói chuyện với những người có ít kiến
thức kỹ thuật hơn và ngược lại.

186
Machine Translated by Google

Hiệu quả chiến lược với MVC


Bất kể bạn sử dụng ngôn ngữ và công cụ phát triển phần mềm nào để tạo phần mềm của mình,
ưu tiên hàng đầu phải là phát triển mã nội tuyến của bạn với chiến lược và phương pháp tạo ra
hiệu quả cả ngắn hạn và dài hạn. Ngoại trừ việc tạo nguyên mẫu, cũng nên nhớ rằng hiệu quả ngắn
hạn không được đánh đổi bằng hiệu quả lâu dài; sử dụng cách tiếp cận như vậy thường dẫn đến các
vấn đề không cần thiết xảy ra vào cuối dự án và trở nên có hại cho sự thành công của dự án.

Một giải pháp để phát triển phần mềm với hiệu quả chiến lược là một mẫu mã có tên là MVC,
viết tắt của "mô hình, chế độ xem và bộ điều khiển". MVC là một biến thể của thiết kế kiến
trúc n tầng, trong đó n là số tầng (lớp) mà phần mềm được mô hình hóa thông qua. Trong trường
hợp MVC thuần túy, phần mềm được xây dựng thông qua ba tầng kết hợp để tạo thành các chương
trình nghị sự sau:

h Tách chức năng, trình bày và nội dung.

Khả năng giữ chức năng phần mềm để xử lý dữ liệu tách biệt hoàn toàn khỏi bất kỳ
phần nào của mã chịu trách nhiệm quản lý nội dung và trình bày trực quan. Điều
này mang lại một lợi thế lớn cho việc chứa các rủi ro liên quan đến việc tinh
chỉnh cách trình bày nội dung và giao diện người dùng của ứng dụng, chẳng hạn
như: Hạn chế sự tham gia của bạn vào các thay đổi thiết kế:

Khả năng cung cấp cho các nhà thiết kế khả năng xây dựng đánh dấu giao diện người
dùng của riêng họ mà không có nguy cơ làm hỏng chức năng có nghĩa là bạn có thể tránh
được những công việc không cần thiết và tham gia vào chính sách thiết kế. Điều này
rất hữu ích khi dự án của bạn đang chạy với ngân sách giá cố định hoặc khi việc thiết
kế được xác định và chấp nhận trở nên rất khó khăn.

Ví dụ: Một nhà thiết kế trong nhóm mà bạn đang làm việc cùng luôn thay đổi các
phần trong thiết kế của họ. Điều này trở thành một vấn đề khi bạn có một danh
sách các nhiệm vụ phát triển khác mà bạn cũng cần phải hoàn thành. Giữ định dạng trực
quan tách biệt với chức năng chính sẽ mở ra cơ hội cung cấp cho nhà thiết kế trách
nhiệm kiểm soát định dạng trực quan và tránh danh sách nhiệm vụ của bạn vượt khỏi tầm
kiểm soát.

¾ Tránh thiết kế trực quan và tạo nội dung làm chậm quá
trình phát triển tính năng.

Ví dụ: Thông số kỹ thuật của dự án đã được hoàn thiện, nhưng lập trình
viên đang chờ nội dung và thiết kế cho các thành phần do nhóm nội dung
cung cấp. Lập trình viên vẫn có thể tiến hành công việc của họ bằng cách
phát triển chức năng của họ xung quanh một bộ khung cho phép thiết kế và
nội dung được tích hợp vào một ngày sau đó.

¾ Khả năng tạo ra thử nghiệm tự động cho các thành phần chức năng riêng
lẻ—được gọi là thử nghiệm đơn vị.

187
Machine Translated by Google

¾ Ví dụ: Nhóm cần đảm bảo rằng những thay đổi mới đối với mã không làm hỏng
chức năng đang hoạt động trước đây. Thực hiện thủ công danh sách dài các bài
kiểm tra mỗi khi mã được sửa đổi vừa tốn thời gian vừa tốn kém. May mắn thay,
kiến trúc MVC cho phép các đơn vị mã riêng lẻ được kiểm tra dựa trên các đầu
ra dự kiến; các bài kiểm tra này chỉ cần được viết một lần và sau đó có thể
được chạy để đưa ra cảnh báo ngay lập tức cho bất kỳ bài kiểm tra nào không
thành công. Điều này có nghĩa là các thử nghiệm có thể được lặp lại thường xuyên
mà không làm tăng thời gian và chi phí – do đó mở ra cơ hội để giảm nguy cơ các
lỗi không được chú ý lọt vào bản phát hành trực tiếp.

¾ Tăng cường bảo mật dữ liệu bằng cách giảm mã và nâng cao hiệu quả.
Sản xuất các thành phần tái sử dụng.

Các thành phần có thể được tái sử dụng trong suốt dự án và trong các dự án khác giúp giảm
thời gian phát triển, thử nghiệm và bảo trì trong tương lai. Giảm thời gian có nghĩa là
có nhiều lợi nhuận hơn để sửa chữa những sai lầm mắc phải trong các lĩnh vực khác của dự
án và/hoặc để giảm chi phí của dự án — đặc biệt nếu nó nằm ngoài ngân sách của khách hàng.

h Mang lại tính nhất quán và khả năng bảo trì.

Chức năng và trình bày trực quan được cập nhật trong một khu vực sẽ tự động được cập
nhật ở mọi nơi khác mà cùng một thành phần đã được sử dụng. Điều này đảm bảo đầu ra
nhất quán trong toàn bộ ứng dụng; bất kể số lần trình bày hoặc chức năng được sử dụng
trong các phần khác nhau của thiết kế phần mềm.

Ví dụ: Khách hàng yêu cầu thay đổi màn hình chi tiết mọi người; họ muốn số điện
thoại có định dạng và xác thực cụ thể. Họ yêu cầu đảm bảo số điện thoại có độ dài
11 ký tự với mã quay số hợp lệ. Lập trình viên phát triển tính năng này chính xác
theo yêu cầu của khách hàng, nhưng khách hàng sau đó phàn nàn rằng tính năng này không
hoạt động khi họ đang thử nghiệm tính năng này trên các màn hình khác trong ứng dụng
có số điện thoại. Đây là một vấn đề nếu lập trình viên chưa sử dụng kiến trúc kiểu MVC
vì nó yêu cầu nhận dạng thủ công mọi vị trí trong ứng dụng sử dụng trường nhập điện
thoại; đây là một sự tiêu tốn đáng kể về thời gian và ngân sách nếu có hàng chục, hàng
trăm hoặc hàng ngàn lần lặp lại này. Trong trường hợp này, mã không chỉ cần được phát
triển và sao chép thủ công đến từng vị trí, mà mỗi lần lặp lại cần phải được kiểm tra
thủ công – không đảm bảo rằng mọi lần xuất hiện đều được cập nhật đầy đủ và chính xác.
MVC giải quyết vấn đề này bằng cách cho phép tính năng được phát triển một lần và tự
động có sẵn ở mọi nơi trong ứng dụng mà không cần lập trình viên phải biết nơi sử dụng
các trường nhập điện thoại riêng lẻ.

Với sự hiểu biết về mục đích của MVC, giờ đây chúng ta có thể xác định các thành phần khác nhau
mà kiến trúc dựa trên MVC sử dụng.

188
Machine Translated by Google

MVC: Mô hình
Chức năng xử lý của kiến trúc MVC được lưu trữ trong các thành phần được gọi là "mô hình". Kết
hợp điều này với lập trình hướng đối tượng (OOP) đã đề cập trước đó, các mô hình có thể được
tạo dưới dạng các đối tượng chứa các phương thức cho từng hoạt động riêng lẻ mà phần mềm cần
thực hiện. Các phương thức này sau đó có thể được gọi tại bất kỳ điểm nào trong ứng dụng phần mềm mà
không cần thêm bất kỳ nỗ lực nào để xác định chức năng.

Chiến lược thích ứng


Một cân nhắc quan trọng đối với việc thiết kế các mô hình là chức năng của chúng sẽ cần như
thế nào để phục vụ các lĩnh vực khác nhau của ứng dụng phần mềm. Kích thước mô hình là một mối
quan tâm cần được cân bằng; cái gọi là các mô hình béo có độ phức tạp tăng lên khiến chúng trở
nên cồng kềnh và khó bảo trì, trong khi các mô hình gầy không có đủ khả năng thích ứng để được
sử dụng hiệu quả trên toàn bộ ứng dụng phần mềm. Một xem xét khác về điều này là mối quan hệ giữa
các mô hình và bộ điều khiển sử dụng chúng; logic được đặt trong bộ điều khiển không thể tái sử
dụng trong ứng dụng, nhưng việc đặt quá nhiều logic vào các mô hình khiến chúng trở nên béo, do đó
có cụm từ mô hình béo / bộ điều khiển gầy.

Một tập hợp các nguyên tắc cần lưu ý có thể giúp bạn quyết định vị trí đặt trọng số mã trong ứng
dụng của mình là Luật Demeter, quy định rằng:

h Mỗi đơn vị nên có kiến thức hạn chế về các đơn vị khác — tức là các đơn vị chỉ nên biết về
các đơn vị mà họ yêu cầu để thực hiện chức năng riêng của mình. h Các thiết bị không bao

giờ được nói chuyện với người lạ — tức là những người không có bất kỳ liên quan nào đến chức
năng và mục đích của chúng.

h Mã chỉ nên nói chuyện với những người bạn trực tiếp — tức là tránh trộn lẫn các chức năng
thuộc các loại khác nhau không liên quan đến nhau.

Kết quả của việc áp dụng các nguyên tắc này có xu hướng là mã dễ bảo trì và dễ thích ứng hơn do giảm
thiểu sự phụ thuộc giữa các đơn vị. Điều này mang lại lợi thế cho việc điều chỉnh và duy trì cấu
trúc bên trong của các thành phần như đối tượng và vùng chứa của chúng, cho phép thay đổi và/hoặc
thay thế chúng mà không ảnh hưởng đến danh sách dài các thành phần phụ thuộc. Nhược điểm của phương
pháp này là có thể cần phải viết thêm các phương thức bao bọc để thực hiện chiến lược này, yêu cầu
đầu tư công việc bổ sung và có thể có sự khác biệt đáng chú ý về tốc độ thực thi. Hiệu suất thực thi
này có thể trở nên đáng chú ý nếu ứng dụng là phần mềm dựa trên máy chủ được sử dụng nhiều.

Một số khu vực của phần mềm có thể yêu cầu chức năng mô hình hoạt động hơi khác so với tiêu chuẩn,
đặc biệt là khi các phương pháp mô hình đã được cập nhật với chức năng mới và vẫn cần duy trì khả
năng tương thích với mã cũ hơn ở nơi khác trong hệ thống. Vấn đề nan giải của tình huống này là cần
phải xác định chức năng hoạt động khác nhau như thế nào tùy thuộc vào cách nó được gọi; do đó cho
phép các cuộc gọi chức năng tương tự tự thích ứng với các tình huống khác nhau.

189
Machine Translated by Google

Các ngôn ngữ như Monkey-X và Java hỗ trợ sử dụng các tính năng đa hình như nạp chồng chức năng đối tượng

(xem hình 9.4) có thể cung cấp khả năng hỗ trợ các phiên bản khác nhau của chức năng mô hình để phản ánh

tình huống mà chúng đang được gọi. Điều này đạt được thông qua mỗi phiên bản của chức năng được xác định với

một bộ tham số hoặc loại đầu ra được trả về khác nhau.

Hình 9.4: Quá tải (đa hình) là nơi các đối tượng có thể có nhiều phiên bản của cùng một phương thức.
Phương thức được chọn sẽ là phiên bản khớp với các tham số của yêu cầu.

Đối với các ngôn ngữ không hỗ trợ các tính năng đa hình như quá tải chức năng hoặc khi điều này có vẻ không

phù hợp, chức năng có thể được thiết kế để kiểm tra các dấu hiệu về tình huống mà chúng đang được gọi để

giải quyết. Các chỉ báo này cho phép chức năng của phương thức xác định hành vi phù hợp nhất cho phản hồi

đầu ra được yêu cầu.

Một cách để sử dụng điều này cho khả năng tương thích kế thừa là phát hiện các tham số được cung cấp; với

bất kỳ mã nào gọi các phiên bản kế thừa của phương thức không cung cấp các tham số đã được thêm cho chức

năng mới hơn. Tương tự, các kiểm tra cũng có thể được thực hiện về cách dữ liệu đang được thực hiện; chẳng

hạn như liệu một mục dữ liệu có phải là một chuỗi trên số nguyên hay không; hoặc nếu một chuỗi chỉ là văn

bản thuần túy hoặc sử dụng định dạng JSON.

190
Machine Translated by Google

Hình 9.5: Logic có thể được lưu trữ bên trong các phương thức đối tượng để cho phép chúng phản ứng khác nhau dựa trên cách chúng được

gọi. Điều này cho phép sử dụng cùng một phương thức theo những cách khác nhau hoặc như một giải pháp để duy trì khả năng tương thích

với mã kế thừa.

Một số ngôn ngữ không hỗ trợ tính đa hình cũng nghiêm ngặt về cách tham chiếu đến
các phương thức đối tượng phải sử dụng tất cả các tham số theo thứ tự chúng được xác
định. Ngay cả khi không phải như vậy, các tham số vẫn cần được cung cấp cho đến điểm
đặt tham số bắt buộc. Điều này đặt ra một vấn đề vì các tham số chức năng xấu làm tăng
độ khó của việc gọi và nâng cấp các phương thức với chức năng mới – đặc biệt là trong
khi vẫn duy trì khả năng tương thích với mã kế thừa. Trong trường hợp xấu nhất, điều
này dẫn đến mã trở nên quá phức tạp, với các lệnh gọi chức năng trông khó hiểu như sau:

Something.doAction("","",Null,Null,5,Null,"","","","",true);

Điều này có vấn đề lớn đối với năng suất, khả năng bảo trì và bảo mật:

Danh sách dài các tham số làm cho lệnh gọi chức năng không thể đọc được, gây khó khăn cho
việc đọc mã và đào tạo lập trình viên mới sử dụng chúng.

Tăng sự phụ thuộc của lập trình viên vào tài liệu – giảm năng suất của họ mỗi khi họ
cần kiểm tra thứ tự tham số, v.v.

Tăng nguy cơ mắc lỗi do dễ đặt thông số sai vị trí.

191
Machine Translated by Google

Giới thiệu các lỗ hổng bảo mật có thể khó nhận thấy – ví dụ: đặt tham số ở vị trí sai dẫn đến
việc cung cấp dữ liệu và chức năng cho loại người dùng sai.

Độ khó tăng lên dẫn đến mất nhiều thời gian hơn để viết mã, cùng với các yêu cầu kiểm tra tăng lên; cần
nhiều bài kiểm tra hơn và dành nhiều thời gian hơn cho mỗi bài kiểm tra.

Cách giải quyết vấn đề này là thiết kế các phương thức của bạn để chấp nhận một tham số duy
nhất của kiểu đối tượng—đối tượng được cung cấp làm tham số sau đó có thể được sử dụng để chứa bất
kỳ thông tin nào bạn muốn chuyển đến phương thức và sẽ không bị trình biên dịch ngôn ngữ kiểm tra khi
bạn đang thay đổi loại và số lượng tham số bạn đang cung cấp trong đối tượng.

Một giải pháp cho vấn đề này là thiết kế các phương thức chức năng chỉ với một tham số duy nhất; một
cấu trúc dữ liệu chứa các tham số khác nhau có liên quan đến chức năng.
Javascript cho phép điều này thông qua việc sử dụng JSON để xác định các đối tượng làm tham số:

Something.doAction({
"số tiền":5,

"hiển thị": đúng

});

Tương tự, PHP cho phép các mảng kết hợp được cung cấp trực tiếp dưới dạng tham số cho các hàm
và phương thức:

Something->doAction(mảng( "số tiền"=>5,

"hiển thị"=>đúng

));

Khi ngôn ngữ bạn chọn không cho phép cung cấp cấu trúc dữ liệu nội tuyến dưới dạng tham số, thì luôn
có tùy chọn cung cấp tham số dưới dạng chuỗi JSON, được chuyển đổi thành cấu trúc dữ liệu bên trong
hàm/phương thức. Lưu ý cách ví dụ sau sử dụng dấu ngoặc đơn để xác định tham số là văn bản sao cho văn
bản JSON có thể dễ dàng có dấu ngoặc kép – nếu không, hãy sử dụng ký tự thoát để cho phép đặt dấu ngoặc
kép bên trong chuỗi của bạn:

doAction('{"số tiền":5,"hiển thị":true}');

hàm doAction(tham số){

cài đặt = JSON_parse(tham số); kết quả =


do_something(settings.amount); if(settings.visible ==
true){ show_something(result);

} trả về kết
quả; }

192
Machine Translated by Google

Cách tiếp cận này giải quyết các vấn đề liên quan đến việc sử dụng nhiều tham số.
Ưu điểm bao gồm:

h Làm cho mã xác định rõ ràng tham số nào đang được sử dụng. h Tránh

nguy cơ dữ liệu bị đặt sai tham số bằng cách yêu cầu người lập trình nêu rõ tên tham
số liên quan của họ.

h Cho phép đặt hoặc loại bỏ các tham số theo thứ tự bất kỳ – giảm nhu cầu dựa vào tài
liệu.

h Việc thêm tham số mới không ảnh hưởng đến mã kế thừa do thứ tự của chúng trong lệnh
gọi chức năng không còn là vấn đề nữa.

h Dễ dàng hơn cho các lập trình viên mới để có được sự hiểu biết chung về những gì
đang xảy ra trong mã mà không cần phụ thuộc nhiều vào tài liệu.

Thuận lợi
Một số lợi thế khi sử dụng các mô hình trong quá trình phát triển phần mềm của bạn bao gồm:

h Viết một lần sử dụng nhiều lần - Nghĩa là phần mềm có thể mở rộng
rất nhanh chóng khi các tính năng mới có thể được xây dựng từ chức năng hiện có trong
các mô hình.

h Bảo trì nhanh chóng - Không lặp lại mã và mỗi chức năng bắt nguồn từ một vị trí duy nhất,
các sửa đổi đối với chức năng được thực hiện ở một vị trí.
Sửa đổi duy nhất này sẽ tự động cập nhật mọi vị trí trong ứng dụng có chức năng. h Khả
năng kiểm tra được cải thiện - Với chức năng được xác định theo mô-đun bên trong mô hình

container, phần lớn các yêu cầu kiểm tra có thể được tự động hóa bằng mã được viết riêng
cho mã kiểm tra. Bất kỳ kiểm tra mã nào không thành công đều có thể cung cấp báo cáo chi
tiết về những gì không thành công và nguyên nhân của chúng – tiết kiệm nhiều giờ cho việc
tìm ra nguyên nhân gốc rễ của các lỗi được tìm thấy trong kiểm tra thủ công. Với chức năng
được xác định từ một vị trí trung tâm, cũng có sự đảm bảo rằng các thử nghiệm sẽ tạo ra
kết quả nhất quán trong toàn bộ ứng dụng khi các điều kiện giống nhau được đáp ứng. Thử
nghiệm tự động mang lại hai lợi thế. Ưu điểm đầu tiên và chính là chất lượng của thử
nghiệm, trong đó các thử nghiệm có thể được lặp lại một cách chắc chắn về độ chính xác và
kỹ lưỡng sau khi chúng được tạo thành công lần đầu tiên. Những thử nghiệm này sau đó có
thể được sử dụng để xác định các lỗi mới có thể đã được đưa vào thông qua bảo trì hệ thống
gần đây; điều này trái ngược với thử nghiệm dựa trên con người dựa trên kiến thức về nơi
cần kiểm tra để xác định các lỗi mới, cho phép "bỏ quên" nhiều phạm vi cho các yêu cầu
kiểm tra. Ngoài ra, kiểm tra thủ công có thể không cung cấp thông tin chi tiết về các kiểm
tra không thành công do thiếu kiến thức về mã và các phần phụ thuộc của nó – hoặc đơn giản
là người kiểm tra không có nhiều kỹ năng viết. Thử nghiệm tự động có thể được tạo để đảm
bảo mức báo cáo nhất quán – với các lập trình viên ban đầu của mã có thể tạo các thử
nghiệm và báo cáo của họ.

193
Machine Translated by Google

Ưu điểm thứ hai của khả năng kiểm tra tự động của các mô hình là giảm thời gian và chi phí do kiểm tra
thủ công. Với mã tự động hóa có thể chạy từng thử nghiệm chỉ trong một phần giây so với vài phút hoặc
thậm chí hàng giờ đối với con người, các thử nghiệm có thể được thực hiện theo cách tránh làm chậm tiến
độ trong các lĩnh vực khác của dự án và không sử dụng thời gian của con người nếu không sẽ làm tăng chi
phí. Việc tránh các tác động về thời gian và chi phí cũng cho phép các thử nghiệm được thực hiện sớm hơn
và thường xuyên hơn để xác định và sửa lỗi sớm nhất có cơ hội - giúp tránh các tình huống có vấn đề khi
kết thúc dự án.

Các cân nhắc khác để cải thiện khả năng kiểm thử với kiểm thử đơn vị bao gồm việc sử dụng các chỉ số
để ước tính lượng cơ sở mã của bạn có các kiểm thử hỗ trợ cũng như mức độ chi tiết và chất lượng mà các
kiểm thử đánh giá; không phải tất cả các thử nghiệm đều như nhau và cần xem xét cẩn thận những gì đang
được thử nghiệm và mục đích của chúng. Tự động hóa thử nghiệm chỉ trở nên hữu ích nếu bản thân các thử
nghiệm được tạo là chính xác, do đó các thử nghiệm cũng nên được thử nghiệm — một phương pháp để thực

hiện điều này được gọi là thử nghiệm đột biến, trong đó mã nguồn được thay đổi nhằm cố gắng làm cho các
thử nghiệm liên quan của chúng không thành công; do đó xác định bất kỳ bài kiểm tra nào báo cáo không
chính xác vượt qua khi chúng không nên.

h Tính nhất quán - Việc sử dụng các mô hình để xác định chức năng được cung cấp cho
các phần khác nhau của ứng dụng phần mềm có nghĩa là tất cả các chức năng được quản lý từ cùng
một nguồn, đảm bảo tính nhất quán trong toàn bộ ứng dụng phần mềm. Điều này trái ngược với

việc chức năng được phân phối và sao chép qua các phần khác nhau của ứng dụng phần mềm, nơi
không thể đảm bảo tính nhất quán, đặc biệt là khi nhận được các yêu cầu bảo trì mới để cập

nhật chức năng trong một khu vực cụ thể của ứng dụng phần mềm mà không cần tham chiếu đến các
phần khác của hệ thống. các tính năng tương tự được sao chép.

h Tiềm năng tích hợp - Với khả năng truy cập chức năng một cách nhất quán, có thể cho phép hệ
thống phần mềm được tích hợp vào các nền tảng và ứng dụng thiết bị khác thông qua việc xây
dựng lớp API gọi các dịch vụ của mô hình. Cách tiếp cận này để phát triển phần mềm giải quyết
vấn đề kiểm chứng các dự án phần mềm hiện đại trong tương lai trước những nhu cầu chưa biết
hiện tại.
Đặc biệt liên quan đến điều này là các hệ thống dựa trên Internet có thể bao gồm các yêu
cầu trong tương lai để cho phép các thiết bị như điện thoại thông minh và máy tính bảng truy

cập dữ liệu từ hệ thống chính; hoặc nơi hệ thống của bên thứ ba được yêu cầu truy cập dữ
liệu. Các mô hình giúp dễ dàng tạo một lớp API cung cấp dữ liệu cho các hệ thống của bên
thứ ba bằng cách sử dụng bộ điều khiển (xem sau) để quyết định cách sử dụng các mô hình để
cung cấp và chấp nhận dữ liệu.

194
Machine Translated by Google

Hình 9.6: Các mô hình có thể được sử dụng làm tài nguyên không thể thiếu của các lớp API của dịch vụ cung cấp dữ liệu. Điều này

cho phép đảm bảo tính nhất quán của dữ liệu được cung cấp thông qua API và quyền truy cập hệ thống trực tiếp, cũng như các lợi thế

khác về khả năng tương thích, tính linh hoạt và chu kỳ phát triển nhanh hơn.

MVC: Lượt xem


Chế độ xem là các thành phần của kiến trúc MVC có khái niệm tương tự như mô hình, nhưng cụ thể để
quản lý bản trình bày trực quan. Mỗi chế độ xem thường được lưu trữ dưới dạng một tệp văn bản riêng
lẻ với đánh dấu trực quan được xác định thông qua một biến thể của XML, mà trong các ứng dụng web sẽ
là HTML tiêu chuẩn—bản thân nó là một tiêu chuẩn dựa trên XML.

Lượt xem đang hoạt động

Các khung nhìn được sử dụng trong các ứng dụng phần mềm MVC tồn tại dưới dạng một trong ba biến thể:

h Mẫu màn hình - Đánh dấu bản trình bày trực quan mô tả cách màn hình,
trang web hoặc e-mail nên xem. Các mẫu màn hình có thể chứa nội dung cố định được
trình bày mỗi khi mẫu màn hình được hiển thị, cũng như các trình giữ chỗ để chèn nội
dung bổ sung khi nội dung màn hình được gọi.

h Điều khiển đầu vào - Đừng nhầm lẫn với bộ điều khiển MVC (xem sau),
điều khiển đầu vào là các thành phần được thiết kế để sử dụng trong toàn bộ ứng dụng
phần mềm để ghi lại thông tin đầu vào của người dùng. Thiết kế của chúng có thể bao
gồm đánh dấu để cho phép thành phần xuất hiện hoặc hoạt động theo một cách cụ thể cũng
như có khả năng hiển thị bất kỳ dữ liệu nào được cung cấp trong điều khiển đầu vào.

195
Machine Translated by Google

h Đoạn nội dung - Loại chế độ xem này tồn tại để chuẩn hóa cách các loại nội dung cụ thể được trình bày

như một phần của màn hình ứng dụng phần mềm. Ví dụ về loại chế độ xem này có thể là mẫu thông báo,

trong đó chế độ xem được gọi với văn bản để hiển thị như một phần của thông báo; điều này sẽ rất

hữu ích trong việc hỗ trợ nhiều ngôn ngữ. Một ví dụ khác có thể là một menu được tạo sẵn để hiển

thị trong các phần khác nhau của ứng dụng phần mềm; cung cấp một sự đảm bảo cho tính nhất quán của

các tùy chọn có sẵn.

Thuận lợi
Việc sử dụng các dạng xem trong mã của bạn có nhiều lợi thế về khả năng bảo trì và tính nhất quán giúp bạn

có nhiều khả năng hơn để phản ứng với các thông số kỹ thuật của dự án đang phát triển.

h Tính nhất quán - Cung cấp sự đảm bảo cho mỗi phiên bản lặp lại của nội dung hoặc thành phần hình ảnh

nhất quán bất kể có bao nhiêu thay đổi đã được thực hiện.

Điều này trái ngược với phương pháp sao chép và dán, trong đó các phiên bản khác nhau có thể

trở nên không nhất quán khi các thay đổi được thực hiện đối với một phiên bản bị quên thực hiện

đối với các phiên bản khác đã được sao chép và dán. h Hiệu quả - Ngày càng tốn thời gian để cập

nhật hình ảnh

các thành phần và nội dung đã được sao chép trong toàn bộ hệ thống.

Điều này trở thành một vấn đề nghiêm trọng khi một thành phần như menu, bố cục thông báo hoặc

thiết kế màn hình được lặp lại hàng chục hoặc hàng trăm lần trong ứng dụng, đặc biệt nếu chúng

được cập nhật thường xuyên. Chế độ xem giải quyết vấn đề này bằng cách chỉ xác định các thành phần

một lần, nghĩa là mọi cập nhật được thực hiện ở một vị trí duy nhất để tự động cập nhật tất cả các

lần xuất hiện trong ứng dụng — bất kể nó được lặp lại mười, một trăm hay một nghìn lần.

h Khả năng thích ứng - Hiệu quả của việc thay đổi chế độ xem cũng ảnh hưởng đến khả năng thích ứng của

ứng dụng — cho dù đó là tính nhất quán của các bản nâng cấp hay cung cấp bản trình bày phù hợp với

các nền tảng cụ thể; chẳng hạn như cung cấp giao diện người dùng khác cho việc sử dụng điện thoại

thông minh và máy tính để bàn. Các bản cập nhật cho bản trình bày trực quan được coi là rủi ro quá

cao hoặc không thể đạt được trong thời gian hoặc ngân sách có sẵn có thể đạt được thông qua các yêu

cầu về thời gian tối thiểu và rủi ro liên quan có thể thực hiện được nhờ hiệu quả mà các chế độ xem

mang lại. Tốc độ mà điều này có thể đạt được cũng mở ra cơ hội cung cấp cho khách hàng các ví dụ về

cách các thay đổi trực quan trông như thế nào trong ứng dụng phần mềm trực tiếp mà không cần đầu tư

nhiều công sức.

h Khả năng kiểm tra - Việc loại bỏ trùng lặp làm giảm nhu cầu kiểm tra vì mọi thứ hoạt động với cùng cài

đặt trong một phần của ứng dụng phần mềm sẽ hoạt động với cùng cài đặt ở nơi khác trong ứng dụng phần

mềm. Kết quả của việc này là thử nghiệm ngắn hạn các yếu tố trực quan có thể được thử nghiệm ban đầu

trên một mẫu chức năng nhỏ, với thử nghiệm nặng chỉ được yêu cầu trước khi phát hành phần mềm.

196
Machine Translated by Google

Hình 9.7: Ví dụ về một trang được tạo từ nhiều khung nhìn. Trong trường hợp này, mẫu màn hình có một đoạn
mã nội dung và các điều khiển đầu vào được chèn vào đó.

MVC: Bộ điều khiển


Nếu phần mềm của bạn là một bộ phim, bộ điều khiển sẽ là đạo diễn. Vai trò của mỗi bộ điều khiển là
quản lý cách các mô hình và chế độ xem đang được sử dụng để đáp ứng với cách người dùng tương tác
với ứng dụng. Bộ điều khiển chỉ đạo những gì xảy ra - nhưng không phải làm thế nào, đó là trách
nhiệm đối với các mô hình (chức năng) và dạng xem (bản trình bày) mà chúng gọi.

Bộ điều khiển đang hoạt động

Với mỗi bộ điều khiển chịu trách nhiệm quản lý luồng hoạt động cho phần cụ thể của ứng dụng, cấu
trúc của bộ điều khiển điển hình sẽ giống như sau:

h Gọi chức năng của mô hình phù hợp với yêu cầu của bộ điều khiển. h Xác định đầu ra mặc

định bằng cách gọi chế độ xem mặc định và chức năng mô hình
nếu được yêu

cầu. h Lắng nghe một số loại đầu vào của người dùng.

197
Machine Translated by Google

h Xác định xem đầu vào của người dùng có phù hợp với tiêu chí cho phản ứng hay không; nếu vậy hãy làm một

trong những điều sau đây:

¾ Gọi chức năng mô hình được liên kết và sử dụng kết quả của nó trong nội dung

được tạo ra từ các khung nhìn để trình bày cho người

dùng. ¾ Chuyển hướng người dùng sang bộ điều khiển khác nếu được

yêu cầu. ¾ Xuất bất kỳ nội dung nào được tạo từ các khung nhìn và mô hình.

¾ Quyết định quay lại lắng nghe đầu vào của người dùng mới hay thoát ra.

Quá trình xử lý duy nhất được thực hiện bởi bộ điều khiển là chuyển chi tiết từ chức năng mô

hình sang chế độ xem và ngược lại được kích hoạt bởi đầu vào của người dùng.

Thuận lợi
Bộ điều khiển có một số mục đích mang lại lợi thế cho việc phát triển phần mềm:

h Tùy chỉnh chức năng của mô hình - Kết quả trả về từ mô hình

chức năng có thể được thao tác để phù hợp với mục đích cụ thể mà chúng đang được gọi mà không cần

thêm trực tiếp độ phức tạp không cần thiết vào mô hình. Điều này tránh mọi rủi ro phá vỡ khả năng

tương thích với các khu vực khác của mã sử dụng mô hình, do đó tránh đưa ra các yêu cầu thử nghiệm

bổ sung. Một ví dụ về điều này có thể là chuyển đổi dữ liệu được trả về từ chức năng của mô hình

thành JSON có thể được sử dụng với Javascript trong chế độ xem ứng dụng web.

h Kiểm soát chế độ xem - Bộ điều khiển có thể quyết định chế độ xem phù hợp nhất là gì để phù hợp với

tình huống. Trong nhiều trường hợp, bộ điều khiển sẽ chỉ có một chế độ xem mặc định để chọn,

nhưng trong các trường hợp khác, chế độ xem đã chọn có thể được quyết định bởi các điều kiện,

chẳng hạn như thông tin đầu vào nhận được từ người dùng hoặc phản hồi được đưa ra từ các mô hình.

Ví dụ: một mô hình trả về phản hồi cho biết người dùng đã cung cấp thông tin đúng/không chính

xác có thể được sử dụng để chọn chế độ xem phù hợp nhất cho phản hồi nội dung và bố cục trình

bày. Tương tự, bộ điều khiển có thể gọi các mô hình để xác định các đặc quyền được gán cho người

dùng; theo đó các chế độ xem được yêu cầu được gọi là nội tuyến mà phản hồi nhận được. Bộ điều

khiển có thể quyết định gọi các chế độ xem khác nhau cho thông báo và quyền truy cập vào chức
năng phần mềm bổ sung theo yêu cầu.

h Kết nối kết quả của nhiều chức năng mô hình - Một số chức năng xử lý dữ liệu có thể bao gồm một

số quy trình. Thay vì đặt mã trùng lặp trong chức năng mô hình, hệ thống có thể sử dụng bộ điều

khiển để gọi các phương thức mô hình riêng lẻ theo thứ tự chúng được yêu cầu. Điều này cho phép

bộ điều khiển chịu trách nhiệm chuyển kết quả giữa các mô hình theo bất kỳ thứ tự nào được yêu

cầu.

Cách tiếp cận sử dụng bộ điều khiển này để cho phép các mô hình giao tiếp với nhau cho phép có

nhiều chức năng nâng cao hơn từ một bộ mã được đơn giản hóa do khả năng giữ cho các mô hình và

chức năng của chúng được đơn giản hóa.

198
Machine Translated by Google

Hình 9.8: Bộ điều khiển đóng vai trò là người trung gian, quyết định cách thức các khung nhìn có thể chuyển thông tin đến các
mô hình và ngược lại. Nó cũng có thể được sử dụng để quyết định cách các mô hình được kết nối với các mô hình khác, cũng như kết
hợp các chế độ xem với các chế độ xem khác, cho phép chức năng nâng cao và trình bày từ mã được đơn giản hóa

Quản lý dữ liệu chiến lược


Mục đích cuối cùng của tất cả các ứng dụng phần mềm nghiêm túc là tạo ra kiến thức có tác động
tích cực đến thế giới thực. Một yếu tố chính ảnh hưởng đến sự thành công hay thất bại của hệ
thống thông tin là chất lượng dữ liệu mà chúng quản lý và tạo ra. Sự phụ thuộc của các hệ thống
phần mềm vào chất lượng dữ liệu dẫn đến các nguyên nhân nghiêm trọng cần quan tâm:

h Các dự án phần mềm hiện đại cần phải có tính linh hoạt cao để đáp ứng các yêu cầu thay
đổi của khách hàng; đặc biệt là những người chưa hiểu hết những gì họ cần. Cách tiếp
cận thông số kỹ thuật cố định được ủng hộ bởi mô hình thác nước không còn phù hợp với
hầu hết các dự án; mô hình thác nước là một tập hợp chính thức của các giai đoạn dự
án bắt đầu với việc xác định các yêu cầu và tiến tới thiết kế, thử nghiệm triển khai
và xem xét theo một thứ tự cố định.

h Rất hiếm khi khách hàng thông báo về các thay đổi đặc tả của họ liên quan đến toàn bộ
hệ thống phần mềm, nghĩa là họ sẽ yêu cầu các thay đổi đối với một phần cụ thể của hệ
thống mà không đề cập đến các khu vực khác cũng cần được cập nhật để đảm bảo tính nhất
quán trong toàn hệ thống .—điều này thường xuất phát từ giả định của họ rằng những gì
hiển nhiên theo quan điểm của họ sẽ hiển nhiên đối với những người đang phát triển hệ
thống.

Hệ quả của việc các dự án phần mềm trở nên linh hoạt kết hợp với giả định rằng khách hàng
thường đưa ra cách hiểu các yêu cầu của họ sẽ dẫn đến rủi ro cao hơn đối với sự không nhất quán
xảy ra theo thời gian. Ít nhất, điều này dẫn đến yêu cầu cao hơn đối với việc thử nghiệm để
đảm bảo rằng tất cả các sửa đổi được thực hiện một cách nhất quán trong toàn hệ thống.
Đây là một vấn đề bởi vì kiểm thử nghiêm ngặt chỉ có thể đảm bảo độ chính xác khi nhóm phát triển
phần mềm chia sẻ sự hiểu biết giống như khách hàng và khi có cả thời gian và ngân sách để đầu tư
cho mức độ kiểm thử cần thiết.

199
Machine Translated by Google

Tính nhất quán của giao diện người dùng với ràng buộc dữ liệu
Liên kết dữ liệu là một tính năng có thể được tích hợp vào mã của bạn để đảm bảo tính nhất
quán của dữ liệu ở bất cứ nơi nào nó được trình bày hoặc thay đổi thông qua giao diện người
dùng của ứng dụng phần mềm của bạn. Khả năng kết nối dữ liệu trực tiếp với các thành phần giao
diện người dùng mang lại nhiều lợi thế để chống lại nguy cơ trình bày và quản lý dữ liệu trở
nên không nhất quán thông qua phát triển nhanh:

h Dễ dàng quản lý các thành phần giao diện người dùng như hộp nhập văn bản, nút radio,
danh sách và trình bày văn bản.

¾ Xác định mối quan hệ giữa dữ liệu và một thành phần giao diện người dùng cung
cấp để đảm bảo tính nhất quán cho việc trình bày và thu thập dữ liệu trên toàn
hệ thống. Khi dữ liệu được trình bày thông qua một thành phần giao diện người
dùng được sửa đổi, hệ thống sẽ xác định tất cả các vị trí khác mà dữ liệu được
trình bày trong hệ thống – và cập nhật các bản trình bày này bằng phiên bản
mới của dữ liệu. Mối quan tâm duy nhất của các nhà phát triển là đảm bảo rằng
mỗi mục dữ liệu được kết nối với các thành phần giao diện người dùng phù hợp
bằng cách sử dụng đúng chức năng. Đơn giản hóa mã để xử lý dữ liệu.

¾ Không còn lo lắng về việc phát triển bất kỳ loại mã nào cập nhật các thành
phần giao diện người dùng sau khi xử lý dữ liệu đã được thực hiện; liên kết
dữ liệu sẽ tự động xác định các thành phần giao diện người dùng cần được cập
nhật khi một mục dữ liệu bị thay đổi.

h Giảm thử nghiệm và phân tích.

¾ Với ràng buộc dữ liệu quan tâm đến mối quan hệ giữa các mục dữ liệu và các
thành phần giao diện người dùng được liên kết của chúng, các nhà phát triển
không cần quan tâm đến tác động rộng lớn hơn của các yêu cầu thay đổi vì mã
có thể quản lý tính nhất quán trong toàn bộ ứng dụng.
Ngoài việc giảm bớt trách nhiệm này của các lập trình viên, nó còn là một
lợi thế cho các nhà phát triển mới tham gia dự án, những người ban đầu có
thể không biết về cách các phần khác nhau của phần mềm chia sẻ cùng một nguồn
dữ liệu; do đó làm giảm rủi ro cho các lỗi mới được giới thiệu.

Liên kết dữ liệu là một thông lệ phổ biến trong phát triển phần mềm, do đó, rất có thể bạn sẽ
có thể triển khai tính năng này trong mã của mình với nỗ lực tối thiểu bằng cách sử dụng thư
viện/khung công tác của bên thứ ba hoặc trực tiếp thông qua ngôn ngữ lập trình bạn đang sử dụng.
Ví dụ: các ứng dụng web sử dụng Javascript có thể sử dụng một trong nhiều thư viện và khung
như AngularJS hỗ trợ liên kết dữ liệu dễ dàng; hoặc đối với các trình duyệt hỗ trợ nó, phương
thức Object.proxy() gốc có thể được sử dụng để liên kết dữ liệu mà không cần tích hợp bất kỳ
thành phần bên thứ ba nào. Có thể sử dụng các công cụ như Modernizr (www.modernizr.com) và Kangax
(kangax.github.io) để phát hiện xem các tính năng Javascript có khả dụng từ trình duyệt hay
không, từ đó cho phép bạn viết mã dự phòng khi viết mã khi các tính năng không khả dụng; có rất
nhiều cái gọi là polyfill có sẵn trực tuyến cho các tính năng HTML5 và Javascript mới hơn.

200
Machine Translated by Google

Đối với các dự án cần triển khai phiên bản liên kết dữ liệu tùy chỉnh, sơ đồ sau đây mô
tả một mô hình có thể được sử dụng:

Hình 9.9: Liên kết dữ liệu hai chiều đảm bảo rằng cả phần trình bày trực quan và dữ liệu liên quan của chúng luôn được
cập nhật bất kể chúng có thể thay đổi như thế nào.

Ví dụ: Khách hàng yêu cầu thêm một số trường thông tin hiện có vào màn hình trong ứng dụng
của họ. Không đề cập đến cách thêm các trường này cũng xuất hiện ở nơi khác trong ứng dụng,
do đó các trường được thêm vào mà không cần xem xét thêm. Sau khi trình bày bản cập nhật cho
khách hàng, có khiếu nại rằng thông tin đã nhập trên màn hình không xuất hiện trong trường
"tương tự" được hiển thị trên các màn hình khác. Nếu không có ràng buộc dữ liệu, đây là một
vấn đề vì không có gì đảm bảo rằng lập trình viên sẽ biết vị trí của mọi thành phần giao diện
người dùng liên quan đã được đặt trong ứng dụng; đặc biệt nếu mã đã được tạo bởi các lập trình
viên không còn trong dự án. Sử dụng liên kết dữ liệu ngay từ đầu sẽ giải quyết vấn đề này bằng
cách đảm bảo rằng mọi phần tử giao diện người dùng cập nhật dữ liệu đính kèm của nó khi được
sửa đổi, cũng như cập nhật những gì nó thể hiện khi dữ liệu đính kèm của nó bị thay đổi. Điều
này có nghĩa là các thành phần giao diện người dùng sẽ tự động quản lý tính nhất quán của
chúng mà không cần sự tham gia của lập trình viên.

201
Machine Translated by Google

Tính nhất quán của cơ sở dữ liệu

Khi phần mềm của bạn sử dụng hệ thống quản lý cơ sở dữ liệu (DBMS) chẳng hạn như MySQL hoặc

Microsoft SQL Server, bạn nên sử dụng các thành phần này với toàn bộ tiềm năng của chúng. Việc sử

dụng đầy đủ các tính năng của cơ sở dữ liệu mang lại những lợi thế chính sau đây trong việc giữ cho mã

của bạn linh hoạt và nhất quán để quản lý dữ liệu:

h Tính nhất quán của dữ liệu và quá trình xử lý dữ liệu có thể được đảm bảo cho các ứng

dụng phần mềm tồn tại ở nhiều dạng, chẳng hạn như các ứng dụng riêng biệt cho web,

thiết bị di động và máy tính để bàn. Điều này là do tất cả các phiên bản của phần mềm

chia sẻ cùng một nguồn dữ liệu và sẽ nhận được kết quả giống nhau bất kể quy tắc xử lý

dữ liệu có thể thay đổi như thế nào theo thời gian.

h Việc quản lý dữ liệu được duy trì tập trung và giới hạn trong một hệ thống, nghĩa là bất kỳ thay

đổi nào đối với quy tắc xử lý dữ liệu đều có thể được giữ nhất quán trong tất cả các trường

hợp mà dữ liệu được gọi — đặc biệt là khi ứng dụng phần mềm của bạn tồn tại ở nhiều dạng,

chẳng hạn như ứng dụng riêng cho web, thiết bị di động và máy tính để bàn.

h Giảm rủi ro của các yêu cầu thay đổi dành riêng cho quản lý dữ liệu

dẫn đến các lỗi mới được đưa vào các khu vực khác trong mã của bạn. Giữ logic xử lý dữ

liệu của bạn chỉ giới hạn trong cơ sở dữ liệu có nghĩa là các quy tắc xử lý dữ liệu có thể

được cập nhật mà không cần thay đổi mã ứng dụng chính của bạn.

h Cải thiện thời gian phản hồi đối với các yêu cầu thay đổi quản lý dữ liệu bằng cách loại bỏ

các yêu cầu không cần thiết để sao chép chức năng dữ liệu trong các phiên bản khác nhau của

ứng dụng.

h Cải thiện hiệu quả, bao gồm giảm các yêu cầu thử nghiệm, dẫn đến giảm

chi phí phát triển và nhiều thời gian hơn để đầu tư vào các lĩnh vực khác của dự án phần mềm.

Hiệu quả có thể được cải thiện hơn nữa nhờ khả năng triển khai một chuyên gia cơ sở dữ liệu

để quản lý cơ sở dữ liệu.

Công cụ cơ sở dữ liệu quan hệ

Có một số tính năng thường có sẵn trong các hệ thống quản lý cơ sở dữ liệu chính thống có thể được

sử dụng để quản lý phần lớn, nếu không muốn nói là tất cả, quá trình xử lý dữ liệu của ứng dụng của

bạn:

h Lượt xem: Cho phép bạn xác định cách dữ liệu được chọn từ nhiều bảng bằng cách sử dụng bất kỳ

quy tắc bạn muốn áp dụng để hạn chế kết quả tìm kiếm.

¾ Rất hữu ích cho các tình huống mà dữ liệu mà ứng dụng của bạn yêu cầu được phân

phối trên nhiều bảng, cho phép bạn giữ logic ứng dụng chính của mình đơn giản

bằng cách gọi dạng xem giống như cách nó sẽ gọi trực tiếp bất kỳ bảng cơ sở dữ

liệu nào—giữ cho việc quản lý dữ liệu chỉ giới hạn ở chế độ xem được xác định bên
trong cơ sở dữ liệu.

202
Machine Translated by Google

¾ Giữ cho kiến trúc cơ sở dữ liệu của bạn có thể duy trì được bằng cách tránh phải sao

chép logic của dạng xem trong toàn bộ cơ sở dữ liệu. Bằng cách có logic chế độ xem

được chứa ở một vị trí trung tâm, các bản cập nhật có thể được thực hiện cho chế độ

xem với sự đảm bảo rằng tất cả các phụ thuộc sẽ tự động được cập nhật. ¾ Cung cấp cơ

hội để kiểm soát quyền truy cập vào dữ liệu được gọi bởi những người dùng khác nhau hoặc

các phần của ứng dụng mà bạn có thể muốn xác định các quy tắc khác nhau để truy cập,

logic hoặc định dạng.

¾ Cung cấp tính linh hoạt để điều chỉnh cơ sở dữ liệu mà không ảnh hưởng đến ứng dụng

phần mềm chính — hữu ích cho các tình huống khi ứng dụng đã được đưa vào sử dụng

sản xuất và phân phối cho người dùng thực, nhưng khi khách hàng vẫn cần sửa đổi

cách quản lý dữ liệu.

h Thủ tục được lưu trữ: Đây là các hàm chương trình con có thể được gọi với

tham số để sử dụng trong xử lý của họ. Các tham số, nếu được cung cấp, có thể được sử dụng

như một phần logic của chương trình con, chẳng hạn như đối với các điều kiện của dữ liệu

được gọi từ bảng và dạng xem. Kết quả của các cuộc gọi dữ liệu này cũng có thể được xử lý

bởi chương trình con trước khi chúng được trả về – hoặc đơn giản được sử dụng như một phần
của các cuộc gọi dữ liệu bổ sung.

¾ Cho phép bạn đơn giản hóa cơ sở mã ứng dụng chính bằng cách giới hạn logic cụ thể

để quản lý dữ liệu trong cơ sở dữ liệu.

¾ Mã ứng dụng được đơn giản hóa giúp giảm rủi ro lỗi và tăng năng suất phát

triển. ¾ Quản lý dữ liệu tập trung trực tiếp từ cơ sở dữ liệu giúp loại bỏ

sao chép chức năng xử lý dữ liệu mà lẽ ra sẽ tồn tại trong nhiều phiên bản của ứng

dụng phần mềm. Điều này dẫn đến giảm thời gian và chi phí phát triển, bảo trì và thử

nghiệm.

h Trình kích hoạt: Đây là một loại chức năng khác có thể được nhúng trong cơ sở dữ liệu, nhưng đặc

biệt để phản ứng với các sự kiện xảy ra — không giống như các thủ tục được lưu trữ, thủ tục

này phải được gọi theo cách thủ công.

¾ Lý tưởng để đảm bảo tính nhất quán của dữ liệu:

Áp dụng các quy tắc xác thực đối với dữ liệu được chèn và cập nhật trong cơ sở
dữ liệu.

Chuẩn bị các bản ghi dữ liệu bổ sung khi dữ liệu mới được chèn vào—ví dụ: tạo

vai trò công việc mới cho mỗi bản ghi nhân viên được tạo.

¾ Cho phép định dạng dữ liệu trước khi đưa vào cơ sở dữ liệu.

Lý tưởng để bảo mật đầu vào của người dùng có thể gây hại khi xuất ra— ví dụ: loại

bỏ Javascript có thể gây hại cho các ứng dụng web.

Đảm bảo rằng các loại dữ liệu đầu vào cụ thể là thực tế — ví dụ: các số phải nằm

trong một phạm vi cụ thể.

203
Machine Translated by Google

h Mối quan hệ: Việc xác định việc quản lý dữ liệu quan hệ trong cấu trúc cơ sở dữ
liệu của bạn cho phép cơ sở dữ liệu và ứng dụng phần mềm được đơn giản hóa.

¾ Tránh trẻ mồ côi (các bản ghi dữ liệu dư thừa còn lại sau khi cha mẹ của chúng đã
bị xóa) bằng cách sử dụng ràng buộc kết hợp với để làm và
cho cơ sở dữ liệu biết các bản ghi dữ liệu có liên quan như thế nào

— và đến lượt cách tự động xóa dữ liệu con khi cha mẹ bị xóa. Điều
này cho phép bạn:

¾ Đảm bảo tính toàn vẹn của dữ liệu của bạn bằng cách đảm bảo tránh dữ liệu mồ

côi. ¾ Đơn giản hóa cấu trúc cơ sở dữ liệu của bạn bằng cách giảm nhu cầu về các
trình kích hoạt phức tạp và các thủ tục được lưu trữ. ¾ Đơn giản hóa mã ứng

dụng phần mềm của bạn bằng cách giảm nhu cầu gọi nhiều thủ tục được lưu trữ và/hoặc
thực hiện kiểm tra thủ công trên cơ sở dữ liệu.

SQL cho cơ sở dữ liệu quan hệ sử dụng các ràng buộc này sẽ trông giống như ví dụ sau
xác định bảng ở giữa mô tả mối quan hệ giữa danh mục và mục — sử dụng để tuyên bố rằng
,
bản ghi hiện tại sẽ bị xóa nếu bản ghi nước ngoài và
được liên kết
mục
của
hoặc
chúng
mụctrong
bảng danh
bị xóa:

TẠO BẢNG danh mục_mục (


categoryID int unsigned not null, itemID int
unsigned not null,
KHÓA CHÍNH (ID danh mục, ID mặt hàng),
KHÓA NGOẠI TỆ (ID danh mục)
Danh mục TÀI LIỆU THAM KHẢO (id)
TRÊN XÓA CASCADE,
KHÓA NGOẠI TỆ (itemID)
TÀI LIỆU THAM KHẢO mục (id)
TRÊN XÓA CASCADE

);

NoSQL: Các lựa chọn thay thế cho cơ sở dữ liệu quan hệ Phát

triển cơ sở dữ liệu theo truyền thống đồng nghĩa với thiết kế quan hệ cấu trúc cố định
và sử dụng SQL, một ngôn ngữ để xác định và truy vấn cơ sở dữ liệu quan hệ.
Cách tiếp cận này có lợi thế là dễ dàng truy cập dữ liệu và cách tiếp cận kiểu thác nước trường học cũ

đối với phát triển phần mềm trong đó các thông số kỹ thuật của dự án được cố định trước khi bắt đầu bất

kỳ quá trình phát triển phần mềm nào, nhưng có thể gây ra các vấn đề và sự kém hiệu quả đối với các dự án

linh hoạt, nơi thường xuyên lặp lại và thay đổi thông số kỹ thuật.

204
Machine Translated by Google

Gần đây, các cách tiếp cận mới để xác định cơ sở dữ liệu đã được phát triển phù hợp hơn với các cách
tiếp cận linh hoạt để phát triển phần mềm, cuối cùng mang lại sự linh hoạt hơn khi xác định và truy
cập dữ liệu. Các loại cơ sở dữ liệu mới này được gọi là NoSQL, hoặc Not Only SQL, thay vì là một thể
loại của một phương pháp duy nhất để phát triển cơ sở dữ liệu như cơ sở dữ liệu quan hệ thực hiện
thông qua SQL, cách tiếp cận NoSQL bao gồm bốn cách tiếp cận để phát triển cơ sở dữ liệu:

h Lưu trữ khóa/giá trị: Loại lưu trữ dữ liệu đơn giản nhất, bao gồm một tệp dữ liệu
cấu trúc trong đó mỗi phần tử có một khóa tham chiếu duy nhất được sử dụng để truy cập mục
dữ liệu. Các giá trị dữ liệu được lưu trữ trong loại cơ sở dữ liệu này có thể là chuỗi, số
nguyên hoặc số dấu phẩy động — các ngôn ngữ như PHP và Javascript cho phép lưu trữ dữ liệu
nâng cao hơn bằng cách chuyển đổi dữ liệu đối tượng thành biểu diễn chuỗi JSON hoặc XML để
lưu trữ và chuyển đổi các chuỗi này trở lại thành các đối tượng khi các giá trị chính của
chúng được yêu cầu. Đây là một giải pháp dễ quản lý để quản lý các đối tượng dữ liệu nhỏ,
nhưng ngày càng trở nên kém hiệu quả khi độ phức tạp của các đối tượng dữ liệu tăng lên.

h Cơ sở dữ liệu tài liệu: Các định dạng dữ liệu hiện đại như XML và JSON giúp có thể mô tả

dữ liệu phức tạp ở định dạng có thể tìm kiếm được, nghĩa là các tài liệu thông tin được
tạo ở các định dạng này có thể được kết hợp để tạo thành cơ sở dữ liệu thông tin. Đây là

bước tiếp theo từ cơ sở dữ liệu khóa/giá trị, bổ sung khả năng cho các giá trị lồng nhau
được liên kết với từng khóa và cung cấp các tính năng tốt hơn để tìm kiếm dữ liệu. Một
điều đáng quan tâm đối với bất kỳ ai sử dụng các định dạng này để mô tả dữ liệu là các hệ
thống cơ sở dữ liệu nguồn mở phổ biến bao gồm MySQL và Postgres đã bắt đầu hỗ trợ phân tích
cú pháp các chuỗi dữ liệu JSON; nghĩa là bạn có thể tạo một cơ sở dữ liệu quan hệ lưu trữ dữ
liệu tài liệu/đối tượng JSON có thể được truy vấn như một phần của yêu cầu SQL — đọc thêm về
điều này sau.

h Cơ sở dữ liệu đồ thị: Cách tiếp cận cơ sở dữ liệu này dựa trên việc tạo mô hình dữ liệu bao
gồm các nút riêng lẻ chứa dữ liệu và kết nối với các nút dữ liệu liên quan khác. Các nút
này có thể tồn tại trên cùng một hệ thống hoặc trên một máy chủ khác, do đó cho phép cơ
sở dữ liệu được phân phối trên nhiều hệ thống để dễ dàng mở rộng.

h Cơ sở dữ liệu hướng cột: Những cơ sở dữ liệu này được thiết kế để lưu trữ dung lượng lớn
lượng dữ liệu có thể được phân phối trên nhiều máy theo cách hiệu quả hơn so với cơ sở dữ
liệu quan hệ dựa trên hàng cột. Cách tiếp cận lưu trữ dữ liệu của họ sử dụng các đối tượng
được xác định thông qua các định dạng như JSON, với các khóa tham chiếu riêng lẻ được tạo
từ sự kết hợp của một khóa duy nhất (tương đương với tên bảng trong cơ sở dữ liệu quan hệ)
và khóa tham chiếu mục (tương đương với khóa chính trong cơ sở dữ liệu quan hệ). cơ sở dữ
liệu) kết hợp để cung cấp tham chiếu đến một đối tượng dữ liệu riêng lẻ. Sau đó, các đối
tượng dữ liệu này có dữ liệu được lưu trữ dưới dạng các mục trường (được gọi là cột) và các
nhóm trường dữ liệu (được gọi là họ cột)—những dữ liệu này được cấu trúc giống như cách bạn
xem xét việc tạo tài liệu JSON hoặc XML thông thường, chẳng hạn như các tài liệu được sử dụng
trong cơ sở dữ liệu tài liệu .

205
Machine Translated by Google

Theo mặc định, cơ sở dữ liệu quan hệ thường khó mở rộng quy mô hơn, điều này không tốt khi hệ
thống của bạn mở rộng từ việc xử lý lượng dữ liệu nhỏ sang lượng lớn theo cách mà Facebook đã
làm. Có nhiều cách giải quyết vấn đề này nếu bạn có kỹ năng, thời gian và/hoặc thiên hướng tìm
hiểu về cấu hình của các cụm cơ sở dữ liệu; đây là nơi bạn trải rộng hệ thống cơ sở dữ liệu của
mình trên nhiều máy chủ cơ sở dữ liệu và đồng bộ hóa chúng để hoạt động cùng nhau, do đó tránh
được các giới hạn mặc định bằng cách trải rộng khối lượng công việc. Các công cụ như Amazon RDS
cũng giúp giảm thiểu công việc cần thiết để quản lý phương pháp tiếp cận này đối với khả năng mở
rộng của cơ sở dữ liệu quan hệ.

Cơ sở dữ liệu NoSQL có lợi thế tự nhiên trong lĩnh vực này vì thiết kế không liên quan của
chúng cho phép dữ liệu của chúng được phân phối trên nhiều máy/máy chủ mà không cần thêm độ
phức tạp vào mã phần mềm của bạn. Mặc dù điều này có thể đạt được với các hệ thống cơ sở dữ liệu
quan hệ, nhưng điều này đi kèm với nhu cầu bổ sung để bạn phát triển độ phức tạp trong cơ sở mã
hoặc quản lý máy chủ của mình để quản lý khả năng liên kết và đồng bộ hóa dữ liệu được lưu trữ
trong các cơ sở dữ liệu khác nhau trên các máy chủ khác nhau. Hãy nhớ rằng, độ phức tạp thêm vào
không bao giờ là tốt vì nó làm tăng nguy cơ lỗi, chi phí phát triển và yêu cầu về thời gian.

Với dữ liệu NoSQL dựa trên cách các đối tượng được lập mô hình thông qua JSON và XML, một ưu điểm
bổ sung của phương pháp này là khả năng truyền dữ liệu đối tượng được tạo trong mã để lưu trữ
trong cơ sở dữ liệu mà không cần sửa đổi; không giống như cơ sở dữ liệu quan hệ, nơi dữ liệu của
một đối tượng ít nhất sẽ được lưu trữ trong các trường riêng biệt và có thể trong các bảng riêng
biệt. Cách tiếp cận NoSQL không chỉ đơn giản hóa việc lưu trữ dữ liệu từ ứng dụng của bạn, dữ
liệu này có thể được truy xuất mà không cần sửa đổi, mà còn cho phép bạn thực hiện các thay đổi
đối với dữ liệu đối tượng của mình mà không cần quan tâm đến việc cập nhật cơ sở dữ liệu — các
đối tượng mà trường bị thiếu sẽ không dẫn đến cơ sở dữ liệu trả về lỗi, do đó điều này lý tưởng
cho các dự án linh hoạt nơi các tính năng dữ liệu mới được thêm vào khi dự án tiến triển.

SQL và NoSQL: Tốt nhất của cả hai Mặc dù cơ sở dữ liệu

NoSQL có lợi thế hơn so với cơ sở dữ liệu quan hệ truyền thống về khả năng mở rộng và giữ cho
các dự án linh hoạt, điều này không có nghĩa là các phương pháp tiếp cận NoSQL là một giải
pháp hoàn hảo cho các yêu cầu quản lý dữ liệu của phần mềm của bạn, cũng như cơ sở dữ liệu
quan hệ không được coi trọng như một lựa chọn. Đối với tất cả những ưu điểm mà phương pháp
NoSQL có thể mang lại cho việc phát triển cơ sở dữ liệu, vẫn còn những nhược điểm lớn mà cơ sở
dữ liệu quan hệ thường coi là đương nhiên:

h Tính nhất quán của dữ liệu: Cách tiếp cận NoSQL đối với thiết kế cơ sở dữ liệu dựa trên các
tập hợp dữ liệu được kết xuất vào cơ sở dữ liệu mà không cần đảm bảo tính nhất quán
trong cách cấu trúc và xác định dữ liệu. Việc thiếu thực thi tính nhất quán này có thể
dẫn đến trùng lặp dữ liệu và kết quả tìm kiếm không nhất quán do thiếu chức năng cơ sở
dữ liệu quan hệ như tham gia.

h Phân tích khó khăn: Không nhất quán và thiếu cơ cấu chính thức có hiệu lực để
dữ liệu có thể gây khó khăn cho việc phân tích dữ liệu — đặc biệt là khi cơ sở dữ liệu
NoSQL thường thiếu các phương pháp để phân tích dữ liệu thông qua ngôn ngữ truy vấn dễ
sử dụng và hiệu quả như SQL.

206
Machine Translated by Google

Hơn nữa, không phải tất cả các dự án đều yêu cầu đầy đủ các lợi thế mà phương pháp NoSQL mang lại cho việc

quản lý dữ liệu; đặc biệt là đối với các dự án quy mô nhỏ được biết là duy trì quy mô nhỏ và trong đó các

yêu cầu dữ liệu của chúng hầu hết được cố định theo một thông số kỹ thuật tiêu chuẩn sẽ luôn giữ nguyên. Ví

dụ về điều này là loại chức năng được yêu cầu bởi các trang web thương mại điện tử quy mô nhỏ, có xu hướng

dựa trên các hệ thống nguồn mở tiêu chuẩn và có ít hoặc không có yêu cầu sửa đổi ngoài thiết lập ban đầu

của chúng. Do đó, không có gì ngạc nhiên khi việc áp dụng các phương pháp tiếp cận NoSQL cho một số loại dự

án sẽ là quá mức cần thiết dẫn đến sự phức tạp không cần thiết thông qua việc mất các tính năng phân tích

và quản lý dữ liệu có sẵn theo mặc định trong các hệ thống cơ sở dữ liệu quan hệ như MySQL.

RDMS với NoSQL Không có quy tắc nào

nói rằng các hệ thống phần mềm cần dựa vào một chiến lược quản lý dữ liệu duy nhất, đó chính xác là

trường hợp sử dụng các hệ thống cơ sở dữ liệu quan hệ và các phương pháp tiếp cận NoSQL để quản lý dữ

liệu. Một số hệ thống cơ sở dữ liệu quan hệ phổ biến hiện cung cấp các tính năng để truy vấn dữ liệu NoSQL

được lưu trữ dưới dạng JSON hoặc XML trong các trường văn bản hoặc blob.

Điều này cung cấp khả năng cho phần mềm của bạn sử dụng cả kỹ thuật quản lý dữ liệu quan hệ và NoSQL từ cùng

một hệ thống cơ sở dữ liệu.

Cơ sở dữ liệu ngoại tuyến so với cơ sở dữ liệu trực tuyến

Các ứng dụng phần mềm được kết nối Internet có tùy chọn lưu trữ dữ liệu trực tuyến hoặc trên thiết bị chủ

của chúng. Tùy chọn nào là tốt nhất phụ thuộc vào mục đích của ứng dụng phần mềm và cách nó được sử dụng.

Cân nhắc bao gồm:

h Tính sẵn có của tài nguyên máy chủ: ¾

Vấn đề: Không phải dự án nào cũng có quyền truy cập vào tài nguyên phần cứng cần thiết để

cung cấp quyền truy cập đầy đủ vào cơ sở dữ liệu trực tuyến. Điều này đặc biệt đúng đối

với các dự án cung cấp các tính năng có thể khiến người dùng tạo ra khối lượng dữ liệu

lớn. Đổi lại, các tính năng này làm tăng chi phí máy chủ thông qua các yêu cầu gia tăng

về lưu trữ và xử lý dữ liệu. ¾ Giải pháp: Cơ sở dữ liệu ngoại tuyến có thể được sử

dụng một phần hoặc toàn bộ để giảm hoặc loại bỏ nhu cầu lưu trữ và xử lý dữ liệu được thực

hiện trên máy chủ; do đó chuyển giao trách nhiệm này cho thiết bị của người dùng, giúp

loại bỏ chi phí vận hành của chủ sở hữu dự án đối với việc lưu trữ và xử lý dữ liệu.

h Phụ thuộc vào khả năng truy cập dữ liệu.

¾ Vấn đề: Dữ liệu được lưu trữ trực tuyến sẽ không thể truy cập được nếu không có kết

nối Internet. Đây không phải là vấn đề lớn đối với các hệ thống dựa trên truy cập

Internet có dây hoặc wifi ở vị trí cố định, nơi sẽ luôn có khả năng truy cập Internet

chắc chắn cao, nhưng điều này không thể được đảm bảo cho các ứng dụng dựa trên thiết

bị di động đang được sử dụng khi đang di chuyển, do đó, bất kỳ sự phụ thuộc nào của

việc truy cập dữ liệu trực tuyến đều có thể hạn chế hoặc làm tê liệt khả năng hoạt

động chính xác của ứng dụng phần mềm.

207
Machine Translated by Google

¾ Giải pháp: Cung cấp tính năng lưu trữ dữ liệu ngoại tuyến tạm thời khi không có kết
nối Internet có thể cho phép ứng dụng phần mềm tiếp tục hoạt động cho đến khi kết
nối Internet được thiết lập lại. Trong trường hợp này, mọi dữ liệu được tạo ra sẽ
được gửi trực tuyến để được xử lý và đồng bộ hóa.

h Số người sẽ đóng góp hoặc thay đổi dữ liệu.

¾ Vấn đề: Cần đảm bảo rằng những người dùng khác nhau có thể xem phiên bản mới nhất

của dữ liệu, đặc biệt khi dữ liệu có thể được sửa đổi bởi nhiều người dùng. ¾
Giải pháp: Cơ sở dữ liệu ngoại tuyến chủ yếu phù hợp khi có nhiều người dùng

thực hiện cập nhật của họ từ cùng một thiết bị mà không cần gửi dữ liệu ở nơi khác.
Bất kỳ tình huống nào khác liên quan đến nhiều người truy cập, đóng góp hoặc thay đổi

dữ liệu sẽ phù hợp hơn khi được quản lý bởi cơ sở dữ liệu trực tuyến có thể truy cập
các yêu cầu và cung cấp dữ liệu cho nhiều người dùng bằng bất kỳ loại thiết bị nào.

h Yêu cầu đối với các phiên bản tùy chỉnh của dữ liệu cho người dùng cá nhân.

¾ Vấn đề: Các hệ thống cung cấp khả năng lưu trữ dữ liệu tùy chỉnh cho người dùng
cá nhân sẽ làm tăng độ phức tạp của thiết kế, dẫn đến tăng thời gian, chi phí và
rủi ro liên quan đến việc bảo trì và quản lý cơ sở dữ liệu.

¾ Giải pháp: Các tính năng dữ liệu tùy chỉnh có thể được triển khai trong một cơ sở

dữ liệu riêng biệt; đặc biệt là khi cơ sở dữ liệu chính trực tuyến, việc sử dụng
cơ sở dữ liệu ngoại tuyến có thể được sử dụng để lưu trữ dữ liệu cụ thể cho từng

người dùng cho đến khi, nếu có, nó sẵn sàng được xuất bản lên cơ sở dữ liệu chính
nơi nó có thể trở thành một phần của dữ liệu tiêu chuẩn cung cấp cho nhiều người

dùng có quyền truy cập dữ liệu.

h Khối lượng dữ liệu được truy cập.

¾ Vấn đề: Một lượng lớn dữ liệu được truy cập từ cơ sở dữ liệu trực tuyến sẽ gây ra thời
gian chờ đợi cho người dùng. Điều này có thể trở nên khó chịu nếu một lượng lớn dữ

liệu thường xuyên được truy cập, dẫn đến ứng dụng phần mềm có vẻ chậm và không phản
hồi.

¾ Giải pháp: Truy cập vào dữ liệu được lưu trữ cục bộ sẽ luôn nhanh hơn truy cập vào
dữ liệu trực tuyến, vốn phải di chuyển hàng trăm hoặc hàng nghìn dặm qua Internet.

Việc sử dụng cơ sở dữ liệu ngoại tuyến để lưu vào bộ đệm dữ liệu được truy cập

thường xuyên từ cơ sở dữ liệu trực tuyến sẽ tạo ra khả năng truy cập tức thì vào

dữ liệu, do đó giảm thời gian tải xuống mức mà người dùng có thể không nhận thấy.

Mô hình nhất quán có thể được xác định bởi các vấn đề và giải pháp trên là cả cơ sở dữ liệu trực tuyến
và ngoại tuyến đều có thể được sử dụng để hỗ trợ lẫn nhau nhằm đạt được kết quả tốt nhất.

Các trình duyệt web hiện đại cho phép điều này xảy ra đối với các ứng dụng dựa trên web thông qua bộ lưu
trữ cơ sở dữ liệu của trình duyệt có sẵn thông qua bộ nhớ cục bộ và API IndexedDB.

208
Machine Translated by Google

Kiến trúc hệ thống hướng API


Cách rõ ràng nhất để viết một ứng dụng phần mềm là phát triển toàn bộ logic được nhúng
vào ứng dụng. Cách tiếp cận này có lợi thế về sự phát triển nhanh chóng của dự án phần
mềm với sự phụ thuộc tối thiểu vào các hệ thống bên ngoài để giảm độ phức tạp, nhưng hạn
chế hiệu quả phát triển của dự án trong tương lai khi các tính năng phần mềm cần được chia
sẻ trên nhiều nền tảng. Hạn chế này có thể xuất hiện ở dạng có các phiên bản khác nhau của ứng
dụng dành cho máy tính để bàn, thiết bị di động và web hoặc ở dạng tích hợp vào các hệ thống
của bên thứ ba như trang web và phần mềm do các nhà phát triển phần mềm khác phát triển. Những
vấn đề này dễ dàng được giải quyết khi phần mềm của bạn được thiết kế dựa trên kiến trúc dựa
trên API (Giao diện lập trình ứng dụng).

Tại sao phải tạo API?


Vai trò của API là cung cấp dịch vụ dữ liệu cho các ứng dụng bên ngoài, trong đó ứng dụng
phần mềm của bạn sẽ là một trong số đó. Dịch vụ dữ liệu vừa cung cấp dữ liệu vừa xử lý dữ
liệu để lưu trữ, nghĩa là chức năng được phát triển trong API của bạn không cần phải sao chép
trên nhiều phiên bản ứng dụng của bạn. Cách tiếp cận này cung cấp một số lợi thế:

h Giảm thời gian và chi phí phát triển dài hạn.

¾ Sau khi một tính năng được phát triển thành API, tính năng đó có sẵn để
tích hợp vào bất kỳ hệ thống bên ngoài nào mà không cần phát triển thêm
tính năng; thời gian bổ sung duy nhất cần thiết là để tích hợp API vào ứng
dụng bên ngoài. Các thành phần của tích hợp này có thể được tạo thành mã có
thể tái sử dụng để sử dụng trên nhiều dự án có chung kiến trúc và/hoặc ngôn
ngữ lập trình tương thích.

h Giảm các yêu cầu thử nghiệm.

¾ Việc loại bỏ nhu cầu tạo lại chức năng trên nhiều
nền tảng/hệ thống có nghĩa là cũng có thể tránh được nhu cầu lặp lại thử
nghiệm của phiên bản được phát triển riêng. Yêu cầu thử nghiệm duy nhất là
đảm bảo rằng việc tích hợp API đã được thực hiện chính xác.

h Đảm bảo tính nhất quán trên tất cả các hệ thống.

¾ Các dịch vụ dữ liệu được cung cấp thông qua API sẽ nhất quán, bất kể loại hệ
thống nào đang gửi và/hoặc gọi dữ liệu. Điều này có nghĩa là có sự đảm bảo
rằng tất cả các hệ thống đều được đối xử bình đẳng đối với kết quả mà chúng
nhận được. Những hệ thống này làm gì với dữ liệu là một vấn đề riêng biệt—
tức là liệu chúng có thực hiện xử lý dữ liệu bổ sung tách biệt với những gì
được cung cấp từ API hay không.

209
Machine Translated by Google

h Kiểm soát chức năng dữ liệu.

¾ Với chức năng xử lý dữ liệu được tách biệt khỏi chức năng chính

ứng dụng phần mềm, có nhiều quyền kiểm soát hơn để thay đổi các quy tắc quy định dữ
liệu nào được cung cấp. Điều này hữu ích cho các tình huống chẳng hạn như khi các

thay đổi trong chính sách hoặc luật của tổ chức ảnh hưởng đến dữ liệu nào sẽ có thể

truy cập được; một cách tiếp cận tập trung để cung cấp dữ liệu thông qua API cho

phép các thay đổi chính sách này được thực thi một cách hiệu quả và nhất quán trên

tất cả các phiên bản của ứng dụng và cho tất cả người dùng. Do đó, chi phí phát triển

và thử nghiệm giảm đáng kể. Mặc dù việc sử dụng phương pháp tiếp cận dựa trên API để

phát triển phần mềm của bạn có thể tốn thêm thời gian trong thời gian ngắn, nhưng lợi

ích mang lại nhiều hơn trong dài hạn cho bất kỳ dự án phần mềm nào cần phân phối dữ

liệu chức năng trên nhiều hệ thống. Điều này cũng bao gồm các cơ hội để đảm bảo tính

nhất quán và kiểm soát việc phân phối dữ liệu cho những người dùng có cài đặt riêng của

cùng một ứng dụng phần mềm.

Cung cấp dữ liệu


Mặc dù có nhiều cách để phân phối và chấp nhận dữ liệu từ API của bạn, nhưng phương pháp dễ dàng nhất để

triển khai cũng như tích hợp vào các ứng dụng phần mềm bên ngoài sẽ là thông qua HTTP. Phương pháp phát

triển API này dựa trên việc tạo đầu ra văn bản thuần túy phục vụ cho các ứng dụng phần mềm sử dụng API.

Cách tiếp cận này rất dễ thiết lập và cũng được hưởng lợi từ sự sẵn có của các mã HTTP tiêu chuẩn cho biết

các lỗi như 404 khi không có gì có sẵn từ một URL được chỉ định.

Sau đây là ví dụ về phản hồi văn bản thuần túy có thể được gửi từ API dựa trên HTTP:

TRẢ LỜI:OK | ID=123 | HÀNG CẬP NHẬT=3

Ứng dụng khách sẽ đọc phản hồi này và xác định từng phần bằng cách sử dụng dấu "|" – có thể bằng cách

tách chuỗi thành một mảng. Vấn đề với cách tiếp cận này là không có ngữ cảnh nào được mô tả trong định

dạng của chuỗi văn bản. Điều này gây ra những nhược điểm sau:

Những thay đổi trong tương lai có thể phá vỡ khả năng tương thích với các hệ thống đã sử dụng API.

Các yêu cầu về dữ liệu trong tương lai có thể thay đổi, nghĩa là các loại dữ liệu hiện tại cho các tham số

có thể thay đổi. Yêu cầu này có thể gây ra sự cố trong đó các lập trình viên phải đối mặt với tùy chọn phá

vỡ khả năng tương thích với các hệ thống sử dụng API hoặc khiến API trở nên khó sử dụng hơn bằng cách thêm

các tham số không cần thiết.

Có thể trở nên khó khăn cho các lập trình viên sử dụng.

210
Machine Translated by Google

Ít nhất, một chuỗi dài không có định dạng khoảng trắng sẽ gây khó khăn cho lập trình viên khi phân
tích dữ liệu. Nếu phản hồi phải có các giá trị ở một vị trí cố định, điều này có nghĩa là các lập

trình viên cần phụ thuộc nhiều hơn vào việc tham khảo tài liệu, dẫn đến mất năng suất và tăng nguy
cơ mắc lỗi. Ngoài ra, định dạng văn bản không chuẩn có nghĩa là cần dành thời gian để phân tích cú

pháp định dạng chuỗi để thu thập dữ liệu; mà chính nó có thể có lỗi.

Khó mô tả thông tin phức tạp.

Thông tin đơn giản chẳng hạn như một số riêng lẻ hoặc một đoạn văn bản rất dễ mô tả, nhưng một số

thông tin yêu cầu kết hợp nhiều loại dữ liệu, bao gồm cả số và văn bản. Cách tiếp cận văn bản thuần
không theo tiêu chuẩn này đã hỗ trợ hạn chế cho điều này, nghĩa là API sẽ cần hạn chế cách nó mô tả dữ

liệu hoặc thêm độ phức tạp không cần thiết để tích hợp nó với các hệ thống bên ngoài.

May mắn thay, một số định dạng tiêu chuẩn đã được thiết kế để mô tả cấu trúc dữ liệu, ngữ cảnh

và dữ liệu thông qua văn bản thuần túy—lý tưởng để phân phối dữ liệu thông qua các API dựa trên HTTP.
Các định dạng phổ biến nhất trong số này là XML và JSON, như được minh họa trong các ví dụ sau:

<TRẢ LỜI>

<STATUS>OK</STATUS>
<ID>123</ID>
<UPDATED>3</UPDATED>
</TRẢ LỜI>
XML cho phép định dạng được thêm vào các giao tiếp dựa trên văn bản mà người nhận có thể xử lý dễ dàng.
Nó cũng linh hoạt để cho phép thay đổi thứ tự thông tin cũng như cho những bổ sung mới.

{
"type":"response",
"status":"ok",
"id":123, "updated":3

JSON là một định dạng khác cho phép giao tiếp dựa trên văn bản qua HTTP, dễ xử lý và linh hoạt cho các
thay đổi trong tương lai.

Mặc dù cả hai định dạng đều mang lại kết quả giống nhau, nhưng JSON có một số ưu điểm chính so
với XML:

h Hiệu quả tốt hơn.

¾ Yêu cầu ít ký tự văn bản hơn để mô tả cấu trúc dữ liệu, nghĩa là có thể truyền một

lượng lớn dữ liệu mà sử dụng ít không gian hơn.

¾ Kích thước truyền dữ liệu nhỏ hơn giúp tải xuống dữ liệu nhanh hơn với ít

Sử dụng băng thông. Điều này giúp giảm chi phí lưu trữ liên quan và cải thiện tốc

độ của chức năng phần mềm dựa trên dữ liệu từ API.

211
Machine Translated by Google

h Dễ dàng tích hợp vào Javascript.

¾ Web và các thành phần ứng dụng hỗn hợp được phát triển bằng cách sử dụng
Javascript có thể, nếu được coi là phù hợp, nhúng trực tiếp dữ liệu được cung
cấp dưới dạng JSON vào bất kỳ mã nào mà không cần ứng dụng/máy chủ phần mềm cần
phân tích cú pháp dữ liệu trước đó, do đó có nghĩa là yêu cầu xử lý ít hơn.

Chính vì những lý do này mà nhiều API dịch vụ web mới hơn chẳng hạn như API được cung cấp
qua Facebook và Twitter dựa trên JSON chứ không phải XML.

Phát triển API dựa trên HTTP


Với mục đích của API là cung cấp giao diện giữa các tính năng dữ liệu dựa trên máy chủ mà bạn đã
phát triển và bất kỳ ứng dụng phần mềm bên ngoài nào, một phương pháp hiệu quả để phát triển API của
bạn là mở rộng phương pháp MVC để xây dựng hệ thống phần mềm.

Hình 9.10: Cấu trúc về cách API dựa trên HTTP có thể được tạo với cùng bộ điều khiển sử dụng cùng mô hình và
tài nguyên như hệ thống chính của bạn. Các bộ điều khiển này sẽ có bộ lọc đầu ra để xuất bản dữ liệu ở định
dạng đã chọn—ví dụ: JSON.

Sơ đồ cho thấy cách một API có thể được xây dựng bằng cách sử dụng mẫu MVC được mô tả trước đó bằng
cách làm cho các bộ điều khiển riêng lẻ có thể truy cập được từ các URL cụ thể, từ đó gọi các mô hình
để truy xuất dữ liệu. Bộ điều khiển chỉ cần chuyển đổi bất kỳ dữ liệu nào do mô hình trả về sang định
dạng đầu ra được yêu cầu — điển hình là XML hoặc JSON.

212
Machine Translated by Google

Nhiều ngôn ngữ lập trình phía máy chủ hỗ trợ kiểu dịch này thông qua một lệnh duy nhất; ví
dụ: PHP có thể xuất bất kỳ đối tượng dữ liệu nào thông qua HTTP dưới dạng văn bản JSON bằng
mã sau:

tiếng vang json_encode( $data );

thiết kế API
Giống như việc phát triển bất kỳ thành phần phần mềm nào khác, điều quan trọng là
phải xem xét cấu trúc tốt nhất để phát triển API trước khi bất kỳ chương trình nào
bắt đầu. Giống như MVC và kiến trúc n-tier cho cấu trúc mã ứng dụng chính của bạn,
REST là một mẫu chính thức cho thiết kế API đáng để xem xét trong các dự án của bạn về
khả năng bảo trì và khả năng thích ứng. Với mục đích API của bạn là cung cấp quyền truy
cập dữ liệu cho nhiều ứng dụng phần mềm một cách hiệu quả, có một số cân nhắc về thiết
kế để thiết kế API nhằm đạt được năng suất và khả năng duy trì lâu dài:

h Lập phiên bản - Có thể có yêu cầu phát hành phiên bản API mới phá vỡ khả năng
tương thích với phiên bản trước tại một số điểm. Điều này gây ra sự cố phá vỡ
bất kỳ phần mềm nào đã sử dụng API. Có thể tránh được nguy cơ xảy ra điều này bằng
cách thiết kế một không gian tên phiên bản như một phần của tham số lệnh gọi API.
Điều này cho phép các phiên bản trong tương lai được thêm vào theo cách không phá
vỡ phần mềm phụ thuộc vào các phiên bản cũ của API. URL được sử dụng để truy cập
API dựa trên HTTP có thể giống như sau: http://api.example. com/version2/some/
feature.json

h Nhóm chức năng - Hai yêu cầu quan trọng là cho phép lập trình hiệu quả phần mềm
sử dụng API và khả năng mở rộng chức năng của API theo yêu cầu. Các lập trình
viên không cần phải tham khảo tài liệu nhiều lần để tìm ra cách sử dụng các dịch
vụ dữ liệu API của bạn — một cấu trúc hợp lý và nhất quán để gọi các tính năng
API sẽ giúp lập trình viên dễ nhớ và/hoặc đoán cách truy cập chức năng hơn.

Ngoài ra, một thiết kế được lên kế hoạch tốt cũng sẽ mang lại cơ hội tốt hơn
để mở rộng API với các tính năng mới theo cách không gây xung đột với chức
năng hiện có.

Việc thiết kế nhóm chức năng vào API của bạn cho phép bạn tạo một thiết kế hợp
lý, dễ sử dụng hơn và có thể mở rộng với nỗ lực tối thiểu. Phần quan trọng trong
việc xác định một thiết kế như vậy là xác định cách nhóm chức năng theo cách
giữ cho cấu trúc của API ở mức tối thiểu và đơn giản. Một cách hay cho việc này
là đặt trước các không gian tên cấp cao nhất (trong không gian tên phiên bản của
bạn) để tham chiếu phiên bản đang được truy cập. Ví dụ sau cho thấy cách API dựa
trên HTTP có thể sử dụng URL dựa trên thiết kế này để cung cấp danh sách sản
phẩm với các tham số được cung cấp thông qua GET: http://api.example.com/version2/
product/list.json?categoryID=1234

213
Machine Translated by Google

h Thông tin - Không có gì đảm bảo rằng phần mềm sử dụng API của bạn sẽ gọi dữ liệu mà
chúng có quyền truy cập, tồn tại hoặc thậm chí gọi dịch vụ theo đúng cách. Một API
cho phép các nhà phát triển phần mềm làm việc hiệu quả sẽ ứng phó với những tình
huống này bằng cách cung cấp chi tiết rõ ràng về (các) lỗi xảy ra trong yêu cầu API
của họ. Thông tin về lỗi được cung cấp càng rõ ràng, các nhà phát triển phần mềm sẽ
càng cần ít thời gian hơn để tìm ra lý do tại sao mã của họ không hoạt động — điều này
sẽ giúp bạn tiết kiệm nhiều giờ nếu bạn đang viết phần mềm để sử dụng mã của mình. API.

Một tính năng khác sẽ được yêu cầu để xử lý phản hồi từ API của bạn là khả năng thông báo
cho phần mềm về kết quả của các yêu cầu dịch vụ dữ liệu. Điều này tương tự như cách thông
tin sẽ được cung cấp cho nhà phát triển phần mềm, nhưng cần theo cách trực tiếp và đơn giản
hơn để có thể được xử lý bằng mã. Mục đích cụ thể của tính năng phản hồi này là cho phép
phần mềm phản ứng với kết quả được chỉ định của các yêu cầu của họ, chẳng hạn như quyết định
những gì sẽ được trình bày cho người dùng nếu yêu cầu của họ không thành công. Cách tốt nhất
để cho phép điều này là cung cấp một trường chỉ định mã số liên quan đến một trong những kết
quả đã biết của yêu cầu API — ví dụ: thành công, thiếu tham số, quyền truy cập bị từ chối, v.v.

Ví dụ sau đây cho thấy cách API dựa trên HTTP có thể cung cấp phản hồi được định dạng
dưới dạng JSON để đưa ra lỗi mà cả lập trình viên và phần mềm của họ có thể sử dụng để xử lý
sự cố:

{
"result":
{ "type": "error",
"code": 3,
"message": "Truy cập dữ liệu được yêu cầu bị từ chối."
}
}

Khi có yêu cầu thành công tới API, phản hồi vẫn phải cung cấp chi tiết về kết quả ngoài việc
chứa dữ liệu được yêu cầu. Điều này cần được phân phối theo cách mà bất kỳ chi tiết bổ sung
nào tách biệt với dữ liệu kết quả và mô tả kết quả đều có thể được thêm vào mà không vi phạm
tính tương thích. Ví dụ sau đây cho thấy một yêu cầu thành công đối với API sẽ dẫn đến dữ liệu
được trả về trong phân đoạn phản hồi của riêng nó như thế nào — cho phép đưa chi tiết kết quả
và bất kỳ thông tin nào khác vào phân đoạn giáo dục riêng của chúng:

{
"data":
[ {"id":1,"name":"product 1"},
{"id":2,"name":"product 2"},
{"id":3,"name": "product 3"} ],
"result":{ "type": "success", "code":
0, "message": "Dữ liệu đã được liệt kê."

}
}

214
Machine Translated by Google

bảo mật API


Điều quan trọng là dữ liệu được cung cấp thông qua API chỉ có thể truy cập được đối với các hệ thống và

ứng dụng có quyền truy cập dữ liệu của họ. Các thành phần có thể được sử dụng như một phần của triển khai

kỹ thuật để bảo mật dữ liệu của bạn bao gồm:

h Khóa cố định - Phương pháp đơn giản nhất để hạn chế quyền truy cập vào dữ liệu không dành cho

có sẵn công khai là triển khai yêu cầu đối với tất cả các yêu cầu và gửi dữ liệu để yêu cầu

cung cấp mã khóa/mật khẩu mà chỉ API và ứng dụng khách mới biết. Tính năng bảo mật này là đủ

với điều kiện là khóa bảo mật không bao giờ bị lộ, đoán hoặc phát hiện bởi những người dùng

Internet ác ý muốn tấn công hệ thống. Tuy nhiên, điểm yếu của phương pháp này là rất khó thay

đổi khóa khi cài đặt ứng dụng bên ngoài đang sử dụng khóa API.

h Khóa dựa trên ID - Bước tiếp theo giải quyết vấn đề khóa cố định bị lộ hoặc rò rỉ. Các khóa dựa

trên ID được cung cấp dưới dạng mã khóa duy nhất cho mỗi hệ thống sử dụng API. Cách tiếp cận này

có nghĩa là bất kỳ sự gián đoạn hoặc lỗ hổng nào do việc lộ khóa API đều có thể được giới hạn

trong hệ thống mà khóa đã được chỉ định. Các ứng dụng sử dụng nhiều cài đặt có thể tùy chọn sử

dụng các khóa duy nhất được gán cho từng tài khoản người dùng khi điều này có thể quản lý được

— hoặc chỉ cần sử dụng một khóa cho tất cả các cài đặt ứng dụng và buộc người dùng nâng cấp ứng

dụng của họ nếu khóa bị lộ, đoán hoặc đã phát hiện.

h Mã thông báo phiên - Điều này mở rộng khái niệm cung cấp các khóa xác thực duy nhất cho từng

ứng dụng khách của API bằng cách làm cho các khóa được cung cấp hợp lệ trong một thời gian

giới hạn. Xác thực này yêu cầu máy khách cung cấp một số dạng ID để xác thực bắt tay ban đầu,

theo đó mã thông báo phiên được máy chủ tạo và cung cấp cho máy khách các chi tiết về thời

lượng tồn tại của nó. Sau đó, khách hàng chịu trách nhiệm lấy thông tin này và sử dụng nó như

một phần của yêu cầu dữ liệu.

Hình 9.11: Người dùng cung cấp chi tiết xác thực qua HTTP để máy chủ kiểm tra. Máy chủ tạo một phiên cho người
dùng nếu thông tin chi tiết là chính xác và trả lại mã thông báo để người dùng tham chiếu với các yêu cầu dữ liệu.

215
Machine Translated by Google

h Địa chỉ IP - Giới hạn quyền truy cập vào chức năng của API thông qua địa chỉ IP là
một cách tốt để giới hạn phạm vi lạm dụng API đối với người dùng hoạt động từ một vị trí
hoặc máy chủ cụ thể; điều này chắc chắn loại trừ những kẻ tấn công ngẫu nhiên không biết
về hoạt động của API. Khóa dựa trên ID và mã thông báo phiên cũng có thể tận dụng điều này
bằng cách đính kèm địa chỉ IP hợp lệ vào hồ sơ khách hàng được lưu trữ trên máy chủ. Nhược
điểm của phương pháp này là nó không phù hợp với người dùng gia đình, những người thường
không có địa chỉ IP cố định.

chiến lược thử nghiệm


Ngoại trừ các chương trình cơ bản nhất, không có phần mềm nào tồn tại mà không có lỗi ở dạng này hay
dạng khác. Điều quan trọng là phần mềm của bạn đã được kiểm tra đủ kỹ lưỡng để đảm bảo rằng không
có lỗi nào ảnh hưởng đến hiệu suất đến mức phần mềm được coi là có trách nhiệm pháp lý hoặc không
đáng tin cậy. Phần lớn độ tin cậy đến từ chiến lược kiểm tra phần mềm, với các chiến lược tốt sẽ tạo
ra sự khác biệt giữa việc phát hiện ra các lỗi nghiêm trọng và chúng sẽ không được chú ý.

Một số cân nhắc về cách phần mềm được kiểm tra trong và sau khi hoàn thành dự án nên bao gồm:

h Xem xét nỗ lực thử nghiệm - Nỗ lực cần thiết cho thử nghiệm sẽ tăng lên trong
tương ứng với quy mô của dự án. Khi nhiều tính năng được thêm vào hệ thống phần mềm, sẽ
cần nhiều thử nghiệm hơn để kiểm tra từng tính năng cho mỗi lần cập nhật phiên bản. Ngay
cả khi các tính năng chưa được thay đổi trong bản phát hành mới, một chiến lược thử nghiệm
kỹ lưỡng sẽ đảm bảo rằng tất cả các tính năng đều được kiểm tra trước bản phát hành mới để
tránh khả năng xảy ra lỗi không mong muốn do các yếu tố phụ thuộc kém rõ ràng hơn.
Ngoài ra, hệ thống càng phức tạp thì càng cần nhiều nỗ lực hơn để lập kế hoạch thử
nghiệm nhằm xác định và bảo vệ trước số lượng ngày càng tăng của các lỗi khác nhau có
thể xuất hiện.

h Phát triển theo hướng kiểm thử - Đây là một phương pháp phát triển phần mềm trong đó đặc
tả dự án được xác định là một loạt các kiểm thử mà phần mềm phải được kiểm thử. Mã được
phát triển dưới dạng một loạt các đơn vị, mỗi đơn vị thực hiện một chức năng cụ thể phù
hợp với yêu cầu kiểm tra liên quan của chúng; các đơn vị này thường rất nhỏ và có chuyên
môn cao trong lĩnh vực họ làm. Dự án được phát triển theo cách mà mỗi đơn vị được tạo ra
để được kiểm tra dựa trên một tập hợp các kết quả đầu ra dự kiến dựa trên các đầu vào đã
biết. Khi các thiết bị này được biết là vượt qua tất cả các bài kiểm tra của chúng, chúng
sẽ được tích hợp vào hệ thống chính.

Kiểm tra đơn vị là một đoạn mã được viết để kiểm tra một đoạn mã khác so với đầu ra dự kiến.
Nếu chức năng mã check_crossTheRoad() đang điều khiển rô-bốt băng qua đường, thì một trong các bài
kiểm tra đơn vị có thể được thiết kế để kiểm tra việc ra quyết định khi băng qua đèn giao thông;
trong trường hợp này, chức năng của robot có thể phát hiện:

h Các - nghĩa là không băng qua đường

h Các - nghĩa là robot có thể băng qua đường

216
Machine Translated by Google

Có thể tạo hai thử nghiệm đơn vị để đảm bảo rằng chức năng này hoạt động chính xác — thử nghiệm
đầu tiên sẽ là thử nghiệm với thứ gì đó như check_crossTheRoad("traffic light", "red-man"), sẽ
trả về false vì quy tắc cho "traffic-light " và "red-man" là không băng qua đường; bài kiểm tra
chỉ thông báo vượt qua nếu kết quả của check_ crossTheRoad() là sai. Một thử nghiệm khác có thể là
check_crossTheRoad("traffic light", "green-man"), được thiết kế để báo cáo vượt qua nếu giá trị true
được trả về. Quá trình kiểm tra này được gọi là red/green/refactor (không liên quan gì đến ví dụ red/
green man), trong đó lập trình viên thường xuyên tìm kiếm các bài kiểm tra có màu đỏ (fail) và sẽ
refactor code cho đến khi tất cả các bài kiểm tra trở lại màu xanh lá cây (đạt). Điều quan trọng cần
lưu ý là mặc dù một thiết bị có thể không vượt qua thử nghiệm, nhưng lỗi có thể nằm ở một trong các
thành phần mà thiết bị phụ thuộc vào; do đó, trọng tâm cũng là điều tra cách mã có thể được cấu trúc
lại nếu cần thiết khi thử nghiệm thất bại.

Việc sử dụng phương pháp này để phát triển phần mềm giúp ích cho loại dự án có mức độ phức tạp
cao, chẳng hạn như các dự án dựa trên nhiều tính toán. Điều này cho phép phần mềm được phát
triển mà người lập trình không cần phải hiểu đầy đủ về sự phức tạp đầy đủ của toàn bộ yêu cầu hệ
thống; ví dụ: không cần lập trình viên phải là chuyên gia toán học để phát triển chức năng tạo
ra các phép tính dựa trên các công thức được cung cấp. Cách tiếp cận này cho phép tập trung hoàn
toàn vào một phần tại một thời điểm để các lập trình viên có thể làm việc nhanh hơn trong việc
phát triển các tính năng theo cách mà họ có thể xác minh độ chính xác so với kết quả đầu ra dự
kiến.

h Xác định vai trò kiểm thử - Một sai lầm phổ biến trong các dự án phần mềm là giả định
rằng các lập trình viên nên thực hiện tất cả các kiểm thử vì họ đã tạo mã.
Mặc dù các lập trình viên có thể kiểm tra khi họ phát triển mã của mình, nhưng các lập
trình viên là những người kém hiệu quả nhất trong việc theo dõi các lỗi không mong muốn
vì thiết bị và tư duy của họ được thiết lập để kiểm tra phần mềm trong các tình huống tối
ưu. Ví dụ: máy tính của lập trình viên có thể có các cấu hình đặt trước, chẳng hạn như
cookie được đặt trong các hoạt động lập trình không có trên máy tính của người dùng thực,
do đó dẫn đến các bài kiểm tra được thông qua trong môi trường lập trình mà nếu không sẽ
thất bại khi sử dụng trong thế giới thực. Việc đảm bảo rằng hệ thống được kiểm tra kỹ lưỡng
bởi những người không liên quan đến việc viết mã sẽ giải quyết vấn đề các loại lỗi này sẽ
không bị phát hiện, đồng thời việc sử dụng những người không có kiến thức về hệ thống cũng
sẽ giúp phát hiện thông tin đầu vào không mong muốn của người dùng có thể trở thành vấn
đề . Đây là công việc của QA (đảm bảo chất lượng), nhưng thật đáng ngạc nhiên là có rất
nhiều tổ chức không nhận thức được điều này.

h Thử nghiệm đơn vị - Một số loại thử nghiệm được yêu cầu lặp lại thường xuyên để đảm bảo
rằng các tính năng của chúng không bị phá vỡ bởi các bản cập nhật mã mới nhất.
Vấn đề với điều này là việc lặp lại rất tốn kém và làm tăng khả năng xảy ra lỗi do con
người trong quy trình kiểm thử, dẫn đến việc kiểm thử không được thực hiện chính xác hoặc
bỏ sót hoàn toàn. Khi phần mềm được phát triển dưới dạng các đơn vị riêng lẻ thông qua
các kiểu như lập trình hướng đối tượng, phần lớn quá trình kiểm tra lặp lại này có thể
được tự động hóa; hoặc thông qua phần mềm chuyên dụng như PHP Unit (www.phpunit.de) cho
PHP và N Unit (www.nunit.org) cho C#, hoặc bằng cách viết một tập lệnh/chương trình nhỏ
để kiểm tra các thành phần mã đối với đầu vào đã biết và đầu ra dự kiến của chúng . Cách
tiếp cận này có nghĩa là người kiểm tra có thể có một chương trình trong đó họ nhấp vào
một nút để bắt đầu kiểm tra và nhận được danh sách tất cả các thành phần bị lỗi để có thể
thực hiện hành động khắc phục.

217
Machine Translated by Google

Phương pháp kiểm tra này phù hợp nhất với các lập trình viên viết phần mềm bởi vì nó hoàn toàn là

kiểm tra mã, chứ không phải kiểm tra cách thức hoạt động của phần mềm trong quá trình sử dụng

thực tế. Khi các lập trình viên có hiểu biết về cách mã được phát triển, họ có thể viết các bài

kiểm tra mới theo yêu cầu – ngoài việc phản ứng với các lỗi mới được xác định trong các báo cáo

kiểm tra.

Cân nhắc về Bảo mật


Vấn đề với việc bảo mật hệ thống phần mềm là khách hàng thường bỏ qua tầm quan trọng của các nỗ lực bảo

mật cho đến khi có điều gì đó tồi tệ xảy ra. Với các lỗi bảo mật hầu như không bao giờ được xác định rõ

ràng từ quá trình kiểm tra thông thường, cần phải đầu tư nỗ lực chuyên biệt để xác định các lỗ hổng bảo

mật. Sự kết hợp giữa sơ suất của khách hàng và nhu cầu kiến thức chuyên môn để thực hiện kiểm tra bắt

buộc tạo ra một sự kết hợp độc hại có thể khiến hệ thống phần mềm của bạn bị lạm dụng theo những cách có

thể dẫn đến mọi thứ từ dữ liệu bị đánh cắp cho đến hệ thống của bạn bị xóa và phần mềm độc hại được cài đặt

đến máy chủ của bạn. Mặc dù bảo mật là thứ không bao giờ được đảm bảo 100%, nhưng bạn có thể xây dựng các

quy trình và triết lý trong chiến lược phát triển phần mềm của mình để giúp giảm thiểu số lượng lỗ hổng bảo

mật mà phần mềm của bạn gặp phải:

h Tất cả các hệ thống đều có thể bị tấn công - Sẽ luôn có cách để mọi người lạm dụng phần mềm

theo cách mà các nhà phát triển ứng dụng không nhận thức được trong quá trình sản xuất.

Biết trước điều này mang lại cho bạn lợi thế là có thể đưa ra các quy trình để giảm thiểu

thiệt hại tiềm ẩn nếu điều này xảy ra với phần mềm của bạn.

h Giả sử hệ thống của bạn sẽ bị tấn công - Giả định rằng phần mềm của bạn sẽ bị tấn công sẽ đặt bạn

vào vị trí có thể đưa ra một chiến lược nhằm giảm thiểu bất kỳ sự gián đoạn nào. Chiến lược của

bạn nên bao gồm cả yếu tố kỹ thuật và chính sách được kích hoạt ngay khi phát hiện bất kỳ nỗ lực

tấn công hệ thống nào của bạn — cho dù hành động đó có thành công hay không.

h Xây dựng tính bảo mật trong mã của bạn — không thêm mã sau này - Cấu trúc mã của bạn phải

được tạo theo cách nhấn mạnh vào việc đảm bảo rằng các rủi ro bảo mật đã biết được xử lý

mọi lúc có thể thay vì để những cân nhắc này thành vấn đề được thêm vào cuối dự án. h Lập

danh sách trắng - Xác định những gì bạn sẽ chấp nhận so với những gì bạn không chấp nhận -

Không thể xác định tất cả các loại đầu vào khác nhau có thể gây hại cho hệ thống của bạn, do đó,

thay vì đưa vào danh sách đen mọi thứ bạn biết là không được chấp nhận làm đầu vào (danh sách

đen) . Thay vào đó, hãy cụ thể về những gì bạn sẽ chấp nhận (lập danh sách trắng) bằng cách hạn

chế chấp nhận dữ liệu ở những gì bạn biết là an toàn, do đó cung cấp một sự đảm bảo giúp bạn

kiểm soát hoàn toàn những gì mã của bạn chấp nhận và từ chối.

Cách tiếp cận này giúp tránh trường hợp đầu vào nguy hiểm bị lãng quên – hoặc khi những

thay đổi trong tương lai khiến một số loại đầu vào trở nên nguy hiểm. Một ví dụ về điều này sẽ

là nơi ứng dụng web của bạn được viết bằng PHP; rõ ràng là bạn không muốn chấp nhận các tệp

PHP như một phần của các tính năng tải lên của mình vì điều này có thể dẫn đến việc những kẻ tấn

công chiếm quyền điều khiển máy chủ của bạn bằng cách thực thi mã mà chúng tải lên. Ngoài ra, bạn

có thể không biết về các ngôn ngữ thực thi khác chạy trên máy chủ của mình hoặc khi các thay đổi

của máy chủ trong tương lai sẽ kích hoạt các ngôn ngữ kịch bản bổ sung như Perl và Python.

218
Machine Translated by Google

Phương pháp lập danh sách trắng đảm bảo bảo mật hệ thống trước những thay đổi chưa biết
và trong tương lai.

h Tận dụng nhiều lớp để bảo mật dữ liệu và chức năng - Biết
rằng mã của bạn sẽ có một số loại lỗ hổng bảo mật ở đâu đó, bất kể bạn đầu tư bao
nhiêu nỗ lực để đảm bảo điều này không xảy ra, có nghĩa là bạn không nên dựa vào bất
kỳ tính năng bảo mật riêng lẻ nào để đảm bảo an toàn trước kiểu tấn công mà chúng có
nghĩa là để bảo vệ chống lại. Cũng giống như trong các hệ thống quan trọng về an toàn
như máy bay, mã của bạn phải được thiết kế với các tính năng và quy trình sao lưu thứ
cấp để bảo vệ các lỗ hổng đã biết nếu phiên bản chính bị lỗi. Điều này rất hữu ích
cho các tình huống mà các hoạt động bảo trì hệ thống vô tình gây ra lỗi dẫn đến các lớp
bảo mật chính bị lỗi.

h Tập trung chú ý vào các khu vực chấp nhận bất kỳ loại thông tin đầu vào nào - Thông
tin đầu vào do hệ thống bên thứ ba hoặc người dùng cung cấp phải được phân loại là
có rủi ro cao vì đây là nơi sẽ khởi động các cuộc tấn công vào hệ thống của bạn.
Điều này có nghĩa là cần đặc biệt xem xét cách các khu vực này được thiết kế và thử
nghiệm để giảm thiểu rủi ro bị khai thác, đồng thời tối đa hóa cơ hội xác định các
lỗ hổng trước khi hệ thống đi vào hoạt động.

h Không bao giờ tin tưởng bất kỳ đầu vào nào được cung cấp từ phía máy khách - Không có
thông tin nào được cung cấp từ các ứng dụng phía máy khách được coi là an toàn — kể cả
dữ liệu được tạo từ mã phía máy khách. Đặc biệt đối với các ứng dụng dựa trên web nơi đầu
vào do hệ thống tạo có thể được nhúng vào giao diện người dùng phía máy khách bằng cách
sử dụng các trường nhập ẩn, các công cụ phía máy khách như những công cụ có sẵn trong
trình duyệt web có thể được sử dụng để thay đổi HTML và nội dung khác được sử dụng để gửi
thông tin ẩn tới máy chủ web của bạn.

h Hiểu các thành phần mã bạn sử dụng - Nhiều ứng dụng phần mềm được
tiếp xúc với các lỗ hổng thông qua việc sử dụng các thành phần của bên thứ ba có lỗi hoặc
được thiết kế có chủ đích cho mục đích xấu. Luôn nghiên cứu mọi thành phần phần mềm của
bên thứ ba mà bạn định sử dụng bằng cách nghiên cứu các bài đánh giá trực tuyến và tự
kiểm tra mã nếu có thể. Tránh kích hoạt sự hài lòng khi sử dụng các thành phần của bên
thứ ba, đặc biệt là phần bổ trợ cho các hệ thống phần mềm nguồn mở như WordPress — mỗi
thành phần bổ sung mà bạn sử dụng sẽ tăng khả năng bạn sử dụng mã gây ra các lỗ hổng cho
hệ thống của mình. h Giữ cho nó đơn giản - Tính phức tạp trong mã của bạn giới thiệu phạm

vi cao hơn cho các lỗi và lỗ hổng bảo mật mà bạn không thể phát hiện trong quá trình thử
nghiệm. Loại bỏ bất kỳ sự phức tạp không cần thiết nào có nghĩa là bạn giảm rủi ro về
điều này bằng cách tăng khả năng quản lý mã của mình, đồng thời giảm các yêu cầu thử
nghiệm của nó.

h Thiết kế mã mạnh mẽ và nhanh nhẹn - Các mẫu mã như đã đề cập trước đó


Phát triển MVC và n-tier được thiết kế ngay từ đầu để cho phép thích ứng trong tương lai
sẽ mang lại lợi thế đáng kể về khả năng quản lý các vấn đề bảo mật của bạn. Mặc dù chỉ
riêng các mẫu này không đảm bảo loại bỏ các lỗ hổng bảo mật, nhưng chúng cho phép phản
hồi nhanh chóng với bất kỳ vấn đề nào phát sinh và các cách để cung cấp nhiều lớp bảo vệ
với nỗ lực tối thiểu. Điều này có thể tạo ra sự khác biệt giữa việc hệ thống dễ bị tổn
thương trong vài phút, vài giờ hoặc vài ngày.

219
Machine Translated by Google

h Không bao giờ tin tưởng người dùng - Hầu hết người dùng sẽ không có ý định xấu, nhưng nó

chỉ mất một người dùng độc hại lạm dụng hệ thống của bạn để gây ra thiệt hại.
Người dùng vô tội có thể gây ra nhiều mối đe dọa đối với bảo mật hệ thống của bạn, chẳng
hạn như thông qua việc sử dụng mật khẩu yếu, lưu trữ thông tin như chi tiết thẻ tín dụng
mà hệ thống của bạn không được thiết kế để chống lại và cung cấp thông tin đăng nhập của
họ cho người khác. Không tin tưởng người dùng có nghĩa là bạn có nhiều khả năng tích hợp
các tính năng sẽ giảm thiểu các loại vấn đề mà cả người dùng độc hại và vô tội có thể tạo
ra.

Kiểm soát phiên bản


Các công cụ kiểm soát phiên bản rất hữu ích để giải quyết các yêu cầu thay đổi, rủi ro về
chức năng giữa các bản cập nhật. Đây là những ứng dụng phần mềm giúp bạn lưu giữ lịch sử ghi mã,
hình ảnh và bất kỳ tệp nào khác được liên kết với dự án phần mềm của bạn. Ưu điểm chính của việc sử
dụng kiểm soát phiên bản bao gồm:

h Phối hợp dễ dàng hơn giữa các lập trình viên - Nhu cầu quản lý truy cập và phân phối mã tăng
lên nhanh chóng khi làm việc trong một dự án với các lập trình viên khác. Khi điều này
không được quản lý đúng cách, các lập trình viên có nguy cơ ghi đè lên công việc của các
lập trình viên khác do không có phiên bản mã cập nhật nhất hoặc nơi họ đang ghi vào cùng
một tệp mã cùng một lúc. Các công cụ kiểm soát phiên bản tránh những rủi ro này bằng cách
cho phép các lập trình viên yêu cầu các phiên bản mã mới nhất và khóa quyền truy cập vào
chúng khi họ thêm các bản cập nhật mới. h Lùi lại một bước - Đôi khi, việc cuộn mã và các

tệp khác trở lại trạng thái trước đó có thể mang lại lợi ích cho dự án; thường để tiết kiệm thời
gian. Một ví dụ về điều này là khi một lỗi khó theo dõi được đưa ra, trong đó việc quay lại
phiên bản mã trước đó đòi hỏi ít nỗ lực hơn so với việc theo dõi và giải quyết lỗi. Một ví
dụ khác là khi khách hàng đã yêu cầu một số thay đổi mà sau đó họ quyết định hủy bỏ và yêu
cầu hoàn nguyên về ban đầu; kiểm soát phiên bản tránh phải đầu tư thời gian vào việc hoàn
tác các thay đổi mã bằng cách hoàn nguyên về phiên bản trước khi thay đổi được thực hiện. h
Quản lý chấp nhận - Một tình huống khác mà kiểm soát phiên bản có thể được sử dụng để hỗ trợ
quản lý các nhóm lập trình là khi lập trình viên trưởng cần xác minh việc chấp nhận mã do

các lập trình viên khác trong nhóm gửi. Điều này có thể nhằm đảm bảo rằng các nhà phát triển cơ
sở và các thành viên mới trong nhóm đã phát triển mã với chất lượng chấp nhận được hoặc nơi
mã đã được kiểm tra đầy đủ trước các vấn đề bảo mật và các yếu tố đáng lo ngại khác.

Các nhà phát triển có thể gửi các bản cập nhật thông qua hệ thống kiểm soát phiên bản để lưu
trữ và truy cập, nhưng chỉ những người có thẩm quyền như lập trình viên chính mới có thể chấp
nhận các bản gửi để trở thành một phần của phiên bản thực của dự án phần mềm.

h Tìm hiểu những gì đã xảy ra - Mọi thứ được gửi có thể kèm theo một
mô tả về bài nộp. Những mô tả này có thể được sử dụng để mô tả những thay đổi được thực
hiện, do đó cho phép bạn theo dõi những gì đã thay đổi trong lịch sử của tài liệu; hữu ích
để xác định nơi các lỗi có thể đã được giới thiệu.

220
Machine Translated by Google

thuật ngữ khái niệm


Các công cụ kiểm soát phiên bản phổ biến hướng đến phát triển phần mềm, chẳng hạn như Git (www.git-
scm.com), có xu hướng được cung cấp dưới dạng các công cụ dòng lệnh, nghĩa là bạn sẽ cần học các lệnh
của chúng. Ngoài ra còn có các công cụ giao diện người dùng mà bạn có thể tải xuống riêng để sử dụng với
các công cụ này. Các khái niệm đáng để bạn nghiên cứu khi xem xét việc sử dụng kiểm soát phiên bản trong
các dự án của mình bao gồm:

h Kho lưu trữ - Kho lưu trữ là một thư mục được phần mềm kiểm soát phiên bản sử dụng để
lưu trữ các phiên bản của tệp và thông tin chi tiết của chúng liên quan đến dự án của bạn.
Phần mềm kiểm soát phiên bản thay mặt bạn quản lý thư mục này, vì vậy bạn không cần biết gì
về cách chúng hoạt động; vị trí của chúng để bạn có thể chỉ đạo phần mềm kiểm soát phiên bản
khi làm việc với chúng.

Kho lưu trữ có hai loại - cục bộ và từ xa. Tất cả các dự án sẽ có một kho lưu trữ cục bộ, là
vị trí bạn gửi tất cả các thay đổi của mình đến khi bạn làm việc với dự án của mình; kho lưu
trữ cục bộ của bạn là những gì thuộc về bạn.

Các kho lưu trữ từ xa được lưu trữ ở đâu đó bên ngoài máy tính của bạn, trên mạng cục bộ
hoặc trên Internet. Loại kho lưu trữ này rất hữu ích cho bất kỳ dự án nào sử dụng nhiều lập
trình viên hoặc nhà phát triển nội dung — và thậm chí là giải pháp dự phòng cho các dự án
đơn lẻ; do đó luôn luôn đáng xem xét.
Kho lưu trữ mạng là nơi các thành viên trong nhóm gửi các phiên bản cuối cùng của tệp mà họ
đang làm việc để sẵn có cho các thành viên khác trong nhóm và đưa vào phiên bản cuối cùng của
dự án phần mềm — xem về cam kết.

h Bản sao - Một bản sao đơn giản là một bản sao của thư mục kho lưu trữ. Khi bắt đầu một

dự án hiện có hoặc khi bạn giới thiệu các thành viên mới trong nhóm, bạn sẽ tạo một
bản sao của dự án ban đầu để chính bạn/họ thực hiện. Khi làm việc trên các dự án nhóm,

thông thường bạn sẽ sao chép một dự án từ Internet hoặc URL mạng cục bộ.

h Cam kết - Những thay đổi bạn thực hiện cần được gửi tới bộ phận kiểm soát phiên bản

kho lưu trữ đang được sử dụng để lưu trữ các thay đổi của bạn; gửi bản cập nhật tệp của bạn
được gọi là cam kết. Những thay đổi riêng lẻ mà bạn thực hiện được cam kết trong kho lưu trữ
cục bộ của bạn, trong đó bạn tiếp tục thực hiện việc này cho đến khi bạn sẵn sàng đưa ra cam
kết cuối cùng, trong đó các cập nhật của bạn được gửi đến kho lưu trữ từ xa để mọi người trong
nhóm có thể sử dụng được.

Các công cụ kiểm soát phiên bản thường cung cấp cho bạn khả năng đính kèm mô tả với mỗi cam
kết bạn thực hiện. Đây là một tính năng hữu ích cho phép bạn nhìn lại trong tương lai để hiểu

dự án đã được phát triển như thế nào — và để xác định nơi có thể có lỗi. Vì lý do này, nên
thực hiện mỗi cam kết dựa trên một chủ đề — tức là các bản sửa lỗi cho tính năng A chứ không
phải bản sửa lỗi cho tính năng A, B và D.

221
Machine Translated by Google

h Khu vực tổ chức - Cụ thể hơn đối với Git, khu vực tổ chức là nơi có thể được sử dụng để lưu
trữ tạm thời trước khi chúng được cam kết. Điều này hữu ích vì cho phép bạn quyết định
những thay đổi nào bạn muốn đưa vào như một phần của cam kết — do đó không cần lo lắng về
thứ tự thay đổi ảnh hưởng đến những gì bạn cam kết; tức là bạn có thể thực hiện các bản
sửa lỗi cho tính năng A, sau đó là tính năng B và sau đó là tính năng A, đồng thời thực
hiện hai lần xác nhận riêng biệt — một lần sửa lỗi cho tính năng A và lần cam kết còn lại
cho tính năng B.

h Nhánh - Khả năng phân nhánh các phần của dự án cung cấp cho bạn khả năng giữ các phiên bản
thay thế của mã và nội dung riêng biệt, trong khi vẫn tồn tại song song với nhau. Điều
này có thể được sử dụng để tách biệt các phiên bản phát triển chưa được kiểm tra của một
hệ thống phần mềm với phiên bản cũ hơn là phiên bản đã thử và kiểm tra không có các tính
năng mới.

h Hợp nhất - Trong đó phân nhánh là khả năng tạo phiên bản thay thế của một phần dự án phần
mềm, hợp nhất là khả năng kết hợp các phiên bản thay thế này lại với nhau. Điều này sẽ
được sử dụng trong các tình huống chẳng hạn như khi một tính năng mới đã vượt qua thử
nghiệm, khi việc hợp nhất mã và nội dung được phát triển trong nhánh phát triển sẽ làm cho
các bản cập nhật mới có sẵn trong nhánh chính.

Khi được sử dụng đúng cách, việc sử dụng kiểm soát phiên bản là một giải pháp để tránh nhiều
vấn đề liên quan đến việc phát triển các nhóm dự án và cung cấp cho các cá nhân sự linh hoạt để
điều chỉnh mã mà không sợ vi phạm điều gì đó ảnh hưởng đến toàn bộ dự án. Trong trường hợp xấu nhất,
kiểm soát phiên bản sẽ luôn cung cấp khả năng quay lại phiên bản mà mã đã hoạt động hoàn toàn — miễn
là bạn nhớ cam kết thường xuyên!

Tóm lược
Thành công trong phát triển phần mềm bị ảnh hưởng nặng nề bởi chiến lược xây dựng từng thành phần.
Chiến lược mã tốt ảnh hưởng trực tiếp đến khả năng phản ứng của bạn với các yêu cầu thay đổi của
khách hàng, cho dù điều này là do khách hàng không mô tả rõ ràng về bản tóm tắt dự án hay cần khả
năng thích ứng với những thay đổi trong môi trường hoạt động của họ. Khi nói đến việc đưa ra các giả
định về các dự án phần mềm, giả định an toàn duy nhất để đưa ra là các thay đổi về đặc điểm kỹ thuật
có khả năng xảy ra.

Các thay đổi đối với thông số kỹ thuật phần mềm luôn là tin xấu, nhưng mã đã được phát triển để
đáp ứng điều này có thể tạo ra sự khác biệt giữa các thay đổi chậm/gây khó chịu và triển khai nhanh/
hiệu quả. Hiểu các nguyên tắc mã cho lập trình hướng đối tượng, các mẫu như MVC và kiến trúc hệ thống
cho API sẽ cho phép bạn thiết kế mã theo cách cung cấp mức độ linh hoạt và khả năng mở rộng cao hơn
trên nhiều nền tảng để dự án phần mềm của bạn có thể được nâng cấp nhanh chóng, hiệu quả và không cần
hạn chế từ mã kế thừa. Thiết kế mã của bạn theo cách mô-đun cũng cho phép nâng cấp, thử nghiệm và hạn
chế lỗi dễ dàng hơn, bao gồm cả các lỗ hổng bảo mật.

222
Machine Translated by Google

Mặc dù việc dựa vào cách tiếp cận plug and play để phát triển phần mềm rất hấp dẫn, đặc
biệt là khi sử dụng phần mềm mã nguồn mở, nhưng điều quan trọng là phải đảm bảo rằng mã bạn đang
sử dụng là đáng tin cậy và an toàn. Khi sử dụng các thành phần nguồn mở, việc sử dụng các số liệu
có thể được sử dụng để đánh giá sự phù hợp của chúng, chẳng hạn như thời gian hoàn thiện của dự
án, thời gian phản hồi các lỗi và hoạt động của dự án. Các thành phần của bên thứ ba có thể cung
cấp chức năng bổ sung với thời gian đầu tư tối thiểu, nhưng các thành phần được mã hóa kém và/
hoặc được tích hợp theo cách được lập kế hoạch kém có thể làm mất đi những lợi ích mà bạn đã nỗ
lực đạt được trong thiết kế hệ thống chính của mình. Vì lý do này, cần đặc biệt cẩn thận khi xem
xét và tích hợp các thành phần của bên thứ ba — đặc biệt là liên quan đến bảo mật.

223
Machine Translated by Google
Machine Translated by Google

10
Phát triển phần mềm
phương pháp luận
Việc tạo ra tất cả các sáng tạo là một phương pháp, với phát triển phần mềm cũng không ngoại lệ.
Mặc dù có nhiều phương pháp có thể được sử dụng để phát triển hệ thống phần mềm, điều quan
trọng là xác định loại phương pháp phù hợp nhất với phần mềm bạn đang phát triển và tình huống bạn
vận hành bên trong. Các phương pháp được sử dụng để phát triển các hệ thống phần mềm quy mô lớn liên
quan đến nhiều người có thể không chuyển thành loại dự án quy mô nhỏ mà bạn có khả năng tham gia với
tư cách là một người làm việc tự do - không phải do cách thức hoạt động của công nghệ, mà do ý nghĩa
xã hội của việc làm việc với Mọi người. Đây là nội dung của nghiên cứu về phương pháp luận phần mềm
- việc xác định các phương pháp phát triển phần mềm để thực hiện hiệu quả việc sản xuất phần mềm
theo một tiêu chuẩn chấp nhận được.

Chương này xem xét các đặc điểm của các phương pháp đã được thiết lập có liên quan đến các
dự án làm việc tự do để bạn có thể xác định các quy trình phù hợp để phát triển phong cách
làm việc tự do của riêng mình.

Yếu tố xã hội của phát triển phần mềm


Đối với những người chưa bao giờ có kinh nghiệm viết phần mềm cho một khách hàng thực sự, có thể rất
hấp dẫn khi bắt tay ngay vào viết mã để hoàn thành công việc. Bài học rút ra rất nhanh là việc phát
triển phần mềm cho khách hàng rất khác với việc phát triển phần mềm tương tự như một dự án cá nhân
hoặc một mục trong bài tập cho một khóa học ở trường phổ thông, cao đẳng hoặc đại học. Cả hai yêu
cầu về mã và hệ thống phần cứng đều có thể hoàn toàn giống nhau, nhưng điểm khác biệt lớn là yếu tố
con người — trong thế giới thực, các nhà phát triển phần mềm phải đối mặt với các yếu tố xã hội
không bao giờ là một phần của dự án cá nhân hoặc khóa học:

h Yêu cầu không xác định: Không giống như các khóa học có đặc điểm kỹ thuật rõ ràng về những
gì bạn phải tạo, khách hàng thường chỉ có một ý tưởng mơ hồ về những gì họ muốn — thông
thường ở dạng của nó nên làm điều đó, nhưng cũngnócónên làm lúc
những và không
khách hàng không
biếtkhông
"cái gì"
mà phần mềm nên làm. Một ví dụ điển hình về điều này là mọi người có thể muốn một trang
web thương mại điện tử bán sản phẩm của họ như thế nào (cái gì), nhưng không biết họ
muốn nó hoạt động như thế nào (như thế nào).
Machine Translated by Google

h Thay đổi yêu cầu: Vấn đề thay đổi yêu cầu xuất hiện từ việc một hoặc nhiều khách hàng ban đầu
không biết họ muốn hệ thống của mình hoạt động như thế nào, khách hàng không hiểu đầy đủ cách

thiết kế hệ thống của họ sẽ ảnh hưởng đến quy trình kinh doanh của họ hoặc những thay đổi trong

môi trường kinh doanh của khách hàng ( pháp luật, đối thủ cạnh tranh, công nghệ, v.v.).

h Cộng tác: Các dự án lớn hơn sẽ yêu cầu cộng tác với các lập trình viên, người sáng tạo nội dung,

nhà thiết kế và những người có các loại kỹ năng khác. Nỗ lực hợp tác cần đảm bảo rằng mọi người

đang làm việc hiệu quả với các nhiệm vụ phù hợp theo một tiêu chuẩn có thể chấp nhận được. Các
cộng tác viên có thể có các cấp độ kỹ năng khác nhau, đặc biệt là trong lập trình — nghĩa là

cần đảm bảo rằng các lập trình viên cộng tác có kỹ năng thấp hơn được giao cho đúng nhiệm vụ,
ngoài việc được dạy về các mẫu mã bắt buộc và các chiến lược cần thiết cho dự án.

h Chính trị: Dự án càng có nhiều người tham gia thì càng có nhiều phạm vi

có những yếu tố xã hội khiến những bất đồng như vậy trở thành rào cản đối với tiến độ dự án.
Chính trị có thể dẫn đến việc các nhà phát triển phần mềm được cung cấp thông tin sai lệch

cũng như bị lôi kéo vào các tranh chấp không liên quan làm cản trở năng suất của họ.

Các phương pháp phát triển phần mềm chính thức đã đi một chặng đường dài để giải quyết những vấn đề này,

cho dù đó là thông qua việc chính thức hóa thông tin liên lạc, phân công trách nhiệm hay tránh/liên quan
đến pháp lý. Việc sử dụng các phương pháp đã được thử nghiệm và thử nghiệm trong các dự án hợp đồng và tự

do của bạn sẽ giúp bạn tránh được các tình huống không mong muốn gây tốn thời gian và có khả năng gây tốn
kém. dẫn đến sự không hài lòng vô cớ của khách hàng của bạn. Là một doanh nghiệp, bạn cũng nên có một quy

trình thành công mà bạn có thể nhân rộng trên tất cả các dự án của mình để đảm bảo khả năng sinh lời của

chúng.

Các tính năng để ngăn ngừa sự cố


Trên hết, cần đề cập rằng không có phương pháp phát triển phần mềm duy nhất nào phù hợp cho tất cả các

dự án phần mềm. Phẩm chất của một phương pháp phát triển phần mềm tốt là các tính năng cung cấp giải
pháp cho các vấn đề mà dự án gặp phải, do đó các phương pháp phát triển phần mềm tập trung vào việc
cung cấp các giải pháp cho các vấn đề không tồn tại sẽ ít liên quan hơn các phương pháp được thiết kế

để giải quyết các vấn đề tồn tại bên trong dự án. Câu hỏi đầu tiên cần được trả lời không phải là chọn
phương pháp luận nào, mà là những vấn đề mà dự án phần mềm gặp phải hoặc có khả năng gặp phải là gì?

hình thức
Mặc dù nghe có vẻ không phải là một tính năng, nhưng yếu tố hình thức sẽ giúp giữ cho dự án đi đúng hướng

bằng cách cung cấp một quy trình mà mọi người đều biết. Cùng với hình thức là các quy tắc và yêu cầu, từ

đó tạo ra kỷ luật - theo yêu cầu của nhóm phát triển và khách hàng.

226
Machine Translated by Google

Đó là kết quả của hình thức (yêu cầu và kỷ luật) mang lại lợi ích cho các dự án; nó không chỉ đảm bảo

rằng nhóm phát triển biết họ nên làm gì và không nên làm gì, mà còn chỉ ra cho khách hàng những gì họ cần

làm — đặc biệt là khi nhóm phát triển cần thông tin đầu vào của họ để tiến triển.

Là một người làm việc tự do hoặc nhà thầu, bạn có thể làm việc một mình trực tiếp cho khách hàng hoặc là

một phần của nhóm. Cả hai phương pháp làm việc này nên có một số yếu tố trang trọng, ngay cả khi chỉ để

che lưng cho chính bạn. Cân nhắc có thể bao gồm:

h Bổ nhiệm (những) người ra quyết định : Mọi người tham gia vào dự án đều đồng ý rằng chỉ người

này hoặc những người có thẩm quyền đưa ra các quyết định liên quan đến định hướng của dự án.

h Yêu cầu tính năng được viết trong tài liệu đặc tả: Đảm bảo rằng mỗi tính năng được diễn đạt rõ

ràng mà không có bất kỳ phạm vi nào cho sự mơ hồ.

h Tất cả các yêu cầu thay đổi phải được thực hiện bằng văn bản và ghi ngày tháng với chữ ký của một

người ra quyết định được chỉ định phê duyệt: Điều này sẽ xảy ra sau khi người ra quyết định đã

nhận thức được tác động của yêu cầu thay đổi - ví dụ: chậm trễ trong việc chuyển giao dự án, rủi

ro của các yêu cầu thử nghiệm bổ sung, v.v. Bất kỳ tác động nào cũng phải được ghi vào phần mô tả

rằng thay đổi văn bản ủy quyền yêu cầu. Hình thức này cung cấp trách nhiệm giải trình để tránh các

tình huống liên quan đến việc bạn được yêu cầu thực hiện các thay đổi mà khách hàng chưa yêu cầu;

đây là một vấn đề quan trọng khi những người tham gia vào dự án có chương trình nghị sự riêng của

họ không tương thích với chương trình nghị sự của (những) người ra quyết định được chỉ định.

h Bảng chấm công: Có một bản ghi chi tiết các hoạt động liên quan đến dự án sẽ giúp khách hàng hiểu

rõ hơn về nỗ lực và thời gian được đầu tư. Điều này giúp kiểm soát sự hiểu biết của khách hàng

về quy trình phát triển phần mềm hoạt động như thế nào và tránh các tình huống mà khách hàng

đưa ra các giả định về khung thời gian và chi phí cho các tính năng nghe có vẻ dễ dàng và nhanh

chóng để phát triển, nhưng trên thực tế lại tốn thời gian và khó khăn. h Tài liệu cuộc họp:

Đảm bảo có chương trình nghị sự chính thức cho các cuộc họp

và các ghi chú được tạo để ghi lại tất cả các vấn đề sẽ giúp đảm bảo rằng mọi người tham gia

có thể tham dự cuộc họp với sự chuẩn bị đầy đủ và thời gian không bị lãng phí khi đề cập đến

các chủ đề không liên quan và lặp lại bất kỳ điều gì đã được đề cập.

Lưu giữ hồ sơ của tất cả các tài liệu cuộc họp cũng cho phép bạn quay lại sau này trong dự

án để xác định những gì đã được thống nhất trong các cuộc họp nếu cần.

h Chỉ định tính khả dụng: Yếu tố này hoạt động theo cả hai cách, nơi bạn cần

có sẵn để thực hiện công việc và khách hàng cần có sẵn để cung cấp các tài nguyên như thông tin

và nội dung bạn cần để hoàn thành công việc một cách chính xác và đúng hạn. Có một yếu tố về

hình thức để xác định sự sẵn sàng của cả hai bên sẽ tránh được các tình huống ảnh hưởng đến tiến

độ của dự án, chẳng hạn như các cam kết dự án khác của bạn trở thành rào cản hoặc khi khách hàng

có thể đi nghỉ dẫn đến công việc của bạn bị chậm trễ do yêu cầu về thông tin không được đáp ứng.

Tương tự, có một thỏa thuận chính thức liên quan đến tính khả dụng của bạn sẽ giúp khách hàng tránh

đưa ra các giả định về việc bạn không dành đủ thời gian cho dự án của họ — đặc biệt khi khách hàng

không hiểu sự phức tạp liên quan đến việc phát triển các tính năng phần mềm mà họ yêu cầu.

227
Machine Translated by Google

Uyển chuyển
Không nên đánh giá thấp nhu cầu thích ứng với các tình huống bất ngờ hoặc thay đổi; ngay cả
đối với các dự án dường như có các thông số kỹ thuật cụ thể khó có thể thay đổi. Mặc dù hình
thức mang lại lợi thế cho cấu trúc và kỷ luật trong quá trình phát triển dự án, nhưng quá
nhiều hình thức có thể ngăn cản kiểu linh hoạt cần thiết để phản ứng thành công với các tình
huống bất ngờ. Một ví dụ về điều này là khi chỉ có một người ra quyết định được chỉ định cho dự
án, người không thể liên lạc được khi cần có một quyết định quan trọng; có sự linh hoạt để người
khác đưa ra quyết định khi người ra quyết định chính không có mặt sẽ giúp tránh tình trạng này
trở thành vấn đề.

Có nhiều cách để phương pháp phát triển phần mềm của bạn có thể kết hợp linh hoạt:

Giờ làm việc


Phần lớn, phát triển phần mềm là viết mã. Mã chỉ là một đóng góp có giá trị nếu nó thực
hiện được công việc — và là một phần thưởng lớn nếu nó được phát triển để có thể bảo trì được.
Thật không may, việc viết mã, và đặc biệt là mã chất lượng tốt, đòi hỏi các lập trình
viên phải "ở trong vùng"; một tài liệu tham khảo thường được sử dụng để mô tả trạng thái
tinh thần nơi giải pháp của vấn đề lập trình có thể được xác định rõ ràng, do đó dẫn đến việc lập
trình viên đạt năng suất cao. Không phải ai cũng là người của buổi sáng, nghĩa là nhiều người làm
việc hiệu quả hơn vào cuối ngày. Với việc phát triển phần mềm dựa trên chất lượng đầu ra của lập
trình viên, hình thức truyền thống từ 9 đến 5 giờ làm việc được hầu hết các doanh nghiệp đặt tại
văn phòng thực thi trở nên phản tác dụng đối với việc thu được nhiều đầu ra nhất từ các lập trình
viên trong một dự án. Chính vì lý do này mà tính linh hoạt của giờ làm việc có thể có tác động
tích cực đến các dự án về mặt giao hàng và chi phí bằng cách tạo ra nhiều sản lượng hơn với yêu
cầu ít thời gian hơn bằng cách chỉ đầu tư thời gian có năng suất cao.

mẫu mã
Đúng là về mặt kỹ thuật, không có cách nào sai để phát triển mã miễn là nó hoạt động và kết quả
đáp ứng các yêu cầu được chỉ định cho phần mềm mong muốn. Với suy nghĩ này, vẫn có những phương
pháp tốt và xấu để phát triển mã liên quan đến chiến lược kinh doanh— mã tốt hơn có lợi thế về
khả năng thích ứng, thử nghiệm, bảo mật và các vấn đề khác. Vì vậy, mặc dù bất kỳ phương pháp lập
trình nào cuối cùng cũng sẽ hoàn thành công việc, nhưng các phương pháp lập trình tốt hơn sẽ giảm
thiểu các vấn đề, chi phí, rủi ro và yêu cầu về thời gian để mang lại cho bạn nhiều lợi nhuận hơn
và có thể đáp ứng các tiêu chí về chất lượng và thời gian hoàn thành. Các lập trình viên đã xác
định cái gọi là các mẫu mã phù hợp để đáp ứng nhu cầu của các dự án phần mềm, do đó bạn có thể
tìm hiểu về các mẫu này và điều chỉnh chúng để phù hợp với phong cách lập trình và yêu cầu dự án
của bạn (hoặc nhóm của bạn). Hãy nghĩ về các mẫu mã tương tự như việc viết, trong đó có một mẫu
mà bạn sử dụng để phân chia nội dung của mình giữa các đoạn văn, chương, sơ đồ, v.v. - tất cả các
công cụ hữu ích cho các phần cụ thể trong bài viết của bạn.

228
Machine Translated by Google

Các mẫu mã không nên linh hoạt theo nghĩa nhất quán đối với phong cách lập trình, nhưng chúng nên được

phát triển để trở nên linh hoạt nhằm đáp ứng các yêu cầu thay đổi. Điều này có nghĩa là đầu tư nhiều thời

gian hơn để viết mã có thể tái sử dụng và thích ứng trong thời gian dài.

Mặc dù ban đầu điều này đòi hỏi nhiều nỗ lực hơn, nhưng các lợi ích sẽ trở nên rõ ràng sau này trong dự

án khi các thay đổi và bổ sung có thể được thực hiện trong một vài dòng mã với thời gian và kỹ năng tối
thiểu. Yếu tố kỹ năng của lợi ích này cũng có nghĩa là những gì được coi là yêu cầu kỹ năng lập trình nâng

cao có thể được trao cho các lập trình viên cấp dưới để giảm chi phí của dự án và giải phóng các lập trình

viên có kinh nghiệm hơn trong dự án cho các nhiệm vụ khác.

quản lý đặc điểm kỹ thuật


Thông số kỹ thuật của dự án thay đổi vì nhiều lý do, do đó, phương pháp luận của dự án của bạn nên phản

ánh điều này bằng cách cung cấp một quy trình để tạo điều kiện thuận lợi cho việc thay đổi thông số kỹ thuật.

Điều này có thể ở dạng chia nhỏ dự án thành các mốc phát hành trong đó các mục tiêu chính thức được xác định

cho mỗi bản phát hành với khả năng tinh chỉnh đặc điểm kỹ thuật cho các bản phát hành trong tương lai hoặc khi

một phương pháp được thực hiện để phát triển phần mềm tinh chỉnh nó cho đến khi khách hàng hài lòng .

Việc xem xét quan trọng là đảm bảo rằng bất kỳ quy trình nào bạn sử dụng để phản ánh các thông số kỹ

thuật thay đổi cũng làm rõ những thay đổi có liên quan đến chi phí.

Triển khai kỹ năng


Khi bạn cần thuê những người có kỹ năng hoặc thời gian mà bạn không có, bạn nên cân nhắc liệu hợp

đồng phụ hoặc tuyển dụng là lựa chọn tốt nhất. Khi ngân sách là một mối quan tâm, hợp đồng phụ có thể là

lựa chọn an toàn nhất; cung cấp sự linh hoạt để chỉ thanh toán cho số giờ cần thiết — trái ngược với việc

tuyển dụng những người mà thời gian chờ đợi giai đoạn tiếp theo của dự án bắt đầu sẽ vẫn khiến bạn phải trả

tiền công/tiền lương. Phí nhà thầu đắt hơn trên cơ sở mỗi giờ, nhưng chúng không có bất kỳ chi phí lãng phí và

ẩn nào như bảo hiểm nhân viên, đào tạo và thiết bị. Mặc dù bạn nên đảm bảo rằng các nhà thầu phụ của bạn được

coi là nhà thầu hợp pháp cho dự án chứ không phải dưới quyền của bạn — ở Vương quốc Anh, điều này được gọi là

IR35 và rất đáng để đọc.

Liên kết: http://www.contractoruk.com/ir35/what_is_ir35_rules_explained.

html

nguyên mẫu
Làm việc trên nguyên mẫu trước khi phát triển sản phẩm thực sẽ giúp bạn có nhiều sự linh hoạt để thực hiện các

thay đổi mà không cần phải lo lắng về tác động của việc yêu cầu thay đổi từ khách hàng dẫn đến nguy cơ lỗi mới

xuất hiện trong mã hoặc mã không linh hoạt sẽ gây ra ở đâu. các vấn đề để thêm các yêu cầu mới. Nguyên mẫu có

thể được tạo mà không cần sử dụng phần mềm chuyên dụng; sử dụng PowerPoint hoặc Keynote để tạo bản trình bày

tương tác sẽ cho phép bạn nhận được chất lượng phản hồi mà nếu không thì khách hàng sẽ chỉ cung cấp khi quá

trình phát triển phần mềm đã bắt đầu, vào thời điểm đó, việc hoàn tác mã bạn đã tạo có thể trở nên khó khăn.

Một phần thưởng bổ sung của việc tạo mẫu bằng PowerPoint hoặc Keynote là đây là những phần mềm có mục đích

chung mà khách hàng có thể có đủ kỹ năng CNTT để thêm một số thay đổi mà họ muốn, nghĩa là bạn sẽ ít gặp khó

khăn hơn khi cần diễn giải các ý tưởng mà khách hàng gặp khó khăn trong việc truyền đạt.

229
Machine Translated by Google

Lập kế hoạch và phân tích


Nghệ thuật lập kế hoạch cho các dự án tự do là sự cân bằng tốt giữa các thái cực hoàn
toàn không có kế hoạch và quá nhiều kế hoạch. Các phương pháp nặng ký như PRINCE2 và
SSADM—hai phương pháp quá mức cần thiết đối với hầu hết các dự án tự do, sử dụng đáng
kể các hoạt động phân tích và viết báo cáo để xác định chính xác mọi thứ cần thiết
trước khi bắt đầu phát triển phần mềm. Đây là những điều tốt về lý thuyết, nhưng không
tốt trong thực tế khi thực hiện dự án tự do điển hình mà bạn có khả năng tham gia. Những
lý do cho điều này bao gồm:

Yêu cầu về thời gian


Khách hàng tự do điển hình muốn thấy kết quả khá nhanh. Mức độ lập kế hoạch chi tiết
theo yêu cầu của các phương pháp nặng nề làm tăng thêm một lượng thời gian đáng kể cho
các dự án mà khách hàng tự do có thể không đủ kiên nhẫn để chờ đợi.

Yêu cầu về kiến thức


Mặc dù mục đích của các hoạt động phân tích trong các phương pháp nặng nề là xác định vấn
đề và giải pháp phù hợp nhất, nhiều khách hàng tự do không hiểu đủ về yêu cầu của họ để
cung cấp thông tin chất lượng tốt nhằm xác định đầy đủ vấn đề và giải pháp.

Một ví dụ về điều này là hầu hết mọi doanh nghiệp nhỏ đều muốn có một trang web — những
doanh nghiệp này chủ yếu được thúc đẩy để mua một trang web vì họ muốn có sự hiện diện trên
Internet giống như những người khác. Một thực tế đáng buồn là hầu hết các doanh nghiệp này
không tận dụng được trang web của họ và do đó mất tiền đầu tư vì trong nhiều trường hợp,
trang web là lựa chọn ít phù hợp nhất cho vấn đề mà họ xác định không rõ ràng.

Trong khi các doanh nghiệp này nói rằng họ muốn có sự hiện diện trên web và giả định
rằng họ cần một trang web, thì điều họ thực sự cần là một cách để bán hàng và đặt hàng
qua Internet; trong đó các tùy chọn như Amazon, eBay và các thư mục chuyên gia như Tutor Hunt
là một lựa chọn tốt hơn nhiều vì chúng cung cấp cả nền tảng và đối tượng mà không phải trả
chi phí tiếp thị và phát triển phần mềm liên quan. Đối với nhiều doanh nghiệp nhắm mục tiêu
đến người tiêu dùng (trái ngược với các doanh nghiệp khác), việc có một trang Facebook sẽ
mang lại nhiều thành công tiếp thị hơn là một trang web chuyên dụng. Ngay cả khi việc tạo một
trang web là hợp lý để tạo niềm tin cho khách hàng của khách hàng, loại hình kinh doanh này
thường sẽ yêu cầu một trang web lớn với các tính năng không cần thiết, trong khi những gì họ
thực sự cần là một thứ gì đó rất đơn giản để trình bày thông tin cơ bản mà khách hàng của họ
cần. Đây là một ví dụ rõ ràng về việc thiếu kiến thức và khả năng mô tả vấn đề chính dẫn đến
phân tích không đầy đủ và đề xuất một giải pháp không phù hợp.

230
Machine Translated by Google

Ngân sách
Hầu hết các doanh nghiệp nhỏ mới thành lập, có khả năng là nguồn chính cho công việc tự do của
bạn khi bắt đầu, không có ngân sách lớn. Sự phức tạp của các phương pháp nặng nề làm tăng thêm
chi phí thời gian đáng kể để bắt đầu các dự án — nhiều đến mức lượng thời gian cần thiết để
thực hiện phân tích chi tiết đầy đủ chẳng hạn như với SSADM có thể ngốn toàn bộ ngân sách của
khách hàng trước khi bạn viết dòng đầu tiên của mình mã số. Chỉ riêng yếu tố này sẽ loại trừ
việc sử dụng các phương pháp luận chi tiết cho hầu hết các dự án tự do, bất kể chúng phù hợp
như thế nào ở cấp độ kỹ thuật để giải quyết vấn đề.

Thay đổi yêu cầu


Với phần lớn khách hàng không thực sự biết họ muốn gì hoặc hiểu đầy đủ vấn đề họ đang cố
gắng giải quyết, kết hợp với các yếu tố thay đổi trong môi trường kinh doanh của họ, bạn
sẽ thường phát hiện ra rằng phạm vi dự án của bạn thay đổi và mở rộng trong suốt vòng đời
của chúng. Không có gì lạ khi tìm thấy những gì ban đầu được dự định là công việc đáng giá
trong một tuần trở thành một dự án kéo dài hàng tháng hoặc thậm chí hàng năm. Với loại dự án
này, rất nhiều kế hoạch xảy ra khi bắt đầu dự án trở nên dư thừa giữa chừng trong quá trình
phát triển, nghĩa là thời gian và tiền bạc đã bị lãng phí cho các hoạt động phân tích không
ảnh hưởng đến việc phân phối dự án. Hơn nữa, mỗi thay đổi dẫn đến yêu cầu đối với kế hoạch
hiện tại phải được cập nhật để phản ánh những thay đổi trong yêu cầu, do đó làm tăng thêm thời
gian và ngân sách cần thiết.

Với tất cả những yếu tố này cản trở việc sử dụng lập kế hoạch trong phương pháp
làm việc tự do của bạn, sẽ dễ dàng cho rằng lập kế hoạch là một điều tồi tệ đối với
việc phát triển phần mềm tự do. Sự thật không thể xa hơn giả định này - mặc dù có thể nói
rằng việc lập kế hoạch chi tiết được bảo vệ bởi các phương pháp nặng nề là quá mức cần thiết
và cuối cùng không phù hợp với phần lớn các dự án tự do, vẫn cần phải có một hình thức lập kế
hoạch phù hợp. nhẹ để các hoạt động được thực hiện hiệu quả và có lợi nhuận với ngân sách nhỏ
hơn, nhưng đủ đủ để xác định các kỳ vọng và giữ cho dự án đi đúng hướng để đáp ứng các mốc
quan trọng và hoàn thành.

Mức độ lập kế hoạch và phân tích cần thiết cho các dự án tự do phụ thuộc vào dự án được
đề cập, với các yếu tố chính quyết định nỗ lực cần thiết là ngân sách, thời gian và độ
phức tạp. Các xem xét lập kế hoạch và phân tích chính cho tất cả các dự án nên bao gồm:

Định nghĩa vấn đề

Xác định rõ ràng vấn đề cần giải quyết mà không ảnh hưởng đến cách khách hàng mô tả các
yêu cầu liên quan đến giải pháp ưu tiên.

231
Machine Translated by Google

phân tích văn hóa


Hiểu những người liên quan đến dự án sẽ đóng vai trò quan trọng trong việc xác định giải pháp
tốt nhất cho vấn đề, cũng như hiểu cách quản lý khách hàng và nhân viên của họ. Phân tích văn
hóa không nên bị hạn chế đối với những người trực tiếp tham gia thiết kế và phát triển dự án,
mà còn đối với những người bên ngoài quá trình phát triển dự án, chẳng hạn như người dùng cuối của
phần mềm, chẳng hạn như khách hàng và nhà cung cấp của khách hàng. Hoạt động này giúp xác định các
rào cản xã hội đặt ra cho cả quy trình phát triển phần mềm và sản phẩm cuối cùng, cả hai sẽ làm
nổi bật giải pháp tiềm năng nào sẽ dễ thực hiện nhất và ít rủi ro nhất.

Về ví dụ trang web trước đó, phân tích văn hóa sẽ tiết lộ rằng đối tượng mục tiêu của tất cả
các doanh nghiệp có thể được tìm thấy trên các nền tảng web có sẵn, cho dù đó là eBay, Amazon,
eLance hay Tutor Hunt. Phân tích này cũng sẽ xác định xem những khách hàng tiềm năng này đã
quen thuộc với các nền tảng có sẵn như thế nào và có đủ niềm tin để thực hiện thanh toán qua
chúng hay không; tất cả đều đặt ra một rào cản đáng kể để xây dựng một trang web được xây dựng
tùy chỉnh để thực hiện cùng một công việc. Hơn nữa, phân tích này cũng sẽ xác định rằng bất kể
phần mềm được cung cấp cho quản lý nội dung và thương mại điện tử tốt như thế nào, không phải tất
cả các doanh nghiệp đều có khả năng thực hiện chiến lược nội dung liên tục cần thiết để làm cho
trang web của họ thành công — trong một số trường hợp, khả năng thay đổi và thêm nội dung trên
trang web có thể dẫn đến việc một số khách hàng thêm nội dung được viết kém làm mất uy tín thương hiệu.

đánh giá công nghệ


Không nên đánh giá thấp công nghệ liên quan đến phần mềm. Cần thận trọng để đảm bảo rằng tầm
nhìn cho giải pháp phù hợp với công nghệ hiện có và đang được sử dụng. Các dự án nên tránh quá
tham vọng bằng cách được thiết kế để yêu cầu các công nghệ mà đối tượng mục tiêu không sử dụng
— một ví dụ về điều này sẽ là phát triển một ứng dụng dành cho thiết bị di động yêu cầu các
thông số kỹ thuật hệ điều hành và phần cứng điện thoại cao hơn mức trung bình, do đó hạn chế số
lượng người dùng có thể sử dụng ứng dụng. Như đã nói, điều này đặc biệt liên quan đến các ứng
dụng dành cho thiết bị di động, cũng nên suy nghĩ về tình trạng dự kiến của thị trường khi kết
thúc dự án. Đối với các ứng dụng dành cho thiết bị di động, thông số kỹ thuật phần cứng được cải
thiện nhanh chóng hàng năm, với người dùng điện thoại trung bình nâng cấp hai năm một lần. Điều
này ảnh hưởng không nhỏ đến các dự án có thời hạn kéo dài; với đặc điểm kỹ thuật công nghệ trung
bình được sử dụng khi kết thúc dự án khác biệt đáng kể so với đặc điểm kỹ thuật được sử dụng khi
bắt đầu. Đánh giá môi trường

Các yếu tố nằm ngoài tầm kiểm soát của khách hàng dẫn đến các tình huống ảnh hưởng đến các yêu
cầu của dự án. Hiểu được môi trường mà hoạt động kinh doanh của khách hàng sẽ giúp hiểu rõ hơn
về cách định nghĩa vấn đề có thể thay đổi trong suốt thời gian của dự án. Bằng cách hiểu môi
trường sẽ ảnh hưởng đến dự án như thế nào, các cân nhắc mới có thể được xác định đối với các yêu
cầu triển khai lập trình của phần mềm về tính linh hoạt sẽ cho phép điều chỉnh các yêu cầu tính
năng mới do những thay đổi xảy ra trong môi trường kinh doanh của khách hàng.

232
Machine Translated by Google

phân tích rủi ro


Yếu tố rủi ro không bao giờ được đánh giá thấp; cho dù đó là các yếu tố có tác động trực
tiếp đến mã hay liệu đó có phải là rủi ro khách hàng không thanh toán hóa đơn của họ hay không.
Hiểu được rủi ro cho phép đưa ra các quy trình để loại bỏ hoặc giảm thiểu tác động của
chúng nếu chúng xảy ra.

phân tích khả thi


Việc xác định các phương án để giải quyết vấn đề mà không thiên vị bất kỳ giải pháp riêng lẻ
nào, bất kể khách hàng đề xuất điều gì là rất quan trọng. Tính khả thi nên được coi là khả
năng đạt được trong khung thời gian và ngân sách do khách hàng đưa ra, cũng như kết quả cuối
cùng có khả năng thực tế tạo ra các kết quả ngắn hạn và dài hạn mà khách hàng mong muốn.

xác định cột mốc

Chia dự án thành các mục tiêu nhỏ hơn giúp dễ dàng cho khách hàng biết bạn còn bao xa nữa mới
hoàn thành, cũng như xác định xem bạn có đang thực hiện đúng tiến độ hay không — và để thực
hiện hành động sớm nếu không.

thang thời gian

Có ước tính về việc phân phối các mốc quan trọng và các nhiệm vụ phân tích của chúng sẽ tốt cho
ước tính thời gian của riêng bạn cũng như cho phép khách hàng xem các cập nhật thường xuyên về
tiến độ của dự án.

Các yếu tố yêu cầu lập kế hoạch và phân tích cần liên quan đến loại khách hàng mà dự án dành
cho, những người bạn sẽ làm việc cùng trong tổ chức của khách hàng và thậm chí cả nhóm mà bạn
đang tuyển dụng hoặc làm việc cùng. Phương pháp lập kế hoạch và phân tích này hoàn toàn tập trung
vào các vấn đề định hướng con người; được gọi là một phương pháp mềm, điều này khác với các
phương pháp và hoạt động đã đề cập trước đó tập trung hoàn toàn vào việc triển khai công nghệ.
Không bao giờ nên đánh giá thấp các vấn đề về con người vì chúng luôn có tác động đến tiến độ của
dự án. Cùng một dự án cho hai khách hàng khác nhau có thể có sự khác biệt đáng kể về chi phí và
thời gian hoàn toàn dựa trên các yếu tố con người liên quan đến nhân viên của khách hàng và văn
hóa công ty của họ. Các yếu tố mềm quan trọng trong phương pháp của bạn nên bao gồm các cân nhắc về:

Hiểu đặc điểm và phong cách học hỏi của khách hàng và nhân viên của họ Mỗi doanh nghiệp đều khác

nhau, vì vậy điều quan trọng là đừng cho rằng những gì phù hợp với khách hàng này sẽ phù hợp với

khách hàng khác. Mọi người là sinh vật của thói quen và hiểu được điều này sẽ mang lại cho bạn lợi
thế để tìm hiểu các kiểu hành vi và đặc điểm ở khách hàng của bạn, điều này sẽ cho phép bạn dự đoán
hành động và phản ứng của họ đối với các tình huống xuất hiện trong dự án. Tầm nhìn xa này rất quan
trọng để cho phép bạn chủ động tránh các vấn đề — thay vì phản ứng lại các vấn đề sau khi chúng đã
xảy ra.

233
Machine Translated by Google

Các phương pháp mềm như Phương pháp hệ thống mềm (SSM) của Peter Checkland giải quyết vấn đề này
bằng cách có một quy trình cụ thể để mô hình hóa các vai trò khác nhau của mọi người trong các tình huống.
Mô hình đề cập đến những người đóng vai trò trong tình huống với tư cách là diễn viên, chủ sở hữu và
khách hàng, mô tả từng mối quan hệ với môi trường, kinh nghiệm và quan điểm của họ ảnh hưởng đến cách
họ tham gia vào dự án. Bằng cách hiểu mô hình, bạn có thể phát triển sự hiểu biết về các động lực và
hạn chế của chúng để bạn có thể xác định cách tốt nhất để tiếp cận dự án với ít va chạm, thất vọng và
nhầm lẫn nhất chỉ bằng cách truyền đạt đúng thông điệp đến đúng người. Rốt cuộc, những quyết định
thích hợp chỉ có thể được đưa ra bởi những người thích hợp, những người có cái nhìn sâu sắc và thẩm
quyền hiện tại; bạn chỉ đang lãng phí thời gian của mình, nếu không muốn nói là cũng mở ra cánh cửa
cho những quyết định hoặc kỳ vọng tồi tệ, bằng cách nói với nhầm người về những vấn đề của dự án mà
họ không nên tham gia.
Quá trình này cũng tạo thành một nền tảng vững chắc để đặt ra những kỳ vọng mà hiệu suất của
dự án sẽ được đo lường.

Đặt kỳ vọng và thước đo hiệu suất Khi đề cập đến việc đặt kỳ vọng và thước

đo hiệu suất để đánh giá hiệu suất của dự án, điều đầu tiên cần nghĩ đến là giữ mục tiêu SMART
- cụ thể, có thể đo lường được, có thể đạt được, thực tế và kịp thời. Các mục tiêu SMART phải
là nền tảng cho kế hoạch của bạn để đặt ra những kỳ vọng phù hợp để có thể đáp ứng các chỉ số
hiệu suất của bạn. Những người có kinh nghiệm trong bất kỳ loại lĩnh vực kỹ thuật hoặc quản lý nào
sẽ nhanh chóng học được rằng hứa hẹn dễ hơn nhiều so với thực hiện, với việc phát triển phần mềm
cũng không ngoại lệ. Câu nói "lỏng lẻo thì chìm đắm trong tàu" là một cụm từ hay nên được đưa vào
như một phần trong câu thần chú của nhóm bạn để tránh những tình huống mà mọi người vô tình nói
những điều trước mặt khách hàng làm tăng kỳ vọng một cách không cần thiết.

Rủi ro cần tránh trong tất cả các dự án phát triển phần mềm là đưa ra bất kỳ loại gợi ý nào nằm ngoài
chương trình SMART. Điều này xảy ra dễ dàng hơn nhiều so với tưởng tượng; đặc biệt nếu bạn có các nhà
phát triển phần mềm cấp dưới làm việc với bạn, những người tương tác với khách hàng tại các cuộc họp
hoặc qua e-mail. Điều này phổ biến hơn trong các dự án sáng tạo kỹ thuật số liên quan đến phát triển
phần mềm, nơi mọi người dễ dàng quá nhiệt tình và đánh giá thấp mức độ phức tạp cũng như yêu cầu về
thời gian cho tham vọng của họ. Trong những tình huống này, dự kiến mất hàng giờ để tạo ra có thể mất
vài ngày hoặc vài tuần, dẫn đến dự án bị trì hoãn, vượt quá ngân sách và nghiêm trọng nhất là nhóm dự
án không đáp ứng được các chỉ số hiệu suất, có khả năng dẫn đến việc khách hàng ngừng dự án. Cần phải
có một dạng phương pháp mềm như SSM để kiểm soát loại tình huống này nhằm tránh những khó khăn nảy
sinh dẫn đến xung đột và đổ lỗi. Đổi lại, các nhà phát triển phần mềm có thể tránh bị phân tâm bởi
chính sách của nhóm/khách hàng, dẫn đến việc họ dành nhiều thời gian hơn để tiến hành dự án một cách
hiệu quả.

234
Machine Translated by Google

Giải quyết xung đột Sẽ thật

ngây thơ khi nghĩ rằng các dự án của bạn sẽ được thực hiện và hoàn thành mà không có xung đột
dưới một hình thức nào đó. Không phải mọi xung đột đều nghiêm trọng, nhưng tất cả đều là xung đột.

Tất cả các xung đột bắt nguồn từ chương trình nghị sự hoặc sự cố liên lạc, với phần lớn
là do sự cố sau. Trong hầu hết các trường hợp, tránh xung đột là do có một chiến lược giao
tiếp rõ ràng — đặc biệt là khi bạn đang xử lý các dự án có sự tham gia của nhiều người.
Đảm bảo rằng những người phù hợp nhận được thông tin liên lạc phù hợp, hoàn thành với khả
năng nhắc nhở họ và ghi lại các thỏa thuận bằng văn bản. Thời gian là một yếu tố của tất
cả các dự án làm sai lệch nhận thức về các thỏa thuận; càng nhiều thời gian có nghĩa là
càng có nhiều phạm vi để mọi người quên hoặc chọn lọc trong việc ghi nhớ các chi tiết tốt
hơn. Khi các thỏa thuận được ghi lại rõ ràng bằng văn bản, các vấn đề về trí nhớ có chọn lọc
và bóp méo các chi tiết của thỏa thuận sẽ biến mất một cách kỳ diệu.

Nguyên nhân khác dẫn đến xung đột là chương trình nghị sự của mọi người, vốn luôn là điều
cần chú ý. Những xung đột này rất khó tránh khỏi do người hoặc những người có chương trình
nghị sự tích cực chỉ đạo dự án theo hướng xung đột. Hiểu những chương trình nghị sự này
là gì sẽ cho phép bạn lập kế hoạch trước để có phản ứng thích hợp với tình huống.
Đôi khi, giải pháp nằm ở việc xác định cách xoa dịu mọi người bằng chương trình nghị sự
mà không làm hỏng dự án, trong khi những lúc khác, tốt nhất là cô lập những người đang gây ra
vấn đề để có thể giảm thiểu tác động của họ đối với tiến trình của dự án. Cần lưu ý rằng có một
sự cân bằng tốt giữa việc xoa dịu mọi người để tránh bị lôi kéo vào chính trị và việc đưa ra
những quyết định thô bạo có thể khiến mọi người phật lòng. Luôn hiểu bạn phải chịu trách nhiệm
với ai để nỗ lực của bạn có thể tập trung vào việc xoa dịu họ; khi nói đến xung đột do chương
trình nghị sự gây ra, nhiều vấn đề xảy ra do mọi người bẻ cong sự thật hoặc nói dối trắng trợn.

Tránh tham gia vào chính trị của khách hàng Chính trị giữa bạn/

nhóm của bạn và khách hàng là đủ để bạn quan tâm mà không cần phải tham gia vào chính trị nội bộ của
khách hàng. Đảm bảo không cố ý hoặc vô tình tham gia vào hoạt động chính trị của khách hàng, bao gồm
đưa ra nhận xét về các cá nhân, quyết định hoặc tình huống không liên quan trực tiếp đến công việc
của bạn. Rất dễ vô tình bước vào chính trị nội bộ của khách hàng bằng cách bình luận về các hoạt động
của họ hoặc cá nhân nhân viên. Ngay cả khi chỉ nói đùa, điều này có thể dẫn đến nhận thức về việc bạn
đứng về phía họ trong công việc của họ, dẫn đến sự ngờ vực len lỏi vào mối quan hệ của bạn với nhân
viên của khách hàng, những người có ảnh hưởng trực tiếp đến khả năng làm việc của bạn trong dự án.
Việc bạn tham gia vào hoạt động chính trị của khách hàng sẽ tạo thêm những rào cản không cần thiết để
đáp ứng các chỉ số hiệu suất của dự án; trong những trường hợp cực đoan nhất có thể gây ra sự thất
bại hoàn toàn của dự án.

235
Machine Translated by Google

Văn bản hóa các thỏa thuận Một điều

nên được tham gia vào tất cả các vấn đề mềm là tài liệu của các thỏa thuận.
Các thỏa thuận này không cung cấp các giải pháp kỳ diệu cho các yếu tố kỹ thuật như giải quyết
mã bị hỏng, nhưng chúng là một khuôn khổ để giữ cho dự án đi đúng hướng với một đặc điểm kỹ thuật
đã thỏa thuận. Điều này mang lại lợi ích cho tất cả mọi người, giúp nhắc nhở các nhà phát triển
những gì cần phải làm, đồng thời đảm bảo rằng khách hàng có tham chiếu đến những gì họ đã yêu cầu.
Có một chính sách để ghi lại các thỏa thuận cũng giúp tránh xung đột gây ra thông qua các chương
trình nghị sự bằng cách xác định rõ ràng ai đang yêu cầu thay đổi thông số kỹ thuật của dự án.
Điều này cho phép truy tìm bất kỳ hành động ranh ma nào theo cách cho phép khách hàng thực hiện
hành động và tránh cho bạn phải chịu trách nhiệm.

Truyền đạt ý tưởng, thỏa thuận và quan điểm Nền tảng của tất cả

các vấn đề mềm nằm ở nhận thức và một phần quan trọng trong cách tạo ra nhận thức
là thông qua giao tiếp. Giao tiếp tốt có thể có nghĩa là sự khác biệt giữa các ý
tưởng tốt được diễn giải đúng như chúng dự định hoặc bị diễn giải sai thành ý tưởng
tồi - dẫn đến việc phần mềm được sản xuất không có các tính năng có thể tạo ra sự
khác biệt giữa thành công và thất bại. Tối thiểu, việc sử dụng các mẫu tài liệu cho
Microsoft Office hoặc Libre Office nên được xem xét cho nhiều thông tin liên lạc;
đặc biệt là những thứ cần phải được ghi lại. Việc sử dụng các mẫu để giao tiếp cho
phép tính nhất quán cũng như nhắc nhở những người đang viết thông tin liên lạc về
những gì họ nên hỏi hoặc cung cấp thông tin. Ví dụ về các mẫu có thể mang lại lợi ích
cho thông tin liên lạc bao gồm tài liệu yêu cầu thay đổi, cập nhật báo cáo tiến độ và
thông tin liên lạc phân tích yêu cầu; tất cả các thông tin liên lạc này có thể được
hưởng lợi từ chất lượng được cải thiện bằng cách nhắc người viết nêu chi tiết ai, cái
gì, khi nào, ở đâu và tại sao. Tính nhất quán trong định dạng mẫu cũng giúp những
người muốn tìm thông tin cụ thể dễ dàng hơn nếu định dạng mẫu được thiết kế để có một
phần cụ thể dễ nhận biết khi đọc tốc độ.

Có một kế hoạch để thực hiện và giải quyết tất cả các vấn đề này sẽ cho phép bạn quản lý các dự
án của mình theo cách tránh hoặc ít nhất là giảm thiểu nguy cơ các vấn đề về con người trở thành
rào cản đối với tiến trình của dự án.

Phương pháp quan tâm


Mặc dù một số đã được đề cập ngắn gọn trước đó trong chương này, phần này xem xét một số phương
pháp phù hợp hoặc được thiết kế đặc biệt cho phát triển phần mềm. Các mô tả về các phương pháp
luận này nhằm mục đích giới thiệu về tính phù hợp của chúng chứ không phải là một sổ tay hướng
dẫn chi tiết để thực hiện chúng - trong số đó có phần dành riêng.

236
Machine Translated by Google

Mô hình thác nước


Mô hình thác nước là một quy trình có cấu trúc để phát triển phần mềm, phần lớn nhấn mạnh
vào tiến trình từ giai đoạn này sang giai đoạn tiếp theo theo thứ tự hợp lý và quay trở
lại giai đoạn trước đó khi giai đoạn hiện tại không thể hoàn thành theo tiêu chuẩn thỏa đáng.
Trọng tâm của nó là tạo ra đặc tả thiết kế trước khi bắt đầu triển khai mã hóa — một
quy trình hoạt động trong môi trường lý tưởng không bao giờ thay đổi và nơi khách hàng có
thể truyền đạt trước các yêu cầu của họ một cách hoàn hảo. Mối quan hệ giữa từng giai
đoạn của chu kỳ phát triển được thể hiện trong sơ đồ sau:

237
Machine Translated by Google

Như được minh họa trong sơ đồ, mô hình thác nước chia dự án phát triển phần mềm thành sáu giai đoạn cụ

thể tập trung vào một loại hoạt động cụ thể. Đó là:

h Yêu cầu: Xác định kết quả mong muốn của dự án; Hoạt động này xem xét việc mô tả vấn đề cần giải

quyết trong mối quan hệ với các đặc điểm riêng mà giải pháp được chọn phải có.

h Phân tích: Xem xét vấn đề chi tiết hơn để xác định các vấn đề tiềm ẩn,

các giả định được đưa ra, đặc điểm của khách hàng, ngân sách khả dụng và các tùy chọn về thời

gian phân phối liên quan đến các giải pháp khả dụng đáp ứng các yêu cầu đã xác định.

Phân tích này cho phép xác định giải pháp thích hợp nhất phù hợp với tình hình hiện tại — giải

pháp này có thể không phải là giải pháp công nghệ tiên tiến nhất hoặc thậm chí không dựa trên

phần mềm. Về bản chất, giai đoạn phân tích cũng là nghiên cứu khả thi cho dự án.

h Thiết kế: Quá trình xác định cách thực hiện giải pháp đã chọn.

Quá trình này là sự kết hợp của việc xác định các quy trình logic và cấu trúc thành phần

của các hệ thống phụ như cơ sở dữ liệu và mô-đun giao tiếp, cũng như các thành phần trực

quan của giao diện người dùng. Tài liệu thiết kế lý tưởng phải được tạo theo tiêu chuẩn mô tả

chính xác cách phát triển giải pháp đã chọn.

h Thực hiện: Việc tạo ra thiết kế đã xác định. Một tình huống lý tưởng

sẽ bao gồm tài liệu thiết kế được trao cho người sáng tạo (nhà phát triển phần mềm, nhà thiết

kế và/hoặc bất kỳ ai khác được yêu cầu), những người có thể tạo và tích hợp từng thành phần

thiết kế được lập tài liệu mà không cần giao tiếp với khách hàng hoặc hiểu quy trình kinh doanh

của họ.

h Thử nghiệm: Khi thiết kế đã được triển khai thành một giải pháp hoạt động,

quá trình thử nghiệm cách nó hoạt động liên quan đến việc tạo ra kết quả mong đợi dựa trên dữ

liệu thô và việc sử dụng thực tế của người dùng cuối bắt đầu. Giai đoạn này nhằm mục đích tạo ra

một danh sách bất kỳ lỗi nào trong quá trình triển khai — do đó, danh sách này có thể dựa trên

thiết kế được cung cấp. Mỗi lỗi được tìm thấy dẫn đến một yêu cầu thay đổi được chuyển đến người

kiểm tra phần mềm (và nhà thiết kế nếu có liên quan), những người lần lượt phát triển bản sửa
lỗi cho lỗi đó.

h Bảo trì: Khi hệ thống vượt qua tất cả các bài kiểm tra theo tiêu chuẩn thỏa đáng, hệ thống sẽ được

xuất bản dưới dạng bản phát hành trực tiếp. Các lỗi khác vẫn có thể được tìm thấy trong phiên bản

phát hành trực tiếp, cũng như các yêu cầu điều chỉnh mới được thực hiện bởi người dùng thực của hệ thống.

Giai đoạn bảo trì sẽ thu hút các yêu cầu này để giải quyết các lỗi và khởi động lại quy trình

phát triển để tích hợp các yêu cầu tính năng mới.

Giống như bất cứ điều gì, có những tình huống mà mô hình thác nước là lý tưởng và những tình huống khác thì

nó ít phù hợp hơn. Sau đây là danh sách những ưu và nhược điểm của nó:

Một số ưu điểm bao gồm:

h Kỷ luật: Cấu trúc tập hợp của mô hình thác nước buộc các nhà phát triển và nhóm của họ phải làm

việc theo cách có cấu trúc phù hợp với tiến trình của dự án từ giai đoạn này sang giai đoạn khác.

238
Machine Translated by Google

h Trọng tâm: Điểm nhấn chính của mô hình là sự tiến triển của nó từ giai đoạn này sang giai đoạn

khác, nghĩa là các thành viên trong nhóm và khách hàng luôn nhận thức được giai đoạn hiện tại

của dự án. Điều này giúp tránh các tình huống chẳng hạn như quảng cáo thêm các tính năng

thiết kế mới khi giai đoạn triển khai đang diễn ra, cũng như giúp khách hàng hiểu rõ khi cửa sổ

sửa đổi yêu cầu của họ đóng lại.

h Có kiểm soát: Nhấn mạnh vào việc xác định đầy đủ vấn đề và thiết kế của

hệ thống trước khi bất kỳ mã nào được viết đảm bảo tránh lãng phí thời gian do các yêu cầu thay

đổi và các bổ sung tính năng mới được thêm vào trong quá trình phát triển mã.

h Sự hoàn hảo: Quy trình có cấu trúc xác định vấn đề và thiết kế trước khi bất kỳ mã nào được viết cho

phép tạo ra một thiết kế hệ thống chính xác hơn và chất lượng tốt hơn. Thiết kế chất lượng cao hơn

này mang lại định hướng tốt hơn cho các nhà phát triển phần mềm, dẫn đến việc phần mềm phù hợp với

vấn đề chính xác hơn mà không có vẻ rời rạc thông qua việc bổ sung các tính năng quan trọng như là

một suy nghĩ lại chưa được suy nghĩ thấu đáo.

h Kiến thức: Một yếu tố liên quan đến chất lượng thiết kế cho

thực hiện là khả năng kiến thức được chuyển giao giữa tất cả các bên tham gia vào dự án. Kết hợp

với một quy trình chính thức để ghi lại thông tin liên lạc chính xác, có liên quan và chất lượng

cao, mô hình thác nước cho phép kiến thức được tạo ra ở mỗi giai đoạn được chuyển cho những người

liên quan đến giai đoạn tiếp theo. Điều này có nghĩa là không nên có phạm vi cho các giai đoạn sau

của thiết kế và triển khai đi chệch khỏi các yêu cầu đã xác định của dự án. Điều này đặc biệt quan

trọng đối với các dự án tập trung vào kinh doanh đòi hỏi các dịch vụ của quảng cáo để tạo ra các

thành phần thiết kế trực quan; trong khi các nhà thiết kế có thể đưa ra các quyết định sáng tạo

xuất sắc, họ không tuân thủ nguyên tắc về lý thuyết kinh doanh và rất có thể không tiếp xúc với các

chi tiết đầy đủ về các động cơ kinh doanh của dự án phần mềm. Quy trình có cấu trúc của mô hình

thác nước tạo ra một chuỗi mệnh lệnh trong đó kiến thức chỉ chảy theo các hướng để chỉ ra cách thức

tiến triển của giai đoạn tiếp theo hoặc nơi phản hồi được cung cấp để xem xét lại bất kỳ điều gì

không khả thi hoặc không thể thực hiện. Chuỗi mệnh lệnh này cũng giúp dễ dàng truy tìm những nỗ lực

cố ý làm sai hướng dẫn được cung cấp — ví dụ: những thay đổi trái phép trong thiết kế có thể được

truy ra người thiết kế nếu phần mềm được phát triển phù hợp với thiết kế được cung cấp.

Một số nhược điểm bao gồm:

h Hiểu biết: Người mua dịch vụ phát triển phần mềm thường không hiểu đầy đủ vấn đề mà họ đang cố gắng

giải quyết. Điều này cũng có nghĩa là họ không hiểu cách họ định giải quyết nó bằng phần mềm cho

đến khi họ thấy một phiên bản hoạt động mà họ có thể đánh giá để cung cấp phản hồi. Cấu trúc của

mô hình thác nước để tiến triển tuyến tính từ giai đoạn này sang giai đoạn tiếp theo khiến nó

không phù hợp với những khách hàng yêu cầu loại hình linh hoạt này. Đối với những khách hàng này,

rủi ro chính của mô hình thác nước là cách nó có thể đặt họ vào tình thế phải chấp nhận kết quả

cuối cùng mà họ không muốn hoặc phải đầu tư đáng kể để thực hiện các yêu cầu mà họ xác định trong

các giai đoạn sau.

239
Machine Translated by Google

h Ước tính: Các dự án phức tạp mà khách hàng không nhận thức đầy đủ về các yêu cầu của họ
sẽ gây ra vấn đề vì ước tính về thời gian và chi phí chỉ có thể được cung cấp khi công
việc đang được tiến hành tốt. Rủi ro với điều này là vào thời điểm các yêu cầu đầy đủ
được xác định, khách hàng có thể nhận ra rằng họ không có thời gian hoặc ngân sách cần
thiết để phát triển dự án. Trong trường hợp xấu nhất, các giai đoạn ban đầu của mô hình
thác nước có thể ngốn quá nhiều thời gian và ngân sách sẵn có trước khi ước tính có thể xác
định chi phí sản xuất. Điều này có khả năng dẫn đến tranh chấp về những gì khách hàng đã
thanh toán, đặc biệt nếu khách hàng không nhận được phần mềm vì ngân sách của họ không đủ
cho giai đoạn sản xuất.

h Các giả định: Bản chất của tiến trình có cấu trúc của thác nước có nghĩa là việc chuyển
giao kiến thức được đánh trọng số theo một hướng từ giai đoạn này sang giai đoạn tiếp
theo. Điều này có nghĩa là có rất nhiều cơ hội cho các quyết định được đưa ra dựa trên
các giả định trong các giai đoạn trước dẫn đến các vấn đề trong các giai đoạn sau - đặc
biệt là đối với việc thực hiện. Không có khả năng cho các chuyên gia, chẳng hạn như các
lập trình viên chịu trách nhiệm thực hiện các giai đoạn sau, có đầu vào trong các giai
đoạn trước, sẽ có rất nhiều cơ hội cho các giả định không chính xác được đưa ra gây ra vấn đề.
Một ví dụ về điều này sẽ là các giả định về công nghệ có sẵn, thời gian và chi phí liên
quan dẫn đến các vấn đề không mong muốn trong quá trình phát triển phần mềm.
Ứng cử viên có khả năng nhất của những vấn đề này sẽ trải dài từ các giai đoạn như
yêu cầu thiết kế và chức năng, trong đó các yêu cầu không cần thiết được chỉ định và các
tính năng được thiết kế theo cách phức tạp hơn để phát triển so với những gì chúng xuất
hiện ban đầu. Các tính năng như vậy có thể gây ra các vấn đề lớn trong việc giữ dự án
theo các ước tính được đưa ra trước đó trong dự án, cũng như các khái niệm thiết kế đặt
ra cho khách hàng những kỳ vọng không thực tế hóa ra là không thể thực hiện được về mặt
ngân sách, thời gian hoặc công nghệ. h Khả năng kiểm tra: Mặc dù mô hình thác nước có khả

năng hoàn nguyên qua lại giữa các giai đoạn riêng lẻ, nhưng việc nhấn mạnh dự án tiến triển
từng giai đoạn một khiến việc kiểm tra độ chính xác của các giai đoạn trước khi triển
khai trở nên khó khăn do không cho phép thực hiện nhiều giai đoạn xảy ra cùng một lúc.
Một ví dụ về điều này sẽ là khi thử nghiệm thiết kế đã triển khai cho thấy giải pháp
không cung cấp đầu ra mong muốn như thế nào; việc thiếu thử nghiệm song song với các hoạt
động thiết kế và phân tích tạo ra lỗ hổng trong đó các giả định được đưa ra về các vấn
đề nằm trong mã được phát triển, trong khi trên thực tế, lỗi có thể nằm trong thiết kế,
phân tích hoặc thậm chí là định nghĩa yêu cầu. Lỗ hổng này khiến dự án lãng phí thời gian
đáng kể trong việc điều tra các vấn đề sai, dẫn đến nguy cơ trễ hạn và vượt quá ngân sách.

h Tính linh hoạt: Cấu trúc của mô hình thác nước chỉ cho phép thực hiện một giai đoạn tại một
thời điểm. Điều này mở ra phạm vi cho các dự án tồn tại để đáp ứng với môi trường thay
đổi nơi các sự kiện yêu cầu phản ứng nhanh. Quy trình cứng nhắc của mô hình thác nước có
thể có nghĩa là bất kỳ điều chỉnh nào được thực hiện theo phương pháp này đều đã lỗi thời
vào thời điểm chúng được hoàn thành.

240
Machine Translated by Google

Phần kết luận

Mô hình thác nước có nhiều lợi thế để đảm bảo rằng dự án tiến triển theo một quy tắc và
tuyến tính, giúp tất cả các bên liên quan dễ dàng xác định dự án đang ở đâu trong vòng đời
của nó và điều gì sẽ xảy ra tiếp theo. Cấu trúc tiến trình tuyến tính của mô hình thác nước
cũng cung cấp khả năng cho một chuỗi mệnh lệnh có phạm vi tối thiểu đối với các giai đoạn vô
tình đi chệch khỏi kế hoạch dự án — những sai lệch bắt nguồn từ lịch trình cá nhân có thể dễ
dàng truy nguyên đến người chịu trách nhiệm.

Vấn đề chính với mô hình thác nước khiến nó không phù hợp với nhiều dự án, bao gồm phần lớn
các dự án tự do quy mô nhỏ, là yêu cầu hiểu đầy đủ vấn đề của khách hàng. Điều này làm cho
mô hình thác nước không phù hợp với các dự án quy mô nhỏ, nơi cần ước tính thời gian và chi
phí trước khi bắt đầu dự án.
Tuy nhiên, quá trình xác định đầy đủ vấn đề và đưa ra các yêu cầu như một phần của mô hình
thác nước cuối cùng giúp tiết kiệm được nhiều thời gian tổng thể — với điều kiện là có thể
tránh được các giả định quan trọng ảnh hưởng đến các giai đoạn sau của quá trình phát triển phần mềm.

mô hình gia tăng


Mô hình gia tăng dựa trên mô hình thác nước, nhưng xem xét giải quyết các vấn đề gây ra
trong các chu kỳ phát triển dài bằng cách chia dự án thành các dự án nhỏ hơn được trình bày
dưới dạng các bản phát hành riêng lẻ. Nếu dự án là tạo ra một ngôi nhà, chúng ta có thể xem
xét việc xây dựng các thành phần riêng lẻ như sau:

241
Machine Translated by Google

Sau khi hoàn thành và tích hợp mọi thứ trong danh sách tạo, sản phẩm cuối cùng sẽ hình thành:

Việc thực hiện dự án này bằng cách sử dụng mô hình gia tăng sẽ trông giống như sơ đồ sau:

Mô hình gia tăng giải quyết một số vấn đề chính của mô hình thác nước, nhưng cũng có những vấn
đề của riêng nó. Một số ưu điểm bao gồm:

h Tính linh hoạt: Việc chia nhỏ dự án thành các thành phần riêng lẻ có nghĩa là có nhiều
tính linh hoạt hơn cho việc phát triển các yêu cầu tính năng mới được giới thiệu sau
này trong vòng đời dự án.

242
Machine Translated by Google

h Giao hàng: Cho phép khách hàng xem các thành phần hoạt động nhanh hơn nhiều
hơn mô hình thác nước, do đó tránh được nhiều vấn đề như khách hàng nhận thấy tiến độ quá

chậm. h Kỷ luật: Mô hình gia tăng vẫn sử dụng cách tiếp cận có cấu trúc để phát triển phần

mềm, nghĩa là nó vẫn có lợi thế là giúp mọi người đi đúng hướng và tránh các vấn đề về việc mọi

người tham gia vào các hoạt động mà họ không nên làm. h Kiểm soát: Sự phát triển của các đơn
vị riêng lẻ có nghĩa là các vấn đề có thể được

được kiểm soát bằng cách hạn chế ảnh hưởng của chúng đối với thành phần cụ thể được đề cập.
Điều này rất hữu ích để đảm bảo rằng có thể giảm thiểu hoặc loại bỏ sự gián đoạn đối với sự

phát triển của các thành phần khác trong hệ thống, cũng như giảm tác động của những vấn đề
này đối với bất kỳ ước tính hoàn thành dự án nào.

h Khả năng điều chỉnh: Đã có sự kiểm soát tốt hơn đối với việc xem xét lại các quyết định

làm ra; chẳng hạn như đối với các thành phần hóa ra quá tốn kém, kịp thời hoặc không thể phát
triển. Yếu tố này được củng cố khi các yêu cầu ban đầu không được xác định quá nghiêm ngặt.

Khả năng tạo từng thành phần như một dự án của riêng nó có nghĩa là thiết kế của chúng có thể
được điều chỉnh ở một mức độ nào đó để phù hợp với những gì có thể thực hiện mà không ảnh

hưởng đến các thành phần khác trong dự án rộng lớn hơn. h Phát triển song song: Với các thành

phần được phát triển độc lập, có tùy chọn phát triển chúng song song với các thành phần khác. Điều
này có ý nghĩa khi dự án có nhiều lập trình viên/nhóm có thể đảm nhận trách nhiệm của các

thành phần riêng lẻ hoặc khi mã có thể được sử dụng lại trên hệ thống phần mềm.

h Khả năng kiểm tra: Việc kiểm tra trở nên dễ dàng hơn rất nhiều với dự án được chia thành các phần nhỏ hơn

các thành phần, nghĩa là các thành phần nhỏ hơn có thể được kiểm tra kỹ lưỡng hơn với ít độ

trễ hơn. Có thể tránh được các tình huống trong đó các lỗi trong các thành phần leo thang đến
các thành phần khác đang được phát triển không chính xác do các lỗi ban đầu này được xác định

trước khi chúng được tích hợp vào hệ thống chính.

h Phản hồi: Khả năng phát hành hệ thống dần dần có nghĩa là người dùng cuối có thể sử dụng hệ

thống sớm hơn để cung cấp phản hồi cho phép đưa ra quyết định sáng suốt hơn để phát triển

hơn nữa. Phản hồi này giúp tránh các quyết định tồi gây tốn kém và có vấn đề, cũng như tạo ra
các ý tưởng mới giúp hệ thống trở nên hữu ích hơn.

h Chi phí: Chi phí ban đầu để có được một phiên bản làm việc có chứa các tính năng cốt lõi sẽ thấp

hơn nhiều so với mô hình thác nước vì không cần phải hoàn thành dự án theo thông số kỹ thuật

đầy đủ trước khi phát hành lần đầu. Điều này cũng có một lợi thế bổ sung là tiết kiệm cho dự
án đầu tư thời gian không cần thiết vào các tính năng mà sau này được chứng minh là không cần

thiết; do đó mang lại cơ hội giảm chi phí tổng thể xảy ra do nỗ lực lãng phí đối với các tính
năng không mang lại lợi ích dự kiến.

243
Machine Translated by Google

Một số nhược điểm là:

h Hiểu biết: Khách hàng vẫn cần phải hiểu đầy đủ những gì họ muốn đạt được với dự án. Điều này không

tốt cho những khách hàng chỉ có ý tưởng mơ hồ về những gì họ muốn đạt được, những người tinh

chỉnh các yêu cầu của họ khi họ tìm hiểu về cách giải pháp phù hợp nhất phù hợp với thiết lập

kinh doanh của họ.

h Ước tính: Mặc dù việc cung cấp ước tính về các thành phần ban đầu được xác định cho dự

án trở nên dễ dàng hơn, nhưng vẫn có một vấn đề là hầu hết khách hàng sẽ không thể

xác định các yêu cầu của họ đủ chi tiết để có thể phát triển một danh sách đầy đủ các

thành phần Trong dự án. Điều này để lại rất nhiều câu hỏi chưa được trả lời, do đó dẫn

đến nhu cầu bổ sung thêm các yêu cầu sau này. Việc bổ sung các thành phần mới trong suốt

vòng đời của dự án có nghĩa là các ước tính ban đầu về yêu cầu thời gian và ngân sách sẽ

không đáng tin cậy — mặc dù các ước tính cho các thành phần riêng lẻ có nhiều khả năng

chính xác hơn với điều kiện là không có thay đổi nào đối với đặc tả yêu cầu ban đầu của

chúng.

h Rủi ro phụ thuộc: Có rủi ro phát triển các thành phần hệ thống

phụ thuộc vào các thành phần khác chưa được xác định đầy đủ hoặc có nguy cơ thay đổi theo

cách ảnh hưởng đến thành phần đó. Về ví dụ ngôi nhà, đây sẽ là nơi các bức tường bên ngoài
được xây dựng dựa trên các phòng bên trong ngôi nhà, nhưng sau đó các thay đổi được thực

hiện đối với các phòng bên trong này yêu cầu chúng phải tăng gấp đôi kích thước — do đó cũng

cần điều chỉnh cả hai các bức tường bên ngoài và mái nhà của tòa nhà để đáp ứng những thay đổi

yêu cầu này. Những thay đổi này cũng có thể ảnh hưởng đến các thành phần ít rõ ràng hơn, chẳng

hạn như kích thước và số lượng cửa sổ và cửa ra vào.

Ví dụ về cách các thay đổi đối với các thành phần bên trong ảnh hưởng đến các thành phần bên ngoài.

h Các giả định: Việc phát triển các thành phần vẫn dễ bị ảnh hưởng bởi các vấn đề phát sinh từ các

giả định, mặc dù ở mức độ thấp hơn nhiều so với mô hình thác nước. Điều này là do cách phân

tích trải rộng trên các giai đoạn riêng lẻ thay vì được thực hiện hoàn toàn ngay từ đầu. Mặc

dù vẫn có thể đưa ra các giả định, nhưng việc trì hoãn và tập trung phân tích vào các giai

đoạn trở nên phù hợp cho phép đưa ra các giả định vào thời điểm có nhiều thông tin hơn.

Kết quả của việc này mở ra khả năng hạn chế tác động của hành vi sai trái theo cách

giới hạn chúng trong thành phần mà chúng bắt nguồn.

244
Machine Translated by Google

h Thời gian: Phát triển mô-đun có khả năng đưa ra một số chi phí thời gian bổ sung khi so sánh với
việc phát triển dự án một cách tuyến tính từ đầu đến cuối. Chi phí thời gian bổ sung này xuất
hiện ở dạng liên lạc bổ sung và lặp lại khởi động, chẳng hạn như phân tích chi tiết mọi thành

phần mà lẽ ra chỉ được yêu cầu một lần trong mô hình thác nước.

h Chi phí: Thời gian tăng đồng nghĩa với chi phí tăng.

Phần kết luận

Mô hình gia tăng cung cấp một phương pháp có cấu trúc để phát triển phần mềm linh hoạt hơn mô

hình thác nước có cấu trúc cao nhưng cứng nhắc. Nó cũng cung cấp khả năng trình bày các phiên bản đang
hoạt động của phần mềm cho khách hàng sớm hơn và ở các giai đoạn thông thường, cũng như mở ra cơ hội sử

dụng chiến lược phát hành linh hoạt hơn.

Lợi ích về chi phí và thời gian đang gây tranh cãi với mô hình gia tăng. Một mặt, mô hình gia

tăng giảm rủi ro lãng phí thời gian và ngân sách phát triển bằng cách cung cấp khả năng cung cấp các

phiên bản hệ thống đang hoạt động cho khách hàng sớm hơn nhiều so với mô hình thác nước. Điều này cho
phép nhận được phản hồi giúp tránh mất thời gian đầu tư vào việc phát triển các tính năng không được sử
dụng và/hoặc không mang lại lợi ích gì. Mặt khác, mô hình thác nước hiệu quả hơn rất nhiều trong việc

tránh các hoạt động trùng lặp và giao tiếp không cần thiết, với tổng chi phí thấp hơn nếu tất cả các tính
năng được xác định trong các giai đoạn phân tích và yêu cầu ban đầu đều chính xác.

Mặc dù mô hình gia tăng giải quyết nhiều mối quan tâm được xác định với mô hình thác nước liên
quan đến việc khách hàng cần hiểu đầy đủ những gì họ muốn, nhưng nó vẫn phụ thuộc vào điều này ở mức
độ thấp hơn để xác định các ước tính chính xác về thời gian và ngân sách. Ước tính nhỏ hơn có thể được

cung cấp cho từng thành phần, có khả năng chính xác hơn, nhưng ước tính thời gian và chi phí của toàn bộ

dự án có thể khó khăn do cách khách hàng có thể yêu cầu mới theo thời gian.

mô hình xoắn ốc
Mô hình xoắn ốc tương tự như mô hình gia tăng, do đó dựa trên mô hình thác nước. Trọng tâm chính
của mô hình xoắn ốc là quản lý rủi ro và do đó lý tưởng cho các dự án cần quản lý yếu tố rủi ro

lớn. Mô hình xoắn ốc khác với mô hình thác nước giống như sự khác biệt của mô hình gia tăng; nó có
một cách tiếp cận có cấu trúc để phát triển phần mềm, nhưng nó không có một cách tiếp cận tuyến tính cố
định để hoàn thành.

245
Machine Translated by Google

Giống như mô hình gia tăng, điều này giới thiệu các yếu tố linh hoạt, nhưng với chi phí
giới thiệu thời gian và chi phí ngân sách.

Các dự án sử dụng mô hình xoắn ốc lặp đi lặp lại qua bốn giai đoạn, với mỗi lần lặp lại được
gọi là một vòng xoắn ốc. Những xoắn ốc này bao gồm:

h Lập kế hoạch: Mọi vòng xoắn đều bắt đầu trong giai đoạn lập kế hoạch xác định các yêu
cầu để vòng xoắn được coi là thành công. Các yêu cầu này có hai dạng - yêu cầu
nghiệp vụ và yêu cầu hệ thống. Trọng tâm chính xem xét các yêu cầu kinh doanh, vì
những yêu cầu này cuối cùng chỉ ra việc triển khai phần mềm nên là gì, từ đó có ảnh
hưởng trực tiếp đến các yêu cầu hệ thống. Một ví dụ phổ biến về mối quan hệ có ảnh
hưởng này giữa các yêu cầu kinh doanh và hệ thống là trong việc triển khai các ứng dụng
phần mềm dựa trên web dựa trên trình duyệt của người dùng để cung cấp giao diện trực
quan. Mặc dù các trình duyệt hiện đại cung cấp các tính năng hữu ích giúp triển khai
nhanh hơn, nhưng các yêu cầu kinh doanh chỉ ra rằng giải pháp phải tương thích với số
lượng khách hàng rộng nhất, nghĩa là khả năng tương thích với các trình duyệt cũ trở
thành ưu tiên hàng đầu trong các yêu cầu kỹ thuật.

246
Machine Translated by Google

Một yếu tố quan trọng trong việc xác định các yêu cầu là khả năng thực hiện truyền
thông chất lượng cao có thể được hiểu rõ ràng với phạm vi diễn giải sai tối thiểu.
Hình thức nhấn mạnh vào giao tiếp trong giai đoạn này cho phép nhóm phát triển phần
mềm được cập nhật về bất kỳ tình huống hoặc thay đổi nào đối với các mục tiêu đã biết
sẽ ảnh hưởng đến bất kỳ kế hoạch phát triển phần mềm hiện có nào. Điều này cho phép
hành động được thực hiện trong các giai đoạn lập kế hoạch và phân tích rủi ro của
vòng xoáy hiện tại trước khi phát triển bất kỳ phần mềm mới nào.
bắt đầu.

Sau khi nhóm phần mềm nhận thức được các yêu cầu đối với vòng xoắn ốc mới,
công việc có thể bắt đầu bằng việc xác định cách phát triển lô tính năng tiếp
theo vào hệ thống. Việc lập kế hoạch cho các yếu tố rủi ro này tác động trực tiếp
đến cách phát triển các tính năng phần mềm và thiết kế hệ
hưởng
thống.
đến, các
cũng
hoạt
như động
ảnh
liên quan đến quản lý dự án như phân công nhiệm vụ, ước tính thời gian và quản lý
ngân sách cho vòng xoáy mới.

h Phân tích rủi ro: Mục đích của giai đoạn này là xác định các rủi ro liên quan đến
xoắn ốc hiện tại và các giải pháp thay thế. Giai đoạn phân tích rủi ro thường dẫn
đến việc tạo ra một mẫu thử nghiệm để triển khai giai đoạn tiếp theo, cho phép hiểu
rõ hơn về những gì được mong đợi trong quá trình sản xuất và có khả năng là phản
hồi từ khách hàng — tức là những gì nghe có vẻ tốt trên giấy tờ có thể không tạo ra
hiệu quả. kết quả mong đợi khi được thực hiện về mặt chất lượng, chi phí hoặc thời
gian. Nguyên mẫu cho phép xác định các vấn đề tiềm ẩn trong các lĩnh vực này và đề
xuất các giải pháp thay thế nếu các vấn đề đã xác định không thể giải quyết hoặc tránh

được. h Kỹ thuật: Với kế hoạch sẵn có và các rủi ro được giải quyết, vòng xoáy có thể tiến
hành phát triển thành phần phần mềm. Giai đoạn này bao gồm phát triển mã phần mềm cũng
như thử nghiệm.

h Đánh giá: Sau khi hoàn thành thành phần phần mềm mới, nó sẽ được trình bày cho khách
hàng và người dùng cuối để nhận phản hồi. Điều này cho phép nhóm dự án thu được
phản hồi về các ý kiến liên quan đến tiến độ đạt được và sự hài lòng. Khi dự án
không tiến triển nhanh như kế hoạch, cả khách hàng và nhóm dự án đều có thể xem
xét các hành động cho các vòng xoáy trong tương lai để khắc phục sự cố — hoặc thậm
chí liệu khách hàng có điều chỉnh ngân sách và khoảng thời gian sẵn có cho dự án hay
không.

Giống như các mô hình phát triển phần mềm đã đề cập trước đó, mô hình xoắn ốc có những ưu và
nhược điểm riêng. Một số ưu điểm bao gồm:

h Quản lý rủi ro: Trọng tâm chính của mô hình xoắn ốc là quản lý rủi ro, vì vậy không
có gì ngạc nhiên khi kiểm soát rủi ro là lợi ích chính. Với việc dự án được chia
thành các vòng xoắn ốc nhỏ hơn, mô hình này cho phép xem xét và phân tích các rủi ro
xuất hiện trước và sau mỗi giai đoạn phát triển. Sự nhấn mạnh chính này vào việc xem
xét tiến trình của dự án cho phép xác định sớm các tình huống có thể phát triển thành
các vấn đề lớn hơn và thực hiện hành động thích hợp để tránh hoặc giảm thiểu tác động
của chúng.

247
Machine Translated by Google

h Kiểm soát tài liệu và phê duyệt: Khi các dự án có nhiều người đưa ra các yêu cầu tính năng mới,

điều quan trọng là phải có quy trình cấp phép và lập tài liệu cho các yêu cầu để tránh nhầm lẫn

sau này trong dự án.

Tầm quan trọng của điều này tăng lên đối với các dự án chạy đủ lâu để mọi người quên đi những gì

họ đã yêu cầu hoặc nơi mọi người thay đổi vai trò công việc; một cái gì đó trở nên phổ biến hơn

khi làm việc với các tổ chức lớn. Khả năng tích hợp các quy trình để ghi lại các kế hoạch của từng

vòng xoắn ốc ngay từ đầu có nghĩa là có thể tránh được xung đột dựa trên nhận thức, đồng thời cung

cấp cho khách hàng khả năng kiểm soát hướng của dự án.

h Xem trước phần mềm: Với phần mềm được phát triển dưới dạng các thành phần nhỏ hơn, khách hàng có thể

thấy dự án hình thành từng phần một. Nếu khách hàng không thích những gì họ nhìn thấy, họ có thể

cung cấp phản hồi của mình ở cuối vòng xoắn ốc để có thể thực hiện các điều chỉnh trong lần lặp lại

tiếp theo nhằm đưa dự án trở lại đúng hướng mà họ hài lòng.

h Tính linh hoạt: Việc giám sát dự án kết hợp với sự phát triển theo mô-đun của các thành phần phần mềm

cho phép thay đổi được đưa ra trong bất kỳ chu kỳ nào. Điều này trái ngược với các mô hình cứng nhắc

hơn chẳng hạn như mô hình thác nước chỉ cho phép thay đổi được đưa ra sau khi hệ thống hoàn chỉnh đã

được phát triển.

Một số nhược điểm bao gồm:

h Tốn kém: Chi phí chung do nỗ lực lập kế hoạch, phân tích và đánh giá rủi ro tăng lên có nghĩa

là yêu cầu về thời gian và chi phí tăng lên đáng kể. Câu hỏi đặt ra là liệu nỗ lực bổ sung này

có cứu được dự án khỏi những sai lầm được chứng minh là tốn kém hơn so với chi phí của nỗ lực

gia tăng hay không? Câu trả lời cho điều này sẽ khác nhau đối với mỗi dự án. h Yêu cầu về chuyên

môn: Việc thực hiện lập kế hoạch, phân tích và đánh giá nâng cao đòi hỏi chuyên môn chuyên môn

trong các lĩnh vực này — đặc biệt khi kết quả phụ thuộc vào việc thu thập thông tin chính xác chất lượng

cao.

h Sự phụ thuộc vào phân tích rủi ro: Các yêu cầu chuyên môn bổ sung được

bị ảnh hưởng bởi sự phụ thuộc của mô hình vào phân tích rủi ro để điều khiển dự án đi đúng hướng.

Điều này có nghĩa là không chỉ vòng xoắn ốc có khả năng đi sai hướng nếu phạm sai lầm trong giai

đoạn phân tích rủi ro, mà toàn bộ dự án có thể gặp nguy hiểm ngay từ đầu nếu những người không có

đủ kỹ năng được giao trách nhiệm phân tích rủi ro và các hoạt động thông tin hỗ trợ của nó. để lập

kế hoạch và đánh giá.

h Không phù hợp với các dự án nhỏ: Chi phí chung cho việc lập kế hoạch, phân tích rủi ro và đánh

giá nhiều khả năng sẽ ngốn toàn bộ thời gian và ngân sách có sẵn cho các dự án nhỏ trước khi

bất kỳ mã nào được viết. Ngoài ra, các dự án quy mô nhỏ có khả năng có ít rủi ro hơn đáng kể so

với các dự án lớn hơn, nghĩa là lợi ích mang lại cho việc kiểm soát rủi ro sẽ là tối thiểu.

248
Machine Translated by Google

Phần kết luận


Mô hình xoắn ốc là lý tưởng nhất cho các dự án lớn hơn, trong đó trọng tâm là nhận được
phần mềm ngay lần đầu tiên và được phân phối trong khoảng thời gian đã thỏa thuận. Mô hình
xoắn ốc cũng có thể là một lợi ích cho các dự án giá cố định khi có đủ ngân sách do khả
năng xác định và quản lý rủi ro ngay khi có cơ hội.

Nhược điểm của mô hình xoắn ốc là số lượng nỗ lực dành riêng cho việc quản lý rủi ro làm tăng
thêm thời gian và chi phí đáng kể cho dự án; điều này có thể tốn kém hơn những sai lầm mà mô
hình nhằm tránh. Điều này có nhiều khả năng xảy ra đối với các dự án nhỏ hơn, nơi có ít rủi ro
xảy ra sự cố trong quá trình phát triển phần mềm. Các yêu cầu về chi phí và thời gian bổ sung
cũng loại trừ mô hình xoắn ốc là một lựa chọn cho các dự án nhỏ không có thời gian hoặc ngân sách
để đáp ứng sự kỹ lưỡng trong lập kế hoạch, phân tích và đánh giá rủi ro.

Một yếu tố chính mà mô hình xoắn ốc có thể được sử dụng để giải quyết là các dự án có yếu tố
không chắc chắn lớn. Tính linh hoạt để phát triển dự án ở mỗi vòng xoắn ốc có nghĩa là dự án
có thể chịu được bất kỳ điều gì không rõ ràng khi bắt đầu dự án. Việc sử dụng mô hình xoắn ốc
cho phép lặp lại xảy ra theo cách làm trì hoãn việc sản xuất các thành phần phần mềm cho đến
khi các yếu tố không chắc chắn liên quan của chúng được loại bỏ. Đồng thời, các thành phần
phần mềm có thể được phát triển để hoàn thiện một phần, với các lần lặp lại sau bổ sung thêm
chức năng còn lại sau khi độ rõ ràng theo yêu cầu của chúng đã được giới thiệu.

Phát triển nhanh


Khái niệm phát triển Agile là một phong cách phát triển phần mềm được nhiều thực tiễn và
phương pháp áp dụng; chúng được gọi chung là các phương pháp và thực hành linh hoạt. Tất cả
các phương pháp và thực hành linh hoạt để phát triển phần mềm đều có chung một trọng tâm là phát
triển Sản phẩm khả thi tối thiểu (MVP) để đáp ứng các yêu cầu của dự án; trọng tâm là giảm nỗ lực
hoạt động bằng cách loại bỏ việc lập kế hoạch và phát triển các tính năng có thể được phát triển
thành bản phát hành trong tương lai. Việc tập trung vào việc giảm thiểu nỗ lực lập kế hoạch bằng
cách giảm các bản phát hành xuống các chu kỳ phát triển rất ngắn giúp loại bỏ sự lãng phí do các
phương pháp có cấu trúc hơn như mô hình thác nước đưa ra; chu kỳ ngắn nhận được nhiều phản hồi
ngay lập tức hơn từ khách hàng, tránh mất thời gian lập kế hoạch và phát triển các tính năng không
mong muốn.

Trái ngược với các phương pháp quản lý dự án chính thức hơn như PRINCE2, phát triển Agile
giống như một khuôn khổ để phù hợp với các phương pháp hoạt động dự án tương thích có thể được
chọn thủ công để triển khai. Cách triển khai phát triển Agile linh hoạt này có nghĩa là các
nhóm phần mềm có thể điều chỉnh nó để phù hợp với cách họ đã làm việc, thay vì bị buộc phải
làm cho thiết lập của họ phù hợp với phương pháp. Tính linh hoạt của phát triển Agile có nghĩa
là có nhiều cách để thực hiện; nghĩa là bạn có thể cần học các phương pháp mới để thực hiện
cùng một công việc mỗi khi bạn chuyển sang một nhóm phát triển mới.

249
Machine Translated by Google

Sau đây là các phương pháp và thực hành dựa trên Agile mà bạn có thể gặp phải nếu quyết định áp dụng phát

triển Agile trong các dự án của mình:

h Triển khai liên tục : Quá trình triển khai phần mềm một cách thường xuyên

cơ sở, với các tính năng mới và các bản sửa lỗi được giới thiệu. Việc áp dụng kiểu triển

khai này phổ biến hơn với các hệ thống dựa trên web, đặc biệt là ở phía máy chủ nơi cài đặt

của người dùng không phải là vấn đề. Gần đây, cách tiếp cận này cũng đã được áp dụng bởi phần

mềm phía máy khách, chẳng hạn như trình duyệt web tự động nâng cấp lên phiên bản mới nhất hỗ

trợ các tiêu chuẩn web mới và trò chơi máy tính truy cập các bản vá và nội dung có thể tải

xuống. Đây là những ví dụ tương phản về những cách khác nhau mà triển khai liên tục được sử

dụng; một là để giảm thử nghiệm trả trước và một là để mở rộng chức năng.

h Mô hình hóa linh hoạt : Một phương pháp mô hình hóa các hệ thống phần mềm lý tưởng cho các nhóm

phát triển nhỏ làm việc trên các dự án trong môi trường thay đổi nhanh chóng. Giống như hầu hết

mọi thứ trong quá trình phát triển Agile, trọng tâm chính là tạo ra một mô hình đủ tốt và có thể

điều chỉnh bất cứ khi nào cần thiết — không có ý định tạo ra một mô hình hoàn hảo; đến lượt nó có

thể sẽ trở nên lỗi thời khi những thay đổi yêu cầu mới được đưa ra. Tạo ra một mô hình đủ tốt,

nhưng không hoàn hảo, cũng có nghĩa là cần ít thời gian hơn để tạo ra mô hình, cho phép phản hồi

từ khách hàng và người dùng cuối sớm hơn để những thay đổi mới có thể được đưa ra phù hợp với

những khám phá về các yêu cầu thay đổi.

h Lập trình cực đoan : Một phương pháp lập trình có trọng tâm chính

về sự hài lòng của khách hàng và các yêu cầu thay đổi của họ. Điều này đạt được bằng cách

phát triển phần mềm theo cách cho phép nhận phản hồi liên tục từ khách hàng và người dùng cuối

để nhóm có thể xác định họ đang tiến triển như thế nào theo các yêu cầu và kỳ vọng mới nhất. Đến

lượt mình, quá trình giao tiếp liên tục với khách hàng lại ảnh hưởng đến việc thực hiện lập trình

phần mềm bằng cách giữ cho việc lập trình chức năng ngắn gọn, theo mô-đun và đơn giản để khách

hàng có thể được trình bày thường xuyên với các giao tiếp và thuyết trình đang diễn ra.

Điều này dẫn đến các chu kỳ lập trình nhanh chóng, tập trung cao độ vào việc cung cấp các
tính năng thu hút sự chú ý hiện tại của khách hàng.

h Lập trình theo cặp : Một phương pháp được sử dụng trong phát triển Agile để chia sẻ kiến thức giữa

các lập trình viên, đặc biệt là các lập trình viên mới được giới thiệu vào một dự án. Lập trình

cặp sử dụng một lập trình viên để viết mã và lập trình viên kia hướng dẫn và hướng dẫn; một

phương pháp học tập tương tác cũng như một hình thức đánh giá mã.

h Phát triển dựa trên thử nghiệm : Liên quan đến các khái niệm lập trình thử nghiệm đầu tiên

được tìm thấy trong lập trình cực đoan, phương pháp phát triển phần mềm này dựa trên việc

phát triển từng thành phần mã để vượt qua một thử nghiệm cụ thể. Điều này trái ngược với

việc thử nghiệm là một giai đoạn riêng biệt ở cuối chu kỳ phát triển. Một số biến thể của

phát triển theo hướng thử nghiệm tồn tại để tập trung vào các chủ đề phát triển cụ thể, chẳng

hạn như sự chấp nhận của khách hàng và tính phù hợp của chức năng trong các trường hợp sử dụng thực tế.

250
Machine Translated by Google

h Lập kế hoạch bài xì phé : Chủ yếu được sử dụng để ước tính lượng thời gian và nguồn lực
cần thiết để phát triển các thành phần phần mềm, lập kế hoạch bài xì phé là một cuộc
họp trong đó các thành viên của nhóm sử dụng các thẻ được đánh số để đưa ra quy mô
ước tính của các nhiệm vụ cá nhân. Các ước tính kết hợp cho từng nhiệm vụ sau đó được

thảo luận chi tiết để xác định lý do đằng sau ước tính của từng thành viên nhằm đi đến
sự đồng thuận của nhóm cho nhiệm vụ — đây là một cách thực hiện "sự khôn ngoan của đám
đông", trong đó các ước tính kết hợp của toàn bộ nhóm đáng tin cậy hơn ước tính của một
thành viên riêng lẻ.

h Theo dõi vận tốc : Một hoạt động liên quan chặt chẽ đến các hoạt động lập kế hoạch như
lập kế hoạch bài xì phé, đo vận tốc của nhóm và các thành viên của nhóm là xác định
năng suất. Nhiều yếu tố có thể ảnh hưởng đến năng suất, từ đó ảnh hưởng đến khả năng của
nhóm trong việc đáp ứng các ước tính mà họ đã đưa ra. Người quản lý dự án có thể theo
dõi điều này bằng cách sử dụng một công thức toán học để xác định cách thức hoạt động của
nhóm — cũng như từng thành viên nếu được yêu cầu. Mục đích của việc theo dõi vận tốc
không liên quan nhiều đến việc yêu cầu nhóm và các thành viên của nhóm tính toán khi xảy
ra trượt giá, mà là cách để thực hiện các điều chỉnh đối với các ước tính khi xảy ra
trượt giá.

h Họp Scrum : Một cách thường xuyên thực hiện các cuộc họp ngắn
tập trung cao độ và đi thẳng vào vấn đề. Các cuộc họp này nhằm giúp mọi người trong
nhóm cập nhật về những gì các thành viên khác đang làm, cho phép xem xét kế hoạch và
hiểu biết sâu sắc để học hỏi từ những sai lầm và hoạt động dẫn đến thành công. Các
thành viên trong nhóm thường đóng góp cho cuộc họp trong vòng chưa đầy một phút, thường
đứng lên để "khuyến khích" mô tả ngắn gọn về các hoạt động mới nhất của họ.

h Mô hình hóa theo cốt truyện : Một phương pháp khác để mô hình hóa hệ thống phần mềm,
nhưng tập trung vào việc sử dụng các tình huống ví dụ cụ thể để tạo ra các sơ đồ đối tượng
xác định hệ thống phần mềm nên là gì. Trọng tâm bổ sung cũng được đưa ra để cách trình bày
sơ đồ đối tượng có thể phát triển trong suốt quá trình thực hiện kịch bản.

Một số ưu điểm bao gồm:

h Cho phép khách hàng và người dùng cuối xem phiên bản phần mềm hoạt động sớm hơn. h

Mở ra cơ hội cho phản hồi lặp đi lặp lại giúp loại bỏ sự mơ hồ trong thông tin liên
lạc từ máy khách — giúp các nhà phát triển tạo ra nhiều tính năng phù hợp hơn.

h Chấp nhận rủi ro thay đổi thông số kỹ thuật ngay từ đầu, nghĩa là sự gián đoạn đối với
quá trình phát triển phần mềm được giữ ở mức tối thiểu. h Nhấn mạnh vào việc chỉ

làm vừa đủ có nghĩa là thời gian và ngân sách được đầu tư hiệu quả hơn và tránh nguy cơ
lãng phí đầu tư vào việc lập kế hoạch vốn trở nên dư thừa khi các yêu cầu thay đổi
được đưa ra.

251
Machine Translated by Google

Một số nhược điểm bao gồm:

h Rủi ro quản lý dự án quá thoải mái, dẫn đến dự án đi chệch hướng do thiếu sự phối hợp của khách hàng —

tức là không xác định được phần mềm nên được phát triển để làm gì.

h Rủi ro quản lý dự án quá thoải mái, dẫn đến dự án đi chệch hướng do thiếu sự phối hợp của nhóm — tức là

không phát triển phần mềm để phù hợp với đặc điểm kỹ thuật của khách hàng.

h Thiếu chú trọng vào tài liệu chính thức và thiết kế có thể dẫn đến

nhóm phát triển hiểu sai những gì khách hàng yêu cầu, dẫn đến các tính năng phần mềm được phát

triển sai cách.


Điều này dẫn đến tăng chi phí và thời gian để hoàn tác và sửa chữa.

h Thiếu các thủ tục chính thức có nghĩa là những người đưa ra quyết định cần phải có khả năng đưa ra các

quyết định đúng đắn dựa trên kiến thức kinh doanh và kỹ thuật đầy đủ.

Điều này làm cho việc phát triển Agile không phù hợp với các nhóm có kinh nghiệm kinh doanh và kỹ

thuật hạn chế.

h Thiếu các thủ tục chính thức khiến nhóm phải đối mặt với các yêu cầu cao hơn để chứng minh

hành động khi có sự cố xảy ra - tức là quy trình tiêu chuẩn không thể được sử dụng như một cái cớ.

SSM: Phương pháp hệ thống mềm


Được mô tả như một cách tiếp cận có hệ thống để giải quyết các tình huống có vấn đề trong thế giới thực,

Phương pháp Hệ thống mềm không giống như các phương pháp trước đây đã đề cập ở chỗ nó tập trung vào việc

giải quyết các tình huống hướng đến con người. Phương pháp này được thiết kế để giải quyết các vấn đề được

gọi là "mềm", có thể nhìn thấy kết quả trong các dự án, nhưng rất khó xác định nguyên nhân gốc rễ của chúng;

cho dù đó là nhận được sự hợp tác tốt nhất từ khách hàng hay tối đa hóa năng suất của nhóm phát triển. Điều này

hoàn toàn trái ngược với các phương pháp luận khác chủ yếu tập trung vào việc tạo ra đầu ra cuối cùng — mà đối

với các dự án phần mềm sẽ là mã, dữ liệu và nội dung tạo thành hệ thống phần mềm. Do đó, Phương pháp hệ thống mềm

có thể được sử dụng để bổ sung cho các phương pháp khác như phát triển Agile tập trung vào khía cạnh sản xuất kỹ

thuật của phát triển phần mềm.

Sau đây là những mô tả ngắn gọn về các hoạt động chính được thúc đẩy bởi Soft Systems

phương pháp luận:

h Thu thập dữ liệu : Dữ liệu được thu thập để xem xét bằng cách sử dụng một loạt các tiêu chuẩn

phương pháp thu thập như khảo sát, đo lường, quan sát và phỏng vấn.

Thu thập dữ liệu hiệu quả đòi hỏi phải xem xét cẩn thận trong việc thiết kế các câu hỏi được sử dụng

để thu thập dữ liệu. Với việc thu thập dữ liệu này dẫn đến việc phát hiện ra các yếu tố chưa biết

liên quan đến tình huống, cần phải thu thập dữ liệu bằng cách sử dụng các câu hỏi phù hợp với định

dạng phù hợp - tức là biết khi nào nên sử dụng câu hỏi định lượng và định tính.

252
Machine Translated by Google

h Định nghĩa tình huống : Mô hình hóa ban đầu được thực hiện dưới dạng quan sát bằng văn bản
và các sơ đồ đơn giản mô tả tình huống rộng lớn hơn của vấn đề. Phương pháp này giúp xác
định tình huống mà không thiên về vấn đề được coi là gì và cho phép tính đến tất cả các
yếu tố trong các giai đoạn sau, nghĩa là có thể xác định được các nguyên nhân tiềm ẩn bị
đánh giá thấp để điều tra thêm. Ranh giới của tình huống cũng có thể được xác định là một
phần của mô hình ban đầu, có thể được mở rộng hoặc thu nhỏ tùy thuộc vào những gì được
phát hiện. Trọng tâm cụ thể được đặt vào việc xác định các yếu tố như cấu trúc, quy trình,
khí hậu, con người và các vấn đề — đặc biệt là những yếu tố dẫn đến xung đột.

h Mô hình hóa vấn đề : Các hoạt động mô hình hóa sau này tập trung vào việc xây dựng các mô hình
cụ thể để mô tả vấn đề. Phương pháp Hệ thống mềm bắt đầu quá trình này bằng cách xác định
những người đóng góp đáng kể cho tình huống - đó là: ¾ Người hưởng lợi: Những người hoặc

các loại thực thể khác được hưởng lợi từ kết quả đầu ra

¾ Tác nhân: Những người hoặc các loại thực thể khác đóng góp vào việc sản xuất
đầu ra.

¾ Chuyển đổi : Những thay đổi theo yêu cầu của các hệ thống và quy trình của
tình huống. ¾ Quan điểm: Các quan điểm khác nhau về tình huống. ¾ Chủ sở

hữu: Người chịu trách nhiệm về tình huống đang được điều tra. ¾ Môi trường: Các

yếu tố bên ngoài ảnh hưởng đến dự án.

h Điều quan trọng là không được giả định rằng tất cả những người hưởng lợi từ tình huống sẽ ở
bên ngoài nhóm phát triển, vì các vấn đề mềm có thể dễ dàng xảy ra giữa các thành viên của
nhóm phát triển. Một ví dụ về điều này là cách các nhà sản xuất nội dung như nhà thiết kế và
người viết hướng dẫn xung đột với các lập trình viên do thiếu khả năng kiểm soát trực tiếp
nội dung và thiết kế của họ xuất hiện như thế nào trong sản phẩm phần mềm — và với việc các
lập trình viên không thể thực hiện hành động ngay lập tức đối với nội dung của họ. thay đổi
yêu cầu. Kịch bản này có khả năng trở thành một tình huống đối với Phương pháp hệ thống mềm,
nơi những người tạo nội dung trở thành người hưởng lợi từ giải pháp cung cấp cho họ quyền
kiểm soát mà họ tìm kiếm để tích hợp nội dung của họ vào hệ thống phần mềm.

h Các hoạt động mà người hưởng lợi tham gia sẽ đóng một vai trò quan trọng trong cả
vấn đề và giải pháp dưới hình thức này hay hình thức khác. Tình huống ví dụ của chúng
tôi trong đó người tạo nội dung dựa vào lập trình viên để tích hợp các thay đổi nội dung
của họ tạo ra xung đột khi người tạo nội dung không hài lòng với thời gian lập trình viên
dành để thực hiện các thay đổi của họ và thường thực hiện các thay đổi theo đúng cách họ
muốn. Sự chuyển đổi trong tình huống này là giải pháp mới cho phép người sáng tạo nội dung

tích hợp nội dung của họ mà không cần phải dựa vào lập trình viên.
Điều này dẫn đến phạm vi khiếu nại bị loại bỏ, giúp các lập trình viên có nhiều thời gian
hơn để thực hiện các hoạt động khác. Việc chuyển đổi cũng có thể có tác động trực tiếp đến
phương pháp luận của dự án — ảnh hưởng đến mọi thứ từ cách thức thực hiện quy trình thiết kế
cho đến việc xác định ai tham gia vào các giao tiếp khác nhau cho các yêu cầu và cách thức
kiểm thử các bản phát hành phần mềm; với việc người tạo nội dung hiện chịu trách nhiệm sửa
nội dung, chẳng hạn như lỗi chính tả, thay vì đây là trách nhiệm cập nhật của các lập trình
viên.

253
Machine Translated by Google

h Quan điểm khác nhau của các bên tham gia và người hưởng lợi là một yếu tố quan trọng để
xem xét để xác định một giải pháp đáp ứng nhu cầu của mọi người mà không gây thêm vấn đề. Một

cuộc điều tra về điều này trong kịch bản ví dụ của chúng tôi có thể tiết lộ rằng mặc dù những
người sáng tạo nội dung rất hào hứng với ý tưởng giành quyền kiểm soát để tích hợp nội dung
và các thay đổi của họ, nhưng các lập trình viên lại có quan điểm khác với những lo ngại về
cách phát triển các công cụ cho phép điều này có khả năng làm tăng khả năng của họ. khối
lượng công việc cho quá trình phát triển ban đầu và hỗ trợ liên tục, cộng với mối lo ngại bổ
sung rằng việc cung cấp quá nhiều quyền kiểm soát cho người tạo nội dung có thể khiến các
phần của phần mềm vô tình bị hỏng do cập nhật nội dung phi cấu trúc. Trong trường hợp này,
những người sáng tạo nội dung sẽ không biết về những lỗi mà họ tạo ra, dẫn đến việc các lập
trình viên phải làm thêm việc để theo dõi lỗi – và mở ra cơ hội cho một "văn hóa đổ lỗi" xuất
hiện. Việc điều tra các quan điểm khác nhau này phát hiện ra đầy đủ các ưu và nhược điểm cần
lưu ý khi lựa chọn giải pháp cho vấn đề sẽ giúp tránh chuyển tình huống từ loại vấn đề này
sang loại vấn đề khác gây bất lợi tương đương hoặc nhiều hơn cho sự tiến triển của dự án.

h Chủ sở hữu của tình huống rất có thể là một kiểu người quản lý nào đó đã chỉ ra nhu cầu về
giải pháp cho vấn đề mà họ biết, nhưng trong một số tình huống có thể là người đang trực
tiếp làm việc trong dự án hoặc thậm chí là khách hàng . Trong tình huống ví dụ của chúng
tôi, (các) chủ sở hữu của dự án có thể là nhà phát triển nội dung, những người được đáp ứng
yêu cầu của họ về khả năng kiểm soát nội dung của họ hoặc có thể là các lập trình viên nêu
vấn đề và trở thành chủ sở hữu do kết quả của một khối lượng công việc không thể quản lý
được. Tùy thuộc vào tình huống diễn ra như thế nào, (các) chủ sở hữu sẽ có một tập hợp các
yếu tố duy nhất liên quan đến:

¾ Liệu họ có thể giúp đỡ hay ngăn cản việc phát triển một giải pháp hay

không. ¾ Các động lực thuyết phục họ giúp phát triển một giải pháp. ¾ Nguyên

nhân khiến chủ sở hữu trở thành trở ngại cho việc phát triển giải pháp cho vấn đề.

Điều quan trọng là chọn đúng chủ sở hữu của dự án, người có thể kiểm soát và ưu tiên các yếu tố này.
Các dự án thường có một hệ thống phân cấp của những người ra quyết định, với những người ở cấp cao nhất
có khả năng bác bỏ tất cả các quyết định và những người ra quyết định cấp dưới được bổ nhiệm vì kiến
thức chuyên môn của họ. Tận dụng tối đa những người ra quyết định phụ thuộc vào khả năng của bạn trong
việc lựa chọn người ra quyết định phù hợp nhất cho các quyết định được đưa ra.

Môi trường mà tình huống tồn tại bên trong có ảnh hưởng trực tiếp đến những giải pháp khả dụng. Môi

trường có thể bao gồm các yếu tố hoàn toàn nằm ngoài dự án, chẳng hạn như luật pháp, nguồn lực thị
trường, sự cạnh tranh trong ngành và cuộc sống cá nhân của các thành viên trong nhóm mà bạn có ít hoặc
không kiểm soát được. Trong nhiều tình huống, các yếu tố môi trường cũng sẽ cung cấp một số yếu tố kiểm

soát. Trong kịch bản ví dụ của chúng tôi, một cuộc điều tra về môi trường có thể tiết lộ ngân sách khả
dụng cho một giải pháp cho vấn đề—sau đó sẽ chỉ ra việc triển khai giải pháp nào là hợp lệ. Ngân sách
khả dụng dưới dạng yếu tố môi trường là thứ có thể được thương lượng — và dẫn đến ngân sách lớn hơn nếu
thành công.

254
Machine Translated by Google

Ngoài ra, một cuộc điều tra về môi trường bên ngoài có thể tiết lộ các công cụ có thể mua được để tích hợp

vào quy trình phát triển phần mềm cho phép người tạo nội dung thực hiện các thay đổi của họ. Điều này ít

nhất sẽ giải quyết một số vấn đề đặt ra từ quan điểm của các lập trình viên liên quan đến mối quan tâm về

chi phí và thời gian để phát triển và hỗ trợ các công cụ tạo nội dung được phát triển nội bộ. Ngay cả khi

các công cụ phát triển này được định giá ngoài ngân sách hiện có, kiến thức về chi phí, thời gian và rủi ro

để phát triển một công cụ tương đương nội bộ có thể được sử dụng để tạo ra một trường hợp thuyết phục hơn

nhằm tăng ngân sách để mua các công cụ — đặc biệt là khi nó sẽ sản xuất lợi ích gần như ngay lập tức đối

với năng suất so với việc phải đợi vài tuần hoặc thậm chí vài tháng để các công cụ được phát triển nội bộ

được tạo ra.

Một số ưu điểm bao gồm:

h Lý tưởng để xây dựng sự hiểu biết tốt hơn về các yếu tố phi kỹ thuật gây ra

vấn đề - cụ thể là các vấn đề liên quan đến con người.

h Sẽ xác định thành kiến xã hội và các vấn đề giao tiếp trở thành rào cản đối với

năng suất và tiến độ của dự án.

h Có thể xác định các vấn đề không thể phát hiện được bằng các phương pháp cụ thể đối với

phát triển phần mềm.

h Dễ thực hiện mà không cần bất kỳ thiết bị hoặc phần mềm chuyên dụng nào — chỉ cần bút

và giấy.

Một số nhược điểm bao gồm:

h Không cung cấp bất kỳ giải pháp nào cho các sự cố đã xác định — chỉ mô tả chi tiết
của nguyên nhân.

h Tập trung nhiều vào con người để phân tích, do đó độ chính xác của nó phụ thuộc vào

khả năng tiếp cận mọi người và sự sẵn sàng trung thực của họ — có thể khó thực hiện trong các

tình huống mang tính chính trị cao, nơi thông tin được cố tình giữ kín. Không dành riêng cho

phát triển phần mềm, do đó không giải quyết được các vấn đề dành riêng cho phát triển phần mềm.

Phần kết luận


Phương pháp Hệ thống mềm không dành riêng cho phát triển phần mềm và do đó không thể được sử dụng như

một phương pháp độc lập cho các dự án phần mềm. Phương pháp này vượt trội trong việc giải quyết loại

vấn đề mà các phương pháp dành riêng cho phần mềm thường thất bại — các vấn đề "mềm" do con người định

hướng trở thành rào cản đối với sự phát triển phần mềm.

Trong trường hợp của ví dụ đã cho, nơi người tạo nội dung yêu cầu kiểm soát nhiều hơn đối với việc tích

hợp nội dung của họ vào sản phẩm phần mềm, một phương pháp cụ thể về phát triển phần mềm có thể gợi ý

nhu cầu phát triển các công cụ phần mềm mới để cho phép các nhà thiết kế và người viết quảng cáo thêm

nội dung của họ mà không cần cần gửi nội dung của họ cho các lập trình viên của nhóm. Mặc dù giải pháp

này có thể được thực hiện, nhưng giải pháp chắc chắn sẽ có chi phí tài chính và thời gian, cộng với rủi

ro cho phép người tạo nội dung đưa ra các vấn đề mới dựa trên các giả định chẳng hạn như định nghĩa về

kích thước tệp nhỏ. Tất cả những điều này có thể dẫn đến các vấn đề bổ sung cần được giải quyết với chi

phí tài chính và thời gian bổ sung.

255
Machine Translated by Google

Ngược lại, việc sử dụng Phương pháp Hệ thống mềm sẽ có khả năng xác định một giải pháp gấp đôi cho
vấn đề; giai đoạn đầu tiên là cung cấp một mẫu trực quan để sử dụng trong PowerPoint hoặc Keynote
cho phép người viết quảng cáo xem nội dung của họ sẽ xuất hiện như thế nào trong sản phẩm phần mềm
thực. , trong khi giai đoạn thứ hai sẽ là đào tạo các nhà thiết kế đồ họa mà họ yêu cầu để hiểu các
nguyên tắc quan trọng của phát triển phần mềm. Khóa đào tạo này sẽ bao gồm các khái niệm như DRY
(Không lặp lại chính mình) và quản lý kích thước tệp, đồng thời cung cấp quyền truy cập vào bản cài
đặt nháp riêng biệt của phần mềm mà họ có thể sử dụng để thay đổi các tệp hình ảnh giữ chỗ đã được
các lập trình viên thêm vào mà không cần nguy cơ ảnh hưởng đến phiên bản thực của sản phẩm phần
mềm. Sau đó, mỗi thay đổi có thể được các lập trình viên của nhóm xem xét trước khi chúng được nhập
vào phiên bản thực. Cách tiếp cận này sử dụng Phương pháp Hệ thống mềm để xác định các vấn đề con
người là nguyên nhân cốt lõi của vấn đề để xác định các giải pháp đáp ứng các yêu cầu nhân văn về
đào tạo và trực quan hóa trước khi sử dụng bất kỳ giải pháp kỹ thuật tốn kém và tốn thời gian nào
mà bản thân chúng có thể gây ra nhiều vấn đề mềm hơn.

Giải pháp cho kịch bản ví dụ cho thấy việc xem xét các vấn đề mềm dựa trên con người xảy ra
trong quá trình phát triển phần mềm có thể mang lại cho ban quản lý dự án lợi thế lớn như thế nào
trong việc duy trì hiệu quả về thời gian và ngân sách đầu tư bằng cách tránh xung đột cá nhân dựa
trên yêu cầu của các nguyên tắc chuyên môn riêng lẻ. Đầu tiên, bằng cách cho rằng hành động được
thực hiện để giải quyết các vấn đề được nhận thức sẽ giúp tránh cho các thành viên trong nhóm trở
nên bất mãn do cảm thấy bị phớt lờ — điều này có thể leo thang thành xung đột lớn hơn.
Thứ hai, sử dụng các công cụ Phương pháp Hệ thống mềm để mô hình hóa tình huống xác định một
giải pháp hiệu quả với rủi ro thấp và chi phí thấp có thể không rõ ràng từ mô tả vấn đề ban đầu
do những người hưởng lợi dự định đưa ra; đặc biệt nếu họ có thành kiến đối với một giải pháp đã
định.

Thiết kế phương pháp của bạn


Bây giờ bạn đã nhận thức được các vấn đề xung quanh các dự án phần mềm và máy khách, giờ đây
bạn có thể sử dụng thông tin chi tiết này để thiết kế một phương pháp có thể áp dụng cho các
dự án làm việc tự do của mình để giải quyết các loại vấn đề có thể gặp phải.
Phương pháp của bạn nên sử dụng những phần tốt nhất của các phương pháp đã được thử nghiệm và thử nghiệm, chẳng hạn như

những phương pháp được xác định trong chương này.

cấu trúc chính thức


Sẽ hữu ích cho cả bạn và khách hàng của bạn nếu có một quy trình chính thức và có cấu
trúc. Làm nổi bật điều này với khách hàng khi bắt đầu dự án có thể đóng một vai trò quan
trọng trong việc đặt ra những kỳ vọng phù hợp và tránh những tình huống khiến chúng trở nên
phi thực tế về những gì có thể đạt được liên quan đến thời gian, ngân sách và công nghệ sẵn có.

256
Machine Translated by Google

Cân nhắc việc sử dụng các nhận dạng sau đây được thực hiện trong chương này dưới hình thức này hay
hình thức khác:

h Mô hình thác nước : Một quy trình dựa trên mô hình thác nước trong đó trạng thái

của dự án có thể được xác định rõ ràng sẽ giúp tránh các tình huống mà khách hàng cố gắng bỏ
qua các phần sau của quy trình hoặc hoàn tác các phần trước đó đã được hoàn thành. Điều này

làm giảm nguy cơ lãng phí thời gian do thử nghiệm quá sớm hoặc quản lý các bổ sung thiết kế
trong giai đoạn lập trình.

h Chính sách: Chính sách bằng văn bản chính thức mô tả cách xử lý các tình huống
trong suốt dự án sẽ giúp khách hàng hiểu rõ hơn về những gì có thể mong đợi cũng như hỗ trợ
bạn về mặt pháp lý nếu dự án gặp trục trặc nghiêm trọng. h Các chính sách nên được đưa vào để

hỗ trợ bạn triển khai cấu trúc giai đoạn kiểu mô hình thác nước để đảm bảo rằng:

¾ Khách hàng ký vào biên bản hoàn công cho từng giai đoạn của dự án đã hoàn thành.

¾ Khách hàng biết rằng không thể thay đổi các thay đổi đối với hoàn thành đã ký
không thay đổi ngày hoàn thành được đề xuất và chi phí của dự án.

¾ Các thay đổi do khách hàng yêu cầu cũng được ghi lại chính thức. ¾ Việc

cho phép thay đổi và biển báo hoàn thành chỉ có thể được thực hiện bởi những người được
xác định là người ra quyết định của dự án. h Thỏa thuận : Lý tưởng để thiết lập các

kỳ vọng và thực hiện


của các chính sách.

h Tài liệu : Việc ghi lại các cuộc họp và các hành động chính trong dự án chẳng hạn như chấp nhận

các tính năng phần mềm và các yêu cầu thay đổi sẽ giúp cung cấp một dấu vết giấy tờ cho các
yêu cầu và thỏa thuận khi mọi người quên những gì đã được thỏa thuận trước đó. Điều này giúp

bạn tránh các trường hợp yêu cầu được thực hiện rồi bị lãng quên, chẳng hạn như khi khách hàng
yêu cầu bạn gỡ bỏ các tính năng của phần mềm và sau đó hỏi bạn tại sao tính năng nói trên không

khả dụng.

h Sử dụng các mẫu cho tài liệu để đảm bảo tính nhất quán và hoàn chỉnh của chúng bao gồm tất cả
thông tin bắt buộc — ví dụ: ngày, chi tiết, những người liên quan, được ủy quyền, v.v.

Chính sách liên lạc nhóm


Mặc dù mục đích nên là làm việc với khách hàng và các bên khác tham gia vào dự án, nhưng cũng nên

nhớ rằng những người này có ít kiến thức kỹ thuật hơn bạn nhiều về ý nghĩa của việc phát triển phần
mềm.

257
Machine Translated by Google

Cần quan tâm nhiều đến cách trình bày tất cả các từ ngữ cho khách hàng và các cộng tác viên khác
của dự án vì:

h Biết ít là nguy hiểm : Câu nói này rất chính xác với
liên quan đến các dự án phần mềm mà khách hàng và các cộng tác viên khác có một số hiểu
biết về các vấn đề kỹ thuật liên quan đến công việc của bạn, nhưng không đủ để hiểu đầy
đủ về tất cả các hàm ý. Vấn đề với khách hàng và cộng tác viên dự án có kiến thức không
đầy đủ là nó thường dẫn đến niềm tin rằng các yêu cầu của họ dễ đạt được hơn nhiều so với
thực tế. Điều này dẫn đến vấn đề tăng kỳ vọng về thời gian giao hàng và số lượng tính năng.

h Môi lỏng lẻo chìm tàu : Về mặt phát triển phần mềm, con tàu sẽ là dự án. Cho dù đó là chính
bạn, các thành viên trong nhóm của bạn hoặc các nhà cung cấp đóng góp cho dự án, việc nói
những điều sai trái trong công ty của những người không phù hợp có thể khiến mọi người nảy
sinh những kỳ vọng không thực tế. Cần hết sức cẩn thận với những gì được nói khi ở trong
công ty của các cộng tác viên bên ngoài cũng như khi nói chuyện với công ty của khách hàng
bởi vì những người này có thể dễ dàng truyền đạt những quan niệm sai lầm của họ cho khách
hàng khi bạn không ở đó để sửa chữa họ. Việc tập trung kiểm soát những gì được nói và cách
chúng được diễn đạt sẽ giúp ích rất nhiều để tránh sự phát triển của "những kỳ vọng khổng
lồ" chắc chắn sẽ gặp phải vấn đề ngay từ đầu; giống như con tàu!

Những vấn đề này có thể được khắc phục bằng cách có chính sách giao tiếp nhóm chính thức cho phép mọi
người nhận thức được cách thảo luận các vấn đề khi ở trong công ty không thuộc nhóm trực tiếp. Ví dụ
có thể bao gồm:

h Thảo luận về các tính năng là phần mở rộng của thông số kỹ thuật : Việc thảo luận về các tính
năng tiềm năng trong tương lai có thể khiến cộng tác viên và khách hàng có nguy cơ đưa ra
giả định rằng các tính năng đã thảo luận sẽ được triển khai trong phiên bản hiện tại, gây
ra những kỳ vọng gia tăng không thể thỏa mãn với thời gian hiện có , ngân sách hoặc nguồn
lực công nghệ.

h Phần mềm sẽ được phát triển như thế nào : Điều này có nguy cơ cung cấp một bức tranh không đầy
đủ về cách thức phần mềm đang được phát triển, có khả năng dẫn đến một quan điểm đơn giản hóa
quá mức với ấn tượng rằng điều không thể sẽ trở thành có thể.
Điều này cũng có thể dẫn đến việc các cộng tác viên buộc phải đưa ra các quyết định sai
lầm ảnh hưởng đến cách phát triển phần mềm, gây ra các vấn đề về khả năng bảo trì và triển
khai các tính năng trong tương lai. Hậu quả của những quyết định tồi tệ này sau đó trở thành
trách nhiệm của bạn để dọn dẹp.

h Tiến trình phát triển phần mềm : Điều này có thể dẫn đến các giả định về sự tiến triển nhanh
chóng của các nhiệm vụ nhỏ hơn và dễ dàng hơn đại diện cho các nhiệm vụ lớn hơn và phức
tạp hơn. Điều này có nguy cơ khiến nhóm vô tình đặt ra kỳ vọng cao hơn về việc phân phối
nhanh hơn bằng cách cho phép khách hàng và cộng tác viên nhận thấy dự án vượt tiến độ.

258
Machine Translated by Google

h Ước tính : Nói về ước tính trong nhiều trường hợp dẫn đến nhận thức về ngày hoàn thành được đề cập và/

hoặc ngân sách như đã định sẵn. Các ước tính chỉ nên được đề cập khi chúng đã được nghiên cứu đầy

đủ và theo cách nhấn mạnh rằng ước tính không cố định, do đó có thể thay đổi. Các thành viên trong

nhóm, đặc biệt là các nhà phát triển phần mềm có ít kinh nghiệm thương mại hơn, thường quá lạc

quan về những gì có thể đạt được và quá nhiệt tình để bắt đầu công việc mới mà không nghiên cứu

đầy đủ thông tin. Đây là một sự kết hợp hoàn hảo để cung cấp các ước tính cực kỳ không chính xác

mang lại cảm giác như một lời hứa; ảnh hưởng đến khả năng sinh lời và hoàn thành thành công dự án

của bạn.

Lập kế hoạch
Xuyên suốt cuốn sách này, người ta đã xác định rằng phần lớn công việc tự do là các dự án quy mô nhỏ,

hầu hết trong số đó không có đủ ngân sách để thực hiện bất kỳ kế hoạch nặng nề nào. Tuy nhiên, điều này

không có nghĩa là việc lập kế hoạch không có chỗ đứng, vì ngay cả việc lập kế hoạch cơ bản nhất cũng có

thể tạo ra sự khác biệt giữa một dự án được thực hiện thành công và kết thúc trong thảm họa.

Chìa khóa để lập kế hoạch trong các dự án tự do là có sự linh hoạt để quyết định mức độ lập kế hoạch

phù hợp với quy mô của dự án. Dự án phức tạp hơn nên được chỉ định nhiều thời gian hơn để lập kế hoạch,

với ngân sách của chúng được điều chỉnh để phù hợp với nỗ lực lập kế hoạch bổ sung nếu cần. Các dự án

phức tạp với ngân sách eo hẹp không thể đáp ứng cho việc lập kế hoạch có thể sẽ rắc rối hơn so với giá

trị của chúng, do đó, nên cân nhắc việc từ bỏ trước khi bạn cam kết với khách hàng bằng cách bắt đầu phát

triển dự án đó.

Sau đây là các hoạt động hữu ích để xem xét trong quản lý dự án cho tất cả các loại dự án:

h Đánh giá mục tiêu SMART : Đánh giá tính khả thi của từng mục tiêu do

khách hàng để đảm bảo rằng dự án có thể được thực hiện theo mong đợi của họ phải là ưu tiên

hàng đầu của bất kỳ chiến lược lập kế hoạch nào. Trong trường hợp xấu nhất, nó sẽ dẫn đến nhận

định rằng dự án sẽ không đáng để tiến triển, giúp bạn đỡ phải đau đầu. SMART là viết tắt của:

¾ Cụ thể: Khách hàng có biết họ muốn giải quyết vấn đề gì với dự án không?

Hầu hết sẽ không nhất thiết phải biết cách họ muốn phần mềm giải quyết vấn đề của họ,

nhưng ít nhất họ phải biết các thuộc tính cụ thể xác định vấn đề.

¾ Có thể đo lường được: Các mục tiêu của khách hàng phải có thể đo lường được —

những mục tiêu không thể đo lường được thì bạn sẽ không có cách nào đo lường

được tiến độ đang được thực hiện như thế nào và sẽ khiến bạn phải đối mặt với

việc khách hàng liên tục đòi hỏi nhiều hơn. ¾ Có thể đạt được: Tất cả các mục

tiêu phải có thể đạt được trong khuôn khổ của dự án

ngân sách, quy mô thời gian và với các nguồn lực công nghệ và kỹ năng sẵn có.

Các mục tiêu không thể được coi là có thể đạt được với tất cả các yếu tố này có nguy

cơ cao làm gián đoạn toàn bộ dự án.

259
Machine Translated by Google

¾ Thực tế: Mọi người có đang xác định và xem xét mục tiêu
thực tế? Bất cứ ai cũng có thể nói rằng điều đó là có thể đạt được, nhưng nghiên cứu phải được

thực hiện để tìm ra những sự thật xác nhận những phán đoán này là thực tế.

¾ Kịp thời : Có thể đạt được mục tiêu trong khoảng thời gian có sẵn không? Các
yếu tố như ngày nghỉ lễ và nguy cơ các thành viên trong nhóm cần phải nghỉ
làm đột xuất nên được tính đến khi xem xét này.

h Biểu đồ Gantt - Biểu đồ Gantt là một biểu đồ trực quan minh họa điểm bắt đầu và
ngày kết thúc của các nhiệm vụ dự án trong mối quan hệ với nhau. Điều này rất hữu
ích cho cả nhóm phát triển và khách hàng để nhanh chóng thấy quy mô của các nhiệm
vụ riêng lẻ trong mối quan hệ với những nhiệm vụ khác, cũng như để biết dự án đang
ở đâu. Quản lý đường dẫn quan trọng: Mỗi dự án đều có một đường dẫn quan trọng, đó là
sự kết hợp dài nhất của các hoạt động để hoàn thành dự án. Mặc dù chuỗi các hoạt động
này có thời lượng dài nhất trong suốt dự án, nhưng nó được xác định là rất quan trọng
vì bất kỳ sai sót nào với các hoạt động này sẽ đảm bảo việc bàn giao dự án bị chậm
trễ. Nhấn mạnh vào việc đảm bảo hoàn thành kịp thời tất cả các hoạt động nằm trong lộ
trình này sẽ giúp dự án được hoàn thành vào ngày mục tiêu. đang phát triển

Giai đoạn phát triển sẽ sử dụng phong cách triển khai mã đã chọn của bạn để tạo thành phần
mềm - chương 10 thảo luận chi tiết về vấn đề này. Kiến trúc và kiểu mã là một vấn đề kinh
doanh cũng như là một vấn đề kỹ thuật trong kinh doanh phát triển phần mềm, nhấn mạnh tầm
quan trọng của chiến lược mã của bạn để phù hợp với những điều sau:

h Tốc độ : Quá trình phát triển cần phải đủ nhanh để hoàn thành mục tiêu
ngày hoàn thành - cho dù điều này được quyết định bởi khách hàng hay ngân sách có

sẵn. h Bảo trì : Mã cần phải thích ứng khi khách hàng yêu cầu thay đổi trong quá trình
thực hiện dự án hiện tại hoặc nâng cấp bảo trì trong tương lai. Nhu cầu về mã có thể
bảo trì sẽ xung đột với nhu cầu phát triển nhanh chóng vì sẽ cần nhiều thời gian
hơn, nhưng điều này sẽ được đền đáp thông qua dự án và/hoặc trong quá trình bảo trì
trong tương lai từ thời gian tiết kiệm được, do đó cần phải có sự cân bằng tốt.

h Khả năng sử dụng lại : Việc phát triển các thành phần mới rất tốn kém về thời gian, nhưng
mã được phát triển để có thể sử dụng lại qua nhiều dự án sẽ mở ra cơ hội phân bổ chi
phí cho các dự án trong tương lai theo cách tăng tốc thời gian phát triển.

h Rủi ro : Phát triển phần mềm luôn có rủi ro, đặc biệt là khi lỗi phần mềm có thể dẫn đến
tác động trong thế giới thực chẳng hạn như khách hàng mất tiền hoặc dễ bị kiện. Mã
phải được phát triển theo cách phản ánh mức độ rủi ro mà chức năng tương ứng thể hiện.
Như một sự cân nhắc tối thiểu, các tính năng được coi là có rủi ro cao hơn nên có mã
làm nổi bật rõ ràng những gì có thể xảy ra sai sót để bất kỳ ai làm công việc bảo trì
trong tương lai đều có thể nhận thức đầy đủ; do đó tránh mã bị hỏng và giới thiệu các
lỗi mới. Các tính năng có rủi ro cao cũng nên bao gồm các tính năng sao lưu và báo cáo
lỗi. Các tính năng sao lưu như vậy đảm bảo rằng hệ thống có thể tiếp tục hoạt động mà
không gây hại cho những người dựa vào hệ thống, trong khi báo cáo cho phép bất kỳ ai
chịu trách nhiệm bảo trì hệ thống biết về lỗi và dữ liệu tình huống gây ra lỗi đó. Sự
kết hợp này cho phép giảm thiểu tác động của rủi ro và phản ứng nhanh hơn để khắc phục
các lỗi được xác định.

260
Machine Translated by Google

thử nghiệm
Sự thành công của sản phẩm cuối cùng của dự án sẽ phụ thuộc rất nhiều vào thử nghiệm của nó, vì vậy không nên

bỏ qua giai đoạn này trong phương pháp luận của bạn. Với việc có nhiều loại thử nghiệm khác nhau, đây không

phải là một hoạt động được coi là chỉ được thực hiện ở một giai đoạn của dự án hoặc bởi một cá nhân. Sau đây là

những cân nhắc cần thực hiện nghiêm túc trong chiến lược thử nghiệm của bạn:

h Thử nghiệm chấp nhận - Không còn nghi ngờ gì nữa, khách hàng cần xác nhận rằng họ chấp nhận trạng

thái của từng tính năng được phát triển sau khi hoàn thành để có thể giảm thiểu việc điều chỉnh

liên tục. Mặc dù những khách hàng bị ép thời gian hoặc sợ sử dụng công nghệ có thể rất vui khi ký

chấp nhận các tính năng mà không cần kiểm tra kỹ lưỡng ban đầu có vẻ tốt để tiến hành dự án nhanh

hơn, nhưng điều này sẽ chỉ dẫn đến việc khách hàng quay lại với bạn để thay đổi yêu cầu sau — gây ra

xung đột có hại cho tiến độ của dự án nếu họ đã ký chấp thuận.

Với phần mềm là một định dạng tương tác, bạn có thể nhúng các tính năng vào trong các hệ

thống mà bạn phát triển để cho phép bạn đảm bảo rằng thử nghiệm chấp nhận được thực hiện theo

tiêu chuẩn bắt buộc. Sau đây là những ý tưởng cần xem xét khi triển khai thử nghiệm chấp nhận

của bạn:

¾ Các ứng dụng dựa trên web được trình bày thông qua các trang HTML có thể sử dụng

các liên kết duy nhất có thể được mã máy chủ web của bạn theo dõi khi chúng được truy

cập. Các liên kết duy nhất để thử nghiệm có thể được gửi tới máy khách để bạn có thể

xác định những trang nào đã được truy cập — và theo dõi chúng nếu chúng chưa truy cập.

¾ Các ứng dụng dựa trên web cũng có thể sử dụng cookie phía máy khách và

lưu trữ dữ liệu cục bộ, cho phép bạn theo dõi các thông tin khác như những gì đã được thử

nghiệm trên trang web và thời gian sử dụng. Điều này hữu ích để có thể xác minh rằng các

tính năng đã được thử nghiệm theo yêu cầu — và để cung cấp phản hồi cho khách hàng nếu họ

bỏ sót điều gì đó.

¾ Ứng dụng phía máy khách, bao gồm ứng dụng điện thoại và ứng dụng trên máy tính để bàn

các ứng dụng, có thể được phát triển để theo dõi các hành động do máy khách thực hiện và

gửi dữ liệu theo dõi được tạo tới một ứng dụng dựa trên máy chủ được phát triển bằng PHP

hoặc ngôn ngữ kịch bản lệnh khác — ứng dụng này sẽ lưu trữ các chi tiết trong cơ sở dữ

liệu để xem xét sau này. Một phiên bản đơn giản hóa của điều này sẽ là gửi dữ liệu theo dõi

qua email tới tài khoản email của bạn, nghĩa là sẽ không cần thiết lập thành phần cơ sở dữ

liệu và tập lệnh phía máy chủ.

h Thử nghiệm kỹ thuật - Loại thử nghiệm này sẽ diễn ra trong toàn bộ

giai đoạn phát triển theo cách này hay cách khác. Ở cấp độ phát triển phần mềm, việc kiểm tra mã

nên được kiểm tra bởi các nhà phát triển phần mềm khi họ phát triển mã của họ. Không nên nhầm lẫn

loại thử nghiệm này với bất kỳ loại thử nghiệm cuối cùng nào, vì mục đích chỉ là để xác định rằng

các thành phần phần mềm của chúng đang hoạt động trên lý thuyết để có thể bắt đầu phát triển nhiệm

vụ tiếp theo.

261
Machine Translated by Google

h Thử nghiệm kỹ thuật cuối cùng - Một loại thử nghiệm kỹ thuật nên được coi là một nhiệm vụ riêng biệt để

phát triển phần mềm và lý tưởng nhất là được thực hiện bởi những người không liên quan đến việc phát

triển mã. Điều này đảm bảo rằng kết quả kiểm tra không bị ảnh hưởng bởi các cài đặt lý tưởng có sẵn

trên máy của nhà phát triển, chẳng hạn như cookie hoặc tệp cấu hình đã được đặt như một phần của quy

trình phát triển nhưng không có sẵn theo mặc định. Thử nghiệm kỹ thuật cuối cùng cũng xem xét thử

nghiệm các thành phần phần mềm với dữ liệu đầy đủ và nặng hơn nhiều, đại diện cho nhiều tình huống hơn

— điều gì đó sẽ làm chậm quá trình phát triển phần mềm nếu điều này được thực hiện cùng với quá trình

phát triển phần mềm.

h Kiểm tra người dùng cuối - Bạn có thể đảm bảo rằng người dùng cuối sẽ sử dụng phần mềm trong

những cách mà nhóm phát triển phần mềm hoặc khách hàng chưa bao giờ nghĩ đến hoặc dự định. Nhờ ai

đó kiểm tra hệ thống không thiên về kiến thức kỹ thuật hoặc kinh nghiệm về cách thức hoạt động của

hệ thống sẽ cho phép bạn xác định hai loại thông tin quan trọng: Những sai lầm mà mọi người mắc phải

khi tương tác với hệ thống khiến họ không thể sử dụng chức năng — ví dụ: không đọc hướng dẫn dẫn đến

không gửi được biểu mẫu vì thiếu thông tin bắt buộc.

Các lỗi trong phần mềm bộc lộ thông qua việc sử dụng không mong muốn của người dùng mà các nhà
phát triển và khách hàng không nghĩ tới.

h Kiểm thử tự động - Cho phép một số kiểm thử được tự động hóa có những ưu điểm đáng kể sau:

¾ Đảm bảo rằng việc kiểm tra kỹ lưỡng được thực hiện một cách nhất quán theo tiêu

chuẩn cao với điều kiện là các kiểm tra được xác định đúng.

¾ Đảm bảo rằng việc kiểm tra được thực hiện chính xác với điều kiện cung cấp dữ liệu

chính xác. Xác định nhanh các lỗi được đưa vào các bản dựng mới của phần mềm.

¾ Không tốn thời gian thử nghiệm của con người cho phép thực hiện thử nghiệm lặp

lại mà không tốn chi phí cho dự án. ¾ Nguyên nhân của lỗi có thể được xác định

chính xác mà không cần phải đoán.

h Kiểm tra bảo mật - Đây là một chuyên ngành kiểm tra kỹ thuật, nhưng có thể được coi là hoạt động kiểm

tra được thực hiện như một hoạt động của riêng nó nếu nhóm phát triển không có bất kỳ ai có đủ kinh

nghiệm về hack đạo đức.I Trong trường hợp này, hoạt động nên được thuê ngoài cho một người làm việc

tự do, nhà thầu hoặc công ty có thể cung cấp hoạt động này như một dịch vụ; có thể là một chuyên gia.

Tóm lại, kiểm thử bảo mật tập trung vào việc đảm bảo rằng không có tính năng đầu vào nào của hệ

thống có thể bị lạm dụng và thường tập trung vào việc ngăn chặn các cuộc tấn công thông thường. Đối

với các hệ thống dựa trên web, điều này sẽ đảm bảo ngăn chặn việc tiêm SQL, tạo kịch bản chéo trang,

thao túng API và những thứ tương tự.

262
Machine Translated by Google

Phân phối kiểm thử - Như được đề xuất bởi các cân nhắc trước đó, kiểm thử
không bao giờ được coi là công việc chỉ dành cho một người. Thử nghiệm nên
được phân phối cho nhiều người, mỗi người có chuyên môn riêng có thể đóng góp,
cho dù đó là kiến thức kỹ thuật để thử nghiệm kỹ thuật hay thiếu kiến thức để
đảm bảo rằng hệ thống không tạo ra kết quả không mong muốn khi người dùng thực
hiện các hành động không mong muốn.

Tóm lược
Một phương pháp luận là một tập hợp chính thức các phương pháp để tham gia vào
một hoạt động. Trong trường hợp phát triển phần mềm, trọng tâm không chỉ là tạo ra phần
mềm mà còn quản lý nhiều hoạt động liên quan khác bao gồm truyền thông, định nghĩa yêu
cầu và cộng tác nhóm.

Việc sử dụng các phương pháp luận chính thức trong phát triển phần mềm giúp tránh
xảy ra các trở ngại thông thường. Nhận thức về các phương pháp được phát triển để sử
dụng trong phát triển phần mềm sẽ giúp bạn tránh được các tình huống có vấn đề mà các
dự án phần mềm khác đã gặp phải, do đó giúp bạn tăng năng suất và lợi nhuận của mình.
Đồng thời, một quy trình được chính thức hóa sẽ giúp bạn ngăn chặn mối đe dọa chính trị
làm hỏng dự án đang được đề cập, đồng thời giúp đảm bảo chất lượng bằng cách thiết lập
các tiêu chuẩn cho các hoạt động như thử nghiệm và xác định yêu cầu dẫn đến việc tạo ra
các tính năng phù hợp để phục vụ tham vọng của dự án.

263
Machine Translated by Google
Machine Translated by Google

11
Tạo báo giá
và ước tính
Chi phí của một dự án không phải là vấn đề lớn đối với bạn khi khách hàng trả tiền trên cơ
sở mỗi giờ làm việc, nhưng là một vấn đề khó khăn khi làm việc với một mức giá cố định. Độ chính
xác của việc xác định tổng giá vẫn rất quan trọng đối với các dự án được thanh toán theo giờ vì
khách hàng sẽ không vui khi nhận được hóa đơn cao gấp nhiều lần so với đề xuất ban đầu của bạn.
Biết các phương pháp hiệu quả để đưa ra các ước tính chính xác cho cả các dự án dựa trên thời gian
và giá cố định sẽ giúp bạn đỡ phải đau đầu hơn khi bắt khách hàng thanh toán.

Một sự cân nhắc tốt cho tất cả các ước tính là Định luật Hofstadter, trong đó nhấn mạnh
sự khó ước tính chính xác cho các nhiệm vụ có độ phức tạp đáng kể—bất chấp mọi nỗ lực tốt
nhất và thực sự biết rằng độ phức tạp của nhiệm vụ. Định luật chỉ đơn giản nói rằng những gì
bạn đang ước tính sẽ luôn mất nhiều thời gian hơn bạn mong đợi, ngay cả khi bạn tính đến Định
luật Hofstader. Nó thường được các lập trình viên tham khảo trong các cuộc thảo luận liên quan
đến quản lý dự án và năng suất, chẳng hạn như "tháng người" thần thoại và lập trình cực đoan.

Toán học để giải cứu: Những điều cơ bản


Không có cách cố định nào để đưa ra ước tính cho công việc sẽ được sản xuất, nhưng sử dụng kiến
thức với toán học có thể là một sự kết hợp mạnh mẽ cho phép bạn giảm thiểu rủi ro định giá thấp
dự án của mình cũng như đưa ra quyết định tốt hơn.

265
Machine Translated by Google

Tất cả chi phí dự án là sự kết hợp giữa thời gian của bạn và việc sử dụng các nguồn lực cần thiết.

Khả năng phát triển mã và nội dung của bạn một cách nhanh chóng và hiệu quả phụ thuộc trực tiếp vào

chất lượng đầu vào mà bạn nhận được từ khách hàng, những người này lại phụ thuộc vào các nhà cung

cấp và đối tác của họ. Tình huống được thể hiện trong sơ đồ sau:

Phát triển
Khách hàng Sản phẩm cuối cùng
Nhóm thực hiện

Nhà cung cấp & Đối tác Nhà cung cấp & Tài nguyên

Phương pháp định giá của bạn cần phản ánh những yếu tố ảnh hưởng đến khả năng sản xuất sản phẩm cuối

cùng của bạn. Tóm lại, sau đây là các yếu tố mà tính toán định giá của bạn cần kết hợp:

h Đầu vào của khách hàng ảnh hưởng như thế nào đến hiệu suất phát triển phần mềm của bạn. h Đầu

vào của khách hàng ảnh hưởng như thế nào đến chi phí phát sinh thông qua việc sử dụng nhà cung cấp nhà

cung cấp và nguồn lực của bạn.

Đánh giá hiệu suất


Giám sát hiệu suất công việc là bước đầu tiên để xác định cách tính giá và ước tính của bất kỳ loại nào

cho các khách hàng cá nhân. Hai yếu tố ngay lập tức bị ảnh hưởng bởi hiệu suất:

h Thời gian

¾ Hiệu suất tốt hơn sẽ dẫn đến năng suất cao hơn giúp giảm lượng thời gian cần thiết.

¾ Được sử dụng để ước tính thời gian thực hiện các nhiệm vụ riêng lẻ hoặc toàn bộ dự

án so với lượng thời gian dự kiến cần thực hiện.

¾ Phạm vi đáng kể bị ảnh hưởng bởi đầu vào của khách hàng hoặc các yếu tố dự án, chẳng

hạn như kế thừa mã có sẵn không có tài liệu và/hoặc khó thích ứng.

h Giá

¾ Thời gian và nguồn lực cần thiết cho một dự án dẫn đến chi phí về thời gian

đầu tư, do đó chất lượng hiệu suất dẫn đến việc sử dụng thời gian và nguồn lực

sẽ ảnh hưởng đến giá của các hoạt động của dự án.

266
Machine Translated by Google

¾ Đầu vào từ khách hàng có thể dẫn đến chi phí bổ sung phát sinh từ
nhà cung cấp, đối tác và sử dụng các nguồn lực.

Mặc dù thời gian và giá cả có liên quan chặt chẽ với nhau, nhưng việc biết công việc của bạn có thể bị

ảnh hưởng như thế nào bởi các yếu tố như sự tham gia của khách hàng ảnh hưởng đến hiệu suất của bạn có
thể hữu ích trong quản lý dự án để ước tính ngày hoàn thành và tổ chức quy trình làm việc. Cũng cần lưu

ý rằng việc kế thừa các dự án đã được bắt đầu bởi người khác cũng sẽ ảnh hưởng đến năng suất của bạn—ít
nhất là trong ngắn hạn và cũng có thể là trong dài hạn. Ví dụ về điều này bao gồm:

h Khó quản lý mã: Không bao giờ có thể đảm bảo rằng mã được phát triển
bởi các nhà phát triển phần mềm khác đã được phát triển theo tiêu chuẩn cao để cho phép

khả năng bảo trì, đặc biệt khi khách hàng có nhóm phát triển phần mềm ban đầu của họ dựa trên
mức giá thấp nhất—mặc dù không phải lúc nào cũng đúng như vậy, những mức giá như vậy được đưa

ra thông qua việc cắt giảm chi phí hoặc thiếu kinh nghiệm , cả hai điều này đều làm giảm chất
lượng mã và sẽ gây ra sự cố cho bạn. h Thiếu tài liệu : Tương tự như vấn đề trước, tài liệu

thường bị bỏ qua bởi các nhà phát triển, những người đã phát triển mã của họ với ngân
sách hoặc khung thời gian eo hẹp. Mặc dù các nhà phát triển trước đó sẽ hiểu đầy đủ về

mã của họ và có thể tiếp thu những gì họ đã hoàn thành, nhưng bạn sẽ không có được kiến
thức này khi đảm nhận các dự án mà bạn chưa từng tham gia ngay từ đầu. Không có tài liệu có
nghĩa là bạn cần đầu tư một lượng thời gian đáng kể để kiểm tra từng phần của mã để tìm hiểu

cách thức hoạt động của mã, cộng với nguy cơ cao đưa ra các lỗi sẽ tốn thêm thời gian để giải
quyết. Không bao giờ nên đánh giá thấp tác động đối với sản phẩm của bạn do thiếu tài liệu, kể

cả mã nhận xét.

h Thiếu công cụ kỹ thuật : Hạn chế hoặc không có quyền truy cập vào các công cụ phát triển
phần mềm như kiểm soát phiên bản, lịch sử sửa đổi và bộ kiểm tra sẽ ảnh hưởng đến khả năng

của bạn trong việc phát triển hiệu quả mã mà bạn kế thừa trong dự án. Chắc chắn mã bạn kế

thừa có mức độ phức tạp lớn, sẽ cần phải đầu tư một lượng lớn nỗ lực để điều tra mã để hiểu
cách thức hoạt động của kiến trúc mã và cũng để phát triển các bài kiểm tra đơn vị nhằm đảm

bảo các thay đổi của bạn không' không phá vỡ chức năng trong các khu vực của hệ thống mà
bạn không biết; trong một số trường hợp, có thể mất ít thời gian hơn để viết lại toàn bộ dự

án so với việc tham gia vào các hoạt động này.

h Kỳ vọng và nhận thức của khách hàng không được quản lý : Khách hàng có thể tin rằng phần mềm của

họ hoàn thiện hơn so với thực tế, hoặc có thể đạt được nhiều hơn về mặt kỹ thuật so với khả
năng có thể do liên lạc với các nhà phát triển phần mềm trước đây của họ chưa tiết lộ đầy đủ

sự thật. Mọi kỳ vọng và nhận thức không được quản lý cần được giải quyết càng sớm càng tốt để
tránh đầu tư thời gian không cần thiết vào các hoạt động không mang lại lợi ích cho tiến trình

của dự án.

Do đó, hiểu được hiệu suất của bạn khi làm việc với các khách hàng cá nhân có thể là một tài sản
cho phép bạn đưa ra các ước tính và báo giá chính xác hơn. Công thức cơ bản để tính hiệu suất của

một nhiệm vụ hoặc dự án riêng lẻ là:

Hiệu suất = Thời gian đầu tư ÷ Thời gian dự kiến

267
Machine Translated by Google

Công thức này cung cấp một con số cho biết mức độ đầu tư thời gian thực tế của bạn gần với khoảng thời

gian bạn dự kiến sẽ hoàn thành. Mục tiêu sẽ luôn là đạt được hiệu suất từ 1 trở xuống, điều này cho biết

rằng thời gian dự kiến bằng hoặc ít hơn thời gian thực tế đã đầu tư.

Hãy lấy ví dụ về một dự án mà chúng tôi đã trích dẫn dựa trên 8 giờ làm việc tiêu chuẩn, mà trên thực tế,

hóa ra phải mất 12 giờ để hoàn thành:

Hiệu suất = 12 giờ ÷ 8 giờ = 1,5

Kịch bản này có công thức hiệu suất trả về 1,5, cho thấy rằng công việc mất một (1) rưỡi (0,5) lần so

với dự kiến—hay nói một cách đơn giản, nó mất nhiều thời gian hơn 1,5 lần. Với kết quả cao hơn mục tiêu

1, rõ ràng đã xảy ra sai sót trong quá trình thực hiện dự án. Tính toán ít nhất xác định rằng cần phải

điều tra thêm để xác định lý do, cũng như thêm xếp hạng hiệu suất đã xác định vào xếp hạng của khách

hàng.

đánh giá của khách hàng

Tạo xếp hạng cho khách hàng cá nhân là cách lý tưởng để điều chỉnh giá tiêu chuẩn một cách công bằng

dựa trên trải nghiệm trước đây của bạn với khách hàng và hoạt động theo cả hai cách để tăng và giảm số

tiền bạn quyết định tính phí. Những khách hàng tốt, những người làm việc hiệu quả sẽ được hưởng lợi từ

việc nhận được tỷ lệ tốt hơn, trong khi những khách hàng gây ra vấn đề nhận được tỷ lệ thấp hơn. Phần tốt

nhất của phương pháp này là tỷ lệ đưa ra cho khách hàng không thể bị tranh cãi là thiên vị ở cấp độ cá

nhân vì chúng được tính toán dựa trên thực tế về hiệu suất trước đây của khách hàng—riêng điều này có thể

được sử dụng như một động cơ khuyến khích khách hàng nhiều hơn hợp tác xã.

Xếp hạng của khách hàng không được tạo ra cho tỷ lệ bạn tình (cụm từ được sử dụng để cung cấp mức

giá chiết khấu đặc biệt cho bạn bè), mà là phép tính đơn giản chỉ sử dụng dữ kiện về hiệu suất trung

bình trước đây của họ. Công thức cơ bản cho điều này sẽ là:

Tính toán này sử dụng tất cả các xếp hạng hiệu suất trước đó bằng cách cộng chúng lại với nhau và chia

chúng cho số lượng xếp hạng hiệu suất được ghi lại để tạo ra giá trị trung bình của tất cả các xếp hạng

hiệu suất liên quan đến khách hàng.

Ví dụ
Trong một tình huống ví dụ, chúng tôi có một khách hàng đã làm việc với chúng tôi trong 4 dự án trước đó.

Chi tiết về hiệu suất của họ là:

h Dự án 1 = 2,5 h Dự

án 2 = 2

268
Machine Translated by Google

h Dự án 3 = 1,75 h Dự

án 4 = 1,5

Các con số cho thấy rằng khách hàng ban đầu rất tốn thời gian, dẫn đến chi phí thực
hiện gấp hai lần rưỡi (2,5) so với chi phí đáng lẽ phải bỏ ra. Điều này có thể là do nhiều yếu
tố chẳng hạn như cần lặp lại các cuộc họp, các cuộc gọi điện thoại và nhiều e-mail—mỗi yếu tố
này đều làm tăng thêm thời gian không cần thiết cho dự án. Mặc dù họ đã cải thiện qua từng dự án
nhưng những con số cho thấy làm việc với khách hàng vẫn mất nhiều thời gian hơn dự kiến. Sử dụng
mức trung bình là lý tưởng vì:

h Mặc dù các con số cho thấy rằng không chắc rằng xếp hạng hiệu suất của nhiệm vụ tiếp
theo sẽ nhiều như 2,5, nhưng vẫn có khả năng nó sẽ cao hơn giá trị hiệu suất của dự án
4 là 1,5. h Hiệu suất gần như chắc chắn sẽ cao hơn giá trị mục tiêu là 1.

Sử dụng những con số này trong công thức cung cấp:

Kết quả cho thấy đánh giá của khách hàng vẫn cao hơn so với hai dự án trước, mặc dù khách
hàng đã cho thấy sự cải thiện. Xếp hạng của khách hàng có thể được cập nhật sau khi hoàn thành
từng dự án mới, cho phép họ nhận được xếp hạng tốt hơn (thấp hơn) nếu họ có thể đóng góp vào
xếp hạng hiệu suất tốt hơn.

269
Machine Translated by Google

Ước lượng
Từ những gì đã học được về khách hàng, chúng tôi có thể áp dụng xếp hạng khách hàng để tính toán ước
tính về thời gian và giá của các yêu cầu công việc mới. Phương pháp này có nhiều khả năng chính xác
hơn là phỏng đoán vì nó dựa trên dữ liệu được thu thập từ hiệu suất trước đó có thể chỉ ra một mô hình
đang diễn ra.

Ước tính thời gian cho một dự án chỉ đơn giản là nhân với xếp hạng khách hàng được tạo trước đó, do
đó công thức trở thành:

Ước tính thời gian = Thời gian lý tưởng x Xếp hạng khách hàng

Có ba chiến lược để xác định giá ước tính tùy thuộc vào loại dự án bạn đang bán cho khách hàng:

h Thời gian

¾ Tính số tiền bạn muốn o được trả cho mỗi giờ làm việc của bạn.

h Giá trị

¾ Phương pháp giá cố định không phản ánh lượng thời gian cung cấp để sản xuất phần mềm.

¾ Sử dụng điều này cho bất kỳ thứ gì bạn đang bán được làm sẵn, có thể tùy chỉnh và cung

cấp để mang lại lợi ích cho khách hàng bằng cách giảm thời gian phát triển.

Ước tính giá dựa trên thời gian là đơn giản; với mục đích là tính phí cho mỗi giờ bạn làm việc, bạn
nhân lượng thời gian dự kiến với số tiền bạn muốn tính phí mỗi giờ. Do đó, công thức cơ bản cho điều
này sẽ là:

Ước tính giá = Ước tính thời gian x Tỷ lệ hàng giờ

Các dự án cũng phát sinh thêm chi phí liên quan đến các dịch vụ và tài nguyên được mua để sử dụng cho
dự án, do đó bạn cũng có thể muốn đưa những chi phí này vào giá. Điều này sẽ yêu cầu công thức cơ bản
được điều chỉnh để trở thành như sau:

Giá ước tính = (Thời gian ước tính x Tỷ lệ hàng giờ) + Chi phí cố định

Ước tính giá không cần phải hoàn toàn dựa trên thời gian hoặc giá trị. Ví dụ: một dự án yêu cầu một
số giờ để tùy chỉnh có thể bao gồm sự kết hợp giữa định giá dựa trên thời gian và giá trị. Mặc dù
loại dự án này có thể được tính toán bằng cách sử dụng giá dựa trên giá trị, nhưng với thời gian
tùy chỉnh được bù trừ so với tổng giá bán, sẽ có rủi ro đáng kể khi một số khách hàng tăng thời gian
tùy chỉnh đến mức không thể sinh lời khi đưa vào tùy chỉnh.

270
Machine Translated by Google

Các dự án quy mô nhỏ với tỷ suất lợi nhuận mỏng đặc biệt dễ bị ảnh hưởng bởi điều này, khi giá dựa
trên giá trị được tính toán đưa ra giả định rằng một cấu hình kỹ thuật nhỏ mất vài giờ trong các tình
huống lý tưởng, trong khi thực tế là một số khách hàng vì lý do này hay lý do khác sẽ tăng đáng kể
thời gian tùy chỉnh thông qua các vấn đề như thay đổi suy nghĩ, giao tiếp thiếu rõ ràng hoặc thêm các
yêu cầu mới. Điều này có thể trở thành một vấn đề nghiêm trọng khi khách hàng đưa ra những cách làm
không hiệu quả làm tăng thời gian gấp nhiều lần so với giá ban đầu được cung cấp—trong trường hợp xấu
nhất, chi phí cho việc đánh giá sai này có thể đáng giá hơn giá trị của toàn bộ dự án.

Một giải pháp cho vấn đề sử dụng định giá dựa trên giá trị cho các dự án có yếu tố yêu cầu công
việc đặt trước, chẳng hạn như tùy chỉnh, là cung cấp các yếu tố này của dự án dưới dạng ước tính
riêng bên cạnh giá dựa trên giá trị cố định. Điều này cung cấp hai lợi thế chính trong việc quản
lý ngân sách:

h Rủi ro của bạn được giảm thiểu để chỉ hoàn thành các yếu tố của dự án đã biết chi phí liên
quan đến chúng.

h Bạn có khả năng sử dụng trạng thái ước tính của các thành phần còn lại
đàm phán với khách hàng—cho dù đó là điều chỉnh giá để phù hợp với việc tăng thời gian
ngoài dự kiến hay thuyết phục họ thỏa hiệp để các bộ phận có thể được hoàn thành theo
ước tính ban đầu.

Những lợi thế này giảm thiểu rủi ro của bạn đến mức bạn có thể tin tưởng rằng dự án sẽ sinh
lời. Chỉ cần đảm bảo rằng mọi thứ được định giá theo định giá dựa trên giá trị đều chính xác!

Ví dụ
Tiếp tục ví dụ tạo ra xếp hạng của khách hàng là 1,94, kịch bản ví dụ của chúng tôi có khách hàng
muốn thêm hệ thống đặt chỗ vào trang web của họ. Chúng tôi đã phát triển một hệ thống có thể được thêm
vào các trang web để cho phép họ chấp nhận và quản lý đặt chỗ, vì vậy dự án sẽ chỉ là trường hợp cài
đặt và tùy chỉnh hệ thống.

Ví dụ này có sự kết hợp giữa định giá dựa trên giá trị, được sử dụng cho sản phẩm mà chúng tôi có
thể bán cho khách hàng và định giá dựa trên thời gian, sẽ là thời gian để thiết lập sản phẩm.
Chỉ tính phí trong một thời gian có nghĩa là chúng tôi không được trả tiền cho việc phát triển
hệ thống ban đầu, do đó hệ thống sản phẩm có một mức giá cố định cho mỗi khách hàng mà nó được bán.
Sau đây là các yếu tố liên quan đến giá của chúng tôi:

h Giá tính theo giờ = £30

h Hệ thống đặt trước = £1.000 h Cài

đặt, cấu hình và thử nghiệm thông thường = 4 giờ

Cùng với xếp hạng khách hàng đã xác định trước đó là 1,94, chúng tôi có mọi thứ cần thiết để tạo ước
tính về thời gian và giá cả. Đầu tiên, ước tính thời gian của chúng tôi sẽ được thực hiện như sau:

h Thời gian ước tính = 4 giờ x 1,94 = 7,76 giờ

271
Machine Translated by Google

Kinh nghiệm trước đây với khách hàng cho thấy rằng chúng tôi nên đầu tư nhiều thời gian hơn bình
thường để thực hiện cài đặt, do đó ước tính thời gian là 7,76 giờ. Các hoạt động điển hình sẽ làm

tăng lượng thời gian cần thiết là những hoạt động dễ bị chỉ trích chủ quan, chẳng hạn như thiết kế
các trang đặt trước và bất kỳ loại hoạt động nào phụ thuộc nhiều vào việc khách hàng cung cấp thông

tin và tài nguyên chính xác— đó là trường hợp đối với thử nghiệm để đảm bảo rằng hệ thống đặt chỗ đã
được cấu hình chính xác.

Bây giờ chúng ta đã ước tính thời gian, giá có thể được ước tính cho việc cài đặt:

h Giá ước tính = 7,76 giờ x £30 = £232,80

Cuối cùng, chúng tôi thêm giá của chi phí cố định vào giá. Với các mặt hàng sử dụng giá dựa trên giá
trị được phân loại theo chi phí cố định, chúng tôi chỉ cần thêm giá mua hệ thống đặt trước vào ước tính

giá đã được tính toán:

h Giá ước tính = £232,80 + £1.000 = £1.232,80

báo giá
Sự khác biệt duy nhất giữa việc cung cấp ước tính và báo giá là báo giá là sự đảm bảo rằng giá

đã nêu là cố định cho những gì đã được thỏa thuận. Việc nêu rõ ngày giao hàng giống như một báo
giá, nhưng không bao giờ có thể được đảm bảo tuyệt đối do rủi ro của các trường hợp không lường

trước được dẫn đến trượt giá.

Vấn đề với việc bán dịch vụ của bạn trên cơ sở báo giá là bất kỳ sai sót nào trong ước tính của bạn đều
có thể dẫn đến việc bạn giảm khả năng sinh lời hoặc tệ hơn là mất tiền cho dự án. Chính vì điều này mà

bạn chỉ nên xem xét việc bán dịch vụ của mình trên cơ sở báo giá khi bạn đã có đủ kinh nghiệm điều hành
các dự án tự do.

Khi một khách hàng muốn bạn báo cho họ một mức chi phí mà bạn bắt buộc phải thực hiện một dự án,

thì trên thực tế, họ đang chuyển rủi ro liên quan đến chi phí của dự án cho bạn, bao gồm cả chi phí
thời gian do bất kỳ sự kém hiệu quả nào của họ, chẳng hạn như không chính xác truyền thông và quá cầu
kỳ trong việc chấp nhận các thành phần của dự án mang tính chủ quan. Với loại khách hàng không phù

hợp, việc định giá dựa trên báo giá có thể tạo ra một đống sâu mà mối quan tâm về chi phí của khách
hàng lẽ ra phải nằm trong tầm kiểm soát.

Khi đối mặt với một khách hàng khăng khăng yêu cầu bạn cung cấp báo giá chứ không phải ước tính,
hãy xem xét những điều sau:

h Liệu bạn có tin rằng họ đặt ra quá nhiều rủi ro để đưa ra báo giá hay không.

h Liệu mức độ phức tạp của dự án có đặt ra quá nhiều rủi ro để hoàn thành có lãi hay không. h Gắn

rõ ràng các điều kiện vào báo giá để giới hạn phạm vi cách báo giá có thể bị lạm dụng—chẳng hạn như

khoảng thời gian báo giá có hiệu lực để được chấp nhận và số lần sửa đổi có thể được thực hiện
trong các thành phần dự án có thể giải thích chủ quan.

272
Machine Translated by Google

h Thêm một tỷ lệ phần trăm đáng kể vào ước tính của bạn để trang trải cho yếu tố rủi
ro được chuyển cho bạn.

h Tăng ước tính của bạn đến mức có thể khiến khách hàng xem xét lại việc chấp nhận
ước tính ban đầu.

Liên quan đến điểm cuối cùng liên quan đến việc bổ sung một khoản ký quỹ để khuyến khích khách
hàng chấp nhận ước tính thay vào đó, có một sự cân bằng tốt với điều này. Bạn sẽ muốn duy trì
tính cạnh tranh, nhưng đồng thời tạo ra sự khác biệt về giá đủ lớn để khách hàng thấy rằng việc
chấp nhận ước tính là đáng giá. Vì lý do này, bạn có thể muốn trình bày cả ước tính và báo giá
cạnh nhau để có thể nhấn mạnh khả năng tiết kiệm chi phí.

Phương pháp tính giá báo giá này giống như cách tính ước tính, nhưng có thêm một tỷ lệ phần
trăm được thêm vào ước tính. Điều này có nghĩa là bước đầu tiên trong quy trình này là tính toán
giá trị của tỷ lệ phần trăm bạn đang thêm vào ước tính:

h Phần trăm Số tiền = (Phần trăm ÷ 100) x Giá ước tính

Sau đó, chúng tôi thêm số tiền này vào giá ước tính cho báo giá cuối cùng:

h Báo giá = Giá ước tính + Tỷ lệ phần trăm

Ví dụ
Giá ước tính của chúng tôi cho việc bổ sung hệ thống đặt trước vào trang web của khách hàng
được tính là £1.232,80. Khách hàng đã nhấn mạnh rằng họ muốn chúng tôi báo giá cuối cùng chứ
không phải ước tính. Mặc dù ước tính giá đã được tính toán để phù hợp với xếp hạng của khách hàng
bao gồm kỳ vọng về sự thiếu hiệu quả dựa trên kinh nghiệm làm việc với họ trước đây, nhưng việc
cung cấp báo giá có rủi ro cao nếu chúng tôi không thể hoàn toàn chắc chắn rằng mình đã đáp ứng tất
cả các yếu tố.

Để đối phó với rủi ro gia tăng, chúng tôi muốn thêm một tỷ lệ phần trăm vào giá ước tính để mang
lại cho chúng tôi một biên độ đủ lớn để đảm bảo rằng chúng tôi vẫn kiếm được biên lợi nhuận mục
tiêu nếu có bất kỳ điều gì bất ngờ xảy ra—và để tránh gây ra bất kỳ tổn thất nào cho dự án. Chúng
tôi quyết định rằng vẫn có rủi ro do các yếu tố chưa biết, bao gồm cả số lượng hỗ trợ chưa biết mà
khách hàng sẽ yêu cầu, do đó chúng tôi sẽ cộng thêm 40% vào giá của dự án:

h Số tiền theo phần trăm = (40 ÷ 100) x £1.232,80 = £493,12

Bây giờ chúng ta đã biết mức giá chiếm 40%, chúng ta thêm giá này vào ước tính giá đã tính toán
trước đây được tạo cho dự án:

h Báo giá = £1.232,80 + £493,12 = £1725,92

273
Machine Translated by Google

Quản lý rủi ro
Đặc biệt là trong quá trình sản xuất các báo giá mà bạn bắt buộc phải thực hiện, việc quản lý rủi ro
là một hoạt động nên được thực hiện trong suốt quá trình của dự án, bắt đầu từ điểm mà các yêu cầu
đang được nghiên cứu và giá cả đang được tính toán. Trong ví dụ của chúng tôi về việc cung cấp cho
khách hàng hệ thống đặt trước trang web, chúng tôi đã xác định các yếu tố rủi ro cần quan tâm sau đây:

h Dự án nhỏ có nghĩa là sẽ có ít sai sót hơn nếu ước tính sai. h Dự án nhỏ có nghĩa là chúng

tôi ít có khả năng điều chỉnh ngân sách được phân bổ cho
các phần khác nhau của dự án để bù đắp cho những sai lầm làm dự án phải trả giá.

h Có những yếu tố chưa biết liên quan đến cả khách hàng và yêu cầu của họ.

Chống lại rủi ro


Hoạt động đầu tiên tham gia vào việc sản xuất báo giá sẽ là các điều khoản bằng văn bản xác định
các điều kiện mà báo giá sẽ có hiệu lực. Các điều khoản này cũng quan trọng như giá được tính cho
báo giá vì chúng đảm bảo rằng khách hàng bị hạn chế thực hiện hoặc yêu cầu bất kỳ điều gì có thể
gây rủi ro cho lợi nhuận của bạn. Cần nỗ lực để đảm bảo rằng các điều khoản được chỉ định chống lại
từng yếu tố rủi ro đã xác định, chẳng hạn như:

h Thông số kỹ thuật chi tiết của công việc được thực hiện—được tính phí riêng cho
khách hàng nếu họ không thể tự cung cấp.

h Các định nghĩa về giới hạn của từng tính năng được xác định trong thông số kỹ thuật—
hạn chế khách hàng thêm các tính năng được ngụ ý bởi từ ngữ, nhưng không được chỉ
định rõ ràng.

h Các điều kiện để khách hàng tham gia mà tính hợp lệ của báo giá phụ thuộc vào—cung cấp cho
khách hàng trách nhiệm giải trình đối với hành động của họ và tuân thủ trách nhiệm của họ.

h Định nghĩa hậu quả—nhấn mạnh hơn nữa những gì khách hàng mong đợi để báo giá có hiệu
lực, với các ví dụ cụ thể về các tình huống trong đó báo giá sẽ trở nên không hợp lệ,
các khoản phí bổ sung được đưa ra hoặc khi bất kỳ ngày giao hàng cụ thể nào trở nên
không thể thực hiện được

Việc áp dụng các điều khoản và điều kiện không phải lúc nào cũng được áp dụng theo cách hà khắc như
vậy, đặc biệt là khi khách hàng vui lòng tiến hành ước tính. Tuy nhiên, ngay cả khi khách hàng biết
rằng giá bạn đang cung cấp là ước tính, thì vẫn nên cung cấp tài liệu để xác định các yếu tố như
thông số kỹ thuật mà giá ước tính được tạo ra—nếu không chỉ để khách hàng biết rằng giá nêu là một
ước tính và không phải là một báo giá.

274
Machine Translated by Google

Tính toán rủi ro


Với hậu quả của các rủi ro đã xác định có ảnh hưởng đến thời gian và chi phí của dự án, nên có
khả năng kết hợp các rủi ro như một phần của bất kỳ tính toán ước tính nào. Rủi ro có hai thành
phần:

h Xác suất rủi ro trở thành hiện thực. h Hậu quả của

rủi ro nếu chúng trở thành hiện thực.

Vấn đề tiến thoái lưỡng nan của quản lý rủi ro trong việc ước tính thời gian hoặc chi
phí của dự án là kết hợp sự cân bằng thực tế bao gồm khả năng rủi ro trở thành hiện thực.
Trong những trường hợp cực đoan hơn, rủi ro với chi phí cao và xác suất thấp gây ra tình thế khó
xử cho việc ước tính và lập kế hoạch dự án vì:

h Chúng khó có thể xảy ra, do đó việc gộp toàn bộ chi phí của chúng có thể làm cho ước
tính không chính xác và có thể có rủi ro khiến ước tính hoặc báo giá dự án của chúng
ta trở nên không cạnh tranh. h Chi phí của hậu quả khi nó xảy ra có tác động nghiêm

trọng đến cách dự án có thể giữ được ước tính ban đầu về thời gian và/hoặc chi phí.

Cách xử lý rủi ro trong dự toán dự án có thể tương tự như cách chúng ta xử lý rủi ro trong cuộc sống
hàng ngày. Lấy ví dụ xác định cách đi từ địa điểm A đến địa điểm B, nơi chúng tôi có thể sử dụng
taxi, người cung cấp cho chúng tôi hai tùy chọn tuyến đường khác nhau. Sơ đồ sau đây mô hình hóa rủi
ro và chi phí liên quan đến mỗi tuyến đường:

Kết luận đơn giản nhất mà chúng ta có thể thấy từ biểu đồ là tất cả các kết quả trong lộ trình
B đều đắt hơn tất cả các kết quả trong lộ trình A. Cách nhìn đơn giản này về tình huống có thể
gây hiểu lầm vì chúng ta chưa xem xét xác suất xảy ra của từng kết quả. Xác suất được thể hiện
dưới dạng số thập phân từ 0 đến 1, với 0 là không thể và 1 là chắc chắn 100%. Chúng tôi nghĩ về
xác suất trong các trường hợp hàng ngày theo tỷ lệ phần trăm, có thể dễ dàng chuyển đổi thành số
thập phân tương đương bằng cách chia tỷ lệ phần trăm cho 100, điều này sẽ dẫn đến xác suất của chúng
tôi nằm trong khoảng từ 0 đến 1.

275
Machine Translated by Google

Việc xác định xác suất của các kết quả như những kết quả được xác định trong mô hình ví dụ của
chúng tôi nên được xác định từ các nguồn thông tin có hiểu biết như dữ liệu lịch sử, khảo sát hoặc ý

kiến của các chuyên gia—xem phần của chương này có tiêu đề Duy trì độ chính xác của ước tính.

Sau khi tính đến xác suất của từng kết quả của các tuyến đường, chúng ta có thể thấy rằng kết quả có
khả năng xảy ra nhất đối với tuyến đường A là giao thông đông đúc do xác suất là 0,6, dẫn đến giá vé taxi

là 15 bảng Anh. Điều này trái ngược với kết quả có thể xảy ra nhất là tuyến đường B có lưu lượng giao

thông bình thường, cũng do xác suất là 0,6, nhưng dẫn đến giá cước taxi là 11 bảng Anh. Bây giờ chúng ta

có một kết luận hoàn toàn khác rằng tuyến đường B có thể rẻ hơn tuyến đường A, mặc dù tất cả các kết quả
tương đương đều đắt hơn.

Mặc dù phương pháp xác định lộ trình tốt nhất của chúng tôi hiện cung cấp thông tin chi tiết hơn về các

kết quả có thể xảy ra và chi phí phát sinh liên quan đến từng lộ trình, nhưng chúng tôi vẫn có một yếu

tố không chắc chắn vì vẫn có xác suất 0,4 cho mỗi lộ trình có kết quả thay thế sẽ dẫn đến trong một

khoản chi phí khác. Chúng ta có thể sử dụng xác suất của tất cả các kết quả trong mỗi lộ trình để xác
định mức giá có khả năng nhất bằng cách nhân từng mức giá với xác suất liên quan của chúng và cộng tất
cả các kết quả theo từng lộ trình lại với nhau. Điều này sau đó sẽ dẫn đến:

> Tuyến A=(£15 0,6)+ (£9 0,3)+(£7 0,1) = £9+


£2,70+£0,70 = £12,40

> Tuyến B=(£20 0,1)+ (£11 0,6)+(£9 0,3)


=£2+£6,60+£2,70 =£11,30

Kết quả của những tính toán này cho thấy tuyến đường B đắt hơn một chút, nhưng vẫn không đắt bằng

tuyến đường A, trong khi tuyến đường A hiện có thể được coi là rẻ hơn một chút như đã xác định trước
đó.

Trong trường hợp quyết định lộ trình cho hành trình taxi của chúng tôi, cả hai phương pháp phân

tích kết quả đều không cung cấp cho chúng tôi thông tin đầy đủ mà chúng tôi cần để đưa ra quyết định

cần thiết cho một hành trình cá nhân. Để đưa ra quyết định tốt nhất, chúng tôi sẽ sử dụng cả ba phương
pháp để xác định thông tin chúng tôi cần:

h Chúng tôi sẽ xác định chi phí tối đa mà mỗi tuyến đường có thể phải trả để đảm bảo rằng

chúng tôi có đủ tiền để trả tiền taxi.

¾ Trong trường hợp chúng tôi chỉ có £15 để chi tiêu, chúng tôi biết rằng tuyến đường

A có thể được đảm bảo đáp ứng ngân sách của chúng tôi, bất kể điều kiện giao thông.

¾ Chúng tôi sẽ đảm bảo có sẵn ít nhất £20 để chi tiêu nếu chúng tôi
sẵn sàng chấp nhận rủi ro để tiết kiệm tiền, đó sẽ là kết quả rất có thể xảy ra.

276
Machine Translated by Google

h Kết quả có thể xảy ra nhất có thể được xác định cho một hành trình cá nhân.

¾ Với tuyến đường A có 0,6 khả năng có mật độ giao thông cao, chúng tôi biết rằng kết quả

cho tất cả các hành trình có thể là lựa chọn đắt nhất.

Xác suất của tùy chọn đắt thứ hai có thể được kết hợp với điều này để tạo ra xác suất

gần như chắc chắn là 0,9 rằng hành trình sẽ tốn £15 hoặc £9.

¾ Ngược lại, tuyến đường B có xác suất lựa chọn đắt nhất chỉ là 0,1, nghĩa là xác suất

kết hợp giữa giao thông bình thường và ít giao thông gần như chắc chắn với xác suất

0,9 rằng hành trình sẽ tốn £11 hoặc £9.

h Bao gồm khả năng nhận được kết quả tốn kém nhất cho các hành trình được lặp lại một cách thường

xuyên.

¾ Mặc dù chúng tôi biết rằng tuyến đường B khó có khả năng có mật độ giao thông

cao, nhưng có khả năng là nó sẽ xảy ra một lần trong mỗi mười hành trình, do

đó nên được phản ánh trong mức giá có thể chúng tôi phải trả cho nhiều hành trình.

¾ Mặc dù ví dụ về hành trình taxi của chúng tôi dựa trên giá taxi

công bằng mà nói, chúng ta cũng có thể sử dụng phương pháp tương tự để ước tính tác

động rủi ro liên quan đến thời gian và bất kỳ yếu tố dự án nào khác có thể đo lường

được bằng các con số. Cũng cần xác định rằng mặc dù chi phí thường tỷ lệ thuận với

yêu cầu về thời gian của dự án, nhưng các chi phí cố định khác cũng có thể được kết

hợp khiến tổng chi phí không tương xứng với yêu cầu về thời gian. Trong trường hợp ví

dụ về hành trình taxi của chúng tôi, đây có thể là nơi một tuyến đường có các chi phí

được kết hợp, chẳng hạn như phí cầu đường, có nghĩa là không chỉ đồng hồ taxi tính phí

cho thời gian của hành trình.

Việc định giá liên quan đến rủi ro mà bạn sử dụng để định giá cho dự án của mình sẽ phụ thuộc vào tình

huống và mức độ rủi ro mà bạn có thể chấp nhận liên quan đến lợi nhuận của mình. Giống như ví dụ về hành

trình đi taxi của chúng tôi, có thể đáng để mạo hiểm khả năng giảm lợi nhuận trong dự án của bạn nếu có khả

năng bạn sẽ kiếm được nhiều tiền hơn— tuy nhiên, bạn chỉ nên thực hiện tùy chọn này nếu bạn có đủ khả năng

chi trả bất kỳ chi phí không mong muốn nào chúng có nên xảy ra không.

Thu hồi chi phí chưa tính


Như với bất cứ điều gì liên quan đến rủi ro, một số thứ không theo kế hoạch, dẫn đến tình huống các

dự án bắt đầu vượt quá ngân sách—một vấn đề đối với bạn nếu bạn đang làm việc với một mức giá cố định,

nghĩa là bạn mất tiền cho dự án về mặt tài chính. thời gian và/hoặc chi phí phát sinh để hoàn thành công

việc. Mặc dù xếp hạng của khách hàng sẽ được điều chỉnh để phản ánh thời gian và chi phí không mong muốn

liên quan đến dự án của họ, nhưng điều này chỉ hữu ích cho việc điều chỉnh giá của công việc trong tương

lai để dự đoán các vấn đề tương tự sẽ xảy ra lần nữa và không khắc phục được những tổn thất đã xảy ra.

277
Machine Translated by Google

Có hai lựa chọn dành cho các tình huống trong đó dự án của khách hàng phát sinh chi phí
ngoài dự kiến dẫn đến tổn thất về khả năng sinh lời của bạn hoặc tổn thất hoàn toàn đối với dự án:

h Chấp nhận mất mát và cố gắng không lặp lại sai lầm. h Cố

gắng phục hồi tổn thất.

Điều quan trọng cần nhớ là các dịch giả tự do cuối cùng tham gia trò chơi để kiếm lợi nhuận, do đó mất tiền

là một vấn đề nghiêm trọng. Thời gian của bạn cũng có giá trị, vì vậy hãy đảm bảo rằng bạn tính bất kỳ

khoảng thời gian nào vượt quá ước tính của mình như một phần của tổn thất.

Một giải pháp để phục hồi chi phí của các dự án khiến bạn mất tiền hoặc có khả năng kiếm được tiền
là thêm số tiền này như một phần của yếu tố chi phí cố định trong các ước tính và báo giá trong tương
lai mà bạn cung cấp cho khách hàng. Phương pháp này phụ thuộc vào việc bạn có thể:

h Cung cấp cho khách hàng một động cơ để thuê lại bạn—do đó tầm quan trọng
làm hài lòng họ với tác phẩm gốc.

h Duy trì mức giá cạnh tranh trong khi phục hồi các khoản lỗ của bạn.

Những tổn thất nhỏ có thể được phục hồi nhanh chóng bằng cách bổ sung toàn bộ số tiền vào dự án/giai
đoạn tiếp theo mà khách hàng thuê bạn sản xuất. Số tiền lớn hơn, hoặc số tiền lớn so với tổng số tiền
của dự án, cần được chia thành số tiền nhỏ hơn và do đó được thu thập qua nhiều dự án/giai đoạn.

ví dụ
Tiếp tục ví dụ của chúng tôi khi khách hàng yêu cầu một hệ thống đặt trước trang web, chúng tôi
phát hiện ra rằng dự án đã vượt quá 15 giờ. Bước đầu tiên là tính toán giá trị của thời gian đã mất:

Giá trị thời gian = 15 giờ x £30 = £450

Chúng tôi biết rằng các yêu cầu công việc sắp tới từ khách hàng là những công việc nhỏ hơn so với hệ
thống ban đầu và do đó sẽ không thể đưa £450 này vào một mức giá có thể cạnh tranh được—do đó gây
rủi ro cho khách hàng khi tìm kiếm người khác có lợi thế hơn không cần phải lấy lại £450. Chúng tôi
biết rằng khách hàng cũng có khả năng thuê chúng tôi cho hai dự án nhỏ khác trong tương lai, cung cấp
cho chúng tôi tổng cộng ba cơ hội để phục hồi:

Trả góp thu hồi = £450 ÷ 3 = £150

Số tiền thu hồi mới £150 qua ba dự án có nhiều khả năng được khách hàng chấp nhận hơn và sẽ giữ cho
giá của bạn cạnh tranh.

278
Machine Translated by Google

Duy trì độ chính xác ước tính


Rất dễ bị nhầm lẫn khi làm việc với một mẫu dữ liệu nhỏ. Đây có thể là một vấn đề nghiêm trọng khi
báo giá một khoản phí cố định cho một dự án lớn nếu báo giá dựa trên các sự kiện và số liệu không
chính xác hoặc không liên quan. Một số yếu tố cần được xem xét khi tính giá cho báo giá là:

h Kinh nghiệm làm việc trong một dự án cá nhân có thể không phản ánh đúng
làm việc với khách hàng dễ hay khó. h Các loại dự án

khác nhau có mức độ khó thực hiện khác nhau. h Một thân chủ có thể có kỹ năng tốt hơn

trong một số lĩnh vực so với những lĩnh vực khác. h Nhân viên của khách hàng có thể

chuyển công việc và được thay thế bởi những người mới trong suốt dự án, dẫn đến các giá trị hoàn
toàn mới được tạo ra cho xếp hạng của khách hàng.

h Tính cách, cam kết, năng lực và kỹ năng đóng góp của khách hàng có thể thay đổi theo thời gian
—dẫn đến sự cải thiện hoặc suy giảm hiệu quả của mối quan hệ công việc và giảm độ chính
xác của dữ liệu đánh giá khách hàng mà bạn đã thu thập trước đây.

Với suy nghĩ trên, có thể sử dụng các phương pháp nâng cao hơn để tính xếp hạng của khách hàng và

kết quả báo giá công việc phản ánh tốt hơn các mối quan hệ công việc đang phát triển và mức độ phức
tạp khác nhau của các dự án. Những tính toán này, đặc biệt là những tính toán cho các dự án lớn hơn,
dựa trên kiến thức rằng:

h Tất cả các dự án được tạo thành từ một loạt các giai đoạn nhỏ hơn, do đó mỗi giai đoạn phải
có một chi phí liên quan để thực hiện.

Khi khách hàng yêu cầu báo giá cho một dự án được coi là lớn và/hoặc phức tạp, rủi ro của
bạn có thể được giảm bớt bằng cách cung cấp ước tính cho toàn bộ dự án và báo giá cho các
giai đoạn riêng lẻ khi chúng diễn ra.

h Ước tính chính xác phụ thuộc vào đánh giá chính xác của khách hàng và nhận thức thực tế
về thời gian lý tưởng cần thiết để hoàn thành công việc.

Tránh bị cám dỗ trở nên lạc quan thái quá, đặc biệt nếu bạn đang cố gắng hạ gục đối
thủ cạnh tranh để đưa ra giá thầu với mức giá hấp dẫn nhất hoặc khi khách hàng đang
gây áp lực buộc bạn phải cam kết về thời gian phi thực tế.

h Mối quan hệ làm việc với khách hàng hiếm khi dễ dàng hoặc khó khăn.

Khách hàng sẽ dễ dàng làm việc với một số loại nhiệm vụ và khó làm việc hơn với những
loại khác. Tránh đưa ra các giả định về khách hàng dựa trên kinh nghiệm làm việc với họ
trước đây không giống với loại nhiệm vụ hiện tại mà bạn đang ước tính.

Với xếp hạng của khách hàng là yếu tố quan trọng trong việc điều chỉnh ước tính để tính đến các
yếu tố đã biết liên quan đến khách hàng, chìa khóa để duy trì độ chính xác của ước tính chủ yếu
liên quan đến cách tính xếp hạng của khách hàng.

279
Machine Translated by Google

Xếp hạng khách hàng trung bình


Phương pháp cơ bản nhất để giữ cho báo giá chính xác là dựa trên xếp hạng khách hàng đang được sử
dụng trên mức trung bình của các xếp hạng khách hàng riêng lẻ được tạo từ từng dự án riêng lẻ đã tham
gia cho đến nay. Ví dụ ban đầu của chúng tôi đã sử dụng phương pháp này, trong đó mỗi dự án đã hoàn
thành được đánh giá riêng lẻ để xác định xếp hạng của khách hàng, sau đó được thêm vào xếp hạng của
khách hàng của các dự án trước đó để xác định xếp hạng khách hàng trung bình mới phản ánh hiệu suất
của khách hàng trên tất cả các dự án .

Sử dụng xếp hạng của khách hàng dựa trên mức trung bình của tất cả các dự án là tốt cho các tình
huống mà dự án đáp ứng một hoặc nhiều điều kiện sau:

h Dự án phản ánh các dự án điển hình mà bạn đã thực hiện


khách hàng.

h Bạn không biết về bức tranh toàn cảnh mà dự án tồn tại trong đó sẽ
ảnh hưởng đến hiệu suất của khách hàng trong dự án.

h Không có đủ dự án để sử dụng các phương pháp bổ sung để tạo xếp hạng khách hàng.

Khi dự án không đáp ứng bất kỳ điều kiện nào ở trên, sẽ có sự không chắc chắn không cần thiết
gây ra nguy cơ xếp hạng trung bình của khách hàng bị ảnh hưởng tích cực hoặc tiêu cực bởi các dự
án không liên quan đến dự án hiện tại đang được ước tính.

Một lợi thế khi sử dụng xếp hạng trung bình của khách hàng trong loại tình huống này là họ có xu
hướng tự điều chỉnh trong thời gian dài, với điều kiện là có những dự án/giai đoạn trong tương lai
mà họ thực hiện đủ các cải tiến để bù đắp bất kỳ tổn thất nào mà bạn gặp phải do hiệu quả của họ bị
giảm sút ngoài dự kiến.

Ví dụ
Để chứng minh cách sử dụng xếp hạng trung bình của khách hàng có thể đưa ra những điểm không chính xác
trong một kịch bản không đại diện cho dự án trung bình điển hình, chúng tôi sẽ thực hiện ước tính cho
một kịch bản dự án mà trước đây khách hàng chưa từng làm việc với chúng tôi ở cấp độ kỹ thuật như vậy
và do đó cần nhiều hỗ trợ hơn—đây là phần có phạm vi tăng đáng kể thời gian đầu tư cần thiết.

Để tóm tắt xếp hạng khách hàng được tạo trong ví dụ ban đầu:

280
Machine Translated by Google

Từ đó, chúng tôi thấy rằng khách hàng đang dần trở nên hiệu quả hơn khi làm việc cùng, mặc dù
xếp hạng trung bình của khách hàng vẫn cung cấp tỷ lệ gần bằng nửa điểm giữa hiệu suất dự án tốt nhất
và tệ nhất của họ. Với xếp hạng trung bình của khách hàng cao hơn giá trị mục tiêu là 1, điều đó cho
chúng tôi biết rằng chúng tôi nên kỳ vọng khách hàng sẽ mất nhiều thời gian hơn để làm việc với dự án
điển hình—trong trường hợp này, điều đó cho chúng tôi biết kỳ vọng sẽ mất gần gấp đôi số lượng thời
gian.

Với kịch bản dự án của chúng tôi có chứa các yếu tố không quen thuộc với khách hàng, chúng tôi
có thể mong đợi khả năng xảy ra bất kỳ điều nào sau đây:

h Nỗ lực hơn nữa để quản lý khách hàng thông qua giao tiếp và lập kế hoạch - Với việc khách
hàng không quen thuộc với các đặc điểm kỹ thuật của loại dự án này mà họ không có kinh
nghiệm tham gia, rất có thể họ sẽ cần ít nhất một số yếu tố bổ sung của hỗ trợ để kiểm
tra xem họ có hiểu thông tin liên lạc như mong đợi hay không và có thể nhận thức được
họ cần phải đóng góp những gì và khi nào chúng nên được chuyển giao. h Thông tin sai
lệch với khách hàng dẫn đến lặp lại công việc - Điều này

có thể là sự thiếu rõ ràng trong cách khách hàng đưa ra một số yêu cầu hoặc hoàn toàn
quên cung cấp thông tin. Điều này xảy ra khi khách hàng không nhận thức được tầm quan
trọng của thông tin—nếu ngay từ đầu họ đã nhận thức được thông tin đó là gì.

h Yêu cầu cung cấp cho khách hàng đào tạo bổ sung để họ có thể đóng góp cho dự án - Điều này có
thể dưới hình thức dạy họ cách sử dụng phần mềm mà họ không quen thuộc để họ có thể cung
cấp dữ liệu mà các thành phần phần mềm của bạn phụ thuộc vào, hoặc nó có thể ở dạng cung
cấp kiến thức về một số hoạt động kỹ thuật.

Kịch bản của chúng tôi có thể có yếu tố thông tin sai lệch dẫn đến một số công việc bị lặp lại, điều

này không tốt nếu chúng tôi cung cấp báo giá cố định. Xếp hạng trung bình của khách hàng có thể phù
hợp với điều này nếu khách hàng đã cho thấy sự kém hiệu quả trong các dự án trước đó, điều may mắn
thay sẽ xảy ra trong trường hợp ví dụ của chúng tôi—cung cấp đủ biên độ cho bất kỳ sự kém hiệu quả
nào như vậy để khiến thời gian dự án gần gấp đôi thời gian dự án lý tưởng . Điều này cho thấy xếp
hạng trung bình của khách hàng ít nhất là đáng tin cậy ở một mức độ nào đó trong kịch bản này, miễn
là thời gian lý tưởng cho dự án là thực tế để bắt đầu.

Trường hợp xếp hạng khách hàng trung bình có thể sai trong kịch bản dự án này là nếu việc lặp lại
mã hoặc các khoản đầu tư thời gian khác cần thiết để đào tạo và quản lý khách hàng là một vấn đề đủ
nghiêm trọng để tăng hơn gấp đôi thời gian. Có thể bạn sẽ vui lòng chấp nhận mức giảm lợi nhuận nhỏ
trong dự án này, mà các phép tính xếp hạng trung bình của khách hàng sẽ tự điều chỉnh để phục hồi
thời gian chưa được tính trong các dự án/giai đoạn trong tương lai—với điều kiện là khách hàng trở
nên hiệu quả hơn. Tuy nhiên, khi vấn đề xảy ra khi khách hàng tăng thời gian dự án lên gấp ba, bốn
hoặc năm lần lượng thời gian cần thiết.

281
Machine Translated by Google

Xếp hạng khách hàng chọn lọc


Xếp hạng khách hàng trung bình có thể trở nên đáng tin cậy hơn thông qua việc chọn lọc
các dự án được sử dụng trong tính toán để đảm bảo rằng kết quả phản ánh hiệu quả mong đợi
của khách hàng trong dự án/giai đoạn sắp tới. Các cân nhắc có thể được tính đến khi lựa
chọn các dự án phù hợp để làm cơ sở xếp hạng của khách hàng bao gồm:

h Liệu khách hàng có đang dần cải thiện với từng dự án hay không - Khi các kỹ năng và
khả năng tham gia vào mối quan hệ công việc của họ phát triển, khách hàng sẽ trở
nên hiệu quả hơn trong cộng tác và giao tiếp.

h Đặc điểm của dự án trước với dự án/giai đoạn hiện tại -


Đánh giá hiệu suất của khách hàng đối với các dự án trước đây có thể là ảo
tưởng nếu các đặc điểm của các dự án này không được phân tích chặt chẽ để xác
định điểm tương đồng của chúng với dự án hiện tại. Trong trường hợp các dự án
trước đây không giống với dự án hiện tại, có vẻ như khách hàng có thể thực hiện
tốt hơn khả năng họ có thể đạt được với các đặc điểm của dự án hiện tại chứng tỏ
là khác, phức tạp hơn hoặc có vấn đề để giải quyết. Những đặc điểm này có thể xuất
hiện dưới dạng một số loại kiến thức kỹ thuật, kỹ năng, quy trình hoặc khả năng
giao tiếp được yêu cầu để thực hiện hiệu quả.

h Các yếu tố tiêu chuẩn trong tất cả các dự án - Có thể có một số kỹ năng và quy trình
được coi là đương nhiên được lặp lại trong tất cả các dự án. Những khách hàng ban
đầu chưa quen với những điều này trước khi làm việc với bạn sẽ không cần phải học
lại và mắc lỗi để có được kiến thức về các kỹ năng và quy trình này.

Lỗ hổng của phương pháp tạo xếp hạng khách hàng này nằm ở việc lựa chọn dự án.
Chỉ là con người, việc lựa chọn dễ mắc sai lầm trong quá trình ra quyết định của con
người, cho dù đó là thông qua các giả định về sự phù hợp của các dự án được lựa chọn hay
quá lạc quan về khả năng của khách hàng.

Ví dụ
Với tình huống ví dụ của chúng tôi chỉ ra rằng khách hàng có ít hoặc không có kinh
nghiệm tham gia vào loại dự án hiện tại, sẽ thực tế hơn nếu kỳ vọng hiệu quả của
việc họ tham gia vào dự án sẽ tương tự như dự án đầu tiên.
Tuy nhiên, với khách hàng đã làm việc với chúng tôi trong các dự án trước đó, sẽ an toàn
khi cho rằng họ sẽ có được các kỹ năng và kiến thức cần thiết để làm việc với chúng tôi và
có thể áp dụng cho tất cả các dự án, do đó hiệu quả của họ khi cộng tác với chúng tôi có
thể không được như mong muốn. không hiệu quả như lúc đầu. Vì lý do này, chúng tôi sẽ xem
xét các dự án sau để phản ánh các đặc điểm của dự án sắp tới:

Dự án 1 - Dự án này cho thấy khách hàng đã cộng tác hiệu quả như thế nào khi họ lần đầu
tiên tham gia vào loại dự án mà họ chưa từng làm việc trước đây. Sự thiếu hiểu biết của
họ về các quy trình và kỹ năng cần thiết để cộng tác vào thời điểm này cũng tương tự như
tình huống hiện tại.

282

You might also like