ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
THỰC TẬP CUỐI KHÓA
Sinh viên thực hiện :
Phạm Việt Sơn – 07520496
Tp Hồ Chí Minh, tháng 06 năm 2011
LỜI CẢM ƠN
Trong quá trình thực hiện bài báo cáo thực tập này, tôi đã may mắn nhận được sự
giúp đỡ từ nhiều cá nhân và đơn vị. Trước hết, tôi xin gửi lời tri ân sâu sắc nhất đến quý
thầy, cô khoa Công nghệ phần mềm cũng như quý thầy, cô của các khoa và bộ môn
trường Đại học Công Nghệ Thông Tin - ĐHQG HCM đã nhiệt tình truyền đạt kiến thức
và các kinh nghiệm thực tế.
Tôi cũng xin gửi lời cảm ơn đến Ban Giám đốc và Trung tâm đào tạp TMA, cùng
với sự hỗ trợ nhiệt tình của Phó giám đốc trung tâm TTC Phạm Đặng Bảo Việt, PM Trần
Phước Hậu, các giảng viên Bùi Bích Thị Quỳnh Trang, Lê Tuấn và các thành viên trong
nhóm bao gồm Nguyễn Thế Anh, Lê Minh Châu, Hà Phú Nguyên, Bùi Tá Hậu… đã có
chia sẻ, truyền đạt cả kiến thức, kinh nghiệm và hỗ trợ trong quá trình tôi thực tập tại
trung tâm.
Cuối cùng, tôi xin gửi lời chúc sức khỏe và thành công đến quý thầy, cô trường Đại
học Công Nghệ Thông Tin và các giảng viên hướng dẫn trung tâm TTC, chúc công ty đạt
được các bước phát triển đột phá trong tương lai.
Thành phố Hồ Chí Minh, ngày 28 tháng 06 năm 2011
Sinh viên thực hiện
Phạm Việt Sơn
NHẬN XÉT CỦA ĐƠN VỊ THỰC TẬP
Hiện nay chúng ta đang chứng kiến sự phát triển vượt bậc của các ngành khoa học ,đặc
biệt là công nghệ thông tin.Công nghệ thông tin đã và đang được ứng dụng trong nhiều
lĩnh vực. Các lĩnh vực cũng cần được điện tử hóa, thay về quản lý, lưu trữ bằng tay như
trước bây giờ phần việc này được đảm nhiệm bằng những ứng dụng, bằng những phần
mềm quản lý. Nên việc chọn đề tài cũng khá khó khăn, nhóm và giảng viên đã nêu ra
nhiều chủ đề để nhóm chọn như: xây dựng trang thương mại điện tử, mạng xã hội, phần
mềm về bảo mật ngân hàng… nhưng nhóm đã quyết định chọn và xây dựng trang mạng
xã hội. Do hiện nay mạng xã hội đã và đang được sử dụng bởi rất nhiều người. Mục tiêu
nhằm xây dựng mạng xã hội của người việt, có nhiều chức năng, giao diện thân thiện với
người việt hơn. Sau một thời gian bàn bạc nhóm đã quyết định lấy tên là ibee.
Mục tiêu trong đề tài này là xây dựng một web application trên nền tảng của J2EE cùng
những nền tảng mã nguồn mở phổ biến hiện nay là Hibernate, Spring. Các mảng như
Java, Hibernate, Spring tuy ra đời cũng khá lâu, và là những mã nguồn mở nhưng ở Việt
Nam chưa được phổ biến. Mục tiêu cụ thể là tìm hiểu công nghệ J2EE và 2 framework
Hibernate, Spring đồng thời xây dựng website mạng xã hội sử dụng những công cụ này.
7
Chương 1: GIỚI THIỆU VỀ TMA SOLUTIONS
1.1. Quá trình hình thành và phát triển của công ty TMA solution:
TMA được thành lập năm 1997 và nhanh chóng trở thành công ty phần mềm hàng đầu
Việt Nam với tốc độ tăng trưởng trung bình hàng năm là hơn 50%. Mục tiêu của TMA là
trở thành tập đoàn công nghệ cao hàng đầu và góp phần đưa tên Việt Nam vào bản đồ gia
công phần mềm thế giới.
TMA solution là công ty chuyên cung cấp các
• Dịch vụ và giải pháp phần mềm.
• Dịch vụ kĩ thuật: triển khai và kiểm tra mạng viễn thông, thiết kế và xây
dựng hệ thống mạng, giải pháp bảo mật.
• Đào tạo chuyên nghành cho kỹ sư CNTT và viễn thông.
Những công nghệ được công ty sử dụng:
• Viễn thông và mạng: PBX, call center software, soft switch, IMS, SIP, VoIP,
Asterisk, broadband/security router, firewall, network management software,
1.2. Tổ chức của TMA solutions
1.2.1. Sơ đồ tổ chức của công ty
Hình 1.1 – Sơ đồ tổ chức TMA solutions.
1.2.2. Chức năng và nhiệm vụ của các phòng ban
1.2.2.1. Hội đồng thành viên và Ban Giám đốc
Hội đồng thành viênbao gồm các thánh viên góp vốn, là cơ quan quyết định cao
nhất của công ty. Các chức năng chính của hội đồng thành viên là đảm bảo định hướng
phát triển, các quyết định mang tính chiến lược, đảm bảo quy mô, cơ cấu tổ chức và các
hoạt động quản lý đạt hiệu quả.
10
1.2.2.2. Trung tâm phát triển phần mềm
Cơ cấu của trung tâm phát triển phần mềm được xây dựng theo mô hình ma trận
bao gồm tổ chức theo Division và tổ chức theo chuyên môn. Trong đó, tổ chức theo
Division đóng vai trò chủ đạo và tổ chức theo chuyên môn đóng vai trò hỗ trợ.
1.2.2.3. Các bộ phận chức năng
Bộ phận Nhân sự – Đào tạo chịu trách nhiệm quản lý, tuyển dụng, khai thác, và
đào tạo nguồn nhân lực hợp lý và hiệu quả nhất.
Bộ phận Hành chính – Tổng hợp chịu trách nhiệm quản trị văn phòng, tài sản, văn
thư, và các thủ tục hành chánh trong công ty hợp lý và hiệu quả nhất.
Bộ phận Kế toán chịu trách nhiệm thu nhận, xử lý và cung cấp thông tin về toàn
bộ tài sản và sự vận động của tài sản nhằm cung cấp những thông tin hữu ích cho việc ra
các quyết định kinh tế và đánh giá hiệu quả các hoạt động trong doanh nghiệp.
Bộ phận Quản trị tài chính có trách nhiệm tổng hợp, phân tích, đánh giá thực trạng
về tài chính; đề xuất và thực hiện các chiến lược tài chính ngắnvà dài hạn của công ty.
Bộ phận Đảm chịu trách nhiệm nghiên cứu, ban hành, hướng dẫn và đảm bảo thực
hiện các chính sách chất lượng, mục tiêu chất lượng của công ty.
Bộ phận Quản trị hệ thống chịu trách nhiệm quản trị hệ thống thông tin trong công
ty, hỗ trợ hiệu quả cho hoạt động của các trung tâm, bộ phận, phòng, ban trong công ty.
Bộ phận Truyền thông – Văn hóa chịu trách nhiệm cố vấn, hoạch định chiến lược
đối nội, đối ngoại của công ty nhằm mục đích xây dựng thành công hình ảnh của công ty.
2.1.2. Ứng dụng kinh doanh
Những công nghệ sử dụng:
• Ngôn ngữ lập trình: C/C++, Java, C#, ASP, ASP.NET, PHP, Perl, Ruby.
• Database: SQL Server, Oracle, MySQL, PostgreSQL.
• Middleware và Web Services: J2EE Framework, .Net framework, SOAP,
CORBA.
2.1.3. Phát triển những ứng dụng di động
Hơn 9 năm cung cấp những dịch vụ phát triển ứng dụng trên mobile.
Đội ngũ lớn: hơn 100 lập trình viên.
2.1.4. Microsoft Solutions
13
TMA là một Microsoft Gold Certified Partner từ năm 2007 và hơn 11 năm kinh
nghiệm trong các công nghệ của Microsoft.
2.1.5. Giải pháp mã nguồn mở
TMA Solutions có nhiều năm kinh nghiệm với các giải pháp nguồn mở. Căn cứ
vào nhu cầu khách hàng, đội ngũ của chúng tôi đã cung cấp nhiều giải pháp nguồn mở -
sử dụng được xây dựng trước các thành phần và các gói để rút ngắn thời gian phát triển,
tăng tính linh hoạt và tiết kiệm chi phí.
2.1.6. Giải pháp Java
TMA đã hơn 10 năm kinh nghiệm trong việc tận dụng các công nghệ Java để cung
cấp giải pháp phần mềm cho các khách hàng của chúng tôi. Chúng tôi cũng đã chuyển
thành công nhiều ứng dụng hiện có để môi trường Java cho khả năng mở rộng tốt hơn và
hiệu suất. Thông qua nhiều dự án thành công, chúng tôi đã xây dựng được một đội ngũ
gần 100 lập trình viên Java và các kiến trúc sư.
Công nghệ:
+ J2EE, J2SE, J2ME
+ JSP/Servlet, Javascript, JSF, Facelets.
+ Tag Libs, Java Beans, Custom Tags.
+ Ajax, JavaMail, JMS
+ Java Internationlization(i18n).
hướng tới một mục tiêu duy nhất của sự hài lòng của khách hàng. TUP thúc đẩy tính
thống nhất và hiệu quả trên tất cả các dự án TMA trong khi duy trì khả năng thích ứng
của chúng tôi để quá trình khách hàng và quyết định. .
Chúng tôi có một nhóm chuyên dụng QMS (Quality Management System) có hỗ trợ các
dự án và các phòng ban trong việc xác định và áp dụng các quy trình.
Với hệ thống cơ sở vật chất hoàn chỉnh, môi trường làm việc rộng rãi với 6 Lab.
Các công việc được thực hiện đều có quy trình, văn bản quản lý rõ ràng cũng như được
quản lý chặc chẽ về mặt thời gian. Ngoài ra khi làm việc tại TMA solutions nhân viên
không cảm thấy nhàm chán, gó bó vì hầu hết nhân viên tại công ty là những người trẻ khá
năng động, và đầy nhiệt huyết và tại công ty các hoạt động thể dục, thể thao cũng không
ngừng được đẩy mạnh.
Tại TMA, tỷ lệ nhân viên nghỉ việc hiện nay cực thấp, theo số liệu của phòng nhân sự
công ty. Chủ yếu người nghỉ việc là vì lý do năng lực hoặc bị kỷ luật. "Với những chính
sách ưu đãi gần đây như bảo hiểm nhân thọ, bảo hiểm tai nạn, môi trường làm việc thân
thiết của gia đình khó mà chia tay công ty", anh Phan Thanh Hải, một kỹ thuật viên vừa
trở lại TMA sau thời gian nghỉ chữa bệnh, cho biết. Thưởng
Trong tiến trình thực hiện dự án, nếu nhóm phát triển hoàn thành xuất sắc các yêu cầu
nghiệp vụ và làm hài lòng khách hàng, khách hàng có thể khen thưởng. Các khoản
thưởng này sẽ được chia cho các thành viên của dự án tùy theo đóng góp của mỗi người
và nhận xét của các cấp quản lý.
Thưởng:
Hằng tháng công ty đều có quy chế đánh giá, những kết quả của một nhân viên, cứ
như vậy đến cuối năm công ty lấy những kết quả đó để đánh giá nhân viên, cụ thể nếu
17
nhân viên làm việc tích cực, công việc và số project tăng đồng nghĩa với việc lương và
chức vụ sẽ tăng theo. Chính điều này làm động lực cho nhân viên phấn đấu để tiến thân,
tạo môi trường cạnh tranh trong công ty, đồng thời giúp tạo không khí cạnh tranh đưa
công ty tới những đột phá mới.
Cơ hội đi nước ngoài: TMA có 5 văn phòng đại diện ở trên thế giới:
• Canada: Ottawa
Chức Năng của thành viên
Đây là phần mềm website mạng xã hội nên có đầy đủ các chức năng của một mạng xã
hội hoàn chỉnh. Mọi người có thể đăng kí làm thành viên của mạng xã hội bằng cách
đăng kí thông tin của mình, sau đó hệ thống sẽ lưu thông tin thành viên. Để sử dụng
người dùng phải đăng nhập. Cụ thể các chức năng của người sử dụng:
+ Đăng kí thành viên mới.
+ Cập nhật thông tin của thành viên.
+ Tìm thông tin của thành viên.
+ Liệt kê bạn.
Chức Năng đăng tin
Chức năng đăng tin cũng là chức năng cơ bản của một mạng xã hội. iBee cho phép
đăng tin, cũng như chia sẽ thông tin với những thành viên khác, ngoài ra có thể đăng hình
lên cho phép chúng ta có thể chia sẽ những khoảnh khắc khó quên một cách nhanh nhất
có thể đến với mọi người.
Chức Năng bình luận
Sau khi đăng tin các thành viên có thể bình luận về tin vừa đăng, bình luận, chia
sẽ suy nghĩ, ý kiến về vấn đề đó.
Chức Năng đăng quảng cáo
Website còn cung cấp chức năng đăng quảng cáo, các cơ quan đơn vị muốn
cho mọi người biết thông tin về mình có thể liên lạc với admin để có thể đăng
20
thông tin quảng cáo. Mạng xã hội là nơi nhiều người truy cập chính vì vậy rất
thuận lợi để quảng cáo hình ảnh của bạn.
3.2. Nội dung công việc được phân công trong dự án
Là thành viên trong nhóm, công việc của tôi là tìm hiểu công nghệ và ứng dụng công
nghệ đó vào để xây dựng website. Việc tiếp cận công nghệ đòi hỏi tính tỉ mỉ, và mất
nhiều thời gian. Tìm hiểu kiến trúc cũng như cách hoạt động của nó, đồng thời xây dựng
ứng dụng trên nó trong một khoảng thời gian rất ngắn quả thực rất khó khăn.
Nội dung cụ thể:
Hibernate: kiến trúc và cách mapping từ đối tượng với các table trong
tục thao tác đồng thời có thể sao lưu xuống database. JSON và AJAX
được sử dụng trong project để thực hiện việc đăng tin và comment, khi
người dùng đăng 1 tin trên trang cá nhân của mình thì nội dụng này được
hiển thị ngay trên trang cá nhân mà không load lại toàn bộ trang. Khi
người dùng thực hiện đăng tin, nội dung của tin sẽ được serialize theo
chuẩn của JSON và được gởi tới server, nội dung này được server xử lý và
lưu xuống database. Ở trên client, chúng ta sử dụng jquery để thêm những
tab để hiển thị nội dung của tin vừa đăng. Comment tương tự như vậy.
22
• Tìm hiểu các module trong phần mềm, tham gia phân tích thiết kế database
của phần mềm. Các thao tác trong MySQL.
• Tìm hiểu và học cách tạo phần giao diện web cho phần mềm.
• Tiếp nhận các yêu cầu từ BA (Business Analysist) để tìm hiểu và xây dựng
mới các module.
• Viết báo cáo công việc hàng ngày.
3.3. Kết quả đạt được
Trong thời gian thực tập tại TTC tôi đã năng cao đáng kể khả năng chuyên môn
của mình về việc lập trình, đặc biệt là khả năng làm việc trên môi trường web vì dự án
được triển khai trên jsp đựa trên nền tảng J2EE, hiểu và có thể làm việc với Hibernate và
Spring framework. Được trãi nghiệm dự án thực tế, và áp dụng được các kiến thức đã học
vào dự án thực, hiểu thêm và vận dụng được qui trình phát triển phần mềm.
Các kỹ năng làm mềm như: kỹ năng giao tiếp, kỹ năng viết email, kỹ năng quản lý
thời gian, kỹ năng làm việc nhóm, cách giải quyết vấn đề cũng được nâng cao đáng kể
trong quá trình thực tập tại TTC. Xây dựng được mối quan hệ tốt đẹp với các đồng
nghiệp tại công ty.
Đối với sinh viên việc làm việc tùy hứng chính là một yếu điểm lớn. Đến với
TMA Solutions tôi cũng đã trao dồi được tác phong công nghiệp trong công việc, tuân
thủ nghiêm ngặt vấn đề thời gian trong công việc.
23
TÀI LIỆU THAM KHẢO