Tác nhân/ Chuỗi đáp ứng: Người sử dụng phần mềm chọn chức năng tìm số phức liên hợp, sau khi nhập xong số phức và đồng ý người dùng sẽ nhận được kết quả trên màn hình.. Tác nhân/ Chuỗi
Trang 1KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
Nguyễn Tấn Phát B1400715 Nguyễn Đình Trọng B1400736 Nguyễn Hữu Úy B1400739
Trang 2Cần Thơ, 11/2015
Trang 3Lời mở đầu
Thời buổi công nghệ thông tin phát triển mạnh mẽ như hiện nay, nhu cầu học tập, nghiên cứu, giải trí,… sử dụng máy tính ngày càng nhiều Các phần mềm theo đó cũng được sản xuất ra một cách đa dạng, trong nhiều lĩnh vực để phục vụ những nhu cầu ấy Tuy nhiên, để làm ra được sản phần mềm có chất lượng và giá thành tốt thì việc quan tâm chú trọng đến qui trình phát triển phần mềm là rất cần thiết đối với các công ty phần mềm và người làm phần mềm
Trong khuôn khổ của môn học Nhập môn công nghệ phần mềm, chúng em lựa chọn đề tài
“Phần mềm giải số phức” với mục đích áp dụng các kiến thức đã học vào phát triển một dự án thực tế Qua đó hiểu sâu hơn các vấn đề đã học, làm nền tảng để học những môn học chuyên sâu hơn
Lần đầu tiên phát triển một phần mềm thực tế và môn học mới lạ, do kiến thức hạn hẹp cùng với thời gian có hạn nên nhóm chúng em gặp nhiều sai sót, chưa chi tiết hết các khía cạnh của phần mềm
Qua đây nhóm chúng em xin chân thành cảm ơn cô đã truyền đạt những kiến thức và sự
hướng dẫn tận tình để chúng em hoàn thành tốt tài liệu này Rất mong được sự chấp nhận và sự chỉ bảo từ cô, đó sẽ là những kinh nghiệm quí báu cho chúng em trong quá trình học tập sau này
Nhóm 01
Trang 4Mục lục
Lời mở đầu i
Mục lục ii
PHẦN I KẾ HOẠCH PHÁT TRIỂN PHẦN MỀM 1
PHẦN II ĐẶC TẢ YÊU CẦU PHẦN MỀM 11
Phụ lục – TBD 19
PHẦN III THIẾT KẾ PHẦN MỀM 20
PHẦN IV CÁC TRƯỜNG HỢP KIỂM THỬ PHẦN MỀM 43
PHẦN V KẾT LUẬN 65
Trang 5PHẦN I KẾ HOẠCH PHÁT TRIỂN PHẦN MỀM
Thiết kế hệ thống: Nguyễn Hữu Úy.
Thiết kế dữ liệu: Nguyễn Tấn Phát.
Thiết kế giao diện: Nguyễn Đình Trọng, Nguyễn Hữu Úy.
Thiết kế thuật toán: Nguyễn Tấn Phát, Nguyễn Đình Trọng.
Quản lý rủi ro: Nguyễn Tấn Phát, Nguyễn Đình Trọng, Nguyễn Hữu Úy.
Quản lý cấu hình: Nguyễn Tấn Phát, Nguyễn Đình Trọng, Nguyễn Hữu Úy.
Quản lý chất lượng: Nguyễn Tấn Phát, Nguyễn Đình Trọng, Nguyễn Hữu Úy.
Trang 62 Nguyễn Đình Trọng Nguyễn Trọng trongb1400736 0163988304
7
b) Giao tiếp với người sử dụng
1 Lê Thị Kim Yến 13/08/2015 Nhà học D1
2 Nguyễn Trung Hiếu 01/09/2015 Trung tâm học liệu
Chịu trách nhiệm
Đầu vào công việc
Đầu ra công việc
1 04/09/2015 –
04/09/2015 Lập kế hoạch Cả
nhóm
Trưởng nhóm
Tài liệu mô tả
sơ bộ
Kế hoạch phiên bản 1
2 04/09/2015 –
18/09/2015
Hoàn thiện kế hoạch, lập tài liệu đặc tả
Cả nhóm
Trưởng nhóm, nhóm phân tích
Kế hoạch phiên bản 1, bản phân tích yêu cầu
Kế hoạch phiên bản 2, tài liệu đặc tả phiên bản 1
Trang 73 18/09/2015 – 09/10/2015
Hoàn thiện tài liệu đặc tả, lập tài liệu thiết kế
Cả nhóm
Nhóm phân tích, thiết kế
Tài liệu đặc tả phiên bản 1
Tài liệu đặc tả phiên bản 2, các tài liệu thiết kế phiên bản 1
4 09/10/2015 –
23/10/2015
Hoàn thiện các tài liệu thiết kế, lập tài liệu kiểm thử
Cả nhóm
Nhóm thiết
kế, kiểm thử
Các tài liệu thiết kế phiên bản 1
Các tài liệu thiết kế phiên bản 2, tài liệu kiểm thử phiên bản 1
5 23/10/2015 –
06/11/2015
Hoàn thiện tài liệu kiểm thử, lập trình theo tài liệu thiết kế
Cả nhóm
Nhóm kiểm thử
và lập trình
Các tài liệu thiết kế, tài liệu kiểm thử phiên bản 1
Tài liệu kiểm thử phiên bản
2, mã nguồn trung gian
6 06/11/2015 –
17/11/2015
Hoàn thiện mã nguồnập tài liệu báo cáo phần mềm, tổng hợp tài liệu vào đĩa CD
Cả nhóm Cả nhóm.
Mã nguồn trung gian;
các tài liệu: kế hoạch, đặc tả, thiết kế, kiểm thử
Mã nguồn hoàn chỉnh, tài liệu báo cáo, đĩa CD
2 Quản lý chất lượng phần mềm
2.1 Tổ chức nhóm quản lý chất lượng
Tổng số nhân sự: 3.
Trưởng nhóm: Nguyễn Tấn Phát.
Người lập kế hoạch quản lí chất lượng: Nguyễn Hữu Úy.
Người đảm bảo chất lượng: Nguyễn Đình Trọng.
Người kiểm tra chất lượng: Nguyễn Tấn Phát.
2.2 Đề xuất các chuẩn, thủ tục, qui định về chất lượng
2.2.1 Chuẩn lập trình
• Sử dụng phần mềm Dev C++
• Đặt tên tập tin ngắn gọn, độ dài không quá 12 kí tự
• Các dòng lệnh cùng cấp phải đặt thẳng hàng (canh lề trái), các dòng lệnh cấp con phải thụt vào một Tab so với dòng lệnh cấp cha
• Giữa các phép toán và toán hạng nên có một khoảng trắng
Trang 8• Sau dấu phẩy phải có một khoảng trắng.
• Chú thích sử dụng /*…*/ cho một đoạn và // cho một dòng
• Tất cả các hàm tự tạo phải đặt tên mô tả được chức năng của hàm, đồng thời chú thích:/*
Chuc nang:
Ket qua tra ve: (hàm void ghi không)
*/
• Khai báo biến:
o Khai báo mỗi biến trên một dòng
o Sau tên biến nên chú thích công dụng của biến
o Đặt tên ngắn gọn dễ nhớ
• Mỗi câu lệnh đặt trên một dòng riêng
• Giữa các biến cục bộ và câu lệnh đầu tiên nên có một dòng trống
2.2.2 Qui ước khi viết tài liệu
• Tệp tin: định dạng doc và pdf
• Soạn thảo văn bản trên Microsoft Word
• Tạo bản in pdf sau khi hoàn tất file doc
• Trang đầu tiên là trang giới thiệu
• Các cập nhật, thay đổi được ghi vào bảng theo dõi phiên bản
• Font áp dụng cho tài liệu: Times New Roman, cỡ chữ chung 12pt, màu chữ đen
• Cấu trúc tài liệu:
o Dạng Heading đánh số 1, 1.1, … canh thẳng lề trái
o Các dòng cấp con thì lùi vào một khoảng hợp lí đảm bảo rõ ràng, dễ đọc
• Tiêu đề cấp 1 có cỡ chữ 16, tiêu đề cấp 2 có cỡ chữ 14, tiêu đề cấp 3 có cỡ chữ 13, các
điều đề cấp nhỏ hơn đều có cỡ chữ 12; các tiêu đề được in đậm và được tô màu xanh dương đậm (Dark blue)
• Định dạng trang:
o Trình bày dạng in: Miror margins
o Lề trái trang lẻ và lề phải trang chẵn: 3 cm, lề phải trang lẻ và lề trái trang chẵn: 2cm
o Lề trên và lề dưới: 2.54cm (1 inch)
• Tiêu đề đầu trang và chân trang phụ thuộc vào trang chẵn và trang lẻ:
o Trang lẻ: tiêu đề trên đánh số trang bên trái, trang chẵn ngược lại
o Header from top và footer from bottom đều là 0.5 inch
• Các phần nhấn mạnh: tô màu, in đậm, chữ nghiêng
2.2.3 Qui ước khi trao đổi tài liệu
• Tên tài liệu được viết theo dạng:
Trang 9SP_<Định danh>_V<số phiên bản>
Ví dụ: SP_DTYC_V1.0 cho biết đây là tài liệu đặc tả, phiên bản 1.0
Các định danh của tài liệu:
+ DTYC – Tài liệu đặc tả
+ TK – Tài liệu thiết kế
+ KT – Tài liệu kiểm thử
+ KH – Tài liệu kế hoạch
• Trao đổi qua email của đại học Cần Thơ cấp, nội dung công việc được ghi trên tiêu đề mail
• Thao tác với các tài liệu thông qua Google Drive
2.2.4 Qui ước khi thiết kế giao diện
Đối tượng sử dụng phần mềm chủ yếu là học sinh nên có hiểu biết sử dụng máy tính, cần chú ý:
• Các form, nút, text box được tổ chức tương tự như các phần mềm quen thuộc
• Màu sắc chủ đạo là xanh dương, tạo cảm giác mát mẻ
• Kiểm thử trong lúc viết source code nhằm hạn chế khả năng phát sinh lỗi
• Luôn chuẩn bị tâm lí với việc xuất hiện lỗi cho dù quá trình kiểm thử kết thúc
• Không tránh né các lỗi mà phải suy nghĩ cách sửa chữa các lỗi đấy để đảm bảo đáp ứng yêu cầu thiết kế
2.3 Kiểm soát chất lượng
2.3.1 Tài liệu đặc tả yêu cầu
Yêu cầu của tài liệu: Tài liệu đặc tả yêu cầu không phải là tài liệu thiết kế hệ thống Nó chỉ
thiết lập những gì hệ thống phải làm, chứ không phải mô tả rõ làm như thế nào
Nội dung của tài liệu theo chuẩn IEEE:
Phần giới thiệu: mục đích, phạm vi, các định nghĩa, tổng quan về tài liệu
Phần mô tả chung: giới thiệu chung, các chức năng, đặc điểm người dùng, các ràng buộc.Phần đặc tả yêu cầu: bao gồm các yêu cầu chức năng và phi chức năng
Các phần khác
Trong phần thiết kế, tài liệu này được sử dụng lại nhiều, chủ yếu là các đặc tả chức năng và phi chức năng.
Trang 102.3.2 Tài liệu thiết kế
Yêu cầu của tài liệu: tài liệu này phải thiết kế chi tiết cách thức xử lí của những chức năng sao
cho người lập trình có thể hiểu và viết code
Nội dung của tài liệu: các thiết kế kiến trúc, dữ liệu, giao diện và thuật toán.
Trong phần lập trình và kiểm thử, tài liệu này được sử dụng nhiều, chủ yếu là phần thiết kế giao diện và thuật toán.
2.4 Công cụ, kỹ thuật và phương pháp đảm bảo chất lượng
2.4.1 Các công cụ
Microsoft Word: tạo ra các tài liệu, sử dụng suốt quá trình làm phần mềm.
Microsoft Window: môi trường vận hành các phần mềm, sử dụng trong suốt quá trình.
Hạn chế: các phần mềm trả phí.
EDGE Diagrammer: tạo ra các sơ đồ thuật toán, sử dụng trong quá trình thiết kế
Hạn chế: phần mềm trả phí, không viết được tiếng Việt.
Dev C++: lưu trữ mã nguồn, tạo ra chương trình thực thi, sử dụng trong quá trình lập trình Google Drive: lưu trữ dữ liệu trực tuyến của dự án, sử dụng suốt quá trình làm phần mềm
Hạn chế: cần Internet.
2.4.2 Các kỹ thuật đảm bảo chất lượng
Kỹ thuật kiểm tra lại (xem lại):
• Kiểm tra từng chi tiết có thể phát sinh lỗi trong quá trình làm phần mềm, đó là các tài liệu đặc tả, phân tích, lập trình, …
• Hạn chế: mất nhiều thời gian
Kỹ thuật thống kê qui trình làm việc:
• Thống kê các mốc thời gian trong quá trình phát triển phần mềm, giúp xác định những khu vực có vấn đề và những điểm thiếu kiểm soát nhằm đưa ra các biện pháp khắc phục
• Hạn chế: khó xác định đúng vấn đề
3 Quản lý rủi ro
3.1 Tổ chức nhóm quản lý rủi ro
Quản lý rủi ro không chỉ là một cá nhân có thể đảm nhiệm mà được thực hiện bởi một nhóm
và có sự liên kết giữa các công đoạn.
Sơ đồ quá trình quản lí rủi ro
Trang 11Trong đó
Nhận diện, kiểm soát: Nguyễn Tấn Phát.
Giám sát: Nguyễn Hữu Úy.
Phân tích: Nguyễn Đình Trọng.
3.2 Cách xếp mức độ rủi ro
1 Mức độ tác động
Trầm trọng: dự án thất bại.
Quan trọng: có thể không đạt được mục tiêu.
Vừa phải: có thể không đạt được vài mục tiêu.
Không đáng kể: không ảnh hưởng nhiều.
2 Thời gian xuất hiện
Ngay lập tức: ngay khi thực hiện dự án.
Rất gần: sẽ xuất hiện rất gần trong khâu phân tích.
Gần: trong tương lai gần sẽ xảy ra.
Lâu: thời gian còn dài hoặc không thể xác định.
3 Các chiến lượt đối phó rủi ro:
Giảm nhẹ rủi ro: giảm sự ảnh hưởng, giảm khả năng gây ra.
Tránh né: chọn hướng đi khác, thay đổi mục tiêu.
Chấp nhận: chờ và xem, thu thập thông tin, lên kế hoạch khắc phục.
Chuyển giao: chia sẻ rủi ro, báo cáo lãnh đạo.
3.3 Bảng phân tích rủi ro
STT Yếu tố Mức độ Chiến lượt làm
giảm rủi ro Hướng giải quyết
Liên quan tới khách hàng
1 Không cung
cấp yêu cầu
Tác động vừa phải, thời gian rất gần Giảm nhẹ rủi ro.
Lựa chọn những người nhiệt tình, có chuyên môn, có thái độ tôn trọng khách hàng
Liên quan tới phạm vi và yêu cầu
Trang 12Thiết lập trang web nhóm, thường xuyên họp nhóm.
Không đi sâu vào những chi tiết không cần thiết
4 Thiếu người
phát triển
Tác động vừa phải, thời gian gần Giảm nhẹ rủi ro.
Chọn người tốt nhất, phát triển nhóm xoay vòng
Liên quan đến sự thực hiện
5 Yêu cầu quá
cao
Tác động vừa phải, thời gian gần Tránh né.
Lọc bớt yêu cầu, phân tích lợi ích
Liên quan tới môi trường
4 Quản lý cấu hình
4.1 Tổ chức nhóm quản lý cấu hình
Tổng số nhân sự: 3 người.
Trưởng nhóm: Nguyễn Tấn Phát.
Thủ thư: Nguyễn Hữu Úy.
Người quản lí cấu hình: Nguyễn Tấn Phát.
o Tác giả: Nguyễn Hữu Úy
o Kiểu file: doc
o Ngôn ngữ: Tiếng Việt
o Hoàn tất phiên bản đầu tiên: 18/09/2015
o Người chịu trách nhiệm: Nguyễn Hữu Úy
4.2.2 Tài liệu thiết kế
• Tên: Tài liệu thiết kế
• Định danh: TK
• Cấu trúc thư mục: Drive\Project\Tailieu\Thietke\SP_TK_Vx.x.doc
• Thuộc tính:
Trang 13o Tác giả: Nguyễn Tấn Phát, Nguyễn Đình Trọng, Nguyễn Hữu Úy.
o Kiểu file: doc
o Hoàn tất phiên bản đầu tiên: 09/10/2015
o Người chịu trách nhiệm: Nguyễn Tấn Phát, Nguyễn Đình Trọng, Nguyễn Hữu Úy
4.2.3 Tài liệu kiểm thử
• Tên: Tài liệu kiểm thử
• Định danh: KT
• Cấu trúc thư mục: Drive\Project\Tailieu\Kiemthu\SP_KT_Vx.x.doc
• Thuộc tính:
o Tác giả: Nguyễn Tấn Phát
o Kiểu file: doc
o Hoàn tất phiên bản đầu tiên: 23/10/2015
o Người chịu trách nhiệm: Nguyễn Tấn Phát
o Tác giả: Nguyễn Tấn Phát, Nguyễn Đình Trọng, Nguyễn Hữu Úy
o Kiểu file: project folder
o Ngôn ngữ: C
o Hoàn tất phiên bản đầu tiên: 06/11/2015
o Người chịu trách nhiệm: Nguyễn Tấn Phát, Nguyễn Đình Trọng, Nguyễn Hữu Úy
• Kiểu file: doc
• Người sử dụng: Nguyễn Tấn Phát, Nguyễn Đình Trọng, Nguyễn Hữu Úy
Microsoft PowerPoint
• Tên: Microsoft PowerPoint
• Định danh: PP
• Kiểu file: các file hình ảnh, pptx
• Người sử dụng: Nguyễn Tấn Phát, Nguyễn Đình Trọng, Nguyễn Hữu Úy
Dev C++
Trang 14• Người sử dụng: Nguyễn Tấn Phát, Nguyễn Đình Trọng, Nguyễn Hữu Úy.
4.3 Quản lý phát hành và phân phối
Phát hành hệ thống: chương trình và các tài nguyên có liên quan.
Dạng phát hành: đĩa CD, phát hành trực tuyến.
4.4 Tài nguyên quản lý cấu hình
Môi trường, phương tiện, cơ sở hạ tầng: làm việc trên lớp, tại nhà; sử dụng máy tính, kết nối
Internet
Công cụ phần mềm: Microsoft windows, Microsoft Office, Google Drive.
Nhân sự: Nhóm 01: Nguyễn Tấn Phát, Nguyễn Đình Trọng, Nguyễn Hữu Úy.
Kỹ năng và huấn luyện: phải sử dụng thành thạo các công cụ phần mềm, rèn luyện cách thức
tổ chức quản lí
Trang 15Đưa ra cái nhìn rõ ràng về các chức năng phần mềm sẽ cung cấp.
Tài liệu này được dùng làm đầu vào cho các quá trình thiết kế, lập trình, kiểm thử của việc xây dựng phần mềm
1.4 Tài liệu tham khảo
[1] Phan Phương Lan Bài giảng Công nghệ phần mềm Đại học Cần Thơ.
[2] Phan Phương Lan Tài liệu đặc tả mẫu và Ví dụ Đại học Cần Thơ.
[3] Đặng Việt Hùng Dạng lượng giác của số phức Moon.vn, 2014
[4] http://lrc.tailieu.vn
1.5 Bố cục
Nội dung được chia làm 7 phần:
Giới thiệu – giới thiệu tổng quan về tài liệu.
Mô tả tổng quan – mô tả tổng quan hệ thống cần xây dựng.
Yêu cầu giao tiếp bên ngoài – mô tả yếu tố ảnh hưởng đến việc phát triển phần mềm.
Các tính năng của hệ thống – khái quát các chức năng.
Các yêu cầu phi chức năng – liên quan đến tính thống nhất của hệ thống.
Các yêu cầu khác – liên quan tới luật pháp và tái sử dụng phần mềm.
Phụ lục – TBD.
Trang 16dễ sử dụng hơn và hoàn toàn miễn phí Hơn thế phần mềm mang tính linh động hơn máy tính cầm tay rất nhiều.
• Giải phương trình bậc 2 (trên tập số phức)
• Dạng lượng giác của số phức
2.3 Đặc điểm người sử dụng
Nhóm những người sử dụng: học sinh 12, sinh viên, giáo viên và giảng viên.
Nhóm học sinh: học sinh đang ôn thi tốt nghiệp THPT đang học chủ đề số phức.
Nhóm sinh viên: sinh viên khối kỹ thuật, toán ứng dụng, sư phạm toán đang học kiến thức cơ
bản về số phức hoặc môn học có sử dụng số phức
Nhóm giáo viên, giảng viên: sử dụng kết quả dùng trong giảng dạy.
* Ở đây nhóm sử dụng quan trọng nhất là nhóm học sinh.
Trang 17• Tối thiểu bộ nhớ 128MB (RAM) và 500MB (ROM).
• Độ phân giải màn hình 800x600 hoặc cao hơn
2.5 Các ràng buộc về thực thi và thiết kế
Ngôn ngữ lập trình: C.
Các ràng buộc về phần cứng:
• RAM: tối thiểu 128MB
• ROM: tối thiểu 500MB
Các ràng buộc về thời gian: Thời gian thực thi một câu lệnh: tối đa 1s.
3 Các yêu cầu giao tiếp bên ngoài
3.1 Giao diện người sử dụng
Giao tiếp với sản phẩm giao diện DOS trên màn hình máy tính.
Đặc điểm giao diện người sử dụng:
• Thanh menu trên cùng
• Danh sách các chức năng cùng lệnh gọi chức năng đó
• Dòng đợi gọi câu lệnh nằm phía dưới cùng
• Khoảng cách dòng hợp lí đảm bảo dễ nhìn
3.2 Giao tiếp phần cứng
Yêu cầu cấu hình phần cứng:
• CPU: Pentium 233-MHz hoặc cao hơn
• RAM: tối thiểu 128MB
• ROM: tối thiểu 500MB
• Độ phân giải màn hình: 800x600 hoặc cao hơn
Các thiết bị phần cứng nhập/xuất dữ liệu:
Trang 184 Các tính năng hệ thống
4.1 Số phức liên hợp
Mô tả và mức ưu tiên: chức năng được sử dụng để tìm số phức liên hợp của một số phức được
nhập vào từ bàn phím Chức năng có mức ưu tiên thấp
Tác nhân/ Chuỗi đáp ứng: Người sử dụng phần mềm chọn chức năng tìm số phức liên hợp,
sau khi nhập xong số phức và đồng ý người dùng sẽ nhận được kết quả trên màn hình
Mã yêu cầu CAL01
Tên chức năng Số phức liên hợp
Đối tượng sử dụng Học sinh, sinh viên, giáo viên, giảng viên
Tiền điều kiện Không
Cách xử lý
Bước 1: Sau khi chọn chức năng, người dùng tiến hành nhập số phức theo yêu cầu gồm 2 mục là phần thực và phần ảo
Bước 2: Tiến hành xử lí số phức, nếu không có sự cố, chương trình
sẽ hiển thị kết quả lên màn hình Nếu có sự cố như phần thực hoặc phần ảo không hợp lệ, chương trình sẽ báo lỗi chi tiết và tiếp tục bước 1 cho đến khi người dùng nhập đúng
Kết quả Kết quả của phép toán hoặc báo lỗi
Ghi chú
4.2 Tính mô đun
Mô tả và mức ưu tiên: chức năng được sử dụng để tính mô đun của một số phức được nhập
vào Chức năng có mức ưu tiên thấp
Tác nhân/ Chuỗi đáp ứng: Người sử dụng phần mềm chọn chức năng tính mô đun, sau khi
nhập xong số phức và đồng ý người dùng sẽ nhận được kết quả trên màn hình
Mã yêu cầu CAL02
Tên chức năng Tính mô đun
Đối tượng sử dụng Học sinh, sinh viên, giáo viên, giảng viên
Tiền điều kiện Không
Cách xử lý
Bước 1: Sau khi chọn chức năng, người dùng tiến hành nhập số phức theo yêu cầu gồm 2 mục là phần thực và phần ảo
Bước 2: Tiến hành xử lí số phức, nếu không có sự cố, chương trình
sẽ hiển thị kết quả lên màn hình Nếu có sự cố như phần thực hoặc phần ảo không hợp lệ, chương trình sẽ báo lỗi chi tiết và tiếp tục bước 1 cho đến khi người dùng nhập đúng
Kết quả Kết quả của phép toán hoặc báo lỗi
Ghi chú
4.3 Cộng hai số phức
Mô tả và mức ưu tiên: chức năng được sử dụng để cộng hai số phức được nhập từ bàn phím
Chức năng có mức ưu tiên thấp
Tác nhân/ Chuỗi đáp ứng: Người sử dụng phần mềm chọn chức năng cộng hai số phức, sau
khi nhập xong hai số phức và đồng ý người dùng sẽ nhận được kết quả trên màn hình
Trang 19Mã yêu cầu CAL03
Tên chức năng Cộng hai số phức
Đối tượng sử dụng Học sinh, sinh viên, giáo viên, giảng viên
Tiền điều kiện Không
Kết quả Hiển thị kết quả của phép toán hoặc báo lỗi
Ghi chú
4.4 Trừ hai số phức
Mô tả và mức ưu tiên: chức năng được sử dụng để trừ hai số phức được nhập từ bàn phím
Chức năng có mức ưu tiên thấp
Tác nhân/ Chuỗi đáp ứng: Người sử dụng phần mềm chọn chức năng trừ hai số phức, sau khi
nhập xong hai số phức và đồng ý người dùng sẽ nhận được kết quả trên màn hình
Mã yêu cầu CAL04
Tên chức năng Trừ hai số phức
Đối tượng sử dụng Học sinh, sinh viên, giáo viên, giảng viên
Tiền điều kiện Không
Kết quả Hiển thị kết quả của phép toán hoặc báo lỗi
Ghi chú
4.5 Nhân hai số phức
Mô tả và mức ưu tiên: chức năng được sử dụng để nhân hai số phức được nhập từ bàn phím
Chức năng có mức ưu tiên trung bình
Tác nhân/ Chuỗi đáp ứng: Người sử dụng phần mềm chọn chức năng nhân hai số phức, sau
khi nhập xong hai số phức và đồng ý người dùng sẽ nhận được kết quả trên màn hình
Mã yêu cầu CAL05
Tên chức năng Nhân hai số phức
Đối tượng sử dụng Học sinh, sinh viên, giáo viên, giảng viên
Tiền điều kiện Không
Cách xử lý Bước 1: Sau khi chọn chức năng, người dùng tiến hành nhập hai
số phức, mỗi số phức cần nhập 2 mục là phần thực và phần ảo
Trang 20Bước 2: Tiến hành xử lí hai số phức, nếu không có sự cố, chương trình sẽ hiển thị kết quả lên màn hình Nếu có sự cố như phần thực hoặc phần ảo không hợp lệ, chương trình sẽ báo lỗi chi tiết và tiếp tục bước 1 cho đến khi người dùng nhập đúng.
Kết quả Hiển thị kết quả của phép toán hoặc báo lỗi
Ghi chú
4.6 Chia hai số phức
Mô tả và mức ưu tiên: chức năng được sử dụng để chia hai số phức được nhập vào từ bàn
phím Chức năng có mức ưu tiên trung bình
Tác nhân/ Chuỗi đáp ứng: Người sử dụng phần mềm chọn chức năng chia hai số phức, sau khi
nhập xong hai số phức và đồng ý người dùng sẽ nhận được kết quả trên màn hình
Mã yêu cầu CAL06
Tên chức năng Chia hai số phức
Đối tượng sử dụng Học sinh, sinh viên, giáo viên, giảng viên
Tiền điều kiện Không
Kết quả Hiển thị kết quả của phép toán hoặc báo lỗi
Ghi chú Không chấp nhận số phức dưới mẫu bằng 0
4.7 Tính lũy thừa
Mô tả và mức ưu tiên: chức năng được sử dụng để tính lũy thừa bậc n của một số phức được
nhập vào từ bàn phím Chức năng có mức ưu tiên trung bình
Tác nhân/ Chuỗi đáp ứng: Người sử dụng phần mềm chọn chức tính lũy thừa, sau khi nhập
xong số phức, số mũ và đồng ý người dùng sẽ nhận được kết quả trên màn hình
Mã yêu cầu CAL07
Tên chức năng Tính lũy thừa
Đối tượng sử dụng Học sinh, sinh viên, giáo viên, giảng viên
Tiền điều kiện Không
Cách xử lý
Bước 1: Sau khi chọn chức năng, người dùng tiến hành nhập số phức gồm hai mục là phần thực, phần ảo; và số mũ cần lấy lũy thừa
Bước 2: Tiến hành xử lí số liệu, nếu không có sự cố, chương trình
sẽ hiển thị kết quả lên màn hình Nếu có sự cố như số mũ, phần thực, phần ảo không hợp lệ, chương trình sẽ báo lỗi chi tiết và tiếp tục bước 1 cho đến khi người dùng nhập đúng
Kết quả Hiển thị số phức đã lấy lũy thừa hoặc báo lỗi
Ghi chú Chỉ chấp nhận số mũ là số nguyên Không được để số mũ quá lớn
Trang 21dẫn đến tràn màn hình và không hiển thị kết quả.
4.8 Tính căn bậc hai của một số phức
Mô tả và mức ưu tiên: chức năng được sử dụng để tính căn bậc hai của một số phức được nhập
vào từ bàn phím Chức năng có mức ưu tiên trung bình
Tác nhân/ Chuỗi đáp ứng: Người sử dụng phần mềm chọn chức năng tính căn bậc hai, sau khi
nhập xong số phức và đồng ý người dùng sẽ nhận được kết quả trên màn hình
Mã yêu cầu CAL08
Tên chức năng Tính căn bậc hai
Đối tượng sử dụng Học sinh, sinh viên, giáo viên, giảng viên
Tiền điều kiện Không
Cách xử lý
Bước 1: Sau khi chọn chức năng, người dùng tiến hành nhập số phức gồm hai mục là phần thực và phần ảo
Bước 2: Tiến hành xử lí số phức, nếu không có sự cố, chương trình
sẽ hiển thị kết quả lên màn hình Nếu có sự cố như phần thực hoặc phần ảo không hợp lệ thì chương trình sẽ báo lỗi chi tiết và tiếp tục bước 1 cho đến khi người dùng nhập đúng
Kết quả Hiển thị kết quả phép toán hoặc báo lỗi
Ghi chú
4.9 Giải phương trình bậc hai (trên tập số phức)
Mô tả và mức ưu tiên: chức năng được sử dụng để giải phương trình bậc 2 trên tập số phức
Chức năng có mức ưu tiên trung bình
Tác nhân/ Chuỗi đáp ứng: Người sử dụng phần mềm chọn chức năng giải phương trình bậc
hai, sau khi nhập xong các hệ số của phương trình và đồng ý người dùng sẽ nhận được kết quả trên màn hình
Tên chức năng Giải phương trình bậc 2
Đối tượng sử dụng Học sinh, sinh viên, giáo viên, giảng viên
Tiền điều kiện Không
sẽ hiển thị kết quả lên màn hình Nếu có sự cố như các hệ số nhập không hợp lệ thì chương trình sẽ báo lỗi số liệu nhập không hợp lệ
và tiếp tục bước 1 cho đến khi người dùng nhập đúng
Kết quả Hiển thị nghiệm của phương trình hoặc báo lỗi
Ghi chú Tập số phức chứa cả tập số thực nên kết quả là nghiệm thực vẫn
hợp lệ Không chấp nhận hệ số của x 2 bằng 0 Các hệ số có chứa căn thức, các phép nhân, phép chia nên được đổi ra số thập phân
Trang 22trước khi nhập vào.
4.10 Dạng lượng giác của số phức
Mô tả và mức ưu tiên: chức năng được sử dụng để tìm dạng lượng giác của một số phức được
nhập vào từ bàn phím Chức năng có mức ưu tiên cao
Tác nhân/ Chuỗi đáp ứng: Người sử dụng phần mềm chọn chức năng viết dạng lượng giác của
số phức, sau khi nhập xong số phức và đồng ý người dùng sẽ nhận được kết quả trên màn hình
Mã yêu cầu LG
Tên chức năng Dạng lượng giác của số phức
Đối tượng sử dụng Học sinh, sinh viên, giáo viên, giảng viên
Tiền điều kiện Không
Cách xử lý
Bước 1: Sau khi chọn chức năng, người dùng tiến hành nhập số phức vào gồm hai mục là phần thực và phần ảo
Bước 2: Tiến hành xử lí số phức, nếu không có sự cố, chương trình
sẽ hiển thị kết quả lên màn hình Nếu có sự cố như phần thực hoặc phần ảo nhập không hợp lệ thì chương trình sẽ báo lỗi chi tiết và tiếp tục bước 1 cho đến khi người dùng nhập đúng
Kết quả Hiển thị số phức dạng lượng giác hoặc báo lỗi
Ghi chú
Số phức có chứa căn thức cần được đổi ra số thập phân trước khi nhập vào Độ chính xác của phép toán phụ thuộc vào số chữ số thập phân người dùng nhập vào
5 Các yêu cầu phi chức năng
5.1 Yêu cầu thực thi
Giao diện trực quan, đơn giản
2 Tương thích tốt Chạy được hầu hết nền tảng windows.
Không xung đột với ứng dụng đang chạy
3 Đáng tin cậy Sai số mắc phải có thể chấp nhận ở mức 0.02
4 Hiệu quả Phần mềm không bị treo.
Thời gian thực thi không quá 1s
5 Khả chuyển Chuyển đổi nhiều môi trường windows vẫn hoạt động tốt
6 Dễ bảo trì Thêm, sửa hoặc xóa một chức năng mà không ảnh hưởng
Trang 23đến chức năng khác.
5.5 Các quy tắc nghiệp vụ
N/A
6 Các yêu cầu khác
Yêu cầu về luật pháp: phù hợp với luật pháp Việt Nam, không sao chép mã nguồn phần mềm
khác mà không có sự đồng ý của tác giả
Mục tiêu tái sử dụng: mã nguồn dễ hiểu có thể làm nền phát triển thành một chức năng của
sản phẩm phần mềm lớn hơn
Phụ lục – TBD
Tham khảo
[1] Đặc tả yêu cầu phần mềm ĐH Công nghệ, ĐHQGHN
[2] Đặc tả yêu cầu phần mềm Công ty Telsoft
[3] http://voer.edu.vn/profile/303
Trang 241.2 Phạm vi sản phẩm
Phạm vi của sản phẩm nằm trong khuôn khổ của môn học nhập môn công nghệ phần mềm và nhu cầu cơ bản của người sử dụng Phần mềm hỗ trợ các chức năng đơn giản mà người dùng trong quá trình học số phức hay gặp
Phần mềm được sử dụng riêng lẻ (sử dụng cá nhân) và chạy độc lập trên bất kỳ máy tính nào
sử dụng nền tảng windows Ngôn ngữ giao tiếp trên giao diện là tiếng Việt
1.4 Tài liệu tham khảo
[1] Phan Phương Lan Bài giảng Công nghệ phần mềm Đại học Cần Thơ.
[2] Phan Phương Lan Tài liệu đặc tả mẫu và Ví dụ Đại học Cần Thơ.
[3] Đặng Việt Hùng Dạng lượng giác của số phức Moon.vn, 2014
[4] http://lrc.tailieu.vn
1.5 Tổng quan
Thiết kế này có 7 phần:
Giới thiệu – mô tả tổng quan tài liệu.
Tổng quan kiến trúc hệ thống – mô tả sơ lược hệ thống cần xây dựng.
Kiến trúc hệ thống – cung cấp khung nhìn toàn diện về hệ thống cần xây dựng.
Thiết kế dữ liệu – cung cấp các dữ liệu sẽ sử dụng trong hệ thống.
Thiết kế theo chức năng – thiết kế về giao diện và cách thức xử lí của từng chức năng.
Bảng tham khảo các yêu cầu.
Phụ lục.
2 Tổng quan hệ thống
Nhiều sản phẩm phần mềm lớn vẫn có chức năng giải số phức tuy nhiên khá nặng và có thể là phần mềm thương mại Phần mềm giải số phức mang mục đích tạo ra sản phẩn phần mềm nhỏ gọn, miễn phí nhằm phần nào giải quyết các vấn đề trên và hỗ trợ học sinh, giáo viên tính toán nhanh hơn, giảm áp lực giúp việc học tập hiệu quả và tiết kiệm thời gian
Trang 25Môi trường vận hành của hệ thống:
• Phần mềm chạy độc lập riêng lẻ trên môi trường windows
• Giao diện: DOS
• Hệ điều hành: Microsoft Windows XP/VISTA/7/8/8.1/10
• Các yêu cầu phần cứng:
o Bộ xử lí Pentium 233-MHz hoặc cao hơn
o Tối thiểu bộ nhớ 128MB RAM và 500MB ROM
o Độ phân giải màn hình 800x600 hoặc cao hơn
Nhóm người sử dụng: học sinh 12, sinh viên, giáo viên, giảng viên.
Các chức năng của hệ thống:
Số phức liên hợp Tính mô đun Tính lũy thừa
Cộng hai số phức Trừ hai số phức Tính căn bậc hai
Nhân hai số phức Chia hai số phức Giải phương trình bậc hai
Dạng lượng giác của số phức
Đây là một phần mềm thuần về tính toán, do đó các chức năng độc lập nhau như mô tả trên
Trang 26Tính thỏa hiệp: Đây là một phần mềm miễn phí, chúng tôi có thể tự do sáng tạo vì người dùng
mà không cần thỏa hiệp, do đó chúng tôi chỉ tham khảo một số ý kiến của người dùng để phát triển phần mềm một cách thân thiện nhất
float phi;
} SoPhuc_LG;
Bảng Cấu trúc số phức đại số
SoPhuc STT Tên trường Kiểu Not Null Diễn giải
Bảng Cấu trúc số phức lượng giác
SoPhuc_LG STT Tên trường Kiểu Not Null Diễn giải
STT Tên biến Kiểu dữ liệu Diễn giải
Chức năng Cộng , trừ, nhân, chia hai số phức
1 z1 SoPhuc Số hạng, thừa số, số bị trừ, số bị chia
2 z2 SoPhuc Số hạng, thừa số, số trừ, số chia
Chức năng Tính mô đun, số phức liên hợp, tính lũy thừa
4 z SoPhuc Số phức cần tính (cũng là biến đầu vào của chức
năng tính căn bậc hai và viết dạng lượng giac)
Chức năng giải phương trình bậc hai
6 a, b, c float Tương ứng là Hệ số của x2, x và hệ số tự do
7 x1, x2 SoPhuc hoặc Lưu giá trị nghiệm
Trang 279 valid_a int Kiểm tra hợp lệ của a
10 valid_b int Kiểm tra hợp lệ của b
11 valid_c int Kiểm tra hợp lệ của c
Chức năng tính căn bậc hai
12 w1, w2, w SoPhuc Lưu số phức là căn bậc hai của z
Chức năng viết dạng lượng giác
15 x, y float Giúp xác định giá trị argument
Các biến khác
19 validr Int Kiểm tra hợp lệ của phần thực (0/1 = Không/Hợp lệ)
20 validi Int Kiểm tra hợp lệ của phần ảo (0/1 = Không/Hợp lệ)
5 Thiết kế theo chức năng
Trang 29• Thành phần giao diện
STT Loại Control/YN Default Ghi chú
Trang 34Lưu đồ thuật toán nhân
5.6 Chức năng Chia hai số phức
Trang 35Lưu đồ thuật toán Chia
Lưu đồ thuật toán Nhân : Chức năng nhân