CHUONG 2. CHUONG 2. THU THAP YEU CAU
2.1. Sơ lược về SRS
SRS (Software Requirements Specification) la mot tai ligu quan trọng trong quá trình phát triển phần mềm. Nó mô tả chỉ tiết các yêu cầu chức năng và phí chức năng
của hệ thống phần mềm mà đội phát triển phải triển khai.
SRS định nghĩa các yêu cầu về phần mềm từ góc nhìn của người dùng và khách hàng. Nó phải rõ ràng, đầy đủ và không mở đề hiểu lầm để đảm bảo rằng đội phát triển và khỏch hàng cú cựng hiểu đỳng về những ứỡ hệ thống phần mềm cần thực hiện.
Đây là một tài liệu quan trọng cho đội phát triển (system analyst, business analyst, code) va kiém thu (tester). Tai liệu đặc tả yêu cầu SRS còn đóng vai trò là cầu nối liên kết giữa người dùng và nhà sáng tạo và từ đó hệ thống có thế đáp ứng được đúng mục đích và yêu cầu của người sử dụng.Ngoàải ra, dựa vào các yêu cầu mà SRS thông kê, ta có thê đánh giá được số lượng scope, thời gian hoàn thành hay những chỉ phí cần đáp ứng giúp hoản thành sản phẩm một cách nhanh chóng và đễ dàng hơn.
Vai trò chính của SRS trong đồ án:
- _ Xác định yêu cẩu: SRS giup xac dinh va đặt ra các yêu cầu chính của hệ thong phần mềm. Nó mô tả các chức năng và phi chức năng mà hệ thống phải thực hiện và đảm bảo rằng các yêu cầu này được hiểu đúng và đồng nhất giữa đội phát triển và khách hảng.
- _ Cưng cấp hướng dân phát triển: SRS định nghĩa một khung làm việc cho việc phát triển phần mềm. Nó giúp định rõ phạm vi, mục tiêu và đặc điểm quan trọng của hệ thống. Điều này giúp đội phát triển có một hướng dẫn rõ ràng để
tiền hành thiết kế, lập trình và kiếm thử hệ thống.
- _ Đảm bảo sự hiểu biết chưng: SRS là một tài liệu chung mà cả đội phát triển và
khách hàng có thê tham khảo. Nó đảm bảo rằng tất cả các bên liên quan có cùng hiểu biết về yêu cầu của hệ thống phần mềm. Điều này giúp tránh những hiểu lầm và đảm bảo sự thống nhất trong quá trình phát triển.
- _ Đánh giả và kiểm soát tiễn độ: SRS cung cấp một cơ sở đề đánh giá tiến độ của đồ án. Nó cho phép so sánh việc phát triển thực tế với yêu cầu đã xác định và giúp đánh giá liệu công việc đã hoàn thành hay chưa.
Để viết một tải liệu chính xác, bạn cần tuân thủ các điều kiện sau đây:
- _ Tài liệu phải có tính chính xác cao để đảm bảo SRS hiến thị các đặc điểm kỹ
thuật và chức năng của sản phẩm.
- _ Nội dung trong tài liệu phải rõ ràng để người đọc dễ hiểu và năm bắt được toàn bộ nội dung.
- _ Tài liệu phải hoàn chỉnh vì đây là nhu cầu thiết yêu của người mua.
- _ Các từ viết tắt hay định nghĩa trong tài liệu SRS phải được sử dụng nhất quán.
- _ Việc xếp hạng mức độ quan trọng sẽ giúp xác minh các yêu cầu.
- _ Tài liệu phải được kiểm chứng bằng nhiều phương pháp dé dam bảo nội dung chính xác.
- - Cho phép sửa đổi và yêu cầu phải được thực hiện một cách có hệ thống và cần xem xét tác động đến các yêu cầu khác.
- _ Tài liệu phải có tính truy nguyên đề hỗ trợ truy nguồn được nguồn gốc từ đầu.
2.2. Khảo sát người dùng
2.2.1 Phỏng vẫn (Nhà tuyễn dụng) cho ứng dụng di động tìm kiếm việc làm Dự án: Xây dựng ứng dụng di động tìm kiếm việc làm
Người được hỏi: Lê Văn Đại Người hỏi: Nguyễn Trịnh Xuân Quốc Ngày: 06/11/2023
- Logi công việc chính bạn đang kinh doanh la gi?
"Chúng tôi cung cấp các công việc đa dạng, bao gồm việc làm trong nhiều lĩnh vực, bao gồm công việc toàn thời gian, bán thời gian, việc làm tự do, và các ngành nghề khác nhau."
- Có các công ty hoặc đổi tác nào bạn đã hợp tác để đăng tuyển dụng công việc?
"Chúng tôi đã hợp tác với nhiều công ty và đối tác dé thu thập và hiển thị thông tin về việc làm. Điều nảy giúp cung cấp nhiều lựa chọn công việc đa dạng cho người dùng của chúng tôi."
-_ Có các tiêu chỉ cụ thể nào để lựa chọn công việc, nh vị trí, ngành nghề, mức lương không?
"Chúng tôi cho phép người dùng tìm kiếm công việc dựa trên vị trí, ngành nghề, mức lương, và từ khóa. Điều này giúp họ tìm thấy những công việc phù hợp với nhu cầu và mong muốn của họ."
-_ Có kế hoạch mở rộng danh mục công việc của bạn không?
"Chúng tôi đang xem xét việc mở rộng danh mục công việc dé đáp ứng nhu cầu đa dạng của người dùng. Chúng tôi sẽ tiếp tục hợp tác với các công ty và tô chức để cung cấp nhiều lựa chọn công việc hơn."
- Mục tiên chính của bạn khi có ứng dụng dĩ động tìm kiếm việc làm la gi?
"Mục tiêu chính của chúng tôi khi có ứng dụng di động tìm kiếm việc làm là tạo một nền tảng thuận tiện và hiệu quả cho người tìm việc và công ty tuyên dụng.
Chúng tôi muốn giúp người dùng tìm thấy công việc phù hợp nhanh chóng và giúp công ty tuyên dụng thu thập ứng viên có tiềm năng."
- Ban dé xem xét vé viéc tao mot trải nghiệm tìm kiếm việc làm thuận tiện và dễ dàng cho người dùng không?
"Chúng tôi đã tập trung vào việc tạo một trải nghiệm tìm kiếm việc làm thuận tiện và đễ dàng cho người dùng. Ứng dụng của chúng tôi cung cấp các tính năng tìm kiếm nâng cao, thông tin chỉ tiết về công việc, và quy trình nộp đơn thuận tiện để giúp người dùng tìm việc một cách hiệu quả."
- Ban dé xem xét về việc cung cấp thông tín chỉ tiết vẽ công việc, nhữt mô tả công việc, yên câu ứng viên, mức lương không?
"Chúng tôi cam kết cung cấp thông tin chỉ tiết về công việc, bao gồm mô tả công việc, yêu cầu ứng viên, mức lương và các chi tiết khác dé giúp người đùng có cái nhìn rõ ràng về công việc trước khi ứng tuyên."
- Ban co6 ké hoach tich hợp tính năng gửi hồ sơ ứng viên qua ứng dụng không?
"Chúng tôi đang xem xét tích hợp tính năng gửi hồ sơ ứng viên qua ứng dụng để giúp người dùng nộp đơn ứng tuyến một cách thuận tiện."
-_ Có kế hoạch tích hợp tính năng quản {ÿ thông báo không?
"Chúng tôi xem xét tích hợp tính năng quản lý thông báo để cho phép người dùng nhận thông báo về việc làm mới phù hợp với tiêu chí tìm kiếm của họ."
- _ Bạn đã xem xét về việc tích hợp tính năng chia sẻ công việc trên cúc mạng xã hội không?
"Chúng tôi đang xem xét tích hợp tính năng chia sẻ công việc trên các mạng xã hội dé giúp người dùng chia sẻ việc làm phù hợp với họ và tương tác với nhà tuyên dụng qua các nên tảng xã hội."
2.2.2 Phỏng vẫn (Người sứ dụng) cho ứng dụng di động tìm kiếm việc làm Dự án: Xây dựng ứng dụng di động tìm kiếm việc làm
Người được hỏi: Huynh Thúc Tú Người hỏi: Nguyễn Quốc An Ngày: 06/11/2023
-_ Bạn thường tìm kiếm việc làm trực tuyến hay thông qua các phương tiện khác, chẳng hạn như báo in? Và có lý do cụ thể nào khiến bạn chọn cách tìm kiếm việc làm như vậy?
"Tôi thường tìm kiếm việc làm trực tuyến. Lý đo chính là sự tiện lợi và khả năng
truy cập nhiều việc làm khác nhau từ nhiều nguồn khác nhau. Ngoài ra, tôi có thể nhanh chóng ứng tuyên và theo dõi tiến trình tuyến dụng trực tuyến."
- _ Bạn đã từng sử dụng ứng dụng di động tìm kiếm việc làm chưa? Nếu có, bạn cảm thay nhu thể nào về trải nghiệm đó?
"Có, tôi đã sử dụng ứng dụng di động tìm kiếm việc làm. Trải nghiệm rất thuận tiện vì tôi có thể tìm và ứng tuyển công việc mọi lúc mọi nơi thông qua điện thoại di động của mình. Tôi cảm thấy đó là một công cụ hữu ích để tìm việc."
-_ Nếm bạn sử dụng ứng dụng di động tìm kiếm việc làm, bạn quan tâm đến những yếu tô nào khi xem xét việc làm? (ví dụ: vị trí, ngành nghề, mưíc lương, danh gia cong ty)
"Tôi quan tâm đặc biệt đến vị trí công việc và ngành nghề phù hợp với sở thích và kỹ năng của tôi. Mức lương cũng quan trọng, và tôi thường xem xét đánh giá về công ty đề biết về môi trường làm việc. "
-_ Nếm có tỉnh năng, bạn muốn có khả năng gửi hồ sơ và đơn xin việc qua ứng dụng di động không?
"Có, tôi muốn có khả năng gửi hồ sơ và đơn xin việc qua ứng dụng di động. Điều này giúp tiết kiệm thời gian va giúp quá trình ứng tuyển đễ dàng hơn."
-_ Bạn quan tâm đến việc đánh giá và nhận xét từ người dùng khác về công ty hoặc vị trí công việc trước khi ứng tuyên không? Có ảnh hướng đến quyết định ứng tuyển của bạn không?
"Có, tôi quan tâm đến đánh giá và nhận xét từ người dùng khác về công ty và vị trí
công việc. Điều này giúp tôi có cái nhìn tốt hơn về công ty và đảm bảo rằng công việc phù hợp với mong muốn của tôi."
- Néu cé lwa chon, ban muon tim viéc lam thông qua ứng dụng di dong hay các phương tiện truyền thông như trang web máy tính? Và tại sao?
"Tôi thích tìm kiếm việc làm thông qua ứng dụng di động hơn vì nó tiện lợi và linh hoạt. Tôi có thể tìm việc mọi lúc mọi nơi và ứng tuyển ngay từ điện thoại di động của mình."
- Ban thing tim việc lam cho ban than minh hay ban có lựa chọn cho người khác, chẳng hạn như tim việc cho người thân hoặc bạn bè?
"Tôi tìm việc làm cho bản thân mình. Tuy nhiên, nếu tôi biết có cơ hội phù hợp với
người thân hoặc bạn bè, tôi cũng sẽ chia sẻ thông tin với họ."
- Néu ban dé sw dung wng dung di dong tim kiêm việc làm, bạn muôn nhận thông báo về việc làm mới dia trén tiéu chi tìm kiểm của bạn không?
"Có, tôi muôn nhận thông báo về việc làm mới dựa trên tiêu chí tìm kiêm của mình. Điều này giúp tôi luôn cập nhật với các cơ hội việc làm phù hợp."
- Néu wng dung cung cap tích hợp xã hội, bạn muôn có khả năng chúa sẻ việc làm hoặc tưrorig tác với các công ty qua mạng xã hội không?
"Có, tôi muôn có khả năng chia sẻ việc làm hoặc tương tác với các công ty qua mạng xã hội. Điều này có thể giúp tôi tạo môi quan hệ với công ty và mở rộng
khả năng tìm kiếm việc làm."
- Néuce tinh nang, ban muon co kha nang lwu trữ và quản Ùÿ các việc làm mà bạn đã trợ tHyên hoặc quan tâm không?
"Có, tôi muôn có khả năng lưu trữ và quản ly các việc làm mà tôi đã ứng tuyên hoặc quan tâm. Điều này giúp tôi dễ dàng theo dõi tiến trình ứng tuyển và không bỏ lỡ cơ hội."
- Nêu bạn tìm việc làm trong tương lai, ban cé dw định sử dụng ứng dụng di động tìm kiểm việc làm không? Và tại sao?
"Có, tôi dự định sử dụng ứng dụng di động tìm kiêm việc làm trong tương lai vì nó giúp tiệt kiệm thời gian và cung cap nhiêu cơ hội việc làm khác nhau. Do là một công cụ hữu ích cho việc tìm kiêm việc làm. "
2.3. Thu thập yêu cầu
2.3.1. Yên câu người dùng
- Yêu cẩu tìm kiểm công việc: Người dùng mong muốn có khả năng tìm kiếm việc làm dựa trên vị trí, ngành nghê, mức lương và từ khóa. Đề hiệu rõ yêu câu này, chúng ta có thê sử dụng kỹ thuật phỏng vẫn hoặc phi chép phiên đề thiết lập danh sách các chức năng cân thiết cho tính năng tìm kiêm.
- _ Yêu cẩu hiển thị kết quả tìm kiếm: Người dùng mong muốn thấy danh sách các công việc phù hợp với tiêu chí tìm kiêm của họ. Chúng ta có thê sử dụng kỹ thuật tạo mẫu hoặc thiết kế giao diện đề xác định cách hiện thị kết quả tìm kiêm, bao pgôm các thông tin như tiêu đề công việc, địa điểm làm việc, mức lương và liên kết đến trang chi tiết công việc.
Yêu cẩu giao điện người dùng (UJ: Người dùng muốn một giao điện người dùng thân thiện, dễ sử dụng và hấp dẫn với hình ảnh thực phẩm hấp dẫn. Sử dung ky thuat tao mau (prototyping), chung ta có thê tạo ra các bản thử nghiệm giao diện để thu được phản hồi từ người dùng và điều chỉnh giao diện theo ý kiến của họ.
Yêu câu tạo hồ sơ người dùng: Người dùng muốn có tài khoản người dùng để lưu trữ thông tin cá nhân, theo dõi công việc đã ứng tuyến và nhận thông báo về việc làm mới. Sử dụng kỹ thuật thảo luận với người dùng để xác định các thông tin cần thiết cho hồ sơ người dùng và cách quản lý chúng.
Yêu cầu đăng tải công việc mới: Các công ty và nhà tuyên dụng muốn có khả năng đăng tải công việc mới lên trang web. Sử dụng kỹ thuật phỏng vấn hoặc tạo mẫu để xác định cách họ muốn đăng tải thông tin công việc, bao gồm mô tả công việc, yêu cầu ứng viên, hạn nộp hồ sơ và liên hệ.
Yêu cầu gửi hỗ sơ ứng viên: Người dùng muôn có khả năng gửi hồ sơ và đơn xin việc qua trang web. Sử dụng kỹ thuật thử nghiệm hiệu suất để đảm bảo quá trình gửi hồ sơ diễn ra nhanh chóng và hiệu quả.
Yêu cẩu quán lý thông báo: Người dùng muôn nhận thông báo về các công việc mới phù hợp với tiêu chí tìm kiếm của họ. Sử dụng kỹ thuật thảo luận và thiết
kế hướng dẫn để xác định cách người dùng có thể quản lý thông báo vả tùy chỉnh cài đặt.
Yêu câu tương tác xã hội: Người dùng có thê muốn chia sẻ công việc trên các mạng xã hội hoặc tương tác với nhà tuyển dụng qua các tích hợp mạng xã hội.
Sử dụng kỹ thuật thảo luận để xác định cách tích hợp các tùy chọn xã hội và tạo tính năng tương tác.
2.3.2. Yêu cầu kỹ thuật
Ngôn ngữ lập trình: Xác định ngôn ngữ lập trình sẽ được sử dụng để phát triển trang web. Các lựa chọn phổ biến bao gồm JavaScript, Python, Ruby, Java, PHP và .NET, tùy thuộc vào sự ưu tiên và kỹ năng phát triển của nhóm.
Cơ sở dữ liệu: Quyết định về hệ thống quản trị cơ sở đữ liệu (DBMS) mà trang
web sẽ sử dụng để lưu trữ thông tin về việc làm, hồ sơ người dùng và đữ liệu khac. Cac DBMS phé bién bao g6m MySQL, PostgreSQL, MongoDB va Microsoft SQL Server.
Nền tảng phát triển: Xác định nền tảng phát triển va framework ma ban sé sir dụng để xây dựng trang web. Ví dụ, bạn có thể sử dụng nền tảng phát triển web nhu Ruby on Rails, Django hodc Laravel, hodc su dung cac framework JavaScript như Angular hoặc React cho phần giao diện người dùng.
Hosting và môi trường triển khai: Quyết định nơi bạn sẽ triển khai trang web.
Các dịch vụ điện toán đám mây như AWS, Azure hoặc Goople Cloud có thé cung cấp môi trường triển khai đáng tin cậy cho trang web tìm kiếm việc làm.
lích hợp dịch vụ bên ngoài: Xem xét cách tích hợp với các dịch vụ bên ngoài, chăng hạn như các trang web tuyến dụng lớn hoặc dịch vụ thanh toán trực tuyến. Điều nảy có thể đòi hỏi việc sử dụng API hoặc giao diện tích hợp.
Báo mật và quản lý phiên: Đảm bảo rằng trang web có các biện pháp bảo mật như mã hóa dữ liệu, xác thực người dùng và quản lý phiên đáng tin cậy để bảo vệ thông tin cá nhân và thông tin quan trọng.
Khả năng mở rộng: Xác định cách hệ thông có thể mở rộng trong tương lai để đối phó với tải nhiều và thêm tính năng mới. Sử dụng kiến thức về kiến trúc phần mềm để thiết kế hệ thống có khả năng mở rộng dễ dàng.
Hiệu suất và tối ưu hóa: Đảm bảo rằng trang web hoạt động mượt mà và có thời gian phản hỗồi nhanh chóng, đặc biệt khi xử lý hàng ngàn việc làm và tương tác người dùng.