LỜI CAM ĐOAN
Tôi xin cam đoan luận văn này là sản phẩm nghiên cứu của tôi dƣới sự hƣớng dẫn
của TS. Nguyễn Hồng Quang – Bộ môn Kỹ thuật Máy tính – Viện Công nghệ
Thông tin và Truyền thông – Trƣờng Đại học Bách Khoa Hà Nội.
Các kết quả, số liệu trong luận văn đƣợc điều tra, khảo sát một cách trung thực,
chính xác, tuân thủ mọi quy định của đơn vị đƣợc khảo sát.
Tôi xin chịu mọi trách nhiệm về nghiên cứu của mình.
Tác giả
Trần Mạnh Hùng
1
LỜI CẢM ƠN
Tôi xin bày tỏ lòng biết ơn sâu sắc tới Thầy giáo, TS. Nguyễn Hồng Quang –
Bộ môn Kỹ thuật máy tính – Viện Công nghệ Thông tin và Truyền thông – Đại học
Bách Khoa Hà Nội đã tận tình hƣớng dẫn tôi trong thời gian thực hiện luận văn.
Mặc dù trong quá trình thực hiện luận văn có những giai đoạn không đƣợc thuận lợi,
nhƣng nhờ sự khuyến khích, quan tâm chỉ bảo và những ý kiến đóng góp quý báu
của Thầy, tôi mới có thể hoàn thành luận văn này.
Tôi xin chân thành cảm ơn tập thể các thầy giáo, cô giáo đang công tác và
giảng dạy tại Viện Công nghệ Thông tin và Truyền thông – trƣờng Đại học Bách
Khoa Hà Nội đã tận tình giảng dạy, truyền đạt cho tôi những kiến thức quý báu
trong suốt những năm học vừa qua.
Tôi cũng xin gửi lời cảm ơn sâu sắc tới anh, chị, em và các bạn đồng nghiệp
đang công tác tại Đài Truyền hình Việt Nam đã giúp đỡ và tạo điều kiện cho tôi tập
trung nghiên cứu, khảo sát và thực hiện đề tài luận văn.
Sau cùng tôi xin gửi lời biết ơn sâu sắc tới gia đình, bạn bè đã luôn ủng hộ tôi
trong suốt quá trình học tập cũng nhƣ thực hiện luận văn.
có thể phát triển, hoàn thiện hơn.
Xin chân thành cảm ơn !
Ngƣời Thực Hiện
Trần Mạnh Hùng
3
MỤC LỤC
LỜI CAM ĐOAN ........................................................................................................... 1
LỜI CẢM ƠN ................................................................................................................. 2
LỜI MỞ ĐẦU ................................................................................................................. 3
MỤC LỤC ....................................................................................................................... 4
THUẬT NGỮ VÀ VIẾT TẮT ........................................................................................ 7
DANH MỤC HÌNH VẼ ................................................................................................ 11
CHƢƠNG 1. GIỚI THIỆU ĐỀ TÀI ............................................................................. 13
1.1. Nội dung đề tài ....................................................................................................... 13
1.2. Phạm vi và đối tƣợng áp dụng ............................................................................... 13
1.3. Lý do lựa chọn và mục tiêu của đề tài ................................................................... 14
CHƢƠNG 2. CƠ SỞ LÝ THUYẾT VÀ CÔNG NGHỆ .............................................. 16
2.1. Công nghệ Video Streaming .................................................................................. 16
2.1.1. Khái niệm chung .............................................................................................. 16
2.1.2. Windows Media Services ................................................................................ 17
2.2. Hệ quản trị cơ sở dữ liệu SQL Server 2008 ........................................................... 18
2.3. Công cụ phân tích và thiết kế hệ thống .................................................................. 20
2.3.1. Giới thiệu POWER DESIGNER ..................................................................... 20
2.3.2. Kết nối với một cơ sở dữ liệu .......................................................................... 22
2.4. Ngôn ngữ lập trình ................................................................................................. 23
2.4.1. ASP.NET ......................................................................................................... 23
2.4.2. Ngôn ngữ lập trình C# ..................................................................................... 28
4.5.1. Biều đồ luồng dữ liệu mức 0 ........................................................................... 62
4.5.2. Biểu đồ luồng dữ liệu mức 1 ........................................................................... 63
4.6. Thiết kế dữ liệu (mô hình E-R) .............................................................................. 68
4.6.1. Liệt kê, chính xác, chọn lọc thông tin .............................................................. 68
4.6.2. Xác định thực thể và thuộc tính ....................................................................... 68
4.6.3. Xác định mối quan hệ và thuộc tính ................................................................ 69
4.6.4. Vẽ biểu đồ và rút gọn....................................................................................... 71
4.7. Thiết kế - Mô hình Lôgic ....................................................................................... 72
4.8. Thiết kế - Mô hình Vật Lý ..................................................................................... 72
5
CHƢƠNG 5. THIẾT KẾ PHẦN MỀM ........................................................................ 77
5.1. Thiết kế quy trình login theo các user phân cấp .................................................... 78
5.2. Streaming Video..................................................................................................... 84
5.3. Thiết kế theo quy trình duyệt chƣơng trình ........................................................... 88
KẾT LUẬN ................................................................................................................... 96
TÀI LIỆU THAM KHẢO ............................................................................................. 97
6
THUẬT NGỮ VÀ VIẾT TẮT
Viết Tắt
Viết Đầy Đủ
ASF
BPMN
Business Process Model and Notation
BPM
Business Process Model
BPEL
Business Process Execution Language
CLR
Common Language Runtime
CDM
Conceptual Data Model
CDN
Content Delivery Network
DVD
Digital Video Disc
DV
ECMA
European Computer Manufacturers Association
FTP
File Transfer Protocol
FEM
Free Model
GUI
Graphical User Interface
HDD
Hard Disk Drive
HTTP
HyperText Transfer Protocol
HTML
HyperText Makeup Language
HDTV
MAM
Media Asset Management
MIDI
Musical Instrument Digital Interface
MXF
Material Exchange Format
MPEG
The Moving Picture Experts Group
MMS
Microsoft Media Server protocol
8
MVC
Model View Control
MSIL
Microsoft Intermediate Language
Over The Top Content
OOM
Object Oriented Model
PAL
Phase Alternative Line
QTVR
QuickTime Virtual Reality
RM
Real Media
RTP
Real-time Transport Protocol
RTSP
Real Time Streaming Protocol
RDBMS
Relational Database Management System
Software Development Kit
SQL
Structured Query Language
SDI
Serial Digital Interface
SMP
Symmetric Multiprocessing
SWF
ShockWave Flash
SVT
Scalable Video Technology
TV
Television
TTKT
Trung Tâm Kỹ Thuật
Danh Mục Hình Vẽ
Hình 2.1. Mô hình phát triển ứng dụng 3 lớp ........................................................... 25
Hình 2.2. Mô hình hoạt động lớp Presentation Layer .............................................. 26
Hình 2.3. Mô hình hoạt động lớp Business Layer..................................................... 27
Hình 2.4. Mô hình hoạt động lớp Data Access Layer ............................................... 28
Hình 2.5. Hình vẽ và ký hiệu quy ước của sơ đồ DFD ............................................. 31
Hình 2.6. Sơ đồ nhiều mức của DFD ........................................................................ 33
Hình 2.7. Quy tắc vẽ DFD (cột bên phải là vẽ đúng) ............................................... 34
Hình 3.1. Sơ đồ Quy trình sản xuất, duyệt chương trình phát sóng……………….36
Hình 3.2. Lịch phát sóng 1 tuần trong tháng ............................................................ 43
Hình 3.3. Phiếu nghiệm thu chương trình................................................................. 45
Hình 3.4. Mô hình hệ thống SAN của Trung tâm Kỹ thuật ....................................... 47
Hình 4.1. Sơ đồ tổng thể chức năng hệ thống và các modules có liên quan………50
Hình 4.2. Sơ đồ kiến trúc của hệ thống ..................................................................... 53
Hình 4.3. Sơ đồ ngữ cảnh hệ thống ........................................................................... 54
Hình 4.4. Biểu đồ phân rã chức năng ....................................................................... 57
Hình 4.5. Biểu đồ luồng dữ liệu mức 0 ..................................................................... 62
Hình 4.6. DFD mức 1: “Tác vụ biên tập viên” ........................................................ 63
Hình 4.7. DFD mức 1: “Tác vụ lãnh đạo Phòng” ................................................... 64
Hình 4.8. DFD mức 1: “Tác vụ lãnh đạo Ban” ....................................................... 65
Hình 4.9. DFD mức 1: “Tác vụ Phòng nội dung TKBT” ......................................... 66
Hình 4.10. DFD mức 1: “Tác vụ Thành viên Hội đồng duyệt” ............................... 67
Hình 4.11. Mô hình thực thể liên kết Entity - Relationship ...................................... 71
Hình 5.1. Mô hình UseCase của hệ thống …………………………………………78
Hình 5.2. Thiết kế quy trình đăng nhập .................................................................... 79
Hình 5.3. Mô hình hiển thị giao diện người dùng ..................................................... 82
Hình 5.4. Giao diện quản trị AdminUnit .................................................................. 83
Hình 5.5. Giao diện quản trị hệ thống AdminSystem................................................ 83
Hình 5.6. Giao diện người dùng ............................................................................... 83
quyền của mỗi ngƣời dùng.
1.2. Phạm vi và đối tƣợng áp dụng
Phạm vi áp dụng: Áp dụng cho Ban Thanh thiếu niên - VTV6 thông qua
mạng nội bộ của Đài. Hệ thống phần mềm cũng đƣợc thiết kế mở để có thể dễ dàng
nhân rộng việc ứng dụng cho các đơn vị khác trong Đài.
Đối tƣợng áp dụng:
-
Kỹ thuật viên dựng
-
Khối biên tập: Gồm có biên tập viên, phụ trách phòng, phụ trách ban.
-
Hội đồng duyệt: Hội đồng duyệt chƣơng trình, phòng nội dung – TKBT.
-
Phòng Tổng khống chế
13
1.3. Lý do lựa chọn và mục tiêu của đề tài
Trƣớc đây, trƣớc khi máy quay phim điện tử (camcorder) ra đời, việc ghi hình
di động cần đến hai dụng cụ: một máy quay phim điện tử và một máy ghi băng hình.
Hai thiết bị này sau nhiều phiên bản đƣợc thiết kế bởi các hãng khác nhau đã trở nên
nhỏ gọn hơn, dễ mang đi hơn, nhƣng khi ghi hình vẫn cần đến 2 ngƣời thực hiện.
VTV6 để giải quyết những bất cập còn tồn tại của phƣơng pháp kiểm duyệt cũ và
đáp ứng yêu cầu cấp bách về việc kiểm duyệt các chƣơng trình phát sóng dƣới dạng
file, loại bỏ dần băng từ Betacam ra khỏi quy trình sản xuất, tiến tới mô hình sản
xuất chƣơng trình hoàn toàn dựa trên file. Việc xây dựng hệ thống hỗ trợ duyệt
chƣơng trình qua mạng nhằm thay đổi dần dần phƣơng thức kiểm duyệt cũ, thực
hiện hiện đại hóa quy trình sản xuất, góp phần đẩy mạnh sử dụng công nghệ kỹ
thuật số trong công đoạn sản xuất chƣơng trình.
15
CHƢƠNG 2. CƠ SỞ LÝ THUYẾT VÀ CÔNG NGHỆ
2.1. Công nghệ Video Streaming
2.1.1. Khái niệm chung
Công nghệ streaming cho phép các multimedia server truyền đi qua mạng
Internet các dòng dữ liệu liên tiếp có thể giải nén và hiển thị ngay lập tức khi tới
phía ngƣời dùng. Để download về một đoạn phim ngắn cũng có thể mất tới vài phút
trong khi các dữ liệu video sử dụng công nghệ streaming chỉ mất vài giây để có thể
hiển thị. Streaming video tiết kiệm thời gian cho ngƣời dùng bằng cách sử dụng các
công nghệ giải nén kết hợp với player hiển thị dữ liệu đồng thời trong lúc vẫn tiếp
tục download.
Quá trình này đƣợc gọi là buffering và có thể đƣợc diễn giải nhƣ sau : thay vì
đƣợc gửi một lần duy nhất, dữ liệu streaming video sẽ đƣợc truyền đi thành các gói
nhỏ, ban đầu player sẽ lấy về một phần chia nhỏ đó của dữ liệu video trƣớc khi hiển
thị, đồng thời trong lúc hiển thị các gói dữ liệu còn lại sẽ lần lƣợt đƣợc lấy về để kịp
cho việc hiển thị tiếp theo.
Với công nghệ streaming, các nhà cung cấp dịch vụ có thể tạo, phân phối và
hiển thị các streaming video dƣới các định dạng của công nghệ streaming (nhƣ RM,
MOV và ASF). Streaming Video thƣờng đƣợc sử dụng trong lĩnh vực giải trí hoặc
dạy học, dùng để lƣu trữ các tuyển tập các file video hoặc các bài học, cung cấp cho
RealNetworks với RealMedia, và Microsoft với Windows Media.
Các hãng này đều cung cấp các bộ công cụ trọn gói gồm Video Streaming
Server (lƣu trữ, truyền phát dữ liệu theo các giao thức hỗ trợ ... ), Video Player (hiển
thị dữ liệu tại phía ngƣời dùng) và công cụ kiến tạo dữ liệu với các chuẩn nén.
2.1.2. Windows Media Services
Windows Media là sản phẩm của Microsoft nhằm phục vụ việc truyền
streaming media trên mạng Internet. Windows Media đƣợc phổ biến khá rộng rãi
với nhiều phiên bản nâng cấp khác nhau. Mặc dùng Windows Media Streaming
Server sử dụng giao thức riêng của nó là MMS (Microsoft Media Server Protocol)
thay vì sử dụng giao thức chuẩn RTSP xong nó hoàn toàn miễn phí và chạy đƣợc
trên rất nhiều các ứng dụng nền tảng Server của Windows.
17
Tƣơng tự nhƣ Real, Windows Media tập trung vào việc truyền phát
audio/video qua mạng Internet, hỗ trợ hai giao thức serverbase (MMS) và serverless
(HTTP) với định dạng tiêu chuẩn là ASF (Active Streaming Format).
Windows Media cung cấp một bộ công cụ đƣợc đóng gói hoàn chỉnh có tên là
Windows Media Techonologies. Windows Media Technologies gồm Windows
Media Tool dùng để kiến tạo các dữ liệu streaming, Windows Media Services đóng
vai trò Video Streaming Server cung cấp dữ liệu, Windows Media Player là công cụ
hiển thị dữ liệu và ngoài ra còn có Windows Media Right Manager đƣợc sử dụng để
bảo vệ chống sao chép dữ liệu.
Windows Media Server hỗ trợ công nghệ “intelligent streaming": cho phép
truyền phát dữ liệu dựa trên độ rộng băng thông Internet giữa ngƣời dùng và Server.
Mặt khác công nghệ này có khả năng cung cấp việc truyền phát các luồng dữ liệu
một cách liên tục kể cả khi băng thông của mạng bị suy giảm, khi đó Server sẽ giảm
việc truyền phát dữ liệu cho phù hợp, nếu băng thông bị giảm quá nhiều server sẽ tự
động giảm chất lƣợng của dữ liệu video cho đến khi chỉ còn dữ liệu audio đƣợc
Đây là phần cung cấp chức năng tìm kiếm rất mạnh,
nếu sử dụng Internet để tìm kiếm thì đây là giải pháp tuyệt
vời. Nếu bạn muốn tìm kiếm một chuỗi con trong một
đoạn văn bản lớn thì đây là công cụ thích hợp cho công
việc đó.
English Query
Phần này cho phép ngƣời sử dụng không có kỹ thuật
về SQL cũng có thể sử dụng SQL Server, bằng cách đặt
câu hỏi bằng chuỗi English sau đó đƣợc dịch ra Query mà
có thể thực thi trên SQL server
Analusis Services
Phần này không bao gồm mặc định trong phần cài
đặt, chúng là dạng sản phẩm tự chọn, là công cụ phân tích
OLAP (Online Analysis Processing), sử dụng cho cơ sở
dữ liệu lớn. Những phiên bản có OLAP đầy đủ chức năng
là Enterprise và Developer, nhƣng trong ấn bản Standard
và Personal cũng có một chức năng chính của OLAP
Replication
Chức năng này cho phép tái tạo một bản sao đến SQL
Server khác, thông thƣờng dùng chức năng này cho các hệ
thống Server từ xa hay trong network, nhằm để làm giảm
trao đổi dữ liệu giữa các SQL Server với nhau.
chuẩn.
Dữ liệu (Data: E/R, Merise)
Giao dịch (Business: BPMN, BPEL, ebXML)
Ứng dụng Application (UML)
-
Phát sinh code tự động thông qua các template có thể tùy chỉnh đƣợc.
SQL
Java
.NET
-
Khả năng đối chiếu mạnh mẽ để làm tài liệu và cập nhật các hệ thống hiện
-
Khả năng tạo báo cáo tự động, có thể tùy chỉnh đƣợc.
-
Một môi trƣờng có thể mở rộng, cho phép ta thêm các luật, câu lệnh, khái
có.
niệm, thuộc tính mới cho các phƣơng pháp mã hóa và mô hình hóa.
20
Hỗ trợ của PowerDesigner đối với đội phát triển dự án
Team Leaders (Trƣởng nhóm):
Sẽ quan tâm tới tất cả các mô hình và sẽ đảm bảo tất cả các yêu cầu, các đối
tƣợng thiết kế và các tài liệu đƣợc liên kết với nhau thông qua các liên kết lƣu vết
tính đến tác động phân tích và thay đổi sự quản lý.
PowerDesigner Enterprise Repository: là khu vực trung tâm của sự lƣu trữ.
Kho hỗ trợ chia sẽ dữ liệu lớn, phiên bản và báo cáo cho các mô hình và các tài liệu
hệ thống khác; có một hệ thống bảo mật mạnh và hỗ trợ khả năng mở rộng doanh
nghiệp thực sự từ một trƣờng hợp kho đơn.
Report Editor: ta có thể đảm bảo rằng các tài liệu luôn đƣợc cập nhật và
chính xác. Report Editor cho phép ta tự động hóa việc tạo ra các báo cáo chi tiết
(theo format RTF và HTML) trên bất cứ hoặc tất cả các thành phần của hệ thống để
chia sẻ thông tin thiết kế trong đội dự án và trong toàn công ty.
Free Model (FEM): đƣợc sử dụng để tạo ra các sơ đồ để giải thích kiến trúc
hệ thống và các ứng dụng, kịch bản use-case của các ứng dụng, các sơ đồ dòng chảy
và các hình vẽ khác.
Tester: sẽ sử dụng Requirements Model (RQM), Conceptual Data Model (CDM) và
các mô hình khác cùng với các tài liệu thiết kế để hiểu đƣợc ứng dụng nên làm việc
thế nào và nó đƣợc phát triển nhƣ thế nào.
2.3.2. Kết nối với một cơ sở dữ liệu
PowerDesigner cho phép ta định nghĩa data connections để truy cập thông tin
trong các hệ quản trị cơ sở dữ liệu khác nhau (DBMS) sử dụng SQL.
Một data connection thực hiện lời gọi hàm và các yêu cầu SQL từ
PowerDesigner và gửi chúng tới 1 data source và trả lại kết quả cho PowerDesigner.
PowerDesigner physical data model (PDM) và Information Liquidity Model
(ILM) cho phép ta định nghĩa các data connection cho các CSDL đích để tạo ra các
mô hình và đối chiếu các nguồn dữ liệu [3]. The PowerDesigner repository đòi hỏi
một CSDL để lƣu trữ các mô hình và các tài liệu thiết kế khác.
22
2.4.1.4. Mô hình phát triển ứng dụng MVC
Đây là mô hình lập trình web, trong đó ứng dụng đƣợc chia thành 3 phần
riêng biệt có quan hệ độc lập, tƣơng tác chặt chẽ với nhau. Với MVC (Model –
View - Control) ứng dụng sẽ đƣợc chuyên hóa thành 3 mảng chuyên biệt, đẩy mạnh
tính chuyên môn của mỗi phần:
Model: Bộ phận thực thi các tác vụ Logic, xử lý mọi hoạt động bên trong từ
yêu cầu nhận của máy khách. Đảm nhiệm việc truy xuất, xử lý và lƣu trữ dữ
liệu.
View: Là những gì ngƣời dùng thấy trên trình duyệt… View chuyên bên
mảng thiết kế giao diện ngƣời dùng.
Control: Là bộ phận trung gian giữa Model và View, Control đóng vai trò
cầu nối. truyền tải dữ liệu, trả về kết quả cho ngƣời dùng, hay nói cách khác
là vẽ lên giao diện của trang web ở trên Clent.
Với mô hình MVC đã tách biệt hoàn toàn vai trò của ngƣời thiết kế (design) và
ngƣời lập trình (coding). Sau khi design ra giao diện trang web, sẽ bàn giao cho bộ
phận coding… Công việc đẩy mạnh tính chuyên môn, nhƣ vậy mỗi bên chỉ thực
hiện công việc của mình, không phải hiểu sâu về các mảng việc cùng lúc.
2.4.1.5. Mô hình phát triển ứng dụng 3 lớp (3 layers / 3-tiers)
Trong phát triển ứng dụng, để dễ quản lý các thành phần của hệ thống, cũng