DOC

Requirements Document for the VirtualArtViewer

By Beth Henderson,2014-12-08 07:38
6 views 0
Requirements Document for the VirtualArtViewerthe,for

    Requirements Document for the VirtualArtViewer 1. Introduction

    Over the past few years, ―Apogee Arts, Inc.‖ slowly but surely has taken the market lead in providing art lovers all over the world access to artistic paintings over a wide range of themes. To do so, ―Apogee Arts, Inc.‖ each year painstakingly draws out several expen-

    sive and rare paintings all over the world and publishes those paintings in an annual mag-azine. After recognizing the potential of the Internet as an advertising medium for its paintings, ―Apogee Arts, Inc.‖ plans to develop a web site that hosts a number of paint-

    ings and allows people to electronically view the paintings. To that effect it commis-sioned a study to determine whether such an application that uses a hypermedia frame-work to provide users links to various kinds of information would be successful. The study concluded that it would, and ―Apogee Arts, Inc.‖ now has decided to produce as a first step, the ―VirtualArtViewer‖, a desktop application that offers a friendly interface for anyone to view paintings and all related descriptions.

    Not surprisingly, ―Apogee Arts, Inc.‖ lacks expertise in designing and building software

    systems. Therefore, they have hired Paragon Software to develop this requirements speci-fication and the subsequent design and implementation of the VirtualArtViewer. This document is based on extensive interviews that the software engineers at Paragon Soft-ware conducted with the board of directors and concerned parties at ―Apogee Arts, Inc.‖ All information in this document has been determined to be accurate at the time of this writing.

    This document contains the detailed requirements for the VirtualArtViewer that is being developed for ―Apogee Arts, Inc.‖ The document should serve as the official basis for any further development of the VirtualArtViewer.

    The document contains the following sections:

    ; Executive Summary

    ; Application Context

    ; Functional Requirements

    ; Environmental Requirements

    ; Other Requirements

    ; Software Qualities

    ; Time Schedule

    ; Potential Risks

    ; Future Changes

    ; Glossary

    ; References

2. Executive Summary

    ―Apogee Arts, Inc.‖ is looking to significantly increase its customer base by providing the VirtualArtViewer. The VirtualArtViewer will allow not only the ―Apogee Arts, Inc.‖ administrators to create, edit and store paintings and information about the paintings, but will also allow general users to retrieve their favorite paintings and all related relevant information. ―Apogee Arts, Inc.‖ strongly believes that the VirtualArtViewer has the po-

    tential to revolutionize the world of art by not only acting as a channel to expose the minds of people to a wide range of art but also providing a tool for them to have access to every bit of information available about every piece of art hence the desire to aggres-

    sively move into this market quickly.

    The VirtualArtViewer provides the following key features:

    ; Creating and storing paintings A user acting as an administrator can create and

    enter information about paintings, artists, galleries and locations and store them

    on the server on ―Apogee Arts, Inc.‖

    ; Viewing a painting information Any user can use the application to retrieve and

    view detailed descriptions about paintings and any other information related to the

    painting.

    ; Printing a painting information A user can conveniently print the information

    about any painting easily from his computer and carry the printout to any art

    gallery.

    Two of the most important risks posed by the development of the VirtualArtViewer are the following:

    ; Usability The VirtualArtViewer must be as easy to use as possible, otherwise

    novice users will simply not purchase the program.

    ; Rapid development The schedule according to which the VirtualArtViewer will

    be developed is extremely aggressive to ensure that ―Apogee Arts, Inc.‖ is the

    first company with this novel art viewer application. Other qualities cannot be

    sacrificed as a result of this rapid development.

    ; Maintaining Link Consistency Since the description and various kinds of

    information of paintings, artists, galleries and locations are linked, it is imperative

    that consistency of links is maintained as new information is added or existing

    information is changed or removed.

    Although the contents of this document were thoroughly verified, it may still occur that some requirements are inconclusive or ambiguous. If it is so determined, it is requested that Paragon Software be contacted via e-mail at sgirish@ics.uci.edu to resolve the issue.

    3. Application Context

    The VirtualArtViewer allows any user to retrieve any available and related information about any painting. The introduction of the VirtualArtViewer will require some of the staff of ―Apogee Arts, Inc.‖ to be retrained to be able to create, store and maintain paint-

    ings and their descriptions electronically and also provide suitable links to all relevant

    related information. In addition they will also need to provide customer support for the

    VirtualArtViewer.

    4. Functional Requirements

    ADMINISTRATOR FUNCTIONALITY

    Administrator Login

    4.1.1. All Apogee Arts, Inc. administrators have to be verified using a login and

    password that is issued by Apogee Arts, Inc. The application should offer

    the administrator a set of user interfaces different from those offered to the

    normal user since he has access to features that allow him to edit, delete and

    add information to the database.

    Creating New Paintings

    4.1.2. Every painting always belongs to only one "Theme" for example such as

    modern art or nature, etc.

    4.1.3. The system has a drop-down list of themes already created for an

    administrator to choose from while adding a new painting information. 4.1.4. The graphical user interface (GUI) should allow the information of only

    one painting to be entered at a time.

    4.1.5. The GUI should allow the adminstrator to create new painting information,

    retrieve and edit existing painting information and save them. If painting

    information section with the same title already exists, the GUI should

    prompt adminstrator accordingly.

    4.1.6. The ―Painting Information‖ for a painting includes:

    4.1.6.1. The name or title of the painting. Every painting must have a unique

    name/title by which it can be identified.

    4.1.6.2. The image/picture of the painting. The image for a painting can be

    selected only from folders in the local file system through the GUI.

    Only jpg and gif files are considered as image files. Image size

    should be 300 X 300 pixels on the screen.

    4.1.6.3. The name of the artist and this should be linked to the ―Artist Infor-

    mation‖ for that particular artist.

    4.1.6.4. The year in which the painting was known to have been created.

    4.1.6.5. The theme under which the painting can be classified. This should

    provide a link to ―Theme Information‖ for that particular theme.

    4.1.6.6. The name and location of the gallery where the piece of art is cur-

    rently located. The name of the gallery should provide a link to

    ―Gallery Information‖ for that particular art gallery. The location

    (city and country where the gallery is located) should provide a link

    to ―Country Information‖ for that particular location.

    4.1.6.7. A short description of the painting. This description can include ref-

    erences to other paintings, artists, art galleries and locations in

    which case, they should all point to the corresponding information

    section.

    4.1.6.8. The GUI should provide suitable fields and options to allow all the

    above information/description to be added to the particular painting

    information. All links should be accordingly displayed in the GUI.

    4.1.7. The GUI should allow the adminstrator to create new artist information, retrieve and edit existing artist information and save it. If an artist information section with the same name of the artist already exists, the GUI should prompt adminstrator accordingly.

    4.1.8. The ―Artist Information‖ for an artist includes:

    4.1.8.1. The name of the artist.

    4.1.8.2. A list of the names/titles of all the paintings that the artist created.

    Each title should be a link to its corresponding ―Painting Informa-

    tion‖.

    4.1.8.3. A short description of the artist. This description can include refer-

    ences to other paintings, artists, art galleries and locations in which

    case, they should all point to the corresponding information section. 4.1.8.4. The GUI should provide suitable fields and options to allow all the

    above information to be added to the particular artist information.

    All links should be accordingly displayed in the GUI.

    4.1.9. The GUI should allow the adminstrator to create new theme information, retrieve and edit existing theme information and save them. If a theme information section with the same theme name already exists, the GUI should prompt the adminstrator accordingly.

    4.1.10. The ―Theme Information‖ for a theme includes:

    4.1.10.1. The name of the theme.

    4.1.10.2. A list of the names/titles of all paintings that can be classified under

    that particular theme. Each title should be a link to the ―Painting In-

    formation‖ for that painting and should appear as a link in the GUI.

    4.1.10.3. A short description of the theme. This description can include refer-

    ences to other paintings, artists, art galleries and locations in which

    case, they should all point to the corresponding information section. 4.1.10.4. The GUI should provide suitable fields and options to allow all the

    above information to be added to the particular artist information.

    All links should be accordingly displayed in the GUI.

    4.1.11. The GUI should allow the adminstrator to create new gallery information,

    retrieve and edit existing gallery information and save them. If a gallery information section with the same gallery name already exists, the GUI should prompt the adminstrator accordingly.

    4.1.12. The ―Gallery Information‖ for a gallery includes:

    4.1.12.1. The name of the gallery.

    4.1.12.2. The location (city and country) where the gallery is located. This

    should provide a link to ―Country Information‖ for that particular

    location.

    4.1.12.3. A list of names/titles of all the paintings that the art gallery contains.

    Each title should be linked to the ―Painting Information‖ for that

    painting.

    4.1.12.4. A short description of the art gallery. This description can include

    references to other paintings, artists, art galleries and locations in

    which case, they should all point to the corresponding information

    section.

    4.1.12.5. The GUI should provide suitable fields and options to allow all the

    above information to be added to the particular artist information.

    All links should be displayed in the GUI.

    4.1.13. The GUI should allow the adminstrator to create new country information, retrieve and edit existing country information and save them. If a country information section with the same country name already exists, the GUI should prompt the adminstrator accordingly.

    4.1.14. The ―Country Information‖ for a country/location includes:

    4.1.14.1. The name of the country.

    4.1.14.2. A list of names of all the art galleries in that particular country.

    Each gallery name should be linked to the ―Gallery Information‖ for

    that gallery.

    4.1.14.3. A short description of the country. This description can include ref-

    erences to other paintings, artists, art galleries and locations in

    which case, they should all point to the corresponding information

    section.

    4.1.14.4. The GUI should provide suitable fields and options to allow all the

    above information to be added to the particular artist information.

    All links should be accordingly displayed in the GUI.

    4.1.15. While adding new information or updating or removing existing information, the administrator is responsible for creating suitable descriptions and maintaining the links. (For example, if the administrator adds a new painting information with an artist whose entry does not already exist, he not only needs to create a new ―Painting Information‖ for the painting, but also create a new ―Artist Information‖ manually for that artist and provide suitable links between the two as described in the requirements

    above. However if he does not create the ―Artist Information‖ for that artist,

    the name of the artist acts like a broken link).

    4.1.16. The VirtualArtViewer GUI should make the input of all the information

    including images as easy as possible.

Saving a Painting

    4.1.17. The VirtualArtViewer application should allow the administrator to save

    any information about any painting, artist, gallery and location on the

    ―Apogee Arts, Inc.‖ server at any point during editing.

Editing a Painting

    4.1.18. An administrator should be able to perform all the search queries as a

    normal user. Moreover, he should be able to edit any of the information

    sections (like paintings, artists, themes, galleries, countries) and is

    responsible for updating and maintaining information links.

    4.1.19. He should be able to delete any existing information section. Before

    deleting an existing information section, the application should elicit a

    confirmation from him. When any section is deleted, all the links that point

    to it are broken. Moreover, only one information section can be deleted at a

    time.

Updating Log Files

    4.1.20. A log book is maintained on the ―Apogee Arts, Inc.‖ server that contains a

    list of each painting title in the database and how often it has been printed.

    4.1.21. When any user issues a ―print‖ command for a painting information, the

    application updates the log file on the server by incrementing the number of

    times that particular painting has been printed.

    Reporting

    4.1.22. Administrators can create reports that show how often each painting has

    been printed.

    4.1.23. Administrators can create reports that show the top 50 most popular

    paintings (e.g., those paintings that have been printed the most times) of all

    times.

USER FUNCTIONALITY

    Searching for a Painting

    4.1.24. The GUI should allow the user to retrieve all paintings by specifying a

    particular theme. The set of results returned should be a list of titles/names

    of the paintings sorted alphabetically and should be links that take the user

    to the corresponding painting information.

    4.1.25. A user should be able to locate a painting (or a set of paintings) by using a

    search for the title or part of the title. The results returned should be sorted

    alphabetically according to their titles and should be links that take the user

    to the corresponding painting information.

    4.1.26. A user should be able to retrieve all links for an artist by using a search for

    the name or part of the name of the artist. The results returned should

    contain the names of the artists sorted alphabetically and should be links

    that take the user to the corresponding artist information.

    4.1.27. A user should be able to search for paintings with the name or part of the

    name of the art gallery. The search results returned should be sorted

    alphabetically according to the name of the art galleries and should be links

    that take the user to the particular art gallery information. 4.1.28. A user should be able to retrieve paintings by location (for example, all

    paintings in (art galleries of) Italy). The search results returned should be

    sorted alphabetically according to the name of the art galleries in the

    location and should be links that take the user to the particular art gallery

    information.

    4.1.29. The application should support a combination of the above searches. The

    search results of any combination search should be always list the titles of

    the paintings that match the criteria, sorted alphabetically, and should be

    links that take the user to the particular painting information.

    Viewing information

    4.1.30. The user should be able to view any information section, the results of any

    kind of search and a list of titles of paintings that have been put in the user’s

    Favorites folder (see 4.1.36)

    4.1.31. Any entity/text on the user interface that is a link should be in blue font

    and underlined.

    4.1.32. The information in any "Painting Information" should have the title of the

    painting on top, followed by the image, the artist, the date the painting was

    created, the theme of the painting, the name and location of the art gallery

    where the painting is located and the description of the painting. The links

    should be as described in 4.1.6.

    4.1.33. The information in any "Artist Information" should have the name of the

    artist, the list of paintings he created and the description of the artist. The

    links should be as described in 4.1.8.

    4.1.34. The information in any "Theme Information" should have the name of the

    theme, the list of paintings that fall under that theme and the description of

    the theme. The links should be as described in 4.1.10.

    4.1.35. The information in any "Gallery Information" should have the name of the

    gallery, the location of the gallery, the list of paintings in the gallery and the

    description of the gallery. The links should be as described in 4.1.12. 4.1.36. The information in any "Country Information" should have the name of

    the country, the list of art galleries in that country and the description of the

    country. The links should be as described in 4.1.14.

    Selecting paintings to the "Favorites" Folder

    4.1.37. A user should have the option to select one or more paintings and put

    them in a folder called "Favorites" that is generated by the application the

    first time it is started. The "put" operation is equivalent to that of a "copy". 4.1.38. The Favorites folder exists on the user’s computer and cannot be renamed

    by the user.

    4.1.39. While the Favorites folder contains the complete painting information

    about any painting the user has put into it, the user interface that displays

    the Favorites information should only contain the titles of the paintings in

    the Favorites folder along with other user interface components like buttons

    etc.

    4.1.40. The user should be able to remove paintings from the Favorites folder.

    Printing a Painting

    4.1.41. A user can print multiple paintings only from the Favorites folder. For this,

    he first selects the desired paintings in the Favorites folder and then prints

    them.

    4.1.42. Assuming a user has a printer, he should be able to print a painting from

    his computer. The application should first print the image followed by the

    name of the artist, the year it was created, the theme of the painting, the

    name of the art gallery that contains the painting including the location of

    the painting inside the art gallery, the location of the art gallery (city and

    country), and description of the painting.

    4.1.43. Whenever a user prints a painting from his Favorities folder, the

    application updates the log file with the print information. So, a user can

    print from the Favorites folder only when he is connected to the server. 4.1.44. A user can also print ―Artist Information‖, ―Theme Information‖, ―Gallery

    Information‖ and ―Country Information‖ for any artist, gallery and country

    respectively while viewing the information. However, he can only choose to

    print one information section at a time.

    4.1.45. A user can specify printing multiple copies of a painting, theme, artist,

    gallery and country information while issuing the print command.

     Help Section

    4.1.46. The VirtualArtViewer application should have a ―Help‖ function that

    allows the users to search for help on a variety of topics.

    4.1.47. The help function should also include a short tutorial guide on how the

    VirtualArtViewer can be used.

MISCELLANEOUS FUNCTIONALITY

    User Interface

    4.1.48. ―Apogee Arts, Inc.‖ has a requirement that the user interface always

    display the name of the company and its logo across the top. The layout of

    the unspecified part of the user interface is left to the designers. Error Handling

    4.1.49. All error handling is left to the designers of the VirtualArtViewer. 5. Environmental Requirements

    Since it is expected that users from all over the world will be using VirtualArtViewer, and since Microsoft Windows is the most popular and widespread platform, ―Apogee Arts, Inc.‖ has decided that the VirtualArtViewer should be able to run on Windows XP, Windows 2000, and Windows NT desktops. Other platforms do not have to be supported, since ―Apogee Arts, Inc.‖ expects sufficient numbers of users from these basic platforms.

    Further, ―Apogee Arts, Inc.‖ hired a consultant regarding programming languages and based on its report recommends that the VirtualArtViewer application be implemented in Java?, to ensure portability across platforms as well as easy maintainability. Use of the JDK 1.3 is expected.

    6. Other Requirements

    VirtualArtViewer will operate as a stand-alone application and does not have to interface with other applications.

    The cost of development for the VirtualArtViewer system must not exceed $188,689.27. Financial analysts of ―Apogee Arts, Inc.‖ have determined that this is the maximum amount the system can cost without becoming unprofitable.

    Paragon Software should carefully document all decisions made, especially decisions

    pertaining to changes in this document (and subsequent documents; always per agree-

    ment with ―Apogee Arts, Inc.‖).

    Paragon Software will deliver detailed user manuals for the VirtualArtViewer application.

    7. Software Qualities

    ; User-friendliness Since users of the VirtualArtViewer will be of all sorts and

    types and not all of them will be very experienced with computers, it is essential

    that the application be as user-friendly as possible.

    ; Correctness Because ―Apogee Arts, Inc.‖ is investing a lot of time and money

    in the VirtualArtViewer system, it is imperative that the VirtualArtViewer

    performs correctly and does not print incorrect information about paintings. ; Reliability Reliability of the VirtualArtViewer is not expected to be essential,

    but nonetheless important. Accepted rate of failure is 1 crash per fortnight.

    Increased rate of failure will decimate the impression of ―Apogee Arts, Inc.‖

    products in the market.

    ; Performance It is highly essential that the VirtualArtViewer application runs

    efficiently. Any ―search‖ should not take more than 5 seconds.

    ; Reusability Reusability will not be important in this application.

    ; Extensibility Over time the system will be enhanced with small features,

    therefore the application should be extensible.

    ; Evolvability Over time, the VirtualArtViewer will undergo significant

    enhancements and changes to position the product for future market leadership.

    As such, the system must be evolvable.

    ; Robustness It is expected that the VirtualArtViewer application does not crash if

    a user inputs wrong data or makes mistakes or if links are broken. ; Verifiability The limited schedule may not permit a complete formal verification

    of the software. However, extensive testing should be performed to ensure

    reasonable accuracy of the functioning of the system before release. ; Maintainability ―Apogee Arts, Inc.‖ expects that the VirtualArtViewer will be

    used by different kinds of users over varying periods of time. Routine

    maintenance may be necessary at times, hence the system should be easily

    maintainable.

    ; Repairability Since it is possible that the application may not be fault-free,

    VirtualArtViewer application should be designed and implemented such that it

    can be easily repaired in the future.

    ; Safety The VirtualArtViewer is not a critical application that can affect society

    at large and therefore there is not much concern about safety of the application. ; Portability Since the VirtualArtViewer application is implemented entirely in

    Java which is a portable programming language itself, portability is of little

    concern in the design and implementation of the system.

Report this document

For any questions or suggestions please email
cust-service@docsford.com