Với việc phát triển kinh tế như hiện nay hàng ngày,hàng giờ các doanhnghiệp luôn phải xử lý một khối lương dữ liệu khổng lồ,nếu như không áp dụngnhững phần mềm quản lý thì sẽ không thể đ
Trang 1LỜI MỞ ĐẦU
Ngày nay với sự phát triển của khoa học công nghệ,công nghệ thông tin
đã trở thành một phần không thể thiếu trong mọi lĩnh vực hoạt động của đờisông con người Đặc biệt tại các nước phát triển thì tin học đã được đưa vàoứng dụng trong quản lý từ lõu và đóng một vai trò quan trọng trong cácnghành công nghiệp và dịch vụ,trong khi đó tại Việt Nam điều này cũn khámới mẻ với các tổ chức và doanh nghiệp
Trước đõy việc quản lý chủ yếu dựa trên giấy tờ sổ sách thực hiện mộtcách thủ công,mất thời gian và thiếu chớnh xác,gõy ảnh hưởng tới việc kinhdoanh, sản xuất thì trong những năm gần đõy,với sự bùng nổ của công nghệthông tin,tin học đã thay thế những việc làm thủ công và ngày càng khẳngđịnh vai trò quan trọng của mình
Với việc phát triển kinh tế như hiện nay hàng ngày,hàng giờ các doanhnghiệp luôn phải xử lý một khối lương dữ liệu khổng lồ,nếu như không áp dụngnhững phần mềm quản lý thì sẽ không thể đưa ra được những báo cáo chính xác
và kịp thời để hỗ trợ trong việc đưa ra những quyết định trong kinh doanh Các doanh nghiệp sẽ có nhiều lợi ích khi sử dụng những phần mềm tiệních này như tiết kiệm thời gian, nhõn lực, chi phí……
Cấu trúc của luận báo cáo tốt nghiệp gồm những phần sau:
Chương I: Giới thiệu tổng quan về công ty TNHH Điện Máy Thái
Bình Dương
Chương II: Cơ sở và phương pháp luận xõy dựng phần mềm.
Chương III: Phõn tích và thiết kế phần mềm cho công ty TNHH Điện
Máy Thái Bình Dương
Em xin được cảm ơn đến PGS.TS Lê Văn Năm – Giáo viên hướng dẫncùng toàn thể các cán bộ trong công ty đã tận tình hướng dẫn và tạo mọi điềukiện để em có thể hoàn thành đề tài này
Trang 2CHƯƠNG 1 GIỚI THIỆU TỔNG QUAN VỀ CÔNG TY TNHH ĐIỆN MÁY
THÁI BÌNH DƯƠNG
I QUÁ TRÌNH THÀNH LẬP CÔNG TY.
Tên tiếng Việt : Công ty trách nhiệm hữu hạn Điện Máy Thái Bình Dương.
Tên tiếng Anh : PACIFIC ELECTRICAL AND MECHANICAL Co;Ltd.
Năm thành lập : 11/9/1999.
vốn đầu tư ban đầu : 500000000 VNĐ.
trụ sở chính : 31 phố Huế,phường Hàng Bài,Quận Hoàn Kiếm,Hà Nội.
Điện thoại : (04).38227473 Fax : (04).36282265 Website : www.31phohue.com.
Là loại công ty trách nhiệm hữu hạn có hai thành viên trở lên Công tyđược thành lập vào ngày 11 tháng 9 năm 1999 theo quyết định 4599 GP-TLDN của uỷ ban nhõn dõn thành phố Hà Nội và chớnh thức đi vào hoạt
động ngày 21 tháng 9 năm 1999
Công ty có trụ sở tại 325 phố Vọng,Hai Bà Trưng ,Hà Nội
II CƠ CẤU TỔ CHỨC
1 Sơ đồ cơ cấu tổ chức
BAN GIÁM ĐỐC
PHÒNG DỊCH
VỤ HẬU MÃI
PHÒNG MARKETING
PHÒNG KẾ HOẠCH KINH DOANH
PHÒNG BÁN HÀNG TRỰC TUYẾN PHÒNG KẾ
TOÁN
Trang 32.Chức năng cỏc phũng ban của bộ máy quản trị.
a Ban giám đốc
- Giám đốc hiệnh thời là ông Nguyễn Quang Triệu.
- Là người đại diện hợp pháp của công ty trước các cơ quan của nhànước và pháp luật
- Nghiên cứu và đề ra các chiến lược cho việc phát triển kinh doanhcủa công ty,lập kế hoạch kinh doanh cho từng chu kỳ,thời kỳ hoạt động
- Điều hành và kiểm tra trực tiếp các hoạt động của cấp dưói
- Trực tiếp xõy dựng các qui định,chế độ,chớnh sách chung củacông ty về tổ chức nhõn sự,lương,tài chớnh kế toán
- Kí kết các hợp đồng tuyển dụng lao động để phù hợp với nhu cầusản xuất kinh doanh của công ty
b Phòng kế toán:
Bao gồm một trưởng phòng tài chớnh kiêm kế toán trưởng,một thủ quỹ
và một kế toán viên có nhiệm vụ thống kê sổ sách,báo cáo tình hình tài chớnhlên ban giám đốc,tổng hợp tình hình tài chớnh trong từng chu kỳ kinh doanhgiúp ban giám đốc có thể đưa ra các sách lược trong thời gian tới
c Phòng kinh doanh:
Bao gồm trưởng phòng kinh doanh.va các nhân viên thực hiện chức năng:
- Khai thác thị trường: Phòng kinh doanh ngoài việc phát triển thị trường,họcòn cần tìm hiểu thị trường khác để mở rộng phạm vi kinh doanh,tỡm hiểu cácmặt hàng mà thị trường đang cần ,giới thiệu sản phẩm mới……
- Bán hàng : Bộ phận bán hàng do 2 nhõn viên phu trách,có nhiệm vụgiới thiệu những tớnh năng của sản phẩm tới khách hàng giúp họ có thể đưa
ra nhũng lựa chọn đúng đắn phù hợp với nhu cầu
- Dự án: Do ban giám đốc đưa xuống cho phòng kinh doanh,trưởngphòng kinh doanh sẽ giao nhiệm vụ cho cấp dưới,họ có trách nhiệm tỡm hiểu
Trang 4về dự án mà công ty định đầu tư ,từ đó lập kế hoạch để có thể giành lợi thếtrong việc dự thầu.
d Phòng marketing: phòng marketing có chức năng tìm hiểu và mở
rộng thị trường,tỡm hiểu cỏc nhúm khách hàng tiềm năng,nhũng khu vựctiềm năng,tỡm hiểu và giới thiệu về sản phẩm của công ty Quảng bá thươnghiệu của công ty rộng rãi trên toàn khu vực để công ty phát triển lớn mạnh
e Phòng dịch vụ hậu mãi: Có chức năng bảo hành, chăm sóc khách
hàng, quan hệ với khách hàng cũ…Đưa ra những chiến dịch chăm sóc kháchhàng,duy trì mối quan hệ tốt đẹp với khách cũ
f Phũng bán hàng trực tuyến: Nhận yêu cầu và xác định yêu cầu
những đơn đặt hàng trên mạng hoặc qua điện thoại Từ đó gửi yêu cầu chophong kinh doanh
III TÌNH HÌNH HOẠT ĐỘNG KINH DOANH.
Các thông tin chung về công ty:
Công ty TNHH Diện máy Thái Bình Dương bắt đầu kinh doanh từ năm
1999 đến nay ,công ty là nhà phõn phối chớnh thức của thương hiệuPANASONIC trên toàn miền bắc Công ty chyuên buôn bán và kinh doanhsản phẩm điện máy, đồ điện gia dụng của tất cả các hàng trên toàn thế giới.Danh mục sản phẩm,thiết bị cung cấp vào thị trường Việt Nam rất đa dạng vàphong phú,bao gồm những thiết bị hiện đại,chất lượng đảm bảo, được sảnxuất tại những nước phát triển,có trình độ khoa học kĩ thuật cao
Sau 10 năm hoạt động công ty Điện Máy Thái Bình Dương có đội ngũnhõn viên là 27 người
Khách hàng chớnh của công ty là những đại lý,những cửa hàng lớn trêntoàn miền bắc,ngoài ra công ty cũn phát triển hệ thống bán lẻ trên khu vựcBắc trung bộ nói chung va Hà Nội nói riêng Hiện nay công ty có 11 nhúmhàng chớnh với hàng nghìn mặt hàng
Trang 5Một số mặt hàng của công ty:
Bàn là không dõy HI557(Philips): Bàn là không dõy cao cấp,mặt chốngsước bằng titan,bơm hơi,phun tia và tạo áp lực mạnh,có thể sử dụng khôngdõy và có dõy
Bàn là NIL45NS: Bàn là không dõy,sử dụng mạch điện tử có thể tựđộng ngắt điện khii không sử dụng,mặy chống sước cao cấp
Lò viba NN-GS597(panasonic): Lò viba 25L hõm nóng,nướng,giãđông,công nghệ hơi nước giúp cho thức ăn tươi ngon,giữ dược vitamin.côngnghệ biến tải giúp cho tiết kiệm điện dược 50%,nấu nhanh hơn bằng 1 phớmchức năng
Ló viba NN-GD577MY : Là lò viba cao cấp 27L có nướng,bên tronglòng bọc inox 5chức năng nấu nướng,giã đông…công nghệ biến tảiinverter,tiết kiệm 50% diện,với 1 phớm chức năng
Lò viba PANA NN S 2215WF(panasonic) : lò có nướng,có nút giãđông,dung tích 22lýt,công nghệ biến tải giúp tiét kiệm điện
Máy hút bụi MC5010(panasonic): công suất 1600w không túi chúabụi,vùa hút vừa thải,3 đàu hút, đầu thải gọn trong máy Tay cầm inox,màngngăn khuõn hẹp,sản xuất tại malaysia
suất1400W/1500W/1600W.dung tích chứa 15l/17l/20l/ chức năng thải.bộphun lọc,diịet khuẩn Tặng ngay thảm lót khi mua máy hút bụi 20l
Máy hút bụi panasonic MC9060: công suất tối đa 1500W,công suất hút300W,kiểu dáng nhỏ gọn,túi bụi trông thõn máy,tay xách inox
Máy say sinh tố pana MK8710: Máy chế biến sản phẩm 10 trong1
Ép trái cây, say sinh tố, say khô, vắt cam, say thịt, ép thịt, say nhuyễn, dỏnhtrứng……
Trang 6Nồi cơm công nghiệp (Hànquốc): nồi nấu cho cơ quan hay xí nghiệp làhợp lý nhất, có hai loại là inox và sonha Sản phẩm được sản xuất dành riêngcho các công ty.
Sấy tóc EH5271 (panasonic): cánh quạt chông gỉ, nhiệt đọ phù hợp,không làm khô tóc, chẻ ngọn, hai nấc nóng vá lạnh
Quạt điện đứng panasonic F400k: công tắc bật, tắt, gió theo nhịp,độ caođiều chỉnh được 128cm-143cm,cỏnh quạt nhựa trong suốt, màu xanh hoặc ghi
Tủ lạnh panasonic NR C432D: Dung tích346lýt,ngăn ướp lạnh,cungcấp nhiệt độ thích hợp cho thực phẩm luôn tươi ngon, bảng khử mựi khángkhuẩn, buồng thổi hoi lạnh nhiều hướng, mành giữ duy trì được rau quả luôntươi ngon, không bị mất nước
Tivi panasonic 29P180 :màn hinh siêu phẳng Quỉntix,tốc độquýt100hz,giảm nhiễu hình bằng kĩ thuật số, loa, bass-refellt subwoerkem theo, ngõ vào EGB,DVD,SV-VHS, ngõ vào head phone, kích thước718-515-604……
Máy fax pana KXPH342: phím định vị giúp sử dụng máy dễdàng,chức năng ECM, gửi fó theo trình tự,bảo luư 28 trang văn bản, chứcnăng copy nâng cao, chứ nawng quét bản fó nhanh
Hoạt động của công ty được mô tả vắn tắt như sau:
Khi khách hàng có nhu cầu muốn mua một số lượng lớn các mặt hàng(các đại lý,các cửa hàng lớn) thì phải gọi điện đặt hàng trước vài ngày, công
ty sẽ tập hợp các đơn đặt hàng rồi sau đó gửi yêu cầu cho nhà cung cấp Nhàcung cấp gửi hàng về cho công ty,sau đó công ty sẽ chuyển đến khách hàng.Cũn đối với những khách hàng mua với số lượng ít, mua lẻ thì công ty sẽ cóhàng chuyển ngay cho khách hàng, bàn giao và lắp đặt cho khách Công ty cónhiều hình thức bán hàng khác nhau để khách hàng dễ dàng lựa chọn hình
Trang 7thức thuận tiện với mình nhất như bán hàng theo cách truyền thống,bán hàngqua mạng, bán hàng qua điện thoại….
Doanh số 2 năm gần đây của công ty thể hiện trong bảng sau:
4 Doanh thu trướcc thuế 10,000,000,000 15,000,000.000
5 Doanh thu sau thuế 8,646,000,000 13,600,000,000
Lương trung bình của nhõn viên trong công ty là 6 triệu/tháng/người
Phương hướng phát triển và kinh doanhcủa công ty TNHH Điện Máy Thái Bình Dương trong năm 2009.
Công ty sẽ tiếp tục tập trung vào kinh doanh trong lĩnh vự điện máy vớicác định hướng chớnh sau:
+ Mở rộng thị phần sản phẩm điện máy tại Việt Nam, đặc biệt là pháttriển kênh bán buôn
+ Đầu tư và mở rộng thị trường bán lẻ, trọng tõm là trên địa bàn Hà Nội.+Hỗ trợ các khách hàng quen của công ty và giúp đỡ các khách hàngmới để có thể có nhiều kênh buôn bán
+ Tăng cường việc buôn bán và giao dịch trên website của công ty cũngnhư qua điện thoại
+ Hợp tác với nhiều nhón hiệu nổi tiếng,nhũng nhà cung cấp.cho mặthàng trở nên phong phú và đa dạng
IV THỰC TRẠNG CƠ SỞ VẬT CHẤT VÀ KĨ THUẬT ỨNG DỤNG CHO TIN HỌC TẠI CÔNG TY.
Trang 81 Các trang thiết bị phần cứng
Các trang thiết bị chung của công ty gồm:
+ Các máy tính Pentium IV 2.3,ram 512MB với card mạng,swicht 5 cổng.+ Máy được sử dụng hai loại là máy in cá nhân cho phòng kinh doanh vàmáy in mạng
+ Các máy tính đã dược nối mang LAN với nhau và được kết nối vớimáy in
+ Dây cáp sử dụng là loại dây RJ45 dùng cho mỗi phòng và cáp đồngtrục dành cho toàn bộ hệ thống
+ Máy chủ của IBM với cấu hình cao cho phép lưu trữ với dung lượnglớn và khả năng xử lý đạt tốc độ cao
+ Các máy tính được kết nối với mạng INTERNET
+ Nhân viên đều sử dụng máy tính thông thạo
V HIỆN TRẠNG ỨNG DỤNG CNTT VÀ PHƯƠNG HƯỚNG CHỌN ĐỀ TÀI.
Trong những năm gần đõy khoa học công nghệ đã phát triển một cáchmạnh mẽ đã đem lại những hiệu quả đáng kể trong việc quản lý Công nghệthông tin đã xõm nhập vào hầu hết các hoạt động cửa con người và ngày càngkhẳng định vai trò của mình Nhờ có tin học mà hoạt động sản xuất,quản lýtrở nên năng động thuận tiện hơn, mang lại nhiều tiện ích và hiệu quả hơn.Các phần mềm quản lý trở thành một công cụ không thể thiếu dược trong cácdoanh nghiệp Việt Nam và công ty Điện Máy Thái Bình Dương cũng không
Trang 9nằm ngoại lệ Việc mở rộng sản xuất kinh doanh kiến cho số lượng nhõn viêntăng và theo đó các sản phẩm, mặt hàng cũng trở nên đa dạng và phong phúhơn để đáp ứng nhu cầu ngày càng khắt khe trong nước Với số lương khổng
lồ như vậy thì việc quản lý thủ công đã không cũn phù hợp nữa Ta có thểnhận thấy một số yếu kém của việc quản lý thủ công như: thông tin về đốitượng quản lý nghèo nàn, lạc hậu, không được cập nhật thường xuyên,việclưu trữ bảo quản gặp nhiều khó khăn, thông tin lưu trữ trong công ty khôngnhất quán, dễ bị trùng lặp trong các bộ phận Đặc biệt mất nhiều công sức đểkiểm tra, thống kê, phõn tích để đưa ra các thông tin chớnh xác để phục vụcho việc ra quyết định kinh doanh Cho đến nay công ty TNHH Điện MáyThái Bình Dương mới chỉ áp dụng phần mền tiện ích kế toán trong việc quản
lý tài chớnh, báo cáo tình hình hoạt động trong từng chu kỳ kinh doanh.Trong khi việc quản lý bán hàng , tình hình sản phẩm vẫn cũn được quản lýmột cách thủ công Điều này đã gõy ra một số khó khăn trong việc kiểm kêhàng hoá, gõy mất thời gian trong việc đưa ra danh mục sản phẩm cho kháchhàng hay thông tin đưa ra khoong được nhất quán giữa các bộ phận
Trong khi đó nền kinh tế thế giới nói chung và nền kinh tế Việt Nam nóichung đang gặp nhiều khó khăn do khủng hoảng toàn cầu tác độnh đến, trongnăm nay nhiều công ty đã phải cắt giảm nhõn công, ngừng sản xuất để vượtqua thời kì khó khăn này Công ty TNHH Điện Máy Thái Bình Dương cốgắng duy trì nhõn công và áp dụng những đổi mới trong công tác quản lý.Chớnh vì vậy việc áp dụng một phần mềm tiện ích trong việc quản lýbán hàng sẽ giả quyết dược các khó khăn và giúp bộ phận kinh doanh tỡmkiếm được những thông tin chớnh xác và nhanh chóng Từ đó ban giám đốc
sẽ có dược những thông tin chớnh xác, kịp thời về tình hình hoạt động để cóthể đưa ra những quyết định đúng đắn
Trang 10Vì vậy, em chọn đề tài: “Xây dựng phần mềm quản lý bán hàng tại công
ty TNHH Điện Máy Thái Bình Dương” cho chuyên đề thực tập của mình Ngôn ngữ sử dụng : Microsoft Visual Basic 6.0,Microsoft Office
Access 2003
Microsoft Visual Basic 6.0:là một ngôn ngữ lập trình mềm dẻo, rất dễ
sử dụng, trực quan, có nhiều hàm,thủ tục viết sẳn rất thuận tiện cho công việclập trình
Microsoft Acess : là một chùm thuộc phần mềm Microsoft Office,vì thế
giao diện và các công cụ tương tự như các ứng dụng khác của bộ Offic màmọi người đã quen sử dụng Viêc trao đổi dữ liệu giũa Access và các ứngdụng khác trong môi trường Windows cũng rất thuận tiện
VI YÊU CẦU NGƯỜI SỬ DỤNG
a Yêu cầu chung:
+ Trên các form nhập dữ liệu phải được bố trí thuận tiện,dễ sử dụng.+ Màu sắc trên form phải hài hoà, không loè loẹt song cũng phải làm nổibật những trường quan trọng hay mục đích
+ Dùng phớm Tab để thay đổi vị trí trường nhập theo một thứ tự từ trênxuống,từ trái qua phải hay từ chớnh sang phụ
+ Hiển thị các thực đơn cùng với hướng dẫn sử dụng các phớm tắt
+ Dựa vào những qui tắc đã được chấp nhận về đồ hoạ để minh hoạthông tin trên màn hình
+ Phải có dấu hiệu cho biết người sử dụng đang thao tác với thực đơn nào.+ Phải có cõu hỏi xác nhận một số thao tác của nhân viên làm thay đổi
Trang 11Phiếu nhập hàng phải hiển thị đầy đủ các trường như Nhà cung cấp, Mãhàng, tên hàng, đơn vị tớnh…….
Khi nhõn viên nhấn nút lưu phiếu nhập kho thì chương trình phải tựđộng cập nhật số liệu liên quan đến hàng hoá vừa nhập vào bảng danh mụchàng hoá
c Yêu cầu với nghiệp vụ xuất
Phiếu xuất hàng phải hiện thị đầy đủ về thông tin cần thiết về ngày xuất,
mã hàng, tên hàng, số lượng…
Khi nhõn viên lưu lại phiếu xuất kho thì dữ liệu hàng tồn trong khotương ứng sẽ được cập nhật
d Yêu cấu với nghiệp vụ lập báo cáo
Phải thiết kế các form báo cáo có giao diện phù hợp với từng loại báocáo theo yêu cầu của nhà quản lý
Báo cáo phải hiện thị đầy đủ các thông tin cần thiết lấy dữ liệu từ phầnmềm quản lý
Trang 12I GIỚI THIỆU VÀ KHÁI NIỆM CÔNG NGHỆ PHẦN MỀM (SOFTWARE TECHNOLOGY)
1 Phần mềm
1.1 Khái niệm phần mềm
Bao gồm 3 yếu tố sau:
- Các lệnh ( chương trình máy tớnh ) khi được thực hiện thì cung cấpnhững chức năng và kết quả mong muốn
- Các cấu trúc dữ liệu làm cho chương trình thao tác thông tin thích hợp
- Hướng dẫn sử dụng và trợ giúp người dùng
Tiến trình phát triển của phần mềm bao gồm các giai đoạn được biểudiễn trong hình vẽ dướ đõy:
Giai đoạn
1950-1960
Giai đoạn 1960-1970
Giai đoạn 1970-1990
Giai đoạn 1990->nay
- Xử lý theo lô
- Máy tính đơn chiếc
- Sản xuất theo đơn
đặt hàng
- Nhiều người sửdụng
- Thời gian thực
- Bắt đấu có phầnmềm thương mại
- Quy mô côngnghiệp
Qua các giai đoạn phát triển phần mềm ta thấy xu thế chung: tớnh năngcác phần mềm ngày càng đa dạng, quy mô của các công cụ thiết bị ngày cànggiảm dần
1.2 Vòng đời phát triển của phần mềm
Mỗi phấn mềm từ khi ra đời,phát triển đều trải qua một chu kì trongcông nghệ phần mềm gọi là vòng đời phát triển của phần mềm Người ta
Trang 13nghiên cứu vòng đời phát triển của phần mềm để hiểu rừ từng giai đoạn và cóphương pháp thích hợp để tác động vào từng giai đoạn đó nhằm đảm bảo chấtlượng sản phẩm Vòng đời phát triển của phần mềm được biểu diễn bằng môhình thác nước:
Trong quy trình này, mỗi giai đoạn phớa trước sẽ tác động tới tất cả cácgiai đoạn ở phớa sau Tức là công nghệ hệ thống ở giai đoạn đầu tiên sẽ tácđộng đến 5 giai đoạn cũn lại Đến lượt mình, công đoạn phõn tích chịu tácđộng của công đoạn công nghệ hệ thống nhưng nó lại tác động đến 4 côngđoạn cũn lại
Mã hóa Thiết kế
Kiểm thử
Trang 14Trong công nghệ phần mềm người ta đưa ra khái niệm cấu hình phầnmềm tương thích với khái niệm cấu hình phần cứng Cấu hình phần mềmchớnh là quá trình hình thành của một phần mềm Cấu hình phần mềm gồmcác công đoạn được biểu diễn theo hình vẽ sau:
2 Công nghệ phần mềm(Software Techonology)
Công nghệ phần mềm bao gồm một tập hợp với ba yếu tố chủ chốt:Phương pháp, Công cụ và Thủ tục giúp cho người quản lý có thể kiểm soátdược quá trình phát triển phấn mềm và cung cấp cho kỹ sư phần mềm mộtnền tảng để xõy dựng một phần mềm chất lượng cao
Mỗi quy trình phấn mềm không phụ thuộc vào lĩnh vực ứng dụng, độphức tạp, quy trình công nghệ bao gồm 3 giai đoạn: Xác định, phát triển, bảotrì dược biểu diễn trong sơ đồ sau:
Giai đoạn 1 Xác định
Giai đoạn 2 Phát triển
Giai đoạn 3 Bảo trì
Phân tích
Lập kế hoạch
Xác định yêu cầu
Thiết kế Mã hóa Kiểm thử Bảo trì hoàn thiện Bảo trì thích nghi Bảo trì sửa đổi
Trang 15Giai đoạn 1: Xác định yêu cầu trả lời cõu hỏi cái gì? tức kĩ sư phần
mềm phải giới hạn và định nghĩa rừ ràng sản phẩm phần mềm sẽ xõy dựng đểtung ra thị trường, trong giai đoạn này có các công đoạn chớnh: Phõn tích hệthống, lập kế hoạc, xác định yêu cầu của người sử dụng
Giai đoạn 2: Phát triển trả lời cõu hỏi “thế nào?” kỹ sư phần mềm sử
dụng những công cụ thiết bị gì về ngôn ngữ, quy trình công nghệ để sản xuất
ra phần mềm Giai đoạn này bao gồm các bước thiết kề, mã húa kiểm thử.Trong đó 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, mã húa trong công nghệ phần mềm là dùngmột ngôn ngữ lập trình cụ thể nào đó để dịch từ bản vẽ thiết kế thành mộtchương trình cụ thể
Giai đoạn 3: Bảo trì trả lời cõu hỏi “ thay đổi như thế nào ?” Mỗi phấn
mềm sau khi đã bán cho khách hàng đều phải trải qua giai đoạn hậu
Trang 16mói(chăm sóc khách hàng) giai đoạn này bao gồm 3 công việc chớnh: bảo trìsủa đổi, bảo trì thích nghi, bảo trì hoàn thiện Trong đó bảo trì sửa đổi :sửa lỗichương trình nếu chẳng may xuất hiện khi đã bán cho khách hàng Giữa máytớnh sản xuất ra phần mềm và các máy tớnh sử dụng phần mềm luôn có sựkhác biệt về cấu hình,chưc năng, vì vậy việc bảo trì thích nghi cần được tiếnhành để phấn mềm hoạt động an toàn trong môi trường máy tớnh của kháchhàng Quá trình bảo trì hoàn thiện xảy ra khi khách hàng có yêu cầu công typhần mềm phát triển thêm một chức năng nào đó của phần mềm trong phạm
vi cho phép
3 Quy trình làm bản mẫu trong công nghệ phần mềm
Bản mẫu phần mềm là một kỹ thuật đặc biệt và riêng có trong công nghệphần mềm Nó không được đề cập tới trong các môn lập trình cụ thể vì mụcđích của công nghệ phần mềm la sản xuất ra phần mềm để bán trên thị trường
do đó trước khi tung sản phẩm ra thị trường thì người ta sản xuất thử phầnmềm mẫu để khách hàng đánh giá, sau khi bản mẫu dược chấp nhận thì mớitiến hành sản xuất hàng loạt
Bản mẫu pphần mềm là một sản phẩm phần mềm bao gồm những đặctrưng cơ bản nhất của phần mềm được xõy dựng nhằm mục đích đưa ra 1phác thảo để khách hàng đánh giá và cũng là cơ sở để kĩ sư phần mềm pháttriển sản phẩm của chớnh mình
Bản mẫu phần mềm có thể thể hiện dưới 3 hình thức sau:
+ Sử dụng các bản vẽ thiết kế trên giấy.
+ Là một phần mềm chỉ bao gồm những nét đặc trưng nhất.
+ Là một chương trình máy tớnh chứa những kĩ thuật cơ bản nhất khi
thiết kế phần mềm
Trang 17Tùy thuộc vào trình độ hiểu biết của khách hàng mà công ty phần
mềm cung cấp cho khách hàng bản mẫu dưới một trong 3 hình thức hoặc
cả 3 hình thức
Mục tiêu cao nhất của làm bản mẫu la cố gắng làm sao cho trong
khoảng thời jan ngắn nhất làm cho khách hàng tiếp thu phần nhìn thấy được
của phần mềm trong tương lai để họ đi đến kí kết hợp đồng
Quy trình làm bản mẫu phần mềm gồm 6 bước:
Bước1: Xác định yêu cầu của khách hàng : trong bước này đại diện của
công ty phần mềm gặp gỡ khách hàng để xác định dược các yêu cầu của họ về
phần mềm Thông thường khách hàng chỉ bày tỏ nguyện vọng của mình là
chớnh,bản thõn cán bộ công ty phần mềm phải lượng hoá và mô hình hoá các
nguyện vọng đó
Bước 2: Thiết kế nhanh : Mục đích của bước này ở dạng phác thảo một
vài đặc trưng cơ bản nhất của phần mềm
Làm mềm bản mẫu
Thiết kế nhanh
KH đánh giá bản mẫu
SP bản mẫu phần mềm
YC của khách hàng
Làm bản mẫu
Bắt đầu
Trang 18Bước 3: Làm bản mẫu : Nhằm mục đích công ty cho ra đời nhanh một
bản mẫu dạng phác thảo chỉ gồm một vài đặc trưng cơ bản của phần mềm
Bước 4: Khách hàng đánh giá bản mẫu.
Bước 5: Làm mịn bản mẫu, hay gọi là chi tiết hoá các chức năng của
phần mềm
Bước 6: Kết thúc ta được 1 sản phẩm chưa dược thương mại hoá trên thị
trường gọi là bản mẫu phần mềm
II NỀN TẢNG THIẾT KẾ PHẦN MỀM:
2.1 Vai trò của thiết kế trong công nghệ phần mềm:
Trong sản xuất quy mô công nghiệp vấn đề thiết kế có vai trò đặc biệtquan trọng:
- Thiết kế là nền tảng để phát triển một phần mềm đảm bảo tớnh ổn định
và bền vững
- Nhờ có thiết kế mà chúng ta có thể đảm bảo không có sự đổ vỡ 1 phầnmềm khi có sự biến động xảy ra hoặc thay đổi trong phần mềm
So sánh phần mềm có thiết kế cơ bản và phần mềm không có thiết kế:
Đối với 1 phần mềm không có thiết kế đày đủ chỉ cần thay đổi trong cấu trúc
dữ liệu hay chức năng chương trình cung có thể dẫn đến sự phá huỷ phần mềmhay hỏng hóc chức năng ban đầu của nó Đặc biệt trong giai đoạn hiện nay khi
Bảo trì
Kiểm thử
Thiết kế
Bảo trì Kiểm thử
Trang 19xuất hiện khái niệm lập trình tự động, lập trình bằng máy tính Hiệp hội công nghệphần mềm thế giới vẫn tuyên bố trong một tài liệu xá nhận rằng : nhu cầu của thếgiới từ nay lại không phải là người lập trình biết dựng cõu lệnh chế tác phần mềm
mà trước hết là những người biết đọc văn bản thiết kế
2.2 Các phương pháp thiết kế trong công nghệ phần mềm:
2.2.1 phương pháp thiết kế từ đỉnh xuống:
Ý tưởng của phương pháp thiết kế giải thuật từ đỉnh xuống dựa trên ý
niệm module hoá (phõn rã một vấn đề cần giải quyết thành các vấn đề nhỏhơn,chi tiết hơn theo sơ đồ hình cõy cho đến khi nhận được các module độclập không phõn chia nhỏ hơn dược nữa) tức là khi thiết kế 1 phần mềm ứngdụng, người ta phải đi từ tổng quát tới chi tiết, để tạo thành một hệ thốngthống nhất Dựa trên những cơ sở của hệ thống này, người ta phõn chia côngviệc cho các nhúm mà vẫn đảm bảo tớnh mục tiêu cho chương trình
Để nắm bắt được ý tưởng của phương pháp này chúng ta xem xét mộtbài toán tin học hoá tại một trung tõm thương mại: Trên cơ sở thực tế,chúng
ta lần lượt đưa ra các mô hình của bài toán dưới dạng phác thảo:
Trang 20Phác thảo 3:
Quản lý theo các gian
hàng
Lập báo cáo tổng hợp Quản lý theo mặt hàng
Quản lý nhân lực
Quản lý tuyển dụng Quản lý khen thưỏng, kỷ
luật Quản lý lưong
Trang 21Phác thảo 4:
Trên cơ sở của 4 phác thảo trên đõy ,người ta tích hợp lại thành hệ quản
lý trung tõm thương mại, với giả sử rằng quá trình không thể phõn rã tiếp.Nhưng trong thực tế tuỳ thuộc vào các mô hình của các công ty và qui mô củachúng để có thể phõn rã tiếp hay không
Quản lý kho hàng
Quản lý xuất kho Quản lý tồn kho Quản lý nhập kho
Trang 22Phác thảo 5:
2.2.2 Phương pháp thiết kế từ đỏy lờn:
Trong phương pháp này, chúng ta xuất phát từ cụ thể chi tiết đến tổng
hợp Trước hết tiến hành giải quyết các vấn đề cụ thể sau đó trên cơ sở đánhgiá mức độ tương tự về chức năng của vấn đề này trong việc giải quyết bàitoán chúng ta gộp lại thành từng nhúm có cùng chức năng từ dưới lên trên cho
Quản lý trung tâm thương
mại
Quản lý khen thưởng kỷ
luật
Quản lý tuyển dụng Quản lý nhân lực
Quản lýtồn kho Quản lý nhập kho Quản lý xuất kho Quản lý kho hàng
Lâp báo cáo tổng hợp
Quản lý mặt hàng
Quản lý theo gian hàng
Quản lý bán hàng
Quản lý lương
Trang 23đến module chớnh Sau đó sẽ thiết kế thêm 1 số chương trình làm phong phúhơn, đầy đủ hơn chức năng của các phõn hệ và cuối cùng thiết kế chươngtrình tập hợp các module thành một thể thống nhất, hoàn chỉnh Lĩnh vựcnghiên cứu của phương pháp này là nhưng cơ sở đã được tin học hoá từngphần Phương pháp này cho phếp vừa sử dụng được những chương trình đã
có và phát huy hiệu quả mà không phải xoá đi làm lại từ đầu mà vẫn đảm bảochỉnh thể của một hệ thống
Để nắm được ý tưởng của phương pháp này,ta xet một bài toán tin học
cụ thể: Quản lý một khoa trong trường đại học Vấn đề quản lý đã được tinhọc hoá từng phần bằng cách sử dụng một số chương trình
Prog 1: in ra danh sách cua SV theo lớp
Prog 2: in ra hồ sơ SV
Prog 3: in ra danh sách SV theo khoá
Prog 4: in ra danh sách giảng viên
Prog 5: in ra bảng điểm của SV
Prog 6: in ra chương trình đào tạo cao học
Prog 7: in ra chương trình đào tạo chớnh qui
Prog 8: in ra chương trình đào tạo tại chức
Các chương trình này đã dược đưa vào ứng dụng trong thực tế và pháthuy được hiệu quả tích cực Dựa vào những thứ đã có sẵn khoa thống nhất làmuốn phát triển thành một hệ thống tin hoàn chỉnh hơn Phương pháp giảiquyết bài toán trong trương hợp này chúng ta phải dựa vào những thứ có sẵn
và thực hiện lần lượt các bước sau:
Bước 1: căn cứ vào những chức năng của từng phần mềm,ghép chúng
lại thành một nhúm Trên cơ sở này gộp prog 1, prog 2, prog 3, prog 5 thànhchức năng quản lý sinh viên
Trang 24Bước 2: Gộp prog 6, prog 7, prog 8 thành phõn hệ quản lý chương trình
đào tạo
Bước 3: Chương trình prog 4 là một nhúm độc lập liên quan các prog
cũn lại
Quản lý sinh viên
Quản lý chương trình đào tạo
Prog 6
Quản lý cán bộ
Prog 4
Trang 25Bước tiếp theo, dựa trên cơ sở 3 nhúm này chúng ta phát triển thêm phầnmềm đành cho mỗi nhúm
+ Quản lý sinh viên: prog 9 in bảng điểm tốt nghiệp dành cho mỗi nhúm+ Quản lý cán bộ : prog 10 in ra danh sách CBCNV trong khoa
Bước 4: Như vậy từ 8 chương trình ban đầu, nhờ phương pháp thiết kế
từ đáy lên chúng ta đã thiết kế ra thành 10 chương trình Nhưng luôn luôn cóđịnh hướng, tức là các chương trình luôn nằm trong phõn hệ bõy giờ ta tíchhợp chúng lại thành một chương trinh hoàn chỉnh
Prog 8 Prog 7
Prog 6
Prog 9
Trang 263 Tiến 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 xét quá trình thhiết kếdưới 2 góc độ: về mặt quản lý và về mặt kĩ thuật
- Xét về góc độ quản lý: người ta chia làm 2 giai đoạn:
+ Thiết kế sơ bộ
+ Thiết kế chi tiết
- Xét về góc độ kĩ thuật người ta chia ra làm 4 công đoạn:
+ Thiết kế kiến trúc
+ Thiết kế dữ liệu
+ Thiết kế thủ tục
+ Thiết kế giao diện
Mối liên hệ giữa góc độ quản lý và góc độ kĩ thuật được biểu diễn theohình vẽ sau:
Trang 274 Kiến trúc phần mềm
Khái niệm : Để hiểu khái niệm kiến trúc phần mềm chúng ta xết ví dụ để
xõy dựng một căn nhà Kĩ sư phải lắng nghe các yêu cầu của khách hàng từ
đó kĩ sư sẽ thiết kế phác hoạ ra giấy những gì căn bản nhất của ngôi nhà saunày Nhìn vào bản thiết kế ngôi nhà chúng ta có thể nhìn nhận tổng quan vềkiểu dáng của ngôi nhà và nét kiến trúc bề ngoài
Chúng ta chưa cần xem xét bên trong như thế nào,kết cấu ra sao vì nếukiến trúc bên ngoài của ngôi nhà dược chấp nhận thì chúng ta mới tiến hànhthiết kế bên trong Cũn nếu không được chấp nhận thì chúng ta sẽ phải thiết
kế một kiểu dáng nhà khác
Khái niệm kiến trúc phần mềm cũng có nét tương tự Để giải bài toánchuyển từ “vấn đề”(P) sang “giải pháp”(S) kĩ sư phần mềm sẽ thiết kế mộtphần mềm tốt nhất trên cơ sở nền tảng thiết kế đã có trước Sau đõy là sơ đồminh hoạ cho kiến trúc phần mềm:
Trang 28Vấn đề cần giải quyết Giải pháp phần mềm
P1 P2 P3 P4 P5
Trang 295 CÁC QUI TRÌNH THIẾT KẾ TRONG CÔNG NGHỆ PHẦN MỀM
Trong quá trình sản xuất phần mềm,để cho ra một sản phẩm người ta cócác qui trình,các bước nhất định mỗi bước thực hiện một vai trò nhấtđịnh,trong các công ty phần mềm hiện nay đa số tuõn theo 6 bước cơ bản sau:
- Quy trình 1: Xây dựng hợp đồng phần mềm
- Quy trình 2: Xác định yêu cầu
- Quy trình 3: Phân tích thiết kế phần mềm
- Quy trình 4: Lập trình
- Quy trình 5: Test
- Quy trình 6: Triển khai
5.1 Quy trình 1: Xây dựng hợp đồng phần mềm
Mục đích: Nghiên cứu, đề xuất giải pháp kỹ thuật, tiến hành xây dựng
hợp đồng với khách hàng, theo dõi tiến trình thực hiện hợp đồng, tổ chứcthanh lý, thanh toán hợp đồng và lập hồ sơ tổng quát về quy trình hợp đồngphần mềm
Dấu hiệu: Qui trình xõy dựng hợp đồng phần mềm dược đặc trưng bởi
các dấu hiệu sau:
- Xây dựng hợp đồng phần mềm với khách hàng
- Theo dõi thực hiện hợp đồng với khách hàng
- Thanh toán thanh lý hợp đồng phần mềm
Trang 30Lưu đồ:
5.2 Quy trình 2: Xác định yêu cầu phần mềm
Mục đích: Sau khi đó cú hợp đồng phần mềm với khách hàng, hợp
đồng được chuyển sang để xác định nhu cầu của khách hàng về sản phẩmtương lai Qui trình này kĩ sư phải tiến hành ph õn tớch hệ thống một cách sơ
bộ và các chương trình liờn quan,lượng hoỏ cỏc nhu cầu của khách hàng.
Yêu cầu đặt ra là phải lượng hoỏ cỏc dạng mô hình
Dấu hiệu:
- Phân tích nghiệp vụ chuyờn sõu
Mở đầu
Kết thúc
Nghiên cứu đề xuất
Trang 31- Lập mô hình hoạt động của hệ thống.(DFD,BFD, ERD…)
Lưu đồ:
Các công cụ được sử dụng tiến hành phân tích mô hình hoạt động hệthống: BFD, IFD, DFD…
Mở đầu
Kết thúc
Lập kế hoạch xác định yêu cầu
Trang 32Sơ đồ chức năng nghiệp vụ (BFD)
Mục đích: Tiếp cận logic tới việc phân tích hệ thống và chỉ ra miềnkhảo cứư hệ thống toàn bộ hệ thống tổ chức
Một BFD đầy đủ gồm:
- Tên chức năng
- Mô tả có tính chất tường thuật
- Đầu vào của chức năng
- Đầu ra của chức năng
- Các sự kiện gây ra sự thay đổi lỗi
Sơ đồ BFD chỉ cho ta biết cái gì cần làm chứ không chỉ ra làm thế nào.Tất cả đều quan trọng và cần xử lý như nhau một phần của cùng một cấu trúc
Sơ đồ luồng thông tin
Sơ đồ lưồng thông tin được dùng để mô tả hệ thống thông tin theo cáchthức động Tức là mô tả sự di chuyển của dữ liệu, việc xử lý, việc lưu trữtrong thế giới bằng các sơ đồ
Ký pháp dùng cho sơ đồ luồng thông tin:
Trang 33Sơ đồ luồng dữ liệu (DFD)
Mục đích: Trợ giúp các hoạt động sau
- Liên lạc: ĐF mang tính đơn giản, dễ hiểu với người phân tích vàngười dùng
- Tài liệu: Đặc tả yêu cầu hình thức và yêu cầu thiết kế hệ thống lànhân tố làm đơn giản việc tạo và chấp nhận tài liệu
- Phân tích DFD: Để xác định yêu cầu của người sử dùng
- Thiết kế: Phục vụ việc lập kế hoạch và minh hoạ cho các nhàphân tích và người dùng xem xét khi thiết kế hệ thống mới
Thủ công Giao tác người máy
i máy
Tin học hoá hoàn toàn
Tài liệu
Trang 345.3 Quy trình thiết kế phần mềm
Mục đích: Sau khi quy trình xác định yêu cầu phần mềm, trên cơ sở hồ
sơ của giai đoạn phân tích ta chuyển sang quy trình thiết kế nhằm xác định hồ
sơ tổng thể các vấn đề thiết kế phần mềm từ tổng quát tới chi tiết
Thiết kế là chỡa khoỏ dẫn đến thành công của một dự án Thiết kế là mộtquá trình đòi hỏi tính sáng tạo, tinh tế và hiểu biết sâu sắc của người thiếtkế.Thiết kế phần mềm cung cấp cách biểu diễn phần mềm có thể được xácnhận về chất lượng, là cách duy nhất mà chúng ta có thể chuyển hoá một cáchchính xác các yêu cầu của khách hàng thành sản phẩm hay hệ thống phầnmềm cuối cùng
Tên người/ Bộ phận phát/ Nhận tin
Tên người/ Bộ phận phát/ Nhận tin
Tên tiến trình xử lý
Tên tiến trình xử lý Tên dòng dữ liệu
Trang 35Lưu đồ quy trình thiết kế:
Trang 36Bắt đầu
Lập kế hoạch thiết kế
Thiết kế kiến trúc PM
Duyệt thiết kế kiến trúc
Duyệt thiết kế kiến trúc
Không duyệt
Hồ sơ thiết kế Thiết kế giao diện Thiết kế chương trình Thiết kế thủ tục Thiết kế dữ liệu Duyệt
Kết thúc
Trang 37Thiết kế cơ sở dữ liệu:
Thiết kế cơ sở dữ liệu logic từ các thông tin đầu ra
Bước 1: Xác định các thông tin đầu ra
- Liệt kế toàn bộ cá thông tin đầu ra
- Nội dung, khối lượng, tần suất và nơi nhận chúng
Bước 2: Xác định các tệp cần thiết cung cấp đủ dữ liệu cho việc tạo ratừng đầu ra
- Đầu tiên liệt toàn bộ các thuộc tính thành một danh sách
- Đánh dấu các thuộc tính lặp – là những thuộc tính có thể nhận nhiềugiá trị dữ liệu
- Đánh dấu các thuộc tính thứ sinh – là những thuộc tính được tính toán
ra hoặc được suy ra từ các thuộc tính khác
- Gạch chõn cỏc thuộc tính làm khoỏ chớnh cho các thông tin đầu ra
Thiết kế giao diện:
Những nguyên tắc cơ bản khi trình bày thông tin trên màn hìnhTheo Dumas và Galitz thỡ cú những nguyên tắc cơ bản cho việc trìnhbày thông tin trên màn hình như sau:
Đặt mọi thông tin gắn liền với một nhiệm vụ trên cùng một màn hình.Người sử dụng không phải nhớ thông tin từ màn hình này sang màn hình khác
Chỉ dẫn rừ cỏch thoỏt màn hình Đạt giữa các tiêu đề và xếp đặt thôngtin theo trục trung tâm
Nếu đầu ra gồm nhiều trang màn hình thì mỗi trang phải được đánh số thứ tự
Viết văn bản theo quy ước chung bằng cách sử dụng chữ in hoa, inthường, chữ gạch chõn… và ngắt câu hợp lý
Đặt tên đầu cho mỗi cột
Tổ chức các phần tử của danh sách theo trật tự quen thuộc trong quản lý
Trang 38Căn trỏi cỏc cột văn bản và căn phải các cột số, vị trí dấu thập phânthẳng hàng
Chỉ đặt màu khác biệt cho những thông tin quan trọng
Các quy tắc hữu ích vho việc thiết kế màn hình nhập liệu
Khi nhập dữ liệu từ tài liệu gốc, khuôn dạng màn hình nhập dữ liệuphải giống như tài liệu gốc
Nờn nhúm cỏc trường trong màn hình theo một trật tự có ý nghĩa, theo trật
tự tự nhiên, theo tần số sử dụng, theo chức năng hoặc theo tầm quan trọng
Người dùng không phải nhập các thông tin mà chương trình có thể tìmđược từ cơ sở dữ liệu hoặc tính toán được
Đặt tên các trường ở trên hoặc trước trường nhập
Đặt các giá trị ngầm định cho phù hợp
Sử dụng phím Tab để chuyển trường
5.4 Quy trình lập trình
Mục đích: Trên cơ sở của hộ sơ thiết kế, bộ phận lập trình tiến hành chi
tiết hoỏ cỏc sơ đồ khối hay các lưu đồ để biến thành các bản vẽ thiết kế sảnphẩm phần mềm nhưng bản thân công đoạn lập trình phải trung thành vớithiết kế
Lập trình là một tiến trình dịch thiết kế chi tiết thành chương trình baogồm tập hợp cỏc dũng mã lệnh mã máy tính có thể hiểu được Mỗi ngôn ngữlập trình có những giới hạn nhất định do vậy dựa trên các đặc trưng của ngônngữ, chúng ta sẽ chọn ngôn ngữ phù hợp
Dấu hiệu:
- Lập trình các thư viện chung
- Lập trình module
- Tích hợp hệ thống
Trang 39Kết thúc
Trang 405.5 Quy trinh test
Mục đích: Sau khi đã có công đoạn lập trình, các lập trình viên tiến
hành test chương trình và test toàn bộ phần mềm bao gồm test hệ thống, testtiêu chuẩn nghiệm thu nhằm đảm bảo có một phần mềm chất lượng cao
Quy trình test là quá trình đánh giá xem chương trình có phù hợpvới những đặc tả yêu cầu và đáp ứng mong đợi của khách hàng không Quátrình này phải được tiến hành thường xuyên sau mỗi giai đoạn sản xuất phầnmềm Quá trình này liên quan đến hai mục đích là “Phần mềm đáp ứng nhucầu khách hàng và quá trình sản xuất không sai sút”
Dấu hiệu:
- Lập kịch bản test
- Test hệ thống
- Test nghiệm thu
Lưu đồ quy trình test: