Dot Net FM Chris Zamanillo Ana Rodriguez Allen Lee Peter Singh Allen Vega Robert Lyn Software and Object Design.

Slides:



Advertisements
Similar presentations
Global MP3 Geoffrey Beers Deborah Ford Mike Quinn Mark Ridao.
Advertisements

A stereo audio file 1. Audio Channels Number of audio channels determines number of waveforms in a recording Two relevant types of recording Stereo recording.
4.1Different Audio Attributes 4.2Common Audio File Formats 4.3Balancing between File Size and Audio Quality 4.4Making Audio Elements Fit Our Needs.
Creating Podcasts. What are podcasts? Podcasts are like radio or TV shows that are downloaded over the Internet. They can be downloaded to iTunes or listened.
Podcasting. What is Podcasting? A collection of technologies for distributing Audio and Video over the Internet Distributed by a RSS (Really Simple Syndication)
31/1/2002Brunel University - BEng Final Year Project1 Hospital Radio Interactive Play-out System Jonathan Hart Supervisor: Dr John Cosmas.
Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 6, System Design Lecture 1 Utdrag ur Bruegges OH-bilder för första.
LYU0002 Wireless Cyber Campus Supervisor: Prof. LYU, Rung Tsong Michael Marker: Prof. CAI, Leizhen Students:Jang Kim Fung, Harvest Tang Ho Man, Sunny.
The Jukebox Orian Paz & Yair Cleper Instructor: Viktor Kulikov Semester: Spring 2009 Final Presentation.
Ch 7: Sys. Architecture: Design Decisions to Address Goals
Firefox 2 Feature Proposal: Remote User Profiles TeamOne August 3, 2007 TeamOne August 3, 2007.
L/O/G/O Prepared By Abdullah Mustafa Abu Nada Hussian Abd-Jaleel Shaalan Nael Wael Skaik Supervised By.
AXIS Camera Station Comprehensive video management software for monitoring, recording, playback and event management.
Open Source Radio Murray Saul Seneca College. Open Source Radio  How to Set up an Internet Radio Station: Why Internet Radio? / Basic Concepts Hardware.
Hear IT- An introduction to internet audio media..
 Distributed Software Chapter 18 - Distributed Software1.
Creating Podcast By Mary A. Malinconico Gloucester County College By Mary A. Malinconico Gloucester County College.
GV-Control Center Overview
Global MP3 Presented by the Chatterbox Group. Overview GlobalMP3 – developing a portable MP3 radio service Streaming MP3’s to clients – basically speakers.
INFO 355Week #61 Systems Analysis II Essentials of design INFO 355 Glenn Booker.
Streaming Multimedia Providing the Net Generation with Instant Multimedia and Looking Good While Doing It.
Podcasting 101..and more. Workshop Objectives: Introduce iTunes: abundance of resources, multi-media organizer, classroom tool You do not need an iPod.
1 Skip Cave Chief Scientist, Intervoice Inc. Multimodal Framework Proposal.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Advanced Software Engineering Association for Computing Machinery High School Competition System Prof: Masoud Sadjadi Fall 2004 Second Deliverable By:
1 Chapter 2 & Chapter 4 §Browsers. 2 Terms §Software §Program §Application.
The Open Software Solution for Measurement & Automation
S.N.A.P. Network Audio Project Team SNAP Radio Ryan Dallaire, Justin Vathje, and Jeremy Lawson.
M i SMob i S Mob i Store - Mobile i nternet File Storage Platform Chetna Kaur.
6st ACS Workshop UTFSM ACS Course Component, Container, Lifecycle Management 6st ACS Workshop UTFSM, Valparaiso, Chile H. Sommer, G. Chiozzi.
Addressing design Goals  We decompose the system to address complexity  Assigning each subsystem to team to work on  But we also need to address system.
Audio and Video CGS Some Common Audio Formats Format Use Extension MIDI instrumental music.mid MPEG songs.mp3 RealAudio live broadcasts.ra Wave.
CSCI 6962: Server-side Design and Programming Web Services.
ScreenPlay Director Training By Erik Collett
Software Engineering General architecture. Architectural components:  Program organisation overview Major building blocks in a system Definition of each.
Lecture 21 May 2, Exam 2 Post-Mortem Average grade was 69.3 –Median was 72, which means there were some very low scores that pulled down the average.
Chapter Five–Part III Object Oriented Design More Design issues.
Computer and Information Science Ch1.3 Computer Networking Ch1.3 Computer Networking Chapter 1.
Podcasting and Education Darlynda Miktuk Erie 1 BOCES
CEN Advanced Software Engineering
Podcasts/Podcasting Podcasting is the downloading of audio broadcasts to your computer. Podcasting entails audio content that is delivered via an RSS.
Nova Media Center Anthony Romano Christopher Nolan Mr. Edward Char Anthony Romano Christopher Nolan Mr. Edward Char.
DotNetFM Chris Zamanillo Ana Rodriguez Allen Lee Peter Singh
Construction Planning and Prerequisite
1 CMPT 275 High Level Design Phase Modularization.
An Mp3 Player? Looking at iTunes Rating, Feedback Rating, Feedback Search, Categorization Search, Categorization Collaboration Collaboration Party Shuffle.
Fs Streaming Media a presentation by Florian Seidel.
Feb. 9, 2004CS WPI1 CS 509 Design of Software Systems Lecture #4 Monday, Feb. 9, 2004.
Podcasts. (derived from Apple's "iPod" and "broadcasting“) a method of publishing audio files to the internet, allowing users to subscribe to a feed and.
System Design for Home Automaton. Design Goals Performance Criteria – Server prioritizes client requests to provide quick response time to critical requests.
MP3toFM Design II Midterm Presentation September 30, 2008.
MUSIC GENRE JUKEBOX. CLIENT SPECIFICATIONS Audio Player Create, delete, and modify play lists Play, pause, stop, skip, fast forward, and rewind Send Streaming.
California State University, LA Presented by Amanda Steven StevenAamirObaid.
Biosolid Design Spec Brief April 21, Overview Design Overview Proposed System Architecture User Interface Subsystem Interfaces Package & File Organization.
MP3 Radio Richard Bannon & Michael Backman. Basic concept FM broadcast MP3 player  Allows you to listen to MP3’s through an FM radio  Better than a.
Architectural Mismatch: Why reuse is so hard? Garlan, Allen, Ockerbloom; 1994.
The Jukebox is a.NET web application that plays streaming music files to it’s clients according to their favorites musical genres. Clients can rate the.
Two New UML Diagram Types Component Diagram Deployment Diagram.
Global MP3 Geoffrey Beers Deborah Ford Final Presentation Mike Quinn Mark Ridao Delivered by: Additional help by:
Lecture 1: Network Operating Systems (NOS)
Why is Design so Difficult? Analysis: Focuses on the application domain Design: Focuses on the solution domain –The solution domain is changing very rapidly.
Review for Final, Fall 2010 Close book, Close notes
Network Operating Systems (NOS)
Podcasting Enormous variety of podcasts available
Podcasting Enormous variety of podcasts available
 itunes is a kind of media player, media library and a online radio broadcaster and it is developed by the Apple inc.  Through the itunes user can.
Cloud Based Media Streamer
Decomposing the System
Architectural Mismatch: Why reuse is so hard?
STATEL an easy way to transfer data
Presentation transcript:

Dot Net FM Chris Zamanillo Ana Rodriguez Allen Lee Peter Singh Allen Vega Robert Lyn Software and Object Design

Problems with sharing music  Large disk space requirements  Slow downloads  Complicated software Our solution  Small amount of disk space  Listen while you download  Easy to use interface Problem Statement

Current Software Architecture Winamp Windows Media Player SHOUTcast iTunes

Winamp & Windows Media Player Several audio & video formats Streaming Internet radio Playlists Customizable interface through skins Winamp  No sharing without plug-ins Media Player  has Jukebox functionality

SHOUTcast Listener needs to play streaming mp3 Host uses Winamp with SHOUTcast plug-in Music transmitted to server which broadcasts to listeners Access to server can be expensive!   100 listeners at 128Kbps is $250/month

iTunes Jukebox  Automatically manages music library Playlists Internet radio  No favorite stations Shares library  available only on LAN

Proposed Software Architecture All in one design Cleaner interface  Playlists  Station lists  Customizable skins Simple to switch between client - server Sharing not dependent on plug-ins Ease of use!

Subsystem Decomposition Playback List Error I/O Configuration

Packages

Global Software Control User interface classes do not have direct access to entity classes Entity classes do not communicate directly with any other classes Control classes do not communicate directly with interface classes GUI classes subscribe events

Design Goals Modifiability Ease of use Efficiency Low response time Low-cost and Reuse of Components

Design Patterns Singleton  Error, Controllers, Preferences Bridge  SoundData, Visualizations Façade  Controllers Observer  SkinController

Hardware/Software Mapping nBass Class Library.Net Windows Forms Extensible Mark-up Language (XML)

Deployment Diagram

Component Diagram

Access Control and Security No user authentication Security handled by nBass Access Matrix

Access Control Matrix Objects Actors PlaylistStationListStationMusicInfoCustomSkin Listener > AddMusicInfo GetSongs GetLists > GetName > GetName > GetFileName > GetFilename DJ > AddMusicInfo GetSongs GetLists > SetName > SetName > GetFileName > GetFilename

Persistent Data Management Identifying persistent data objects  StationList  PlayList  Preferences  Log  MusicInfo  Station  XMLFile Selecting a storage strategy  XML

Boundary Conditions Configuration use cases Start-up and Shutdown use cases Exception use cases

Object Design Trade-offs Buy vs. Build Memory space vs. Response time

Subsystem Services (1/2) List services  Manages play lists and station lists. Error services  Handles error reporting to user and to file. I/O services  Allows configuration and list data to be outputted to XML files.

Subsystem Services (2/2) Configuration services  Manages user preferences and works with the I/O subsystem to save these settings from session to session. Playback services  Provides playback of local files as well as broadcasting and playback of audio streams.

Class Interfaces