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

19
1 22-03-22 Distributed Software Development

Upload: jodie-johnston

Post on 24-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

123-04-19

Distributed Software Development

Page 2: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

223-04-19

Requirements Definition and Design Description Presentation :

Live TV

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

Page 3: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

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)

Page 4: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

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

Page 5: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

1. The goal of the project 2/2

523-04-19

Page 6: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

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

Page 7: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

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

Page 8: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

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

Page 9: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

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

Page 10: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

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

Page 11: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

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

Page 12: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

3. Use case diagrams

1223-04-19

Recorder

Start recording

Stop recording

Set server address

User Change resolution

Receive feedback

Page 13: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

3. Use case diagrams

1323-04-19

Studio

Insert a commercial

Select stream

User

Publish feedback

Display streams

Page 14: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

3. Use case diagrams

1423-04-19

Player

Connect to stream

Disconnect

Check support

User

Send feedback

Page 15: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

4. Architecture

• System Components

1523-04-19

Page 16: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

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

Page 17: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

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

Page 18: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

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

Page 19: 12015-08-19 Distributed Software Development. 22015-08-19 Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic

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)