12015-08-19 distributed software development. 22015-08-19 requirements definition and design...

Post on 24-Dec-2015

215 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

123-04-19

Distributed Software Development

223-04-19

Requirements Definition and Design Description Presentation :

Live TV

Customers : Damir Isovic (MDH) and Klas Eriksson (OneDial AB)

323-04-19

What we’ll speak about ?

• 1. The goal of the project

• 2. Requirements

• 3. Use case diagrams

• 4. Architecture and Technologies (Design)

1. The goal of the project 1/2

• Implement a system that can be used for live TV broadcasting using mobile phones

423-04-19

1. The goal of the project 2/2

523-04-19

2. Requirements

• Recording application requirements : – OneDial provided the “recorder mobile”– Desirable to record with a variety of mobile– Possibility to choose the quality of recording– Have the possibility to receive client’s

feedback (optional)

623-04-19

2. Requirements

• Production studio application requirements : – Minimum 6 streams can be received

simultaneously– Be able to select the stream – Add commercials in the stream– Run on Windows system

723-04-19

2. Requirements

• Player application requirements : – Available on variety of mobile phone brands– Allows users to send feedback (optional)– Ability to check mobile device support

(optional)

823-04-19

2. Requirements

• Non-functional requirements: – Use existing network (3G, Wifi, …)– 5s delay maximum from the event to the client

mobile– Quality of sound should not be compromised

923-04-19

2. RequirementsIdentity Priority Description

Recorder application

REC-1 1 Record video using phone’s camera

REC-2 1 Stream video to a remote server

REC-3 2 Change the recording resolution

REC-4 3 Receive feedback from server

Player application

PLY-1 1 Play video stream from remote server

PLY-2 3 Check streaming support on the mobile device

PLY-3 3 Send feedback to the server

PLY-4 2 Platform independent

1023-04-19

2. RequirementsIdentity Priority Description

Production studio application

STU-1 1 Receive at least 6 different streams at a time

STU-2 1 Show all incoming streams

STU-3 1 User can choose which stream to broadcast

STU-4 2 Insert a commercial at any point in a stream

STU-5 3 Send feedback from players to recorders

Project-wide nonfunctional requirements

PNF-1 1 The delay introduced by the system should be less than 5 seconds

PNF-2 1 The video streaming must be done through some existing mobile network, e.g., 3G

PNF-3 1 The quality of the sound should not be compromised

1123-04-19

3. Use case diagrams

1223-04-19

Recorder

Start recording

Stop recording

Set server address

User Change resolution

Receive feedback

3. Use case diagrams

1323-04-19

Studio

Insert a commercial

Select stream

User

Publish feedback

Display streams

3. Use case diagrams

1423-04-19

Player

Connect to stream

Disconnect

Check support

User

Send feedback

4. Architecture

• System Components

1523-04-19

4. Architecture

1623-04-19

Mobile Recorder PC StudioMobile Client

Player

Stream Stream

3GPoverRTP

3GP/MP4overRTSP

FeedbackFeedback

XML Web Services

XML Web Services

PUSH PULL

4. Architecture

1723-04-19

Mobile Recorder

Camera APICamera API Internal H.263 and AMR Encoders

Internal H.263 and AMR Encoders

Encoded Video & Audio Streams

Encoded Video & Audio Streams

3GP Encapsulation

3GP Encapsulation

RTP Streaming RTP Streaming

Feedback Notification UI

DSS serves stream over RTSP

DSS serves stream over RTSP

4. Architecture

1823-04-19

PC Studio

Windows Web ServerWindows Web Server(hosts Web Services for

Feedback)

LibVLC in C# receiving multiple streams over RTP

LibVLC in C# receiving multiple streams over RTP

Stream Selection & Ads Injection UI

Stream Selection & Ads Injection UI

Output stream relayed to DSS

Output stream relayed to DSS

4. Architecture

1923-04-19

Mobile Client Player

RTSP De-PacketizerRTSP De-Packetizer Internal H.263 and AMR Decoders

Internal H.263 and AMR Decoders

Live stream playbackLive stream playback

Viewer Feedback UI(I Love it / I Hate it)

top related