Xây dựng Website bán hàng điện máy

29 728 5
Xây dựng Website bán hàng điện máy

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG

“Xây dựng Website bán hàng điện máy”. LỜI NÓI ĐẦU ______ 0 0 0 ______ Ngày nay, công nghệ thông tin đã có những bước phát triển mạnh mẽ theo cả chiều rộng và sâu. Máy tính điện tử không còn là một thứ phương tiện quý hiếm mà đang ngày càng trở thành một công cụ làm việc và giải trí thông dụng của con người, không chỉ ở công sở mà còn ngay cả trong gia đình. Đứng trước vai trò của thông tin hoạt động cạnh tranh gay gắt, các tổ chức và các doanh nghiệp đều tìm mọi biện pháp để xây dựng hoàn thiện hệ thống thông tin của mình nhằm tin học hóa các hoạt động tác nghiệp của đơn vị. Hiện nay các công ty tin học hàng đầu thế giới không ngừng đầu tư và cải thiện các giải pháp cũng như các sản phẩm nhằm cho phép tiến hành thương mại hóa trên Internet. Thông qua các sản phẩm và công nghệ này, chúng ta dễ dàng nhận ra tầm quan trọng và tính tất yếu của thương mại điện tử. Với những thao tác đơn giản trên máy có nối mạng Internet bạn sẽ có tận tay những gì mình cần mà không phải mất nhiều thời gian. Bạn chỉ cần vào các trang dịch vụ thương mại điện tử, làm theo hướng dẫn và click vào những gì bạn cần. Các nhà dịch vụ sẽ mang đến tận nhà cho bạn. Ở Việt Nam cũng có rất nhiều doanh nghiệp đang tiến hành thương mại hóa trên Internet nhưng do những khó khăn về cơ sở hạ tầng như viễn thông chưa phát triển mạnh, các dịch vụ thanh toán điện tử qua ngân hàng chưa phổ biến nên chỉ dừng lại ở mức độ giới thiệu sản phẩm và tiếp nhận đơn đặt hàng thông qua web. Để tiếp cận và góp phần đẩy mạnh sự phổ biến của thương mại điện tử ở Việt Nam, em đã tìm hiểu và cài đặt “Website giới thiệu và bán hàng điện máy qua mạng” cho công ty TNHH Thương mại Dũng Tuyên. Trang 1 MỤC LỤC LỜI NÓI ĐẦU 1 Phần 1: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG Chương I: PHÂN TÍCH YÊU CẦU ĐỀ TÀI .3 I.1. Chức năng .3 I.2. Yêu cầu đặt ra cho hệ thống .3 Chương II: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG .5 II.1. Khảo sát hiện trạng .5 II.2. Sơ đồ phân rã chức năng 6 II.3. Sơ đồ luồng dữ liệu mức khung cảnh 7 II.4. Sơ đồ luồng dữ liệu mức đỉnh 8 II.5. Sơ đồ luồng dữ liệu mức dưới đỉnh .9 II.6. Mô hình thực thể liên kết 14 II.7. Danh sách các bảng dữ liệu 15 Phần 2: CÁC KỸ THUẬT VÀ CÔNG CỤ LẬP TRÌNH Chương I: TÌM HIỂU CÔNG NGHỆ ASP .18 I.1. ASP là gì ? 18 I.2. Mô hình hoạt động của ASP 18 I.3. Cấu trúc của một tập tin ASP .18 I.4. Các đối tượng trong ASP .18 I.5. Các Component của ASP .19 I.6. ASP và cơ sở dữ liệu 19 ChươngII: NGÔN NGỮ LẬP TRÌNH VBSCRIPT 20 II.1. Giới thiệu về VBSCRIPT .20 II.2. Các kiểu dữ liệu của VBSCRIPT .20 II.3. Biến trong VBSCRIPT .20 II.4. Hằng trong VBSCRIPT 20 II.5. Các toán tử trong VBSCRIPT 20 II.6. Các hàm có sẵn và thông dụng của VBSCRIPT 21 Phần 3: CÀI ĐẶT HỆ THỐNG Chương I: YÊU CẦU HỆ THỐNG VÀ CÀI ĐẶT CHƯƠNG TRÌNH 22 I.1. Yêu cầu hệ thống 22 I.2. Cài đặt chương trình .22 Chương II: THIẾT KẾ GIAO DIỆN VÀ HƯỚNG DẪN SỬ DỤNG .23 II.1. Một số giao diện phần khách hàng .23 II.2. Một số giao diện phần quản lý .25 ĐÁNH GIÁ KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI .27 KẾT LUẬN .28 TÀI LIỆU THAM KHẢO .29 Phần 1: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG Trang 2 Chương I: PHÂN TÍCH YÊU CẦU ĐỀ TÀI I.1. CHỨC NĂNG Đây là một website nhằm bán và giới thiệu rộng rãi các mặt hàng của công ty đến cho người tiêu dùng với các chi tiết mặt hàng cũng như giá cả một cách chính xác. Có những chức năng sau: - Cho phép nhập hàng vào CSDL. - Hiển thị danh sách các mặt hàng theo từng loại ( bao gồm: hình ảnh, giá cả, thời gian bảo hành, mô tả chức năng). - Hiển thị hàng hóa mà khách hàng đã chọn để mua. - Hiển thị đơn đặt hàng của khách hàng. - Cung cấp khả năng tìm kiếm, khách hàng có thể truy câp từ xa để tìm kiếm xem mặt hàng đặt mua. - Cho phép quản lý đơn đặt hàng. - Cập nhập mặt hàng, loại mặt hàng, khách hàng, nhà cung cấp. - Thống kê mặt hàng, khách hàng, đơn dặt hàng, doanh thu. - Cho phép hệ thống quản trị mạng từ xa. I.2. YÊU CẦU ĐẶT RA CHO HỆ THỐNG I.2.1. Về mặt thiết bị và phần mềm - Một máy làm Web Server. - Hệ điều hành hỗ trợ cho chương trình là Windows 2000. - Hệ cơ sở dữ liệu được dùng là MS SQL 2000. - Các phần mềm khác dùng để lập trình và thiết kế Web. I.2.2. Yêu cầu trang Web Hệ thống gồm có hai phần: a. Phần thứ nhất dành cho khách hàng: Khách hàng là những người có nhu cầu mua sắm hàng hóa. Họ sẽ tìm kiếm các mặt hàng cần thiết từ hệ thống và đặt mua các mặt hàng này. Vì thế trang web phải thỏa mản các chức năng sau: Thứ nhất: Hiển thị danh sách các mặt hàng của công ty để khách hàng có thể xem và lựa chọn. Thứ hai: Cung cấp chức năng tìm kiếm mặt hàng. Với nhu cầu của người sử dụng khi bước vào trang web thương mại là tìm kiếm các mặt hàng mà họ cần và muốn mua. Đôi lúc cũng có nhiều khách hàng vào website này mà không có ý định mua hay không biết mua gì thì yêu cầu đặt ra cho hệ thống là làm thế nào để khách hàng có thể tìm kiếm nhanh và hiệu quả các mặt hàng mà họ cần tìm. Thứ ba: Sau khi khách hàng lựa chọn xong những mặt hàng cần đặt mua thì hệ thống phải có chức năng hiển thị đơn đặt hàng để khách hàng nhập vào những thông tin cần thiết, tránh những đòi hỏi hay những thông tin yêu cầu quá nhiều từ phía khách hàng, tạo cảm giác thoải mái, riêng tư cho khách hàng. Ngoài ra, còn có một số chức năng như: đăng kí, đăng nhập. Khách hàng có thể thay đổi mật khẩu của mình. Khi bạn quan tâm đến thông tin về website như: tin tức hay giá cả. Bạn có thể nhập địa chỉ email của bạn vào. Lúc đó bạn có thể nhận được thông tin cập nhật từ site. Trang 3 b. Phần thứ hai dành cho nhà quản lý: Là người làm chủ ứng dụng, có quyền kiểm soát mọi hoạt động của hệ thống. Người này được cấp một username và password để đăng nhập vào hệ thống thực hiện những chức năng của mình. Nếu như quá trình đăng nhập thàng công thì nhà quản lý có những chức năng sau: Thứ nhất: Chức năng quản lý cập nhật (thêm, xóa, sửa) các mặt hàng trên trang web, việc này không phải dễ. Nó đòi hỏi sự chính xác. Thứ hai: Tiếp nhận và kiểm tra đơn đặt hàng của khách hàng. Hiển thị đơn đặt hàng hay xóa bỏ đơn đặt hàng. Thứ ba: Thống kê các mặt hàng, khách hàng, nhà cung cấp, thống kê doanh thu. Ngoài các chức năng nêu trên thì trang web phải được trình bày sao cho dễ hiểu, giao diện mang tính dễ dùng, đẹp mắt và làm sao cho khách hàng thấy được những thông tin cần tìm, cung cấp những thông tin quảng cáo thật hấp dẫn, nhằm thu hút sự quan tâm về công ty mình và có cơ hội sẽ có nhiều người tham khảo nhiều hơn. Điều quan trọng trong trang web mua bán trên mạng là phải đảm bảo an toàn tuyệt đối những thông tin liên quan đến người dùng trong quá trình đặt mua hay thanh toán. Đồng thời trang web còn phải có tính dễ nâng cấp, bảo trì, sửa chữa khi cần bổ sung, cập nhật những tính năng mới. Trang 4 Chương II: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG II.1. KHẢO SÁT HIỆN TRẠNG Sau khi khảo sát hiện trạng, em nắm bắt được các thông tin sau: Quản lý khách hàng: mỗi khách hàng được quản lý các thông tin sau đây: Họ, tên, địa chỉ, điện thoại, fax, email, tên đăng nhập, mật khẩu. Ngoài ra, nếu kháchhàng là công ty hay cơ quan thì quản lý thêm tên công ty/cơ quan. Quản lý mặt hàng: mỗi mặt hàng được quản lý những thông tin: Tên mặt hàng, đơn giá, số lượng, thời gian bảo hành, hình ảnh, mô tả. Quá trình đặt hàng của khách hàng: Khách hàng xem và lựa chọn mặt hàng cần mua. Trong quá trình lựa chọn, bộ phận bán hàng sẽ trực tiếp trao đổi thông tin cùng khách hàng, chịu trách nhiệm hướng dẫn. Sau khi lựa chọn xong, bộ phận bán hàng sẽ tiến hành lập đơn đặt hàng của khách. Sau khi tiếp nhận yêu cầu trên, bộ phận này sẽ làm hóa đơn và thanh toán tiền. Trong trường hợp nhiều công ty, trường học, các doanh nghiệp, .có yêu cầu đặt hàng, mua với số lượng lớn thì cửa hàng nhanh chóng làm phiếu đặt hàng, phiếu thu có ghi thuế cho từng loại mặt hàng và giao hàng hàng theo yêu cầu. Quá trình đặt hàng với nhà cung cấp: Hàng ngày nhân viên kho sẽ kiểm tra hàng hóa trong kho và đề xuất lên ban điều hành cần xử lý về việc những mặt hàng cần nhập. Trong quá trình đặt hàng thì ban điều hành sẽ có trách nhiệm xem xét các đề xuất về những mặt hàng yêu cầu và quyết định loại hàng, số lượng hàng cần đặt và phương thức đặt hàng với nhà cung cấp. Việc đặt hàng với nhà cung cấp được thực hiện thông qua địa chỉ trên mạng hay qua điện thoại, fax. Quá trình nhập hàng: Sau khi nhận yêu cầu đặt hàng từ công ty, nhà cung cấp sẽ giao hàng cho công ty có kèm theo hóa đơn hay bảng kê chi tiết các loại mặt hàng. Thủ kho sẽ kiểm tra lô hàng của từng nhà cung cấp và trong trường hợp hàng hóa giao không đúng yêu cầu đặt hàng hay kém chất lượng về hệ thống máy móc, .thì thủ kho sẽ trả lại nhà cung cấp và yêu cầu giao lại những mặt hàng bị trả đó. Tiếp theo thủ kho sẽ kiểm tra chứng từ giao hàng để gán giá trị thành tiền cho từng loại sản phẩm. Những loại hàng hóa này sẽ được cung cấp một mã số và được cập nhật ngay vào giá bán. Sau khi nhập xong chứng từ giao hàng, nhân viên nhập kho sẽ in một phiếu nhập để lưu trữ trong hồ sơ. Từ quy trình thực tiễn nêu trên, ta nhận thấy rằng hệ thống được xây dựng cho bài toán đặt ra chủ yếu phục vụ cho hai đối tượng: Khách hàng và nhà quản lý. Khách hàng: là những người có nhu cầu mua sắm hàng hóa. Khác với việc đặt hàng trực tiếp tại công ty, khách hàng phải hoàn toàn tự thao tác thông qua từng bước cụ thể để có thể mua được hàng. Trên mạng, các mặt hàng được sắp xếp và phân theo từng loại mặt hàng giúp cho khách hàng dễ dàng tìm kiếm. Trong hoạt động này, khách hàng chỉ cần chọn một mặt hàng nào đó từ danh mục các mặt hàng thì những thông tin về mặt hàng đó sẽ hiển thị lên màn hình như: hình ảnh, đơn giá, mô tả, .và bên cạnh là trang liên kết để thêm hàng hóa vào giỏ hàng. Đây là giỏ hàng điện tử mà trong đó chứa các thông tin về hàng hóa lẫn số lượng khách mua và hoàn toàn được cập nhật trong giỏ. Khi khách hàng muốn đặt hàng thì hệ thống hiển thị trang xác lập đơn đặt hàng cùng thông tin về khách hànghàng hóa. Cuối cùng là do khách hàng tùy chọn đặt hay không. Trang 5 Nhà quản lý: Là người làm chủ hệ thống, có quyền kiểm soát mọi hoạt động của hệ thống. Nhà quản lý được cấp một username và password để đăng nhập vào hệ thống thực hiện những chức năng của mình. Nếu như quá trình đăng nhập thàng công thì nhà quản lý có thể thực hiện những công việc: quản lý cập nhật thông tin các mặt hàng, tiếp nhận đơn đặt hàng, kiểm tra đơn đặt hàng và xử lý đơn đặt hàng. Thống kê các mặt hàng bán trong tháng, năm, thống kê khách hàng, nhà cung cấp, thống kê tồn kho, thống kê doanh thu. Khi có nhu cầu nhập hàng hóa từ nhà cung cấp thì tiến hành liên lạc với nhà cung cấp để đặt hàng và cập nhật các mặt hàng này vào cơ sở dữ liệu, . II.2. SƠ ĐỒ PHÂN RÃ CHỨC NĂNG Trang 6 TK khách hàng TK mặt hàng TK doanh thu TK ĐĐH HỆ THỐNG QUẢN LÝ Đặt hàng Cập nhật Thống kêLập HĐ Nhập hàng CN khách hàng CN mặt hàng CN nhà cung cấp CN đơn đặt hàng TC theo tên MH TC theo tên LMH Kiểm tra KH Tiếp nhận ĐĐH Trả tiền Giao hàng Tra cứu MH Xử lý MH KT đặt hàng Ghi nhận KH Đăng nhập Đăng ký II.3. SƠ ĐỒ LUỒNG DỮ LIỆU MỨC KHUNG CẢNH Trang 7 HỆ THỐNG QUẢN LÝ BÁN HÀNG QUA MẠNG Yêu cầu đặt hàng Chấp nhận hoặc không Y/c lập hóa đơn Hóa đơn được lập Y/c nhập mặt hàng Y/c cung cấp mặt hàng Mặt hàng được cung cấp Kết quả yêu cầu Y/c cập nhật Y/c thống kê kết quả cập nhật thống kê KHÁCH HÀNG NHÀ QUẢN LÝ NHÀ CUNG CẤP II.4. SƠ ĐỒ LUỒNG DỮ LIỆU MỨC ĐỈNH Trang 8 Y/c thống kê Kết quả thống kê Y/c cập nhật KQ cập nhật Nhập tên và MK TT sai nhập lại Yêc cầu nhập MH KQ yêu cầu Yêc cầu cung cấp MH Chấp nhận cung cấp Yêu cầu lập hóa đơn Hóa đơn được lập Yêu cầu lập hóa đơn Hóa đơn được lập Y/c đặt hàng chấp nhận hoặc từ chối Thông tin Admin Khách hàng Nhà cung cấp Nhà quản lý 2. Lập hóa đơn Mặt hàng 1. Đặt hàng Đơn đặt hàng 5. Nhập hàng Đăng nhập HTQL 3. Cập nhật 4. Thống kê Thông tin KH II.5. SƠ ĐỒ LUỒNG DỮ LIỆU MỨC DƯỚI ĐỈNH PHÂN RÃ CHỨC NĂNG 1 “ Đặt hàng ” ĐĐHCT: Đơn đặt hàng chi tiết Trang 9 Thông tin sai, nhập lại Y/c đặt hàng Khách hàng 1.1 Kiểm tra KH 1.3 Tra cứu MH 1.5 KT đặt hàng 1.4 Xử lý MH Thông tin KH 1.2 Ghi nhận KH ĐĐHCT Mặt hàng Đơn đặt hàng Tên đăng nhập, mật khẩu Tên đăng nhập, mật khẩu Danh sách MH Thông tin các MH đặt mua Mặt hàng lựa chọn PHÂN RÃ CHỨC NĂNG 1.1 “ Kiểm tra khách hàng ” PHÂN RÃ CHỨC NĂNG 1.3 “ Tra cứu mặt hàng ” Trang 10 Tên và mật khẩu đăng nhập TT sai, nhập lại Khách hàng 1.1.1 Đăng nhập 1.1.2 Đăng ký Thông tin KH Yêu cầu đăng ký DS mặt hàng hay TT không tìm thấy Y/c tc theo tên LMH DS mặt hàng hay TT không tìm thấy Khách hàng 1.3.1 Tra cứu theo tên MH 1.3.2 Tra cứu theo tên LMH Loại mặt hàng Mặt hàng Y/c tra cứu theo tên MH [...]... chương trình: - Giới thiệu các mặt hàng kinh doanh của công ty đến với khách hàng - Cho phép tra cứu mặt hàng khi khách hàng có nhu cầu tìm hàng - Cho phép khách hàng thực hiện việc đặt hàng qua mạng - Tiếp nhận đơn đặt hàng của khách hàng - Lập hóa đơn - Cập nhật: Mặt hàng, khách hàng, nhà cung cấp, đơn đặt hàng - Thống kê: Mặt hàng bán trong tháng, năm, khách hàng, đơn đặt hàng, doanh thu, tồn kho + Tính... loại mặt hàng, khách hàng, nhà cung cấp, đơn đặt hàng, …Gồm có các xử lý sau: - Cập nhật mặt hàng: Thêm, Xóa , Sửa - Cập nhật loại mặt hàng: Thêm, Xóa, Sửa - Cập nhật đơn đặt hàng: Xóa, Sửa - Cập nhật nhà cung cấp: Thêm, Xóa, Sửa - Cập nhật khách hàng: Xóa, Sửa - Xử lý đơn hàng - Thống kê hàng tồn, khách hàng, đơn đặt hàng - Thống kê doanh thu theo tháng, năm - Thống kê mặt hàng bán trong tháng, năm... cho khách hàng về công ty, các mặt hàng kinh doanh của công ty và hỗ trợ cho việc đặt hàng qua mạng khi khách hàng có nhu cầu Phần này gồm có các chức năng xử lý sau: - Đăng nhập - Đăng ký thông tin khách hàng - Tra cứu hàng hóa theo yêu cầu Nhập: Tên mặt hàng hoặc tên loại mặt hàng hoặc mã mặt hàng hoặc thông tin khác Xuất: Danh sách các mặt hàng cần tìm hoặc thông tin không tìm thấy - Chọn hàng đưa...PHÂN RÃ CHỨC NĂNG 1.5 “ Kiểm tra đặt hàng ” Thông tin đơn đặt hàng 1.5.1 Tiếp nhận đơn đặt hàng Thông tin sai ĐĐHCT Phương thức thanh toán Khách hàng 1.5.2 Trả tiền Đơn đặt hàng Thời gian giao hàng TT giao hàng cho quí khách 1.5.3 Giao hàng Mặt hàng Trang 11 PHÂN RÃ CHỨC NĂNG 3 “ Cập nhật ” 3.1 Cập nhật KH TT cập nhật khách hàng Thông tin KH Tên và mật khẩu Nhà quản lý Y/c cập nhật... giỏ hàng - Xử lý mặt hàng đã chọn: Xóa , cập nhật số lượng, tính số tiền mà khách hàng cần thanh toán Thành tiền của một mặt hàng = Số lượng * Đơn giá bán Tổng số tiền mà khách hàng phải thanh toán = ∑ Thành tiền - Kiểm tra đặt hàng và lập đơn đặt hàng + Phần thứ hai hỗ trợ cho nhà quản lý: Phần này chủ yếu hỗ trợ cho việc quản lý, cập nhật, thống kê các thông tin cần thiết như: mặt hàng, loại mặt hàng, ... KHÁCH HÀNG Màn hình giao diện “Giới thiệu mặt hàng Màn hình giao diện “Giỏ hàng Trang 23 Màn hình giao diện “Đăng nhập” Màn hình giao diện “Đăng ký thông tin khách hàng Trang 24 II.2 MỘT SỐ GIAO DIỆN PHẦN QUẢN LÝ Màn hình giao diện trang “Nhập thông tin mặt hàng Màn hình giao diện trang “Cập nhật mặt hàng Trang 25 Để theo dõi thông tin đơn đặt hàng của khách hàng cũng như tình trạng đơn đặt hàng. .. triển ngày càng tăng của mạng máy tính thì việc thiết kế và cài đặt các ứng dụng cho người dùng là rất cần thiết Vì vậy ý tưởng giới thiệu và bán hàng điện máy qua mạng tuy không phải là mới nhưng phần nào cũng giúp cho khách hàng thuận tiện trong việc lựa chọn và mua hàng Hiện nay việc ứng dụng thương mại điện tử ở Việt Nam chỉ đáp ứng được một số vấn đề cơ bản về mua bán, chưa được linh hoạt Việc... Tính năng của chương trình: - Thông tin về khách hàng, mặt hàng, …được cập nhật kịp thời, chính xác - Giao diện thân thiện với người dùng - Do điều kiện, nên chương trình chỉ mới chạy thử trên máy đơn B Hướng phát triển đề tài + Cho phép khách hàng mua và thanh toán trực tiếp qua mạng + Hỗ trợ thực hiện in ấn trên Web + Xây dựng hệ thống cho phép công ty mua hàng trực tiếp qua mạng Trang 27 KẾT LUẬN Tóm... bán, chưa được linh hoạt Việc ứng dụng này đòi hỏi phải tốn nhiều thời gian và tiền bạc Với kiến thức nền tảng đã được học ở trường và bằng sự nỗ lực của mình, em đã hoàn thành đề tài Xây dựng Website bán hàng điện máy Mặc dù đã cố gắng và đầu tư rất nhiều nhưng do thời gian có hạn và không được thực hiện trên Internet nên đề tài còn nhiều hạn chế Em rất mong nhận được sự thông cảm và góp ý của quí... Tên đăng nhập, Ngày đặt hàng, Ngày giao hàng, HTTT, Tình trạng ĐĐH) STT 1 2 3 4 5 6 THUỘC TÍNH Mã ĐĐH Tên đăng nhập Ngày đặt hàng Ngày giao hàng HTTT Tình trạng ĐĐH KIỂU DỮ LIỆU Int(4) Varchar(20) Datetime Datetime Bit Bit GHI CHÚ Khóa chính (không thể rỗng ) Khóa ngoại Không thể rỗng Không thể rỗng Không thể rỗng Không thể rỗng Bảng 6: NHÀ CUNG CẤP (Mã NCC, Tên NCC, Địa chỉ NCC, Điện thoại NCC, Fax NCC, . Xây dựng Website bán hàng điện máy . LỜI NÓI ĐẦU ______ 0 0 0 ______ Ngày nay, công nghệ thông. phép quản lý đơn đặt hàng. - Cập nhập mặt hàng, loại mặt hàng, khách hàng, nhà cung cấp. - Thống kê mặt hàng, khách hàng, đơn dặt hàng, doanh thu. - Cho

Ngày đăng: 27/04/2013, 11:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan