Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
LỜI NÓI ĐẦU
Thế giới ngày nay đã có nhiều tiến bộ mạnh mẽ về công nghệ thông
tin (CNTT) từ một tiềm năng thông tin đã trở thành một tài nguyên thực
sự, trở thành sản phẩm hàng hoá trong xã hội tạo ra một sự thay đổi to lớn
trong lực lượng sản xuất, cơ sở hạ tầng, cấu trúc kinh tế, tính chất lao động
và cả cách thức quản lý trong các lĩnh vực của xã hội.
Trong những năm gần đây, nền CNTT nước ta cũng đã có phát triển
trên mọi lĩnh vực trong cuộc sống cũng như trong lĩnh vực quản lý xã hội
khác. Một trong những lĩnh vực mà máy tính được sử dụng nhiều nhất là
các hệ thống thông tin quản lý nói chung .Tuy các hệ thống này xét về mặt
nào đó cũng đã đáp ứng được nhu cầu của người sử dụng trong những
phần mềm được lập trình chủ yếu trên môi trường foxpro, các hệ thống đó
có quy mô nhỏ, độc lập và tính thừa kế không cao.
Nhưng hiện nay, do quy mô, tính phức tạp của công việc ngày càng
cao nên việc xây dựng hệ thống thông tin quản lý không chỉ là việc lập
trình đơn giản mà phải xây dựng một cách có hệ thống. Các giai đoạn phân
tích, thiết kế được tiến hành một cách tỷ mỷ và chính xác.
Trong báo cáo này tôi sẽ trình bày quá trình phân tích, thiết kế cho hệ
thống quản lý công trình của “CÔNG TY CỔ PHẦN XÂY DỰNG VÀ
THƯƠNG MẠI NHẬT ANH với hệ quản trị cơ sở dữ liệu MS Access
Tin học 46B SVTH: Nguyễn Hoành Hùng
1
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
của hãng Microsoft. Và ngôn ngữ để xây dựng cho phần mềm này là
Visual basic 6.0
Nội dung của báo cáo bao gồm:
- Chương I: Giói thiệu tóm tắt tổng quan về công ty
- Chương II: Cơ sở lý thuyết và công cụ phát triển
- Chương III: Phân tích hệ thống chương trình quản lý công trình
của “CÔNG TY CỔ PHẦN XÂY DỰNG VÀ THƯƠNG MẠI
NHẬT ANH”
Do kiến thức và kinh nghiệm của bản thân còn hạn chế nên báo cáo
không tránh khỏi những thiếu xót. Rất mong được sự đóng góp của quý
thầy cô trong khoa Tin học kinh tế trường Đại Học Kinh Tế Quốc Dân và
các bạn đồng nghiệp.
Cuối cùng, tôi xin chân thành cảm ơn Th S :Trịnh Phú Cường cùng
toàn thể nhân viên trong cơ quan đã trực tiếp hướng dẫn tôi thực hiện báo
cáo này
Hà Nội Ngày 6 tháng 4 năm 2008
Sinh viên thực hiện :Nguyễn Hoành Hùng
Tin học 46B SVTH: Nguyễn Hoành Hùng
2
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
CHƯƠNG 1 TỔNG QUAN VỀ CÔNG TY CỔ PHẦN XÂY DỰNG
THƯƠNG MẠI NHẬT ANH
1. GIỚI THIỆU CHUNG
1.1Tên gọi
CÔNG TY CỔ PHẦN XÂY DỰNG VÀ THƯƠNG MẠI NHẬT ANH
1.2-Tên giao dịch nước ngoài :
NHAT ANH CONSTRUCTION AND TRADING JOINT STOCK
COMBANY
Chủ tịch HĐQT-GIÁM ĐỐC :MAI TUYẾT HẠNH
Giấy phép đăng ký kinh doanh :số 0103011237
Địa chỉ :349 Hà Huy Tập ,Yên Viên ,Gia Lâm –Hà Nội
Điện Thoại :8780866-0913307783
Fax :04.8618027
Email :
Mã số thuế :0101901681
2.1Hoạt động chính của cơ quan
2.1.1 Hoạt động thiết kế và thi công xây lắp công trình :
Tổ chức triển khai ,thi công xây lắp các công trình thuộc các lĩnh vực :
Nhà dân dụng và công nghiệp
Hạ tầng kỹ thuật và giao thông
Công trình thuỷ lợi và nhỏ
2.1.2-Thiết kế công trình
Nhà dân dụng và công nghiệp
Hạ tầng kỹ thuật và giao thong
Công trình thuỷ lợi vừa và nhỏ
Tin học 46B SVTH: Nguyễn Hoành Hùng
3
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
2.1.3-Hoạt động kinh doanh khai thác vật liệu xây dựng :
Cung cấp vật liệu xây dựng cho các công
trình xây dựng và dân dụng,công nghiệp
và giao thong .
2.1.4- Hoạt động cung cấp nhân công và trang thiết bị máy móc cho các
công trình xây dựng :
Cung cấp cho các công trình xây dựng ngồn nhân lực giàu kinh nghiệm
,giỏi kỹ thuật và trang thiết bị máy móc hiện đại đạt tiêu chuẩn
3 SƠ ĐỒ TỔ CHỨC CÔNG TY
Tin học 46B SVTH: Nguyễn Hoành Hùng
4
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
Tin học 46B SVTH: Nguyễn Hoành Hùng
HỘI ĐỒNG QUẢN TRỊ
GIÁM ĐỐC
BAN KIỂM
SOÁT
PHÓ GIÁM ĐỐC
PHỤ TRÁCH KỸ THUẬT
PHÓ GIÁM ĐỐC
PHỤ TRÁCH KINH DOANH
DOODOANH
PHÒNG
QUẢN
LÝ DỰ
ÁN
CÔNG
TRÌNH
PHÒNG
KẾ
HOẠCH
TỔNG
HỢP
PHÒNG
THI
CÔNG
CÔNG
TRÌNH
PHÒNG
TỔ
CHỨC
HÀNH
CHÍNH
PHÒNG
KẾ
TOÁN
TÀI
CHÍCH
ĐỘI THI
CÔNG 1
ĐỘI THI CÔNG
CƠ GIỚI
ĐỘI THI
CÔNG 2
5
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
Chức năng hoạt động của các khối trên là
HỘI ĐỒNG QUẢN TRỊ
Là cơ quan quản lý Công ty, có toàn quyền nhân danh Công ty để quyết định
mọi vấn đề liên quan đến mục đích, quyền lợi của Công ty, trừ những vấn đề
thuộc thẩm quyền của Đại hội đồng cổ đông. HĐQT có trách nhiệm giám sát
Giám đốc điều hành và những người quản lý khác. Quyền và nghĩa vụ của
HĐQT do Luật pháp và điều lệ Công ty, các quy chế nội bộ của Công ty và
Nghị quyết ĐHĐCĐ quy định.
BAN GIÁM ĐỐC
1- Giám đốc Công ty:
Giám đốc Công ty là người đại diện của Công ty trong việc điều hành
mọi hoạt động sản xuất kinh doanh theo Điều lệ về tổ chức và hoạt động;
Quy chế quản lý nội bộ của Công ty CỔ PHẦN XÂY DỰNG VÀ
THƯƠNG MẠI NHẬT ANH .Giám đốc Công ty do Hội đồng quản trị
bổ nhiệm và miễn nhiệm. Giám đốc Công ty chịu trách nhiệm trước Hội
đồng quản trị và pháp luật về kết quả hoạt động sản xuất kinh doanh của
Công ty.
2- Phó Giám đốc công ty:
Các Phó Giám đốc Công ty giúp việc cho Giám đốc điều hành mọi
hoạt động của Công ty trong các lĩnh vực theo sự phân công và uỷ quyền
của Giám đốc, chịu trách nhiệm trước Giám đốc Công ty và pháp luật về
nhiệm vụ được phân công và uỷ quyền
PHÒNG QUẢN LÝ DỰ ÁN CÔNG TRÌNH :quản lý tất cả các hợp
đồng công trình đang thi công và đề suất hợp đồng mới
PHÒNG KẾ HOẠT TỔNG HỢP: tổ chức mọi hoạt động cho công ty
Tin học 46B SVTH: Nguyễn Hoành Hùng
6
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
PHÒNG THI CÔNG CÔNG TRINH : kiểm tra giám soát thực thi mọi
hoạt động của công trình
PHÒNG KẾ TOÁN TÀI CHÍNH : : Có chức năng chính là kế toán
tổng hợp, tìm nguồn vốn, cân đối nguồn vốn phục vụ đầu tư và sản xuất kinh
doanh; quản lý và sử dụng hiệu quả vốn và các quỹ; phân tích tài chính,
hoạch định kế hoạch tài chính; tham mưu về các hợp đồng vay vốn và theo
dõi triển khai các hợp đồng này; quản lý kho bãi; kiểm toán nội bộ .
PHÒNG TỔ CHỨC HÀNH CHÍNH:
Có chức năng theo dõi các vấn đề về hồ sơ người lao động; giải quyết
các chế độ chính sách đối với người lao động; xây dựng quy hoạch cán bộ;
theo dõi công tác tiền lương, công tác thi đua khen thưởng, thanh tra; thực
hiện nghiệp vụ văn thư, lưu trữ, quản lý con dấu, quản lý tài sản trang thiết
bị khối văn phòng và các nhiệm vụ khác liên quan đến thủ tục hành chính
của Công ty.
CÁC ĐỘI THI CÔNG
Là các đơn vị chức năng cơ sở, tổ chức quản lý, tổ chức sản xuất, sử
dụng và khai thác các nguồn lực để thực hiện các công việc cụ thể tại công
trường
Tin học 46B SVTH: Nguyễn Hoành Hùng
7
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
4.NGUỒN NHÂN LỰC
BẢN KÊ KHAI NĂNG LỰC CỦA CÁN BỘ CHỦ CHỐT
STT HỌ VÀ TÊN CHỨC DANH CHUYÊN MÔN
THÂM
NIÊN
CÔNG
TÁC
1 MAI TUYẾT HẠNH Chủ tịch HĐQT-
Giám đốc
ThS.Luật học 10 năm
2 PHẠM SĨ PHONG Phó giám đốc phụ
trách kinh doanh
Đại học kinh tế 12 năm
3 NGUYỄN VĂN
THẮNG
Phó giám đốc phụ
trách kỹ thuận
Đại học giao thông
KS cầu đường
28 năm
4 NGUYỄN CÔNG
ĐỨC
Trưởng phòng dự
án
Đại học giao thông
KS cầu hầm
16 năm
5 TRẦN THẾ HƯNG Trửơng phòng kế
hoạch
Đại học xây dựng 10 năm
6 LÊ QUANG HUY Trưởng phòng thi
công
Đại học mỏ địa
chất
KS.trắc địa
8 năm
7 PHẠM THỊ LAN Trưởng phòng tài
chính
Đại học tài chính
kế toán
10 năm
8 HÀ TIẾN MẠNH Đội trưởng đội thi
công cơ giới
Đại học giao thông 3 năm
Tin học 46B SVTH: Nguyễn Hoành Hùng
8
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
QUÁ TRÌNH HÌNH THÀNH VÀ PHÁT TRIỂN CÔNG TY
Ngày 14/3/2006 công ty được chính thức được thành lập và đi vào hoạt
động tại trụ sở của công ty 349 Hà Huy Tập –Yên Viên –Gia Lâm Hà Nội
Tổng tài sản công ty khi mới thành lập chỉ có 3 tỷ đồng các máy móc và
trang thiết bị phục vụ cho việc thi công phần lớn đi thuê ,công ty chỉ nhận
thực hiện những hợp đồng thi công nhỏ lẻ như các công trình làm đường
thôn xóm ở các khu vực lân cận Hà Nội như Đông Anh ,Sóc Sơn .
Qua hơn 2 năm hoạt động công ty đã thu được những thành tựu đáng kể
như:
Tổng tài sản công ty đã tăng lên 8 tỷ đồng cơ sở vật chất được nâng cấp một
số máy móc thiết bị đã tự mua sắm không phải đi thuê công ty hiện có 10
máy xúc , ủi…các loại.
từ chỗ chỉ có một đội thi công đã phát triển thành 3 đội với đội ngũ cán bộ
công nhân viên có trình độ chuyên môn cao .các hợp đồng thi công nhận
được ngày càng lớn về giá trị và quy mô .
công ty đã thi công một số công trình tiêu biểu như “Đường vào nhà máy
sản xuất ô tô ở Bỉm Sơn - Thanh Hoá; Công trình kè Hồ Tây- Hà Nội ;
Đường vào Cục Hàng Không ở đường Nguyễn Sơn-Gia Lâm- Hà Nội … “
Hoạt động của công ty dần được mở rộng theo hướng đa ngành nghề như :
Xây dựng các công trình ở mọi lĩnh vực ,thiết kế các công trình dân dụng và
công nghiệp ,cung cấp nguyên vật liệu cho các công trình xây dựng .
5 Tình hình ứng dụng tin học của công ty cổ phần xây dựng thương
mại nhât anh
5.1 Mạng sử dụng trong công ty
hệ thống máy tính công ty có kết nối mạng internet để phục vụ cho kinh
doanh Mỗi phòng ban có thể liên hệ với nhau thông qua hệ thống máy tính
nối mạng LAN.
5.2 Phầm mềm sử dụng
Hệ điều hành Microsoft Windows XP Professional Pack 2
Microsoft Office 2003
. 5.3 Phần cứng
Chip Intel, Pentium IV, RAM 256 MB, một máy fax; một máy in và một
máy photocopy
5.4Tình trạng ứng dụng tin học của bộ phận quản lý
Hiện nay, công ty đang sử dụng phần mềm Microsoft Excel để quản lý các
giấy tờ liên quan đến nhân sự và các công trình
Tin học 46B SVTH: Nguyễn Hoành Hùng
9
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
2.GIỚI THIỆU CHUNG VỀ ĐỀ TÀI LỰA CHỌN
2.1 Đề tài :”Phần mềm quản lý công trình của công ty cổ phần xây dựng
và thương mại nhật anh “
2.2 .Lý do lựa chọn đề tài :
Trong môi trường kinh doanh cạnh tranh ngày nay để đảm bảo một
doanh nghiệp luôn đứng vững thì phải có 1 chiến lược quản lý phù hợp.trong
sự phát triển của xã hội nói chung và của ngành xây dựng nói riêng hiện nay
có rất nhiều dự án đòi hỏi sự chính xác ,tiết kiệm nhân lực ,tiết kiệm thời
gian nhưng phải hoàn thành trong thời gian sớm nhất với sự phát triển của
công nghệ thông tin đã góp phần rất lớn và việc đáp ứng được nhu cầu cần
thiết nói trên .
Đối với công ty cổ phân xây dựng và thương mại nhật anh đứng trước sự
phát triển mạnh mẽ của nền kinh tế, họ cũng lựa chọn công cụ tin học hoá các bộ
phận quản lý nhằm mục đích thúc đẩy việc kinh doanh của mình, đồng thời giảm
chi phí và thời gian một cách tối ưu nhất trong quản lý. Mục tiêu mà các nhà
quản lý lựa chọn để tiến hành công tác tin học hoá đầu tiên đó là bộ phận quản lý
yều cầu phải được lên một cách thường xuyên, liên tục nên phương pháp quản
lý bằng thủ công không còn phù hợp nữa.
vì vậy em đã chọn đề tài :” phần mềm quản lý công trình của công ty cổ
phần xây dựng và thương mại nhật anh “
cho báo cáo thực tập tốt nghiệp của mình
2.3 Mục tiêu của đề tài
- Chuyên nghiệp hoá các hoạt động liên quan đến thi công công trình
- Lưu trữ lịch thi công các công trình
- Cho biết thời gian bắt đầu và kết thúc một công trình
- Thêm một số hạng mục công trình đang thi công
- Đưa ra lịch thi công các hạng mục tối ưu nhất.
3- Công cụ nghiên cứu và thực hiện đề tài
3.1. Hệ quản trị cơ sở dữ liệu Microsoft Access 2003
Đối với việc tạo lập cơ sở dữ liệu ta sẽ sử dụng hệ quản trị cơ sở dữ
liệu Microsoft Office Access 2003, hệ quản trị CSDL này thân thiện với
Tin học 46B SVTH: Nguyễn Hoành Hùng
10
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
người dùng, dễ sử dụng và nó có độ tương thích cao với ngôn ngữ lập trình
Visual Basic.
3.2. Ngôn ngữ lập trình Visual Basic 6.0
Chương trình này sử dụng ngôn ngữ Visual Basic 6.0 để lập trình.
Đây là một ngôn ngữ lập trình hướng sự kiện và cho phép lập trình hướng
đối tượng để xây dựng hoạt động trong môi trường Windows. Hơn nữa,
Visual Basic là ngôn ngữ hỗ trợ người lập trình với tính trực quan rất cao.
Visual Basic cung cấp nhiều công cụ để cho phép kết nối và khai thác
dữ liệu ở nhiều hệ quản trị cơ sở dữ liệu khác nhau.
Ngoài ra, ngôn ngữ lập trình này có chế độ bảo mật an toàn dữ liệu
khá tốt, dễ sử dụng và được sử dụng rất phổ biến trong lập trình trong quản
lý.
3.3. Công cụ làm báo cáo Crystal Report
Khi xây dựng một chương trình với mục đích ứng dụng thực tiễn thì
kết quả cuối cùng là dữ liệu phải đựơc kết xuất và có thể xuất ra các thiết bị
như máy in hay các trình hỗ trợ khác cho phép người dùng in hay trích dữ
liệu sang các trình ứng dụng tương thích khác.
Crystal Report là một công cụ chuẩn, cho phép thiết kế các báo cáo trên ứng
dụng Visual Basic.
4- Các bước thực hiện đề tài
4.1. Khảo sát hệ thống
4.2. Phân tích hệ thống
Sử dụng các sơ đồ: sơ đồ chức năng kinh doanh BFD, sơ đồ luồng dữ liệu
DFD, sơ đồ luồng thông tin IFD…
4.3. Thiết kế hệ thống
- Thiết kế cơ sở dữ liệu.
- Thiết kế các form giao diện.
Tin học 46B SVTH: Nguyễn Hoành Hùng
11
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
- Thiết kế chương trình.
- Thiết kế các mẫu báo cáo
CHƯƠNG 2: MỘT SỐ PHƯƠNG PHÁP LUẬN SỬ DỤNG
NGHIÊN CỨU ĐỀ TÀI
Tổng quan về công nghệ phần mềm
1. Công nghệ phần mềm
1.1. Khái niệm
Công nghệ phần mềm là tổ hợp các công cụ, phương pháp và thủ tục làm
cho người quản trị viên dự án nắm được xu thế tổng quát của công nghệ
phần mềm. Đồng thời giúp cho kỹ sư lập trình có nền tảng để khai thác định
hướng phần mềm.
Chúng ta có thể biểu diễn công nghệ phần mềm một cách trực quan bằng
hình vẽ sau đây:
Tin học 46B SVTH: Nguyễn Hoành Hùng
12
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
Hình 2.1. Hình biểu diễn công nghệ phần mềm
1.1. Các giai đoạn phát triển của 1 dự án phần mềm
Quy trình phát triển 1 dự án phần mềm không phụ thuộc vào quy mô, độ
phức tạp và miền ứng dụng, nó đều trải qua 3 giai đoạn sau:
- Giai đoạn 1: Giai đoạn xác định (Trả lời cho câu hỏi “ Cái gì?”)
Tức là: Nhóm sản xuất phần mềm phải xác định cụ thể và chi tiết sản
phẩm phần mềm mà mình cần chế tạo ra. Đây là công đoạn cực kỳ quan
trọng khi sản xuất phần mềm với quy mô công nghiệp vì chỉ có xác định rõ
ràng phạm vi của sản phẩm và các ràng buộc liên quan chúng ta mới tiến
hành được kết quả các công đoạn sau.
Trong giai đoạn này phải xác định và giải quyết ba vấn đề mấu chốt sau:
+ Tiến hành phân tích hệ thống một cách toàn diện theo quan điểm: một
phần mềm là một bộ phận của hệ thống quản lý. Phần mềm phải được đặt
trong tổng thể hệ thống ấy và xem xét trong mối quan hệ ràng buộc với các
yếu tố quản lý khác.
+ Tiến hành lập kế hoạch sản xuất phần mềm trước khi đi vào yêu cầu cụ
thể.
+ Tiến hành phân tích yêu cầu một cách cụ thể, chi tiết theo từng đối tượng.
Đây là giai đoạn định danh phần mềm trong thực tế của các công ty phần
mềm nó được cụ thể hóa trong vai trò cán bộ có chức danh: Cán bộ phân
tích yêu cầu phần mềm, Cán bộ lập và quản lý yêu cầu phần mềm
- Giai đoạn 2: Giai đoạn phát triển (Trả lời câu hỏi: “Thế nào?”)
Tức là: Định hướng phần mềm sẽ phát triển như thế nào. Trong đó có 3
công việc quan trọng cần làm: thiết kế, mã hoá, kiểm thử. Cần chú ý khái
niệm mã hóa trong công nghệ phần mềm khác với khái niệm mã hóa trong
hệ thống thông tin. Trong công nghệ phần mềm, mã hoá là quá trình chuyển
Tin học 46B SVTH: Nguyễn Hoành Hùng
13
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
đổi, dịch từ một thiết kế ban đầu thành một ngôn ngữ lập trình mà máy tính
có thể hiểu được.
Trong thực tiễn của công nghệ phần mềm giai đoạn này được thực hiện
bởi các chức danh:
+ Cán bộ thiết kế.
+ Cán bộ quản lý cấu hình phần mềm.
+ Lập trình viên.
+ Cán bộ test phần mềm.
- Giai đoạn 3: Giai đoạn bảo trì (Trả lời cho câu hỏi “Thay đổi?”)
Trong đó có 3 loại hình: bảo trì sửa chữa. bảo trì thích nghi và bảo trì
hoàn thiện( còn gọi là bảo trì nâng cao).
+ Bảo trì sửa chữa: tức là sửa lỗi phần mềm, lỗi chi tiết đơn giản không phải
là lỗi của hệ thống.
+ Bảo trì thích nghi: tức là làm cho sản phẩm phần mềm hoàn toàn thân
thiện trong môi trường của người sử dụng.
+ Bảo trì hoàn thiện( nâng cao): tức là làm cho sản phẩm phần mềm đẹp
hơn có tính thẩm mỹ cao cùng với chức năng thực hiện ngày càng được hoàn
thiện, ngoài ra kỹ sư phần mềm còn phải bổ sung thêm một vài chức năng
mà công ty mua phần mềm yêu cầu.
Trong thực tiễn hoạt động hiện nay của các công ty phần mềm nhiệm vụ
này thường được giao cho cán bộ triển khai phần mềm và ban hỗ trợ khách
hàng.
Đánh giá hiệu quả hoạt động của các công ty phần mềm ở Việt Nam hiện
nay. Người ta thấy vấn đề hậu mãi lại đóng vai trò quan trọng hơn là chất
lượng phần mềm.
Trong công nghệ phần mềm người ta thường áp dụng quy tắc 40 – 20 –
40 về sự phân bố các nỗ lực trong tiến trình phát triển một phần mềm. Tức
là toàn bộ tiến trình được chia thành ba khối lớn. Có nghĩa là trong giai đoạn
Tin học 46B SVTH: Nguyễn Hoành Hùng
14
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
phát triển thì phần mã hóa công ty phần mềm cần tập trung các tiềm năng về
vật chất và con người ở mức độ 20% còn lại các tiềm năng này được chia
làm 2 lần cho quy trình thiết kế và thử nghiệm.
2. Phần mềm
2.1. Khái niệm về phần mềm
Trong công nghệ phần mềm người ta sử dụng định nghĩa sau đây của một
nhà tin học người Mỹ Roger Pressman: Phần mềm trong công nghệ phần
mềm được hiểu là tập hợp gồm 3 yếu tố: Các chương trình máy tính, Các
cấu trúc dữ liệu, tài liệu hệ thống hướng dẫn sử dụng.
Định nghĩa này xác định được thành phần của phần mềm trong công
nghệ phần mềm.
Phần mềm là sản phẩm của một nền công nghiệp mới nó gồm có hai tính
chất sau:
+ Phần mềm là hệ thống logíc chứ không phải kỹ thuật. Do đó nó không
được lắp ráp theo nghĩa thông thường như sản phẩm công nghiệp khác. Một
phần mềm cần có sự đầu tư nhiều trí tuệ của những người chế tác phần mềm.
+ Sản phầm của các nền công nghiệp truyền thống sẽ bị hoa mòn trong quá
trình sử dụng. Giá trị của phần mềm càng tăng lên khi nó được người sử
dụng càng hiểu sâu về nó.
2.2. Các công đoạn phát triển của phần mềm
Phần mềm đã trải qua các công đoạn phát triển ở bảng sau:
Thời kỳ
1950 – 1960
Thời kỳ
1960 - 1970
Thời kỳ
1970 - 1990
Thời kỳ
1990 đến nay
- Tốc độ
chậm
- Xử lý theo
lô
- Nhóm người
dùng
- Xử lý theo
thời gian thực
- Phần mềm đã
- Hệ thống phân tán
- Hiệu quả thương
mại phần mềm đã có
- Phần mềm thông
minh
- Hệ thống để bàn
- Hướng đối
tượng
- Xử lý song song
Tin học 46B SVTH: Nguyễn Hoành Hùng
15
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
- Phần mềm
đơn chiếc
được thương
mại hóa
Nhìn vào bảng trên ta nhận thấy tiến trình phát triển của phần mềm
xuất phát từ năm 1950, khi lần đầu tiên trên thế giới xuất hiện 2 chiếc máy
tính đồng thời ở Liên Xô và Mỹ. Như vậy, tiến trình phát triển của phần
mềm luôn luôn đi song song với quá trình phát triển của phần cứng theo
định hướng hoàn toàn tương tự tức là: Quy mô thu nhỏ, tính năng nâng cao.
Tính chất thương mại hóa của phần mềm trên thị trường ngày càng
bộc lộ rõ và đỉnh cao là việc sản xuất phần mềm đã tiến hành ở quy mô đại
trà theo tác phong công nghiệp và xu thế tổng quát của thị trường.
3. Vòng đời phát triển của phần mềm
Trong công nghệ phần mềm người ta đặc biệt quan tâm đến vòng đời
phát triển của phần mềm, nó được hiểu là một quy tình từ khi phần mềm ra
đời đến khi phần mềm được đưa vào sử dụng và quá trình nâng cấp, bảo trì
phần mềm đó.
Mục đích của việc nghiên cứu vòng đời phát triển của phần mềm là
phân ra thành giai đoạn trên cơ sở đó tìm hiểu giải pháp và công cụ thích
hợp để tác động vào các giai đoạn. Vòng đời phát triển của một phần mềm
được biểu diễn bằng mô hình thác nước theo hình vẽ sau đây:
Tin học 46B SVTH: Nguyễn Hoành Hùng
16
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
Hình 2.2. Mô hình biểu diễn vòng đời phát triển của phần mềm
- Công đoạn đầu tiên là công nghệ hệ thống bao trùm toàn bộ các quá trình
tiếp theo trong công nghệ phần mềm. Vì phần mềm là một thành phần
của hệ thống quản lý do đó nó phải được xem xét trong mối liên quan
tổng thể về kinh tế, kỹ thuật, tài chính của toàn bộ bộ máy quản lý.
- Công đoạn tiếp theo là phân tích. Với mục đích xác định rõ ràng và cụ
thể các yêu cầu của phần mềm.
- Phần thiết kế trong công nghệ phần mềm hướng tới các vấn đề sau đây:
+ Thiết kế kiến trúc hệ thống: là phần quan trọng nhất vì nó cho ta cái nhìn
tổng thể về phần mềm cần xây dựng.
+ Thiết kế kỹ thuật là đi vào các vấn đề cụ thể gồm: thiết kế dữ liệu, thiết kế
thủ tục, thiết kế chương trình, thiết kế giao diện màn hình và cuối cùng là
thiết kế công cụ cài đặt.
Người ta dùng mô hình thác nước để biểu diễn vòng đời phát triển của
phần mềm, với 2 ý nghĩa. Một là: để khẳng định đây là giai đoạn của một
quy trình thống nhất, nó không tách rời mà có mối liên quan mật thiết với
nhau. Hai là: trong mô hình này các công đoạn ở phía dưới thì chịu tác động
Tin học 46B SVTH: Nguyễn Hoành Hùng
17
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
của toàn bộ các công đoạn ở phía bên trên. Chỉ có công đoạn công nghệ hệ
thống là không chịu ảnh hưởng hay tác động của bất cứ công đoạn nào.
4. Làm bản mẫu phần mềm
Đây là một công đoạn rất đặc trưng khi sản xuất phần mềm ở quy mô
công nghiệp. Cũng tương tự như trong sản xuất của một ngành công nghiệp
nào đó trước khi đưa sản phẩm vào sản xuất hàng loạt tiến hành thử nghiệm
làm thử một số sản phẩm để đưa ra thăm dò ý kiến của khách hàng nếu
khách hàng đồng ý mới tiến hành sản xuất hàng loạt.
Ý tưởng này cũng được thực hiện tương tự như công nghiệp phần mềm.
Bản mẫu phần mềm được hiểu là một mô hình của phần mềm tương lai
mang những đặc trưng cơ bản nhất nhưng chưa phải là phần mềm hoàn toàn
đã hoàn thiện.
Trong quy trình làm phần mềm nhất thiết phải làm bản mẫu vì hai lý do
sau đây: Khi khách hàng đến công ty đặt hàng người ta mới bày tỏ nguyện
vọng sản phẩm phần mềm mới được thiết kế. Các kỹ sư phần mềm ngay từ
đầu khi nhận đơn đặt hàng thì cũng không hình dung hết các chức năng chi
tiết của phần mềm.
Quy trình làm bản mẫu phần mềm đòi hỏi những cán bộ có chuyên môn
cao không chỉ thuần tuý về mặt tin học. Vì mục đích của công đoạn làm bản
mẫu chưa hẳn là chất lượng của phần mềm mà khả năng thu hút khách hàng
để sản xuất phần mềm. Sau khi có bản mẫu phần mềm khách hàng sẽ xem
xét đánh giá và nếu bản mẫu đã được chấp nhận thì phần mềm sẽ được đưa
vào sản xuất.
Các bước quy trình làm bản mẫu phần mềm như sau:
- Xác định yêu cầu của khách hàng. Đây là bước có vai trò đặc biệt quan
trọng vì việc xác định đúng yêu cầu của khách hàng là tiêu đề để ký kết xây
dựng hợp đồng. Yêu cầu với cán bộ xây dựng yêu cầu phần mềm là ngoài
Tin học 46B SVTH: Nguyễn Hoành Hùng
18
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
khả năng chuyên môn phải có năng lực biết lắng nghe khách hàng, phải biết
tổng hợp về kinh tế xã hội. Bản thân khách hàng chỉ đưa ra yêu cầu có tính
chất rất khái quát, bày tỏ nguyện vọng bản thân cán bộ yêu cầu phải hiểu
biết rất sâu về vấn đề này, và phải chi tiết hoá thành các yêu cầu cụ thể.
- Sau khi xác định được yêu cầu của khách hàng thì kỹ sư phần mềm
chuyển sang giai đoạn thiết kế nhanh tức là xác định các ý tưởng làm hạt
nhân cho bản mẫu, mà mục đích cuối cùng là công ty phần mềm đưa ra các
ý tưởng làm cho khách hàng có thể cảm nhận được những nét độc đáo nhất
mà phần mềm mình định mua.
- Tiến hành xây dựng bản mẫu phần mềm, bản mẫu có thể được thực hiện
theo ba hình thức:
+ Biểu diễn trên giấy.
+ Biểu diễn bằng một phần cơ bản của phần mềm chỉ bao gồm những nét
đặc trưng nhất của nó.
+ Biểu diễn bằng một chương trình máy tính đã tương đối hoàn chỉnh, có
khả năng thực hiện những nhiệm vụ chính của phần mềm sau này.
Trong thực tế của các công ty phần mềm, căn cứ vào trình độ và yêu cầu
của khách hàng mà người ta lựa chọn một trong ba hình thức trình bày ở
trên.
Sau khi phác thảo bản mẫu công ty đưa cho khách hàng đánh giá bản
mẫu dưới góc độ của người sử dụng. Nếu khách hàng có bổ sung hoặc điều
chỉnh, sau đó chuyển sang giai đoạn làm mịn bản mẫu.
Sau khi làm mịn chúng ta có sản phẩm bản mẫu phần mềm ở góc độ nào
đó có thể coi là phiên bản đầu tiên của sản phẩm.
Quy trình làm bản mẫu chỉ riêng có khi phần mềm đã trở thành một
ngành công nghiệp còn giai đoạn đầu vấn đề này vẫn chưa được đặt ra. Quy
trình này có vai trò đặc biệt quan trọng, khách hàng có ký hợp đồng phần
Tin học 46B SVTH: Nguyễn Hoành Hùng
19
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
mềm hay không cán bộ làm phần bản mẫu ngoài kiến thức chuyên môn phải
có kiến thức tổng hợp về tình hình kinh tế xã hội.
5. Nền tảng thiết kế phần mềm
5.1. Vai trò của thiết kế phần mềm
Thiết kế phần mềm là khâu trung tâm trong quy trình sản xuất một phần
mềm công nghiệp và được dùng để chỉ chung 3 quy trình là: Thiết kế, lập
trình và kiểm thử.
Quy trình thiết kế chiếm lĩnh 75% chi phí để sản xuất một phần mềm
công nghiệp. Quy trình này được biểu diễn một cách tổng quát trong sơ đồ
dưới đây:
Hình 2.3. Hình biểu diễn vai trò thiết kế phần mềm
Vai trò của khâu thiết kế trong sản xuất phần mềm công nghiệp thể hiện ở
chỗ:
- Đối với các phần mềm được thiết kế đầy đủ thì không dẫn đến
những thay đổi lớn khi xảy ra một thay đổi lớn nào đó về dữ liệu.
Tin học 46B SVTH: Nguyễn Hoành Hùng
20
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
- Đối với các phần mềm không được thiết kế một cách đầy đủ thì tính
ổn định của chúng rất thấp, chỉ cần một thay đổi nhỏ về dữ liệu hoặc
tác động của môi trường cũng làm cho hoạt động của phần mềm bị
biến dạng thậm chí không còn khả năng hoạt động được nữa.
- Nền tảng thiết kế cũng là cơ sở để tiếp tục phát triển phần mềm hoặc
sửa chữa, bổ sung các chức năng của nó.
5.2. Tiến trình thiết kế trong công nghệ phần mềm
Khi sản xuất một phần mềm công ngiệp theo quan điểm quản lý dự án
việc thiết kế phần mềm được tiến hành theo 2 bước: thiết kế sơ bộ và thiết
kế chi tiết.
Xét từ góc độ quản lý thì thiết kế sơ bộ đưa ra một cái nhìn sơ bộ về
phần mềm tương lai. Còn thiết kế chi tiết đi sâu vào các lĩnh vực thiết kế cụ
thể: thiết kế dữ liệu, thiết kế chương trình, thiết kế thủ tục.
Nếu xét từ phương diện kỹ thuật thì quy trình phát triển một phần mềm
công nghiệp được phân chia thành 4 công đoạn: thiết kế kiến trúc, thiết kế
dữ liệu, thiết kế thủ tục và thiết kế giao diện.
Hai góc độ quản lý và kỹ thuật trong tiến trình phát triển phần mềm có
mối quan hệ rất chặt chẽ với nhau và được biểu diễn tổng quan trong hình vẽ
sau đây:
Tin học 46B SVTH: Nguyễn Hoành Hùng
21
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
Hình 2.4. Biểu diễn mối quan hệ giữa 2 khía cạnh trong thiết kế phần mềm
Hình vẽ này cho thấy mối quan hệ chặt chẽ giữa 2 khía cạnh quản lý và
kỹ thuật trong sản xuất phần mềm công nghiệp.
5.3. Cấp bậc kiến trúc máy tính
Cấp bậc kiến trúc của máy tính được hiểu là thứ bậc trình tự các khối và
mối liên kết giữa chúng với nhau. Như vậy đúng trước một lĩnh vực thực
tiễn một kỹ sư phần mềm có thể đưa ra nhiều giải pháp khác nhau. Để giải
quyết vấn đề đó hoàn toàn phụ thuộc vào quan điểm và trình độ chuyên môn
của mỗi người.
Yêu cầu chung đối với mỗi kỹ sư phần mềm là phải đạt được 2 yêu cầu sau:
- Đảm bảo tính chặt chẽ trong kiến trúc để không xảy ra những lỗ hổng
trong phần mềm.
- Kiến trúc phải đảm bảo không quá phức tạp để khi dịch thành chương
trình, quy mô của chương trình không qúa lớn khi thực hiện mỗi chức năng.
Kiến trúc phần mềm được hiểu là một tập hợp gồm hai yếu tố:
- Cấu trúc thứ bậc của các module.
- Cấu trúc dữ liệu của các module.
Tin học 46B SVTH: Nguyễn Hoành Hùng
22
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
Bản chất kiến trúc phần mềm là bài toán chuyển từ P – S (Từ vấn đề
thực tế sang giải pháp phần mềm): P là một vấn đề phi cấu trúc và S đã
được cấu trúc hoá.
Bài toán này có rất nhiều lời giải, căn cứ vào quan điểm của kỹ sư phần
mềm và quan điểm ứng dụng phần mềm chúng ta trình bày ý tưởng chuyển
đổi từ P – S.
6. Xác định quy mô phần mềm
Cũng như các ngành công nghiệp truyền thống. Trong công nghệ phần
mềm vấn đề xác định quy mô của sản phẩm là một công đoạn bắt buộc và
hướng tới hai mục đích sau:
- Để xác định kế hoạch thiết kế phần mềm phù hợp.
- Đưa ra một giấy báo giá dựa trên cơ sở có tính toán cụ thể.
Tuy nhiên, sản phẩm phần mềm có những nét đặc thù riêng biệt so với
sản phẩm của các ngành công nghiệp truyền thống. Do đó, việc xác định quy
mô của chúng cũng phức tạp hơn nhiều. Người ta sử dụng hai phương pháp
để xác định quy mô phần mềm.
+ Phương pháp trực tiếp (KLOG)
Đây là phương pháp xét quy mô phần mềm trên cơ sở số dòng lệnh. Như
vậy, một phần mềm được đánh giá là quy mô lớn nếu nó có nhiều dòng lệnh.
Ở đây, người ta chưa đề cập đến phần chất lượng. Chức năng mà phần mềm
có thể thực hiện được.
Hiệu năng = KLOG/ người /tháng
Chất lượng = (100 – sai sót/ KLOG)/100%
Chi phí = Tổng số tiền/ KLOG
+ Phương pháp gián tiếp(FP)
Phương pháp thứ nhất chỉ xét đến góc độ quy mô mà chưa đề cập đến
hiệu quả của phần mềm. Bổ sung phương pháp hai để đánh giá phần mềm
Tin học 46B SVTH: Nguyễn Hoành Hùng
23
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
theo quan điểm chức năng. Đây là phương pháp thực nghiệm do nhà tin học
người Mỹ đưa ra trên cơ sở xem xét rất nhiều phần mềm và dựa vào ý kiến
đánh giá của các chuyên gia, và đưa ra 5 chỉ tiêu đánh giá chức năng của
mỗi phần mềm.
Tham số đo Số lượng Đơn giản Trung bình Phức tạp Tổng
Input 3 4 6
Out put 4 5 7
Các yêu cầu 3 4 6
File 7 10 15
Giao diện 5 7 10
Tổng
Năm chỉ tiêu này về cơ bản đã bao quát được nội dung để đánh giá chức
năng của một phần mềm.
FP = Tổng số * (0.65 + 0.01 * Sum(F
i
))
F
i
Hàm điều chỉnh độ phức tạp
I = 1 – 14
Trên cơ sở xác định được đại lượng FP người ta cũng sử dụng ba chỉ tiêu
như trong trường hợp KLOG sau đây:
Hiệu năng = FP/người- tháng
Chất lượng = (100- lỗi/FP)/100%
Chi phí = Tổng số tiền/FP
7. Các quy trình thiết kế trong công nghệ phần mềm
Trong sản xuất phần mềm công nghiệp, người ta chuẩn hoá dưới dạng
tổng quát 6 bước được gọi là 6 quy trình- đây có thể coi là bản hướng dẫn
của những người làm việc trong công ty sản xuất phần mềm. Trong đó xác
định rõ nhiệm vụ của từng chức danh. Để đảm bảo tính thiết thực, gần gũi
với thực tiễn, chúng ta sẽ lấy các quy trình sau đây của công ty phần mềm
FPT làm cơ sở:
7.1.Quy trình 1: Xác định yêu cầu người sử dụng (Khách hàng)
Tin học 46B SVTH: Nguyễn Hoành Hùng
24
Chuyên đề thực tập tốt nghiệp GVHD: Th.s Trịnh Phú Cường
7.1.1. Mục đích của quy trình
Mục đích của quy trình là xác định yêu cầu của của khách hàng bao
gồm: Xác định một cách đầy đủ, chính xác các yêu cầu của khách hàng về phần
mềm, phân tích hệ thống và các quy trình liên quan, phân tích yêu cầu của
người sử dụng tương lai có liên quan đến các phần mềm do công ty xây dựng.
7.1.2. Các dấu hiệu
Quy trình xác định yêu cầu người sử dụng được đặc trưng bởi các dấu hiệu
sau đây:
- Khảo sát hệ thống.
- Phân tích nghiệp vụ.
- Phân tích yêu cầu.
7.1.3. Lưu đồ của quy trình
7.1.4. Các thông số của quy trình
Tin học 46B SVTH: Nguyễn Hoành Hùng
25
Lập kế hoạch xác định yêu cầu
Phân tích nghiệp vụ
Khảo sát hệ thống
Tổng hợp bàn giao kết quả
Mô tả hoạt động hệ thống
Phân tích yêu cầu người sử dụng
Mở đầu
Kết thúc