Software Requirements Specification Document Version 1.1 for Mobile Image Gallery Prepared by Nattakarn Phaphoom ArchiSoft AB December 14th, 2007 Software Requirements Specification for Mobile Image Gallery Page ii Table of Contents Table of Contents .......................................................................................................................... ii Revision History ........................................................................................................................... iii 1. Introduction ..............................................................................................................................1 1.1 1.2 1.3 1.4 Purpose ........................................................................................................................................... 1 Intended Audience .......................................................................................................................... 1 Product Scope ................................................................................................................................. 1 References ...................................................................................................................................... 1 2. Overall Description ..................................................................................................................2 2.1 2.2 2.3 2.4 2.5 2.6 2.7 Product Perspective ........................................................................................................................ 2 Product Functions ........................................................................................................................... 2 User Classes and Characteristics .................................................................................................... 3 Operating Environment .................................................................................................................. 3 Design and Implementation Constraints ......................................................................................... 3 User Documentation ....................................................................................................................... 3 Assumptions and Dependencies ..................................................................................................... 3 3. Specific Requirements .............................................................................................................4 3.1 3.2 3.3 3.4 3.5 3.6 External Interface Requirements .................................................................................................... 4 System Features .............................................................................................................................. 4 Performance Requirements............................................................................................................. 7 Security Requirements .................................................................................................................... 7 Software Quality Attributes ............................................................................................................ 7 Other Requirements ........................................................................................................................ 7 Software Requirements Specification for Mobile Image Gallery Page iii Revision History Name Date Reason For Changes Version Nattakarn P. Dec 15, 2007 Requirement elicitation from the kick-off meeting 1.0 Josef H. Dec 21, 2007 Evaluation and minor changes. 1.1 Software Requirements Specification for Mobile Image Gallery Page 1 1. Introduction 1.1 Purpose The purpose of this document is to identify software requirement specification of the Mobile Image Gallery (MIG) application. The application is a mobile application that’s provide services to browse, upload, and download images from Google® Picasaweb, the online web album, server. MIG is implemented using Google® Android platform which is a software stack for mobile devices including operation system, middleware and other key application. 1.2 Intended Audience This document is intended to the following groups of stakeholders. 1) The project manager uses this document for project planning and monitoring. 2) The application designers use this document to make the design of the application. 3) The programmers use this document to understand both application overview and detailed software specification. 4) The testers use this document to develop test cases. The document starts with the overall description of the Mobile Image Gallery application. It gives a comprehensive description of product perspective and the features that this system provides. It gives the user classes, characteristics and their authorization. It describes the possible constraints on the project, and the underlying assumptions on which the requirements analysis is based. It enlists all the specific requirements that contain a complete description of the application requirements, both functional and non-functional. 1.3 Product Scope The Mobile Image Gallery will allow everyone to browse albums and images from their mobile device on-line and share moments with family, friend and colleague. A detailed project description is available in the Mobile Image Gallery Vision and Scope Document. The section in that document titled “Scope of Initial and Subsequent Releases” lists the features that are scheduled for full or partial implementation in this release. 1.4 References [1] For more detail regarding Google® Android application, please refers to its official website on http://code.google.com/android/documentation.html [2] Vision and Scope Document for Mobile Image Gallery Version 2.0 Software Requirements Specification for Mobile Image Gallery Page 2 2. Overall Description 2.1 Product Perspective The Mobile Image Gallery (MIG) is a mobile application that provides a connection from a mobile device to Picasaweb server. It has features to browse, download, and upload images from Picasaweb online album. The context diagram in Figure 1 illustrates the external entities and system interfaces for MIG. Figure 1: Context diagram of the Mobile Image Gallery The system is expected to evolve over several releases especially to satisfy users of having an excellent image viewer application inside their mobile devices. 2.2 Product Functions Mobile Image Gallery application provides several features for mobile users: Automatic authentication to Google® Picasaweb server. Remote image or photo browsing of Picasaweb album. Download image or photo from Picasaweb album. Upload image or photo to Picasaweb album. In order to perform these features effectively and promote modifiability to product design, the application core is spitted into modules working in collaboration. These modules include Authentication module Remote browsing module Upload module Download module Album management module Software Requirements Specification for Mobile Image Gallery Page 3 2.3 User Classes and Characteristics The user of Mobile Image Gallery is everyone who has mobile device, such as mobile phone, smart phone or personal digital assistance (PDA), which runs under Android platform. Another requirement is the user should have Google® Picasaweb personal account. Even-though this requirement is not mandatory, the personal account will allow user to utilize the download and upload image function from the application. Otherwise, the user can only browse any public album from Picasaweb server. 2.4 Operating Environment The application will be implemented, tested, and integrated on Android platform. The platform provide an operating system, middle ware, core features, and API that allow access to perform activity on mobile device system. 2.5 Design and Implementation Constraints CO-001 CO-002 CO-003 The application design primarily depends on Google® Android architecture using its API. The application uses service interface that is provided by Picasaweb server for requesting images. All code shall use Sun® Java programming language. 2.6 User Documentation Refer to application user manual document, MobileImageGalleryUserGuide.doc 2.7 Assumptions and Dependencies The assumption of Mobile Image Gallery application is outlined below: The application does not provide service to register new users to Picasa server. User needs to register them to Picasa. A username and password need to be provided to login to Picasa through Mobile Image Gallery application. A web server that the application provides a connection to its service is limited to Picasa web server. The services are limited to browsing, uploading and downloading. Software Requirements Specification for Mobile Image Gallery Page 4 3. Specific Requirements 3.1 External Interface Requirements 3.1.1 User Interfaces Mobile image gallery application provides graphic user interface to perform image browsing, downloading, and uploading. The application receives input via mobile keypad and output of services is responded via device screen. 3.1.2 Hardware Interfaces No applicable hardware interfaces. 3.1.3 Software Interfaces The application uses services of mobile device’s operating system through API provided by Android. 3.1.4 Communications Interfaces The application communicates with Picasaweb server via HTTP. 3.2 System Features 3.2.1 Login/Automatic Login (FE-001) 3.2.1.1 Description and Priority Login is one of the essential features of the application as it provides facility to authenticate users to Picasa server. The application provides 2 types of login: manual and automatic login. Manual login requires users to input a username and password registered to Picasa server, automatic login retrieve user account saved in mobile device and provide automatic login. 3.2.1.2 Stimulus/Response Sequences Stimulus Response Stimulus Response A user request to login. The application queries for a Picasa username and a password. A user request to save login account profile. The application saves login account profile in local memory and automatic logins to Picasa server with this account. 3.2.1.3 Functional Requirements FR-001 FR-002 FR-003 FR-004 FR-005 The application shall provide facility to login to Picasa server. The application shall support user input by mobile device keypad. The application shall provide facility to save Picasa login account profile. If automatic login is set, the application shall retrieve saved login account profile and automatically login to Picasa. The application shall allow user to switch between manual and automatic login Software Requirements Specification for Mobile Image Gallery Page 5 3.2.2 Remote Browse Image (FE-002.1 & FE-002.2) 3.2.2.1 Description and Priority Browsing images of Picasaweb is one of the essential features of the application as it provides connection between a mobile device and Picasaweb server and allows users to browse images in Picasaweb through their snapshot. 3.2.2.2 Stimulus/Response Sequences Stimulus Response A user requests to view images in his/her Picasaweb account. 1. The application displays all image albums in account. 2. Once a user selects a target album, the application display snapshot of images in the album. 3.2.2.3 Functional Requirements FR-006 FR-007 FR-008 FR-009 The application shall allow a user to request to browse images from Picasa server The application shall retrieve and display all album names created in user’s account The application shall provide facility to display images in user’s selected album in Picasaweb account. The application shall provide facility to select a previous or next image in Picasaweb album to be displayed. 3.2.3 Download Remote Image (FE-003) 3.2.3.1 Description and Priority The image-downloading feature is an optional feature of the application in the first release. It provides facility to download images from Picasa server and save in mobile device file system. An image can be selected and downloaded one by one. 3.2.3.2 Stimulus/Response Sequences Stimulus Response A user requests to download images in his/her Picasaweb account. The application downloads a selected image and saves to mobile device file system. 3.2.3.3 Functional Requirements FR-010 FR-011 FR-012 The application shall allow a user to request to download a particular image in Picasaweb album. The application shall provide facility to select an image to be downloaded. The application shall save a downloaded image into a default directory of mobile device file system. Software Requirements Specification for Mobile Image Gallery Page 6 3.2.4 Local Browse Image (FE-004) 3.2.4.1 Description and Priority Display image gallery is one of the main features of the application, as it provide facility user to browse and display images in a mobile device. 3.2.4.2 Stimulus/Response Sequences Stimulus Response Stimulus Response A user request to open image files in a mobile device The application provides interface to browse file location. A user request to open an image folder in a mobile device. The application provides interface to browse folder location. 3.2.4.3 Functional Requirements FR-009 FR-010 FR-011 012 The application shall allow a user to request to open local image files or folder. The application shall provide facility to browse image or folder location in mobile device’s file system. The application shall provide facility to display images in user’s selected folder. The application shall provide facility to select a previous or next image to be displayed. 3.2.5 Upload Local Images (FE-005) 3.2.5.1 Description and Priority The image-uploading feature is an optional feature of the application in the first release. It provides facility to upload images in mobile device file system to Picasa album. Users need to be authenticated by Picasa server before uploading images to their Picasa album. 3.2.5.2 Stimulus/Response Sequences Stimulus Response A user requests to upload images in his/her Picasaweb album. The application uploads an image from mobile device file system to Picasaweb album one by one. 3.2.5.3 Functional Requirements FR-020 FR-021 The application shall allow a user to request to upload a particular image in a mobile device to Picasaweb album. The application shall provide facility to select a target image to be uploaded. Software Requirements Specification for Mobile Image Gallery Page 7 3.2.6 Account Management 3.2.6.1 Description and Priority Account management is optional feature of the system as it is used in cooperate with automatic login feature. It provides facility for users to change a username and password for automatic login to Picasa. Note that the application allows users to save only one account for automatic login. 3.2.6.2 Stimulus/Response Sequences Stimulus Response A user request to modify a username and password used for automatic login. The application queries for a current login account. 3.2.6.3 Functional Requirements FR-006 FR-007 FR-008 The application shall allow a user to request to modify Picasa login account. The application shall ask for current login account as a user asks to modify. The application shall provide facility to save newly modified username and password. 3.3 Performance Requirements Remote image browsing needs less than 5 seconds for each image to show up in the mobile screen. 3.4 Security Requirements No applicable performance requirement. 3.5 Software Quality Attributes 3.5.1 Modifiability 3.5.1.1 Description and Priority Modifiability is an essential quality attribute of the application, as the application will be developed in iterative and incrementally approach. The application features that will be enhanced in the next coming release including: searching, album creation, download album, and upload from Picasa. 3.5.1.2 Non Functional Requirements NFR-001 The application shall be designed to support enhancement features in the next release. 3.6 Other Requirements No applicable performance requirement.