Docstoc

Final2

Document Sample
Final2 Powered By Docstoc
					Chris Bledsoe                                                         Software Engineering – 10/26/2000
John Gill                                                                                        Team 3
Derek Haynes                                                            Requirements and Specifications
Craig Ricks                                                                         Imajicon CD Player


Introduction
The purpose of this report is to identify the Requirements and Specifications phase of the project.
This report will give a description of the project, related documents, use case descriptions,
functional requirements, nonfunctional requirements, development and target platforms, as well
as the risk assessment.

Project Description
        Originally, our project was to create an Internet-ready, console compact disc player that
would be able to connect to databases to display CD information.
                This will be the first Internet-ready, console compact disc player. The
        system can be connected to a home network using the included network interface.
        Once connected to the network, the player will be able to interface with both the
        personal computer and the Internet to obtain additional disc information. This
        disc information is retrieved in real-time from our web server, and can be stored
        in the local database at the user’s discretion. After the information is transferred
        to the player, any of the information available can be displayed at the user’s
        command.
        As pointed out by the instructor, the time constraint incurred by this course will not allow
us to complete a project of this nature. Therefore, we are scaling back our project.
                Our project is a console CD player that will maintain and display (using a LCD
        display) user entered information. The information provided by the user will be entered
        using an externally connected keyboard, or via the optional touch screen feature. This
        information will include CD Title, Artist, Song Names, and a user created Play List for
        each CD. This information will be stored in a local database.

Related Documents
        The Imajicon CD player will use many of the ideas from CD players already on the
market. One of the most popular software music players on the market is Winamp. Winamp
provides all of the functionality one would want in a CD player. For instance, the user can
quickly seek through a song using the built in slider bar. It provides the user with an easy to use
interface, which allows total control over the music being played. Winamp can be downloaded
Chris Bledsoe                                                        Software Engineering – 10/26/2000
John Gill                                                                                       Team 3
Derek Haynes                                                           Requirements and Specifications
Craig Ricks                                                                        Imajicon CD Player

for free at the their homepage http://www.winamp.com. If you run Linux and are interested in
trying out a nearly identical audio player (the Winamp skins even interchange) go to
http://www.xmms.org.
        The following link is one that gives a class diagram for how the various functions of the
CD player may interact. This CD player is written in Java but the information is still relative to
what we are designing in Visual Basic. http://www.linuxgazette.com/issue29/hamilton.html
        To allow the user to automatically be presented with information about a CD they have,
we will implement a lookup of the CD through the online database, CDDB. The CDDB database
contains over 650,000 albums and 8 million tracks. CDDB offers developers the ability to sign
up to use CDDB in their own applications. We will sign up and implement the lookup of
information through CDDB in our Imajicon CD player. http://www.cddb.com
        Kenwood is a manufacturer of high-end audio systems for both the home and
professional user. Kenwood offers a product very similar to what we are designing. What
Kenwood offers is called the PCLink NetNamer. It allows those with a compatible home
Kenwood CD player to link the unit to their PC and download the specific CD information
through the net. The unit uses software that is installed on the PC and transfers the information
from CDDB. This link contains a lot of relative information to what we are doing.
http://www.kenwoodusa.com/cat.htm?body=new/cddbnews.htm

Use Cases – General
        In order to more accurately describe the various use cases for the Imajicon CD Player, we
have classified the different cases into four categories. The majority of the use cases occur in
one of the three basic system states. The three system states are when the system is on but not
playing a CD, when a CD is playing, or when a CD is paused. The rest of the use cases are not
dependant on any of these factors and can be performed by the user at any time. In addition, all
of the use cases assume that the system is on and is functioning properly.
When player is idle:
       The user can insert a CD to be played by pressing the eject button on the interface. After
        pressing the button, the CD tray will slide out and they can insert a CD of their choosing.
        The tray can be closed by pressing the eject button again. A CD should be properly
        inserted into the player now.
Chris Bledsoe                                                           Software Engineering – 10/26/2000
John Gill                                                                                          Team 3
Derek Haynes                                                              Requirements and Specifications
Craig Ricks                                                                           Imajicon CD Player

       The user may choose to immediately start playing the CD after one has been inserted. By
        pressing the play button on the interface, the CD will be started and will begin playing
        the first track. If no playlist has been specified and stored for that particular CD, it will
        play all the songs in order until the user takes another action.
       The user may also choose to skip directly to a track using the forward ( >>| ) and
        backward ( |<< ) buttons on the interface. After the appropriate song has been selected,
        the user may choose to begin listening to the CD by pressing the play button. The CD
        will begin playing at the particular track and continue until the end if no action is taken
        and no playlist has been previously specified.
       The user can also directly access a track by touching the drop down menu on the interface
        and selecting the desired song from the list of tracks. When the CD player is idle, the
        player will skip to that track and will not begin playing until the user selects that option
        from the interface.
When the system is playing a CD:
       The user may at any time choose to pause the disc. This is accomplished by pressing the
        pause button or || on the interface. This will cause the CD to halt the transmission of
        sound to the speakers, and hold the CD at that particular place until some other action is
        taken. To continue playing the CD, the pause button may be pressed again and the music
        will continue.
       The user may stop the CD at any time by simply pressing the stop button on the interface.
        This will cause the player to stop transmitting the sound to the speakers, and the CD will
        stop spinning.
       The user may directly access a certain part of a track using either the slider control or the
        FF ( >>) or RW ( << ) buttons on the interface. By moving the slider on the interface, the
        song skips to the place in the song denoted by the position of the slider. After the user
        releases control of the slider, the song is moved forward or backwards to that part of the
        song. When pressing the FF or RW buttons on the interface, the song will fast forward or
        rewind to a place in the track. When either control is released, the song will continue
        playing at the part of the song where the user released the control.
Chris Bledsoe                                                          Software Engineering – 10/26/2000
John Gill                                                                                         Team 3
Derek Haynes                                                             Requirements and Specifications
Craig Ricks                                                                          Imajicon CD Player

       The user can directly access a track by touching the drop down menu on the interface and
        selecting the desired song from the list of tracks. When the CD player is playing, that
        track will be stopped and the chosen song will begin playing immediately.
       The user can change the CD in the drive by pressing the eject button on the interface.
        After pressing the button, the CD will stop playing and the tray will slide out to allow the
        insertion of a new CD. The tray can be closed by pressing the eject button again.
When paused:
       The user can decide to skip to another song by pressing the forward ( >>| ) or backward (
        |<< ) buttons on the interface. After the desired song has been selected, the CD will
        remain paused until there is further action by the user.
       The user can stop the CD by pressing the stop button on the interface. After the button is
        pressed, the player will stop transmitting the sound to the speakers, and the CD will stop
        spinning.
       The user may directly access a certain part of a track using either the slider control or the
        FF ( >>) or RW ( << ) buttons on the interface. By moving the slider on the interface, the
        song skips to the place in the song denoted by the position of the slider. After the user
        releases control of the slider, the song is moved forward or backwards to that part of the
        song. When pressing the FF or RW buttons on the interface, the song will fast forward or
        rewind to a particular place in the track. When either control is released, the song will
        remain paused at the part of the song where the user released the control until another
        action is taken.
       The user can directly access a track, but this feature will behave a bit differently than in
        the playing state. The player will move to the selected track, but will remain paused until
        the user decides to take another action by selecting its control on the interface.
State Independent:
       The user may change the way the track time is displayed on the interface at any time
        during the operation of the player. By selecting the View option in the menu bar at the
        top of the screen, the user can toggle between Track Time Elapsed and Track Time
        Remaining to display the time in the format of their choice.
Chris Bledsoe                                                          Software Engineering – 10/26/2000
John Gill                                                                                         Team 3
Derek Haynes                                                             Requirements and Specifications
Craig Ricks                                                                          Imajicon CD Player

       The user can at any time select the Shuffle feature, which plays songs in random order.
        To access this feature, select Options from the menu bar at the top of the screen and
        select Shuffle. This will cause the songs to be played in random order until the user de-
        selects the Shuffle option by selecting Shuffle from the Options menu again.
       The user can select the Intro play feature at any time from the Options menu. This allows
        the user to preview the tracks on the CD for a predetermined length of time on each track.
        When this option is selected the player will remain in the intro mode until the user de-
        selects this play mode by selecting Intro from the Options menu.
       The user can edit the Preferences feature at any time by selecting the Options menu and
        selecting the Preferences list entry. When this option is selected, another window
        containing the preferences appears, and the user has the ability to configure four different
        options. The user can decide whether they want the CD to continue playing after the
        program is shut down, they can decide whether to save preference settings on exit, and
        they can enable or disable tool tips, the feature that gives hints to various interface
        controls. The length of the Intro play can be changed from the default setting of 10
        seconds to anywhere in the range of five to fifteen seconds. These settings are accepted
        by pressing the OK button on the right of the Preferences window, or can be voided by
        selecting the Cancel button.

Expanded Use Case: Updating information through Internet
        The user will have the option of finding out very specific information about the current
CD with the Imajicon CD player. They will have the ability to find out the name of the artist, the
title of the album, as well as the name of all the songs available on the CD. The availability of
the options will hinge on whether there is an active Internet connection that Imajicon can use.
The option to look up the specific CD information will be up to the user to decide. Although
unlikely, there may be a user who does not wish to have the information automatically looked up
for them, and instead, just have the track numbers listed. However, by default, Imajicon will
automatically lookup the information for the user.
        The option to control whether Imajicon automates the looking up of CD information will
be very easy to manipulate. To begin, the user must press “Options” in the menu bar of the CD
Chris Bledsoe                                                       Software Engineering – 10/26/2000
John Gill                                                                                      Team 3
Derek Haynes                                                          Requirements and Specifications
Craig Ricks                                                                       Imajicon CD Player

player. Then the user will be presented with a new menu and the following options:
Options
        Shuffle
        Continuous
        Intro
        Repeat Track
        Repeat CD
-----------------------------
        Preferences

         The user must press “Preferences” from the list of options. Next, the preferences window
will appear. Now the focus of the window will shift from the main CD player window to the
preferences window. The preferences window will take control precedence over the CD player
as long as the window is open. At this point the state of the CD player will continue as it was
previously. For instance, if the CD player were currently playing the intro of each song from the
CD, this would continue. Conversely, if nothing were playing, this status would continue. The
user will be presented with the following options in the preferences window:




         By default the “Lookup CD information through internet” checkbox will be checked. To
disable this feature the user must press on the checkbox to remove the check. To enable the
Chris Bledsoe                                                            Software Engineering – 10/26/2000
John Gill                                                                                           Team 3
Derek Haynes                                                               Requirements and Specifications
Craig Ricks                                                                            Imajicon CD Player

feature the user must press on the checkbox so that a check appears. After the user has selected
whether or not to lookup CD information through the Internet they press the “OK” button. At
this point the Preferences window will disappear and the focus will shift back to the CD player.
The decision on whether to lookup the CD information can either be permanent or can be saved
for as long as the current instance of the CD player depending on if the “Save preferences on
exit” checkbox is enabled. The user will also be given the choice to cancel any changes they
may have made to the Preferences. If the user selects “Cancel” the previous settings will remain
the same.

Expanded Use Case: Editing the Play List
         One of the advanced features that the project will include in the Imajicon CD Player will
be the ability to create or modify a play list for the CD that is inserted into the player. This
feature will be accessed and used in the following manner. When the touch screen display is
added, the user will be able to access this function by replacing the word click with the word
touch.
         To edit the play list for the current CD, the user will click the File menu located in the top
left-hand corner on the player. Next, click the Edit Play List option. When the CD information
screen appears, the user will be able to modify the order of the play list.
         To remove a song from the play list, the user clicks the specific song in the play list to
highlight it, and then clicks the remove button. This will remove the song from the play list, and
any songs that followed it in the listing will move forward one position. To add a song to the
play list, the user clicks the specific song from the track list to highlight it, and then clicks the
add button. This will add the song to the end of the play list.
         When the user is finished making the changes to the play list, the user should click the
OK button located at the bottom of the screen. This will save any changes the user made, and
then exit the Edit Play List function. If the user does not want to save the changes that were
made, they should click the cancel button. Doing so will exit the Edit Play List function without
saving any changes.
Chris Bledsoe                                                          Software Engineering – 10/26/2000
John Gill                                                                                         Team 3
Derek Haynes                                                             Requirements and Specifications
Craig Ricks                                                                          Imajicon CD Player


Expanded Use Case: Entering CD Information
        A very important feature of the Imajicon CD Player will be the ability to enter
information regarding the CD that is currently inserted. It has been determined that the more
control a user is allowed to have over a product, the more the user will like the product. The
more the user likes a product, the better the product will sell. The team members designing this
project have decided to take this type of approach by including as many features as possible
within the given time constraints. The Imajicon CD Player will contain the ability to record and
display the artist, title, and track of the inserted CD.
        The prototype being developed on the Windows version will look and act similar to the
final product. Since the final product will contain a compact touch-screen display with a virtual
keyboard, it will be easy to enter the CD information in the same manner that it will be entered
using the prototype.
        To begin entering information about the CD, one will need to click (or touch) the File
menu located at the top left-hand corner of the player. When the drop-down menu appears, the
Edit Play List option should be chosen. Next, a screen containing the artist, title, and a list of
tracks will appear. To change the artist name or title, the user may use the tab key to tab to the
appropriate field.




        The final product will allow you to touch the appropriate field before you begin your
typing. Once the artist and title have been entered, the user can click the OK button that will be
located at the bottom of the screen to apply and save the changes.
        A name can also be designated for each track on the CD. This field will be located on the
same screen that the artist, title, and track list are on. Once a track has been selected from the
list, the user should then go to the track input field by using the tab key (or touching the display).
Once the track name has been entered, the user should press the Set Name button to tell the
program to remember the track name.
Chris Bledsoe                                                         Software Engineering – 10/26/2000
John Gill                                                                                        Team 3
Derek Haynes                                                            Requirements and Specifications
Craig Ricks                                                                         Imajicon CD Player




        Once all the track names have been entered, the user should click the OK button located
at the bottom of the screen and the changes will be saved. If at anytime the user should click the
Cancel button, all changes, including the artist name and title will be lost.

Functional Requirements
Physical Environment
        Since the CD player will be a product that available to the general public, the system will
be functioning in many different environments under various conditions. As any other electronic
equipment, the player should not be exposed to moisture or excessive humidity. Since the player
has an optical lens that reads the compact discs, smoke and other pollutants should be kept away
from the unit so as not to cloud the lens.
Interfaces
        The system will receive digital information from compact discs and transmit that
information to a stereo system. A stereo system with attached speakers will serve as the medium
to transmit the music from the player. The system will work with any standard compact disc
including recordable discs.
Users and Human Factors
        There will be a variety of users from the general public who will be using this system.
Ideally, the user should have some proficiency with electronics to take full advantage of the
available features of the player such as the programming of playlists and retrieval of information
from the Internet. However, technical proficiency is not required to use the basic playing
functions of the player. Anyone with experience playing compact discs should have no trouble
using this player, and many steps have been taken to assure that there are few ways to misuse the
system.
Functionality
        The system will include all the standard features included on compact disc players such
as the ability to play, pause, stop, navigate or seek through a disk. Also, it will include some
other features common to many compact disc players such as intro play, repeat, and shuffle. In
addition to the standard features found on many other players, the user will have the ability to
Chris Bledsoe                                                          Software Engineering – 10/26/2000
John Gill                                                                                         Team 3
Derek Haynes                                                             Requirements and Specifications
Craig Ricks                                                                          Imajicon CD Player

program a sequence of tracks or a playlist and save that information for future reference. Also
the system is able to receive input from the user to update internal database information. The
system stores information about each compact disc and can access particular information in the
format of the users choice. After connecting the player to you home network, retrieval of disc
information from the Internet is possible.
Documentation
          A manual containing detailed descriptions of all the available features of the system will
be included with the player. There will also be extended information accessible at the Imajicon
web site as new features are made available. The manual included with the system will be
directed towards a general, non-technical audience, whereas the information on the web site will
be of a more technical nature intended for users that want to use the extended features of the
player.
Resources
          The developers working on this project need to have a strong knowledge of embedded
systems development tools and a general knowledge of electronic hardware. The system will be
the size of a standard compact disc player (approx 4” X 7” X 14”) and will require a 120V power
supply.
Quality Assurance
          To insure the highest levels of quality in our system, we will continue to develop and
improve the product after the initial release. To make the player the most useful for the greatest
number of people, we also plan to make the system compatible with different operating systems
such as Windows, Mac, and Linux. Also, we plan to design a very modular code with strong
error handling algorithms to increase the performance of the system software.

Non-Functional Requirements
          One of the main limitations of the system is the amount of storage space available on the
internal hard drive. This will limit the amount of disc information that can be stored on the
machine. Also, the amount of disc information that can be displayed on the screen at one time is
limited to the size of the LCD screen. Because of some of these limitations, we will have to
make the software as efficient as possible to compensate for the hardware limitations.
Chris Bledsoe                                                        Software Engineering – 10/26/2000
John Gill                                                                                       Team 3
Derek Haynes                                                           Requirements and Specifications
Craig Ricks                                                                        Imajicon CD Player


Development and Target Platforms
        The prototype model will be developed on the Microsoft Windows platform and is
compatible with Windows 2000 and all previous versions. The final product will be designed
using a proprietary operating system that is specific to its operational needs. It will be comprised
of a compact touch-screen display that will operate similar to the Windows environment.

Risk Assessment
        Due to the large amount of planning and programming involved in this project, a fair
amount of risk assessment is needed to assist with the success of the final product. Below, a risk
management plan has been implemented to help prepare the team with the most severe
outcomes, which in turn, could allow problems to be better handled if they arise.
Concern Description                                                         Concern Level
Programmer getting sick or quitting. There should be another member         High
of the team knowledgeable of the programming that can take over at
any given time.
Unable to meet deadline. The proper preparation needs to be                 High
maintained and group members should be continuously updated on the
project status of all events.
Changes to requirements. Team members should always be prepared             Medium
for frequent requirement changes that are likely to occur.
Loss of team members. It is best to be knowledgeable in other               Medium
member’s responsibilities in case there is a personnel shortage.
Developing a user-interface that doesn’t do what it is supposed to do.      Low
Continuous testing and review of the user-interface should be
performed as often as possible.

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:17
posted:12/1/2011
language:English
pages:11